FIT VERDICTmeta — the atlas's own deploy on sheet 9's ruler, by role and by district: 282 files, 8.6 MB on the wire against the docs deploy's 5.8 MB, 1.5× the site it draws; the tallest district is card pictures at 3971 KB
the ATLAS, SHIPPED
APPENDIX · META — the atlas's own deploy as a shipped city on sheet 9's ruler, by role and by district, standing beside the docs deploy it draws · 282 files in eleven districts, 8.6 MB on the wire · measured at www/atlas @ 2011c945, outside the cabinet, which is main's (origin/main @ eb1162da)
GENERAL NOTES
Method — one ruler, two deploys, two altitudes. Every block on this plate is massed by SIDE() and HT() imported from sheet9.mjs — footprint side 10 · √files, floored at 18; height one pixel per 4,300 gzipped bytes, floored at 8, the constants read back off the functions themselves — and every file is weighed the way sheet 9 weighs it: raw bytes and gzip level 9, the honest wire measure, since the CDN serves compressed. The two halves stand on different grounds and say so. The docs deploy is data/, origin/main @ eb1162da, the cabinet sheet 9 reads. The atlas is not on main, so it cannot be in that cabinet: it is data/, written by generator/ from a git archive of its own branch — www/atlas @ 2011c945, committed 2026-10-17 — in which the app is built by its own npm ci and npm run build, the vite build and the prerender, and app/ is measured file by file: 282 files, 22.1 MB on disk, 8.6 MB on the wire. That is what Cloudflare Pages serves at atlas.lit-ui-router.dev. A reachability walk from every page sorts the files into districts, and a path the app computes at runtime — a fragment by the manifest's file, the manifest by the router's base, the visualizer's icons by its stylesheet — is seeded rather than reported as a false orphan.
Two altitudes, one ruler. The sheet draws both deploys twice, at one scale. Along the top, by role: sheet 9's three roles of the docs deploy, read from its exported ROLES, each summed into one block, and three roles of the atlas deploy in the same order, each beside its counterpart — the pictures beside demo payload, the plates beside the documentation site, the app and its lanes beside the routed apps. Below, by district: every district of each deploy on its own lot, the docs deploy's thirteen west of the atlas's eleven. A role's block and a district's block are massed by the same two functions, so a block in either row reads against any other at the same altitude, and a role against its own districts. Summing is honest on this ruler for plan area — area ∝ files, so one block of a role's sum covers the same ground its districts do — and approximate for height, which reads a role's total bytes as one tower. The by-role totals reconcile each plate's own totals, every atlas district is claimed by exactly one role, and sheet 9 throws when a district on its plate is claimed by no role or two, so the two plates cannot disagree.
What the drawing says. The atlas deploy is 1.5× the docs deploy it draws, on the wire: 8.6 MB gzipped against 5.8 MB, in 282 files against 1,035; by role, the pictures 4772 KB against demo payload 1744 KB (2.7×) · the plates 2850 KB against the documentation site 3815 KB (0.7×) · the app and its lanes 1196 KB against the routed apps 392 KB (3.0×). The tallest district is card pictures, 3971 KB in 66 files — 1.8× the docs deploy's tallest, html pages at 2191 KB. The pictures are the whole story of the weight: a card picture is a webp, already compressed, so card pictures keep 99% of their raw bytes through gzip; the routed pages keep 22% — the lettering and markup of a deploy shrink on the wire and its pictures do not. The plates themselves ship in triplicate: every plate ships three times — inside its routed page, as a bare plate and as a fragment: 1325 KB + 789 KB + 735 KB — the routed page carries its plate server-rendered, the bare plate stands for a reader who opts out of the router, and the fragment feeds the client's own navigation. Below those, the 3D lane's viewer and its decoders, 854 KB, outweigh the routed app itself, 182 KB, 4.7 to 1, and no ghost district stands here: every file in the deploy is reached from a page, by reference or by a seeded path. Every claim in this paragraph is computed from the two plates and changes its wording when the plates change it.
What the pictures are for. The 66 card pictures are the cover's cards: one per plate in each theme, 300×400 CSS pixels drawn at 2×, so a card holds up on a retina display and the cyanotype theme has a picture of its own rather than an inverted one. They are 45% of the wire and arrive lazily, as the gallery scrolls; the first page a reader lands on is 275 KB at most, the heaviest routed page, and a plate's own page carries nothing of the pictures at all. The weight is real and the drawing shows it; whether it is the right weight is a question for the cover, not for this ruler.
KEY
| a block of the docs deploy — a role summed, by role; one district, by district — footprint ∝ files, height ∝ gzipped bytes | |
| a block of the atlas deploy — the same rule, on its own branch | |
| the ruler is sheet 9's, read back off its SIDE() and HT(): side = 10 · √files, floored at 18; 1 px of height ≈ 4.2 KB gzipped, floored at 8 | |
| a deploy's frame, by district | |
| the seam between main's ground and the atlas's |