AI SDK 7.0.149 tightens approval deduplication, tool disabling and interruption boundaries
Released October 22, AI SDK 7.0.149 accepts only the first approval response per tool call, fixes toolChoice: none paths that could still execute tools, and adds an interrupted finish reason that stops tools and UI continuation after an incomplete stream.
Why it matters
Approval, tool disabling and stream termination are execution boundaries for generative interfaces. Duplicate decisions, ignored disable signals or treating an incomplete stream as normal completion can separate visible state from real side effects.
A closer look
Repeated or conflicting approval responses now use only the first decision for a tool call, preventing duplicate execution or simultaneous execution and denial. toolChoice: none is forwarded to the Hugging Face Responses API and rejected before local execution in generateText, streamText and WorkflowAgent; streamed tool parts are withheld from clients. The new interrupted finish reason preserves partial output while stopping tool execution, agent continuation, automatic UI follow-ups, and late tool results or approvals.
Who this is for
Teams using AI SDK tool approval, streaming UI, WorkflowAgent or custom finish-reason mappings
Original sources
- Vercel AI SDK official release and commits ↗github.com
- toolChoice none enforcement commit ↗github.com
- Interrupted finish-reason commit ↗github.com
- Approval-response deduplication commit ↗github.com
Revisions & corrections (1)
— Official October 22 release and three linked commits establish a new execution-boundary event; project-reported limitations and migration risk are preserved.