the SURVEY OFFICE
APPENDIX · META — the atlas measuring itself · 22 probes, 22 plates, 25 drawings · every station, plate and edge on this plate introspected from www/atlas.lit-ui-router.dev/generator/ at build time · all plates pinned to origin/main @ eb1162da · commit 2026-10-18
GENERAL NOTES
Method — the plate surveys its own drawer. Every station, drawer, tab and edge on this plate is introspected at build time by www/: a probe is any census-*.mjs that writes a plate; a shared instrument is one the probes import (there are three — basis.mjs and census-query.mjs); a tier is decided by which basis primitive the source actually calls — materialize alone is T1, historyLog is T2, installDeps is T3; and a reader is any generator file that constructs the plate's URL. The introspection throws rather than draws if a plate has anything but exactly one writer, if a probe names a plate that is not filed, if a drawing reads a plate nothing writes, or — the claim this sheet makes loudest — if the 22 filed plates disagree about the ref they were measured at. They do not: all 22 are pinned to origin/main @ eb1162da · commit 2026-10-18. What is editorial here is what is editorial on every sheet: placement, the short basis labels, and this prose.
The hero is the fan-out. One scc --by-file pass over the archive produces census-files.json, 1,114 rows of per-file measurement, and eighteen things read it: seventeen stations that are group-by queries over the same rows — census-bricks.mjs, census-builds.mjs, census-city.mjs, census-consumers.mjs, census-couplings.mjs, census-doors.mjs, census-handoff.mjs, census-loop.mjs, census-npm.mjs, census-peers.mjs, census-pins.mjs, census-shadow.mjs, census-shipped.mjs, census-steam.mjs, census-weather.mjs, census-yard.mjs, census-overview.mjs — plus the gallery cover. That is the architecture's whole argument in one edge bundle: the city census, the yard census, the brick census, the weather map and the steam channel cannot disagree about how many files there are, because there is only one count. Cross-sheet totals reconcile by construction, not by discipline.
Three tiers, and what each one costs. thirteen stations are T1 — the archive measured once, or a query over that measurement. two are T2: one git log over the same ref, with the window and «today» derived from the ref's own commit date. seven are T3, and they are the expensive half of the office: the archive is not just extracted but installed — mise-provisioned pnpm install --frozen-lockfile, then the tree's own node_modules/ invoked directly — so that turbo dry-runs, node_modules closures, vite and rolldown builds all measure the ref rather than a checkout. The harness bar above the T3 band is the only sub-instrument drawn, because it is the only one that changes what a measurement means.
Five guarantees the office is built to hold. The basis is one git archive per ref — the tracked set exactly as git defines it, so no probe keeps a skip list. Members are discovered from the archive's own workspace file, so a package that graduated after a sheet was drawn is still counted rather than silently zero. Numbers travel as filed plates read by lookups that throw on a missing row, never by clipboard. Every date is derived from the measured commit, so a rebuild ages nothing against the day it runs. And every input is scripted: seven execution probes and a registry probe, nothing out of band. One relic sits in the drawer drawn struck through — census.mjs, a working-tree walker imported by nothing and writing no plate.
What the drawing does not show, and the schedule does. With 22 drawers and 24 reading sheets, a complete edge render would be unreadable, so the drawing keeps the shape — one horizontal writes edge per station, a bundled accent bus for the master plate, thin curves for the rest — and the plate schedule carries the facts: writer, tier, basis and every reader, for all 22 plates. Two counts are worth reading off it. Zero plates are unread: every filed measurement is on a drawing somewhere. And five of the atlas's 29 sheet files have no plate behind them — sheet 2E, sheet 5, sheet 6, appendix A1, appendix A2 — because they draw arguments, mechanisms, research and metering that no census produces. This plate is honestly among them: it has no plate of its own; it reads the generator.
Why a flow graph and not a city. Sheet 3 refuses to draw a task manager as a place, and the same refusal applies here. A pipeline's truth is dataflow — ref to archive to measurement to plate to drawing — and the lego/containment vocabulary the atlas uses elsewhere would encode a claim about what contains what, which is exactly the wrong claim about a pipeline. The vocabulary that fits is the one the atlas already owns: probes as survey instruments, snapshots as filed plates, sheets as finished drawings. Tier is station type; the cabinet is a cabinet; the rack is a rack. The node and edge arrays behind this drawing (87 nodes over four kinds, 137 edges over writes, reads and imports) are also the data model the interactive lane mounts — the picture is a query, not a hand-drawing.
KEY
| probe station — tier tag, then the source file that writes one plate | |
| the master station and the master plate — one measurement, many views | |
| a filed plate — one drawer of www/atlas.lit-ui-router.dev/data/ | |
| sheet rack — a numbered atlas drawing that reads a plate | |
| writes — a station files its one plate | |
| reads the master plate — the fan-out bus | |
| reads — a drawing imports a plate | |
| shares the basis — same ref, re-materialized | |
| struck — files no plate and nothing imports it |