[BUG] Cowork (web): near-identical assistant paragraphs re-rendered three times in one message block during/around auto-compaction

Status Open
Maintainer reply None cached
Activity 0 comments · opened Sep 18, 2026

This concerns Cowork on claude.ai in the browser, not the CLI, so the CLI-only required fields are not applicable.

What happened

In a long Cowork session ([id removed]), the transcript rendered three separate paragraphs that all say the same thing, stacked with no user turn between them:

an episode is one edit away, blocked by a Google "Verify it's you" prompt on the account. Clear it here and I'll finish it.
Correction to what I said a minute ago: an episode still carries it. ...

One thing from you unblocks it, a Google "Verify it's you" prompt sitting over Studio: clear it here, and an episode takes a minute.
One video still has it. Google is asking to verify it's you before Studio will let me edit: clear that and it's done in a minute.

Each carries a different hyperlink to the same blocked step. To the user this reads as the assistant repeating itself compulsively. Auto-compaction ran immediately after ("Compacting our conversation so we can keep chatting… 84%").

Why this looks like a rendering/turn-boundary bug rather than model behaviour

  • The paragraphs are not a single message's prose: they are three distinct final replies, each phrased as an opening line, concatenated into one visible block.
  • No user message separates them in the rendered transcript, although the session did have user turns in between (a stop hook rejected two replies, each rejected attempt still reached the user).
  • The session was at/near the compaction threshold when it happened.

Two things that would fix it

  1. A reply that is refused by a Stop hook should not be rendered to the user as a delivered assistant message. Today a blocked reply is still shown, so the retry reads as repetition. (Related: there is no signal to the model that its previous attempt was already displayed.)
  2. Assistant messages either side of an auto-compaction boundary should keep their turn separators in the rendered transcript instead of collapsing into one block.

Environment

  • Cowork on claude.ai, Chrome on macOS
  • Model: Opus 5
  • Session: long-running, auto-compaction triggered

View original on GitHub ↗