@pentoshi/clai 4.11.16 → 4.11.17

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 (212) hide show
  1. package/README.md +31 -22
  2. package/dist/agent/compaction/summary-execution.d.ts +1 -0
  3. package/dist/agent/compaction/summary-execution.js +25 -16
  4. package/dist/agent/compaction/summary-execution.js.map +1 -1
  5. package/dist/agent/context/compact-with-summary.js +18 -0
  6. package/dist/agent/context/compact-with-summary.js.map +1 -1
  7. package/dist/agent/context/compaction-source-prefix.d.ts +8 -0
  8. package/dist/agent/context/compaction-source-prefix.js +26 -0
  9. package/dist/agent/context/compaction-source-prefix.js.map +1 -0
  10. package/dist/agent/plan-decision.js +5 -1
  11. package/dist/agent/plan-decision.js.map +1 -1
  12. package/dist/agent/runner.js +3 -0
  13. package/dist/agent/runner.js.map +1 -1
  14. package/dist/agent/subagents/manager.d.ts +5 -0
  15. package/dist/agent/subagents/manager.js +52 -5
  16. package/dist/agent/subagents/manager.js.map +1 -1
  17. package/dist/agent/subagents/model-chain.d.ts +31 -0
  18. package/dist/agent/subagents/model-chain.js +146 -0
  19. package/dist/agent/subagents/model-chain.js.map +1 -0
  20. package/dist/agent/subagents/read-only-tools.js +362 -54
  21. package/dist/agent/subagents/read-only-tools.js.map +1 -1
  22. package/dist/agent/subagents/tools.js +21 -1
  23. package/dist/agent/subagents/tools.js.map +1 -1
  24. package/dist/agent/subagents/types.d.ts +5 -0
  25. package/dist/agent/subagents/worker.js +106 -45
  26. package/dist/agent/subagents/worker.js.map +1 -1
  27. package/dist/agent/turn/compaction-summarizer.d.ts +1 -0
  28. package/dist/agent/turn/compaction-summarizer.js +2 -0
  29. package/dist/agent/turn/compaction-summarizer.js.map +1 -1
  30. package/dist/agent/turn/loop/run-rounds.js +2 -0
  31. package/dist/agent/turn/loop/run-rounds.js.map +1 -1
  32. package/dist/agent/turn/loop/stream-request.js +1 -0
  33. package/dist/agent/turn/loop/stream-request.js.map +1 -1
  34. package/dist/agent/turn/setup/compaction-services.d.ts +2 -1
  35. package/dist/agent/turn/setup/compaction-services.js +14 -0
  36. package/dist/agent/turn/setup/compaction-services.js.map +1 -1
  37. package/dist/agent/turn/setup/turn-budget.js +1 -9
  38. package/dist/agent/turn/setup/turn-budget.js.map +1 -1
  39. package/dist/agent/turn/subagent-inbox.d.ts +1 -0
  40. package/dist/agent/turn/subagent-inbox.js +12 -1
  41. package/dist/agent/turn/subagent-inbox.js.map +1 -1
  42. package/dist/app/commands/catalog.js +2 -1
  43. package/dist/app/commands/catalog.js.map +1 -1
  44. package/dist/app/controllers/session-compact-helper.d.ts +2 -0
  45. package/dist/app/controllers/session-compact-helper.js +7 -3
  46. package/dist/app/controllers/session-compact-helper.js.map +1 -1
  47. package/dist/app/controllers/session-context-usage.d.ts +2 -5
  48. package/dist/app/controllers/session-context-usage.js +28 -101
  49. package/dist/app/controllers/session-context-usage.js.map +1 -1
  50. package/dist/app/controllers/session-controller.d.ts +8 -1
  51. package/dist/app/controllers/session-controller.js +14 -11
  52. package/dist/app/controllers/session-controller.js.map +1 -1
  53. package/dist/app/controllers/session-subagents.d.ts +1 -0
  54. package/dist/app/controllers/session-subagents.js +7 -1
  55. package/dist/app/controllers/session-subagents.js.map +1 -1
  56. package/dist/classic/app/ClassicApp.js +4 -0
  57. package/dist/classic/app/ClassicApp.js.map +1 -1
  58. package/dist/classic/chrome/Chrome.d.ts +1 -1
  59. package/dist/classic/chrome/Chrome.js +1 -0
  60. package/dist/classic/chrome/Chrome.js.map +1 -1
  61. package/dist/classic/chrome/SubagentsStrip.d.ts +3 -0
  62. package/dist/classic/chrome/SubagentsStrip.js +9 -0
  63. package/dist/classic/chrome/SubagentsStrip.js.map +1 -0
  64. package/dist/classic/chrome/row-budget.d.ts +2 -0
  65. package/dist/classic/chrome/row-budget.js +4 -1
  66. package/dist/classic/chrome/row-budget.js.map +1 -1
  67. package/dist/classic/chrome/subagents-row.d.ts +9 -0
  68. package/dist/classic/chrome/subagents-row.js +13 -0
  69. package/dist/classic/chrome/subagents-row.js.map +1 -0
  70. package/dist/classic/panels/keys-panel.d.ts +2 -2
  71. package/dist/classic/panels/keys-panel.js +24 -8
  72. package/dist/classic/panels/keys-panel.js.map +1 -1
  73. package/dist/classic/panels/pager-panel.d.ts +2 -2
  74. package/dist/classic/panels/pager-panel.js +7 -6
  75. package/dist/classic/panels/pager-panel.js.map +1 -1
  76. package/dist/classic/panels/panel-host.js +7 -2
  77. package/dist/classic/panels/panel-host.js.map +1 -1
  78. package/dist/llm/bynara.js +9 -20
  79. package/dist/llm/bynara.js.map +1 -1
  80. package/dist/llm/capabilities.d.ts +5 -1
  81. package/dist/llm/capabilities.js +129 -6
  82. package/dist/llm/capabilities.js.map +1 -1
  83. package/dist/llm/learned-capabilities.js +9 -3
  84. package/dist/llm/learned-capabilities.js.map +1 -1
  85. package/dist/llm/lowest-reasoning.js +20 -7
  86. package/dist/llm/lowest-reasoning.js.map +1 -1
  87. package/dist/llm/modal.js +5 -0
  88. package/dist/llm/modal.js.map +1 -1
  89. package/dist/llm/provider-info-text.js +3 -3
  90. package/dist/llm/reasoning-errors.js +1 -1
  91. package/dist/llm/reasoning-errors.js.map +1 -1
  92. package/dist/llm/request-purpose.d.ts +3 -0
  93. package/dist/llm/request-purpose.js +11 -0
  94. package/dist/llm/request-purpose.js.map +1 -0
  95. package/dist/llm/routing/attempt-complete.js +12 -2
  96. package/dist/llm/routing/attempt-complete.js.map +1 -1
  97. package/dist/llm/routing/attempt-request.d.ts +11 -0
  98. package/dist/llm/routing/attempt-request.js +51 -2
  99. package/dist/llm/routing/attempt-request.js.map +1 -1
  100. package/dist/llm/routing/attempt-stream.js +12 -2
  101. package/dist/llm/routing/attempt-stream.js.map +1 -1
  102. package/dist/llm/routing/error-classification.d.ts +2 -0
  103. package/dist/llm/routing/error-classification.js +26 -6
  104. package/dist/llm/routing/error-classification.js.map +1 -1
  105. package/dist/llm/routing/key-rotation.js +26 -11
  106. package/dist/llm/routing/key-rotation.js.map +1 -1
  107. package/dist/llm/session-affinity.d.ts +1 -0
  108. package/dist/llm/session-affinity.js +4 -0
  109. package/dist/llm/session-affinity.js.map +1 -1
  110. package/dist/llm/session-route.d.ts +7 -0
  111. package/dist/llm/session-route.js +16 -0
  112. package/dist/llm/session-route.js.map +1 -0
  113. package/dist/llm/wire/capability-errors.js +4 -4
  114. package/dist/llm/wire/capability-errors.js.map +1 -1
  115. package/dist/llm/wire/chat-body.js +5 -4
  116. package/dist/llm/wire/chat-body.js.map +1 -1
  117. package/dist/llm/wire/effort-preflight.d.ts +15 -0
  118. package/dist/llm/wire/effort-preflight.js +141 -0
  119. package/dist/llm/wire/effort-preflight.js.map +1 -0
  120. package/dist/llm/wire/openai-complete.d.ts +3 -1
  121. package/dist/llm/wire/openai-complete.js +7 -2
  122. package/dist/llm/wire/openai-complete.js.map +1 -1
  123. package/dist/llm/wire/openai-stream.d.ts +4 -2
  124. package/dist/llm/wire/openai-stream.js +14 -8
  125. package/dist/llm/wire/openai-stream.js.map +1 -1
  126. package/dist/llm/wire/responses-first.d.ts +3 -1
  127. package/dist/llm/wire/responses-first.js +8 -7
  128. package/dist/llm/wire/responses-first.js.map +1 -1
  129. package/dist/llm/wire/responses-preflight.js +29 -12
  130. package/dist/llm/wire/responses-preflight.js.map +1 -1
  131. package/dist/prompts/embedded.js +1 -1
  132. package/dist/prompts/embedded.js.map +1 -1
  133. package/dist/prompts/index.js +42 -21
  134. package/dist/prompts/index.js.map +1 -1
  135. package/dist/prompts/system.agent.md +3 -3
  136. package/dist/store/config/endpoints.d.ts +11 -0
  137. package/dist/store/config/endpoints.js +19 -1
  138. package/dist/store/config/endpoints.js.map +1 -1
  139. package/dist/store/config/subagent-models.d.ts +7 -0
  140. package/dist/store/config/subagent-models.js +73 -0
  141. package/dist/store/config/subagent-models.js.map +1 -0
  142. package/dist/store/config.d.ts +4 -3
  143. package/dist/store/config.js +3 -2
  144. package/dist/store/config.js.map +1 -1
  145. package/dist/store/subagents.js +8 -1
  146. package/dist/store/subagents.js.map +1 -1
  147. package/dist/tools/definitions/subagents.d.ts +1 -1
  148. package/dist/tools/definitions/subagents.js +15 -6
  149. package/dist/tools/definitions/subagents.js.map +1 -1
  150. package/dist/tui-v2/app/App.js +4 -0
  151. package/dist/tui-v2/app/App.js.map +1 -1
  152. package/dist/tui-v2/bootstrap/patch-opentui-text.js +14 -13
  153. package/dist/tui-v2/bootstrap/patch-opentui-text.js.map +1 -1
  154. package/dist/tui-v2/components/jobs/subagents-panel.d.ts +11 -0
  155. package/dist/tui-v2/components/jobs/subagents-panel.js +80 -0
  156. package/dist/tui-v2/components/jobs/subagents-panel.js.map +1 -0
  157. package/dist/tui-v2/components/modal/keys-modal-pick.d.ts +9 -0
  158. package/dist/tui-v2/components/modal/keys-modal-pick.js +15 -0
  159. package/dist/tui-v2/components/modal/keys-modal-pick.js.map +1 -0
  160. package/dist/tui-v2/components/modal/keys-modal.js +46 -12
  161. package/dist/tui-v2/components/modal/keys-modal.js.map +1 -1
  162. package/dist/tui-v2/components/pager/pager-line.js +3 -2
  163. package/dist/tui-v2/components/pager/pager-line.js.map +1 -1
  164. package/dist/tui-v2/components/pager/pager.js +47 -35
  165. package/dist/tui-v2/components/pager/pager.js.map +1 -1
  166. package/dist/tui-v2/components/transcript/thinking-block.js +1 -3
  167. package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
  168. package/dist/tui-v2/components/transcript/thinking-presentation.d.ts +0 -1
  169. package/dist/tui-v2/components/transcript/thinking-presentation.js +1 -3
  170. package/dist/tui-v2/components/transcript/thinking-presentation.js.map +1 -1
  171. package/dist/tui-v2/rendering/pager-markdown.d.ts +2 -0
  172. package/dist/tui-v2/rendering/pager-markdown.js +10 -6
  173. package/dist/tui-v2/rendering/pager-markdown.js.map +1 -1
  174. package/dist/tui-v2/rendering/subagent-ansi.d.ts +4 -0
  175. package/dist/tui-v2/rendering/subagent-ansi.js +10 -0
  176. package/dist/tui-v2/rendering/subagent-ansi.js.map +1 -0
  177. package/dist/types.d.ts +1 -0
  178. package/dist/ui-core/commands/picker-commands.d.ts +12 -0
  179. package/dist/ui-core/commands/picker-commands.js +2 -2
  180. package/dist/ui-core/commands/picker-commands.js.map +1 -1
  181. package/dist/ui-core/commands/session-commands.js +5 -3
  182. package/dist/ui-core/commands/session-commands.js.map +1 -1
  183. package/dist/ui-core/commands/subagent-commands.d.ts +8 -0
  184. package/dist/ui-core/commands/subagent-commands.js +81 -21
  185. package/dist/ui-core/commands/subagent-commands.js.map +1 -1
  186. package/dist/ui-core/commands/subagent-models-editor.d.ts +2 -0
  187. package/dist/ui-core/commands/subagent-models-editor.js +123 -0
  188. package/dist/ui-core/commands/subagent-models-editor.js.map +1 -0
  189. package/dist/ui-core/controllers/overlay-controller.d.ts +10 -0
  190. package/dist/ui-core/controllers/overlay-controller.js.map +1 -1
  191. package/dist/ui-core/rendering/format-usage.js +5 -0
  192. package/dist/ui-core/rendering/format-usage.js.map +1 -1
  193. package/dist/ui-core/rendering/markdown.d.ts +2 -0
  194. package/dist/ui-core/rendering/markdown.js +1 -1
  195. package/dist/ui-core/rendering/markdown.js.map +1 -1
  196. package/dist/ui-core/rendering/sanitize-display.d.ts +3 -0
  197. package/dist/ui-core/rendering/sanitize-display.js +33 -2
  198. package/dist/ui-core/rendering/sanitize-display.js.map +1 -1
  199. package/dist/ui-core/rendering/status-segments.js +3 -1
  200. package/dist/ui-core/rendering/status-segments.js.map +1 -1
  201. package/dist/ui-core/rendering/subagent-presentation.d.ts +2 -0
  202. package/dist/ui-core/rendering/subagent-presentation.js +9 -0
  203. package/dist/ui-core/rendering/subagent-presentation.js.map +1 -1
  204. package/dist/ui-core/rendering/subagent-source.d.ts +2 -0
  205. package/dist/ui-core/rendering/subagent-source.js +10 -1
  206. package/dist/ui-core/rendering/subagent-source.js.map +1 -1
  207. package/dist/version.generated.d.ts +2 -2
  208. package/dist/version.generated.js +2 -2
  209. package/package.json +1 -1
  210. package/dist/llm/effort-fallback.d.ts +0 -6
  211. package/dist/llm/effort-fallback.js +0 -67
  212. package/dist/llm/effort-fallback.js.map +0 -1
package/dist/llm/modal.js CHANGED
@@ -1,6 +1,8 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { defaultModels, normalizeEndpointUrl, } from "./provider.js";
3
3
  import { singleLeadingSystemMessages } from "./system-messages.js";
4
+ import { currentSessionAffinity } from "./session-affinity.js";
5
+ import { sessionCacheAffinityKey } from "./cache-affinity.js";
4
6
  import { ProviderError, openAiCompatibleComplete, openAiCompatiblePing, openAiCompatibleStream, toCompletionResult, streamIdleBudgets, readJson, ingestOpenAiModelCatalog, } from "./http.js";
5
7
  /**
6
8
  * Modal Endpoints (https://modal.com/docs/guide/endpoints) serve the OpenAI
@@ -49,6 +51,9 @@ export function parseModalToken(raw) {
49
51
  let generatedSessionId;
50
52
  export function modalSessionId() {
51
53
  const configured = process.env.MODAL_SESSION_ID?.trim();
54
+ const affinity = currentSessionAffinity();
55
+ if (affinity)
56
+ return sessionCacheAffinityKey(configured ? `${configured}\0${affinity}` : affinity);
52
57
  if (configured)
53
58
  return configured;
54
59
  generatedSessionId ??= `clai-${randomUUID()}`;
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../src/llm/modal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../src/llm/modal.ts"],"names":[],"mappings":"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"}
@@ -269,9 +269,9 @@ ENVIRONMENT VARIABLES (used only when nothing is stored)
269
269
  ("/v1" is appended if missing)
270
270
  MODAL_PROXY_TOKEN_ID wk-... both halves needed, or it is ignored
271
271
  MODAL_PROXY_TOKEN_SECRET ws-...
272
- MODAL_SESSION_ID optional sticky-session id. When unset, clai
273
- generates one per run so a whole conversation
274
- lands on the same warm container.
272
+ MODAL_SESSION_ID optional sticky-session seed. Each conversation,
273
+ subagent and auxiliary stream keeps its own ID.
274
+ Standalone requests use this ID directly.
275
275
 
276
276
  GOOD TO KNOW
277
277
  - Cold start: the first request after idle pays container start-up, which
@@ -28,7 +28,7 @@ export function isInvalidReasoningContentError(error) {
28
28
  return INVALID_REASONING_CONTENT_RE.test(errorHaystack(error));
29
29
  }
30
30
  export function mentionsReasoning(error) {
31
- return /chat_template_kwargs|enable_thinking|clear_thinking|reasoning_effort|reasoning_budget|reasoning[_ ]?(?:content|text)|\breasoning\b|\bthinking\b/i.test(errorHaystack(error));
31
+ return /chat_template_kwargs|enable_thinking|clear_thinking|reasoning_effort|reasoning_budget|reasoning[_ ]?(?:content|text)|思考|推理|\breasoning\b|\bthinking\b/i.test(errorHaystack(error));
32
32
  }
33
33
  export function isUnattributableRequestBodyError(error) {
34
34
  const status = errorStatus(error);
@@ -1 +1 @@
1
- {"version":3,"file":"reasoning-errors.js","sourceRoot":"","sources":["../../src/llm/reasoning-errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reasoning-errors.js","sourceRoot":"","sources":["../../src/llm/reasoning-errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CompletionRequestPurpose } from "../types.js";
2
+ export declare function withRequestPurpose<T>(purpose: CompletionRequestPurpose | undefined, run: () => T): T;
3
+ export declare function currentRequestPurpose(): CompletionRequestPurpose | undefined;
@@ -0,0 +1,11 @@
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ const requestPurposeStorage = new AsyncLocalStorage();
3
+ export function withRequestPurpose(purpose, run) {
4
+ if (!purpose)
5
+ return run();
6
+ return requestPurposeStorage.run(purpose, run);
7
+ }
8
+ export function currentRequestPurpose() {
9
+ return requestPurposeStorage.getStore();
10
+ }
11
+ //# sourceMappingURL=request-purpose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-purpose.js","sourceRoot":"","sources":["../../src/llm/request-purpose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD,MAAM,qBAAqB,GAAG,IAAI,iBAAiB,EAA4B,CAAC;AAEhF,MAAM,UAAU,kBAAkB,CAChC,OAA6C,EAC7C,GAAY;IAEZ,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,EAAE,CAAC;IAC3B,OAAO,qBAAqB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,qBAAqB,CAAC,QAAQ,EAAE,CAAC;AAC1C,CAAC"}
@@ -1,9 +1,9 @@
1
- import { learnModelVisionCapability, learnRejectedEffort, markReasoningMandatory, markReasoningUnsupported, registerWireRejectionEfforts, } from "../capabilities.js";
1
+ import { learnModelVisionCapability, learnRejectedEffort, markReasoningMandatory, markReasoningUnsupported, registerWireRejectionEfforts, settleRouteEfforts, } from "../capabilities.js";
2
2
  import { isImageInputUnsupportedError, reasoningRejectionAdvice, isReasoningUnsupportedError, } from "../http.js";
3
3
  import { withRequestOptionFallback } from "./request-option-fallback.js";
4
4
  import { isMissingReasoningContentError, isUnattributableRequestBodyError, } from "../reasoning-errors.js";
5
5
  import { isToolsUnsupportedError, markTextOnlyModel, } from "../tool-protocol.js";
6
- import { hasImageInput, reasoningWireKey, requestForRoute, revertVisionSubstitution, runRecordedProviderAttempt, withoutImages, withoutReasoning, } from "./attempt-request.js";
6
+ import { hasImageInput, preflightEffort, reasoningWireKey, requestForRoute, revertVisionSubstitution, runRecordedProviderAttempt, withoutImages, withoutReasoning, } from "./attempt-request.js";
7
7
  import { effortCandidatesFor, isReasoningRelatedServerError, shouldContinueEffortLadder, shouldEnterEffortLadder, } from "./error-classification.js";
8
8
  export async function tryCompleteOnce(provider, providerId, request, model, auth, reason, onStatus, singleDispatch = false) {
9
9
  const activeRequest = {
@@ -24,6 +24,15 @@ export async function tryCompleteOnce(provider, providerId, request, model, auth
24
24
  };
25
25
  const runAttempt = (candidate, attemptReason) => withRequestOptionFallback(candidate, attemptReason, dispatchAttempt, () => !singleDispatch, onStatus);
26
26
  const initialReasoningWireKey = reasoningWireKey(activeRequest.thinking, provider.reasoningStyle ?? "none", model, providerId);
27
+ await preflightEffort({
28
+ provider,
29
+ providerId,
30
+ model,
31
+ request: activeRequest,
32
+ auth,
33
+ singleDispatch,
34
+ onStatus,
35
+ });
27
36
  try {
28
37
  const result = await runAttempt(activeRequest, reason);
29
38
  if (hasImageInput(activeRequest)) {
@@ -100,6 +109,7 @@ export async function tryCompleteOnce(provider, providerId, request, model, auth
100
109
  };
101
110
  try {
102
111
  const result = await runAttempt(retryRequest, "adaptation");
112
+ settleRouteEfforts(providerId, model, thinking.effort, effort);
103
113
  for (const rejected of rejectedEfforts) {
104
114
  learnRejectedEffort(providerId, model, rejected);
105
115
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attempt-complete.js","sourceRoot":"","sources":["../../../src/llm/routing/attempt-complete.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attempt-complete.js","sourceRoot":"","sources":["../../../src/llm/routing/attempt-complete.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { CompletionRequest, CompletionResult, GenerationAttemptReason, ProviderId, SuccessfulRequestSnapshot } from "../../types.js";
2
2
  import type { ReasoningStyle } from "../http.js";
3
+ import type { LlmProvider, ProviderAuth } from "../provider.js";
3
4
  export declare function successfulRequestSnapshot(provider: ProviderId, model: string, request: CompletionRequest): SuccessfulRequestSnapshot;
4
5
  export declare function preservedFailure(recoveryError: unknown, originalError: unknown): unknown;
5
6
  export declare function withoutReasoning(request: CompletionRequest): CompletionRequest;
@@ -12,6 +13,16 @@ export declare function runRecordedProviderAttempt(input: {
12
13
  request: CompletionRequest;
13
14
  run: () => Promise<CompletionResult>;
14
15
  }): Promise<CompletionResult>;
16
+ export interface EffortPreflightInput {
17
+ provider: LlmProvider;
18
+ providerId: ProviderId;
19
+ model: string;
20
+ request: CompletionRequest;
21
+ auth: ProviderAuth;
22
+ singleDispatch: boolean;
23
+ onStatus: ((message: string) => void) | undefined;
24
+ }
25
+ export declare function preflightEffort(input: EffortPreflightInput): Promise<void>;
15
26
  export declare function requestForRoute(request: CompletionRequest, provider: ProviderId, model: string): CompletionRequest;
16
27
  export declare function hasImageInput(request: CompletionRequest): boolean;
17
28
  export declare function withoutImages(request: CompletionRequest): CompletionRequest;
@@ -4,8 +4,9 @@ import { buildReasoningPayload, stripImagesFromMessages } from "../http.js";
4
4
  import { isBuiltInProviderId } from "../provider-profile.js";
5
5
  import { resolveBuiltInProfile } from "../provider-profiles.js";
6
6
  import { isOperationPolicyError } from "../operation-ledger.js";
7
- import { runGenerationAttempt } from "../operation-usage.js";
8
- import { isModelNotFoundError } from "./error-classification.js";
7
+ import { runGenerationAttempt, withUnrecordedTransport } from "../operation-usage.js";
8
+ import { needsEffortPreflight, runEffortPreflight, PREFLIGHT_MAX_TOKENS, PREFLIGHT_MESSAGES, } from "../wire/effort-preflight.js";
9
+ import { isModelNotFoundError, shouldContinueEffortLadder } from "./error-classification.js";
9
10
  export function successfulRequestSnapshot(provider, model, request) {
10
11
  return structuredClone({
11
12
  provider,
@@ -15,6 +16,9 @@ export function successfulRequestSnapshot(provider, model, request) {
15
16
  ? { temperature: request.temperature }
16
17
  : {}),
17
18
  ...(request.thinking ? { thinking: request.thinking } : {}),
19
+ ...(request.forceReasoningReplay !== undefined
20
+ ? { forceReasoningReplay: request.forceReasoningReplay }
21
+ : {}),
18
22
  ...(request.tools ? { tools: request.tools } : {}),
19
23
  ...(request.toolChoice !== undefined
20
24
  ? { toolChoice: request.toolChoice }
@@ -54,6 +58,51 @@ export async function runRecordedProviderAttempt(input) {
54
58
  reason: input.reason,
55
59
  }, input.run);
56
60
  }
61
+ function probeRequestFor(request, effort) {
62
+ return {
63
+ ...request,
64
+ messages: [...PREFLIGHT_MESSAGES],
65
+ maxTokens: PREFLIGHT_MAX_TOKENS,
66
+ tools: undefined,
67
+ toolChoice: undefined,
68
+ parallelToolCalls: undefined,
69
+ attemptUsage: undefined,
70
+ onToolCallDelta: undefined,
71
+ onStreamEvent: undefined,
72
+ onReasoningArtifactReplayDecision: undefined,
73
+ thinking: { enabled: effort !== "none", effort },
74
+ };
75
+ }
76
+ async function probeEffort(input, effort) {
77
+ const probe = probeRequestFor(input.request, effort);
78
+ try {
79
+ await withUnrecordedTransport(() => input.provider.complete(probe, input.auth), PREFLIGHT_MAX_TOKENS);
80
+ return "accepted";
81
+ }
82
+ catch (error) {
83
+ return shouldContinueEffortLadder(error) ? "unsupported" : "abort";
84
+ }
85
+ }
86
+ export async function preflightEffort(input) {
87
+ if (input.singleDispatch)
88
+ return;
89
+ const thinking = input.request.thinking;
90
+ if (!thinking)
91
+ return;
92
+ if (!thinking.enabled && thinking.effort !== "none")
93
+ return;
94
+ const route = {
95
+ providerId: input.providerId,
96
+ model: input.model,
97
+ endpoint: input.auth.baseUrl,
98
+ requested: thinking.effort,
99
+ purpose: input.request.purpose,
100
+ };
101
+ if (!needsEffortPreflight(route))
102
+ return;
103
+ input.onStatus?.(`i ${input.providerId}/${input.model} checking which reasoning efforts it accepts`);
104
+ await runEffortPreflight(route, (effort) => probeEffort(input, effort));
105
+ }
57
106
  export function requestForRoute(request, provider, model) {
58
107
  if (modelSupportsVision(provider, model))
59
108
  return request;
@@ -1 +1 @@
1
- {"version":3,"file":"attempt-request.js","sourceRoot":"","sources":["../../../src/llm/routing/attempt-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attempt-request.js","sourceRoot":"","sources":["../../../src/llm/routing/attempt-request.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { learnModelVisionCapability, learnRejectedEffort, markReasoningMandatory, markReasoningUnsupported, registerWireRejectionEfforts, } from "../capabilities.js";
1
+ import { learnModelVisionCapability, learnRejectedEffort, markReasoningMandatory, markReasoningUnsupported, registerWireRejectionEfforts, settleRouteEfforts, } from "../capabilities.js";
2
2
  import { isImageInputUnsupportedError, reasoningRejectionAdvice, isReasoningUnsupportedError, } from "../http.js";
3
3
  import { withRequestOptionFallback } from "./request-option-fallback.js";
4
4
  import { isMissingReasoningContentError, isUnattributableRequestBodyError, } from "../reasoning-errors.js";
5
5
  import { createStreamEventGuard } from "../stream-events.js";
6
6
  import { markStreamEmittedBytes } from "../stream-progress.js";
7
7
  import { isToolsUnsupportedError, markTextOnlyModel, } from "../tool-protocol.js";
8
- import { hasImageInput, preservedFailure, reasoningWireKey, requestForRoute, revertVisionSubstitution, runRecordedProviderAttempt, successfulRequestSnapshot, withoutImages, withoutReasoning, } from "./attempt-request.js";
8
+ import { hasImageInput, preflightEffort, preservedFailure, reasoningWireKey, requestForRoute, revertVisionSubstitution, runRecordedProviderAttempt, successfulRequestSnapshot, withoutImages, withoutReasoning, } from "./attempt-request.js";
9
9
  import { effortCandidatesFor, isReasoningRelatedServerError, shouldContinueEffortLadder, shouldEnterEffortLadder, } from "./error-classification.js";
10
10
  export async function tryStreamOnce(provider, providerId, request, model, auth, onToken, onStatus, reason, singleDispatch = false, onSuccessfulRequest) {
11
11
  let emittedBytes = 0;
@@ -119,6 +119,15 @@ export async function tryStreamOnce(provider, providerId, request, model, auth,
119
119
  };
120
120
  const runAttempt = (candidate, attemptReason) => withRequestOptionFallback(candidate, attemptReason, dispatchAttempt, () => !singleDispatch && emittedBytes === 0, onStatus);
121
121
  const initialReasoningWireKey = reasoningWireKey(activeRequest.thinking, provider.reasoningStyle ?? "none", model, providerId);
122
+ await preflightEffort({
123
+ provider,
124
+ providerId,
125
+ model,
126
+ request: activeRequest,
127
+ auth,
128
+ singleDispatch,
129
+ onStatus,
130
+ });
122
131
  try {
123
132
  const result = await runAttempt(activeRequest, reason);
124
133
  learnVisionOnSuccess();
@@ -212,6 +221,7 @@ export async function tryStreamOnce(provider, providerId, request, model, auth,
212
221
  };
213
222
  try {
214
223
  const result = await runAttempt(retryRequest, "adaptation");
224
+ settleRouteEfforts(providerId, model, thinking.effort, effort);
215
225
  for (const rejected of rejectedEfforts) {
216
226
  learnRejectedEffort(providerId, model, rejected);
217
227
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attempt-stream.js","sourceRoot":"","sources":["../../../src/llm/routing/attempt-stream.ts"],"names":[],"mappings":"AAQA,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,GACjC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EACL,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,aAAa,EACb,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mBAAmB,EACnB,6BAA6B,EAC7B,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAqB,EACrB,UAAsB,EACtB,OAA0B,EAC1B,KAAa,EACb,IAAkB,EAClB,OAAgC,EAChC,QAAiD,EACjD,MAA+B,EAC/B,cAAc,GAAG,KAAK,EACtB,mBAC6D;IAE7D,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,wBAAwB,GAAG,CAAC,CAAC;IACjC,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAChD,MAAM,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IAC/C,IAAI,KAAK,GAAG,sBAAsB,EAAE,CAAC;IACrC,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAC;IACjD,MAAM,SAAS,GAAG,CAAC,KAA0B,EAAQ,EAAE;QACrD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAC1E,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;QACpC,CAAC;QACD,gBAAgB,EAAE,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC;IACF,MAAM,aAAa,GAAG;QACpB,GAAG,eAAe,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC;QAC9C,QAAQ,EAAE,UAAU;QACpB,KAAK;QACL,GAAG,CAAC,eAAe,IAAI,gBAAgB;YACrC,CAAC,CAAC;gBACE,eAAe,EAAE,CAAC,KAA0B,EAAQ,EAAE;oBACpD,MAAM,aAAa,GAAG,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC;oBAChD,YAAY,IAAI,IAAI,CAAC,GAAG,CACtB,KAAK,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC,EACvB,aAAa,GAAG,wBAAwB,EACxC,CAAC,CACF,CAAC;oBACF,wBAAwB,GAAG,IAAI,CAAC,GAAG,CACjC,wBAAwB,EACxB,aAAa,CACd,CAAC;oBACF,IACE,KAAK,CAAC,IAAI,KAAK,SAAS;wBACxB,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EACxC,CAAC;wBACD,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACxC,SAAS,CAAC;4BACR,IAAI,EAAE,mBAAmB;4BACzB,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACrC,IAAI,EAAE,KAAK,CAAC,IAAI;yBACjB,CAAC,CAAC;oBACL,CAAC;oBACD,SAAS,CAAC;wBACR,IAAI,EAAE,sBAAsB;wBAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrC,cAAc,EAAE,aAAa;qBAC9B,CAAC,CAAC;oBACH,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,KAAa,EAAQ,EAAE;QACnC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC;QAC7B,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,oBAAoB,GAAG,GAAS,EAAE;QACtC,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,0BAA0B,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC;IACF,MAAM,eAAe,GAAG,KAAK,EAC3B,SAA4B,EAC5B,aAAsC,EACX,EAAE;QAC7B,KAAK,GAAG,sBAAsB,EAAE,CAAC;QACjC,sBAAsB,CAAC,KAAK,EAAE,CAAC;QAC/B,MAAM,cAAc,GAAG,EAAE,GAAG,SAAS,EAAE,aAAa,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,MAAM,0BAA0B,CAAC;YAC9C,UAAU;YACV,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,KAAK;YACpC,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,cAAc;YACvB,GAAG,EAAE,KAAK,IAAI,EAAE;gBACd,IAAI,MAAwB,CAAC;gBAC7B,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACpB,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC7D,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;oBACvD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;gBACD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC/D,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;wBACvC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAClC,SAAS,CAAC;4BACR,IAAI,EAAE,mBAAmB;4BACzB,KAAK;4BACL,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;4BACnC,IAAI,EAAE,IAAI,CAAC,IAAI;yBAChB,CAAC,CAAC;oBACL,CAAC;oBACD,SAAS,CAAC;wBACR,IAAI,EAAE,qBAAqB;wBAC3B,KAAK;wBACL,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnC,IAAI,EAAE,IAAI,CAAC,IAAI;qBAChB,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,SAAS,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC7D,CAAC;gBACD,SAAS,CAAC;oBACR,IAAI,EAAE,mBAAmB;oBACzB,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACtE,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC,CAAC;QACH,IAAI,CAAC;YACH,mBAAmB,EAAE,CACnB,yBAAyB,CACvB,MAAM,CAAC,QAAQ,IAAI,UAAU,EAC7B,MAAM,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,IAAI,KAAK,EAC7C,cAAc,CACf,CACF,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CACjB,SAA4B,EAC5B,aAAsC,EACX,EAAE,CAC7B,yBAAyB,CACvB,SAAS,EACT,aAAa,EACb,eAAe,EACf,GAAG,EAAE,CAAC,CAAC,cAAc,IAAI,YAAY,KAAK,CAAC,EAC3C,QAAQ,CACT,CAAC;IACJ,MAAM,uBAAuB,GAAG,gBAAgB,CAC9C,aAAa,CAAC,QAAQ,EACtB,QAAQ,CAAC,cAAc,IAAI,MAAM,EACjC,KAAK,EACL,UAAU,CACX,CAAC;IACF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACvD,oBAAoB,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IACE,YAAY,KAAK,CAAC;YAClB,aAAa,CAAC,aAAa,CAAC;YAC5B,4BAA4B,CAAC,KAAK,CAAC,EACnC,CAAC;YACD,0BAA0B,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YACrD,IAAI,cAAc;gBAAE,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACtE,QAAQ,EAAE,CACR,KAAK,UAAU,IAAI,KAAK,iGAAiG,CAC1H,CAAC;YACF,MAAM,eAAe,GAAG,eAAe,CACrC,aAAa,CAAC,aAAa,CAAC,EAC5B,UAAU,EACV,KAAK,CACN,CAAC;YACF,IAAI,CAAC;gBACH,OAAO,MAAM,UAAU,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;YACzD,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IACE,YAAY,KAAK,CAAC;YAClB,aAAa,CAAC,KAAK,EAAE,MAAM;YAC3B,uBAAuB,CAAC,KAAK,CAAC,EAC9B,CAAC;YACD,iBAAiB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,cAAc;gBAAE,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACtE,QAAQ,EAAE,CACR,KAAK,UAAU,IAAI,KAAK,gEAAgE,CACzF,CAAC;YACF,MAAM,WAAW,GAAG;gBAClB,GAAG,aAAa;gBAChB,KAAK,EAAE,SAAS;gBAChB,UAAU,EAAE,SAAS;gBACrB,iBAAiB,EAAE,SAAS;aAC7B,CAAC;YACF,IAAI,CAAC;gBACH,OAAO,MAAM,UAAU,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACrD,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IACE,YAAY,KAAK,CAAC;YAClB,8BAA8B,CAAC,KAAK,CAAC;YACrC,CAAC,aAAa,CAAC,oBAAoB,EACnC,CAAC;YACD,IAAI,cAAc;gBAAE,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACtE,QAAQ,EAAE,CACR,KAAK,UAAU,IAAI,KAAK,2DAA2D,CACpF,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAC7B,EAAE,GAAG,aAAa,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAChD,YAAY,CACb,CAAC;gBACF,sBAAsB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC1C,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,8BAA8B,CAAC,UAAU,CAAC,EAAE,CAAC;oBAChD,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;gBACJ,CAAC;gBACD,OAAO,MAAM,UAAU,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QACD,IACE,YAAY,KAAK,CAAC;YAClB,uBAAuB,CACrB,KAAK,EACL,aAAa,CAAC,QAAQ,EACtB,UAAU,EACV,KAAK,EACL,cAAc,CACf,EACD,CAAC;YACD,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,CAAC;gBACnC,4BAA4B,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,MAAM,EAAE,SAAS;gBAAE,sBAAsB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACjE,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;oBACpE,wBAAwB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAC9C,CAAC;gBACD,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACpD,CAAC;YACD,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;YACxC,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;gBACjE,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,IAAI,MAAM,CAAC;gBAChD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBACxD,MAAM,eAAe,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC1C,KAAK,MAAM,MAAM,IAAI,mBAAmB,CACtC,UAAU,EACV,KAAK,EACL,QAAQ,CAAC,MAAM,CAChB,EAAE,CAAC;oBACF,MAAM,SAAS,GAAG,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,EAAE,MAAM,EAAE,CAAC;oBACtE,MAAM,GAAG,GAAG,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;oBAClE,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,SAAS;oBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACd,aAAa,GAAG,IAAI,CAAC;oBACrB,QAAQ,EAAE,CACR,KAAK,UAAU,IAAI,KAAK,8CAA8C,MAAM,EAAE,CAC/E,CAAC;oBACF,MAAM,YAAY,GAAG;wBACnB,GAAG,aAAa;wBAChB,QAAQ,EAAE,SAAS;qBACpB,CAAC;oBACF,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;wBAC5D,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;4BACvC,mBAAmB,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;wBACnD,CAAC;wBACD,OAAO,MAAM,CAAC;oBAChB,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACpB,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,CAAC;4BAC5C,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;wBACJ,CAAC;wBACD,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM,mBAAmB,GACvB,2BAA2B,CAAC,KAAK,CAAC;gBAClC,6BAA6B,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,CAAC,aAAa,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC3C,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,QAAQ,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;gBACtD,wBAAwB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC9C,CAAC;YACD,QAAQ,EAAE,CACR,MAAM,EAAE,SAAS;gBACf,CAAC,CAAC,KAAK,UAAU,IAAI,KAAK,8DAA8D;gBACxF,CAAC,CAAC,KAAK,UAAU,IAAI,KAAK,qDAAqD,CAClF,CAAC;YACF,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;YACrD,IAAI,CAAC;gBACH,OAAO,MAAM,UAAU,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACtD,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IACE,YAAY,KAAK,CAAC;YAClB,CAAC,cAAc;YACf,aAAa,CAAC,QAAQ,EAAE,OAAO;YAC/B,gCAAgC,CAAC,KAAK,CAAC,EACvC,CAAC;YACD,QAAQ,EAAE,CACR,KAAK,UAAU,IAAI,KAAK,iEAAiE,CAC1F,CAAC;YACF,IAAI,CAAC;gBACH,OAAO,MAAM,UAAU,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC,CAAC;YACzE,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,YAAY,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,wBAAwB,CACvC,UAAU,EACV,KAAK,EACL,aAAa,EACb,KAAK,CACN,CAAC;YACF,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,EAAE,CACR,KAAK,UAAU,IAAI,KAAK,uDAAuD,QAAQ,CAAC,QAAQ,EAAE,CACnG,CAAC;gBACF,IAAI,CAAC;oBACH,OAAO,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;gBAC1D,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,MAAM,sBAAsB,CAC1B,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,EACnC,YAAY,CACb,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,sBAAsB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IACpD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"attempt-stream.js","sourceRoot":"","sources":["../../../src/llm/routing/attempt-stream.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ export declare function sleep(ms: number, signal?: AbortSignal): Promise<void>;
9
9
  export declare function isRateLimited(error: unknown): boolean;
10
10
  export declare function isServerUnavailable(error: unknown): boolean;
11
11
  export declare function isReasoningRelatedServerError(error: unknown): boolean;
12
+ export declare const EFFORT_LADDER: readonly ReasoningEffort[];
13
+ export declare function fallbackEffortsFor(requested: ReasoningEffort): ReasoningEffort[];
12
14
  export declare function shouldContinueEffortLadder(error: unknown): boolean;
13
15
  export declare function effortCandidatesFor(providerId: ProviderId, model: string, requested: ReasoningEffort): readonly ReasoningEffort[];
14
16
  export declare function shouldEnterEffortLadder(error: unknown, thinking: CompletionRequest["thinking"], providerId: ProviderId, model: string, singleDispatch: boolean): boolean;
@@ -1,6 +1,5 @@
1
1
  import { isReasoningUnsupported, learnedRouteEfforts, } from "../capabilities.js";
2
2
  import { isInvalidReasoningContentError } from "../reasoning-errors.js";
3
- import { fallbackEffortsFor } from "../effort-fallback.js";
4
3
  import { isReasoningUnsupportedError, ProviderError, STREAM_STALL_MARKER, } from "../http.js";
5
4
  import { rateLimitWaitMsFor } from "../key-rotation.js";
6
5
  import { quotaOrRateLimited } from "../quota-signals.js";
@@ -89,20 +88,38 @@ const UNIVERSAL_EFFORTS = new Set([
89
88
  "medium",
90
89
  "high",
91
90
  ]);
91
+ export const EFFORT_LADDER = [
92
+ "max",
93
+ "xhigh",
94
+ "high",
95
+ "medium",
96
+ "low",
97
+ "minimal",
98
+ "none",
99
+ ];
100
+ export function fallbackEffortsFor(requested) {
101
+ const normalized = requested.toLowerCase();
102
+ const index = EFFORT_LADDER.findIndex((effort) => effort === normalized);
103
+ return index < 0 ? [] : [...EFFORT_LADDER.slice(index + 1)];
104
+ }
92
105
  const OPAQUE_PARAMETER_REJECTION_RE = /invalid request|invalid parameter|unsupported parameter|unknown parameter|unrecognized|extra inputs are not permitted|not a valid/i;
93
106
  const NON_EFFORT_REJECTION_RE = /model is not supported|model is unavailable|model not found|no such model|unknown model|rate limit|quota|insufficient|authentication|authorization|permission/i;
107
+ const GENERIC_SERVER_ERROR_BODY_RE = /^(?:internal server error|bad gateway|service unavailable|gateway timeout|error)\.?$/i;
94
108
  function isOpaqueParameterRejection(error, effort) {
95
109
  if (!effort || UNIVERSAL_EFFORTS.has(effort))
96
110
  return false;
97
111
  if (!(error instanceof ProviderError))
98
112
  return false;
99
113
  const status = error.status ?? 0;
114
+ const haystack = `${error.message}\n${error.body ?? ""}`;
100
115
  const parameterRejected = (status === 400 || status === 422) &&
101
- OPAQUE_PARAMETER_REJECTION_RE.test(`${error.message}\n${error.body ?? ""}`);
102
- const upstreamCrashed = status >= 500 && status <= 504;
103
- if (!parameterRejected && !upstreamCrashed)
116
+ OPAQUE_PARAMETER_REJECTION_RE.test(haystack);
117
+ const opaqueGatewayCrash = status >= 500 &&
118
+ status <= 504 &&
119
+ GENERIC_SERVER_ERROR_BODY_RE.test((error.body ?? "").trim());
120
+ if (!parameterRejected && !opaqueGatewayCrash)
104
121
  return false;
105
- return !NON_EFFORT_REJECTION_RE.test(`${error.message}\n${error.body ?? ""}`);
122
+ return !NON_EFFORT_REJECTION_RE.test(haystack);
106
123
  }
107
124
  export function shouldContinueEffortLadder(error) {
108
125
  if (isInvalidReasoningContentError(error))
@@ -112,7 +129,7 @@ export function shouldContinueEffortLadder(error) {
112
129
  export function effortCandidatesFor(providerId, model, requested) {
113
130
  const learned = learnedRouteEfforts(providerId, model);
114
131
  if (learned?.length) {
115
- const usable = learned.filter((effort) => effort !== requested && effort !== "none");
132
+ const usable = learned.filter((effort) => effort !== requested);
116
133
  const corrected = nearestAcceptedEffort(requested, usable);
117
134
  const scaledLearned = EFFORT_SCALE.find((effort) => effort === corrected);
118
135
  return scaledLearned ? [scaledLearned] : [];
@@ -120,6 +137,9 @@ export function effortCandidatesFor(providerId, model, requested) {
120
137
  const declared = resolveBuiltInProfile({ provider: providerId, model })
121
138
  .reasoning.acceptedEfforts;
122
139
  if (requested === "none") {
140
+ if (declared.length === 0) {
141
+ return EFFORT_SCALE.filter((effort) => effort !== "none" && effort !== "minimal");
142
+ }
123
143
  const enabled = EFFORT_SCALE.filter((effort) => effort !== "none" && declared.includes(effort));
124
144
  return enabled.length ? enabled : ["minimal", "low"];
125
145
  }
@@ -1 +1 @@
1
- {"version":3,"file":"error-classification.js","sourceRoot":"","sources":["../../../src/llm/routing/error-classification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"error-classification.js","sourceRoot":"","sources":["../../../src/llm/routing/error-classification.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ import { tryCompleteOnce } from "./attempt-complete.js";
8
8
  import { tryStreamOnce } from "./attempt-stream.js";
9
9
  import { isRateLimited, isRetriableError, isServerErrorFailure, isServerUnavailable, markServerErrorAttempts, MAX_RETRIES, MAX_RETRY_WAIT_MS, networkRetryWaitMs, retryWaitMs, SERVER_ERROR_MAX_ATTEMPTS, sleep, } from "./error-classification.js";
10
10
  import { authForSlot } from "./provider-selection.js";
11
+ import { withRequestPurpose } from "../request-purpose.js";
12
+ import { isolatedSessionRoute } from "../session-route.js";
11
13
  function failureReason(error) {
12
14
  if (isRateLimited(error))
13
15
  return "rate limited";
@@ -46,30 +48,40 @@ export async function runWithKeyRotation(opts) {
46
48
  if (slots.length === 0) {
47
49
  throw new Error("no API key configured");
48
50
  }
49
- const fullPlan = buildKeyAttemptPlan(slots.length, multi.activeIndex).filter((index) => !slots[index].disabled);
51
+ const sessionRoute = isolatedSessionRoute(providerId, model);
52
+ const pinnedKeyIndex = sessionRoute?.keyId
53
+ ? slots.findIndex((slot) => slot.id === sessionRoute.keyId && !slot.disabled)
54
+ : -1;
55
+ const fullPlan = buildKeyAttemptPlan(slots.length, pinnedKeyIndex >= 0 ? pinnedKeyIndex : multi.activeIndex).filter((index) => !slots[index].disabled);
50
56
  // large prompt again under a different credential.
51
57
  const plan = singleDispatch ? fullPlan.slice(0, 1) : fullPlan;
52
58
  if (plan.length === 0) {
53
59
  throw new Error(`all ${slots.length} API key${slots.length === 1 ? "" : "s"} for ${providerId} are disabled — re-enable one to use this provider`);
54
60
  }
55
61
  const enabledCount = plan.length;
62
+ if (sessionRoute)
63
+ sessionRoute.keyId = slots[plan[0]].id;
56
64
  const multiKey = enabledCount > 1;
57
65
  const maxPerKey = singleDispatch
58
66
  ? 1
59
67
  : attemptsPerKey(enabledCount, (opts.maxRetries ?? MAX_RETRIES) + 1);
60
68
  let lastError;
61
69
  let serverAttempts = 0;
62
- const storedEndpoints = providerUsesEndpoints(providerId) && !singleDispatch
70
+ const storedEndpoints = providerUsesEndpoints(providerId) && (!singleDispatch || sessionRoute)
63
71
  ? getProviderEndpoints(providerId)
64
72
  : undefined;
65
73
  const endpointUrls = (storedEndpoints?.urls ?? []).filter((url) => !(storedEndpoints?.disabledUrls ?? []).includes(url));
66
- const activeEndpointUrl = storedEndpoints?.urls[storedEndpoints.activeIndex];
74
+ const activeEndpointUrl = sessionRoute?.endpoint && endpointUrls.includes(sessionRoute.endpoint)
75
+ ? sessionRoute.endpoint
76
+ : storedEndpoints?.urls[storedEndpoints.activeIndex];
67
77
  const activeEndpointPos = activeEndpointUrl
68
78
  ? endpointUrls.indexOf(activeEndpointUrl)
69
79
  : -1;
70
80
  const endpointStart = activeEndpointPos >= 0 ? activeEndpointPos : 0;
71
81
  let endpointOffset = 0;
72
82
  const endpointCount = endpointUrls.length;
83
+ if (sessionRoute && endpointCount > 0)
84
+ sessionRoute.endpoint = endpointUrls[endpointStart];
73
85
  const authForAttempt = (value) => {
74
86
  if (endpointCount === 0)
75
87
  return authForSlot(providerId, value);
@@ -95,17 +107,18 @@ export async function runWithKeyRotation(opts) {
95
107
  request.signal?.throwIfAborted();
96
108
  const attemptReason = planIdx === 0 && attempt === 0 ? opts.initialAttemptReason : "retry";
97
109
  try {
98
- let result;
99
- if (opts.mode === "stream") {
100
- result = await tryStreamOnce(provider, providerId, request, model, auth, opts.onToken ?? (() => { }), opts.onStatus, attemptReason, singleDispatch, opts.onSuccessfulRequest);
101
- }
102
- else {
103
- result = await tryCompleteOnce(provider, providerId, request, model, auth, attemptReason, opts.onStatus, singleDispatch);
110
+ const result = await withRequestPurpose(request.purpose, () => opts.mode === "stream"
111
+ ? tryStreamOnce(provider, providerId, request, model, auth, opts.onToken ?? (() => { }), opts.onStatus, attemptReason, singleDispatch, opts.onSuccessfulRequest)
112
+ : tryCompleteOnce(provider, providerId, request, model, auth, attemptReason, opts.onStatus, singleDispatch));
113
+ if (sessionRoute) {
114
+ sessionRoute.keyId = slot.id;
115
+ if (auth.baseUrl)
116
+ sessionRoute.endpoint = auth.baseUrl;
104
117
  }
105
- if (multi.source !== "env" && multi.source !== "local") {
118
+ else if (multi.source !== "env" && multi.source !== "local") {
106
119
  void markProviderKeySuccess(providerId, keyIndex).catch(() => { });
107
120
  }
108
- if (storedEndpoints && endpointCount > 0) {
121
+ if (!sessionRoute && storedEndpoints && endpointCount > 0) {
109
122
  const winningUrl = endpointUrls[(endpointStart + endpointOffset) % endpointCount];
110
123
  const storedIndex = storedEndpoints.urls.indexOf(winningUrl);
111
124
  const authoritative = getActiveProviderEndpoint(providerId);
@@ -134,6 +147,8 @@ export async function runWithKeyRotation(opts) {
134
147
  if (isKeyCircleStopError(error)) {
135
148
  throw error;
136
149
  }
150
+ if (singleDispatch)
151
+ throw error;
137
152
  if (isImmediateKeySwitchError(error)) {
138
153
  if (endpointCount > 1 && endpointOffset + 1 < endpointCount) {
139
154
  endpointOffset += 1;