Skip to content

feat: esc interrupt, ctrl-c clear/quit, working status inline in transcript#33

Merged
jbj338033 merged 1 commit into
mainfrom
worktree-interrupte
Jun 9, 2026
Merged

feat: esc interrupt, ctrl-c clear/quit, working status inline in transcript#33
jbj338033 merged 1 commit into
mainfrom
worktree-interrupte

Conversation

@jbj338033

Copy link
Copy Markdown
Collaborator

Summary

Remaps interrupt from Ctrl+C to Esc, changes Ctrl+C to a clear/quit flow, and moves the working status out of the footer and into the transcript area.

  • Esc (streaming): immediately sends Op::Interrupt to cancel generation
  • Esc (idle, input present): two-step clear — first press shows "again to clear", second clears the composer
  • Ctrl+C: no longer interrupts; first press clears composer and shows "again to quit", second press quits
  • Working status: spinner/Working…/elapsed now appears inline at the bottom of the transcript (above the composer) instead of the footer
  • Interrupted notice: when a turn is interrupted before any text is streamed, a Notice("interrupted") item is appended to the transcript so the cancellation is always visible

Verification

  • cargo test -p goat-tui — passed (85 tests, 0 failed)
  • cargo clippy --workspace --all-targets -- -D warnings — passed
  • cargo fmt --all — passed

@jbj338033 jbj338033 force-pushed the worktree-interrupte branch from 16ce17a to 2655b98 Compare June 9, 2026 14:00
@jbj338033 jbj338033 merged commit 228fd1b into main Jun 9, 2026
@jbj338033 jbj338033 deleted the worktree-interrupte branch June 9, 2026 14:01
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