@polpo-ai/llm 0.15.102 → 0.15.104

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/dist/index.d.ts CHANGED
@@ -25,7 +25,7 @@ export type { CostEstimate, LanguageModelUsage } from "./cost.js";
25
25
  export { isProviderInCooldown, markProviderCooldown, clearProviderCooldown, getProviderCooldowns, classifyProviderError, } from "./cooldown.js";
26
26
  export { queryText, queryStream, queryTextWithFallback, } from "./query.js";
27
27
  export { streamModelTurn, providerOptionsWithParallelToolCalls, normalizeResponseMessagesForHistory, prepareModelMessagesForProvider, prepareModelMessagesForTransport, } from "./stream-turn.js";
28
- export type { ModelTurnEvent, ModelTurnResult, StreamModelTurnInput, } from "./stream-turn.js";
28
+ export type { ModelTurnErrorInfo, ModelTurnEvent, ModelTurnResult, StreamModelTurnInput, } from "./stream-turn.js";
29
29
  export { toPortableToolInputSchema, toValidatedToolInputSchema, validateJsonSchema, validateToolInput, } from "./tool-schema.js";
30
30
  export type { ToolInputValidationResult } from "./tool-schema.js";
31
31
  export { ModelPolicyTurnError, isCommittingModelTurnEvent, runModelPolicyTurn, } from "./model-policy-turn.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,0DAA0D;AAC1D,OAAO,EACL,YAAY,EACZ,cAAc,GACf,MAAM,sBAAsB,CAAC;AAG9B,wDAAwD;AACxD,OAAO;AACL,kBAAkB;AAClB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,EAC7B,iCAAiC,EACjC,YAAY;AACZ,wCAAwC;AACxC,aAAa,EACb,UAAU,EACV,0BAA0B;AAC1B,qBAAqB;AACrB,oBAAoB,EACpB,oBAAoB;AACpB,kBAAkB;AAClB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,qBAAqB;AACrB,sBAAsB;AACtB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAO7B,wDAAwD;AACxD,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAmB5B,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,+BAA+B,EAC/B,kCAAkC,EAClC,6BAA6B,EAC7B,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,wDAAwD;AACxD,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,gCAAgC,EAChC,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AAGvC,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AAGpC,yDAAyD;AACzD,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,wDAAwD;AACxD,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,0DAA0D;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAEvB,0DAA0D;AAC1D,OAAO,EACL,SAAS,EACT,WAAW,EACX,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,uDAAuD;AACvD,OAAO,EACL,eAAe,EACf,oCAAoC,EACpC,mCAAmC,EACnC,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,kBAAkB,CAAC;AAO1B,uDAAuD;AACvD,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,uDAAuD;AACvD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAWhC,uDAAuD;AACvD,OAAO,EAAE,oCAAoC,EAAE,MAAM,6BAA6B,CAAC;AAOnF,uDAAuD;AACvD,OAAO,EACL,wCAAwC,GACzC,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,0DAA0D;AAC1D,OAAO,EACL,YAAY,EACZ,cAAc,GACf,MAAM,sBAAsB,CAAC;AAG9B,wDAAwD;AACxD,OAAO;AACL,kBAAkB;AAClB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,EAC7B,iCAAiC,EACjC,YAAY;AACZ,wCAAwC;AACxC,aAAa,EACb,UAAU,EACV,0BAA0B;AAC1B,qBAAqB;AACrB,oBAAoB,EACpB,oBAAoB;AACpB,kBAAkB;AAClB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,qBAAqB;AACrB,sBAAsB;AACtB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,qBAAqB,CAAC;AAO7B,wDAAwD;AACxD,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAmB5B,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,+BAA+B,EAC/B,kCAAkC,EAClC,6BAA6B,EAC7B,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AAGtC,wDAAwD;AACxD,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,gCAAgC,EAChC,8BAA8B,EAC9B,qBAAqB,GACtB,MAAM,+BAA+B,CAAC;AAGvC,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,6BAA6B,EAC7B,0BAA0B,EAC1B,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AAGpC,yDAAyD;AACzD,OAAO,EACL,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAE/B,wDAAwD;AACxD,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,0DAA0D;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AAEvB,0DAA0D;AAC1D,OAAO,EACL,SAAS,EACT,WAAW,EACX,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAEpB,uDAAuD;AACvD,OAAO,EACL,eAAe,EACf,oCAAoC,EACpC,mCAAmC,EACnC,+BAA+B,EAC/B,gCAAgC,GACjC,MAAM,kBAAkB,CAAC;AAQ1B,uDAAuD;AACvD,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,uDAAuD;AACvD,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAWhC,uDAAuD;AACvD,OAAO,EAAE,oCAAoC,EAAE,MAAM,6BAA6B,CAAC;AAOnF,uDAAuD;AACvD,OAAO,EACL,wCAAwC,GACzC,MAAM,iCAAiC,CAAC"}
@@ -4,6 +4,7 @@ import type { ModelTurnEvent, ModelTurnResult, StreamModelTurnInput } from "./st
4
4
  import type { NormalizedModelError } from "./model-runtime.js";
5
5
  export interface ModelPolicyAttempt {
6
6
  index: number;
7
+ retryIndex: number;
7
8
  model: string;
8
9
  isFallback: boolean;
9
10
  totalCandidates: number;
@@ -46,6 +47,8 @@ export interface RunModelPolicyTurnInput<TOOLS extends ToolSet = ToolSet> extend
46
47
  classifyError?: (error: unknown, attempt: ModelPolicyAttempt) => NormalizedModelError;
47
48
  onPolicyEvent?: (event: ModelPolicyEvent) => void | Promise<void>;
48
49
  preserveSingleAttemptError?: boolean;
50
+ /** One replay is safe only before text/reasoning or a validated tool call was emitted. */
51
+ maxRecoverableStreamRetries?: number;
49
52
  }
50
53
  export type ModelPolicyTurnResult<TOOLS extends ToolSet = ToolSet> = ModelTurnResult<TOOLS> & {
51
54
  policy: NormalizedModelPolicy;
@@ -54,7 +57,7 @@ export type ModelPolicyTurnResult<TOOLS extends ToolSet = ToolSet> = ModelTurnRe
54
57
  };
55
58
  export declare class ModelPolicyTurnError extends Error {
56
59
  readonly failures: ModelPolicyAttemptFailure[];
57
- constructor(message: string, failures: ModelPolicyAttemptFailure[]);
60
+ constructor(message: string, failures: ModelPolicyAttemptFailure[], cause?: unknown);
58
61
  }
59
62
  export declare function runModelPolicyTurn<TOOLS extends ToolSet = ToolSet>(input: RunModelPolicyTurnInput<TOOLS>, onEvent?: (event: ModelTurnEvent<TOOLS>) => void | Promise<void>): Promise<ModelPolicyTurnResult<TOOLS>>;
60
63
  export declare function isCommittingModelTurnEvent(event: ModelTurnEvent): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"model-policy-turn.d.ts","sourceRoot":"","sources":["../src/model-policy-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-policy-turn.d.ts","sourceRoot":"","sources":["../src/model-policy-turn.ts"],"names":[],"mappings":"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"}
@@ -3,88 +3,97 @@ import { streamModelTurn } from "./stream-turn.js";
3
3
  import { classifyRuntimeError } from "./runtime-normalization.js";
4
4
  export class ModelPolicyTurnError extends Error {
5
5
  failures;
6
- constructor(message, failures) {
6
+ constructor(message, failures, cause) {
7
7
  super(message);
8
8
  this.name = "ModelPolicyTurnError";
9
9
  this.failures = failures;
10
+ if (cause !== undefined) {
11
+ this.cause = cause;
12
+ }
10
13
  }
11
14
  }
12
15
  export async function runModelPolicyTurn(input, onEvent) {
13
16
  const policy = normalizeModelPolicy(input.selection);
14
- const attempts = policy.candidates.map((model, index) => ({
15
- index,
16
- model,
17
- isFallback: index > 0,
18
- totalCandidates: policy.candidates.length,
19
- }));
17
+ const maxRecoverableStreamRetries = normalizeRetryCount(input.maxRecoverableStreamRetries);
20
18
  const runAttempt = input.runAttempt ?? ((attemptInput, attemptEventHandler) => streamModelTurn(attemptInput, attemptEventHandler));
21
19
  const failures = [];
22
- for (const attempt of attempts) {
23
- await input.onPolicyEvent?.({ type: "model-attempt-started", attempt });
24
- const resolution = await input.resolveAttempt(attempt, policy);
25
- const attemptInput = buildAttemptInput(input, resolution);
26
- const bufferedEvents = [];
27
- let committed = false;
28
- const forwardEvent = async (event) => {
29
- if (!committed && isCommittingModelTurnEvent(event)) {
30
- committed = true;
31
- for (const buffered of bufferedEvents) {
32
- await onEvent?.(buffered);
20
+ for (let candidateIndex = 0; candidateIndex < policy.candidates.length; candidateIndex += 1) {
21
+ const model = policy.candidates[candidateIndex];
22
+ for (let retryIndex = 0; retryIndex <= maxRecoverableStreamRetries; retryIndex += 1) {
23
+ const attempt = createAttempt(candidateIndex, retryIndex, model, policy.candidates.length);
24
+ await input.onPolicyEvent?.({ type: "model-attempt-started", attempt });
25
+ const resolution = await input.resolveAttempt(attempt, policy);
26
+ const attemptInput = buildAttemptInput(input, resolution);
27
+ const bufferedEvents = [];
28
+ const openToolInputs = new Map();
29
+ let committed = false;
30
+ const forwardEvent = async (event) => {
31
+ if (event.type === "tool-input-start")
32
+ openToolInputs.set(event.id, event.name);
33
+ if (event.type === "tool-call")
34
+ openToolInputs.delete(event.id);
35
+ if (isProvisionalToolInputEvent(event)) {
36
+ await flushEvents(bufferedEvents, onEvent);
37
+ await onEvent?.(event);
38
+ return;
33
39
  }
34
- bufferedEvents.length = 0;
35
- }
36
- if (committed) {
37
- await onEvent?.(event);
38
- }
39
- else {
40
- bufferedEvents.push(event);
41
- }
42
- };
43
- try {
44
- const result = await runAttempt(attemptInput, forwardEvent);
45
- if (!committed) {
46
- for (const buffered of bufferedEvents) {
47
- await onEvent?.(buffered);
40
+ if (!committed && isCommittingModelTurnEvent(event)) {
41
+ committed = true;
42
+ await flushEvents(bufferedEvents, onEvent);
48
43
  }
49
- }
50
- await input.onPolicyEvent?.({ type: "model-attempt-succeeded", attempt });
51
- return {
52
- ...result,
53
- policy,
54
- selectedAttempt: attempt,
55
- failedAttempts: failures,
56
- };
57
- }
58
- catch (error) {
59
- const classification = input.classifyError?.(error, attempt) ?? classifyRuntimeError(error);
60
- const failure = {
61
- attempt,
62
- error,
63
- classification,
64
- committed,
44
+ if (committed)
45
+ await onEvent?.(event);
46
+ else
47
+ bufferedEvents.push(event);
65
48
  };
66
- failures.push(failure);
67
- await input.onPolicyEvent?.({ type: "model-attempt-failed", failure });
68
- const next = attempts[attempt.index + 1];
69
- if (!committed && classification.retryable && next) {
70
- await input.onPolicyEvent?.({
71
- type: "model-fallback-selected",
72
- from: attempt,
73
- to: next,
74
- reason: classification,
75
- });
76
- continue;
49
+ try {
50
+ const result = await runAttempt(attemptInput, forwardEvent);
51
+ await flushEvents(bufferedEvents, onEvent);
52
+ await input.onPolicyEvent?.({ type: "model-attempt-succeeded", attempt });
53
+ return {
54
+ ...result,
55
+ policy,
56
+ selectedAttempt: attempt,
57
+ failedAttempts: failures,
58
+ };
77
59
  }
78
- await input.onPolicyEvent?.({ type: "model-turn-failed", failures });
79
- if (input.preserveSingleAttemptError && attempts.length === 1) {
80
- if (!committed) {
81
- for (const buffered of bufferedEvents) {
82
- await onEvent?.(buffered);
83
- }
60
+ catch (error) {
61
+ const baseClassification = input.classifyError?.(error, attempt) ?? classifyRuntimeError(error);
62
+ const classification = openToolInputs.size > 0
63
+ ? { ...baseClassification, phase: "tool-input" }
64
+ : baseClassification;
65
+ const failure = { attempt, error, classification, committed };
66
+ failures.push(failure);
67
+ await input.onPolicyEvent?.({ type: "model-attempt-failed", failure });
68
+ for (const [id, name] of openToolInputs) {
69
+ const { raw: _raw, ...publicError } = classification;
70
+ await onEvent?.({ type: "tool-input-aborted", id, name, error: publicError });
71
+ }
72
+ const canReplayPartialToolInput = !committed
73
+ && openToolInputs.size > 0
74
+ && classification.retryable
75
+ && retryIndex < maxRecoverableStreamRetries;
76
+ if (canReplayPartialToolInput) {
77
+ continue;
78
+ }
79
+ const nextModel = policy.candidates[candidateIndex + 1];
80
+ if (!committed && classification.retryable && nextModel) {
81
+ const next = createAttempt(candidateIndex + 1, 0, nextModel, policy.candidates.length);
82
+ await input.onPolicyEvent?.({
83
+ type: "model-fallback-selected",
84
+ from: attempt,
85
+ to: next,
86
+ reason: classification,
87
+ });
88
+ break;
84
89
  }
85
- throw error;
90
+ await input.onPolicyEvent?.({ type: "model-turn-failed", failures });
91
+ await flushEvents(bufferedEvents, onEvent);
92
+ if (input.preserveSingleAttemptError && policy.candidates.length === 1 && error instanceof Error) {
93
+ throw error;
94
+ }
95
+ throw new ModelPolicyTurnError(classification.message ?? "Unknown model runtime error", failures, error);
86
96
  }
87
- throw new ModelPolicyTurnError(classification.message ?? "Model policy turn failed", failures);
88
97
  }
89
98
  }
90
99
  await input.onPolicyEvent?.({ type: "model-turn-failed", failures });
@@ -93,13 +102,36 @@ export async function runModelPolicyTurn(input, onEvent) {
93
102
  export function isCommittingModelTurnEvent(event) {
94
103
  return event.type === "reasoning-delta"
95
104
  || event.type === "text-delta"
96
- || event.type === "tool-input-start"
97
- || event.type === "tool-input-delta"
98
- || event.type === "tool-input-end"
99
105
  || event.type === "tool-call"
100
106
  || event.type === "tool-result"
101
107
  || event.type === "tool-error";
102
108
  }
109
+ function isProvisionalToolInputEvent(event) {
110
+ return event.type === "tool-input-start"
111
+ || event.type === "tool-input-delta"
112
+ || event.type === "tool-input-end";
113
+ }
114
+ function createAttempt(index, retryIndex, model, totalCandidates) {
115
+ return {
116
+ index,
117
+ retryIndex,
118
+ model,
119
+ isFallback: index > 0,
120
+ totalCandidates,
121
+ };
122
+ }
123
+ async function flushEvents(events, onEvent) {
124
+ for (const event of events)
125
+ await onEvent?.(event);
126
+ events.length = 0;
127
+ }
128
+ function normalizeRetryCount(value) {
129
+ if (value === undefined)
130
+ return 1;
131
+ if (!Number.isFinite(value) || value <= 0)
132
+ return 0;
133
+ return Math.floor(value);
134
+ }
103
135
  function buildAttemptInput(input, resolution) {
104
136
  return {
105
137
  ...(input.system ? { system: input.system } : {}),
@@ -108,6 +140,8 @@ function buildAttemptInput(input, resolution) {
108
140
  ...(input.activeTools ? { activeTools: input.activeTools } : {}),
109
141
  ...(input.toolChoice ? { toolChoice: input.toolChoice } : {}),
110
142
  ...(input.parallelToolCalls !== undefined ? { parallelToolCalls: input.parallelToolCalls } : {}),
143
+ ...(input.maxRetries !== undefined ? { maxRetries: input.maxRetries } : {}),
144
+ ...(input.timeout !== undefined ? { timeout: input.timeout } : {}),
111
145
  ...(input.abortSignal ? { abortSignal: input.abortSignal } : {}),
112
146
  ...(input.output ? { output: input.output } : {}),
113
147
  model: resolution.model,
@@ -1 +1 @@
1
- {"version":3,"file":"model-policy-turn.js","sourceRoot":"","sources":["../src/model-policy-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-policy-turn.js","sourceRoot":"","sources":["../src/model-policy-turn.ts"],"names":[],"mappings":"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"}
@@ -221,6 +221,189 @@ describe("runModelPolicyTurn", () => {
221
221
  })).rejects.toBe(originalError);
222
222
  expect(events).toEqual([{ type: "error", error: originalError }]);
223
223
  });
224
+ it("retries a transient turn interrupted while streaming tool input", async () => {
225
+ const attempted = [];
226
+ const events = [];
227
+ let calls = 0;
228
+ const result = await runModelPolicyTurn({
229
+ selection: "openai/gpt-4o",
230
+ messages,
231
+ resolveAttempt: (attempt) => {
232
+ attempted.push(attempt);
233
+ return { model: fakeModel(attempt.model) };
234
+ },
235
+ runAttempt: async (_input, onEvent) => {
236
+ calls += 1;
237
+ if (calls === 1) {
238
+ await onEvent?.({ type: "tool-input-start", id: "call_edit", name: "edit" });
239
+ await onEvent?.({ type: "tool-input-delta", id: "call_edit", delta: '{"path":"src/app.ts"' });
240
+ throw { message: "upstream temporarily unavailable", statusCode: 503 };
241
+ }
242
+ await onEvent?.({ type: "text-delta", id: "txt", text: "recovered" });
243
+ await onEvent?.({ type: "finish", finishReason: "stop" });
244
+ return fakeResult("recovered");
245
+ },
246
+ }, event => {
247
+ events.push(event);
248
+ });
249
+ expect(result.text).toBe("recovered");
250
+ expect(attempted).toEqual([
251
+ expect.objectContaining({ index: 0, retryIndex: 0 }),
252
+ expect.objectContaining({ index: 0, retryIndex: 1 }),
253
+ ]);
254
+ expect(events).toEqual([
255
+ { type: "tool-input-start", id: "call_edit", name: "edit" },
256
+ { type: "tool-input-delta", id: "call_edit", delta: '{"path":"src/app.ts"' },
257
+ expect.objectContaining({
258
+ type: "tool-input-aborted",
259
+ id: "call_edit",
260
+ name: "edit",
261
+ error: expect.objectContaining({ retryable: true }),
262
+ }),
263
+ { type: "text-delta", id: "txt", text: "recovered" },
264
+ { type: "finish", finishReason: "stop" },
265
+ ]);
266
+ expect(events.find(event => event.type === "tool-input-aborted"))
267
+ .not.toHaveProperty("error.raw");
268
+ });
269
+ it("terminalizes partial tool input and never stringifies plain errors as object Object", async () => {
270
+ const events = [];
271
+ await expect(runModelPolicyTurn({
272
+ selection: "openai/gpt-4o",
273
+ messages,
274
+ preserveSingleAttemptError: true,
275
+ resolveAttempt: (attempt) => ({ model: fakeModel(attempt.model) }),
276
+ runAttempt: async (_input, onEvent) => {
277
+ await onEvent?.({ type: "tool-input-start", id: "call_edit", name: "edit" });
278
+ throw { error: "Invalid arguments passed to the model.", statusCode: 400 };
279
+ },
280
+ }, event => {
281
+ events.push(event);
282
+ })).rejects.toMatchObject({
283
+ name: "ModelPolicyTurnError",
284
+ message: "Invalid arguments passed to the model.",
285
+ });
286
+ expect(events).toContainEqual(expect.objectContaining({
287
+ type: "tool-input-aborted",
288
+ id: "call_edit",
289
+ name: "edit",
290
+ error: expect.objectContaining({
291
+ class: "invalid-request",
292
+ retryable: false,
293
+ }),
294
+ }));
295
+ });
296
+ it("does not replay after text was already delivered, even with partial tool input", async () => {
297
+ const attempted = [];
298
+ const events = [];
299
+ await expect(runModelPolicyTurn({
300
+ selection: "openai/gpt-4o",
301
+ messages,
302
+ resolveAttempt: (attempt) => {
303
+ attempted.push(attempt);
304
+ return { model: fakeModel(attempt.model) };
305
+ },
306
+ runAttempt: async (_input, onEvent) => {
307
+ await onEvent?.({ type: "text-delta", id: "txt", text: "visible" });
308
+ await onEvent?.({ type: "tool-input-start", id: "call_edit", name: "edit" });
309
+ throw { message: "upstream temporarily unavailable", statusCode: 503 };
310
+ },
311
+ }, event => {
312
+ events.push(event);
313
+ })).rejects.toBeInstanceOf(ModelPolicyTurnError);
314
+ expect(attempted).toHaveLength(1);
315
+ expect(events.map(event => event.type)).toEqual([
316
+ "text-delta",
317
+ "tool-input-start",
318
+ "tool-input-aborted",
319
+ ]);
320
+ });
321
+ it("does not replay after a complete tool call is emitted", async () => {
322
+ let attempts = 0;
323
+ await expect(runModelPolicyTurn({
324
+ selection: "openai/gpt-4o",
325
+ messages,
326
+ resolveAttempt: (attempt) => ({ model: fakeModel(attempt.model) }),
327
+ runAttempt: async (_input, onEvent) => {
328
+ attempts += 1;
329
+ await onEvent?.({ type: "tool-input-start", id: "call_edit", name: "edit" });
330
+ await onEvent?.({
331
+ type: "tool-call",
332
+ id: "call_edit",
333
+ name: "edit",
334
+ args: { path: "src/app.ts" },
335
+ });
336
+ throw { message: "upstream temporarily unavailable", statusCode: 503 };
337
+ },
338
+ })).rejects.toBeInstanceOf(ModelPolicyTurnError);
339
+ expect(attempts).toBe(1);
340
+ });
341
+ it("treats non-finite retry settings as disabled instead of looping forever", async () => {
342
+ let attempts = 0;
343
+ await expect(runModelPolicyTurn({
344
+ selection: "openai/gpt-4o",
345
+ messages,
346
+ maxRecoverableStreamRetries: Number.POSITIVE_INFINITY,
347
+ resolveAttempt: (attempt) => ({ model: fakeModel(attempt.model) }),
348
+ runAttempt: async (_input, onEvent) => {
349
+ attempts += 1;
350
+ await onEvent?.({ type: "tool-input-start", id: "call_edit", name: "edit" });
351
+ throw { message: "upstream temporarily unavailable", statusCode: 503 };
352
+ },
353
+ })).rejects.toBeInstanceOf(ModelPolicyTurnError);
354
+ expect(attempts).toBe(1);
355
+ });
356
+ it("terminalizes every parallel tool input before retrying", async () => {
357
+ const events = [];
358
+ let calls = 0;
359
+ await runModelPolicyTurn({
360
+ selection: "openai/gpt-4o",
361
+ messages,
362
+ resolveAttempt: (attempt) => ({ model: fakeModel(attempt.model) }),
363
+ runAttempt: async (_input, onEvent) => {
364
+ calls += 1;
365
+ if (calls === 1) {
366
+ await onEvent?.({ type: "tool-input-start", id: "call_a", name: "read" });
367
+ await onEvent?.({ type: "tool-input-start", id: "call_b", name: "search" });
368
+ throw { message: "gateway timeout", statusCode: 504 };
369
+ }
370
+ return fakeResult("ok");
371
+ },
372
+ }, event => {
373
+ events.push(event);
374
+ });
375
+ expect(events.filter(event => event.type === "tool-input-aborted")).toEqual([
376
+ expect.objectContaining({ id: "call_a", name: "read" }),
377
+ expect.objectContaining({ id: "call_b", name: "search" }),
378
+ ]);
379
+ });
380
+ it("falls back only after the recoverable retry of a partial tool input is exhausted", async () => {
381
+ const attempted = [];
382
+ const result = await runModelPolicyTurn({
383
+ selection: {
384
+ primary: "openai/gpt-4o",
385
+ fallbacks: ["anthropic/claude-sonnet-5"],
386
+ },
387
+ messages,
388
+ resolveAttempt: (attempt) => {
389
+ attempted.push(attempt);
390
+ return { model: fakeModel(attempt.model) };
391
+ },
392
+ runAttempt: async (attemptInput, onEvent) => {
393
+ if (attemptInput.model.modelId === "openai/gpt-4o") {
394
+ await onEvent?.({ type: "tool-input-start", id: `call_${attempted.length}`, name: "edit" });
395
+ throw { message: "provider unavailable", statusCode: 503 };
396
+ }
397
+ return fakeResult("fallback");
398
+ },
399
+ });
400
+ expect(result.text).toBe("fallback");
401
+ expect(attempted).toEqual([
402
+ expect.objectContaining({ model: "openai/gpt-4o", retryIndex: 0 }),
403
+ expect.objectContaining({ model: "openai/gpt-4o", retryIndex: 1 }),
404
+ expect.objectContaining({ model: "anthropic/claude-sonnet-5", retryIndex: 0 }),
405
+ ]);
406
+ });
224
407
  it("normalizes candidate order before running attempts", async () => {
225
408
  const attempted = [];
226
409
  await runModelPolicyTurn({
@@ -1 +1 @@
1
- {"version":3,"file":"model-policy-turn.test.js","sourceRoot":"","sources":["../src/model-policy-turn.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-policy-turn.test.js","sourceRoot":"","sources":["../src/model-policy-turn.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-normalization.d.ts","sourceRoot":"","sources":["../src/runtime-normalization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,mCAAmC;IAClD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,iBAAiB,CAAC,EAAE,UAAU,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,oBAAoB,EAC3B,OAAO,GAAE,mCAAwC,GAChD,oBAAoB,CAuBtB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,GAAG,SAAS,CAE1F;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,oBAAoB,GAAG,sBAAsB,GAAG,SAAS,CA2B7G;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CA2BzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAE5E;AAkBD,wBAAgB,UAAU,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,SAAS,CAcnE"}
1
+ {"version":3,"file":"runtime-normalization.d.ts","sourceRoot":"","sources":["../src/runtime-normalization.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAU5B,MAAM,WAAW,mCAAmC;IAClD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,iBAAiB,CAAC,EAAE,UAAU,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,oBAAoB,EAC3B,OAAO,GAAE,mCAAwC,GAChD,oBAAoB,CAuBtB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,GAAG,SAAS,CAE1F;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,oBAAoB,GAAG,sBAAsB,GAAG,SAAS,CA2B7G;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAoDzE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAE5E;AAkBD,wBAAgB,UAAU,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,SAAS,CAcnE"}
@@ -1,3 +1,4 @@
1
+ import { APICallError, InvalidToolInputError, MissingToolResultsError, NoSuchToolError, RetryError, TypeValidationError, } from "ai";
1
2
  export function extractLanguageModelUsage(input, options = {}) {
2
3
  const result = asRecord(input.result);
3
4
  const usage = asRecord(result?.totalUsage) ?? asRecord(result?.usage);
@@ -59,30 +60,53 @@ export function extractGatewayMetadataDetails(input) {
59
60
  return details;
60
61
  }
61
62
  export function classifyRuntimeError(error) {
62
- const message = getErrorMessage(error);
63
+ const facts = collectErrorFacts(error);
64
+ const message = facts.message;
63
65
  const lower = message.toLowerCase();
64
- if (lower.includes("cancel") || lower.includes("abort")) {
65
- return { class: "cancelled", retryable: false, message };
66
+ const statusCode = facts.statusCode;
67
+ const providerCode = facts.providerCode;
68
+ const diagnostic = `${lower} ${(providerCode ?? "").toLowerCase()}`;
69
+ const base = {
70
+ message,
71
+ ...(providerCode ? { providerCode } : {}),
72
+ ...(statusCode !== undefined ? { statusCode } : {}),
73
+ raw: error,
74
+ };
75
+ if (diagnostic.includes("cancel") || diagnostic.includes("abort")) {
76
+ return { ...base, class: "cancelled", retryable: false, retryScope: "none" };
77
+ }
78
+ if (statusCode === 429 || diagnostic.includes("rate limit") || diagnostic.includes("429")) {
79
+ return { ...base, class: "rate-limit", retryable: true, retryScope: "model-turn" };
80
+ }
81
+ if (diagnostic.includes("timeout") || diagnostic.includes("timed out") || diagnostic.includes("etimedout")) {
82
+ return { ...base, class: "timeout", retryable: true, retryScope: "model-turn" };
83
+ }
84
+ if (statusCode === 503 || diagnostic.includes("overload") || diagnostic.includes("temporarily unavailable") || diagnostic.includes("503")) {
85
+ return { ...base, class: "overloaded", retryable: true, retryScope: "model-turn" };
66
86
  }
67
- if (lower.includes("rate limit") || lower.includes("429")) {
68
- return { class: "rate-limit", retryable: true, message };
87
+ if (statusCode === 401 || statusCode === 403 || diagnostic.includes("unauthorized") || diagnostic.includes("forbidden") || diagnostic.includes("api key") || diagnostic.includes("401") || diagnostic.includes("403")) {
88
+ return { ...base, class: "auth", retryable: false, retryScope: "none" };
69
89
  }
70
- if (lower.includes("timeout") || lower.includes("timed out") || lower.includes("etimedout")) {
71
- return { class: "timeout", retryable: true, message };
90
+ if (diagnostic.includes("context") && diagnostic.includes("length")) {
91
+ return { ...base, class: "context-length", retryable: false, retryScope: "none" };
72
92
  }
73
- if (lower.includes("overload") || lower.includes("temporarily unavailable") || lower.includes("503")) {
74
- return { class: "overloaded", retryable: true, message };
93
+ if (statusCode === 404 || (diagnostic.includes("model") && diagnostic.includes("not found"))) {
94
+ return { ...base, class: "model-not-found", retryable: false, retryScope: "none" };
75
95
  }
76
- if (lower.includes("unauthorized") || lower.includes("forbidden") || lower.includes("api key") || lower.includes("401") || lower.includes("403")) {
77
- return { class: "auth", retryable: false, message };
96
+ if (statusCode === 400
97
+ || facts.invalidInput
98
+ || diagnostic.includes("invalid")
99
+ || diagnostic.includes("400")
100
+ || diagnostic.includes("must be non-empty")) {
101
+ return { ...base, class: "invalid-request", retryable: false, retryScope: "none" };
78
102
  }
79
- if (lower.includes("context") && lower.includes("length")) {
80
- return { class: "context-length", retryable: false, message };
103
+ if ((statusCode !== undefined && statusCode >= 500) || facts.retryable === true) {
104
+ return { ...base, class: "unavailable", retryable: true, retryScope: "model-turn" };
81
105
  }
82
- if (lower.includes("invalid") || lower.includes("400") || lower.includes("must be non-empty")) {
83
- return { class: "invalid-request", retryable: false, message };
106
+ if (/econnreset|enotfound|enetunreach|eai_again|fetch failed/.test(diagnostic)) {
107
+ return { ...base, class: "unavailable", retryable: true, retryScope: "model-turn" };
84
108
  }
85
- return { class: "unknown", retryable: false, message, raw: error };
109
+ return { ...base, class: "unknown", retryable: false, retryScope: "none" };
86
110
  }
87
111
  export function asRecord(value) {
88
112
  return value && typeof value === "object" && !Array.isArray(value) ? value : undefined;
@@ -120,14 +144,113 @@ export function numberFrom(...values) {
120
144
  }
121
145
  return undefined;
122
146
  }
123
- function getErrorMessage(error) {
124
- if (error instanceof Error)
125
- return error.message;
126
- if (typeof error === "string")
127
- return error;
128
- const record = asRecord(error);
129
- if (typeof record?.message === "string")
130
- return record.message;
131
- return "";
147
+ function collectErrorFacts(error) {
148
+ const queue = [error];
149
+ const seen = new Set();
150
+ let message;
151
+ let messageScore = -1;
152
+ let statusCode;
153
+ let providerCode;
154
+ let retryable;
155
+ let invalidInput = false;
156
+ for (let index = 0; index < queue.length && index < 32; index += 1) {
157
+ const candidate = queue[index];
158
+ if (typeof candidate === "string") {
159
+ ({ message, score: messageScore } = preferErrorMessage(candidate, message, messageScore));
160
+ continue;
161
+ }
162
+ if (!candidate || typeof candidate !== "object")
163
+ continue;
164
+ if (seen.has(candidate))
165
+ continue;
166
+ seen.add(candidate);
167
+ invalidInput ||= isAiSdkError(InvalidToolInputError, candidate)
168
+ || isAiSdkError(MissingToolResultsError, candidate)
169
+ || isAiSdkError(NoSuchToolError, candidate)
170
+ || isAiSdkError(TypeValidationError, candidate);
171
+ if (isAiSdkError(APICallError, candidate)) {
172
+ statusCode ??= candidate.statusCode;
173
+ retryable ??= candidate.isRetryable;
174
+ }
175
+ if (isAiSdkError(RetryError, candidate)) {
176
+ queue.push(candidate.lastError, ...candidate.errors);
177
+ }
178
+ const record = candidate;
179
+ ({ message, score: messageScore } = preferErrorMessage(record.message, message, messageScore));
180
+ ({ message, score: messageScore } = preferErrorMessage(typeof record.error === "string" ? record.error : undefined, message, messageScore));
181
+ statusCode ??= integerFrom(record.statusCode, record.status, asRecord(record.response)?.status);
182
+ providerCode ??= stringFrom(record.code, asRecord(record.error)?.code);
183
+ if (retryable === undefined) {
184
+ retryable = booleanFrom(record.isRetryable, record.retryable);
185
+ }
186
+ const responseBody = parseJsonRecord(record.responseBody);
187
+ if (responseBody)
188
+ queue.push(responseBody);
189
+ queue.push(record.cause, record.error, record.data, record.details, record.reason);
190
+ if (Array.isArray(record.errors))
191
+ queue.push(...record.errors);
192
+ }
193
+ return {
194
+ message: message ?? "Unknown model runtime error",
195
+ ...(statusCode !== undefined ? { statusCode } : {}),
196
+ ...(providerCode ? { providerCode } : {}),
197
+ ...(retryable !== undefined ? { retryable } : {}),
198
+ invalidInput,
199
+ };
200
+ }
201
+ function isAiSdkError(constructor, value) {
202
+ return constructor?.isInstance?.(value) === true;
203
+ }
204
+ function cleanErrorMessage(value) {
205
+ if (typeof value !== "string")
206
+ return undefined;
207
+ const message = value.trim();
208
+ if (!message || message === "[object Object]")
209
+ return undefined;
210
+ return message;
211
+ }
212
+ function preferErrorMessage(candidate, current, currentScore) {
213
+ const message = cleanErrorMessage(candidate);
214
+ if (!message)
215
+ return { message: current, score: currentScore };
216
+ const lower = message.toLowerCase();
217
+ const score = lower.includes("[object object]")
218
+ ? 0
219
+ : lower === "internal server error"
220
+ || lower === "model returned an error"
221
+ || lower.startsWith("no output generated")
222
+ ? 1
223
+ : /missing|required|invalid|timeout|timed out|rate limit|unavailable|failed|denied|forbidden|not found/.test(lower)
224
+ ? 4
225
+ : 3;
226
+ return score > currentScore
227
+ ? { message, score }
228
+ : { message: current, score: currentScore };
229
+ }
230
+ function integerFrom(...values) {
231
+ for (const value of values) {
232
+ if (typeof value === "number" && Number.isInteger(value))
233
+ return value;
234
+ if (typeof value === "string" && /^\d{3}$/.test(value.trim()))
235
+ return Number(value);
236
+ }
237
+ return undefined;
238
+ }
239
+ function booleanFrom(...values) {
240
+ for (const value of values) {
241
+ if (typeof value === "boolean")
242
+ return value;
243
+ }
244
+ return undefined;
245
+ }
246
+ function parseJsonRecord(value) {
247
+ if (typeof value !== "string" || !value.trim().startsWith("{"))
248
+ return undefined;
249
+ try {
250
+ return asRecord(JSON.parse(value));
251
+ }
252
+ catch {
253
+ return undefined;
254
+ }
132
255
  }
133
256
  //# sourceMappingURL=runtime-normalization.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-normalization.js","sourceRoot":"","sources":["../src/runtime-normalization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-normalization.js","sourceRoot":"","sources":["../src/runtime-normalization.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,UAAU,EACV,mBAAmB,GACpB,MAAM,IAAI,CAAC;AAqBZ,MAAM,UAAU,yBAAyB,CACvC,KAA2B,EAC3B,UAA+C,EAAE;IAEjD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACrD,MAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC,EAAE,eAAe,CAAC,CAAC;IACzF,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,EAAE,eAAe,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,UAAU,CAAC;IACxD,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;IAC7C,MAAM,UAAU,GAAG,YAAY,KAAK,SAAS;QAC3C,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,SAAS;QACxC,CAAC,CAAC,OAAO,CAAC,kBAAkB,IAAI,SAAS,CAAC;IAE5C,OAAO;QACL,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,YAAY,KAAK,UAAU,IAAI,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvG,UAAU;QACV,YAAY;KACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAA2B;IACpE,OAAO,6BAA6B,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAA2B;IACvE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC5D,MAAM,eAAe,GAAG,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC5D,IAAI,CAAC,eAAe;QAAE,OAAO,SAAS,CAAC;IAEvC,MAAM,OAAO,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,OAAO,GAA2B,EAAE,eAAe,EAAE,CAAC;IAC5D,MAAM,YAAY,GAAG,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;IAC9D,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC,UAAU,EAAE,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;IACjH,MAAM,aAAa,GAAG,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;IACnF,MAAM,qBAAqB,GAAG,UAAU,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;IAC7E,MAAM,sBAAsB,GAAG,UAAU,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IACnF,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAE3D,IAAI,YAAY;QAAE,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;IACtD,IAAI,eAAe,KAAK,SAAS;QAAE,OAAO,CAAC,eAAe,GAAG,eAAe,CAAC;IAC7E,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACvE,IAAI,qBAAqB,KAAK,SAAS;QAAE,OAAO,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IAC/F,IAAI,sBAAsB,KAAK,SAAS;QAAE,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IAClG,IAAI,aAAa;QAAE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACzD,IAAI,aAAa;QAAE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACzD,IAAI,cAAc;QAAE,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;IAE5D,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IACxC,MAAM,UAAU,GAAG,GAAG,KAAK,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;IACpE,MAAM,IAAI,GAAG;QACX,OAAO;QACP,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,EAAE,KAAK;KACX,CAAC;IAEF,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAClE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAC/E,CAAC;IACD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1F,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;IACrF,CAAC;IACD,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3G,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;IAClF,CAAC;IACD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,yBAAyB,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1I,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;IACrF,CAAC;IACD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACtN,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IAC1E,CAAC;IACD,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IACpF,CAAC;IACD,IAAI,UAAU,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QAC7F,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrF,CAAC;IACD,IACE,UAAU,KAAK,GAAG;WACf,KAAK,CAAC,YAAY;WAClB,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;WAC9B,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;WAC1B,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAC3C,CAAC;QACD,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;IACrF,CAAC;IACD,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;QAChF,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;IACtF,CAAC;IACD,IAAI,yDAAyD,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;IACtF,CAAC;IAED,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,SAAS,CAAC;AACpH,CAAC;AAED,SAAS,0BAA0B,CAAC,OAA4C;IAC9E,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,iBAAiB,EAAE,gBAAgB,CAAC;QACzE,CAAC,CAAC,iBAAiB,CAAC,gBAAgB;QACpC,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,UAAU,CAAC,GAAG,MAAiB;IACtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE;YAAE,OAAO,KAAK,CAAC;IAC9D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAG,MAAiB;IAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC;QAC7C,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAUD,SAAS,iBAAiB,CAAC,KAAc;IACvC,MAAM,KAAK,GAAc,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,OAA2B,CAAC;IAChC,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;IACtB,IAAI,UAA8B,CAAC;IACnC,IAAI,YAAgC,CAAC;IACrC,IAAI,SAA8B,CAAC;IACnC,IAAI,YAAY,GAAG,KAAK,CAAC;IAEzB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACnE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;YAC1F,SAAS;QACX,CAAC;QACD,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ;YAAE,SAAS;QAC1D,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,SAAS;QAClC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAEpB,YAAY,KAAK,YAAY,CAAC,qBAAqB,EAAE,SAAS,CAAC;eAC1D,YAAY,CAAC,uBAAuB,EAAE,SAAS,CAAC;eAChD,YAAY,CAAC,eAAe,EAAE,SAAS,CAAC;eACxC,YAAY,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAElD,IAAI,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,EAAE,CAAC;YAC1C,UAAU,KAAK,SAAS,CAAC,UAAU,CAAC;YACpC,SAAS,KAAK,SAAS,CAAC,WAAW,CAAC;QACtC,CAAC;QACD,IAAI,YAAY,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,MAAM,GAAG,SAAoC,CAAC;QACpD,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;QAC/F,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,kBAAkB,CACpD,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAC3D,OAAO,EACP,YAAY,CACb,CAAC,CAAC;QACH,UAAU,KAAK,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;QAChG,YAAY,KAAK,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QACvE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,YAAY;YAAE,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QACnF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;IAED,OAAO;QACL,OAAO,EAAE,OAAO,IAAI,6BAA6B;QACjD,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,WAAwE,EACxE,KAAc;IAEd,OAAO,WAAW,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AACnD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,iBAAiB;QAAE,OAAO,SAAS,CAAC;IAChE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CACzB,SAAkB,EAClB,OAA2B,EAC3B,YAAoB;IAEpB,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;IAC/D,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,KAAK,KAAK,uBAAuB;eAC9B,KAAK,KAAK,yBAAyB;eACnC,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC;YAC1C,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,qGAAqG,CAAC,IAAI,CAAC,KAAK,CAAC;gBACjH,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,CAAC,CAAC;IACV,OAAO,KAAK,GAAG,YAAY;QACzB,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;QACpB,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,WAAW,CAAC,GAAG,MAAiB;IACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACvE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,GAAG,MAAiB;IACvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;IAC/C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACjF,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -115,5 +115,73 @@ describe("runtime normalization", () => {
115
115
  retryable: false,
116
116
  });
117
117
  });
118
+ it("extracts actionable diagnostics from plain and nested provider errors", () => {
119
+ expect(classifyRuntimeError({
120
+ code: "Client specified an invalid argument",
121
+ error: "Invalid arguments passed to the model.",
122
+ statusCode: 400,
123
+ isRetryable: true,
124
+ })).toMatchObject({
125
+ class: "invalid-request",
126
+ retryable: false,
127
+ message: "Invalid arguments passed to the model.",
128
+ providerCode: "Client specified an invalid argument",
129
+ statusCode: 400,
130
+ });
131
+ expect(classifyRuntimeError({
132
+ cause: {
133
+ message: "Provider temporarily unavailable",
134
+ statusCode: 503,
135
+ isRetryable: true,
136
+ },
137
+ })).toMatchObject({
138
+ class: "overloaded",
139
+ retryable: true,
140
+ message: "Provider temporarily unavailable",
141
+ statusCode: 503,
142
+ });
143
+ });
144
+ it("always returns a non-empty safe message for unknown thrown values", () => {
145
+ const circular = {};
146
+ circular.self = circular;
147
+ expect(classifyRuntimeError(circular)).toMatchObject({
148
+ class: "unknown",
149
+ retryable: false,
150
+ message: "Unknown model runtime error",
151
+ });
152
+ });
153
+ it("prefers nested provider diagnostics over generic wrapper messages", () => {
154
+ expect(classifyRuntimeError({
155
+ message: "No output generated. Check the stream for errors.",
156
+ statusCode: 400,
157
+ cause: {
158
+ responseBody: JSON.stringify({
159
+ error: { message: "Missing required parameter: input[10].arguments." },
160
+ }),
161
+ },
162
+ })).toMatchObject({
163
+ class: "invalid-request",
164
+ retryable: false,
165
+ message: "Missing required parameter: input[10].arguments.",
166
+ statusCode: 400,
167
+ });
168
+ expect(classifyRuntimeError({ message: "provider failed", statusCode: 500 })).toMatchObject({
169
+ class: "unavailable",
170
+ retryable: true,
171
+ retryScope: "model-turn",
172
+ });
173
+ });
174
+ it("classifies nested network failures using provider codes", () => {
175
+ expect(classifyRuntimeError({
176
+ message: "fetch failed",
177
+ cause: new AggregateError([
178
+ Object.assign(new Error("connect failed"), { code: "ENETUNREACH" }),
179
+ ]),
180
+ })).toMatchObject({
181
+ class: "unavailable",
182
+ retryable: true,
183
+ providerCode: "ENETUNREACH",
184
+ });
185
+ });
118
186
  });
119
187
  //# sourceMappingURL=runtime-normalization.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-normalization.test.js","sourceRoot":"","sources":["../src/runtime-normalization.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-normalization.test.js","sourceRoot":"","sources":["../src/runtime-normalization.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import { Output, type FinishReason, type LanguageModel, type LanguageModelUsage, type ModelMessage, type ProviderMetadata, type StreamTextResult, type ToolChoice, type ToolSet, type TypedToolCall, type TypedToolResult } from "ai";
1
+ import { Output, type FinishReason, type LanguageModel, type LanguageModelUsage, type ModelMessage, type ProviderMetadata, type StreamTextResult, type ToolChoice, type ToolSet, type TimeoutConfiguration, type TypedToolCall, type TypedToolResult } from "ai";
2
+ import type { NormalizedModelError } from "./model-runtime.js";
3
+ export type ModelTurnErrorInfo = Omit<NormalizedModelError, "raw">;
2
4
  export type ModelTurnEvent<TOOLS extends ToolSet = ToolSet> = {
3
5
  type: "reasoning-delta";
4
6
  id: string;
@@ -21,6 +23,11 @@ export type ModelTurnEvent<TOOLS extends ToolSet = ToolSet> = {
21
23
  } | {
22
24
  type: "tool-input-end";
23
25
  id: string;
26
+ } | {
27
+ type: "tool-input-aborted";
28
+ id: string;
29
+ name: string;
30
+ error: ModelTurnErrorInfo;
24
31
  } | {
25
32
  type: "tool-call";
26
33
  id: string;
@@ -71,6 +78,9 @@ export type StreamModelTurnInput<TOOLS extends ToolSet = ToolSet> = {
71
78
  activeTools?: Array<keyof TOOLS>;
72
79
  toolChoice?: ToolChoice<TOOLS>;
73
80
  parallelToolCalls?: boolean;
81
+ /** AI SDK request-phase retries. Defaults explicitly to the SDK default. */
82
+ maxRetries?: number;
83
+ timeout?: TimeoutConfiguration;
74
84
  maxOutputTokens?: number;
75
85
  providerOptions?: Record<string, unknown>;
76
86
  abortSignal?: AbortSignal;
@@ -1 +1 @@
1
- {"version":3,"file":"stream-turn.d.ts","sourceRoot":"","sources":["../src/stream-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-turn.d.ts","sourceRoot":"","sources":["../src/stream-turn.ts"],"names":[],"mappings":"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"}
@@ -429,6 +429,8 @@ export async function streamModelTurn(input, onEvent) {
429
429
  ...(input.tools ? { tools: input.tools } : {}),
430
430
  ...(input.activeTools ? { activeTools: input.activeTools } : {}),
431
431
  ...(input.toolChoice ? { toolChoice: input.toolChoice } : {}),
432
+ maxRetries: input.maxRetries ?? 2,
433
+ ...(input.timeout !== undefined ? { timeout: input.timeout } : {}),
432
434
  ...(input.maxOutputTokens ? { maxOutputTokens: input.maxOutputTokens } : {}),
433
435
  ...(providerOptions ? { providerOptions: providerOptions } : {}),
434
436
  ...(input.abortSignal ? { abortSignal: input.abortSignal } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"stream-turn.js","sourceRoot":"","sources":["../src/stream-turn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-turn.js","sourceRoot":"","sources":["../src/stream-turn.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polpo-ai/llm",
3
- "version": "0.15.102",
3
+ "version": "0.15.104",
4
4
  "description": "LLM abstraction for Polpo — multi-provider model resolution, streaming, cost tracking, and failover built on Vercel AI SDK + AI Gateway",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -27,7 +27,7 @@
27
27
  "@hyperjump/browser": "1.4.0",
28
28
  "@hyperjump/json-schema": "1.17.7",
29
29
  "zod": "^4.3.6",
30
- "@polpo-ai/core": "0.15.102"
30
+ "@polpo-ai/core": "0.15.104"
31
31
  },
32
32
  "peerDependencies": {
33
33
  "@ai-sdk/gateway": ">=3.0.0",