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
77 lines
4.0 KiB
Plaintext
77 lines
4.0 KiB
Plaintext
# The JAPANESE title (GP_TITLE build 7) at rest -- captured 2026-08-30.
|
|
#
|
|
# Asked for by the port agent: its title_jp row drifted (155/20498 ->
|
|
# 233/61208), localized to a 350x396 block at (405,74) -- the logo stack --
|
|
# and with NO capture of the JP title in the corpus it could say the two
|
|
# renderers had moved apart but not which one moved.
|
|
#
|
|
# MISSION.md has carried this as 'needs one more run' since 2026-08-29.
|
|
# Three earlier attempts failed to reach the interactive title in either
|
|
# locale. The reason is now known and was not the locale: A at the title
|
|
# needs a signed-in profile (title-a-press-fault.md), and no run had one.
|
|
#
|
|
# LOCALE: tools/re-capture/set_console_language.py ja -- canary's own
|
|
# persisted XConfig, offset located from struct landmarks. Restored to en
|
|
# afterwards; verified back at language=1.
|
|
#
|
|
# ✅ INDEPENDENT CONFIRMATION THE LOCALE TOOK: the XMA probe logged a
|
|
# DIFFERENT voice-context set from every English run --
|
|
# ja: 1112064, 1150976, 1177600
|
|
# en: 1294336, 1118208, 1171456
|
|
# The Japanese voice region is a different set of streams, so the switch
|
|
# reached the guest and is not just a menu-language cosmetic.
|
|
#
|
|
# 'AT REST' IS DEMONSTRATED, NOT ASSUMED. Five frames ~1.5 s apart after the
|
|
# plate pulse says the screen has settled:
|
|
#
|
|
# the port's ROI, 350x396 at (405,74) design space:
|
|
# frame 1 vs 0: max |d| 0, pixels differing >8: 0 / 138600
|
|
# frame 2 vs 0: max |d| 0, pixels differing >8: 0 / 138600
|
|
# frame 3 vs 0: max |d| 0, pixels differing >8: 0 / 138600
|
|
# frame 4 vs 0: max |d| 0, pixels differing >8: 0 / 138600
|
|
#
|
|
# the whole frame, as a CONTRAST CONTROL (the plate pulses, so this must
|
|
# move or the instrument is blind):
|
|
# frame 1 vs 0: 39584 px frame 3 vs 0: 71927 px
|
|
# frame 2 vs 0: 58303 px frame 4 vs 0: 69604 px
|
|
#
|
|
# So the logo stack is byte-identical across 6 s while 5-8 % of the frame is
|
|
# moving. The ROI is at rest and the instrument can see motion.
|
|
#
|
|
# WHAT THE CAPTURE SHOWS that the English title does not: the katakana
|
|
# subtitle under the wordmark, and a crystalline burst BEHIND the wordmark --
|
|
# the ptlogo3a/b/c + ptlogo_back2eff* stack, which ui-forced-backdrop and
|
|
# the tie-break work record as TRANSPARENT at rest on the English title.
|
|
# That is exactly the region the port's drift is localized to.
|
|
|
|
################################################################################
|
|
# SECOND, INDEPENDENT CAPTURE -- 2026-08-30, a fresh boot in a separate session.
|
|
# tools/re-capture/jp_title_session.sh (sets ja, captures, ALWAYS restores en).
|
|
#
|
|
# Why: the five frames above demonstrate the logo stack is at rest WITHIN a run.
|
|
# They say nothing about the axis sylpheed-port's drift was on -- BETWEEN runs,
|
|
# where a free-running clock lands somewhere else on a fresh boot. Nothing in
|
|
# this corpus covered that axis, and the ptlogo_eff3 era adjudication rests on
|
|
# a single capture.
|
|
#
|
|
# Within-run stability REPRODUCES in session 2:
|
|
# ROI 350x396 at (405,74): frames 1-4 vs 0, max |d| 0, 0 / 138 600 differing
|
|
# whole frame contrast: 47 278 / 51 034 / 58 922 / 72 958 px moving
|
|
#
|
|
# BETWEEN SESSIONS, inside the 388x423 box the era adjudication uses:
|
|
# 645 of 164 124 px differ, max |d| 41, RMSE 0.3215
|
|
# whole frame, for contrast: 116 492 px differ, max |d| 51
|
|
# -- so the two captures are genuinely from 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
|
|
#
|
|
# 📌 And the shape of that is the useful part: capture noise moves BOTH
|
|
# candidates together, so it very nearly cancels in a MARGIN. The absolute
|
|
# scores moved 0.001-0.002 between sessions and 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.
|