@sentropic/llm-mesh 0.21.2 → 0.22.1

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 (38) hide show
  1. package/README.md +25 -0
  2. package/dist/catalog.d.ts +28 -0
  3. package/dist/catalog.d.ts.map +1 -1
  4. package/dist/catalog.js +24 -0
  5. package/dist/catalog.js.map +1 -1
  6. package/dist/generated-model-council.d.ts +5 -5
  7. package/dist/generated-model-council.d.ts.map +1 -1
  8. package/dist/generated-model-council.js +6 -4
  9. package/dist/generated-model-council.js.map +1 -1
  10. package/dist/index.d.ts +1 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/providers.d.ts +3 -3
  15. package/dist/providers.d.ts.map +1 -1
  16. package/dist/providers.js +4 -0
  17. package/dist/providers.js.map +1 -1
  18. package/dist/route-planner-state.d.ts +2 -2
  19. package/dist/route-planner-state.d.ts.map +1 -1
  20. package/dist/route-planner-state.js.map +1 -1
  21. package/dist/route-planner.d.ts +4 -1
  22. package/dist/route-planner.d.ts.map +1 -1
  23. package/dist/route-planner.js +39 -13
  24. package/dist/route-planner.js.map +1 -1
  25. package/dist/route-quote.d.ts +31 -0
  26. package/dist/route-quote.d.ts.map +1 -0
  27. package/dist/route-quote.js +192 -0
  28. package/dist/route-quote.js.map +1 -0
  29. package/dist/route-selection.d.ts +28 -0
  30. package/dist/route-selection.d.ts.map +1 -1
  31. package/dist/route-selection.js +21 -10
  32. package/dist/route-selection.js.map +1 -1
  33. package/dist/routing-contracts.d.ts +49 -0
  34. package/dist/routing-contracts.d.ts.map +1 -1
  35. package/dist/routing-targets.d.ts.map +1 -1
  36. package/dist/routing-targets.js +10 -4
  37. package/dist/routing-targets.js.map +1 -1
  38. package/package.json +1 -1
package/README.md CHANGED
@@ -89,6 +89,31 @@ const facade = createLlmMeshFacade({
89
89
  That migration option is only for pre-ownerScope local records. New enrollment
90
90
  always takes ownership from `StartEnrollmentInput.ownerScope`.
91
91
 
92
+ ## Route quote
93
+
94
+ `quoteRoute(input, { council, profiles })` (or `routePlanner.quote(input)`)
95
+ returns side-effect-free candidate and usage bounds for budget admission. It is
96
+ synchronous, reads no clock (`now` is an input), performs no I/O and never calls
97
+ the account directory. The quote lists every model any plan could select for
98
+ the request (aliases, fallbacks and fresh council equivalents, filtered by
99
+ required capabilities but not by accounts or health), at most
100
+ `MAX_ROUTE_QUOTE_CANDIDATES` (16), with the policy attempt cap (1..8) and a
101
+ per-attempt allowance derived from the caller ceiling. Output allowance is
102
+ bounded by a model's `maxOutputTokens`; input above a declared context window
103
+ is refused. Candidates that may run on the Codex transport carry
104
+ `outputCeilingEnforced: false` because that wire cannot send an output limit.
105
+ Errors are `RouteQuoteError` codes `unknown-model`, `capabilities-unmet`,
106
+ `invalid-ceiling` and `too-many-candidates`. Mesh never reads prices or
107
+ budgets.
108
+
109
+ Pass the quote to `plan({ ..., quote })`: the plan keeps only quoted targets,
110
+ caps attempts at `quote.maxAttempts`, and throws `RoutePlanError` code
111
+ `quote-mismatch` when the quote reference, council or policy revision differs,
112
+ or when no planned route is covered by the quote. A pinned plan evaluates
113
+ council freshness at `quote.quotedAt` (the quote's `now`), shares its target
114
+ resolution with `quoteRoute`, and ignores a sticky affinity whose target the
115
+ quote does not cover. `requiredCapabilities` order does not affect `quoteRef`.
116
+
92
117
  ## Cloud Code OAuth client rotation
93
118
 
94
119
  The embedded Antigravity OAuth client credential is distributable client configuration, not a
package/dist/catalog.d.ts CHANGED
@@ -80,6 +80,13 @@ export declare const modelProfiles: readonly [{
80
80
  readonly reasoningTier: "advanced";
81
81
  readonly defaultTaskHints: readonly ["chat", "structured", "summary"];
82
82
  readonly capabilities: ModelCapabilities;
83
+ }, {
84
+ readonly providerId: "openai";
85
+ readonly modelId: "gpt-6-sol";
86
+ readonly label: "GPT-6 Sol";
87
+ readonly reasoningTier: "advanced";
88
+ readonly defaultTaskHints: readonly ["chat", "structured", "summary"];
89
+ readonly capabilities: ModelCapabilities;
83
90
  }, {
84
91
  readonly providerId: "openai";
85
92
  readonly modelId: "gpt-6-astra";
@@ -101,6 +108,13 @@ export declare const modelProfiles: readonly [{
101
108
  readonly reasoningTier: "advanced";
102
109
  readonly defaultTaskHints: readonly ["chat", "summary"];
103
110
  readonly capabilities: ModelCapabilities;
111
+ }, {
112
+ readonly providerId: "openai";
113
+ readonly modelId: "gpt-6-luna";
114
+ readonly label: "GPT-6 Luna";
115
+ readonly reasoningTier: "advanced";
116
+ readonly defaultTaskHints: readonly ["chat", "summary"];
117
+ readonly capabilities: ModelCapabilities;
104
118
  }, {
105
119
  readonly providerId: "openai";
106
120
  readonly modelId: "gpt-5.5";
@@ -339,6 +353,13 @@ export declare const modelCapabilityMatrix: readonly [{
339
353
  readonly reasoningTier: "advanced";
340
354
  readonly defaultTaskHints: readonly ["chat", "structured", "summary"];
341
355
  readonly capabilities: ModelCapabilities;
356
+ }, {
357
+ readonly providerId: "openai";
358
+ readonly modelId: "gpt-6-sol";
359
+ readonly label: "GPT-6 Sol";
360
+ readonly reasoningTier: "advanced";
361
+ readonly defaultTaskHints: readonly ["chat", "structured", "summary"];
362
+ readonly capabilities: ModelCapabilities;
342
363
  }, {
343
364
  readonly providerId: "openai";
344
365
  readonly modelId: "gpt-6-astra";
@@ -360,6 +381,13 @@ export declare const modelCapabilityMatrix: readonly [{
360
381
  readonly reasoningTier: "advanced";
361
382
  readonly defaultTaskHints: readonly ["chat", "summary"];
362
383
  readonly capabilities: ModelCapabilities;
384
+ }, {
385
+ readonly providerId: "openai";
386
+ readonly modelId: "gpt-6-luna";
387
+ readonly label: "GPT-6 Luna";
388
+ readonly reasoningTier: "advanced";
389
+ readonly defaultTaskHints: readonly ["chat", "summary"];
390
+ readonly capabilities: ModelCapabilities;
363
391
  }, {
364
392
  readonly providerId: "openai";
365
393
  readonly modelId: "gpt-5.5";
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAEnB,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,oBAAoB,CAAC;CACpC;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,SAAS,aAAa,EAAE,CAAC;IAC3C,YAAY,EAAE,iBAAiB,CAAC;CACjC;AAuGD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwG8B,CAAC;AAyC5D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyOkB,CAAC;AAE7C,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAmB,CAAC;AAEzD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAgB,CAAC;AAEnD,eAAO,MAAM,oBAAoB,QAAO,SAAS,kBAAkB,EAElE,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,SAAS,YAAY,EAEzD,CAAC;AAEF,eAAO,MAAM,2BAA2B,eAC1B,UAAU,KACrB,SAAS,YAAY,EAEvB,CAAC;AAEF,eAAO,MAAM,kBAAkB,eACjB,UAAU,KACrB,kBAEF,CAAC;AAEF,eAAO,MAAM,eAAe,eACd,UAAU,WACb,OAAO,KACf,YAAY,GAAG,IAMjB,CAAC"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAC1B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,aAAa,EAEnB,MAAM,gBAAgB,CAAC;AAExB,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,oBAAoB,CAAC;CACpC;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,aAAa,CAAC;IAC7B,gBAAgB,EAAE,SAAS,aAAa,EAAE,CAAC;IAC3C,YAAY,EAAE,iBAAiB,CAAC;CACjC;AAuGD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwG8B,CAAC;AAyC5D,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiQkB,CAAC;AAE7C,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAmB,CAAC;AAEzD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAgB,CAAC;AAEnD,eAAO,MAAM,oBAAoB,QAAO,SAAS,kBAAkB,EAElE,CAAC;AAEF,eAAO,MAAM,iBAAiB,QAAO,SAAS,YAAY,EAEzD,CAAC;AAEF,eAAO,MAAM,2BAA2B,eAC1B,UAAU,KACrB,SAAS,YAAY,EAEvB,CAAC;AAEF,eAAO,MAAM,kBAAkB,eACjB,UAAU,KACrB,kBAEF,CAAC;AAEF,eAAO,MAAM,eAAe,eACd,UAAU,WACb,OAAO,KACf,YAAY,GAAG,IAMjB,CAAC"}
package/dist/catalog.js CHANGED
@@ -220,6 +220,18 @@ export const modelProfiles = [
220
220
  defaultTaskHints: ['chat', 'structured', 'summary'],
221
221
  capabilities: modelCapabilities('openai', 'advanced', { vision: true }),
222
222
  },
223
+ // Direct OpenAI Responses API (HTTP 200) and Codex availability verified
224
+ // by conductor real calls on 2026-09-26; capabilities copied from gpt-5.6
225
+ // (unverified), with matching Sol task hints;
226
+ // no context window / max output declared (unknown).
227
+ {
228
+ providerId: 'openai',
229
+ modelId: 'gpt-6-sol',
230
+ label: 'GPT-6 Sol',
231
+ reasoningTier: 'advanced',
232
+ defaultTaskHints: ['chat', 'structured', 'summary'],
233
+ capabilities: modelCapabilities('openai', 'advanced', { vision: true }),
234
+ },
223
235
  {
224
236
  providerId: 'openai',
225
237
  modelId: 'gpt-6-astra',
@@ -244,6 +256,18 @@ export const modelProfiles = [
244
256
  defaultTaskHints: ['chat', 'summary'],
245
257
  capabilities: modelCapabilities('openai', 'advanced', { vision: true }),
246
258
  },
259
+ // Direct OpenAI Responses API (HTTP 200) and Codex availability verified
260
+ // by conductor real calls on 2026-09-26; capabilities copied from gpt-5.6
261
+ // (unverified), with matching Luna task hints;
262
+ // no context window / max output declared (unknown).
263
+ {
264
+ providerId: 'openai',
265
+ modelId: 'gpt-6-luna',
266
+ label: 'GPT-6 Luna',
267
+ reasoningTier: 'advanced',
268
+ defaultTaskHints: ['chat', 'summary'],
269
+ capabilities: modelCapabilities('openai', 'advanced', { vision: true }),
270
+ },
247
271
  {
248
272
  providerId: 'openai',
249
273
  modelId: 'gpt-5.5',
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  export declare const GENERATED_MODEL_COUNCIL_SOURCE: {
2
- readonly revision: "2026-09-05.1";
3
- readonly digest: "sha256:9f3037cec2a44558cf252152aec3be4c508fe803ac80737dbc0c5baa55ebb0db";
2
+ readonly revision: "2026-09-26.1";
3
+ readonly digest: "sha256:c9657a9aa75326bc418e46d92ce157fbe57d6cb2fb5dbade75286128f74dc890";
4
4
  readonly expiresAt: "2027-03-03T00:00:00.000Z";
5
5
  readonly reason: "No pinned benchmark evidence authorizes automatic substitution.";
6
- readonly reviewer: "Gemini 3.8 Flash and routing remap owner directive";
7
- readonly provenance: "feat/mesh-gemini38-fable-astra-remap owner task";
8
- readonly excludedModelKeys: readonly ["anthropic:claude-fable-5", "anthropic:claude-fable-5-1", "anthropic:claude-opus-4-8", "anthropic:claude-opus-5", "anthropic:claude-sonnet-5", "cohere:command-a-03-2025", "cohere:command-a-reasoning-08-2025", "gcp:anthropic/claude-opus-4-6@gcp", "gcp:anthropic/claude-sonnet-4-6@gcp", "gcp:google/gemini-3.1-flash-lite@gcp", "gcp:google/gemini-3.5-flash@gcp", "gemini:gemini-3.1-flash-lite", "gemini:gemini-3.5-flash", "gemini:gemini-3.7-flash", "gemini:gemini-3.8-flash", "mistral:magistral-medium-2509", "mistral:mistral-small-2603", "muse:muse-spark-1.3", "muse:muse-spark-1.3-contributor", "openai:gpt-4.1-nano", "openai:gpt-5.4-nano", "openai:gpt-5.5", "openai:gpt-5.6-luna", "openai:gpt-5.6-sol", "openai:gpt-5.6-terra", "openai:gpt-6-astra"];
6
+ readonly reviewer: "GPT-6 Sol and Luna routing owner directive";
7
+ readonly provenance: "feat/llm-mesh-gpt6 owner task; Codex calls verified 2026-09-26; no benchmark evidence";
8
+ readonly excludedModelKeys: readonly ["anthropic:claude-fable-5", "anthropic:claude-fable-5-1", "anthropic:claude-opus-4-8", "anthropic:claude-opus-5", "anthropic:claude-sonnet-5", "cohere:command-a-03-2025", "cohere:command-a-reasoning-08-2025", "gcp:anthropic/claude-opus-4-6@gcp", "gcp:anthropic/claude-sonnet-4-6@gcp", "gcp:google/gemini-3.1-flash-lite@gcp", "gcp:google/gemini-3.5-flash@gcp", "gemini:gemini-3.1-flash-lite", "gemini:gemini-3.5-flash", "gemini:gemini-3.7-flash", "gemini:gemini-3.8-flash", "mistral:magistral-medium-2509", "mistral:mistral-small-2603", "muse:muse-spark-1.3", "muse:muse-spark-1.3-contributor", "openai:gpt-4.1-nano", "openai:gpt-5.4-nano", "openai:gpt-5.5", "openai:gpt-5.6-luna", "openai:gpt-5.6-sol", "openai:gpt-5.6-terra", "openai:gpt-6-astra", "openai:gpt-6-luna", "openai:gpt-6-sol"];
9
9
  };
10
10
  //# sourceMappingURL=generated-model-council.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generated-model-council.d.ts","sourceRoot":"","sources":["../src/generated-model-council.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,8BAA8B;;;;;;;;CAmCjC,CAAC"}
1
+ {"version":3,"file":"generated-model-council.d.ts","sourceRoot":"","sources":["../src/generated-model-council.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,8BAA8B;;;;;;;;CAqCjC,CAAC"}
@@ -1,11 +1,11 @@
1
1
  // Generated by make refresh-llm-model-equivalences. Do not edit.
2
2
  export const GENERATED_MODEL_COUNCIL_SOURCE = {
3
- revision: "2026-09-05.1",
4
- digest: "sha256:9f3037cec2a44558cf252152aec3be4c508fe803ac80737dbc0c5baa55ebb0db",
3
+ revision: "2026-09-26.1",
4
+ digest: "sha256:c9657a9aa75326bc418e46d92ce157fbe57d6cb2fb5dbade75286128f74dc890",
5
5
  expiresAt: "2027-03-03T00:00:00.000Z",
6
6
  reason: "No pinned benchmark evidence authorizes automatic substitution.",
7
- reviewer: "Gemini 3.8 Flash and routing remap owner directive",
8
- provenance: "feat/mesh-gemini38-fable-astra-remap owner task",
7
+ reviewer: "GPT-6 Sol and Luna routing owner directive",
8
+ provenance: "feat/llm-mesh-gpt6 owner task; Codex calls verified 2026-09-26; no benchmark evidence",
9
9
  excludedModelKeys: [
10
10
  "anthropic:claude-fable-5",
11
11
  "anthropic:claude-fable-5-1",
@@ -33,6 +33,8 @@ export const GENERATED_MODEL_COUNCIL_SOURCE = {
33
33
  "openai:gpt-5.6-sol",
34
34
  "openai:gpt-5.6-terra",
35
35
  "openai:gpt-6-astra",
36
+ "openai:gpt-6-luna",
37
+ "openai:gpt-6-sol",
36
38
  ],
37
39
  };
38
40
  //# sourceMappingURL=generated-model-council.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generated-model-council.js","sourceRoot":"","sources":["../src/generated-model-council.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,yEAAyE;IACjF,SAAS,EAAE,0BAA0B;IACrC,MAAM,EAAE,iEAAiE;IACzE,QAAQ,EAAE,oDAAoD;IAC9D,UAAU,EAAE,iDAAiD;IAC7D,iBAAiB,EAAE;QACjB,0BAA0B;QAC1B,4BAA4B;QAC5B,2BAA2B;QAC3B,yBAAyB;QACzB,2BAA2B;QAC3B,0BAA0B;QAC1B,oCAAoC;QACpC,mCAAmC;QACnC,qCAAqC;QACrC,sCAAsC;QACtC,iCAAiC;QACjC,8BAA8B;QAC9B,yBAAyB;QACzB,yBAAyB;QACzB,yBAAyB;QACzB,+BAA+B;QAC/B,4BAA4B;QAC5B,qBAAqB;QACrB,iCAAiC;QACjC,qBAAqB;QACrB,qBAAqB;QACrB,gBAAgB;QAChB,qBAAqB;QACrB,oBAAoB;QACpB,sBAAsB;QACtB,oBAAoB;KACrB;CACO,CAAC"}
1
+ {"version":3,"file":"generated-model-council.js","sourceRoot":"","sources":["../src/generated-model-council.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,yEAAyE;IACjF,SAAS,EAAE,0BAA0B;IACrC,MAAM,EAAE,iEAAiE;IACzE,QAAQ,EAAE,4CAA4C;IACtD,UAAU,EAAE,uFAAuF;IACnG,iBAAiB,EAAE;QACjB,0BAA0B;QAC1B,4BAA4B;QAC5B,2BAA2B;QAC3B,yBAAyB;QACzB,2BAA2B;QAC3B,0BAA0B;QAC1B,oCAAoC;QACpC,mCAAmC;QACnC,qCAAqC;QACrC,sCAAsC;QACtC,iCAAiC;QACjC,8BAA8B;QAC9B,yBAAyB;QACzB,yBAAyB;QACzB,yBAAyB;QACzB,+BAA+B;QAC/B,4BAA4B;QAC5B,qBAAqB;QACrB,iCAAiC;QACjC,qBAAqB;QACrB,qBAAqB;QACrB,gBAAgB;QAChB,qBAAqB;QACrB,oBAAoB;QACpB,sBAAsB;QACtB,oBAAoB;QACpB,mBAAmB;QACnB,kBAAkB;KACnB;CACO,CAAC"}
package/dist/index.d.ts CHANGED
@@ -15,6 +15,7 @@ export * from './routing-policy.js';
15
15
  export * from './routing-contracts.js';
16
16
  export * from './route-selection.js';
17
17
  export * from './route-planner.js';
18
+ export { MAX_ROUTE_QUOTE_CANDIDATES, RouteQuoteError, quoteRoute, type RouteQuoteOptions, } from './route-quote.js';
18
19
  export { RoutePlanError } from './route-planner-state.js';
19
20
  export * from './codex.js';
20
21
  export * from './transport/codex-runtime-client.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,cAAc,YAAY,CAAC;AAC3B,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,0BAA0B,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,iBAAiB,GAChF,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,cAAc,YAAY,CAAC;AAC3B,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -15,6 +15,7 @@ export * from './routing-policy.js';
15
15
  export * from './routing-contracts.js';
16
16
  export * from './route-selection.js';
17
17
  export * from './route-planner.js';
18
+ export { MAX_ROUTE_QUOTE_CANDIDATES, RouteQuoteError, quoteRoute, } from './route-quote.js';
18
19
  export { RoutePlanError } from './route-planner-state.js';
19
20
  export * from './codex.js';
20
21
  export * from './transport/codex-runtime-client.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,cAAc,YAAY,CAAC;AAC3B,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,0BAA0B,EAAE,eAAe,EAAE,UAAU,GACxD,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,cAAc,YAAY,CAAC;AAC3B,cAAc,qCAAqC,CAAC;AACpD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC"}
@@ -4,12 +4,12 @@ export type ProviderStatus = 'ready' | 'planned';
4
4
  export type ProviderFamily = 'openai' | 'google' | 'anthropic' | 'mistral' | 'cohere' | 'meta';
5
5
  export type ReasoningTier = 'none' | 'light' | 'standard' | 'advanced';
6
6
  export type ModelTaskHint = 'chat' | 'structured' | 'summary' | 'doc';
7
- export declare const knownModelIds: readonly ["gpt-5.6-sol", "gpt-6-astra", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-5.5", "gpt-5.4-nano", "gpt-4.1-nano", "gemini-3.7-flash", "gemini-3.8-flash", "gemini-3.5-flash", "gemini-3.1-flash-lite", "claude-sonnet-5", "claude-opus-5", "claude-opus-4-8", "claude-fable-5", "claude-fable-5-1", "mistral-small-2603", "magistral-medium-2509", "command-a-03-2025", "command-a-reasoning-08-2025", "google/gemini-3.5-flash@gcp", "google/gemini-3.1-flash-lite@gcp", "anthropic/claude-sonnet-4-6@gcp", "anthropic/claude-opus-4-6@gcp", "laneformer-2b-it", "muse-spark-1.3", "muse-spark-1.3-contributor"];
7
+ export declare const knownModelIds: readonly ["gpt-5.6-sol", "gpt-6-sol", "gpt-6-astra", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-6-luna", "gpt-5.5", "gpt-5.4-nano", "gpt-4.1-nano", "gemini-3.7-flash", "gemini-3.8-flash", "gemini-3.5-flash", "gemini-3.1-flash-lite", "claude-sonnet-5", "claude-opus-5", "claude-opus-4-8", "claude-fable-5", "claude-fable-5-1", "mistral-small-2603", "magistral-medium-2509", "command-a-03-2025", "command-a-reasoning-08-2025", "google/gemini-3.5-flash@gcp", "google/gemini-3.1-flash-lite@gcp", "anthropic/claude-sonnet-4-6@gcp", "anthropic/claude-opus-4-6@gcp", "laneformer-2b-it", "muse-spark-1.3", "muse-spark-1.3-contributor"];
8
8
  export type KnownModelId = (typeof knownModelIds)[number];
9
9
  export type ModelId = KnownModelId | (string & {});
10
10
  export type QualifiedModelId = `${ProviderId}:${string}`;
11
11
  export declare const knownModelIdsByProvider: {
12
- readonly openai: readonly ["gpt-5.6-sol", "gpt-6-astra", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-5.5", "gpt-5.4-nano", "gpt-4.1-nano"];
12
+ readonly openai: readonly ["gpt-5.6-sol", "gpt-6-sol", "gpt-6-astra", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-6-luna", "gpt-5.5", "gpt-5.4-nano", "gpt-4.1-nano"];
13
13
  readonly gemini: readonly ["gemini-3.7-flash", "gemini-3.8-flash", "gemini-3.5-flash", "gemini-3.1-flash-lite"];
14
14
  readonly anthropic: readonly ["claude-sonnet-5", "claude-opus-5", "claude-opus-4-8", "claude-fable-5", "claude-fable-5-1"];
15
15
  readonly mistral: readonly ["mistral-small-2603", "magistral-medium-2509"];
@@ -26,5 +26,5 @@ export declare const toQualifiedModelId: (model: ModelReference) => QualifiedMod
26
26
  export declare const antigravityModelFleet: readonly ["claude-sonnet-4-6", "claude-opus-4-6-thinking", "gemini-3-pro-high", "gemini-3-pro-low", "gpt-oss-120b-medium"];
27
27
  export type AntigravityFleetModelId = (typeof antigravityModelFleet)[number];
28
28
  export declare const isProviderId: (value: string) => value is "openai" | "gemini" | "anthropic" | "mistral" | "cohere" | "gcp" | "local" | "muse";
29
- export declare const isKnownModelId: (value: string) => value is "gpt-5.6-sol" | "gpt-6-astra" | "gpt-5.6-terra" | "gpt-5.6-luna" | "gpt-5.5" | "gpt-5.4-nano" | "gpt-4.1-nano" | "gemini-3.7-flash" | "gemini-3.8-flash" | "gemini-3.5-flash" | "gemini-3.1-flash-lite" | "claude-sonnet-5" | "claude-opus-5" | "claude-opus-4-8" | "claude-fable-5" | "claude-fable-5-1" | "mistral-small-2603" | "magistral-medium-2509" | "command-a-03-2025" | "command-a-reasoning-08-2025" | "google/gemini-3.5-flash@gcp" | "google/gemini-3.1-flash-lite@gcp" | "anthropic/claude-sonnet-4-6@gcp" | "anthropic/claude-opus-4-6@gcp" | "laneformer-2b-it" | "muse-spark-1.3" | "muse-spark-1.3-contributor";
29
+ export declare const isKnownModelId: (value: string) => value is "gpt-5.6-sol" | "gpt-6-sol" | "gpt-6-astra" | "gpt-5.6-terra" | "gpt-5.6-luna" | "gpt-6-luna" | "gpt-5.5" | "gpt-5.4-nano" | "gpt-4.1-nano" | "gemini-3.7-flash" | "gemini-3.8-flash" | "gemini-3.5-flash" | "gemini-3.1-flash-lite" | "claude-sonnet-5" | "claude-opus-5" | "claude-opus-4-8" | "claude-fable-5" | "claude-fable-5-1" | "mistral-small-2603" | "magistral-medium-2509" | "command-a-03-2025" | "command-a-reasoning-08-2025" | "google/gemini-3.5-flash@gcp" | "google/gemini-3.1-flash-lite@gcp" | "anthropic/claude-sonnet-4-6@gcp" | "anthropic/claude-opus-4-6@gcp" | "laneformer-2b-it" | "muse-spark-1.3" | "muse-spark-1.3-contributor";
30
30
  //# sourceMappingURL=providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,yFAA0F,CAAC;AAEnH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE/F,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;AAEvE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,KAAK,CAAC;AAEtE,eAAO,MAAM,aAAa,qlBA8ChB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D,MAAM,MAAM,OAAO,GAAG,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEnD,MAAM,MAAM,gBAAgB,GAAG,GAAG,UAAU,IAAI,MAAM,EAAE,CAAC;AAEzD,eAAO,MAAM,uBAAuB;;;;;;;;;CAiB4B,CAAC;AAEjE,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,kBAAkB,UAAW,cAAc,KAAG,gBAE1D,CAAC;AAUF,eAAO,MAAM,qBAAqB,4HAMxB,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7E,eAAO,MAAM,YAAY,UAAW,MAAM,iGAEzC,CAAC;AAEF,eAAO,MAAM,cAAc,UAAW,MAAM,gnBAE3C,CAAC"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,yFAA0F,CAAC;AAEnH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE/F,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC;AAEvE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,KAAK,CAAC;AAEtE,eAAO,MAAM,aAAa,gnBAgDhB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1D,MAAM,MAAM,OAAO,GAAG,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAEnD,MAAM,MAAM,gBAAgB,GAAG,GAAG,UAAU,IAAI,MAAM,EAAE,CAAC;AAEzD,eAAO,MAAM,uBAAuB;;;;;;;;;CAmB4B,CAAC;AAEjE,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,kBAAkB,UAAW,cAAc,KAAG,gBAE1D,CAAC;AAUF,eAAO,MAAM,qBAAqB,4HAMxB,CAAC;AAEX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7E,eAAO,MAAM,YAAY,UAAW,MAAM,iGAEzC,CAAC;AAEF,eAAO,MAAM,cAAc,UAAW,MAAM,6oBAE3C,CAAC"}
package/dist/providers.js CHANGED
@@ -1,9 +1,11 @@
1
1
  export const providerIds = ['openai', 'gemini', 'anthropic', 'mistral', 'cohere', 'gcp', 'local', 'muse'];
2
2
  export const knownModelIds = [
3
3
  'gpt-5.6-sol',
4
+ 'gpt-6-sol',
4
5
  'gpt-6-astra',
5
6
  'gpt-5.6-terra',
6
7
  'gpt-5.6-luna',
8
+ 'gpt-6-luna',
7
9
  'gpt-5.5',
8
10
  'gpt-5.4-nano',
9
11
  'gpt-4.1-nano',
@@ -49,9 +51,11 @@ export const knownModelIds = [
49
51
  export const knownModelIdsByProvider = {
50
52
  openai: [
51
53
  'gpt-5.6-sol',
54
+ 'gpt-6-sol',
52
55
  'gpt-6-astra',
53
56
  'gpt-5.6-terra',
54
57
  'gpt-5.6-luna',
58
+ 'gpt-6-luna',
55
59
  'gpt-5.5',
56
60
  'gpt-5.4-nano',
57
61
  'gpt-4.1-nano',
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AAYnH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,aAAa;IACb,aAAa;IACb,eAAe;IACf,cAAc;IACd,SAAS;IACT,cAAc;IACd,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,kBAAkB;IAClB,uBAAuB;IACvB,iBAAiB;IACjB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,oBAAoB;IACpB,uBAAuB;IACvB,mBAAmB;IACnB,6BAA6B;IAC7B,8EAA8E;IAC9E,gFAAgF;IAChF,gFAAgF;IAChF,0EAA0E;IAC1E,8EAA8E;IAC9E,+DAA+D;IAC/D,6EAA6E;IAC7E,qEAAqE;IACrE,6CAA6C;IAC7C,4EAA4E;IAC5E,wCAAwC;IACxC,6BAA6B;IAC7B,kCAAkC;IAClC,iCAAiC;IACjC,+BAA+B;IAC/B,sEAAsE;IACtE,2EAA2E;IAC3E,8EAA8E;IAC9E,6EAA6E;IAC7E,kBAAkB;IAClB,2EAA2E;IAC3E,0EAA0E;IAC1E,8EAA8E;IAC9E,gBAAgB;IAChB,4BAA4B;CACpB,CAAC;AAQX,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE;QACN,aAAa;QACb,aAAa;QACb,eAAe;QACf,cAAc;QACd,SAAS;QACT,cAAc;QACd,cAAc;KACf;IACD,MAAM,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,uBAAuB,CAAC;IAC7F,SAAS,EAAE,CAAC,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;IACxG,OAAO,EAAE,CAAC,oBAAoB,EAAE,uBAAuB,CAAC;IACxD,MAAM,EAAE,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;IAC5D,GAAG,EAAE,CAAC,6BAA6B,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,+BAA+B,CAAC;IAC5I,KAAK,EAAE,CAAC,kBAAkB,CAAC;IAC3B,IAAI,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;CACQ,CAAC;AAOjE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAqB,EAAoB,EAAE;IAC5E,OAAO,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;AAChD,CAAC,CAAC;AAEF,kEAAkE;AAClE,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAC9E,0EAA0E;AAC1E,+EAA+E;AAC/E,gFAAgF;AAChF,yDAAyD;AACzD,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,mBAAmB;IACnB,0BAA0B;IAC1B,mBAAmB;IACnB,kBAAkB;IAClB,qBAAqB;CACb,CAAC;AAIX,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAa,EAAuB,EAAE;IACjE,OAAO,WAAW,CAAC,QAAQ,CAAC,KAAmB,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAyB,EAAE;IACrE,OAAO,aAAa,CAAC,QAAQ,CAAC,KAAqB,CAAC,CAAC;AACvD,CAAC,CAAC"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../src/providers.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AAYnH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,aAAa;IACb,WAAW;IACX,aAAa;IACb,eAAe;IACf,cAAc;IACd,YAAY;IACZ,SAAS;IACT,cAAc;IACd,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,kBAAkB;IAClB,uBAAuB;IACvB,iBAAiB;IACjB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,kBAAkB;IAClB,oBAAoB;IACpB,uBAAuB;IACvB,mBAAmB;IACnB,6BAA6B;IAC7B,8EAA8E;IAC9E,gFAAgF;IAChF,gFAAgF;IAChF,0EAA0E;IAC1E,8EAA8E;IAC9E,+DAA+D;IAC/D,6EAA6E;IAC7E,qEAAqE;IACrE,6CAA6C;IAC7C,4EAA4E;IAC5E,wCAAwC;IACxC,6BAA6B;IAC7B,kCAAkC;IAClC,iCAAiC;IACjC,+BAA+B;IAC/B,sEAAsE;IACtE,2EAA2E;IAC3E,8EAA8E;IAC9E,6EAA6E;IAC7E,kBAAkB;IAClB,2EAA2E;IAC3E,0EAA0E;IAC1E,8EAA8E;IAC9E,gBAAgB;IAChB,4BAA4B;CACpB,CAAC;AAQX,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,MAAM,EAAE;QACN,aAAa;QACb,WAAW;QACX,aAAa;QACb,eAAe;QACf,cAAc;QACd,YAAY;QACZ,SAAS;QACT,cAAc;QACd,cAAc;KACf;IACD,MAAM,EAAE,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,uBAAuB,CAAC;IAC7F,SAAS,EAAE,CAAC,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,CAAC;IACxG,OAAO,EAAE,CAAC,oBAAoB,EAAE,uBAAuB,CAAC;IACxD,MAAM,EAAE,CAAC,mBAAmB,EAAE,6BAA6B,CAAC;IAC5D,GAAG,EAAE,CAAC,6BAA6B,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,+BAA+B,CAAC;IAC5I,KAAK,EAAE,CAAC,kBAAkB,CAAC;IAC3B,IAAI,EAAE,CAAC,gBAAgB,EAAE,4BAA4B,CAAC;CACQ,CAAC;AAOjE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAqB,EAAoB,EAAE;IAC5E,OAAO,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;AAChD,CAAC,CAAC;AAEF,kEAAkE;AAClE,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAC9E,0EAA0E;AAC1E,+EAA+E;AAC/E,gFAAgF;AAChF,yDAAyD;AACzD,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,mBAAmB;IACnB,0BAA0B;IAC1B,mBAAmB;IACnB,kBAAkB;IAClB,qBAAqB;CACb,CAAC;AAIX,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAa,EAAuB,EAAE;IACjE,OAAO,WAAW,CAAC,QAAQ,CAAC,KAAmB,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAyB,EAAE;IACrE,OAAO,aAAa,CAAC,QAAQ,CAAC,KAAqB,CAAC,CAAC;AACvD,CAAC,CAAC"}
@@ -22,9 +22,9 @@ export interface StoredAffinity extends AffinityDescription {
22
22
  readonly workspaceId?: string;
23
23
  }
24
24
  export declare class RoutePlanError extends Error {
25
- readonly code: 'no-route' | 'unknown-model' | 'capabilities-unmet' | 'invalid-plan' | 'expired-plan' | 'stale-candidate' | 'conflict';
25
+ readonly code: 'no-route' | 'unknown-model' | 'capabilities-unmet' | 'invalid-plan' | 'expired-plan' | 'stale-candidate' | 'conflict' | 'quote-mismatch';
26
26
  readonly diagnostic?: RouteAvailabilityDiagnostic | undefined;
27
- constructor(message: string, code: 'no-route' | 'unknown-model' | 'capabilities-unmet' | 'invalid-plan' | 'expired-plan' | 'stale-candidate' | 'conflict', diagnostic?: RouteAvailabilityDiagnostic | undefined);
27
+ constructor(message: string, code: 'no-route' | 'unknown-model' | 'capabilities-unmet' | 'invalid-plan' | 'expired-plan' | 'stale-candidate' | 'conflict' | 'quote-mismatch', diagnostic?: RouteAvailabilityDiagnostic | undefined);
28
28
  }
29
29
  export declare const subjectRef: (subject: VerifiedRoutingSubject) => string;
30
30
  export declare const routingOwnerRef: (subject: VerifiedRoutingSubject) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"route-planner-state.d.ts","sourceRoot":"","sources":["../src/route-planner-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,2BAA2B,EAC3B,SAAS,EACT,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,eAAgB,SAAQ,oBAAoB;IAC3D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,SAAS,eAAe,EAAE,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,cAAe,SAAQ,mBAAmB;IACzD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,cAAe,SAAQ,KAAK;IAGrC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,eAAe,GAAG,oBAAoB,GAAG,cAAc,GAAG,cAAc,GAAG,iBAAiB,GAAG,UAAU;IACrI,QAAQ,CAAC,UAAU,CAAC;gBAFpB,OAAO,EAAE,MAAM,EACN,IAAI,EAAE,UAAU,GAAG,eAAe,GAAG,oBAAoB,GAAG,cAAc,GAAG,cAAc,GAAG,iBAAiB,GAAG,UAAU,EAC5H,UAAU,CAAC,yCAA6B;CAKpD;AAED,eAAO,MAAM,UAAU,YAAa,sBAAsB,KAAG,MACJ,CAAC;AAE1D,eAAO,MAAM,eAAe,YAAa,sBAAsB,KAAG,MAC3C,CAAC;AAExB,eAAO,MAAM,WAAW,YACb,sBAAsB,eAClB,MAAM,gBACL,MAAM,KACnB,MAAmF,CAAC;AAEvF,eAAO,MAAM,gBAAgB,SACrB,WAAW,aACN,QAAQ,WAAW,CAAC,KAC9B,WAKD,CAAC;AAEH,qBAAa,mBAAoB,YAAW,SAAS;IACnD,OAAO,CAAC,QAAQ,CAAK;IAErB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM;CAIvD"}
1
+ {"version":3,"file":"route-planner-state.d.ts","sourceRoot":"","sources":["../src/route-planner-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EACT,2BAA2B,EAC3B,SAAS,EACT,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,eAAgB,SAAQ,oBAAoB;IAC3D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,SAAS,eAAe,EAAE,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,cAAe,SAAQ,mBAAmB;IACzD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,cAAe,SAAQ,KAAK;IAGrC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,eAAe,GAAG,oBAAoB,GAAG,cAAc,GAAG,cAAc,GAAG,iBAAiB,GAAG,UAAU,GACjI,gBAAgB;IACpB,QAAQ,CAAC,UAAU,CAAC;gBAHpB,OAAO,EAAE,MAAM,EACN,IAAI,EAAE,UAAU,GAAG,eAAe,GAAG,oBAAoB,GAAG,cAAc,GAAG,cAAc,GAAG,iBAAiB,GAAG,UAAU,GACjI,gBAAgB,EACX,UAAU,CAAC,yCAA6B;CAKpD;AAED,eAAO,MAAM,UAAU,YAAa,sBAAsB,KAAG,MACJ,CAAC;AAE1D,eAAO,MAAM,eAAe,YAAa,sBAAsB,KAAG,MAC3C,CAAC;AAExB,eAAO,MAAM,WAAW,YACb,sBAAsB,eAClB,MAAM,gBACL,MAAM,KACnB,MAAmF,CAAC;AAEvF,eAAO,MAAM,gBAAgB,SACrB,WAAW,aACN,QAAQ,WAAW,CAAC,KAC9B,WAKD,CAAC;AAEH,qBAAa,mBAAoB,YAAW,SAAS;IACnD,OAAO,CAAC,QAAQ,CAAK;IAErB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM;CAIvD"}
@@ -1 +1 @@
1
- {"version":3,"file":"route-planner-state.js","sourceRoot":"","sources":["../src/route-planner-state.ts"],"names":[],"mappings":"AAiCA,MAAM,OAAO,cAAe,SAAQ,KAAK;IAG5B;IACA;IAHX,YACE,OAAe,EACN,IAA4H,EAC5H,UAAwC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,SAAI,GAAJ,IAAI,CAAwH;QAC5H,eAAU,GAAV,UAAU,CAA8B;QAGjD,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAA+B,EAAU,EAAE,CACpE,GAAG,OAAO,CAAC,YAAY,SAAS,OAAO,CAAC,aAAa,EAAE,CAAC;AAE1D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAA+B,EAAU,EAAE,CACzE,OAAO,CAAC,aAAa,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAA+B,EAC/B,WAAmB,EACnB,WAAoB,EACZ,EAAE,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,WAAW,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAiB,EACjB,QAA+B,EAClB,EAAE,CAAC,CAAC;IACjB,GAAG,IAAI;IACP,GAAG,QAAQ;IACX,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ;IAC7C,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK;CACrC,CAAC,CAAC;AAEH,MAAM,OAAO,mBAAmB;IACtB,QAAQ,GAAG,CAAC,CAAC;IAErB,IAAI,CAAC,MAAwC;QAC3C,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;QACnB,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACnD,CAAC;CACF"}
1
+ {"version":3,"file":"route-planner-state.js","sourceRoot":"","sources":["../src/route-planner-state.ts"],"names":[],"mappings":"AAiCA,MAAM,OAAO,cAAe,SAAQ,KAAK;IAG5B;IAEA;IAJX,YACE,OAAe,EACN,IACW,EACX,UAAwC;QAEjD,KAAK,CAAC,OAAO,CAAC,CAAC;QAJN,SAAI,GAAJ,IAAI,CACO;QACX,eAAU,GAAV,UAAU,CAA8B;QAGjD,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAA+B,EAAU,EAAE,CACpE,GAAG,OAAO,CAAC,YAAY,SAAS,OAAO,CAAC,aAAa,EAAE,CAAC;AAE1D,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAA+B,EAAU,EAAE,CACzE,OAAO,CAAC,aAAa,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAA+B,EAC/B,WAAmB,EACnB,WAAoB,EACZ,EAAE,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,WAAW,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAEvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,IAAiB,EACjB,QAA+B,EAClB,EAAE,CAAC,CAAC;IACjB,GAAG,IAAI;IACP,GAAG,QAAQ;IACX,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ;IAC7C,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK;CACrC,CAAC,CAAC;AAEH,MAAM,OAAO,mBAAmB;IACtB,QAAQ,GAAG,CAAC,CAAC;IAErB,IAAI,CAAC,MAAwC;QAC3C,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;QACnB,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IACnD,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { type ModelEquivalenceCouncil } from './equivalence-council.js';
2
- import type { AccountDirectoryPort, AffinityDescription, Clock, IdFactory, PreparedRouteAttempt, AffinityMutationEvent, RoutePlan, RoutePlanInput, RoutePlanner, VerifiedRoutingSubject, RouteModelInventoryEntry } from './routing-contracts.js';
2
+ import type { AccountDirectoryPort, AffinityDescription, Clock, IdFactory, PreparedRouteAttempt, AffinityMutationEvent, RoutePlan, RoutePlanInput, RoutePlanner, VerifiedRoutingSubject, RouteModelInventoryEntry, RouteQuote, RouteQuoteInput } from './routing-contracts.js';
3
3
  import { InMemoryRoutePolicyProfiles } from './routing-policy.js';
4
4
  export interface InMemoryRoutePlannerOptions {
5
5
  readonly directory: AccountDirectoryPort;
@@ -30,6 +30,9 @@ export declare class InMemoryRoutePlanner implements RoutePlanner {
30
30
  constructor(options: InMemoryRoutePlannerOptions);
31
31
  listModels(subject: VerifiedRoutingSubject): Promise<readonly RouteModelInventoryEntry[]>;
32
32
  plan(subject: VerifiedRoutingSubject, input: RoutePlanInput): Promise<RoutePlan>;
33
+ quote(input: RouteQuoteInput): RouteQuote;
34
+ private assertQuoteMatches;
35
+ private keepQuoted;
33
36
  prepareAttempt(subject: VerifiedRoutingSubject, planRef: string, candidateRef: string, requestId: string, attemptIndex: number): Promise<PreparedRouteAttempt>;
34
37
  describeAffinity(subject: VerifiedRoutingSubject, key: string, workspaceId?: string): AffinityDescription | null;
35
38
  promoteAffinity(subject: VerifiedRoutingSubject, planRef: string, candidateRef: string, expectedRevision?: number): AffinityDescription;
@@ -1 +1 @@
1
- {"version":3,"file":"route-planner.d.ts","sourceRoot":"","sources":["../src/route-planner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route-planner.d.ts","sourceRoot":"","sources":["../src/route-planner.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { DEFAULT_MODEL_EQUIVALENCE_COUNCIL } from './equivalence-council.js';
2
2
  import { prepareStoredRouteAttempt } from './route-attempt.js';
3
3
  import { InMemoryRouteHealth } from './route-health.js';
4
- import { affinityRef, mergeRoutePolicy, RoutePlanError, SequentialIdFactory, routingOwnerRef, subjectRef, } from './route-planner-state.js';
4
+ import { affinityRef, RoutePlanError, SequentialIdFactory, routingOwnerRef, subjectRef, } from './route-planner-state.js';
5
5
  import { resolveRequestedTargets, selectRouteCandidates } from './route-selection.js';
6
- import { DEFAULT_ROUTE_POLICY, InMemoryRoutePolicyProfiles, resolveRoutePolicy, resolveRouteStrategy, validateRoutePolicy, } from './routing-policy.js';
6
+ import { computeRouteQuoteRef, isQuotedRouteTarget, quoteRoute, resolveQuotePolicy } from './route-quote.js';
7
+ import { InMemoryRoutePolicyProfiles, resolveRouteStrategy } from './routing-policy.js';
7
8
  export class InMemoryRoutePlanner {
8
9
  options;
9
10
  plans = new Map();
@@ -46,13 +47,15 @@ export class InMemoryRoutePlanner {
46
47
  }
47
48
  async plan(subject, input) {
48
49
  this.evictPlans();
49
- const profile = input.policyProfile
50
- ? this.profiles.list().find((entry) => entry.name === input.policyProfile)
51
- : this.profiles.active();
52
- if (input.policyProfile && !profile)
53
- throw new RoutePlanError('Unknown policy profile', 'no-route');
54
- const policy = resolveRoutePolicy(mergeRoutePolicy(profile?.policy ?? DEFAULT_ROUTE_POLICY, input.policyOverride), input);
55
- validateRoutePolicy(policy);
50
+ const { profile, policy: resolvedPolicy } = resolveQuotePolicy(input, this.profiles);
51
+ const { quote } = input;
52
+ if (quote)
53
+ this.assertQuoteMatches(input, quote, profile?.name, profile?.revision);
54
+ const policy = quote && quote.maxAttempts < resolvedPolicy.maxAttempts
55
+ ? { ...resolvedPolicy, maxAttempts: quote.maxAttempts }
56
+ : resolvedPolicy;
57
+ const inQuoteTarget = (target) => !quote || isQuotedRouteTarget(quote, target);
58
+ const inQuote = (candidate) => inQuoteTarget(candidate.target);
56
59
  const strategy = resolveRouteStrategy(policy, input);
57
60
  const affinity = input.affinityKey
58
61
  ? this.affinities.get(affinityRef(subject, input.affinityKey, input.workspaceId))
@@ -68,7 +71,8 @@ export class InMemoryRoutePlanner {
68
71
  const selection = selectRouteCandidates({
69
72
  request: input, policy, council: this.council, accounts,
70
73
  roundRobinOffset,
71
- now: this.clock.now(),
74
+ // A pinned plan resolves council freshness at the quote instant, like the quote.
75
+ now: quote ? new Date(quote.quotedAt) : this.clock.now(),
72
76
  applyAttemptLimit: false,
73
77
  });
74
78
  if (selection.kind === 'unknown-model') {
@@ -78,7 +82,9 @@ export class InMemoryRoutePlanner {
78
82
  throw new RoutePlanError('Required capabilities are unavailable', 'capabilities-unmet');
79
83
  }
80
84
  let candidates = selection.kind === 'candidates' ? [...selection.candidates] : [];
81
- if (affinity && policy.stickyAccount) {
85
+ // With a quote, an affinity to an unquoted target is ignored for selection
86
+ // (for example a sticky model the request no longer asks for).
87
+ if (affinity && policy.stickyAccount && inQuoteTarget(affinity.target)) {
82
88
  const account = accounts.find((entry) => entry.accountRef === affinity.accountRef);
83
89
  if (!account || account.readiness !== 'ready') {
84
90
  candidates = [];
@@ -93,13 +99,13 @@ export class InMemoryRoutePlanner {
93
99
  account,
94
100
  target: { ...affinity.target, requestedModel: input.requestedModel, reason: 'sticky' },
95
101
  };
96
- candidates = [sticky, ...sameAccount, ...rotated]
102
+ candidates = this.keepQuoted([sticky, ...sameAccount, ...rotated], inQuote)
97
103
  .filter((candidate) => !this.health.isSuppressed(candidate))
98
104
  .slice(0, policy.maxAttempts);
99
105
  }
100
106
  }
101
107
  else {
102
- candidates = candidates
108
+ candidates = this.keepQuoted(candidates, inQuote)
103
109
  .filter((candidate) => !this.health.isSuppressed(candidate))
104
110
  .slice(0, policy.maxAttempts);
105
111
  }
@@ -168,6 +174,26 @@ export class InMemoryRoutePlanner {
168
174
  this.trimPlans();
169
175
  return plan;
170
176
  }
177
+ quote(input) {
178
+ return quoteRoute(input, { council: this.council, profiles: this.profiles });
179
+ }
180
+ assertQuoteMatches(input, quote, profileName, profileRevision) {
181
+ const { quoteRef, ...body } = quote;
182
+ if (quote.requestedModel !== input.requestedModel
183
+ || !Number.isFinite(Date.parse(quote.quotedAt))
184
+ || quote.councilRevision !== this.council.revision
185
+ || quote.policyRevision !== (profileRevision ?? 'default')
186
+ || quoteRef !== computeRouteQuoteRef(input, profileName, body)) {
187
+ throw new RoutePlanError('Route quote does not match this plan', 'quote-mismatch');
188
+ }
189
+ }
190
+ keepQuoted(candidates, inQuote) {
191
+ const quoted = candidates.filter(inQuote);
192
+ if (candidates.length > 0 && quoted.length === 0) {
193
+ throw new RoutePlanError('No planned route is covered by the quote', 'quote-mismatch');
194
+ }
195
+ return quoted;
196
+ }
171
197
  async prepareAttempt(subject, planRef, candidateRef, requestId, attemptIndex) {
172
198
  const stored = this.plans.get(planRef);
173
199
  if (stored?.plan.councilRevision !== this.council.revision) {