diff --git a/docs/port/HANDOFF.md b/docs/port/HANDOFF.md index fb0f6483..d13cf5ba 100644 --- a/docs/port/HANDOFF.md +++ b/docs/port/HANDOFF.md @@ -9,6 +9,30 @@ the findings — but an answer that is not reachable from this page has not been delivered. + +## 🔴 2026-08-30 — do not hardcode the menu's initial focus; the sources disagree + +**New, and it is a warning rather than an answer.** `menu-navigation-semantics.md` +records initial focus as **`TUTORIAL`** (2/2 boots). But `boot_menu.sh`'s own +closing line says **`NEW GAME`**, and `menu-state-in-memory.md` reaches `EXTRAS` in +**four** downs — which only counts from `NEW GAME`. Two sources against one, and +the harness is not moving the cursor (`skip_intro.sh` presses Ⓐ once, no d-pad). + +**I could not settle it this iteration.** Two boots failed before the menu: the +title gate tests for a *static* screen, and this title never stills — minimum +frame-to-frame difference 1 551 against a threshold of 1 500, 0 of 72 samples able +to pass. [details](../re/harness-title-gate-assumes-a-static-title.md) + +⚠️ **So the 🟡 on that page is now weaker than it reads**: not merely "reproducible +but not proven invariant", but *contradicted by two other records*. If you have +authored `TUTORIAL`, keep it — I have not refuted it — but treat it as authored on +one harness, and expect it to change. + +Also unanswered, and never once run: whether focus **persists** across +menu → Ⓑ → title → Ⓐ → menu. `tools/re-capture/focus_persistence.sh` is written +and waiting on a harness that can reach the menu. + + ## ⚠️ 2026-08-30 — my prose in this file is now load-bearing, and two things follow `sylpheed-port` has anchored automated checks on the **wording** of deliveries diff --git a/docs/re/menu-navigation-semantics.md b/docs/re/menu-navigation-semantics.md index 6cd8a1ea..9b1f214c 100644 --- a/docs/re/menu-navigation-semantics.md +++ b/docs/re/menu-navigation-semantics.md @@ -30,6 +30,21 @@ 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-30 — and the sources DISAGREE, which nothing here had noticed.** +`boot_menu.sh`'s own closing line says *"AT MAIN MENU (cursor on NEW GAME)"*, and +[`menu-state-in-memory.md`](menu-state-in-memory.md)'s run reaches `EXTRAS` in +**four** downs, which only counts from `NEW GAME`. Two sources say `NEW GAME`; +this table says `TUTORIAL` 2/2. `skip_intro.sh` presses Ⓐ once and no d-pad, so +the harness is not moving the cursor and that does not explain it. + +🔴 **I tried to settle it and could not: the boot never reached the menu**, twice — +the title gate cannot fire on this title +([harness-title-gate-assumes-a-static-title](harness-title-gate-assumes-a-static-title.md)). +So the disagreement stands, and the round trip that would answer the persistence +question — menu → Ⓑ → title → Ⓐ → menu, is focus where you left it or reset? — has +still never been run. `tools/re-capture/focus_persistence.sh` is written and ready +for a harness that can reach the menu. + **🟡 Initial focus is reproducible but not established as invariant.** Both of my boots opened on `TUTORIAL`, and both used `boot_menu.sh`. The run recorded in [`menu-state-in-memory.md`](menu-state-in-memory.md) reached `EXTRAS` with *four*