Skip to content

feat(chat): queue a message sent while a turn is streaming - #392

Merged
jrothrock merged 1 commit into
mainfrom
feat/chat-queue-messages
Sep 2, 2026
Merged

feat(chat): queue a message sent while a turn is streaming#392
jrothrock merged 1 commit into
mainfrom
feat/chat-queue-messages

Conversation

@jrothrock

Copy link
Copy Markdown
Collaborator

Fixes "Enter won't send while Claude is answering." Pressing Enter (or Send) in the host Claude chat while a turn was streaming silently did nothing — submit() bailed on the busy guard, so the message was dropped. Now it's queued instead:

  • A message sent while busy shows as a dimmed "queued" bubble with an × to cancel before it fires.
  • When the current turn ends, the queued message auto-sends as the next turn.
  • The composer keeps Send available while busy (relabeled Queue) next to Stop; New chat clears any pending queued message.

Applies to every host-Claude chat (global dock, project chat, PR review) since they share ChatPanel.

Verified

Playwright with a mocked chat WS: while busy the button reads "Queue" and the queued bubble appears; on turn_end the queued message auto-fires (prompts_sent=["first","second (queued)"]); clicking × cancels it so only "first" is ever sent. Typecheck + build pass.

🤖 Generated with Claude Code

Pressing Enter (or Send) while the host Claude chat was answering silently
did nothing — submit() bailed on the `busy` guard, so "Enter won't send"
mid-answer. Now a message sent while busy is QUEUED instead of dropped:

- It shows as a dimmed "queued" bubble with an × to cancel before it fires.
- When the current turn ends (turn_end), the queued message auto-sends as
  the next turn.
- The composer keeps Send available while busy (relabeled "Queue") next to
  Stop; New chat clears any pending queued message.

Applies to every host-Claude chat (global dock, project chat, PR review)
since they share ChatPanel. Verified with a mocked chat WS: queue shows,
auto-fires on turn_end, and × cancels it so it never sends.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jrothrock
jrothrock merged commit 91cf2a8 into main Sep 2, 2026
1 check passed
@jrothrock
jrothrock deleted the feat/chat-queue-messages branch September 2, 2026 21:54
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