Skip to content

Fix permission and operator overlays not showing their choices on the landing screen - #344

Merged
TheGreatAxios merged 1 commit into
release/tui-bugfixesfrom
cl-5560-approval-and-human-request-ui-boxes-do-not-appear
Aug 7, 2026
Merged

Fix permission and operator overlays not showing their choices on the landing screen#344
TheGreatAxios merged 1 commit into
release/tui-bugfixesfrom
cl-5560-approval-and-human-request-ui-boxes-do-not-appear

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Collaborator

Summary

  • Fixes the landing-screen float asking for only one choice row of headroom instead of the overlay's real, already fraction-capped content height
  • A permission approval or operator question that fires before the first transcript row (the landing screen) now gets its full computed box height, so every choice is on screen instead of the list being starved down to whatever the even top/bottom split happened to leave
  • Adds a regression test asserting all choices of a multi-option operator question render on the landing screen

Verification

  • bun run typecheck, bun run build, and bun test all pass (one pre-existing, unrelated flake in markdown-rows.test.ts around fenced-code timing, confirmed present on origin/main before this change)
  • Drove the actual shell via the OpenTUI test harness (createAppShell + wireGates, real render passes, captured frames) with a realistic permission request (a run_shell call with one scope) at 80x24 and 120x40: before the fix, "Always allow npm install" — the one choice the operator actually needs to grant durable trust — was clipped off screen on the very first turn; after the fix, all three choices ("Reject", "Accept once", "Always allow npm install") render

Closes CL-5560

@linear-code

linear-code Bot commented Aug 7, 2026

Copy link
Copy Markdown

CL-5560

@TheGreatAxios
TheGreatAxios changed the base branch from main to release/tui-bugfixes August 7, 2026 04:20
The gate can fire before any transcript row exists, while the landing
composition still owns the screen. The float only asked the landing
split for enough headroom to fit one choice row, so a request with more
choices than that got its list cut down to whatever the even top/bottom
split happened to leave above the prompt box — the title and body
painted, most or all of the choices did not, leaving the operator with
no visible way to answer.
@TheGreatAxios
TheGreatAxios force-pushed the cl-5560-approval-and-human-request-ui-boxes-do-not-appear branch from a3361c5 to 3734a57 Compare August 7, 2026 04:38
@TheGreatAxios
TheGreatAxios merged commit f78c51b into release/tui-bugfixes Aug 7, 2026
2 checks passed
@TheGreatAxios
TheGreatAxios deleted the cl-5560-approval-and-human-request-ui-boxes-do-not-appear branch August 7, 2026 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant