@nathapp/nax-ai 0.1.14 → 0.1.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -29,6 +29,83 @@ const result = await client.complete(model, { messages: [{ role: "user", content
29
29
 
30
30
  While the API is unstable, `latest` and `next` both point at the current 0.x release, so `npm install @nathapp/nax-ai` and `npm install @nathapp/nax-ai@next` are equivalent. Canary builds are published to `canary` and are not covered by either.
31
31
 
32
+ ### Provider overrides
33
+
34
+ The bundled catalog comes from pi-ai and is a snapshot: it can carry stale pricing, and it will not know a model your provider added last week. `providerOverrides` amends it — per provider, and only with declaration data.
35
+
36
+ ```ts
37
+ import { createClient, defaultProtocols, piProviders, type ProviderOverride } from "@nathapp/nax-ai";
38
+
39
+ const providerOverrides: readonly ProviderOverride[] = [
40
+ {
41
+ provider: "openrouter",
42
+ models: [
43
+ {
44
+ id: "z-ai/glm-5.3-flash",
45
+ provider: "openrouter",
46
+ protocol: "openai-completions",
47
+ pricing: { input: 0.15, output: 0.5, cacheRead: 0.015, cacheWrite: 0 },
48
+ contextWindow: 200_000,
49
+ maxTokens: 32_768,
50
+ supportsTools: true,
51
+ thinkingLevels: ["off", "high"],
52
+ },
53
+ ],
54
+ },
55
+ ];
56
+
57
+ const client = createClient({
58
+ providers: await piProviders(["openrouter"]),
59
+ // The factory form hands the client's own overrides to the protocol side, so
60
+ // the array is written once. Prefer it whenever overrides are in play — and
61
+ // add `credentials` here too if you use a credential store (see below).
62
+ protocols: (o) => defaultProtocols({ ...o }),
63
+ providerOverrides,
64
+ });
65
+ ```
66
+
67
+ **An override must reach both catalogs.** The client prices and resolves against one; the wire resolves against another. Declaring the array on `createClient` alone is a real bug with no symptom until the first request, so `createClient` rejects it at construction. The factory form above is how you avoid writing the array twice; passing the same array to both `createClient` and `defaultProtocols({ providerOverrides })` works too.
68
+
69
+ **What an override can say.** A `ProviderOverride` carries `baseUrl`, `headers` and `models`. `baseUrl` and `headers` replace rather than merge, and apply to every model of that provider, bundled ones included — that is how a proxy or a tenant header is wired. Each entry in `models` is a full `ResolvedModel`: `pricing`, `contextWindow`, `maxTokens`, `supportsTools`, `thinkingLevels`, `thinkingLevelMap` and `supportsStrictToolSampling`.
70
+
71
+ **What it cannot say.** Declaration data only: behaviour belongs in a protocol backend, not here. An override also amends a provider — it cannot introduce one, since there would be no `stream` implementation to inherit.
72
+
73
+ **Two rules that throw rather than warn.** A model's own `provider` field must equal the override's `provider` (otherwise the request would be signed against a provider you never named), and a model the base catalog does not carry must be declared on both sides.
74
+
75
+ **Fields you do not state are inherited from a sibling.** `ResolvedModel` is narrower than the wire's model, so `name`, `baseUrl`, `input` and the provider compatibility settings come from another model of the same provider on the same protocol — preferring one that supports your declared thinking levels, and preferring this model's own bundled entry when the catalog already carries that id. State `maxTokens` and `thinkingLevelMap` explicitly when they matter: an inherited ceiling is a silent truncation, and an inherited thinking map can mark a level you declared unsupported.
76
+
77
+ ### Pinning an OpenRouter endpoint
78
+
79
+ Against an aggregator, one model id is many endpoints: different machines, different prices, different quantizations, chosen per request. A `ResolvedModel` carried on a `ProviderOverride` can pin that choice with `openRouterRouting`, which is sent verbatim as the request's `provider` field:
80
+
81
+ ```ts
82
+ const overrides = [
83
+ {
84
+ provider: "openrouter",
85
+ models: [
86
+ {
87
+ id: "deepseek/deepseek-v4-flash",
88
+ provider: "openrouter",
89
+ protocol: "openai-completions",
90
+ pricing: { input: 0.25, output: 1, cacheRead: 0, cacheWrite: 0 },
91
+ contextWindow: 163840,
92
+ supportsTools: true,
93
+ thinkingLevels: [],
94
+ openRouterRouting: { allow_fallbacks: false, only: ["deepinfra"], quantizations: ["fp8"] },
95
+ },
96
+ ],
97
+ },
98
+ ];
99
+ ```
100
+
101
+ Pass the same array to both `createClient` and `defaultProtocols` — declaring it on the client alone fails at construction with a message explaining why.
102
+
103
+ This is declaration data on a model, not a per-request option: pinning belongs to the model entry so that two runs of one configuration are served the same way. Only `protocol: "openai-completions"` can send it, and declaring it on any other protocol throws rather than being ignored.
104
+
105
+ ### Knowing which response you got
106
+
107
+ `CompleteResult` and the `done` protocol event carry `responseId` and `responseModel` when the provider reports them. Against an aggregator these are the only handle on what actually served a request: one model id can resolve to different upstream endpoints at different prices and quantizations per call, so a cost ledger that multiplies tokens by the catalog rate is approximate, and `responseId` is what lets you reconcile it afterwards (OpenRouter resolves it through `/generation?id=`). `responseModel` appears only when the provider names a model different from the one requested, so its absence is not a statement that no remap happened.
108
+
32
109
  ### Constrained sampling
33
110
 
34
111
  A `ToolDefinition` can carry an optional `constrainedSampling: { type: "json_schema"; strict: "prefer" | "require" }` to ask the provider to constrain a tool's arguments to its schema. Support is per-model, not caller-controllable — some models simply cannot honour it. `"prefer"` degrades silently to an unconstrained tool when the model lacks support, so a well-formed response is not evidence the constraint was applied; `"require"` throws instead of degrading.
package/dist/index.d.ts CHANGED
@@ -35,7 +35,7 @@ export { clampThinkingLevel } from "./protocols/thinking.ts";
35
35
  export type { CacheRetention, ConstrainedSampling, ConversationMessage, JsonSchema, Protocol, ProtocolError, ProtocolEvent, ProtocolRequest, ThinkingBlock, ThinkingLevel, ToolCall, ToolDefinition, Transport, } from "./protocols/types.ts";
36
36
  export { type Catalog, normaliseCatalog, type RawModel, type RawProvider } from "./providers/catalog.ts";
37
37
  export { defaultProviders, piProviders } from "./providers/pi-catalog.ts";
38
- export type { Pricing, PricingRates, PricingTier, ProviderAuth, ProviderOverride, ResolvedModel, ResolvedProvider, } from "./providers/types.ts";
38
+ export type { OpenRouterRouting, Pricing, PricingRates, PricingTier, ProviderAuth, ProviderOverride, ResolvedModel, ResolvedProvider, } from "./providers/types.ts";
39
39
  export type { CompleteOptions, CompleteResult, CredentialStore, Message, MessageRole, ModelRef, ProviderId, StopReason, StoredCredential, TokenUsage, } from "./types.ts";
40
40
  export { toTokenUsage, totalTokens, type UpstreamUsage } from "./usage.ts";
41
41
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACpF,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EACL,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,YAAY,EACZ,KAAK,eAAe,GACrB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,GAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,QAAQ,EACR,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACb,QAAQ,EACR,cAAc,EACd,SAAS,GACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,OAAO,EAAE,gBAAgB,EAAE,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC1E,YAAY,EACV,OAAO,EACP,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,eAAe,EACf,cAAc,EACd,eAAe,EACf,OAAO,EACP,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AACpF,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EACL,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,YAAY,EACZ,KAAK,eAAe,GACrB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,EACzB,KAAK,0BAA0B,GAChC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,YAAY,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,KAAK,SAAS,EACd,KAAK,gBAAgB,EACrB,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,UAAU,EACV,QAAQ,EACR,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACb,QAAQ,EACR,cAAc,EACd,SAAS,GACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,OAAO,EAAE,gBAAgB,EAAE,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC1E,YAAY,EACV,iBAAiB,EACjB,OAAO,EACP,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,eAAe,EACf,cAAc,EACd,eAAe,EACf,OAAO,EACP,WAAW,EACX,QAAQ,EACR,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAWhC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEpF,OAAO,EAIL,YAAY,GAEb,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,GAE1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EAKjB,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGL,cAAc,EAGd,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAgB7D,OAAO,EAAgB,gBAAgB,EAAmC,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAsB1E,OAAO,EAAE,YAAY,EAAE,WAAW,EAAsB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,EACL,0BAA0B,EAC1B,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,wBAAwB,CAAC;AAWhC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAEpF,OAAO,EAIL,YAAY,GAEb,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,yBAAyB,GAE1B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EAKjB,WAAW,GACZ,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAGL,cAAc,EAGd,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAgB7D,OAAO,EAAgB,gBAAgB,EAAmC,MAAM,wBAAwB,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAuB1E,OAAO,EAAE,YAAY,EAAE,WAAW,EAAsB,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/protocols/collect.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAA2B,MAAM,YAAY,CAAC;AAIxF,qBAAa,mBAAoB,SAAQ,KAAK;IAChC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAAjD,YAAqB,aAAa,EAAE,aAAa,EAIhD;CACF;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAgDjG"}
1
+ {"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/protocols/collect.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAA2B,MAAM,YAAY,CAAC;AAIxF,qBAAa,mBAAoB,SAAQ,KAAK;IAChC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAAjD,YAAqB,aAAa,EAAE,aAAa,EAIhD;CACF;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,CAsDjG"}
@@ -22,6 +22,7 @@ export async function collectStream(events) {
22
22
  const thinking = [];
23
23
  let usage;
24
24
  let stopReason;
25
+ let identity = {};
25
26
  for await (const event of events) {
26
27
  switch (event.type) {
27
28
  case "text-delta":
@@ -42,6 +43,10 @@ export async function collectStream(events) {
42
43
  throw new ProtocolStreamError(event.error);
43
44
  case "done":
44
45
  stopReason = event.stopReason;
46
+ identity = {
47
+ ...(event.responseId !== undefined ? { responseId: event.responseId } : {}),
48
+ ...(event.responseModel !== undefined ? { responseModel: event.responseModel } : {}),
49
+ };
45
50
  break;
46
51
  // Thinking text is not part of the answer, and a partial tool call is
47
52
  // superseded by the "tool-call" event that follows it.
@@ -59,6 +64,7 @@ export async function collectStream(events) {
59
64
  stopReason,
60
65
  ...(toolCalls.length > 0 ? { toolCalls } : {}),
61
66
  ...(thinking.length > 0 ? { thinking } : {}),
67
+ ...identity,
62
68
  };
63
69
  return result;
64
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/protocols/collect.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,MAAM,WAAW,GAAe,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;AAEpE,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACvB,aAAa;IAAlC,YAAqB,aAA4B;QAC/C,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;6BADV,aAAa;QAEhC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;IAC1E,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAoC;IACtE,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,IAAI,KAA6B,CAAC;IAClC,IAAI,UAAoD,CAAC;IAEzD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,YAAY;gBACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtB,MAAM;YACR,KAAK,WAAW;gBACd,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,UAAU;gBACb,iEAAiE;gBACjE,+DAA+D;gBAC/D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBACpB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,IAAI,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC7C,KAAK,MAAM;gBACT,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;gBAC9B,MAAM;YACR,sEAAsE;YACtE,uDAAuD;YACvD,KAAK,gBAAgB,CAAC;YACtB,KAAK,mBAAmB;gBACtB,MAAM;QACV,CAAC;IACH,CAAC;IAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,KAAK,EAAE,KAAK,IAAI,WAAW;QAC3B,UAAU;QACV,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7C,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/protocols/collect.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,MAAM,WAAW,GAAe,EAAE,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;AAEpE,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACvB,aAAa;IAAlC,YAAqB,aAA4B;QAC/C,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;6BADV,aAAa;QAEhC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;QAClC,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;IAC1E,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAoC;IACtE,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAe,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,IAAI,KAA6B,CAAC;IAClC,IAAI,UAAoD,CAAC;IACzD,IAAI,QAAQ,GAAoD,EAAE,CAAC;IAEnE,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACjC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,YAAY;gBACf,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACtB,MAAM;YACR,KAAK,WAAW;gBACd,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,UAAU;gBACb,iEAAiE;gBACjE,+DAA+D;gBAC/D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3B,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBACpB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,IAAI,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC7C,KAAK,MAAM;gBACT,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;gBAC9B,QAAQ,GAAG;oBACT,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC3E,GAAG,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrF,CAAC;gBACF,MAAM;YACR,sEAAsE;YACtE,uDAAuD;YACvD,KAAK,gBAAgB,CAAC;YACtB,KAAK,mBAAmB;gBACtB,MAAM;QACV,CAAC;IACH,CAAC;IAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IAED,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,KAAK,EAAE,KAAK,IAAI,WAAW;QAC3B,UAAU;QACV,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,GAAG,QAAQ;KACZ,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pi-client.d.ts","sourceRoot":"","sources":["../../src/protocols/pi-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,GAAG,EACH,qBAAqB,EACrB,OAAO,EACP,KAAK,EAIL,IAAI,IAAI,MAAM,EAEd,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D,OAAO,KAAK,EAEV,QAAQ,EAER,eAAe,EAEf,aAAa,EAEd,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACpD;AAED,MAAM,MAAM,UAAU,GAAG,CACvB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EACjB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,mBAAmB;AAC5B;;;;;GAKG;AACH,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,KAAK,IAAI,KACvC,aAAa,CAAC,qBAAqB,CAAC,CAAC;AAE1C,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACnF,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAmBD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,GAAG,KAAK,GAAG,MAAM,CASpH;AAkFD,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAM5E;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,mBAAmB,CAerE;AAkDD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CAmIrE;AAwDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,EAC7B,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,SAAS,aAAa,EAAE,GACxC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAWxB;AA2PD;;;;;;GAMG;AACH,KAAK,YAAY,GAAG,CAClB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EACjB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,KAC1B,aAAa,CAAC,qBAAqB,CAAC,CAAC;AAE1C,wBAAgB,YAAY,CAC1B,OAAO,GAAE,iBAAsB,EAC/B,YAAY,CAAC,EAAE,YAAY;AAC3B;;;;;GAKG;AACH,YAAY,CAAC,EAAE,YAAY,GAC1B,MAAM,CAuER"}
1
+ {"version":3,"file":"pi-client.d.ts","sourceRoot":"","sources":["../../src/protocols/pi-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,GAAG,EACH,qBAAqB,EACrB,OAAO,EAEP,KAAK,EAIL,IAAI,IAAI,MAAM,EAEd,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAOxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D,OAAO,KAAK,EAEV,QAAQ,EAER,eAAe,EAEf,aAAa,EAEd,MAAM,YAAY,CAAC;AAGpB,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACpD;AAED,MAAM,MAAM,UAAU,GAAG,CACvB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EACjB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,mBAAmB;AAC5B;;;;;GAKG;AACH,UAAU,EAAE,CAAC,QAAQ,EAAE,UAAU,KAAK,IAAI,KACvC,aAAa,CAAC,qBAAqB,CAAC,CAAC;AAE1C,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IACnF,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAmBD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,OAAO,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,GAAG,KAAK,GAAG,MAAM,CASpH;AAuFD,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAM5E;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,mBAAmB,CAerE;AAkDD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,QAAQ,CA6IrE;AAwDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,KAAK,CAAC,GAAG,CAAC,EAAE,EAC7B,QAAQ,EAAE,MAAM,EAChB,cAAc,CAAC,EAAE,SAAS,aAAa,EAAE,GACxC,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAWxB;AAqSD;;;;;;GAMG;AACH,KAAK,YAAY,GAAG,CAClB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EACjB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,KAC1B,aAAa,CAAC,qBAAqB,CAAC,CAAC;AAE1C,wBAAgB,YAAY,CAC1B,OAAO,GAAE,iBAAsB,EAC/B,YAAY,CAAC,EAAE,YAAY;AAC3B;;;;;GAKG;AACH,YAAY,CAAC,EAAE,YAAY,GAC1B,MAAM,CAuER"}
@@ -13,7 +13,7 @@
13
13
  import { getSupportedThinkingLevels } from "@earendil-works/pi-ai";
14
14
  import { builtinModels } from "@earendil-works/pi-ai/providers/all";
15
15
  import { createPiAuthResolver, toPiCredentialStore } from "../auth/pi-auth.js";
16
- import { assertOverrideModelProvider } from "../providers/override-model.js";
16
+ import { assertOverrideModelProvider, assertOverrideModelRouting } from "../providers/override-model.js";
17
17
  import { toTokenUsage, totalTokens } from "../usage.js";
18
18
  import { vendorAppHeaders } from "./client-app.js";
19
19
  import { classifyProviderError, classifyThrown, parseRetryAfter } from "./errors.js";
@@ -83,6 +83,11 @@ function toPiMessages(messages, model) {
83
83
  type: "toolCall",
84
84
  id: call.id,
85
85
  name: call.name,
86
+ // pi-ai 0.86.0 narrowed ToolCall.arguments from Record<string,
87
+ // unknown> to its own JsonObject. nax-ai does not validate tool
88
+ // arguments — it forwards what the consumer was given, the same
89
+ // way toPiTool forwards an unvalidated schema — so this asserts
90
+ // the shape rather than proving it.
86
91
  arguments: (call.input ?? {}),
87
92
  })),
88
93
  ],
@@ -260,7 +265,17 @@ export function createPiProtocol(name, deps) {
260
265
  };
261
266
  return;
262
267
  }
263
- yield { type: "done", stopReason };
268
+ // pi holds both on the terminal message and nax-ai used to drop
269
+ // them. Conditional spreads because `exactOptionalPropertyTypes`
270
+ // is on and "the provider reported nothing" must stay
271
+ // distinguishable from "reported an empty string".
272
+ const { responseId, responseModel } = event.message;
273
+ yield {
274
+ type: "done",
275
+ stopReason,
276
+ ...(responseId !== undefined ? { responseId } : {}),
277
+ ...(responseModel !== undefined ? { responseModel } : {}),
278
+ };
264
279
  return;
265
280
  }
266
281
  case "error": {
@@ -442,6 +457,10 @@ function isBetterTemplate(candidate, best) {
442
457
  * it sent (`model.maxTokens ?? template.maxTokens`) rather than clamped to the
443
458
  * template's.
444
459
  *
460
+ * When the base catalog already carries this id on this api, that entry is the
461
+ * template and none of the selection rules below apply: an amendment inherits
462
+ * from the model it amends.
463
+ *
445
464
  * `thinkingLevelMap` (and the `compat.thinkingFormat` bundled inside
446
465
  * `compat`) is inherited from the template `pickTemplate` selects, which is
447
466
  * now itself thinking-aware (issue #47) — so an inherited map is expected to
@@ -459,7 +478,15 @@ function isBetterTemplate(candidate, best) {
459
478
  * — see `deriveThinkingLevelMap`.
460
479
  */
461
480
  function synthesiseModel(base, model) {
462
- const template = pickTemplate(base.getModels(), model.protocol, model.thinkingLevels);
481
+ // An override may amend a model the base catalog already carries — correcting
482
+ // stale pricing is the usual reason, pinning routing (issue #43) the new one.
483
+ // For that id the honest template is that model itself: `pickTemplate` answers
484
+ // "what does a model of this provider on this api look like", which for an id
485
+ // the catalog already has would hand it a size-picked stranger's `maxTokens`
486
+ // and `input`. The api must match too, since `compat` is api-typed and an
487
+ // override is free to re-declare the protocol.
488
+ const own = base.getModels().find((candidate) => candidate.id === model.id && candidate.api === model.protocol);
489
+ const template = own ?? pickTemplate(base.getModels(), model.protocol, model.thinkingLevels);
463
490
  if (template === undefined) {
464
491
  throw new Error(`Provider "${base.id}" has no model on api "${model.protocol}" to template override model "${model.id}" from.`);
465
492
  }
@@ -485,9 +512,37 @@ function synthesiseModel(base, model) {
485
512
  // pi's `reasoning` is the boolean form of our level list. "off" alone is
486
513
  // no thinking support, which is exactly what `false` means here.
487
514
  reasoning: model.thinkingLevels.some((level) => level !== "off"),
515
+ // Merged onto the template's compat, never replacing it: `thinkingFormat`
516
+ // and the rest of the provider's detected settings live in the same object
517
+ // and are what translate a thinking level on the wire.
518
+ ...(model.openRouterRouting !== undefined
519
+ ? { compat: { ...template.compat, openRouterRouting: toPiOpenRouterRouting(model.openRouterRouting) } }
520
+ : {}),
488
521
  ...(thinkingLevelMap !== undefined ? { thinkingLevelMap } : {}),
489
522
  };
490
523
  }
524
+ /**
525
+ * Our routing declaration, in the shape pi's `compat` wants.
526
+ *
527
+ * A copy rather than a pass-through for one reason: our arrays are `readonly`
528
+ * and pi's are not, so spreading each present one is what makes the object
529
+ * assignable without a cast. Conditional spreads keep an undeclared preference
530
+ * out of the request entirely — `exactOptionalPropertyTypes`, and an
531
+ * `undefined`-valued key would be serialised as a stated non-preference.
532
+ */
533
+ function toPiOpenRouterRouting(routing) {
534
+ return {
535
+ ...(routing.allow_fallbacks !== undefined ? { allow_fallbacks: routing.allow_fallbacks } : {}),
536
+ ...(routing.require_parameters !== undefined ? { require_parameters: routing.require_parameters } : {}),
537
+ ...(routing.data_collection !== undefined ? { data_collection: routing.data_collection } : {}),
538
+ ...(routing.zdr !== undefined ? { zdr: routing.zdr } : {}),
539
+ ...(routing.order !== undefined ? { order: [...routing.order] } : {}),
540
+ ...(routing.only !== undefined ? { only: [...routing.only] } : {}),
541
+ ...(routing.ignore !== undefined ? { ignore: [...routing.ignore] } : {}),
542
+ ...(routing.quantizations !== undefined ? { quantizations: [...routing.quantizations] } : {}),
543
+ ...(routing.sort !== undefined ? { sort: routing.sort } : {}),
544
+ };
545
+ }
491
546
  /**
492
547
  * Builds a `thinkingLevelMap` from the override's own declared levels,
493
548
  * instead of inheriting a size-picked template's — used only when no
@@ -573,6 +628,7 @@ function applyOverrides(models, overrides) {
573
628
  // with the same message rather than one of them building a model whose
574
629
  // provider field would then pick the wrong credentials at the wire.
575
630
  assertOverrideModelProvider(override.provider, model);
631
+ assertOverrideModelRouting(model);
576
632
  byId.set(model.id, synthesiseModel(base, model));
577
633
  }
578
634
  const synthesised = [...byId.values()];
@@ -1 +1 @@
1
- {"version":3,"file":"pi-client.js","sourceRoot":"","sources":["../../src/protocols/pi-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pi-client.js","sourceRoot":"","sources":["../../src/protocols/pi-client.ts"],"names":[],"mappings":"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"}
@@ -191,6 +191,25 @@ export type ProtocolEvent = {
191
191
  } | {
192
192
  readonly type: "done";
193
193
  readonly stopReason: StopReason;
194
+ /**
195
+ * The provider's own identifier for this response, when it sent one.
196
+ *
197
+ * Opaque and provider-shaped — never parsed, compared or synthesised
198
+ * here. It exists because an aggregator's model id does not say which
199
+ * upstream endpoint answered: two calls to one id can be served at
200
+ * different prices and different quantizations, and this is the only
201
+ * handle a consumer has for asking the aggregator afterwards (OpenRouter
202
+ * resolves it through `/generation?id=`). Absent means the provider sent
203
+ * no id, which is different from an empty one.
204
+ */
205
+ readonly responseId?: string;
206
+ /**
207
+ * The model the provider says actually answered, when it names one that
208
+ * differs from the id that was requested. Present only on a remap, so
209
+ * absence means "not remapped, or not reported" — never assume it equals
210
+ * the requested id.
211
+ */
212
+ readonly responseModel?: string;
194
213
  };
195
214
  /**
196
215
  * A wire protocol.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/protocols/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/protocols/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE3G,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,QAAQ,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACnD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IAClE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,aAAa,EAAE,CAAC;CACzD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,WAAW,EAAE,EAAE,SAAS,GAAE,SAAS,gBAAgB,EAAO,GAAG,OAAO,CAqElH"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE3G,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,QAAQ,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACnD,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;IAClE,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,aAAa,EAAE,CAAC;CACzD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,SAAS,WAAW,EAAE,EAAE,SAAS,GAAE,SAAS,gBAAgB,EAAO,GAAG,OAAO,CAsElH"}
@@ -10,7 +10,7 @@
10
10
  * declaring a prohibited flow fails to resolve here.
11
11
  */
12
12
  import { assertOAuthFlowPermitted } from "../auth/oauth-policy.js";
13
- import { assertOverrideModelProvider } from "./override-model.js";
13
+ import { assertOverrideModelProvider, assertOverrideModelRouting } from "./override-model.js";
14
14
  export function normaliseCatalog(raw, overrides = []) {
15
15
  const overrideFor = new Map(overrides.map((o) => [o.provider, o]));
16
16
  const providers = new Map();
@@ -62,6 +62,7 @@ export function normaliseCatalog(raw, overrides = []) {
62
62
  for (const override of overrides) {
63
63
  for (const model of override.models ?? []) {
64
64
  assertOverrideModelProvider(override.provider, model);
65
+ assertOverrideModelRouting(model);
65
66
  setModel(override.provider, model);
66
67
  }
67
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/providers/catalog.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,23 @@
22
22
  */
23
23
  import type { ResolvedModel } from "./types.ts";
24
24
  export declare function assertOverrideModelProvider(provider: string, model: ResolvedModel): void;
25
+ /**
26
+ * The second consistency rule: a routing declaration that cannot reach the
27
+ * wire is rejected rather than ignored.
28
+ *
29
+ * pi sends `compat.openRouterRouting` from its `openai-completions` adapter
30
+ * and from no other (`dist/api/openai-completions.js:745-747`; zero
31
+ * occurrences in `anthropic-messages.js`). OpenRouter itself serves models on
32
+ * both apis, so "declared routing on an OpenRouter model" is not enough for it
33
+ * to be sent — and a consumer who pinned `quantizations: ["fp8"]` and silently
34
+ * got the routing lottery anyway has no way to notice. Same reasoning as
35
+ * `assertOverrideModelProvider`: there is no configuration this shape
36
+ * expresses correctly.
37
+ *
38
+ * An empty object is rejected for a different reason: pi's check is
39
+ * truthiness, not emptiness, so `{}` would reach the wire as `provider: {}` —
40
+ * a request field that says nothing, sent because a caller declared something
41
+ * that says nothing. Rejecting it turns a no-op into a question.
42
+ */
43
+ export declare function assertOverrideModelRouting(model: ResolvedModel): void;
25
44
  //# sourceMappingURL=override-model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"override-model.d.ts","sourceRoot":"","sources":["../../src/providers/override-model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAOxF"}
1
+ {"version":3,"file":"override-model.d.ts","sourceRoot":"","sources":["../../src/providers/override-model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAOxF;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CA6BrE"}
@@ -27,4 +27,47 @@ export function assertOverrideModelProvider(provider, model) {
27
27
  `"${model.provider}". An override amends the provider it is declared under, so the two must agree: ` +
28
28
  `either declare this model under "${model.provider}" or set its provider to "${provider}".`);
29
29
  }
30
+ /**
31
+ * The second consistency rule: a routing declaration that cannot reach the
32
+ * wire is rejected rather than ignored.
33
+ *
34
+ * pi sends `compat.openRouterRouting` from its `openai-completions` adapter
35
+ * and from no other (`dist/api/openai-completions.js:745-747`; zero
36
+ * occurrences in `anthropic-messages.js`). OpenRouter itself serves models on
37
+ * both apis, so "declared routing on an OpenRouter model" is not enough for it
38
+ * to be sent — and a consumer who pinned `quantizations: ["fp8"]` and silently
39
+ * got the routing lottery anyway has no way to notice. Same reasoning as
40
+ * `assertOverrideModelProvider`: there is no configuration this shape
41
+ * expresses correctly.
42
+ *
43
+ * An empty object is rejected for a different reason: pi's check is
44
+ * truthiness, not emptiness, so `{}` would reach the wire as `provider: {}` —
45
+ * a request field that says nothing, sent because a caller declared something
46
+ * that says nothing. Rejecting it turns a no-op into a question.
47
+ */
48
+ export function assertOverrideModelRouting(model) {
49
+ const routing = model.openRouterRouting;
50
+ if (routing === undefined)
51
+ return;
52
+ if (model.protocol !== "openai-completions") {
53
+ throw new Error(`Model "${model.id}" declares openRouterRouting but its protocol is "${model.protocol}". Only ` +
54
+ `"openai-completions" sends the OpenRouter "provider" request field, so this declaration could never ` +
55
+ `reach the wire: either declare the model on "openai-completions" or drop the routing.`);
56
+ }
57
+ const hasPreference = [
58
+ routing.allow_fallbacks,
59
+ routing.require_parameters,
60
+ routing.data_collection,
61
+ routing.zdr,
62
+ routing.order,
63
+ routing.only,
64
+ routing.ignore,
65
+ routing.quantizations,
66
+ routing.sort,
67
+ ].some((value) => value !== undefined);
68
+ if (!hasPreference) {
69
+ throw new Error(`Model "${model.id}" declares openRouterRouting that states no preference. An empty declaration would be ` +
70
+ `sent as an empty "provider" block and change nothing: state at least one preference, or omit the field.`);
71
+ }
72
+ }
30
73
  //# sourceMappingURL=override-model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"override-model.js","sourceRoot":"","sources":["../../src/providers/override-model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,MAAM,UAAU,2BAA2B,CAAC,QAAgB,EAAE,KAAoB;IAChF,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO;IACxC,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,oBAAoB,KAAK,CAAC,EAAE,gCAAgC;QAC5F,IAAI,KAAK,CAAC,QAAQ,kFAAkF;QACpG,oCAAoC,KAAK,CAAC,QAAQ,6BAA6B,QAAQ,IAAI,CAC9F,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"override-model.js","sourceRoot":"","sources":["../../src/providers/override-model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,MAAM,UAAU,2BAA2B,CAAC,QAAgB,EAAE,KAAoB;IAChF,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAAE,OAAO;IACxC,MAAM,IAAI,KAAK,CACb,0BAA0B,QAAQ,oBAAoB,KAAK,CAAC,EAAE,gCAAgC;QAC5F,IAAI,KAAK,CAAC,QAAQ,kFAAkF;QACpG,oCAAoC,KAAK,CAAC,QAAQ,6BAA6B,QAAQ,IAAI,CAC9F,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAAoB;IAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,iBAAiB,CAAC;IACxC,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO;IAElC,IAAI,KAAK,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACb,UAAU,KAAK,CAAC,EAAE,qDAAqD,KAAK,CAAC,QAAQ,UAAU;YAC7F,sGAAsG;YACtG,uFAAuF,CAC1F,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG;QACpB,OAAO,CAAC,eAAe;QACvB,OAAO,CAAC,kBAAkB;QAC1B,OAAO,CAAC,eAAe;QACvB,OAAO,CAAC,GAAG;QACX,OAAO,CAAC,KAAK;QACb,OAAO,CAAC,IAAI;QACZ,OAAO,CAAC,MAAM;QACd,OAAO,CAAC,aAAa;QACrB,OAAO,CAAC,IAAI;KACb,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;IACvC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,UAAU,KAAK,CAAC,EAAE,wFAAwF;YACxG,yGAAyG,CAC5G,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -45,6 +45,55 @@ export type ProviderAuth =
45
45
  readonly kind: "oauth";
46
46
  readonly flow: string;
47
47
  };
48
+ /**
49
+ * OpenRouter-compatible provider routing preferences, sent verbatim as the
50
+ * request's `provider` field.
51
+ *
52
+ * Named after the vendor on purpose. Unlike `protocols/types.ts`, which keeps
53
+ * one provider's shape out of the wire vocabulary, this is catalog declaration
54
+ * data about a specific aggregator's behaviour, and a neutral name
55
+ * (`routing`) would imply a portability that does not exist: pi sends this
56
+ * field from `openai-completions` only, and only an OpenRouter-compatible
57
+ * endpoint reads it.
58
+ *
59
+ * Keys stay snake_case because they are the wire field names and pass through
60
+ * unmapped — a camelCase mirror would be a translation layer with nothing to
61
+ * gain and a rename to get wrong.
62
+ *
63
+ * Why this is declaration data rather than a behaviour override: it lives on
64
+ * pi's `Model`, beside `cost` and `contextWindow`, exactly as `maxTokens` and
65
+ * `thinkingLevelMap` do. So carrying it on `ProviderOverride.models` does not
66
+ * cross the "declaration only" line in `ProviderOverride`'s docstring below.
67
+ *
68
+ * Narrower than pi's own type: `max_price`, `preferred_min_throughput`,
69
+ * `preferred_max_latency` and `enforce_distillable_text` are omitted because
70
+ * nothing needs them yet and every field here is tested. Widening later is
71
+ * source-compatible; narrowing is not.
72
+ */
73
+ export interface OpenRouterRouting {
74
+ /** Whether backup providers may serve the request. Upstream default: true. */
75
+ readonly allow_fallbacks?: boolean;
76
+ /** Restrict to providers supporting every parameter in the request. */
77
+ readonly require_parameters?: boolean;
78
+ /** `"deny"` keeps the request off endpoints that may store or train on it. */
79
+ readonly data_collection?: "deny" | "allow";
80
+ /** Restrict to Zero Data Retention endpoints. */
81
+ readonly zdr?: boolean;
82
+ /** Ordered provider slugs to try in sequence. */
83
+ readonly order?: readonly string[];
84
+ /** The only provider slugs allowed to serve this request. */
85
+ readonly only?: readonly string[];
86
+ /** Provider slugs to skip. */
87
+ readonly ignore?: readonly string[];
88
+ /**
89
+ * Quantization levels to filter endpoints by, e.g. `["fp8"]`. This is the
90
+ * reproducibility lever: one model id can otherwise be served fp4 on one
91
+ * call and fp8 on the next, which confounds any A/B across models.
92
+ */
93
+ readonly quantizations?: readonly string[];
94
+ /** Routing strategy. Omitted means OpenRouter's own default ordering. */
95
+ readonly sort?: "price" | "throughput" | "latency";
96
+ }
48
97
  export interface ResolvedProvider {
49
98
  readonly id: string;
50
99
  readonly baseUrl: string;
@@ -101,6 +150,13 @@ export interface ResolvedModel {
101
150
  * `synthesiseModel` derives.
102
151
  */
103
152
  readonly thinkingLevelMap?: Readonly<Partial<Record<ThinkingLevel, string | null>>>;
153
+ /**
154
+ * Endpoint routing for an OpenRouter-compatible aggregator, when this model
155
+ * pins one. Reaches the wire only through `ProviderOverride.models` and only
156
+ * on `protocol: "openai-completions"`; declaring it elsewhere is rejected at
157
+ * construction rather than silently ignored (issue #43).
158
+ */
159
+ readonly openRouterRouting?: OpenRouterRouting;
104
160
  }
105
161
  /**
106
162
  * Declaration-data overrides only.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,8EAA8E;AAC9E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,+DAA+D;IAC/D,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,OAAQ,SAAQ,YAAY;IAC3C;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CACzC;AAED,MAAM,MAAM,YAAY;AACtB;;;;GAIG;AACH;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1G,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,qDAAqD;IACrD,QAAQ,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAC;IAClD;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;CACrF;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;CAC5C"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -54,6 +54,14 @@ export interface CompleteResult {
54
54
  * this field there is no way to construct that follow-up turn.
55
55
  */
56
56
  readonly thinking?: readonly import("./protocols/types.ts").ThinkingBlock[];
57
+ /**
58
+ * The provider's own identifier for this response, when it sent one, and the
59
+ * model it says actually answered, when that differs from the one requested.
60
+ * Both come straight off the `done` event — see `ProtocolEvent` for why they
61
+ * are opaque and why absence is meaningful.
62
+ */
63
+ readonly responseId?: string;
64
+ readonly responseModel?: string;
57
65
  }
58
66
  /**
59
67
  * Persistent credential storage, injected by the consumer.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,qFAAqF;AACrF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAEhC,mEAAmE;AACnE,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,2CAA2C;AAC3C,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAE1D,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,gBAAgB,GAAG,OAAO,CAAC;AAErF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,OAAO,sBAAsB,EAAE,QAAQ,EAAE,CAAC;IACxE;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,OAAO,sBAAsB,EAAE,aAAa,EAAE,CAAC;CAC7E;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IACpE;;;;OAIG;IACH,MAAM,CACJ,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,KAAK,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,GACnF,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IACzC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED,MAAM,MAAM,gBAAgB,GACxB;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACjD,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0BAA0B;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,qFAAqF;AACrF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAEhC,mEAAmE;AACnE,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,2CAA2C;AAC3C,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAE1D,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,2CAA2C;AAC3C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,gBAAgB,GAAG,OAAO,CAAC;AAErF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,OAAO,sBAAsB,EAAE,QAAQ,EAAE,CAAC;IACxE;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,OAAO,sBAAsB,EAAE,aAAa,EAAE,CAAC;IAC5E;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IACpE;;;;OAIG;IACH,MAAM,CACJ,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,SAAS,KAAK,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,GACnF,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IACzC,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED,MAAM,MAAM,gBAAgB,GACxB;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACjD,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0BAA0B;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nathapp/nax-ai",
3
- "version": "0.1.14",
3
+ "version": "0.1.16",
4
4
  "description": "Provider-agnostic LLM client: completions, streaming, tool calls, usage and auth across API-key and OAuth providers.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -30,10 +30,11 @@
30
30
  "check:pi-ai-imports": "bun run scripts/check-pi-ai-imports.ts",
31
31
  "lint": "bun x biome check --error-on-warnings src/ test/ scripts/ && bun run check:no-bun-apis && bun run check:pi-ai-imports",
32
32
  "lint:fix": "bun x biome check --write src/ test/ scripts/",
33
- "prepublishOnly": "npm run build"
33
+ "prepublishOnly": "npm run build",
34
+ "catalog:diff": "node scripts/catalog-diff.ts"
34
35
  },
35
36
  "dependencies": {
36
- "@earendil-works/pi-ai": "0.85.1",
37
+ "@earendil-works/pi-ai": "0.87.1",
37
38
  "proper-lockfile": "4.1.2"
38
39
  },
39
40
  "devDependencies": {