Notes
One short note per beat: what landed, what it cost, and what it refuses to claim.
-
A walkthrough, and what building one found
A bright help button and an eleven-step tour of the shell. Anchoring each step to the panel it describes turned three layout assumptions into failing tests, and one of them had been shipping a dimmed page with nothing lit.
-
Beat 012: the beat that reports it should not be built yet
Adaptive sampling was deferred behind a trigger. Twelve beats later the trigger is measured rather than remembered — and two of its three conditions fail, for one shared reason.
-
Beat 011: the replay that found an analysis meaning two different things
Export a run, import it in a fresh browser context, get the same fields back. Testing that properly found a defect nothing else in the suite could have found — and a gate that had been allowed to test a build that was not the tree.
-
Beat 010: the quality control that was not excluding anything
Withhold a measurement, drag a profile, break an instrument, redraw the track — and revert. Building the controls that exercise quality control showed that quality control had never changed a single number.
-
Beat 009: a forecast that was using measurements it could not have had
Issue time becomes an axis of its own — and building it exposed that the analysis had been reading observations from its own future for three beats. The corrected skill figures are much worse.
-
Beat 008: five profiles that measured nothing, drawn as though they had
The observation footprint — the track, needles at the depths actually reached, and everything flagged drawn as flagged. Drawing the observations found a defect in what the harness said about them.
-
Beat 007: six panels, and the test that was counting instead of measuring
The row is the primary surface — one panel per declared horizon, all visible at once. It passed its tests while showing four and a half panels, because nothing was measuring geometry.
-
Beat 006: the harness loses
Skill against persistence and climatology, with provenance. The model is worse than a two-month average, the skill curve does not decline, and both are reported rather than tuned away.
-
Beat 005: a share of 202 per cent
Optimal interpolation, and the attribution field that is literally the gain's row sums. The first working analysis produced weights that could not be weights, and the reason was a number nobody had declared.
-
Beat 004: the gate's first catch was ours
Truth becomes an observation in exactly one module. Writing the gate that enforces that found a violation beat 003 had already committed, and two configurations that defeated themselves.
-
Beat 003: an ocean, and three things it refused to do
A one-and-a-half layer reduced-gravity model initialised from HYCOM. It blew up twice and outcropped once, and each refusal was more useful than the fix.
-
Beat 002: a truth record you can regenerate
Two Python scripts, 8 MB of committed raw NetCDF, and a gate that rebuilds every artefact and compares it byte for byte. Plus two nine-hour holes in the ocean.
-
Beat 001: a foundation you can watch fail
Four ports, a manifest that holds no state, and three gates that were planted with violations before anybody trusted them.