Drops the legacy course-1 template, the two python assemblers the node
assembler replaced, and the unversioned scene manifest left over from the
manifest-<type> split - none referenced by build.sh, the assembler or the
README, and none produce build output. The v2 pages stay: the README lists
them as parked. Also converts typographic dashes to ASCII in build.sh and the
two nginx configs, and corrects an assembler comment that still pointed at the
removed python build.
The shared-masthead change stripped the mirror page's local :root including
four tokens the shell does not define (card, void-2, good, bad), leaving card
backgrounds and status colours undefined on the live page. The index wrap was
also narrowed to 64ch, squeezing the chapter cards; the masthead carries its
own width limit so wrap returns to 56rem. Two American spellings in mirror
prose corrected to artefact.
The three pages had each grown their own tokens, type scale and alignment, so
the openings looked like three different sites. The document shell now owns the
masthead family - tokens, centred masthead, eyebrow, title, lede, fact strip,
scroll cue and the index component - and the pages carry only their content.
The Mirror gains the section index the arc has, drops its duplicate technical
footer, and its title now uses the same magenta accent instead of a one-off
gradient.
Both chapters now carry a back link to the index and a chapter number in the
eyebrow, so the section reads as a series rather than three separate pages.
The Mirror gains a standfirst, a gradient title and a four-cell fact strip;
the landing page gains an accent rule, a stats strip and a hover wash on the
cards. The forming chapter now reads Coming soon rather than To be decided.
Content corrected against upstream docs, deployed-version source and the live
config: retention/GC semantics (untagged manifests including digest-only
pull-through entries are GC-eligible; keepUntagged is v2.1.19+, not deployed),
warm-cache guarantees (tag pulls revalidate upstream per open issue; digest
pulls serve locally), retry arithmetic (buildah --retry counts retries: 16 max,
not 12), five-upstream flat-namespace routing stated as observed risk with a
proposed prefix redesign, auth-canary design validated against longest-match
policy precedence with the Docker-client caveat, coalescing reframed from
deadlock to design with the restart as recovery-not-root-cause. Adds fact
panel, contents, failure-mode and cache test matrices, decision table, open
verification register and primary-source references. Front-end: grid full-bleed
(no viewport units - no scrollbar overflow), shell-level skip link, real
1600x872 intrinsic dims injected from bytes, lazy below-fold plates, AA
code-comment contrast, scene engine rewritten (IO-gated, rAF-coalesced, live
reduced-motion, hidden-tab pause, zero guards). Assembler: per-page gates plus
mirror-specific required/banned content assertions. README describes the
multi-page site honestly.
The face of learn.bztmon.com is now a chapter index: 01 The Exploded Cluster
(moved to /cluster) and 02 The Mirror (/mirror), with a forming-chapter ghost
slot. The Mirror ships rev 3 of the dossier - six curated plates fingerprinted
under /assets/, its scroll engine as an external fingerprinted script (CSP
script-src self holds), diagrams as inline SVG, replay panes from real
receipts. Assembler grows a shared document shell + per-page preflight gates;
build.sh inline-script check now covers every page.