re: a second JP capture closes the transfer -- and corrects my own noise claim

Last turn I transferred the EN title's capture noise to the JP box and flagged
the gap: build 7 carries ptloop01/02.rat which may animate inside that region
where the EN plate does not, and the era adjudication rests on a single capture.
Took a second, independent capture from a fresh boot in a separate session
(jp_title_session.sh -- sets ja, captures, always restores en; verified back at
language=1).

Within-run stability reproduces: 0 of 138 600 px in the ROI across four
comparisons, with 47k-73k px moving whole-frame as the contrast control.

BETWEEN SESSIONS, inside the box the adjudication uses: 645 of 164 124 px
differ, RMSE 0.3215, against 116 492 px whole-frame -- genuinely different
sessions. And the verdict reproduces to three decimals: stale 58.412 -> 58.413,
fixed 41.690 -> 41.692, margin 16.722 -> 16.721.

The shape is the useful part: capture noise moves both candidates together, so it
nearly cancels in a MARGIN. Absolute scores moved 0.001-0.002 while the margin
moved 0.001 against an in-box noise of 0.32. A margin between two renders scored
on one capture is far more robust than either score is.

CORRECTION to a claim I made earlier today and sent to the port: I said the
settle-vs-rest negative was STRENGTHENED because 1.48 sits below the whole-frame
capture spread of 2.8. Wrong comparison -- the measurement lives in the box, and
in-box between-session noise is 0.32, so 1.48 is well above it. The negative
rests on the render axis alone (1.2, ratio 1.2x), exactly as first stated. I
reached for a number that was to hand rather than the one that applies, which is
the same family as the errors we have both been cataloguing.

METHOD gains: match the noise floor to the quantity, including which noise
applies; and sylpheed-port's point that an instrument which rounds away the thing
being verified cannot verify it (they called a harness reproducible from an RMSE
printed to two decimals when the residual was 0.0565).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wuu56cE8vJGTBtn1ppsk8v
This commit is contained in:
sylph-decoder
2026-08-30 15:24:56 +00:00
parent f16338bc88
commit 281a058aca
4 changed files with 117 additions and 6 deletions

View File

@@ -93,16 +93,47 @@ the two captures differ by **83 496 pixels** whole-frame (max |d| 174) — they
genuinely different grabs — and by **0** inside the box. The screen's free-running
element is the plate, which lies outside the logo region the adjudication uses.
### ✅ And a second JP capture, from a fresh session, closes the transfer
The paragraph above transferred the *EN* title's capture noise to the *JP* box and
flagged that as a limit. A second independent capture was taken —
[`jp_title_session.sh`](../../tools/re-capture/jp_title_session.sh), fresh boot,
separate session, locale set and restored —
[`live-title-jp-at-rest-run2.png`](../captures/title-builds/live-title-jp-at-rest-run2.png).
Within-run stability **reproduces** (0 of 138 600 in the ROI, 47k73k px moving
whole-frame as the contrast control). Between sessions, inside the box this
adjudication uses: **645 of 164 124 px differ, RMSE 0.3215**, against 116 492 px
whole-frame — genuinely different sessions.
**The verdict reproduces to three decimals:**
| | vs session-1 capture | vs session-2 capture |
|---|---|---|
| stale era rest `(108,72)` | 58.412 | 58.413 |
| fixed era rest `(98,42)` | 41.690 | 41.692 |
| **margin** | **16.722** | **16.721** |
📌 **Capture noise moves both candidates together, so it nearly cancels in a
margin.** The absolute scores moved 0.0010.002 between sessions while the margin
moved 0.001, against an in-box capture noise of 0.32. A margin between two renders
scored on one capture is far more robust than either score is — which is why the
render axis, not the capture axis, is the binding constraint here.
**So the margins re-stated against every noise floor now measured:**
| comparison | margin | vs render noise (1.2) | vs capture noise (0.0 in-box, 2.8 whole-frame) |
| comparison | margin | render noise (1.2) | in-box capture noise (0.32) |
|---|---|---|---|
| stale vs fixed era | **16.7** | 14× | ≥5.9× |
| settle vs rest | **1.5** | 1.2× | below whole-frame noise |
| stale vs fixed era | **16.72** | **14×** — decisive | 52× — decisive |
| settle vs rest | **1.48** | **1.2×** — NOT decisive | 4.6× |
The era result survives on both axes. The settle-vs-rest negative is **stronger**
than first stated: 1.5 is not merely inside the render plateau's flatness, it is
below the whole-frame capture spread as well.
🔴 **Correction to a claim made earlier the same day.** This page briefly said the
settle-vs-rest negative was *strengthened* because 1.48 sits below the
**whole-frame** capture spread of 2.8. That was the wrong comparison: the
measurement lives in the box, and the in-box between-session noise is **0.32**, so
1.48 is well above it. The negative rests on the **render** axis alone, exactly as
first stated — the "strengthening" was reaching for a number that was to hand
rather than the one that applies.
⚠️ **Reach of the transfer.** This is the *EN* title's capture noise applied to the
*JP* title's box. Build 7 carries `ptloop01/02.rat`, which may animate inside that