Skip to content

Home cannot reselect a waiting ask-here exchange #1346

Description

@AbirAbbas

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:chatThe v3 surface a person sits in front of (internal/tui3)bugSomething the code does that it should notsev:seriousWrong or missing behaviour a person meets in ordinary use

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions