re: settled -- a submenu resets to the item it OPENS on, not to its top item

DIFFICULTY is the screen that separates the readings: it opens on NORMAL, second of
EASY/NORMAL/HARD/BACK. Reproduced on a fresh boot rather than inherited from the
2026-08-29 capture. After one confirmed DOWN to HARD, B out and A back in, it
returns to NORMAL -- in-cursor 1.0 from opened against 93.9 from where left.

So reset targets a per-screen opening default that need not be the first item. The
other four submenus could not settle it because on each of them the opening item IS
the first, so both readings predict the same observation.

sylpheed-port's refusal to promote 4/4 to a rule was right on the evidence: a
generalisation from those four would have got this fifth screen wrong.

The probe never presses A inside a submenu, so it cannot reach SELECT DATA and the
guest throw at PC 0x82307128 -- recorded in the tool's source.

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-31 01:47:29 +00:00
parent 308d89c215
commit abeea3b834
4 changed files with 101 additions and 0 deletions

View File

@@ -30,6 +30,36 @@ with [`tools/re-capture/menu_focus.py`](../../tools/re-capture/menu_focus.py).
Wrap holds on both screens tested — the 5-item main menu and the 3-item `EXTRAS`
submenu — so it is a menu rule, not a per-screen table.
## ✅ 2026-08-31 — SETTLED: a submenu resets to the item it **opens on**, not to its top item
**measured** — [`data/difficulty-resets-to-named-item.txt`](data/difficulty-resets-to-named-item.txt),
[capture](captures/menu-nav/live-difficulty-opens-normal.png).
`DIFFICULTY` is the screen that separates the two readings, because it opens on
**`NORMAL`** — the second of `EASY` / `NORMAL` / `HARD` / `BACK`. Reproduced on a
fresh boot today rather than inherited from the 2026-08-29 capture.
| | |
|---|---|
| opened on | `NORMAL` |
| after 1 delivery-confirmed DOWN | `HARD` |
| after Ⓑ → main menu → Ⓐ → `DIFFICULTY` | **`NORMAL`** — in-cursor **1.0** from opened vs **93.9** from where left |
✅ **So reset goes to the opening item, and the opening item is a per-screen
default that need not be the first.** `DIFFICULTY` returns to `NORMAL`, not `EASY`.
📌 The other four could not settle it because on `EXTRAS`, `TUTORIAL`, `OPTIONS`
and `LOAD GAME` the opening item **is** the first item, so both readings predict
the same observation. Five screens, and only the fifth carries the distinction —
which is why `sylpheed-port` was right to refuse to promote 4/4 to a rule.
⚠️ **Safety, and it is why the run was possible**: `DIFFICULTY`'s *forward* path
crashes the guest (Ⓐ → `SELECT DATA` → `PC 0x82307128`). The probe presses Ⓐ to
enter, one DOWN, then Ⓑ to leave, and **never presses Ⓐ inside a submenu**.
⚠️ Reach: one boot, one round trip. Untested: whether the reset target moves once a
difficulty has actually been **confirmed** — this run never confirms one.
## 🔴 2026-08-31 — a submenu's opening item is NOT always its first: `DIFFICULTY` opens on `NORMAL`
**Already in this file, and I missed it.** `sylpheed-port` has been asking for a