what you can check here: press a row's button and this browser fetches that ledger from its url and re-derives its chain and its anchors with the verifier listed below, nothing to install; or, in a clone of this repository, run node shelf_read.cjs --row <name>.
counting the register…
the shelf is the lab's. each row of the register (outside_ledgers.json) is a ledger the lab's shelf reads with shelf_read.cjs; the committed report for it is shown below, and the button fetches the ledger from its url and runs the same verifier in this page. a ledger written by someone outside the lab and listed here is read by the lab's shelf, with the lab's verifier copy and the lab's code: reproducible, not independent of the lab. nothing here says anything about the agent behind a ledger, or whether what a line records is so: the shelf re-derives digests.
since styxx-ledger f29ae3d (2026-11-09) the census scorer reads condition (c) from the shelf: it fetches the report a section 15 shelf read line names, only from under https://fathom-lab.github.io/styxx-shelf/reports/reads/ (since 94e4181; a report on any other host fails (c) unfetched), and checks it against the registration and the chain. (c) holds for an outside window only after the shelf has read that ledger and its report is kept here.
back to the shelf · get your ledger read · the report's fields: outside_report_schema.json
loading docs/v1/VENDORED.json…
loading the register…
for an operator outside the lab who keeps a styxx ledger (protocol v1, written with the kit at github.com/fathom-lab/styxx-ledger) and wants the shelf's read of it, for example for condition (c) of the kit's census template (census/PREREG_census_TEMPLATE.md). as of 2026-11-09: requests 0 (issues on the shelf's repository, open or closed: 0); outside ledgers read: 0.
ledger.jsonl at an https url that serves it byte for byte with no login, and withheld.json beside it if you withhold lines. post each day's anchor text where a stranger reads it without a login and where you cannot edit or delete it: which places hold, and which fail, is under anchor places in the readme. the ledger needs at least one anchor entry, which the writer makes after that day has ended in your anchor_tz.node shelf_read.cjs --url <ledger url> --protocol v1 [--withheld-url <url>] [--place-url <url>] prints the report the lab's read would write; exit 0 when the chain re-derives.written_by: "outside") in a dated commit; runs node shelf_read.cjs --row <name>; commits the report; and replies with the kept read's url. the register row is the lab's act: a pull request that edits the register is a request, not a row.shelf read: <the kept read's url> sha256 <64 hex of that file> at <read_at>. the url has the form https://fathom-lab.github.io/styxx-shelf/reports/reads/<name>/<read_at with each : written ->.json (darkflobi's read at 2026-11-09T14:37:14Z is reports/reads/darkflobi/2026-11-09T14-37-14Z.json). the census scorer fetches a shelf report only from under that prefix; for (c) the read must fall after your earliest anchor's day ended and before 00:00 of your d0. the at you paste is the report's own read_at, copied: the scorer checks the pasted time and does not compare it with the report's.a read here is the lab's shelf reading your ledger with the lab's copy of the verifier; the paragraph near the top of this page that begins "the shelf is the lab's" says what that is and is not.