@namzu/sdk 17.0.0 → 18.1.0

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +123 -0
  2. package/dist/manager/run/persistence.d.ts +11 -0
  3. package/dist/manager/run/persistence.d.ts.map +1 -1
  4. package/dist/manager/run/persistence.js +13 -0
  5. package/dist/manager/run/persistence.js.map +1 -1
  6. package/dist/provider/fallback.d.ts +66 -0
  7. package/dist/provider/fallback.d.ts.map +1 -1
  8. package/dist/provider/fallback.js +20 -0
  9. package/dist/provider/fallback.js.map +1 -1
  10. package/dist/provider/index.d.ts +1 -1
  11. package/dist/provider/index.d.ts.map +1 -1
  12. package/dist/provider/retry.d.ts +9 -0
  13. package/dist/provider/retry.d.ts.map +1 -1
  14. package/dist/provider/retry.js +40 -3
  15. package/dist/provider/retry.js.map +1 -1
  16. package/dist/runtime/query/index.d.ts.map +1 -1
  17. package/dist/runtime/query/index.js +22 -2
  18. package/dist/runtime/query/index.js.map +1 -1
  19. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  20. package/dist/runtime/query/iteration/index.js +40 -1
  21. package/dist/runtime/query/iteration/index.js.map +1 -1
  22. package/dist/runtime/query/iteration/phases/context.d.ts +17 -0
  23. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  24. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  25. package/dist/types/provider/interface.d.ts +34 -0
  26. package/dist/types/provider/interface.d.ts.map +1 -1
  27. package/dist/types/run/entity.d.ts +38 -0
  28. package/dist/types/run/entity.d.ts.map +1 -1
  29. package/dist/types/run/step.d.ts +53 -0
  30. package/dist/types/run/step.d.ts.map +1 -1
  31. package/dist/types/run/step.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/manager/run/persistence.ts +14 -0
  34. package/src/provider/fallback.ts +88 -0
  35. package/src/provider/index.ts +5 -1
  36. package/src/provider/retry.ts +51 -4
  37. package/src/runtime/query/index.ts +26 -2
  38. package/src/runtime/query/iteration/index.ts +43 -1
  39. package/src/runtime/query/iteration/phases/context.ts +17 -0
  40. package/src/types/provider/interface.ts +35 -0
  41. package/src/types/run/entity.ts +38 -0
  42. package/src/types/run/step.ts +54 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,128 @@
1
1
  # Changelog
2
2
 
3
+ ## 18.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - d3bd080: A wrong API key is no longer reported as working
8
+
9
+ Typing a key into the picker ran a check that could not fail for two providers.
10
+ Measured against deliberately invalid keys, both said the key was good.
11
+
12
+ **With an OpenRouter key, any string at all passed.** A typo, the wrong
13
+ clipboard entry, a revoked key — all were accepted and reported as verified. The
14
+ check listed the model catalogue and treated a successful list as a passed
15
+ check, and OpenRouter's catalogue endpoint does not authenticate, so it answered
16
+ the same way whatever was sent. Nothing was wrong with that driver's listing; a
17
+ catalogue was simply never evidence about a key.
18
+
19
+ **With an Anthropic key, a real rejection was discarded.** The listing caught
20
+ the `401` and returned a hardcoded three-model list, which the check read as
21
+ success — so the truth existed, was thrown away, and was replaced by something
22
+ that looked like an answer.
23
+
24
+ A credential check is now a separate, declared capability. A driver that
25
+ declares no probe is reported as **not checked**, never as verified, so a driver
26
+ added in future cannot silently inherit a check it does not perform. Anthropic,
27
+ OpenRouter, OpenAI and Ollama declare one; OpenRouter's asks about the key
28
+ rather than the catalogue.
29
+
30
+ Refusal and doubt stay distinct. A `401` means the key is genuinely refused; a
31
+ timeout or a DNS failure means nothing was learned, and is reported that way —
32
+ telling someone on a broken connection to rotate a working key is a different
33
+ error, not a smaller one.
34
+
35
+ **Anthropic's model listing also never once ran.** The SDK method was pulled out
36
+ of its namespace and called bare, so it lost `this`, threw a `TypeError` on
37
+ every call, and was swallowed by the same catch — the hardcoded models were not
38
+ a fallback but the only answer the method could give. It now calls the live
39
+ endpoint, and falls back only when that genuinely fails.
40
+
41
+ The four driver packages are `minor` rather than `patch`: each gains a method
42
+ it did not have, and added functionality is a minor whatever the size of the
43
+ diff. Anthropic's earns it twice over, because its listing now returns the live
44
+ catalogue where it previously returned the same three hardcoded entries to every
45
+ caller - so the value every existing caller receives changes.
46
+
47
+ ## 18.0.0
48
+
49
+ ### Major Changes
50
+
51
+ - 52b339e: **`ProviderRetryConfig.maxRetryAfterMs` now does what it documents.** It said
52
+ "past this we surface the error and let the caller decide"; the code fell
53
+ through to the ordinary jittered backoff instead, so a provider asking for a
54
+ fifteen-minute wait was re-asked in half a second. The documentation was
55
+ correct and the code was not.
56
+
57
+ **What you see differently.** A server-directed `Retry-After` **greater than**
58
+ `maxRetryAfterMs` (60s by default) now surfaces the provider error instead of
59
+ retrying. A `Retry-After` at or under the ceiling is unchanged — still slept
60
+ exactly as instructed — and a failure with no `Retry-After` at all is
61
+ unchanged.
62
+
63
+ Nothing settles differently. The error thrown is the same one the
64
+ retries-exhausted path throws, carrying `retryAfterMs`, so a run that used to
65
+ fail after four attempts now fails after one, sooner and with the number a host
66
+ needs to schedule its own retry. What changes is the attempts in between: they
67
+ were sent to an endpoint that had already said it would not serve them, and
68
+ they cost the run its budget to rediscover a rate limit it had been told about
69
+ in advance.
70
+
71
+ **If you relied on the old behaviour** — on a provider whose `Retry-After` is
72
+ routinely longer than you are willing to wait, and which serves anyway if you
73
+ ask again immediately — raise `maxRetryAfterMs` past that value to keep
74
+ retrying, or set it low and handle the surfaced error. There is no setting that
75
+ restores "ignore the header and back off short", because that was the defect.
76
+
77
+ **With a provider chain this is where the ceiling pays.** A rate limit is a
78
+ fact about the member, not the request, so surfacing it advances the chain to
79
+ the next member at once rather than after the primary's whole retry budget is
80
+ spent.
81
+
82
+ - 5be5007: **The run record names the member that served.** After a provider chain fell
83
+ over, `run.metadata.provider` and every step's `model` still named the head. The
84
+ wire and the metering followed the member that answered; the durable record did
85
+ not, so a run read back six months later said the primary served a turn it never
86
+ saw. A missing field reads as unknown and a wrong one reads as a fact.
87
+
88
+ **What is major: `StepResult.model` reports a different value.** It now names
89
+ the model the step **asked for** — the run's configured model, or a
90
+ `prepareStep` override. It used to be the run's model unconditionally, so a host
91
+ that routed one step to a cheaper model read the expensive one back out of the
92
+ ledger. That defect needed no chain to see. Nothing stops compiling; the value
93
+ changes. If you were reading `step.model` to recover the run's configured model,
94
+ read `run.metadata.config.model`, which has always held it.
95
+
96
+ **New, and additive:**
97
+
98
+ - `StepResult.servedBy` — `{ providerId, model, chainIndex }`, who actually
99
+ answered the step. Equal to `model` and to `run.metadata.provider` on every
100
+ run without a chain; it diverges exactly when the chain advanced.
101
+ `chainIndex` is the member's position in the chain you declared (`0` is the
102
+ head) and is carried because a chain may name the same provider twice with
103
+ two models, which `providerId` alone cannot tell apart.
104
+ - `RunStateMetadata.servingProvider` — the member the run was routed to at the
105
+ end, absent when the configured provider served throughout.
106
+ `RunStateMetadata.provider` is unchanged and still names what you configured:
107
+ what was asked for and what answered are two facts, and collapsing them into
108
+ one field is how the original defect was made.
109
+ - `WithProviderFallbackOptions.onSwap` and the `ServingMember` type, for a host
110
+ composing `withProviderFallback` itself.
111
+
112
+ **Two limits, stated rather than papered over.** The loop records a step only
113
+ for a tool-calling turn, so the turn that produces the final answer is not in
114
+ `steps` — on a chain that falls over and answers immediately,
115
+ `metadata.servingProvider` is the only record of the swap. And the built-in disk
116
+ store writes `metadata`, not `steps`: per-step provenance reaches you on the
117
+ returned `Run`, so persist that if you need it.
118
+
119
+ **Nothing is backfilled.** Records written by 17.0.0 could fall over without
120
+ recording it, so their `servedBy` is absent and their `servingProvider` reads as
121
+ "no swap" whether or not there was one; the transcript's `provider_fallback`
122
+ events are the record for those runs. Filling them in from the declared head
123
+ would state as fact the exact thing that release got wrong, on exactly the runs
124
+ where it was wrong.
125
+
3
126
  ## 17.0.0
4
127
 
5
128
  ### Major Changes
@@ -110,6 +110,17 @@ export declare class RunPersistence {
110
110
  */
111
111
  setAbandonedTaskIds(taskIds: readonly string[]): void;
112
112
  setSteps(steps: readonly StepResult[]): void;
113
+ /**
114
+ * Record that a provider chain advanced, so the run record stops naming a
115
+ * member that did not serve.
116
+ *
117
+ * Last writer wins on purpose: a chain of four can advance three times in
118
+ * one run, and `metadata.servingProvider` answers "who was serving when
119
+ * this ended", not "who was ever asked". The full sequence is in the
120
+ * transcript's `provider_fallback` events and, per turn, in
121
+ * `steps[].servedBy`.
122
+ */
123
+ setServingProvider(providerId: string): void;
113
124
  clearLastPromptTokens(): void;
114
125
  /**
115
126
  * Provider-reported size of the most recent main-loop prompt, or
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"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"}
@@ -240,6 +240,19 @@ export class RunPersistence {
240
240
  setSteps(steps) {
241
241
  this.run.steps = steps;
242
242
  }
243
+ /**
244
+ * Record that a provider chain advanced, so the run record stops naming a
245
+ * member that did not serve.
246
+ *
247
+ * Last writer wins on purpose: a chain of four can advance three times in
248
+ * one run, and `metadata.servingProvider` answers "who was serving when
249
+ * this ended", not "who was ever asked". The full sequence is in the
250
+ * transcript's `provider_fallback` events and, per turn, in
251
+ * `steps[].servedBy`.
252
+ */
253
+ setServingProvider(providerId) {
254
+ this.run.metadata.servingProvider = providerId;
255
+ }
243
256
  clearLastPromptTokens() {
244
257
  this._lastPromptTokens = undefined;
245
258
  this._lastPromptMessageCount = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"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"}
@@ -41,8 +41,74 @@ export interface ProviderChainMember {
41
41
  readonly provider: LLMProvider;
42
42
  readonly model?: string;
43
43
  }
44
+ /**
45
+ * The member serving from now on.
46
+ *
47
+ * `index` is a position in the chain the host declared, so a reader can name
48
+ * the member without holding the chain: "member 2 of 4" is the sentence an
49
+ * operator writes in an incident note.
50
+ */
51
+ export interface ServingMember {
52
+ readonly index: number;
53
+ readonly providerId: string;
54
+ /** Absent for a member declared without one — see {@link ProviderChainMember.model}. */
55
+ readonly model?: string;
56
+ }
44
57
  export interface WithProviderFallbackOptions {
45
58
  readonly log?: Logger;
59
+ /**
60
+ * Called once per swap, with the member that serves from here on.
61
+ *
62
+ * A callback is enough to describe the WHOLE truth, not a sample of it,
63
+ * and that is a property of the cursor rather than of this option: the
64
+ * chain never rewinds, so "who is serving" is exactly "the head, plus
65
+ * every swap so far". A listener that starts at member 0 and applies each
66
+ * call is never behind.
67
+ *
68
+ * It exists beside the in-band `fallback` chunk rather than instead of it
69
+ * because the two have different observers and neither covers the other's
70
+ * case. The chunk reaches whoever is iterating the stream, at the moment
71
+ * of the swap — that is the operator. This reaches a party that has to
72
+ * know AFTER the request is over and may never have iterated the stream at
73
+ * all — that is the run record. Two things follow that the chunk alone
74
+ * cannot give it:
75
+ *
76
+ * - the cursor outlives the request, so a swap on the turn at step 3
77
+ * still describes steps 4..N, which emit no further chunk;
78
+ * - a side call that aggregates the stream through `collect()` — the
79
+ * compaction verifier and the forced-final summary both do — drops the
80
+ * `fallback` chunk on the floor, so a swap inside one is invisible to
81
+ * every chunk consumer. (The advisory executor calls its OWN advisor's
82
+ * provider, not the run's, so it is not one of these.)
83
+ *
84
+ * ## Fired when the replacement is ASKED, not when the cursor moves
85
+ *
86
+ * The two are not the same instant and the difference is observable. The
87
+ * cursor moves inside the catch; the notice chunk is then yielded, and the
88
+ * replacement request is only issued when the consumer comes back for
89
+ * another chunk. A consumer that stops there — a Stop, a `break`, a host
90
+ * that abandons the iterator — leaves a chain that selected a member and
91
+ * never asked it.
92
+ *
93
+ * Announcing at cursor-move would report that member as serving, and a
94
+ * ledger saying a provider served a turn it was never sent is the exact
95
+ * defect this callback exists to end, reintroduced one layer down. So the
96
+ * announcement sits at the top of the loop, immediately before the
97
+ * replacement's `chatStream` — the earliest moment at which the member is
98
+ * actually being asked.
99
+ *
100
+ * ## One stream at a time
101
+ *
102
+ * `cursor` is shared by every concurrent `chatStream` on this wrapper, so
103
+ * two overlapping calls can advance it under one another: one call's
104
+ * failure moves the cursor while the other is still being served by the
105
+ * head, and a listener would hear about a member that answered nothing for
106
+ * that call. Nothing here serializes or refuses concurrency — the
107
+ * property held before this option existed and is not introduced by it.
108
+ * `query()` issues its main turn and its side calls in sequence, which is
109
+ * what makes the reading exact there.
110
+ */
111
+ readonly onSwap?: (to: ServingMember) => void;
46
112
  }
47
113
  /**
48
114
  * Wrap an ordered chain so a member that cannot serve is replaced in place.
@@ -1 +1 @@
1
- {"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/provider/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAwB,WAAW,EAAe,MAAM,4BAA4B,CAAA;AAChG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CACrB;AAgGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,SAAS,mBAAmB,EAAE,EACvC,OAAO,GAAE,2BAAgC,GACvC,WAAW,CA0Gb"}
1
+ {"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/provider/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAwB,WAAW,EAAe,MAAM,4BAA4B,CAAA;AAChG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,mBAAmB;IACnC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,wFAAwF;IACxF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmDG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,aAAa,KAAK,IAAI,CAAA;CAC7C;AAgGD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,SAAS,mBAAmB,EAAE,EACvC,OAAO,GAAE,2BAAgC,GACvC,WAAW,CA+Hb"}
@@ -165,10 +165,22 @@ export function withProviderFallback(members, options = {}) {
165
165
  // A one-member chain is the identity. Returning the provider itself rather
166
166
  // than a wrapper that can never advance keeps the no-chain path byte-identical
167
167
  // to what it was before this file existed.
168
+ //
169
+ // `onSwap` is therefore never called on this path, and that is the correct
170
+ // reading rather than a hole: a listener starts at member 0 and a one-member
171
+ // chain never leaves it. Announcing member 0 here would say "the chain
172
+ // advanced" about a chain that cannot.
168
173
  if (members.length === 1)
169
174
  return first.provider;
170
175
  const log = options.log;
171
176
  let cursor = 0;
177
+ /**
178
+ * The last position {@link WithProviderFallbackOptions.onSwap} was told
179
+ * about. Lags `cursor` for exactly as long as the consumer has the notice
180
+ * chunk and has not come back for more — which is the window in which a
181
+ * selected member has not been asked anything. See that option's doc.
182
+ */
183
+ let announced = 0;
172
184
  async function* chatStream(params) {
173
185
  for (;;) {
174
186
  const member = members[cursor];
@@ -178,6 +190,14 @@ export function withProviderFallback(members, options = {}) {
178
190
  // the fix.
179
191
  if (!member)
180
192
  throw new Error(`provider chain has no member at position ${cursor}`);
193
+ if (announced !== cursor) {
194
+ announced = cursor;
195
+ options.onSwap?.({
196
+ index: cursor,
197
+ providerId: member.provider.id,
198
+ ...(member.model !== undefined ? { model: member.model } : {}),
199
+ });
200
+ }
181
201
  const request = member.model !== undefined ? { ...params, model: member.model } : params;
182
202
  let produced = false;
183
203
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/provider/fallback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/provider/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AA+FjF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,mBAAmB,GAAwB,IAAI,GAAG,CAAC;IACxD,yBAAyB;IACzB,iBAAiB;IACjB,gBAAgB;CAChB,CAAC,CAAA;AAEF;;;;;;;;;;;;;;;GAeG;AACH,SAAS,cAAc,CAAC,GAAY,EAAE,UAAkB;IACvD,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;IACzD,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IAC1C,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,aAAa,CAAC,KAAkB;IACxC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IAC3E,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,KAAK,CAAA;IAC5E,OAAO,OAAO,CACb,OAAO;QACN,SAAS,EAAE,MAAM;QACjB,WAAW;QACX,SAAS,KAAK,SAAS;QACvB,QAAQ,KAAK,SAAS,CACvB,CAAA;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,UAAU,oBAAoB,CACnC,OAAuC,EACvC,UAAuC,EAAE;IAEzC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IACxB,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;IAClE,CAAC;IACD,2EAA2E;IAC3E,+EAA+E;IAC/E,2CAA2C;IAC3C,EAAE;IACF,2EAA2E;IAC3E,6EAA6E;IAC7E,uEAAuE;IACvE,uCAAuC;IACvC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,QAAQ,CAAA;IAE/C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;IACvB,IAAI,MAAM,GAAG,CAAC,CAAA;IACd;;;;;OAKG;IACH,IAAI,SAAS,GAAG,CAAC,CAAA;IAEjB,KAAK,SAAS,CAAC,CAAC,UAAU,CAAC,MAA4B;QACtD,SAAS,CAAC;YACT,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;YAC9B,uEAAuE;YACvE,yEAAyE;YACzE,uEAAuE;YACvE,WAAW;YACX,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,MAAM,EAAE,CAAC,CAAA;YAElF,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBAC1B,SAAS,GAAG,MAAM,CAAA;gBAClB,OAAO,CAAC,MAAM,EAAE,CAAC;oBAChB,KAAK,EAAE,MAAM;oBACb,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;oBAC9B,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC9D,CAAC,CAAA;YACH,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAA;YACxF,IAAI,QAAQ,GAAG,KAAK,CAAA;YACpB,IAAI,CAAC;gBACJ,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/D,IAAI,aAAa,CAAC,KAAK,CAAC;wBAAE,QAAQ,GAAG,IAAI,CAAA;oBACzC,MAAM,KAAK,CAAA;gBACZ,CAAC;gBACD,OAAM;YACP,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,mEAAmE;gBACnE,oEAAoE;gBACpE,mEAAmE;gBACnE,iEAAiE;gBACjE,gEAAgE;gBAChE,+CAA+C;gBAC/C,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO;oBAAE,MAAM,GAAG,CAAA;gBAE1D,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,CAAA;gBACvB,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;gBACxB,IAAI,QAAQ,IAAI,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;oBACjE,GAAG,EAAE,IAAI,CAAC,kCAAkC,EAAE;wBAC7C,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;wBAC5B,QAAQ,EAAE,MAAM;wBAChB,MAAM,EAAE,QAAQ;4BACf,CAAC,CAAC,wEAAwE;4BAC1E,CAAC,CAAC,CAAC,EAAE;gCACJ,CAAC,CAAC,iBAAiB;gCACnB,CAAC,CAAC,+DAA+D;qBACnE,CAAC,CAAA;oBACF,MAAM,GAAG,CAAA;gBACV,CAAC;gBAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBACjE,MAAM,GAAG,IAAI,CAAA;gBACb,GAAG,EAAE,IAAI,CAAC,8BAA8B,EAAE;oBACzC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;oBACxB,YAAY,EAAE,MAAM,GAAG,CAAC;oBACxB,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE;oBAClB,UAAU,EAAE,MAAM;oBAClB,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,MAAM,EAAE,UAAU,CAAC,MAAM;iBACzB,CAAC,CAAA;gBAEF,sEAAsE;gBACtE,sEAAsE;gBACtE,qEAAqE;gBACrE,iDAAiD;gBACjD,MAAM;oBACL,EAAE,EAAE,EAAE;oBACN,KAAK,EAAE,EAAE;oBACT,QAAQ,EAAE;wBACT,SAAS,EAAE,MAAM,GAAG,CAAC;wBACrB,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,EAAE;wBAClC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClE,OAAO,EAAE,MAAM;wBACf,YAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE;wBAC5B,GAAG,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACxD,IAAI,EAAE,UAAU,CAAC,IAAI;wBACrB,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzE,MAAM,EAAE,UAAU,CAAC,OAAO;qBAC1B;iBACD,CAAA;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,qEAAqE;IACrE,4EAA4E;IAC5E,kEAAkE;IAClE,OAAO;QACN,IAAI,EAAE;YACL,OAAO,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAA;QACzB,CAAC;QACD,IAAI,IAAI;YACP,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAA;QAC3B,CAAC;QACD,IAAI,YAAY;YACf,OAAO,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAA;QACnC,CAAC;QACD,UAAU;QACV,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7E,CAAA;AACjB,CAAC"}
@@ -9,5 +9,5 @@ export { ProviderError, classifyProviderError, isAbortError, isProviderError, }
9
9
  export { DEFAULT_PROVIDER_RETRY, withProviderRetry } from './retry.js';
10
10
  export type { ProviderRetryConfig, WithProviderRetryOptions } from './retry.js';
11
11
  export { withProviderFallback } from './fallback.js';
12
- export type { ProviderChainMember, WithProviderFallbackOptions } from './fallback.js';
12
+ export type { ProviderChainMember, ServingMember, WithProviderFallbackOptions, } from './fallback.js';
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/provider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACnB,MAAM,aAAa,CAAA;AACpB,YAAY,EACX,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACxB,MAAM,aAAa,CAAA;AACpB,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,GAC3B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACpE,OAAO,EACN,gCAAgC,EAChC,2BAA2B,GAC3B,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EACN,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,eAAe,GACf,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACtE,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACpD,YAAY,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/provider/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACnB,MAAM,aAAa,CAAA;AACpB,YAAY,EACX,iBAAiB,EACjB,iBAAiB,EACjB,wBAAwB,GACxB,MAAM,aAAa,CAAA;AACpB,OAAO,EACN,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,GAC3B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACpE,OAAO,EACN,gCAAgC,EAChC,2BAA2B,GAC3B,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,EACN,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,eAAe,GACf,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AACtE,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACpD,YAAY,EACX,mBAAmB,EACnB,aAAa,EACb,2BAA2B,GAC3B,MAAM,eAAe,CAAA"}
@@ -11,6 +11,15 @@ export interface ProviderRetryConfig {
11
11
  * Cap on a server-directed `Retry-After`. A provider asking for 15
12
12
  * minutes should not silently park an interactive run for 15 minutes;
13
13
  * past this we surface the error and let the caller decide.
14
+ *
15
+ * "Surface" is the whole of it: there is no shorter retry underneath. A
16
+ * server that named a wait has said something specific, and answering it
17
+ * with a half-second backoff neither honours the wait nor tells anyone it
18
+ * was refused. The error carries `retryAfterMs`, so a host that wants to
19
+ * come back in fifteen minutes can — that decision is above this loop.
20
+ *
21
+ * Raise it to let the run sleep longer; a request under the ceiling is
22
+ * still slept exactly as instructed.
14
23
  */
15
24
  readonly maxRetryAfterMs: number;
16
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/provider/retry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAwB,WAAW,EAAe,MAAM,4BAA4B,CAAA;AAChG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAGhD,MAAM,WAAW,mBAAmB;IACnC,mEAAmE;IACnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,2CAA2C;IAC3C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,sBAAsB,EAAE,mBAKpC,CAAA;AAgCD,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC9C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,oCAAoC;IACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACtE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAChC,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,wBAA6B,GACpC,WAAW,CAkIb"}
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/provider/retry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAwB,WAAW,EAAe,MAAM,4BAA4B,CAAA;AAChG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAGhD,MAAM,WAAW,mBAAmB;IACnC,mEAAmE;IACnE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,2CAA2C;IAC3C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CAChC;AAED,eAAO,MAAM,sBAAsB,EAAE,mBAKpC,CAAA;AAgCD,MAAM,WAAW,wBAAwB;IACxC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAA;IAC9C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,oCAAoC;IACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAA;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACtE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAChC,QAAQ,EAAE,WAAW,EACrB,OAAO,GAAE,wBAA6B,GACpC,WAAW,CAwKb"}
@@ -119,9 +119,46 @@ export function withProviderRetry(provider, options = {}) {
119
119
  throw isProviderRequestError(err) ? err : classified;
120
120
  }
121
121
  const serverDirected = classified.retryAfterMs;
122
- const delay = serverDirected !== undefined && serverDirected <= config.maxRetryAfterMs
123
- ? serverDirected
124
- : backoffWithJitter(attempt, config, random);
122
+ // The server named a wait longer than the caller's ceiling, so the
123
+ // error goes to the caller — which is what `maxRetryAfterMs`
124
+ // documents and what it now does.
125
+ //
126
+ // It used to fall through to the jittered backoff instead, and that
127
+ // is degrading where the contract says refuse
128
+ // (`docs/conventions/refuse-do-not-degrade.md`). The ceiling was
129
+ // read as "how long may I sleep", so a provider asking for fifteen
130
+ // minutes was re-asked in half a second: the one instruction the
131
+ // server gave was the one thing discarded, and the retries that
132
+ // followed were sent to an endpoint that had already said it would
133
+ // not serve them. They cost the run its whole budget to rediscover
134
+ // a 429 it had been told about in advance.
135
+ //
136
+ // The caller loses nothing it had. This throws the SAME error the
137
+ // exhausted path throws, so the run settles exactly as it did
138
+ // before — only sooner, and with `retryAfterMs` intact for a host
139
+ // that wants to schedule against it. What it gains is the wait
140
+ // itself, which no backoff of ours can honour: fifteen minutes is
141
+ // not a number this loop is allowed to sleep for.
142
+ //
143
+ // With a chain declared it gains more than that. The error is a
144
+ // `rate_limit`, which is a fact about the MEMBER, so
145
+ // `withProviderFallback` moves to the next one — the run continues
146
+ // on another provider instead of spending its budget arguing with
147
+ // the first. Under the old behaviour the chain did not see the
148
+ // failure until those attempts were gone.
149
+ if (serverDirected !== undefined && serverDirected > config.maxRetryAfterMs) {
150
+ log?.warn('Provider call failed — server-directed wait exceeds the ceiling', {
151
+ provider: provider.id,
152
+ code: classified.code,
153
+ status: classified.status,
154
+ attempt: attempt + 1,
155
+ retryAfterMs: serverDirected,
156
+ maxRetryAfterMs: config.maxRetryAfterMs,
157
+ reason: 'surfacing rather than retrying — the caller decides how to wait',
158
+ });
159
+ throw isProviderRequestError(err) ? err : classified;
160
+ }
161
+ const delay = serverDirected ?? backoffWithJitter(attempt, config, random);
125
162
  log?.warn('Provider call failed — retrying', {
126
163
  provider: provider.id,
127
164
  code: classified.code,
@@ -1 +1 @@
1
- {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/provider/retry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/provider/retry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/index.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import { restoreWorkingState, snapshotWorkingState } from '../../compaction/wire
8
8
  import { TOOL_OUTPUT_DIR_NAME } from '../../constants/tools/index.js';
9
9
  import { EmergencySaveManager } from '../../manager/run/emergency.js';
10
10
  import { resolveProviderCapabilities } from '../../provider/capabilities.js';
11
- import { withProviderFallback } from '../../provider/fallback.js';
11
+ import { withProviderFallback, } from '../../provider/fallback.js';
12
12
  import { withProviderRetry } from '../../provider/retry.js';
13
13
  import { GENAI, NAMZU, agentRunSpanName, parentContext, serializeSpan, } from '../../telemetry/attributes.js';
14
14
  import { recordRunDuration } from '../../telemetry/metrics.js';
@@ -108,7 +108,26 @@ export async function* query(params) {
108
108
  const withRetry = (provider) => params.retry === false
109
109
  ? provider
110
110
  : withProviderRetry(provider, { config: params.retry, log: getRootLogger() });
111
- const resilientProvider = withProviderFallback(chain.map((member) => ({ ...member, provider: withRetry(member.provider) })), { log: getRootLogger() });
111
+ // Who is serving right now, for the run RECORD rather than for the request.
112
+ //
113
+ // It starts at the head and moves only when the chain does, which is the
114
+ // whole of the truth because the cursor never rewinds. The run cannot read
115
+ // this off `resilientProvider`: that wrapper reports the head's `id` on
116
+ // purpose, so asking it produces the declaration back — the defect this
117
+ // record exists to fix.
118
+ const serving = {
119
+ current: { index: 0, providerId: params.provider.id },
120
+ };
121
+ const resilientProvider = withProviderFallback(chain.map((member) => ({ ...member, provider: withRetry(member.provider) })), {
122
+ log: getRootLogger(),
123
+ onSwap: (to) => {
124
+ serving.current = to;
125
+ // `ctx` is declared below and is initialized before anything can
126
+ // call the provider: this fires from inside a `chatStream`, and
127
+ // the first one is issued by the loop that `ctx` is built for.
128
+ ctx.runMgr.setServingProvider(to.providerId);
129
+ },
130
+ });
112
131
  const ctx = RunContextFactory.build({
113
132
  agentId: params.agentId,
114
133
  agentName: params.agentName,
@@ -390,6 +409,7 @@ export async function* query(params) {
390
409
  : undefined;
391
410
  const iterationOrchestrator = new IterationOrchestrator({
392
411
  provider: resilientProvider,
412
+ servingMember: () => serving.current,
393
413
  runConfig: params.runConfig,
394
414
  ...(params.stopWhen ? { stopWhen: params.stopWhen } : {}),
395
415
  ...(params.prepareStep ? { prepareStep: params.prepareStep } : {}),