diff --git a/docs/port/MISSION.md b/docs/port/MISSION.md index 495d25c..3973765 100644 --- a/docs/port/MISSION.md +++ b/docs/port/MISSION.md @@ -137,12 +137,26 @@ the frame at 734 s has content but correlates only **0.15** with build 4's rende and 0.05 with the main menu, i.e. it is an attract-movie frame, not title art. So the Japanese run was **not** failing because of the locale — neither locale -reaches the interactive title in ~12 minutes of no pad input. 🟡 What remains -untested is a **pad press**: `pad.py` and `nav_to_flight.sh` exist, and -`title_states_capture.sh` reaches title states with its own flag set -(`--log_ui_draws --ui_draw_capture_frames`, plus xdotool window focus) which this -probe did not replicate. That is the next thing to try, and it is a capture -problem, not a locale one. +reaches the interactive title in ~12 minutes of no pad input. **🔴 Tried the proven path too, and I am stopping this line (2026-08-29).** +Run 3 launched exactly the way `boot_menu.sh` does — `DISPLAY=:98`, `--apu=sdl`, +`/dev/shm/xenia_*` cleared, the existing profile signed in — and drove +`skip_intro.sh`, the detector that is documented to work. It classified **every +one of 20 samples over 604 s as "movie"** and waited them all out, then timed +out. A direct check at 604 s confirms it was right: zero green-glyph pixels, +`screen_id` = other, warm mean (69,53,40), correlation **0.09** with build 7. The +game really was playing attract movies for ten minutes. + +So: **three runs, two locales, two launch paths, ~35 minutes of emulator time, no +interactive title.** Either the attract loop is far longer than the 600–780 s +windows tried, or something has regressed since `live-title-press-a.png` was +captured (that one came from a pad-driven boot — commit `88b3ce9`, "booting to +the main menu and walking it"). + +⚠️ **Not worth more loop iterations.** This capture does not block any of the +five menu screens, and it has now cost five. It is written down so a later +session with a reason to spend an hour on the boot path can pick it up; the +locale mechanism, the fixed oracle and the launch recipe are all in place, so +what is left is patience with the attract loop, not tooling. The locale is restored to English; `set_console_language.py ja` flips it back in one command. diff --git a/docs/re/METHOD.md b/docs/re/METHOD.md index efd6dd8..d8d58b2 100644 --- a/docs/re/METHOD.md +++ b/docs/re/METHOD.md @@ -463,3 +463,10 @@ agent's loop prompt, i.e. nowhere durable. See [`README.md`](README.md) for the ran. Printing the oracle's value each tick turns "no title" into "75 samples, max glyph 0", which is a measurement — and it is what showed the black-screen and attract-movie phases were being sampled correctly all along. +* **Know when to stop paying for a non-blocking answer.** A capture that would + settle two 🟡 residuals — neither of which blocks the deliverable — absorbed + five iterations. Each one produced a real finding (a broken oracle, a wrong + "impossible", a locale red herring), so none was wasted, but the *question* + never moved. The signal to stop is not "this is hard", it is "the thing this + unblocks is not blocking anything". Write down the recipe you built and leave + it for a session with a reason to spend the time.