test(stick): the fixed screen's first test, fallback; Task 5's increments in the plan (#92, 5.1) [skip ci]

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GE3SDvQn5EoxdGufk84zz2
This commit is contained in:
Claude
2026-11-10 06:22:47 +00:00
parent 7fee88eb49
commit e824748cbd
2 changed files with 61 additions and 3 deletions
@@ -361,7 +361,14 @@ Tasks 1-3 accepted and merged (#159, master 594d2f93); #155 merged with them.
- [x] 4.8 `mint_zuse` passes on amd64 (4.7); the other sessions written (`mint_zuse_refuse`, `mint_small`, `mint_zuse_used`, `mint_pull_system`, `zuse_stick_first`; the data stick's QEMU device now `id=datadev`, so it can be pulled) -- all five PASS on amd64 (logs/20261110-0441* .. 0449*). Left for 4.8: `mint_zuse` on aarch64 and riscv64; the regressions (`genesis`, `two_sticks`, `hotplug`, `midpull`, `typeahead`). Then the other tests: `mint_zuse_refuse`, `mint_pull_system`, `zuse_stick_first`, `mint_small`, the pair's stick offered
- [x] 4.9 regressions, full acceptance on three ISAs: 538/538, word_count=318, dict_hash 0x8c92508f748f99cf on the three, the stick high, test-32 0 failures; FABRIC-3 XLVIII.16. **Task 4 accepted.**
**Next: Task 5** -- the fixed screen, R, the old stick refused, `mint_fail`, the system stick pulled while hers is in.
**Task 5, the fixed screen** (increments, as Task 4's):
- [x] 5.1 the first failing test: mode `fallback` (a mint, then the data stick booted alone: the four lines, no prompt, keys dropped; her stick added: the prompt; pulled: the screen again; R with no stick: the plug-in line, any key stops it)
- [ ] 5.2 run `fallback` before any kernel change: FAIL expected (the proxy with a real key stays headless, no screen)
- [ ] 5.3 the fixed screen in `sk_v4_identity_wait()`: shown while `g_proxy_fallback`; R runs `sk_v4_mint_zuse()`; every other key dropped
- [ ] 5.4 her stick pulled: the fixed screen again (not headless)
- [ ] 5.5 the system stick pulled while hers is in: hers let go first (the chain's tail)
- [ ] 5.6 the other sessions: `replace` (R, a new stick, the old one refused), `mint_fail` (blkdebug write errors), `real_pull`, `system_pull_real`
- [ ] 5.7 regressions, full acceptance, FABRIC entry, commit; then the SER5 bench steps in `boards/BRINGUP.md` (Task 5 step 6)
Working notes: the boot's own words are `sk_v4_words[]` in `kernel/src/v4/sk_v4.c`, served by
`sk_v4_serve(node, request)` with request = index + 1 (`BYE` is 1). Sticks are added in the harness