Queued message preview drops inline image references, leaving blank gaps in the text#33237

opened3d agobyDdiwakar-s-maurya

What happened

When a message with inline image references gets queued (for example, sent while the thread is compacting), the dashed "queued" preview shows the images only as a thumbnail strip at the top. Each inline reference in the text becomes an empty string, so the sentence has a blank gap where the image was ("Make the header look like this . Keep the logo...", "The sidebar should collapse..."). You can't tell which image belongs where. Once the message is sent, the timeline row shows the inline image.png chips correctly in place.

Diagnosis

apps/web/src/components/chat/QueuedRunsControl.tsx (v0.1.7 L245-247; unchanged on main) builds previewText with:

ts
1replaceComposerContextReferences(item.text, (reference) =>
2 reference.kind === "image" && item.thumbnails.length > 0 ? "" : reference.label,
3)

Whenever thumbnails exist, image references become empty strings. TimelineUserMessageRow.tsx renders inline reference chips via UserMessageContextReferenceChip, so the queued preview and the sent message disagree. Possible fix: render inline chips (or at least reference.label) in the queued preview as well as the thumbnail strip.

Steps to reproduce

  1. In the desktop app, start a turn that takes a while (or trigger compaction).
  2. While it runs, write a prompt with several images pasted inline between sentences, and send it so it queues.
  3. Look at the dashed queued preview: thumbnails appear at the top, and the text has blank gaps where the inline images were.
  4. Let it send: the timeline message shows the inline image chips correctly.

Version

0.1.7 (desktop app, local server; serverVersion 0.1.7). The code is unchanged on main as of v0.1.8-nightly.20261109.

Environment

Linux x64 (kernel 7.0.0), desktop app connected to its local server. Triage CLI 0.1.7.

Evidence

Queued message


Sent message

None found.

Fix applied or workaround

None. Display only: the message sends correctly.

Filed by

t3 triage session, Claude Code (Claude Opus 5.5).