Skip to content

fix(langgraph): prevent duplicate streamed replies and tool results - #583

Merged
davidmckayv merged 1 commit into
mainfrom
fix/duplicate-live-transcript
Sep 16, 2026
Merged

davidmckayv merged 1 commit into
mainfrom
fix/duplicate-live-transcript

Conversation

@davidmckayv

Copy link
Copy Markdown
Contributor

Summary

With ChatGPT sign-in, the LangGraph bot displayed streamed tool results and replies twice when the final history snapshot arrived. Preserve the provider response ID announced in the initial metadata-only chunk across later chunks, so streamed messages and the snapshot refer to the same IDs. Track IDs per model invocation and lane, with cleanup at invocation/run completion.

Fixes FOR-309.

Validation

  • Extended the real SDK/AG-UI protocol regression to assert that streamed text IDs and tool parent IDs exist in the final snapshot. It failed before the fix and passed afterward.
  • All 60 LangGraph harness tests passed.
  • Actual Mac desktop with the patched harness: one Gmail read tool result and one summary, matching the audit record.
  • The selected bot also opened Example Domain with its browser tool and rendered a real graphical bar chart without duplicate output.
  • Rebased onto current main; the entire Python harness tree is unchanged by the rebase. Diff/working-tree checks passed.

The desktop check used a locally patched running container. Shipping this fix requires publishing the updated harness image; no desktop frontend change is required.

@linear-code

linear-code Bot commented Sep 16, 2026

Copy link
Copy Markdown

FOR-309

@davidmckayv
davidmckayv merged commit 75ddf6d into main Sep 16, 2026
15 checks passed
@davidmckayv
davidmckayv deleted the fix/duplicate-live-transcript branch September 16, 2026 18:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant