Mid-turn user messages intermittently lost during long-running turns with background tasks
Description
During long-running turns (many sequential tool calls + background tasks via run_in_background), user messages sent mid-turn were repeatedly not delivered to the model. This was not a one-off: over the course of the session, multiple interruption/redirection attempts by the user never reached the model, and the model completed multi-step operations (libvirt VM domain rename + documentation sweep) the user was actively trying to stop.
From the user's perspective, every attempt to interrupt the in-flight operation failed — the model saw none of those messages until after the operation finished. Some unrelated mid-turn messages earlier in the same session did surface alongside tool results, so delivery is nondeterministic — but when it mattered (stop/redirect during a long tool-heavy stretch), the messages were consistently lost.
Environment
- Claude Code v2.1.216, Linux (Ubuntu 24.04), zsh
- Model: claude-fable-5
- Session: 3acbd17c-82da-44a6-9c68-8148947f5c65 (~09:40 KST 2026-07-21)
- Remote-control usage pattern (user interacting from mobile), turn contained multiple background tasks (Bash run_in_background) and AskUserQuestion calls
Expected
Every user message sent mid-turn is surfaced to the model alongside the next tool result (documented behavior), so the model can stop or redirect work immediately.
Actual
Multiple mid-turn messages were never surfaced — not in any subsequent tool result, and not at turn end. The model kept executing to completion; the user had to interrupt afterwards and demand reverts of work done in the meantime.
Impact
Severe for remote-control workflows: the user's only real-time control channel over a long autonomous turn is mid-turn messaging. When those messages are dropped, the user has no way to stop ongoing mutations (VM/infra changes in this case).
Repro (best effort)
- Start a turn that runs many sequential Bash calls including
run_in_backgroundtasks and AskUserQuestion. - While tools are executing, send messages from the mobile client attempting to stop/redirect the work.
- In this session, those messages consistently failed to reach the model during the tool-heavy stretch.