[data] round 6 CANON-DELTA + NOTES

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
type-two 2026-07-20 18:37:43 +10:00
parent 434faf96e6
commit be52b4075b
2 changed files with 187 additions and 0 deletions

View File

@ -257,6 +257,112 @@ Filler is procedural (SCREEN's seeded RNG) rather than a fixed list, so the stat
loops — a hand-written pool of 24 would cycle in about two minutes and the genre's whole loops — a hand-written pool of 24 would cycle in about two minutes and the genre's whole
menace is that it goes on forever. menace is that it goes on forever.
## Added in round 6
### THE CORRECTION walks — the parity-mite reading of §5
§5 gives the enemy in one clause: parity mites are *"beetle-drones that patrol belts and
quietly fix artifacts back into clean product (your melt becomes... footage of a lake)."*
The reading the data commits to, and why it is the codex's:
- **The mite does not destroy — it repairs, which is worse.** The Correction "cannot
perceive you, only deviation, which it repairs." So a mite eats a tier-2 glitch product
and hands back nothing you can sell: the work is *corrected*, not stolen. SIM emits a new
`repaired` event rather than a `removed` one, and the fiction is that losing melt to a
mite is losing it to a *fix*. THE STANDARD's new lines say this in the enemy's own voice
("A mite does not remove your work. It completes it. Your MELT was always going to be a
lake." — the codex line, spoken as reassurance).
- **Mites only touch corruption.** SIM's mechanic ignores tier-0/1 cargo entirely: the
immune system has nothing to correct in raw ore. That is the balance (raw material is
safe; only product is at risk) and the fiction (deviation is the only thing it can see).
### THE FIREWALL — the counter, on SIM's catcher shape
| Thing | Kind | Why it fits |
|---|---|---|
| `parity-mite` | item (tier 2) | The canned live mite. Hospital-white shell, green checkmark eye (§5, §8) → chip colour `#dff5e6`. Tier 2 like the other farmed hazards (`mosquito-swarm`, `gibbs-wraith`). |
| `firewall` | machine (crafter) | §5 names the mites but no counter. A *firewall* is the in-genre name for the thing that stops an intrusion, and the joke writes itself: it wears a compliance seal the Bitstream never issued, and a mite "cannot leave a deviation uncorrected" — a forged checkmark IS a deviation, so it climbs in to fix the seal and the drawer closes. Accent `#3fff7f` is that forged checkmark; chassis `#31383f` is your grime, not The Correction's white. |
| `catch-mite` | recipe (firewall) | **Input-free, output `parity-mite: 1`** — the exact shape SIM detects a catcher by (empty inputs, cans the creature), lifted from the mosquito trap. The "input" is a live mite in the world, which is wildlife in the snapshot, never cargo on a belt. Ingredients would silently demote it to an ordinary crafter that mints The Correction from nothing — pinned by a test that cites SIM's comment. |
| `broadcast-parity-firewall` | tech | Gated like the mosquito trap (`broadcast-mosquito-farming`): `{spatial-pack: 15, analog-pack: 10}`, unlocks `[firewall, catch-mite]`. You research the counter to the enemy. Early/cheap because the mite is §5's *"early nuisance"* — the counter should arrive about when the mites do. |
**Coordination with SIM (parallel this round):** SIM detects catchers by recipe shape and
by the constant `MITE_ITEM`. The item id is **`parity-mite`** and the recipe shape is
**`{ inputs: {}, outputs: { 'parity-mite': N } }`** — identical to the trap, one item id
over. `catch-mite` bandwidth 4 / 120 ticks (a harder catch than a mosquito's 90). The
radius is SIM's constant (`FIREWALL_RADIUS`), not a machine field.
### Two commissions that want The Correction alive
- `correction-specimen` (reward 1000): the flagship — *"ONE (1) UNIT OF THE CORRECTION,
ALIVE. INVOICE ATTACHED. DO NOT READ THE INVOICE."* The fax's first canned mite, in
voice. Slots between `gibbs-wraith-willingly` (900) and `feather-proof` (1100).
- `annual-correction-cull` (reward 2100, **standing**): 5 live mites + 20 melt per
collection, forever — you turn the immune system into a cash crop, and The Correction
files each absent technician as a rounding error and sends five more. Slots between
`sodium-requisition` (1800) and `sky-blue-mislabeled` (2400). Re-fillable forever
because both wants are producible (the catcher + the melt chain).
`parity-mite` is **producible** the moment the firewall exists (an input-free recipe reads
as always-runnable to the reachability closure, exactly as `mosquito-swarm` does), so it is
NOT forward canon and never joins the allowlist.
### The numbers station stops drifting
SCREEN's round-5 finding was real: the validator recomputed the three *planted* groups from
`seams.json` but never checked the *decoys*, and two of them had drifted onto visible seams:
```
08127 -> (-24,-20) sat inside reel-beds-deep (x[-30..-21] y[-24..-19])
27503 -> ( -5, 18) sat inside broadcast-shelf-south (x[-14..-3] y[16..21])
```
A decoy that decodes onto a real seam isn't a decoy, it's a leak — it hands the player a
genuine dig site the station was never meant to reveal. Both re-cut to land just *off* the
seam they were touching (still tantalisingly adjacent, which is the genre's whole cruelty):
```
08127 -> 08143 -> (-24,-18) one tile south of reel-beds-deep, on empty ground
27503 -> 27475 -> ( -5, 15) one tile north of broadcast-shelf-south, on empty ground
```
And the validator now decodes **every** decoy to a tile and fails, by name, if it lands
inside **any** seam rect — hidden or visible — not just the three hidden tiles. The map
recomputes its plants from the seams and now proves its decoys lead nowhere; it cannot go
stale in either direction. (All 22 remaining decoys were re-checked against all 8 seams —
these two were the only leaks.)
### Accents chosen against the real GLB textures
Round 4 filled accents by derivation; MODELBEAST has since delivered real models, so this
round the accents are picked by **looking at the actual albedo textures** in
`public/assets/models/` (extracted and inspected). The order named "the ten GLB'd machines";
by the time I looked, nineteen had models (RENDER hot-swapping mid-round), so every machine
with a real model now carries a texture-matched accent:
| Machine | Accent | Read from the texture |
|---|---|---|
| seam-extractor | `#48d6ff` | the cyan CRT readout on the amber drill body (§4 "CRT-certified") |
| quantizer | `#ff3b57` | CRIME-red dial indicator against the pale lilac/dust body |
| mosh-reactor | `#ff7a3f` | the molten-orange gauge; matches its MELT output |
| artifact-bottler | `#7fe0d8` | the iridescent glass-aqua of the bottled contents |
| chroma-keyer | `#4fff30` | the chroma-key green it literally weeps (green-spill) |
| muxer | `#ff3fd0` | launch-warning magenta on cold steel; matches the megaglitch |
| demuxer | `#ff3fd4` | the magenta channel-split streak (its chroma output) |
| demosaicer | `#4fffc4` | the spectral cyan-green band of the rainbow weave |
| dct-press | `#3fffe0` | the coefficient-cyan indicator specks on cold steel |
| field-loom | `#6ef58a` | the phosphor-green glowing tube |
| gop-assembler | `#5fb0ff` | the blue cadence-readout screens |
| mv-extractor | `#3fd8ff` | the motion-vector cyan fluid |
| p-caster | `#6fa8ff` | the blue projector beam |
| subsampler | `#e04fc8` | the iridescent chroma-pink it grades down |
| bloom-duplicator | `#ff9440` | the warm bloom-orange furnace glow |
| decode-asic | `#8fe8ff` | **refined** from `#6fe8c0`: the LEDs are ice-blue, not mint |
| mosquito-trap | `#a64fff` | **corrected** from `#d0ff60`: the model's zapper target glows UV-violet, not lime |
| software-decoder | `#ff4a2a` | kept — the texture's red internals confirm it |
| archaeology-lab | `#ffc24a` | kept — the warm dig-lamp amber confirms it |
The `firewall` (no model yet) gets its forged-checkmark `#3fff7f` art-directed, not derived.
--- ---
## The numbers, and the arithmetic behind them ## The numbers, and the arithmetic behind them

View File

@ -489,3 +489,84 @@ NEXT (candidates): SPILL FOG + EDGE BOIL (§10 hazards, once SIM has a mechanic)
cooler's aura tuning once `coolRadius` is live in-sim; a second relic if the audio bus cooler's aura tuning once `coolRadius` is live in-sim; a second relic if the audio bus
wants more than one voice; `corridorkey-mrp-mlx` is a real artifact factory for the whole wants more than one voice; `corridorkey-mrp-mlx` is a real artifact factory for the whole
§10 asset set (§10's own production note) and deserves a MODELBEAST work order. §10 asset set (§10's own production note) and deserves a MODELBEAST work order.
### Round 6 — 2026-07-20 — Opus 4.8
SHIPPED: all 4 orders. items 60 → 61, machines 30 → 31, recipes 63 → 64, tech 24 → 25,
commissions 19 → 21. Validator 72 → 74. All argued in `data/CANON-DELTA.md` (round 6).
- **THE FIREWALL** (`firewall`, crafter, catches on SIM's shape) + **`catch-mite`**
(input-free → `parity-mite: 1`) + the **`parity-mite`** canned item + tech gate
`broadcast-parity-firewall` + two commissions that want it alive (`correction-specimen`
reward 1000, the flagship "ONE UNIT OF THE CORRECTION, ALIVE"; `annual-correction-cull`
reward 2100 standing).
- **Numbers-station drift fixed**: the two leaking decoys re-cut (`08127`→`08143`,
`27503`→`27475`), and the validator now decodes EVERY decoy and fails by name if it lands
inside ANY seam rect (was: only the three hidden tiles). See CROSS-LANE — SCREEN.
- **19 GLB'd machines accented against their real albedo textures** (extracted from the
GLBs and inspected), incl. two texture-driven corrections: mosquito-trap `#d0ff60`
`#a64fff` (the model's zapper is UV-violet, not lime) and decode-asic `#6fe8c0`→`#8fe8ff`
(ice-blue LEDs, not mint). Table in CANON-DELTA.
- **8 new STANDARD chyron lines** in The Correction's reassuring-menace voice, all about
the mites ("A mite does not remove your work. It completes it."). 30 → 38 lines.
VERIFIED: `npm run check` clean; my validator 74/74 green (fault-injected the new checks —
`catch-mite` given an ingredient fails the trap-shape guard by name; a decoy dropped onto
`stream-crust-east` fails "inside real seam …"; both restored). SCREEN's `band.test.ts`
9/9. Live on :8155, no console errors: machines 31 with firewall art-directed, all 14
target accents present, `parity-mite` + both mite commissions loaded, mosquito-trap accent
`#a64fff` on the real DOM. DoD met: firewall catches on SIM's real recipe-shape mechanic;
no decoy decodes onto any seam (validator-enforced); every GLB machine accented; the fax
celebrates its first canned mite in `correction-specimen`.
DECISIONS:
- **The chyron limit bit me and it was cheap to obey.** SCREEN's `band.test.ts` caps a
line at 96 chars (62 mono chars would clip; they allow 96). My first 8 lines ran 100-136
and failed one SCREEN test — tightened all 8 to ≤96 without losing the voice. Their test
is the right net; the words are mine, the width is the sky's.
- **Firewall gated early (broadcast), not free.** §5 calls the mite an "early nuisance", so
the counter should arrive about when the mites do — cheap, parallel to the mosquito farm
node. Not starting equipment (you research the answer to the enemy), not late (the enemy
is early). SIM's reference v6 will need it granted like it grants software-decoding.
- **`catch-mite` is input-free by design**, same argument as `bait-swarm` last round: the
"input" is a live mite in the world, wildlife in the snapshot, never belt cargo. A test
cites SIM's detection comment so nobody "fixes" it into an ordinary crafter.
- **Accented all 19 GLB'd machines, not the ordered 10.** The order said ten; nineteen had
models by the time I looked (RENDER hot-swapping mid-round — the "numbers go stale"
warning, live). Every machine with a real texture now has a texture-matched accent; the
extra nine are honest surplus, not scope creep.
BLOCKED/BROKEN: nothing of mine. Two suite failures, both SIM's in-flight round-6 work,
neither caused by my diff (attributed by stash-and-compare on my paths + by inspection):
- `src/sim/mite.test.ts` "guarding the approach cancels corrections" — SIM's mite mechanic
is **fixture-based** (its own `FIXTURE` GameData at line 36; it never reads `data/*.json`),
so my data cannot touch it. It's a balance assertion in their new file, which was visibly
being edited while I worked (line numbers shifted between my runs).
- `src/sim/reference.test.ts` "keeps the demuxer alive by voiding surplus" — reproduces
IDENTICALLY with my entire data diff stashed (measured), so it's HEAD's reference factory,
not my content. Likely their reference v6 mid-build.
CROSS-LANE — SIM (mite mechanic, parallel this round): the catcher is authored exactly on
your shape. Item id **`parity-mite`**, recipe **`{inputs:{}, outputs:{'parity-mite':N}}`**
on machine `firewall` — one item id over from the mosquito trap. Your `mite.test.ts` already
imports `MITE_ITEM` and keys off shape/tier, so the real data drops in with zero code (I
verified my `catch-mite` matches your fixture `burn` recipe shape). `catch-mite` is
120 ticks / bandwidth 4. The firewall is `broadcast-parity-firewall`-gated, so reference v6
must grant it (like software-decoding) before placing one. `FIREWALL_RADIUS` is yours; I
set no radius field. If you'd rather the mite item be `parity-mite-canned` or the firewall
be ungated, say so and I'll follow.
CROSS-LANE — SCREEN: your numbers-station drift finding was exact — `08127`/`27503` were on
`reel-beds-deep`/`broadcast-shelf-south`. Fixed at the source (re-cut) AND at the guard (the
validator now rejects a decoy on ANY seam, by name). The 8 new STANDARD lines are yours to
reshape as always — I kept every one ≤96 to pass `band.test.ts`; if you widen that cap I'll
gladly give a couple more room to breathe. `numbers.plantedGroups` still recomputes from
`seams.json`, untouched.
CONTRACT REQUEST: none. `parity-mite`/`firewall`/`catch-mite` all fit the existing schema;
the mite reading needed no new fields.
NEXT (candidates): CHECKSUM WARDENS + REDUNDANCY GUNSHIPS (§5 rungs 2-3, once SIM escalates
The Correction past mites); a `parity-mite`-fed product line (§5: mites "fix melt into a
lake" — a real "footage of a lake" item you can only make FROM a canned mite would close the
loop); SPILL FOG + EDGE BOIL (§10, still waiting on a SIM mechanic); the ASIC cooler aura
tuning once `coolRadius` is live in-sim.