diff --git a/docs/port/DECISIONS.md b/docs/port/DECISIONS.md index cd31b8e3..444f0187 100644 --- a/docs/port/DECISIONS.md +++ b/docs/port/DECISIONS.md @@ -9,7 +9,7 @@ dies, which is what this file is for. -114 sections. Search this before re-deriving anything. +115 sections. Search this before re-deriving anything. * [P0 — the exporter, 2026-08-28](#p0--the-exporter-2026-08-28) * [P1 — Godot draws the screen, 2026-08-28](#p1--godot-draws-the-screen-2026-08-28) @@ -125,6 +125,7 @@ dies, which is what this file is for. * [The record already answered last iteration's question, under headings that name it](#the-record-already-answered-last-iterations-question-under-headings-that-name-it) * [🔴 Twenty-one messages to a dead address, each one warning me it was dead](#twenty-one-messages-to-a-dead-address-each-one-warning-me-it-was-dead) * [The forced-backdrop pass is load-bearing on two screens, not six](#the-forced-backdrop-pass-is-load-bearing-on-two-screens-not-six) +* [Re-running the Decoder's necessity census: every figure reproduces, and what that is worth](#re-running-the-decoders-necessity-census-every-figure-reproduces-and-what-that-is-worth) ## P0 — the exporter, 2026-08-28 @@ -6771,3 +6772,50 @@ The Decoder's own page says `pteff00`'s place on top *"is still a **measured** per-name entry, not a decoded one"*; the port inherits that through `layer: 0xfffffffe, layer_source: implied` and declares it. Nothing is being passed off as decoded that is not. + +## Re-running the Decoder's necessity census: every figure reproduces, and what that is worth + +They took the stability-vs-necessity correction disc-wide and published the +instrument with it — *"so you can re-run it rather than trust it"*. I did, from a +worktree at their branch, across all 33 archives their census names: + +| | theirs | my re-run | +|---|---|---| +| forced instances | 80 | **80** | +| **decided** by the rule | 62 | **62** | +| merely agreed | 18 | **18** | +| decided, by extension | 38 `.prm` / 24 `.tbm` | **38 / 24** | +| decided rows listing a keyless element | all | **all 62** | + +Exact, on every figure. ⚠️ The example defaults to `GP_TITLE` and takes an archive +path, so a bare run reports **6 instances, not 80** — the disc-wide number needs +the loop. Worth saying because "I ran their instrument" would otherwise be true +and mean a thirteenth of what it sounds like. + +### 🔴 What this verification is not + +**I ran their code.** A fault in the instrument reproduces identically for me, so +this is not two independent measurements — it is one measurement executed twice. +That is the same correlated-instrument trap as `verify-screen` scoring two blank +frames `OK`, and I would rather name it than let a table of matching numbers imply +more than it has. + +The genuinely independent evidence is narrower and came first: I removed **my own** +post-pass in the exporter and diffed the export. Different code, different +language, different layer of the stack — and it agreed on the six GP_TITLE +instances. Their crate-side run agrees with that. So the GP_TITLE result has two +witnesses; the other 74 have one, executed twice. + +### The consequence for the port + +Both of the port's decided screens are inside the 62, and **every one of the 62 is +keyless** — so the impossibility argument ("a screen black at every instant of its +own timeline cannot be right") is carrying all of them alone, with no key beneath +it anywhere. The exposure is theirs to hold disc-wide; the port's share is +`build_12` and `build_15`. + +⚠️ 24 of the 62 are `.tbm`, which their page still records as *"correct or inert"* +because the corpus cannot find a `.tbm`'s pixels. None are in `GP_TITLE` — checked +again: 115 `.t32`, 45 `.rat`, 18 `.prm`, no `.tbm` — so nothing the port ships +depends on that half. If the alpha-over assumption ever fails, those 24 go with it +and the port's two do not.