The wires · every upstream host, counted off the tree
Every wire this site reads,
on one board.
The desks on labs.llc read the world off public feeds — the weather off Open-Meteo, the ground off USGS, the markets off Yahoo and CoinGecko, the news off a hundred RSS wires. The front page has long said “50+ upstream sources” without a list anyone could open. This is the list, and it is not typed: a generator reads the JavaScript and PHP this site ships, and the script inside every page, follows each address to the place the code asks for it, and keeps the hosts the code asks.
Each host names the desks that read it, linked in this edition, and says whether your browser asks it directly or a relay on this origin asks on your behalf. Press Probe and the board asks every host from your own browser, once this session, with a twelve-second timeout and no cache — and reports a silence as a silence.
— upstream hosts · read by — desks · — asked from the browser, — only through a relay · counted from — files on — · no key, no account
The board
Every host. The desks behind it. Its answer.
One row per host. Read by opens the desk that reads it; how is direct when the visitor’s browser asks the host itself, relay when only a PHP file on this origin does, and both when the estate does each somewhere. Status is empty until you press Probe.
The wires
loading the list…
— hosts shown · the probe runs once per session, on your click, from your browser · 12-second timeout, no cache
The relays
What the browser cannot ask, a file on this origin asks.
Some hosts send no Access-Control-Allow-Origin header,
and some want a key that must not travel in a page. For those the
desk carries a small PHP relay: it hardcodes its upstream, whitelists
its parameters, caches to a file, and refuses anything else. A host
read only that way is marked relay on the board, and the
probe asks the relay — a feed through rss-proxy.php
is fetched for real; a relay that needs parameters is asked bare, so
its answer says the relay is up and nothing about the host behind it.
A PHP file that reads an upstream but is not a relay — the assistant’s model call, the file-share upload, the DNS desk’s questions to its resolvers — cannot be probed from a page without doing the thing it does, so its host is marked not probeable from here. — relay files read for the estate; — hosts sit behind readers this page will not exercise.
About
A list that cannot drift.
tools/mkwires.py reads the JavaScript and PHP this
site ships — every .js and .php file
outside the build tools, and the script inside every page —
and follows each address from where it is written to where the
code asks for it: a fetch, a socket, a curl call, a map’s
style and tiles, a picture or a sound whose address the code
builds. A host is kept when at least one address reaches a request.
Where the code cannot be followed, an address shaped like an API
(/api/, /v1/, .json,
api., feeds.…) is kept if the desk
around it makes requests at all — never in a comment, in the
middle of a sentence, or in a link.
It is not a list of every address on the site. A link you may
click, a brand’s homepage in a register, an embedded player,
a picture at an address somebody typed, a host a desk only pings
to see whether it is up, and a push service the alert desks only
send to are not wires. Nor are this
site’s own domains, the analytics tag
(www.googletagmanager.com), the fonts
(fonts.googleapis.com, fonts.gstatic.com)
or the script libraries (cdn.jsdelivr.net,
cdnjs.cloudflare.com, cdn.tailwindcss.com,
unpkg.com): a browser on these pages does contact
those, for code and type, not for data. A scan of files also finds
only what is written in files. A host that arrives at run time
— a radio stream out of the directory’s answer, a WHOIS
server out of a registry’s referral, the link inside a feed
item — is not on the board and cannot be. Hosts the code
reads through stored data or a redirect, and the public resolvers
the DNS desk asks by address, are named in the tool one by one,
each with the line of code that says so; the build fails if that
line goes. The tool ships a self-test, and a --check
that fails the build when the shipped list and the tree disagree.
A desk is a file’s top folder, named and linked from the register; a folder not yet registered is named for itself. The figures at the top — — hosts, — desks — are counted off the shipped list when this page loads, not typed here, which is what lets the front page’s “50+ upstream sources” become a number with a list behind it.
A probe is one request from your browser to a host’s
root, with no cache and a twelve-second limit. Answered is
any HTTP status — a 404 at / is a server that is
up. Reachable is an opaque response: the host is there but
sends no CORS header for its root, so the status cannot be read.
Silent is no answer in twelve seconds or a connection refused.
It measures the path from you to the host at this minute; it is not
the desk’s own read, and not the host’s uptime. Results
are kept for the session so the board does not itself lean on hosts
that count requests. Questions to
labs@labs.llc.