VS Code extension: completed assistant response not rendered until user re-prompts

Status Open
Maintainer reply None cached
Activity 0 comments · opened Jul 30, 2026

Description

A fully-generated assistant response did not appear in the VS Code extension chat view. The user had to send a follow-up message before the same content was visible (re-posted by the model in response to the complaint).

Environment

  • Client: Claude Code VS Code native extension
  • Platform: Linux (7.0.0-1004-aws)

What happened

  1. User invoked a project skill (/analyze-meeting) that ran several tool calls (bash, file reads/writes) followed by a normal text summary.
  2. The assistant turn completed normally — checked the local session transcript (~/.claude/projects/.../<session>.jsonl) and confirmed:
  • stop_reason: end_turn
  • Full, well-formed markdown text content (1964 characters, balanced backticks, no broken code fences)
  • Token usage well within context limits (~74-78K tokens used, no truncation)
  • Timestamp of generation: 2026-07-30T10:06:55.988Z
  1. The user's next message arrived ~2.5 minutes later saying no output was received at all.
  2. When the assistant re-posted the identical content in a later turn, it displayed correctly.

Why this looks like a client-side rendering/delivery bug, not a generation issue

The transcript evidence rules out:

  • Context window overflow
  • Response truncation
  • Malformed markdown breaking the renderer
  • An API-level error (stop_reason was a clean end_turn)

The content was persisted successfully server-side but did not appear in the UI until the exact same text was re-generated in a subsequent turn. This suggests something in the VS Code extension's message delivery/rendering pipeline occasionally drops or fails to render a completed assistant turn, particularly one following a longer sequence of tool calls (~15+ tool-use steps in this case).

Suggested next steps

  • Look at extension-side logs/telemetry around turn delivery for sessions with many preceding tool_use steps
  • Check for a possible race condition between tool-call completion events and final text-block rendering

View original on GitHub ↗