diff --git a/crates/assistant2/src/thread.rs b/crates/assistant2/src/thread.rs index e7c4036a55..fa0fec39be 100644 --- a/crates/assistant2/src/thread.rs +++ b/crates/assistant2/src/thread.rs @@ -308,6 +308,13 @@ impl Thread { last_message.id, chunk, )); + } else { + // If we won't have an Assistant message yet, assume this chunk marks the beginning + // of a new Assistant response. + // + // Importantly: We do *not* want to emit a `StreamedAssistantText` event here, as it + // will result in duplicating the text of the chunk in the rendered Markdown. + thread.insert_message(Role::Assistant, chunk, cx); } } }