What happened
REGRESSION seen on commit 17ae56d34 (staging-20260921-17ae56d3496f) on 2026-09-21. Lane C, ask_here_end_to_end, left this waiting exchange on Home:
? remind me in 1 minute to drink wat… ? waiting on you
The test then could not put the cursor back on the exchange row; Up skipped it, so Enter could not reopen its ask-here card. On v0.3.0 (9258f7052), enter on the row gave the pane the keyboard, with the card on it.
The behavior is likely related to docs/changes/unreleased/1071-approvals-wheel.md, whose selection-ownership work changed Home navigation.
Replication
Deterministic (no model).
No no-model reproduction is established. Run the focused repository gate:
go test -tags e2e -count=1 -v ./internal/e2e -run '^TestTUIE2E/ask_here_end_to_end$'
Today it exits nonzero with could not put the cursor back on the exchange row after creating the visible ? waiting on you row.
Field (real models).
Set OPENROUTER_API_KEY and run the same command; allow about two minutes and less than $0.03. It creates an ask-here exchange, moves away on Home, presses Up to return, and presses Enter. The v0.3.0 run is the control.
Where
The relevant selection and rendering seams are app.homeKey and homeView.move in internal/tui3/home.go, homeView.gridMove and columnStops in internal/tui3/homegrid.go, and homeView.exchangeLines in internal/tui3/homeexchange.go. The evidence does not identify a specific faulty branch.
The fix
Keyboard navigation on Home must include a waiting ask-here exchange as one selectable row. Pressing Enter on that row must reopen its card and give the pane the keyboard, regardless of whether mouse navigation happened earlier.
Acceptance
- e2e: Through
TestTUIE2E/ask_here_end_to_end in tmux, press Up onto the row whose state is ? waiting on you, press Enter, assert the ask-here card is visible and owns keyboard input, and exit 0.
- e2e: Through the same Home screen, alternate mouse hover and keyboard
Up; assert the keyboard-selected exchange is the only selected row and Enter opens that row.
- Unit:
columnStops and homeView.gridMove include each actionable ? waiting on you exchange exactly once in keyboard order.
- The manual pages
internal/manual/chat/asking-from-home.md and internal/manual/chat/home.md describe reopening with Enter, and the change entry's invalidates names the old belief that waiting exchange rows were not keyboard stops.
Filed from the 2026-09-21 staging verification of 17ae56d; the lane reports, frames and e2e logs are in the owner's handoff folder for this promotion.
What happened
REGRESSION seen on commit
17ae56d34(staging-20260921-17ae56d3496f) on 2026-09-21. Lane C,ask_here_end_to_end, left this waiting exchange on Home:The test then
could not put the cursor back on the exchange row;Upskipped it, so Enter could not reopen its ask-here card. On v0.3.0 (9258f7052),enter on the row gave the pane the keyboard, with the card on it.The behavior is likely related to
docs/changes/unreleased/1071-approvals-wheel.md, whose selection-ownership work changed Home navigation.Replication
Deterministic (no model).
No no-model reproduction is established. Run the focused repository gate:
Today it exits nonzero with
could not put the cursor back on the exchange rowafter creating the visible? waiting on yourow.Field (real models).
Set
OPENROUTER_API_KEYand run the same command; allow about two minutes and less than $0.03. It creates an ask-here exchange, moves away on Home, pressesUpto return, and presses Enter. The v0.3.0 run is the control.Where
The relevant selection and rendering seams are
app.homeKeyandhomeView.moveininternal/tui3/home.go,homeView.gridMoveandcolumnStopsininternal/tui3/homegrid.go, andhomeView.exchangeLinesininternal/tui3/homeexchange.go. The evidence does not identify a specific faulty branch.The fix
Keyboard navigation on Home must include a waiting ask-here exchange as one selectable row. Pressing Enter on that row must reopen its card and give the pane the keyboard, regardless of whether mouse navigation happened earlier.
Acceptance
TestTUIE2E/ask_here_end_to_endin tmux, pressUponto the row whose state is? waiting on you, press Enter, assert the ask-here card is visible and owns keyboard input, and exit 0.Up; assert the keyboard-selected exchange is the only selected row and Enter opens that row.columnStopsandhomeView.gridMoveinclude each actionable? waiting on youexchange exactly once in keyboard order.internal/manual/chat/asking-from-home.mdandinternal/manual/chat/home.mddescribe reopening with Enter, and the change entry'sinvalidatesnames the old belief that waiting exchange rows were not keyboard stops.Filed from the 2026-09-21 staging verification of 17ae56d; the lane reports, frames and e2e logs are in the owner's handoff folder for this promotion.