build(deps): bump ai from 7.0.147 to 7.0.153
Bumps ai from 7.0.147 to 7.0.153.
Changelog
Sourced from ai's changelog.
7.0.153
Patch Changes
- 5475347: Fix non-streaming Responses API structured output failing when multiple assistant messages contain JSON. Providers can supply separate structured-output text for parsing, allowing OpenAI and Azure Responses models to select the last
final_answerwhile preserving all generated content, annotations, conversation history, and token usage.- Updated dependencies [5475347]
- Updated dependencies [e729d58]
7.0.152
Patch Changes
- Updated dependencies [a706678]
@ai-sdk/gateway@4.0.1257.0.151
Patch Changes
- Updated dependencies [1bf6d85]
@ai-sdk/gateway@4.0.1247.0.150
Patch Changes
8e18d59: feat(ai): add experimental_streamSpeech
Streams speech audio from a string, or an array, iterable, or stream of text deltas and/or text parts (each with an optional
voiceandproviderOptions) using speech models that implement the experimentalExperimental_StreamingSpeechModelV4extension. Returns a single-consumeraudioStream/fullStreamplususage,warnings,responses, andproviderMetadatapromises. Providererrorparts are non-fatal and reported throughonError(defaultconsole.error). A user abort or a cancel rejects the result promises immediately. Exports theExperimental_SpeechTextPart,Experimental_SpeechStreamPart,Experimental_SpeechStreamUsage, andExperimental_StreamSpeechResulttypes, adds an optionalcausetoNoSpeechGeneratedError, and addsExperimental_MockStreamingSpeechModelV4toai/test.Updated dependencies [8202f5b]
Updated dependencies [85d84a1]
7.0.149
Patch Changes
1727442: fix(ai): process only the first approval response per tool call, so repeated or conflicting responses in the final tool message no longer execute a tool twice or both execute and deny it
0a5d0e7: Fix
toolChoice: 'none'by forwarding it to the Hugging Face Responses API and rejecting tool calls before local execution ingenerateText,streamText, andWorkflowAgent. Streamed tool parts are withheld so client-side tools cannot act on them, andrepairToolCallandexperimental_refineToolInputare not invoked for rejected tool calls.10026d1: Add the
interruptedfinish reason for provider streams that end without a completion signal. Preserve partial output without introducing an error solely for interruption, and stop tool execution, agent continuation, and automatic UI follow-ups for interrupted responses, including late tool results and approvals. Provider detection and emission will be added separately.Compatibility notice: Adding
interruptedto the public finish-reason types can break type checking after upgrading, even though this is a patch release. Exhaustive switches (for example, using anassertNeverfallback) and mappings such asRecord<FinishReason, string>must handle the new value. Update any custom validation or application logic that assumes the existing set of finish reasons is exhaustive.When providers begin emitting
interrupted, a stream ending without a completion signal will preserve partial output and report this finish reason without emitting an error solely for the interruption. Applications that need to detect incomplete responses should checkfinishReason === 'interrupted'as well as their existing error handling.
... (truncated)
Commits
612be23Version Packages (#23938)5475347fix(openai): parse the last final answer for non-streaming structured output ...2deca8cVersion Packages (#23883)a089a0aVersion Packages (#23880)594495aVersion Packages (#23857)8202f5bfeat(gateway): implement experimental streaming speech in the gateway provide...8e18d59feat(ai): add experimental_streamSpeech (#23794)401cadcVersion Packages (#23785)0a5d0e7fix: honor toolChoice none in core and Hugging Face (#23843)10026d1feat(ai): add support for interrupted finish reasons (#23778)- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Summary by cubic
Bumps ai from 7.0.147 to 7.0.153 in packages/opencode, updating the lockfile and transitive dependencies (@ai-sdk/gateway, @ai-sdk/provider, @ai-sdk/provider-utils). Brings fixes for toolChoice: 'none', structured output parsing for OpenAI/Azure Responses, and an experimental streamSpeech API.
Compatibility notice: The new interrupted finish reason may break type checks that assume an exhaustive set of finish reasons. Update Record<FinishReason, ...> mappings and assertNever switches.