port: localise the off-edge splash residual -- 98% of the area is exact

Tested the last signature on the open residual: is it positional? A sub-pixel or
resampling difference makes the residual track local gradient. Rule stated first,
r > 0.5. Got +0.109 and +0.307, and the brightness control settles it -- on
developer_logos brightness correlates more strongly (+0.471) than gradient, so the
gradient signal is not distinguishable from 'content is where things happen'. Not
positional.

The brightness correlation pointed somewhere better. Signed residual by capture
brightness, off-edge: 843025 of 857573 pixels on publisher_logo and 812111 of
850869 on developer_logos sit in the 0-15 band with a residual of -0.00. So 98% of
the off-edge area is exact, and the entire 0.82-1.42 RMSE comes from the ~2% of
pixels that are lit.

Within those the sign is inconsistent across bands and across screens -- publisher
+1.68, -1.09, -2.48, +0.45 against developer +2.19, +0.74, -1.57, -0.96 -- so not
a global gain and not a global curve, consistent with a per-level LUT fitted on its
own pixels improving them by only 1.6%.

Three mechanisms now ruled out with evidence: global tone, texture decode,
positional. Still no mechanism, and naming what it is not four times is not
finding what it is.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N7FiFFFwbvG2uxdcEh8HyF
This commit is contained in:
Sylpheed port agent
2026-08-30 19:43:58 +00:00
parent 5a4a2e1148
commit 24948225a7

View File

@@ -9,7 +9,7 @@ dies, which is what this file is for.
<!-- INDEX: generated by tools/port/index-decisions -- do not hand-edit -->
229 sections. Search this before re-deriving anything.
230 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)
@@ -240,6 +240,7 @@ dies, which is what this file is for.
* [P0 gate — recorded at last, and the gap it belongs to](#p0-gate--recorded-at-last-and-the-gap-it-belongs-to)
* [Their sufficiency gap, run on `authored/` — clean, after I nearly reported 35 false positives](#their-sufficiency-gap-run-on-authored--clean-after-i-nearly-reported-35-false-positives)
* [Their absence shape on my own citations — and the wording gap in my P0 closure](#their-absence-shape-on-my-own-citations--and-the-wording-gap-in-my-p0-closure)
* [The off-edge splash residual, localised — three mechanisms ruled out, one honest description](#the-off-edge-splash-residual-localised--three-mechanisms-ruled-out-one-honest-description)
<!-- /INDEX -->
## P0 — the exporter, 2026-08-28
@@ -12023,3 +12024,59 @@ and certifying in the gate's vocabulary is a substitution nobody performs
explicitly.** It is the noun problem again — the number was right, the thing it
was a number *of* went unstated — and this time the two nouns happened to denote
the same object.
## The off-edge splash residual, localised — three mechanisms ruled out, one honest description
The last open technical question I own: after excluding glyph edges, the splashes
differ from the game by 0.821.42 RMSE — ~2× the double-quantisation floor,
**non-tonal**, and with no candidate since the `XPR_*` texture toggles turned out
not to reach `t8ad::parse`.
**Tested the one signature left: is it positional?** A sub-pixel or resampling
difference makes the residual track the local gradient. Rule stated first: r > 0.5
to call it gradient-linked.
| | gradient | brightness *(control)* |
|---|---|---|
| `publisher_logo` | +0.109 | +0.047 |
| `developer_logos` | +0.307 | **+0.471** |
🔴 **Rejected.** Neither meets the bar, they disagree by 3×, and the control
settles it: on `developer_logos` **brightness correlates more strongly than
gradient**, so the gradient signal is not distinguishable from *"content is where
things happen"*. **Not positional.**
### Where the residual actually lives
The brightness correlation pointed somewhere better. Signed residual
(render capture) by capture brightness, off-edge:
| band | 015 | 1647 | 4895 | 96159 | 160255 |
|---|---|---|---|---|---|
| `publisher_logo` | **0.00** | +1.68 | 1.09 | 2.48 | +0.45 |
| n | **843 025** | 542 | 951 | 312 | 12 743 |
| `developer_logos` | **0.02** | +2.19 | +0.74 | 1.57 | 0.96 |
| n | **812 111** | 26 196 | 4 498 | 5 232 | 2 832 |
📌 **98 % of the off-edge area has a residual of essentially zero.** The entire
0.821.42 RMSE comes from the ~2 % of pixels that are lit — the logo interiors.
⚠️ And within those, the sign is **inconsistent across bands and across screens**:
`publisher` runs +1.68, 1.09, 2.48, +0.45 while `developer` runs +2.19, +0.74,
1.57, 0.96. **Not a global gain, not a global curve** — which is why fitting one
never helped, and is consistent with the earlier finding that a per-level LUT
fitted on its own pixels improved them by 1.6 %.
### What this is worth
✅ Three mechanisms are now ruled out with evidence: **global tone** (a curve
fitted on its own data barely moves it), **texture decode** (the toggles do not
reach the sprite path), **positional** (gradient loses to brightness).
✅ And the description is far better than "0.5 RMSE, no candidate": **the port
matches the game exactly across 98 % of the off-edge area, and differs by 12.5
levels inside the lit logo, with no consistent direction.**
⚠️ Still no mechanism. That is now a much smaller and better-posed question than
it was — but naming what it is *not* four times over is not the same as finding
what it is, and I am not going to invent a fifth candidate to close it.