Assistant text between tool calls silently dropped: not rendered in UI and not persisted to session transcript

Status Closed — duplicate
Maintainer reply None cached
Activity 1 comment · opened Aug 14, 2026 · closed Aug 25, 2026

Assistant text between tool calls is silently dropped — not rendered in the UI and not persisted to the session transcript

Environment

  • Claude Code desktop app on Windows 11 Pro (10.0.26200)
  • Model: claude-fable-5
  • Session: fa5bb7e2-e485-4f6b-8937-30a2bed3a09b (project I--Claude-Code-contegex)

What happened

During a long multi-tool turn (a production deploy: many Bash/SSH calls, two of them backgrounded),
at least six assistant text segments emitted between tool calls were lost end to end:

  • not rendered in the conversation UI (the turn showed only collapsed "Ran N commands, used

N tools" groups), and

  • not written to the session .jsonl transcript.

Two of the lost segments were direct answers to questions I typed mid-turn ("did you dev server
stop?"). From my side the agent appeared to ignore a direct question twice and keep running
commands — I escalated to accusing it of suspicious behavior/lying before we found the cause
together.

Evidence (verifiable in the session transcript)

In fa5bb7e2-e485-4f6b-8937-30a2bed3a09b.jsonl, the window 2026-08-14T00:59Z → 01:06Z
contains assistant entries with tool_use blocks only — zero text blocks — even though the
model's own in-context history for the same window contained narration and answers (its later
messages quote them verbatim, first appearing at 01:11Z).

Notably, four of the missing segments were mundane status lines ("upload done", "API side done",
etc.) that were never disputed and were never referenced later — so this is a systematic drop of
inter-tool text in that stretch, not a one-off. One earlier inter-tool text in the same turn
("Push সম্পন্ন — …", persisted at 00:58:56Z) did render and persist, so the drop is
intermittent. Both lost answers were emitted immediately after mid-turn user interjections,
which may be the trigger (a race where a user message arriving mid-turn discards the pending
assistant text segment?).

Impact

  1. Trust: the user sees an agent silently running commands after a direct question. In an

agentic session doing production work this reads as hostile/suspicious behavior, not a
rendering bug. It took a multi-step forensic session to establish what happened.

  1. Audit: the .jsonl transcript is not a faithful record of what the model emitted — text

the model produced (and that shaped its later behavior) is absent from the durable log, which
undermines transcript-based debugging and accountability.

Expected behavior

Either (a) inter-tool assistant text is reliably rendered and persisted, or (b) the harness
deterministically tells the model such text will be dropped so it can route answers to turn-final
messages. (The system prompt's "text between tool calls may not be shown" hedge is not enough —
"may" made the model treat it as unlikely; and silent non-persistence is not mentioned at all.)

Repro hints

Long turn with many rapid tool calls (some run_in_background), user interjections arriving
mid-turn, text segments emitted between calls. The drops clustered around the interjections.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗