[v6.0] reproduction: @ai-sdk/open-responses: response.reasoningsummarytext.delta is silently dropped, so the standard - #19684
Closed
ai-sdk-factory[bot] wants to merge 1 commit into
Conversation
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
gr2m
added a commit
that referenced
this pull request
Aug 26, 2026
…ummary text events (#19747) ## Background OpenAI-compatible Responses streams using the standard reasoning summary carrier emitted reasoning start and end events but omitted the streamed text, leaving callers with empty reasoning until final metadata arrived. ## Root Cause The Open Responses transform handled the LM Studio `response.reasoning_text.delta` extension but omitted the standard `response.reasoning_summary_text.delta` event even though it was already in the event union; the regression fixture and immutable reproduction confirmed the events parsed successfully but were silently discarded. ## Summary The transform now maps standard reasoning summary text deltas to `reasoning-delta` parts using `item_id` while preserving extension support and authoritative final summary metadata. The pull request includes a representative SSE fixture, focused regression coverage, and a patch changeset, with no dependency or configuration changes. ## Testing Regression coverage verifies reasoning start, two streamed summary deltas, reasoning end, and final summary metadata. All 89 Open Responses tests passed in both Node and Edge environments, full repository type checking passed, formatting and lint checks passed, and the immutable reproduction no longer reproduces the issue. ## End-to-end Validation - `pnpm -C examples/ai-functions exec tsx src/reproduction/issue-19659-open-responses-reasoning-summary.ts` exited 0, streamed `Thinking.` through two reasoning deltas, matched final summary metadata, and was classified `no-longer-reproduces`. ## Related Issues Fixes #19659 Closes #19684 Backport of #19661 --------- Co-authored-by: ai-sdk-factory[bot] <305873210+ai-sdk-factory[bot]@users.noreply.github.com> Co-authored-by: ai-sdk-factory <308175966+ai-sdk-factory@users.noreply.github.com> Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Contributor
Author
|
resolved via #19747 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bug
@ai-sdk/open-responses: response.reasoning_summary_text.delta is silently dropped, so the standard reasoning carrier streams no reasoning-delta
Reproduction
gpt-5-minirequest returned 101response.reasoning_summary_text.deltaevents containing 379 characters, while AI SDK emitted one reasoning start, zero reasoning deltas, and one reasoning end.@ai-sdk/open-responses@1.0.37;packages/open-responses/src/responses/open-responses-language-model.tsmapsresponse.reasoning_text.deltabut drops the documented reasoning-summary delta carrier.examples/ai-functions/src/reproduction/issue-19659-open-responses-reasoning-summary.tsexits with code 1 because the expected streamed reasoningThinking.is received as an empty string; a valid fix would reconstruct it from the two supplied deltas.packages/open-responses/src/responses/__fixtures__/openai-reasoning-summary-text.1.chunks.txtand regression test inpackages/open-responses/src/responses/open-responses-language-model.test.tsexpect a reasoning delta between reasoning start and end, but only start and end are received.reasoning-endevent does not include the later release's summary provider metadata; the primary missing streamed-reasoning outcome still reproduces.Relevant Documentation
Related Issues
Reproduces #19659