ai 7.0.30 → 7.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # ai
2
2
 
3
+ ## 7.0.32
4
+
5
+ ### Patch Changes
6
+
7
+ - 6cd7c74: fix: correct the `onToolCall` callback result documentation
8
+ - e35bcae: Allow UI message chunks to include fields added by newer server versions.
9
+ - a4eb3f3: Propagate abort reasons when generation is cancelled during tool execution.
10
+ - Updated dependencies [cefa3b1]
11
+ - Updated dependencies [8fbb89c]
12
+ - @ai-sdk/gateway@4.0.24
13
+
14
+ ## 7.0.31
15
+
16
+ ### Patch Changes
17
+
18
+ - 70f18c3: fix(ai): emit denied tool output state for client-rejected approvals
19
+ - cd06458: fix(ai): call `onInputStart` before `onInputAvailable` during non-streaming tool calls
20
+ - Updated dependencies [cd06458]
21
+ - @ai-sdk/provider-utils@5.0.11
22
+ - @ai-sdk/gateway@4.0.23
23
+
3
24
  ## 7.0.30
4
25
 
5
26
  ### Patch Changes
package/dist/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import * as _ai_sdk_provider from '@ai-sdk/provider';
2
1
  import { EmbeddingModelV4, EmbeddingModelV3, EmbeddingModelV2, EmbeddingModelV4Embedding, EmbeddingModelV4Middleware, ImageModelV4, ImageModelV3, ImageModelV2, ImageModelV4ProviderMetadata, ImageModelV2ProviderMetadata, ImageModelV4Middleware, JSONValue as JSONValue$1, LanguageModelV4, LanguageModelV3, LanguageModelV2, SharedV4Warning, LanguageModelV4Source, LanguageModelV4Middleware, RerankingModelV4, RerankingModelV3, SharedV4ProviderMetadata, SharedV4ProviderReference, SpeechModelV4, SpeechModelV3, SpeechModelV2, TranscriptionModelV4, TranscriptionModelV3, TranscriptionModelV2, JSONObject, ImageModelV4Usage, LanguageModelV4CallOptions, LanguageModelV4Prompt, AISDKError, LanguageModelV4ToolCall, JSONSchema7, ProviderV4, ProviderV3, ProviderV2, SharedV4Headers, JSONParseError, TypeValidationError, Experimental_VideoModelV4, Experimental_VideoModelV3, Experimental_VideoModelV4FrameType, EmbeddingModelV4CallOptions, Experimental_RealtimeFactoryV4, Experimental_RealtimeFactoryV4GetTokenOptions, Experimental_RealtimeFactoryV4GetTokenResult, Experimental_RealtimeModelV4, Experimental_RealtimeModelV4ClientEvent, Experimental_RealtimeModelV4ServerEvent, Experimental_RealtimeModelV4SessionConfig, Experimental_RealtimeModelV4ToolDefinition, FilesV4, SkillsV4, NoSuchModelError, FilesV4UploadFileCallOptions, SkillsV4UploadSkillResult, SkillsV4UploadSkillCallOptions, SkillsV4File } from '@ai-sdk/provider';
3
2
  export { AISDKError, APICallError, EmptyResponseBodyError, InvalidPromptError, InvalidResponseDataError, JSONParseError, JSONSchema7, LoadAPIKeyError, LoadSettingError, NoContentGeneratedError, NoSuchModelError, NoSuchProviderReferenceError, TooManyEmbeddingValuesForCallError, TypeValidationError, UnsupportedFunctionalityError } from '@ai-sdk/provider';
4
3
  import { GatewayModelId } from '@ai-sdk/gateway';
@@ -2243,153 +2242,7 @@ type InferUIMessageToolCall<UI_MESSAGE extends UIMessage> = ValueOf<{
2243
2242
  dynamic: true;
2244
2243
  });
2245
2244
 
2246
- declare const uiMessageChunkSchema: _ai_sdk_provider_utils.LazySchema<{
2247
- type: "text-start";
2248
- id: string;
2249
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2250
- } | {
2251
- type: "text-delta";
2252
- id: string;
2253
- delta: string;
2254
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2255
- } | {
2256
- type: "text-end";
2257
- id: string;
2258
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2259
- } | {
2260
- type: "error";
2261
- errorText: string;
2262
- } | {
2263
- type: "tool-input-start";
2264
- toolCallId: string;
2265
- toolName: string;
2266
- providerExecuted?: boolean | undefined;
2267
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2268
- toolMetadata?: JSONObject | undefined;
2269
- dynamic?: boolean | undefined;
2270
- title?: string | undefined;
2271
- } | {
2272
- type: "tool-input-delta";
2273
- toolCallId: string;
2274
- inputTextDelta: string;
2275
- } | {
2276
- type: "tool-input-available";
2277
- toolCallId: string;
2278
- toolName: string;
2279
- input: unknown;
2280
- providerExecuted?: boolean | undefined;
2281
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2282
- toolMetadata?: JSONObject | undefined;
2283
- dynamic?: boolean | undefined;
2284
- title?: string | undefined;
2285
- } | {
2286
- type: "tool-input-error";
2287
- toolCallId: string;
2288
- toolName: string;
2289
- input: unknown;
2290
- errorText: string;
2291
- providerExecuted?: boolean | undefined;
2292
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2293
- toolMetadata?: JSONObject | undefined;
2294
- dynamic?: boolean | undefined;
2295
- title?: string | undefined;
2296
- } | {
2297
- type: "tool-approval-request";
2298
- approvalId: string;
2299
- toolCallId: string;
2300
- isAutomatic?: boolean | undefined;
2301
- signature?: string | undefined;
2302
- } | {
2303
- type: "tool-approval-response";
2304
- approvalId: string;
2305
- approved: boolean;
2306
- reason?: string | undefined;
2307
- providerExecuted?: boolean | undefined;
2308
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2309
- } | {
2310
- type: "tool-output-available";
2311
- toolCallId: string;
2312
- output: unknown;
2313
- providerExecuted?: boolean | undefined;
2314
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2315
- toolMetadata?: JSONObject | undefined;
2316
- dynamic?: boolean | undefined;
2317
- preliminary?: boolean | undefined;
2318
- } | {
2319
- type: "tool-output-error";
2320
- toolCallId: string;
2321
- errorText: string;
2322
- providerExecuted?: boolean | undefined;
2323
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2324
- toolMetadata?: JSONObject | undefined;
2325
- dynamic?: boolean | undefined;
2326
- } | {
2327
- type: "tool-output-denied";
2328
- toolCallId: string;
2329
- } | {
2330
- type: "reasoning-start";
2331
- id: string;
2332
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2333
- } | {
2334
- type: "reasoning-delta";
2335
- id: string;
2336
- delta: string;
2337
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2338
- } | {
2339
- type: "reasoning-end";
2340
- id: string;
2341
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2342
- } | {
2343
- type: "custom";
2344
- kind: `${string}.${string}`;
2345
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2346
- } | {
2347
- type: "source-url";
2348
- sourceId: string;
2349
- url: string;
2350
- title?: string | undefined;
2351
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2352
- } | {
2353
- type: "source-document";
2354
- sourceId: string;
2355
- mediaType: string;
2356
- title: string;
2357
- filename?: string | undefined;
2358
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2359
- } | {
2360
- type: "file";
2361
- url: string;
2362
- mediaType: string;
2363
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2364
- } | {
2365
- type: "reasoning-file";
2366
- url: string;
2367
- mediaType: string;
2368
- providerMetadata?: _ai_sdk_provider.SharedV4ProviderMetadata | undefined;
2369
- } | {
2370
- type: `data-${string}`;
2371
- data: unknown;
2372
- id?: string | undefined;
2373
- transient?: boolean | undefined;
2374
- } | {
2375
- type: "start-step";
2376
- } | {
2377
- type: "finish-step";
2378
- } | {
2379
- type: "start";
2380
- messageId?: string | undefined;
2381
- messageMetadata?: unknown;
2382
- } | {
2383
- type: "finish";
2384
- finishReason?: "length" | "error" | "stop" | "content-filter" | "tool-calls" | "other" | undefined;
2385
- messageMetadata?: unknown;
2386
- } | {
2387
- type: "abort";
2388
- reason?: string | undefined;
2389
- } | {
2390
- type: "message-metadata";
2391
- messageMetadata: unknown;
2392
- }>;
2245
+ declare const uiMessageChunkSchema: _ai_sdk_provider_utils.LazySchema<UIMessageChunk<unknown, UIDataTypes>>;
2393
2246
  type DataUIMessageChunk<DATA_TYPES extends UIDataTypes> = ValueOf<{
2394
2247
  [NAME in keyof DATA_TYPES & string]: {
2395
2248
  type: `data-${NAME}`;
@@ -5552,8 +5405,8 @@ interface ChatInit<UI_MESSAGE extends UIMessage> {
5552
5405
  * Optional callback function that is invoked when a tool call is received.
5553
5406
  * Intended for automatic client-side tool execution.
5554
5407
  *
5555
- * You can optionally return a result for the tool call,
5556
- * either synchronously or asynchronously.
5408
+ * To add the tool output, call `addToolOutput` without awaiting it inside
5409
+ * this callback. The callback's return value is not used.
5557
5410
  */
5558
5411
  onToolCall?: ChatOnToolCallCallback<UI_MESSAGE>;
5559
5412
  /**
package/dist/index.js CHANGED
@@ -1089,7 +1089,7 @@ import {
1089
1089
  } from "@ai-sdk/provider-utils";
1090
1090
 
1091
1091
  // src/version.ts
1092
- var VERSION = true ? "7.0.30" : "0.0.0-test";
1092
+ var VERSION = true ? "7.0.32" : "0.0.0-test";
1093
1093
 
1094
1094
  // src/util/download/download.ts
1095
1095
  var download = async ({
@@ -2787,9 +2787,7 @@ function collectToolApprovals({
2787
2787
  }
2788
2788
  }
2789
2789
  }
2790
- const toolResults = /* @__PURE__ */ Object.create(
2791
- null
2792
- );
2790
+ const toolResults = /* @__PURE__ */ Object.create(null);
2793
2791
  for (const part of lastMessage.content) {
2794
2792
  if (part.type === "tool-result") {
2795
2793
  toolResults[part.toolCallId] = part;
@@ -2807,7 +2805,8 @@ function collectToolApprovals({
2807
2805
  approvalId: approvalResponse.approvalId
2808
2806
  });
2809
2807
  }
2810
- if (toolResults[approvalRequest.toolCallId] != null) {
2808
+ const existingToolResult = toolResults[approvalRequest.toolCallId];
2809
+ if (existingToolResult != null && (approvalResponse.approved || existingToolResult.output.type !== "execution-denied")) {
2811
2810
  continue;
2812
2811
  }
2813
2812
  const toolCall = toolCallsByToolCallId[approvalRequest.toolCallId];
@@ -2820,7 +2819,8 @@ function collectToolApprovals({
2820
2819
  const approval = {
2821
2820
  approvalRequest,
2822
2821
  approvalResponse,
2823
- toolCall
2822
+ toolCall,
2823
+ ...existingToolResult != null ? { existingToolResult } : {}
2824
2824
  };
2825
2825
  if (approvalResponse.approved) {
2826
2826
  approvedToolApprovals.push(approval);
@@ -5136,7 +5136,10 @@ async function generateText({
5136
5136
  ...collectedDeniedToolApprovals,
5137
5137
  ...revalidationDeniedToolApprovals
5138
5138
  ];
5139
- if (deniedToolApprovals.length > 0 || localApprovedToolApprovals.length > 0) {
5139
+ const deniedToolApprovalsWithoutResults = deniedToolApprovals.filter(
5140
+ (toolApproval2) => toolApproval2.existingToolResult == null
5141
+ );
5142
+ if (deniedToolApprovalsWithoutResults.length > 0 || localApprovedToolApprovals.length > 0) {
5140
5143
  const toolResults2 = await executeTools({
5141
5144
  toolCalls: localApprovedToolApprovals.map(
5142
5145
  (toolApproval2) => toolApproval2.toolCall
@@ -5182,7 +5185,7 @@ async function generateText({
5182
5185
  output: modelOutput
5183
5186
  });
5184
5187
  }
5185
- for (const toolApproval2 of deniedToolApprovals) {
5188
+ for (const toolApproval2 of deniedToolApprovalsWithoutResults) {
5186
5189
  toolContent.push({
5187
5190
  type: "tool-result",
5188
5191
  toolCallId: toolApproval2.toolCall.toolCallId,
@@ -5220,6 +5223,9 @@ async function generateText({
5220
5223
  ];
5221
5224
  const pendingDeferredToolCalls = /* @__PURE__ */ new Map();
5222
5225
  do {
5226
+ if (steps.length > 0) {
5227
+ mergedAbortSignal == null ? void 0 : mergedAbortSignal.throwIfAborted();
5228
+ }
5223
5229
  const stepTimeoutId = setAbortTimeout({
5224
5230
  abortController: stepAbortController,
5225
5231
  label: "Step",
@@ -5428,6 +5434,14 @@ async function generateText({
5428
5434
  if (tool2 == null) {
5429
5435
  continue;
5430
5436
  }
5437
+ if (tool2.onInputStart != null) {
5438
+ await tool2.onInputStart({
5439
+ toolCallId: toolCall.toolCallId,
5440
+ messages: stepMessages,
5441
+ abortSignal: mergedAbortSignal,
5442
+ context: runtimeContext
5443
+ });
5444
+ }
5431
5445
  if ((tool2 == null ? void 0 : tool2.onInputAvailable) != null) {
5432
5446
  await tool2.onInputAvailable({
5433
5447
  input: toolCall.input,
@@ -6243,27 +6257,27 @@ var toolMetadataSchema = z6.record(
6243
6257
  var uiMessageChunkSchema = lazySchema(
6244
6258
  () => zodSchema(
6245
6259
  z6.union([
6246
- z6.strictObject({
6260
+ z6.looseObject({
6247
6261
  type: z6.literal("text-start"),
6248
6262
  id: z6.string(),
6249
6263
  providerMetadata: providerMetadataSchema.optional()
6250
6264
  }),
6251
- z6.strictObject({
6265
+ z6.looseObject({
6252
6266
  type: z6.literal("text-delta"),
6253
6267
  id: z6.string(),
6254
6268
  delta: z6.string(),
6255
6269
  providerMetadata: providerMetadataSchema.optional()
6256
6270
  }),
6257
- z6.strictObject({
6271
+ z6.looseObject({
6258
6272
  type: z6.literal("text-end"),
6259
6273
  id: z6.string(),
6260
6274
  providerMetadata: providerMetadataSchema.optional()
6261
6275
  }),
6262
- z6.strictObject({
6276
+ z6.looseObject({
6263
6277
  type: z6.literal("error"),
6264
6278
  errorText: z6.string()
6265
6279
  }),
6266
- z6.strictObject({
6280
+ z6.looseObject({
6267
6281
  type: z6.literal("tool-input-start"),
6268
6282
  toolCallId: z6.string(),
6269
6283
  toolName: z6.string(),
@@ -6273,12 +6287,12 @@ var uiMessageChunkSchema = lazySchema(
6273
6287
  dynamic: z6.boolean().optional(),
6274
6288
  title: z6.string().optional()
6275
6289
  }),
6276
- z6.strictObject({
6290
+ z6.looseObject({
6277
6291
  type: z6.literal("tool-input-delta"),
6278
6292
  toolCallId: z6.string(),
6279
6293
  inputTextDelta: z6.string()
6280
6294
  }),
6281
- z6.strictObject({
6295
+ z6.looseObject({
6282
6296
  type: z6.literal("tool-input-available"),
6283
6297
  toolCallId: z6.string(),
6284
6298
  toolName: z6.string(),
@@ -6289,7 +6303,7 @@ var uiMessageChunkSchema = lazySchema(
6289
6303
  dynamic: z6.boolean().optional(),
6290
6304
  title: z6.string().optional()
6291
6305
  }),
6292
- z6.strictObject({
6306
+ z6.looseObject({
6293
6307
  type: z6.literal("tool-input-error"),
6294
6308
  toolCallId: z6.string(),
6295
6309
  toolName: z6.string(),
@@ -6301,14 +6315,14 @@ var uiMessageChunkSchema = lazySchema(
6301
6315
  errorText: z6.string(),
6302
6316
  title: z6.string().optional()
6303
6317
  }),
6304
- z6.strictObject({
6318
+ z6.looseObject({
6305
6319
  type: z6.literal("tool-approval-request"),
6306
6320
  approvalId: z6.string(),
6307
6321
  toolCallId: z6.string(),
6308
6322
  isAutomatic: z6.boolean().optional(),
6309
6323
  signature: z6.string().optional()
6310
6324
  }),
6311
- z6.strictObject({
6325
+ z6.looseObject({
6312
6326
  type: z6.literal("tool-approval-response"),
6313
6327
  approvalId: z6.string(),
6314
6328
  approved: z6.boolean(),
@@ -6316,7 +6330,7 @@ var uiMessageChunkSchema = lazySchema(
6316
6330
  providerExecuted: z6.boolean().optional(),
6317
6331
  providerMetadata: providerMetadataSchema.optional()
6318
6332
  }),
6319
- z6.strictObject({
6333
+ z6.looseObject({
6320
6334
  type: z6.literal("tool-output-available"),
6321
6335
  toolCallId: z6.string(),
6322
6336
  output: z6.unknown(),
@@ -6326,7 +6340,7 @@ var uiMessageChunkSchema = lazySchema(
6326
6340
  dynamic: z6.boolean().optional(),
6327
6341
  preliminary: z6.boolean().optional()
6328
6342
  }),
6329
- z6.strictObject({
6343
+ z6.looseObject({
6330
6344
  type: z6.literal("tool-output-error"),
6331
6345
  toolCallId: z6.string(),
6332
6346
  errorText: z6.string(),
@@ -6335,39 +6349,39 @@ var uiMessageChunkSchema = lazySchema(
6335
6349
  toolMetadata: toolMetadataSchema.optional(),
6336
6350
  dynamic: z6.boolean().optional()
6337
6351
  }),
6338
- z6.strictObject({
6352
+ z6.looseObject({
6339
6353
  type: z6.literal("tool-output-denied"),
6340
6354
  toolCallId: z6.string()
6341
6355
  }),
6342
- z6.strictObject({
6356
+ z6.looseObject({
6343
6357
  type: z6.literal("reasoning-start"),
6344
6358
  id: z6.string(),
6345
6359
  providerMetadata: providerMetadataSchema.optional()
6346
6360
  }),
6347
- z6.strictObject({
6361
+ z6.looseObject({
6348
6362
  type: z6.literal("reasoning-delta"),
6349
6363
  id: z6.string(),
6350
6364
  delta: z6.string(),
6351
6365
  providerMetadata: providerMetadataSchema.optional()
6352
6366
  }),
6353
- z6.strictObject({
6367
+ z6.looseObject({
6354
6368
  type: z6.literal("reasoning-end"),
6355
6369
  id: z6.string(),
6356
6370
  providerMetadata: providerMetadataSchema.optional()
6357
6371
  }),
6358
- z6.strictObject({
6372
+ z6.looseObject({
6359
6373
  type: z6.literal("custom"),
6360
6374
  kind: z6.string().transform((value) => value),
6361
6375
  providerMetadata: providerMetadataSchema.optional()
6362
6376
  }),
6363
- z6.strictObject({
6377
+ z6.looseObject({
6364
6378
  type: z6.literal("source-url"),
6365
6379
  sourceId: z6.string(),
6366
6380
  url: z6.string(),
6367
6381
  title: z6.string().optional(),
6368
6382
  providerMetadata: providerMetadataSchema.optional()
6369
6383
  }),
6370
- z6.strictObject({
6384
+ z6.looseObject({
6371
6385
  type: z6.literal("source-document"),
6372
6386
  sourceId: z6.string(),
6373
6387
  mediaType: z6.string(),
@@ -6375,19 +6389,19 @@ var uiMessageChunkSchema = lazySchema(
6375
6389
  filename: z6.string().optional(),
6376
6390
  providerMetadata: providerMetadataSchema.optional()
6377
6391
  }),
6378
- z6.strictObject({
6392
+ z6.looseObject({
6379
6393
  type: z6.literal("file"),
6380
6394
  url: z6.string(),
6381
6395
  mediaType: z6.string(),
6382
6396
  providerMetadata: providerMetadataSchema.optional()
6383
6397
  }),
6384
- z6.strictObject({
6398
+ z6.looseObject({
6385
6399
  type: z6.literal("reasoning-file"),
6386
6400
  url: z6.string(),
6387
6401
  mediaType: z6.string(),
6388
6402
  providerMetadata: providerMetadataSchema.optional()
6389
6403
  }),
6390
- z6.strictObject({
6404
+ z6.looseObject({
6391
6405
  type: z6.custom(
6392
6406
  (value) => typeof value === "string" && value.startsWith("data-"),
6393
6407
  { message: 'Type must start with "data-"' }
@@ -6396,18 +6410,18 @@ var uiMessageChunkSchema = lazySchema(
6396
6410
  data: z6.unknown(),
6397
6411
  transient: z6.boolean().optional()
6398
6412
  }),
6399
- z6.strictObject({
6413
+ z6.looseObject({
6400
6414
  type: z6.literal("start-step")
6401
6415
  }),
6402
- z6.strictObject({
6416
+ z6.looseObject({
6403
6417
  type: z6.literal("finish-step")
6404
6418
  }),
6405
- z6.strictObject({
6419
+ z6.looseObject({
6406
6420
  type: z6.literal("start"),
6407
6421
  messageId: z6.string().optional(),
6408
6422
  messageMetadata: z6.unknown().optional()
6409
6423
  }),
6410
- z6.strictObject({
6424
+ z6.looseObject({
6411
6425
  type: z6.literal("finish"),
6412
6426
  finishReason: z6.enum([
6413
6427
  "stop",
@@ -6419,11 +6433,11 @@ var uiMessageChunkSchema = lazySchema(
6419
6433
  ]).optional(),
6420
6434
  messageMetadata: z6.unknown().optional()
6421
6435
  }),
6422
- z6.strictObject({
6436
+ z6.looseObject({
6423
6437
  type: z6.literal("abort"),
6424
6438
  reason: z6.string().optional()
6425
6439
  }),
6426
- z6.strictObject({
6440
+ z6.looseObject({
6427
6441
  type: z6.literal("message-metadata"),
6428
6442
  messageMetadata: z6.unknown()
6429
6443
  })
@@ -9088,6 +9102,9 @@ var DefaultStreamTextResult = class {
9088
9102
  ),
9089
9103
  ...revalidationDeniedToolApprovals
9090
9104
  ];
9105
+ const localDeniedToolApprovalsWithoutResults = localDeniedToolApprovals.filter(
9106
+ (toolApproval2) => toolApproval2.existingToolResult == null
9107
+ );
9091
9108
  const deniedProviderExecutedToolApprovals = deniedToolApprovals.filter(
9092
9109
  (toolApproval2) => toolApproval2.toolCall.providerExecuted
9093
9110
  );
@@ -9141,7 +9158,7 @@ var DefaultStreamTextResult = class {
9141
9158
  }
9142
9159
  })
9143
9160
  );
9144
- if (toolOutputs.length > 0 || localDeniedToolApprovals.length > 0) {
9161
+ if (toolOutputs.length > 0 || localDeniedToolApprovalsWithoutResults.length > 0) {
9145
9162
  const localToolContent = [];
9146
9163
  for (const output2 of toolOutputs) {
9147
9164
  localToolContent.push({
@@ -9157,7 +9174,7 @@ var DefaultStreamTextResult = class {
9157
9174
  })
9158
9175
  });
9159
9176
  }
9160
- for (const toolApproval2 of localDeniedToolApprovals) {
9177
+ for (const toolApproval2 of localDeniedToolApprovalsWithoutResults) {
9161
9178
  localToolContent.push({
9162
9179
  type: "tool-result",
9163
9180
  toolCallId: toolApproval2.toolCall.toolCallId,