Skip to content

Queue user messages while a reply is generating instead of cancelling the in-flight turn #41106

Description

@Man-oYo

Feature Request: Queue user messages while a reply is generating instead of cancelling the in-flight turn

Priority: High — this breaks a very common multi-question workflow.

Scenario

On the desktop app (tested on v1.18.15), when I send several messages back-to-back (for example: 1) "check BTC/ETH price", 2) "which web3 coin is the 24h dark horse", 3) "weather tomorrow in Guangzhou"), the first reply gets cancelled as soon as message #2/#3 arrive. The result: the first turn is truncated mid-response, and the queued messages are not processed in order — the whole point of sending them together is lost.

Current behaviour

  • New user message during generation cancels the in-flight turn.
  • The partially generated reply is discarded/truncated (no "continue" or resume).
  • Messages sent together do not run sequentially.

Expected behaviour

  1. Messages sent while a reply is generating should be queued and processed in order after the current turn completes (UI could show "N queued").
  2. Keep an explicit "cancel" action for users who do want to interrupt (not the default).
  3. Alternative/fallback: if cancellation stays, at least preserve the truncated reply so the user can continue/resume it, and never silently drop it.

Why it matters

Queuing several independent prompts at once (quotes, weather, lookups, batch questions) is a natural way to use a chat client. Today it results in lost/truncated answers and confusing UX. This is not an edge case — any user who types faster than the model responds will hit it.

Related

  • v1.18.14 note: "Waited for queued ACP session updates before ending a turn" — internal queueing already exists; extending it to user messages would be a natural step.
  • No user-facing message-queue feature appears in recent releases (v1.18.6–v1.18.15).

Suggested implementation sketch

  • When a user message arrives while a turn is generating, append it to a per-session FIFO instead of cancelling.
  • On turn completion, start the next queued message automatically.
  • Composer shows "2 messages queued" with a "Send now (interrupt)" option.

Activity

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions