[BUG] Background process completion causes "queued message" UI state corruption and disables Esc interrupt
Resolved 💬 5 comments Opened Jan 9, 2026 by perpetuatech Closed Jan 9, 2026
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Observed behavior:
When one or more background processes complete while Claude is working on another task:
- Input field hint is wrong - Shows "Press up to edit your queued message" even though the user has no queued message. Pressing up correctly shows the last sent message (not a queued one).
- Escape key doesn't work - Cannot interrupt the current process with Esc. The only workaround is to quit the session and resume with claude -c.
Root cause hypothesis:
The new background process completion mechanism sends an internal message to Claude when a background task finishes. This internal message appears to be incorrectly treated as a "queued user message" by the UI, causing both the misleading hint and the interrupt issue.
What Should Happen?
When background processes complete while Claude is working on another task:
- The input field hint should remain in its normal state (e.g., "Message Claude..." or similar) - internal background process completion notifications should not affect the user-facing input prompt
- The Esc key should continue to work normally to interrupt the current operation
- Background process completion messages should be handled internally without being treated as queued user input
Error Messages/Logs
Steps to Reproduce
- Start a Claude Code session
- Give Claude a task that involves running one or more background processes (e.g., run_in_background: true on a Bash command or Task agent)
- While the background process is running, give Claude another task to work on
- Wait for the background process to complete - you'll see a notification that the process has finished
- While Claude is still working on the current task, observe:
- The input field shows "Press up to edit your queued message" hint
- Pressing Esc does not interrupt the current operation
- Only workaround is to quit the session and resume with claude -c
Claude Model
Opus
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.1.2
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
PowerShell
Additional Information
_No response_
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗