@zhivex-ai/gateway 1.1.0 → 1.2.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.
- package/README.md +106 -4
- package/dist/compat.d.ts +2 -2
- package/dist/compat.d.ts.map +1 -1
- package/dist/compat.js +6 -0
- package/dist/compat.js.map +1 -1
- package/dist/history.d.ts +6 -0
- package/dist/history.d.ts.map +1 -0
- package/dist/history.js +125 -0
- package/dist/history.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +164 -27
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +4 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -11,17 +11,17 @@ The gateway now supports:
|
|
|
11
11
|
- `runAgent()`
|
|
12
12
|
- `streamAgent()`
|
|
13
13
|
|
|
14
|
-
Tool loops
|
|
14
|
+
Tool loops run in one Core execution; later model steps can fail over without replaying completed tools. Streaming fallbacks are resolved before the first provider event is emitted.
|
|
15
15
|
|
|
16
16
|
For agent routing, the gateway can also filter by `agentCapabilities`, such as provider support tier or approval-capable MCP support, before selecting the final target.
|
|
17
17
|
|
|
18
18
|
## Install
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
bun add @zhivex-ai/gateway @zhivex-ai/openai @zhivex-ai/ollama
|
|
21
|
+
bun add @zhivex-ai/gateway @zhivex-ai/core @zhivex-ai/anthropic @zhivex-ai/openai @zhivex-ai/ollama
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
Install the provider packages used by your own adapter map;
|
|
24
|
+
Install the provider packages used by your own adapter map; the examples below use OpenAI, Ollama and Anthropic.
|
|
25
25
|
|
|
26
26
|
## Usage
|
|
27
27
|
|
|
@@ -60,7 +60,7 @@ console.log(result.providerUsed);
|
|
|
60
60
|
console.log(result.attempts);
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
-
The gateway also supports `streamText()`, `generateObject()`, and `streamObject()` through one Core generation loop. A provider is fixed once its stream emits, while a later model step in the same tool loop can still fail over before emitting provider output. Object routes skip incompatible targets before making a provider call: native mode requires `structuredOutput`, prompted mode requires `jsonMode`, and auto mode accepts either capability.
|
|
63
|
+
The gateway also supports `streamText()`, `generateObject()`, and `streamObject()` through one Core generation loop. A provider is fixed once its stream emits, while a later model step in the same tool loop can still fail over before emitting provider output. Object routes skip incompatible targets before making a provider call: native mode requires `structuredOutput`, prompted mode requires `jsonMode`, and auto mode accepts either capability. In auto mode, the gateway prepares native output or a schema prompt for each destination independently, and `objectMode` reports the mode used by the final provider.
|
|
64
64
|
|
|
65
65
|
## Routing guarantees
|
|
66
66
|
|
|
@@ -68,6 +68,8 @@ The gateway also supports `streamText()`, `generateObject()`, and `streamObject(
|
|
|
68
68
|
- Text and object streaming fallback is resolved before the first event is exposed. Agent streams may expose lifecycle events such as `agent-run-start` first, but provider fallback is resolved before the first provider event. Once a provider stream emits an event, an error from that stream is propagated without mixing in another provider's transcript.
|
|
69
69
|
- `attemptTimeoutMs` and the per-provider `attemptTimeoutsMs` do more than reject the gateway promise: they abort a non-streaming provider call or a streaming call that has not produced its first event. After the first event, `streamIdleTimeoutMs` and `streamIdleTimeoutsMs` abort a provider that stops producing events; the default is 60 seconds and `false` explicitly disables it. A request-level `abortSignal` remains active for the full operation and stops pending retries, backoff, fallback routing, observers, and active streams.
|
|
70
70
|
- `ProviderHTTPError` is classified by its typed HTTP status. Status `408`, `429`, and `5xx` errors are retryable on the same target. Other `4xx` errors are not retried on that target, but an eligible fallback can still handle a provider- or model-specific rejection.
|
|
71
|
+
- Stream attempts record `provider-success` only after the provider iterator completes; `latencyMs` covers the full attempt. Failures after the first event, including provider error events and cancellation, produce a failed attempt without retry/fallback. `onAgentRoute` still fires on selection after the first provider event, before the terminal attempt exists. Iterator cleanup is best-effort and never delays timeout/cancellation or replaces the original failure.
|
|
72
|
+
- Retry waits honor finite non-negative `ProviderHTTPError.retryAfterMs`, taking the greater of that value and the configured linear backoff, capped at 60 seconds per wait. Caller cancellation interrupts the wait.
|
|
71
73
|
- Attempt diagnostics redact credential-like URL parameters and bearer tokens before they are exposed through `attempts[].errorMessage` or observers.
|
|
72
74
|
- When `maxCostPer1kTokens` is set, a target without configured or catalog pricing is rejected by default. Set `unknownCostPolicy: "allow"` on `createGateway()` only when routing to models with unknown cost is acceptable.
|
|
73
75
|
- Requests containing image attachments only route to models that declare `capabilities.vision: true`. The gateway never removes images to make a target appear compatible; if one target cannot accept the original request, it is skipped in favor of a compatible fallback.
|
|
@@ -107,3 +109,103 @@ This package is the SDK-local routing layer. It is not the Zhivex-hosted Gateway
|
|
|
107
109
|
Repository and full documentation:
|
|
108
110
|
|
|
109
111
|
- <https://github.com/Zhivex/zhivex-ai-sdk>
|
|
112
|
+
|
|
113
|
+
## Continuing canonical tool history
|
|
114
|
+
|
|
115
|
+
`GatewayRequest.messages` accepts `GatewayInputMessage[]`, a union of the existing
|
|
116
|
+
`GatewayMessage` (role/content/images) and core `ModelMessage` (role/parts).
|
|
117
|
+
Existing text/image requests remain valid. Each message must use exactly one
|
|
118
|
+
representation; `content` or `images` combined with `parts` is rejected.
|
|
119
|
+
|
|
120
|
+
```ts
|
|
121
|
+
import type { ModelMessage } from "@zhivex-ai/core";
|
|
122
|
+
import { createAnthropic } from "@zhivex-ai/anthropic";
|
|
123
|
+
import { createGateway, type GatewayRequest } from "@zhivex-ai/gateway";
|
|
124
|
+
|
|
125
|
+
const gateway = createGateway({ adapters: { anthropic: createAnthropic() } });
|
|
126
|
+
const messages: ModelMessage[] = [
|
|
127
|
+
{ role: "user", parts: [{ type: "text", text: "What is the temperature in Buenos Aires?" }] },
|
|
128
|
+
{ role: "assistant", parts: [{
|
|
129
|
+
type: "tool-call",
|
|
130
|
+
toolCall: { id: "call_weather_1", name: "weather", input: { city: "Buenos Aires" } }
|
|
131
|
+
}] },
|
|
132
|
+
{ role: "tool", parts: [{
|
|
133
|
+
type: "tool-result",
|
|
134
|
+
toolResult: {
|
|
135
|
+
toolCallId: "call_weather_1", toolName: "weather",
|
|
136
|
+
output: { temperatureC: 18 }, isError: false
|
|
137
|
+
}
|
|
138
|
+
}] }
|
|
139
|
+
];
|
|
140
|
+
const request: GatewayRequest = {
|
|
141
|
+
messages,
|
|
142
|
+
primary: { provider: "anthropic", modelId: "claude-sonnet-4-6" },
|
|
143
|
+
fallbacks: [{ provider: "anthropic", modelId: "claude-opus-4-6" }]
|
|
144
|
+
};
|
|
145
|
+
const answer = await gateway.generate(request);
|
|
146
|
+
const streamedAnswer = await gateway.streamText(request).collect();
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
Historical results are input to the model and never invoke a tool executor.
|
|
150
|
+
New tool calls retain the existing `tools`, `toolExecution`, and `maxSteps` policy.
|
|
151
|
+
For an error result, set `isError: true` and `error: { message: "..." }` instead of
|
|
152
|
+
`output`. Successful results require a JSON `output`, including strings or null.
|
|
153
|
+
Tool inputs must be JSON objects. IDs must be unique across the request; results
|
|
154
|
+
must match both ID and tool name, occur after their calls, and resolve every call
|
|
155
|
+
before another conversation turn. Multiple calls and results retain input order;
|
|
156
|
+
results can arrive in a different ID order, grouped in one or consecutive tool
|
|
157
|
+
messages. System messages must precede conversation turns.
|
|
158
|
+
|
|
159
|
+
| Surface / destination | Canonical history support |
|
|
160
|
+
| --- | --- |
|
|
161
|
+
| `generate`, `streamText` | Supported, including usage estimates, attempts, finish reasons, cancellation and routing |
|
|
162
|
+
| `generateObject`, `streamObject` | Same input validation and routing; destination must also support the requested object mode |
|
|
163
|
+
| `runAgent`, `streamAgent` | Legacy `GatewayMessage[]` only; canonical input is explicitly rejected |
|
|
164
|
+
| Anthropic Messages | Text, user images, assistant tool calls, tool results and native `is_error` |
|
|
165
|
+
| OpenAI Chat / Responses | Callable tool history, including multiple results; explicit JSON success/error envelopes |
|
|
166
|
+
| DeepSeek Chat | Same JSON envelope support; portable replay defaults to non-thinking; reasoning-only models are excluded |
|
|
167
|
+
| Qwen Chat / Responses | Same JSON envelope support; portable replay defaults to non-thinking; thinking-only models are excluded |
|
|
168
|
+
| Other / older provider adapters | Must explicitly advertise `capabilities.toolHistory`; otherwise skipped with `model-capabilities`, even if `tools` is true |
|
|
169
|
+
|
|
170
|
+
The gateway is extensible through `ModelCapabilities.toolHistory`: `"native"`
|
|
171
|
+
means the adapter preserves error state natively, and `"json"` means it honors
|
|
172
|
+
`ModelGenerateInput.toolResultFormat: "envelope"`. Anthropic is also accepted for
|
|
173
|
+
backward compatibility with its existing native mapping. An older OpenAI,
|
|
174
|
+
DeepSeek or Qwen adapter without the declaration is skipped safely. Custom
|
|
175
|
+
adapters can declare support after implementing and testing the same contract;
|
|
176
|
+
there is no provider-name allowlist for opting in.
|
|
177
|
+
|
|
178
|
+
For JSON transports, each tool result is a separate Chat tool message or Responses
|
|
179
|
+
`function_call_output`. Its content/output string contains `{ "output": <JSON> }`
|
|
180
|
+
on success or `{ "error": { "message": "..." } }` on failure. This discriminant
|
|
181
|
+
keeps an error-shaped successful value distinguishable from an actual failure.
|
|
182
|
+
Calls and results retain their IDs and order. The original canonical messages and
|
|
183
|
+
`isError` remain unchanged. Direct SDK calls keep their prior raw result format
|
|
184
|
+
unless they explicitly request the new low-level format. Anthropic keeps native
|
|
185
|
+
`is_error`; it does not receive a JSON envelope. Hosted/provider-native tools are
|
|
186
|
+
not part of this portable callable-history contract.
|
|
187
|
+
|
|
188
|
+
DeepSeek/Qwen portable replay has no private thinking state: it defaults to
|
|
189
|
+
`thinking.type: "disabled"` / `enable_thinking: false` on those destinations only.
|
|
190
|
+
Explicit reasoning/thinking requests are skipped before HTTP; thinking-only
|
|
191
|
+
models do not advertise this capability. Text before assistant tool calls is
|
|
192
|
+
supported. JSON destinations reject text interleaved after calls instead of
|
|
193
|
+
moving it to the beginning. Anthropic can preserve that interleaving natively.
|
|
194
|
+
|
|
195
|
+
Tool-free canonical text/image messages continue to use normal capability checks.
|
|
196
|
+
Audio, files, provider-data, provider metadata, unsupported roles/parts and unknown
|
|
197
|
+
fields are rejected before provider calls.
|
|
198
|
+
Validation errors contain no message content. Provider failures and caller abort
|
|
199
|
+
reasons for tool-history requests use fixed, sanitized diagnostics. Once a stream
|
|
200
|
+
emits an event, a failure terminates it without retry/fallback; `collect()` rejects
|
|
201
|
+
on both thrown errors and provider error events.
|
|
202
|
+
|
|
203
|
+
Run `bun run test packages/gateway/tests` for regressions. After `bun run build`,
|
|
204
|
+
run `bun run scripts/gateway-history-package-smoke.ts` for a tarball consumer with
|
|
205
|
+
TypeScript compilation and generation/streaming on all six transport variants
|
|
206
|
+
(Anthropic; OpenAI Chat/Responses; DeepSeek Chat; Qwen Chat/Responses). It installs
|
|
207
|
+
candidate core/gateway/provider tarballs without checkout links. Add
|
|
208
|
+
`--live --provider=openai` (or `deepseek`, `qwen`, `anthropic`) to require an
|
|
209
|
+
authorized credential and perform two bounded live calls for one provider. A missing credential is a blocked live check, not
|
|
210
|
+
a passing certification. Publication evidence and the actual version are recorded
|
|
211
|
+
in [the delivery record](../../docs/GATEWAY_TOOL_HISTORY_DELIVERY.md).
|
package/dist/compat.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ModelMessage } from "@zhivex-ai/core";
|
|
2
|
-
import type {
|
|
3
|
-
export declare const gatewayMessagesToModelMessages: (messages:
|
|
2
|
+
import type { GatewayInputMessage, GatewayModelTarget, GatewayResponse } from "./types.js";
|
|
3
|
+
export declare const gatewayMessagesToModelMessages: (messages: GatewayInputMessage[], systemPrompt?: string) => ModelMessage[];
|
|
4
4
|
export declare const createRouteDecision: (mode: GatewayResponse["routeDecision"]["mode"], intent: GatewayResponse["routeDecision"]["intent"], orderedTargets: GatewayModelTarget[]) => GatewayResponse["routeDecision"];
|
|
5
5
|
//# sourceMappingURL=compat.d.ts.map
|
package/dist/compat.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../src/compat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"compat.d.ts","sourceRoot":"","sources":["../src/compat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EACV,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EAChB,MAAM,YAAY,CAAC;AAGpB,eAAO,MAAM,8BAA8B,GACzC,UAAU,mBAAmB,EAAE,EAC/B,eAAe,MAAM,KACpB,YAAY,EA8Bd,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,MAAM,eAAe,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EAC9C,QAAQ,eAAe,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,EAClD,gBAAgB,kBAAkB,EAAE,KACnC,eAAe,CAAC,eAAe,CAMhC,CAAC"}
|
package/dist/compat.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { validateGatewayMessages } from "./history.js";
|
|
1
2
|
export const gatewayMessagesToModelMessages = (messages, systemPrompt) => {
|
|
3
|
+
validateGatewayMessages(messages);
|
|
2
4
|
const mappedMessages = [];
|
|
3
5
|
if (systemPrompt) {
|
|
4
6
|
mappedMessages.push({
|
|
@@ -7,6 +9,10 @@ export const gatewayMessagesToModelMessages = (messages, systemPrompt) => {
|
|
|
7
9
|
});
|
|
8
10
|
}
|
|
9
11
|
for (const message of messages) {
|
|
12
|
+
if ("parts" in message) {
|
|
13
|
+
mappedMessages.push(structuredClone(message));
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
10
16
|
mappedMessages.push({
|
|
11
17
|
role: message.role,
|
|
12
18
|
parts: [
|
package/dist/compat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../src/compat.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../src/compat.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC5C,QAA+B,EAC/B,YAAqB,EACL,EAAE;IAClB,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAClC,MAAM,cAAc,GAAmB,EAAE,CAAC;IAE1C,IAAI,YAAY,EAAE,CAAC;QACjB,cAAc,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACvB,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9C,SAAS;QACX,CAAC;QACD,cAAc,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE;gBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE;gBACvC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACzC,IAAI,EAAE,OAAgB;oBACtB,KAAK,EAAE,KAAK,CAAC,OAAO;oBACpB,SAAS,EAAE,KAAK,CAAC,QAAQ;iBAC1B,CAAC,CAAC,IAAI,EAAE,CAAC;aACX;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,IAA8C,EAC9C,MAAkD,EAClD,cAAoC,EACF,EAAE,CAAC,CAAC;IACtC,IAAI;IACJ,MAAM;IACN,cAAc;IACd,UAAU,EAAE,WAAW,IAAI,EAAE;IAC7B,MAAM,EAAE,cAAc,IAAI,cAAc,MAAM,UAAU;CACzD,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ModelMessage } from "@zhivex-ai/core";
|
|
2
|
+
import { type GatewayInputMessage } from "./types.js";
|
|
3
|
+
export declare const hasToolHistory: (messages: readonly ModelMessage[]) => boolean;
|
|
4
|
+
/** Validate the portable gateway subset before routing or invoking any adapter. */
|
|
5
|
+
export declare const validateGatewayMessages: (messages: GatewayInputMessage[]) => void;
|
|
6
|
+
//# sourceMappingURL=history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAgB,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AA2BpE,eAAO,MAAM,cAAc,GAAI,UAAU,SAAS,YAAY,EAAE,KAAG,OACiD,CAAC;AAErH,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,GAAI,UAAU,mBAAmB,EAAE,KAAG,IAsEzE,CAAC"}
|
package/dist/history.js
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { GatewayError } from "./types.js";
|
|
2
|
+
function invalid() {
|
|
3
|
+
// Never interpolate user content, tool IDs, arguments, or results in diagnostics.
|
|
4
|
+
throw new GatewayError("Invalid or unsupported gateway message history.", false);
|
|
5
|
+
}
|
|
6
|
+
;
|
|
7
|
+
const record = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
8
|
+
const keys = (value, allowed) => {
|
|
9
|
+
if (Object.keys(value).some((key) => !allowed.includes(key)))
|
|
10
|
+
invalid();
|
|
11
|
+
};
|
|
12
|
+
const identifier = (value) => typeof value === "string" && value.length > 0 && value.length <= 256 && !/[\u0000-\u0020\u007f]/.test(value);
|
|
13
|
+
// JSON round trips must not silently remove fields or coerce non-JSON values.
|
|
14
|
+
const json = (value, ancestors = new Set(), depth = 0) => {
|
|
15
|
+
if (depth > 100)
|
|
16
|
+
invalid();
|
|
17
|
+
if (value === null || typeof value === "string" || typeof value === "boolean")
|
|
18
|
+
return;
|
|
19
|
+
if (typeof value === "number" && Number.isFinite(value))
|
|
20
|
+
return;
|
|
21
|
+
if (typeof value !== "object" || value === null || ancestors.has(value))
|
|
22
|
+
invalid();
|
|
23
|
+
const object = value;
|
|
24
|
+
if (!Array.isArray(value) && Object.getPrototypeOf(value) !== Object.prototype && Object.getPrototypeOf(value) !== null)
|
|
25
|
+
invalid();
|
|
26
|
+
ancestors.add(object);
|
|
27
|
+
for (const item of Array.isArray(value) ? value : Object.values(object))
|
|
28
|
+
json(item, ancestors, depth + 1);
|
|
29
|
+
ancestors.delete(object);
|
|
30
|
+
};
|
|
31
|
+
export const hasToolHistory = (messages) => messages.some((message) => message.parts.some((part) => part.type === "tool-call" || part.type === "tool-result"));
|
|
32
|
+
/** Validate the portable gateway subset before routing or invoking any adapter. */
|
|
33
|
+
export const validateGatewayMessages = (messages) => {
|
|
34
|
+
if (!Array.isArray(messages))
|
|
35
|
+
invalid();
|
|
36
|
+
const calls = new Set();
|
|
37
|
+
const pending = new Map();
|
|
38
|
+
let seenConversation = false;
|
|
39
|
+
for (const message of messages) {
|
|
40
|
+
if (!record(message))
|
|
41
|
+
invalid();
|
|
42
|
+
if (!("parts" in message)) {
|
|
43
|
+
if (pending.size || (message.role !== "user" && message.role !== "assistant") || typeof message.content !== "string")
|
|
44
|
+
invalid();
|
|
45
|
+
keys(message, ["role", "content", "images"]);
|
|
46
|
+
if (message.images !== undefined) {
|
|
47
|
+
if (!Array.isArray(message.images))
|
|
48
|
+
invalid();
|
|
49
|
+
for (const image of message.images) {
|
|
50
|
+
if (!record(image) || typeof image.dataUrl !== "string" || typeof image.mimeType !== "string")
|
|
51
|
+
invalid();
|
|
52
|
+
keys(image, ["dataUrl", "mimeType"]);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
seenConversation = true;
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
keys(message, ["role", "parts"]); // Explicitly reject content/images + parts ambiguity.
|
|
59
|
+
if (!Array.isArray(message.parts) || !message.parts.length)
|
|
60
|
+
invalid();
|
|
61
|
+
if (!["system", "user", "assistant", "tool"].includes(message.role))
|
|
62
|
+
invalid();
|
|
63
|
+
if (message.role === "system" && seenConversation)
|
|
64
|
+
invalid();
|
|
65
|
+
if (message.role !== "system")
|
|
66
|
+
seenConversation = true;
|
|
67
|
+
if (pending.size && message.role !== "tool")
|
|
68
|
+
invalid();
|
|
69
|
+
for (const part of message.parts) {
|
|
70
|
+
if (!record(part))
|
|
71
|
+
invalid();
|
|
72
|
+
switch (part.type) {
|
|
73
|
+
case "text":
|
|
74
|
+
keys(part, ["type", "text"]);
|
|
75
|
+
if (message.role === "tool" || typeof part.text !== "string")
|
|
76
|
+
invalid();
|
|
77
|
+
break;
|
|
78
|
+
case "image":
|
|
79
|
+
keys(part, ["type", "image", "mediaType"]);
|
|
80
|
+
if (message.role !== "user" || typeof part.image !== "string" || (part.mediaType !== undefined && typeof part.mediaType !== "string"))
|
|
81
|
+
invalid();
|
|
82
|
+
break;
|
|
83
|
+
case "tool-call": {
|
|
84
|
+
keys(part, ["type", "toolCall"]);
|
|
85
|
+
const call = part.toolCall;
|
|
86
|
+
if (message.role !== "assistant" || !record(call))
|
|
87
|
+
invalid();
|
|
88
|
+
keys(call, ["id", "name", "input"]);
|
|
89
|
+
if (!identifier(call.id) || !identifier(call.name) || calls.has(call.id) || !record(call.input))
|
|
90
|
+
invalid();
|
|
91
|
+
json(call.input);
|
|
92
|
+
calls.add(call.id);
|
|
93
|
+
pending.set(call.id, call.name);
|
|
94
|
+
break;
|
|
95
|
+
}
|
|
96
|
+
case "tool-result": {
|
|
97
|
+
keys(part, ["type", "toolResult"]);
|
|
98
|
+
const result = part.toolResult;
|
|
99
|
+
if (message.role !== "tool" || !record(result))
|
|
100
|
+
invalid();
|
|
101
|
+
keys(result, ["toolCallId", "toolName", "output", "error", "isError"]);
|
|
102
|
+
if (!identifier(result.toolCallId) || !identifier(result.toolName) || pending.get(result.toolCallId) !== result.toolName || typeof result.isError !== "boolean")
|
|
103
|
+
invalid();
|
|
104
|
+
if (result.isError) {
|
|
105
|
+
if (result.output !== undefined || !record(result.error) || typeof result.error.message !== "string")
|
|
106
|
+
invalid();
|
|
107
|
+
keys(result.error, ["message"]);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
if (result.error !== undefined)
|
|
111
|
+
invalid();
|
|
112
|
+
json(result.output);
|
|
113
|
+
}
|
|
114
|
+
pending.delete(result.toolCallId);
|
|
115
|
+
break;
|
|
116
|
+
}
|
|
117
|
+
default:
|
|
118
|
+
invalid();
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
if (pending.size)
|
|
123
|
+
invalid();
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ZodTypeAny } from "zod";
|
|
2
2
|
import { type GatewayAgentRequest, type GatewayAgentResponse, type GatewayAgentStreamResult, type GatewayConfig, type GatewayGenerateObjectRequest, type GatewayObjectResponse, type GatewayRequest, type GatewayResponse, type GatewayStreamObjectResult, type GatewayStreamTextResult } from "./types.js";
|
|
3
3
|
export { GatewayError } from "./types.js";
|
|
4
|
-
export type { GatewayAgentRequest, GatewayAgentResponse, GatewayAgentStreamResult, GatewayAttempt, GatewayAttemptReasonCode, GatewayConfig, GatewayGenerateObjectRequest, GatewayImageAttachment, GatewayMessage, GatewayModelTarget, GatewayObjectResponse, GatewayProviderId, GatewayRequest, GatewayResponse, GatewayRouteDecisionReasonCode, GatewayRoutingMode, GatewayRoutingScoreContext, GatewayStreamObjectResult, GatewayStreamTextResult, GatewayTaskIntent, GatewayUnknownCostPolicy } from "./types.js";
|
|
4
|
+
export type { GatewayAgentRequest, GatewayAgentResponse, GatewayAgentStreamResult, GatewayAttempt, GatewayAttemptReasonCode, GatewayConfig, GatewayGenerateObjectRequest, GatewayImageAttachment, GatewayInputMessage, GatewayMessage, GatewayModelTarget, GatewayObjectResponse, GatewayProviderId, GatewayRequest, GatewayResponse, GatewayRouteDecisionReasonCode, GatewayRoutingMode, GatewayRoutingScoreContext, GatewayStreamObjectResult, GatewayStreamTextResult, GatewayTaskIntent, GatewayUnknownCostPolicy } from "./types.js";
|
|
5
5
|
export declare const createGateway: (config: GatewayConfig) => {
|
|
6
6
|
generate(request: GatewayRequest): Promise<GatewayResponse>;
|
|
7
7
|
streamText(request: GatewayRequest): GatewayStreamTextResult;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAItC,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAG7B,KAAK,aAAa,EAClB,KAAK,4BAA4B,EAEjC,KAAK,qBAAqB,EAE1B,KAAK,cAAc,EACnB,KAAK,eAAe,EAEpB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE7B,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EACV,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACd,wBAAwB,EACxB,aAAa,EACb,4BAA4B,EAC5B,sBAAsB,EACtB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,8BAA8B,EAC9B,kBAAkB,EAClB,0BAA0B,EAC1B,yBAAyB,EACzB,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AA43BpB,eAAO,MAAM,aAAa,GAAI,QAAQ,aAAa;sBA2dvB,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;wBAa7C,cAAc,GAAG,uBAAuB;mBAuBvC,OAAO,SAAS,UAAU,WACpC,4BAA4B,CAAC,OAAO,CAAC,GAC7C,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;iBA4B7B,OAAO,SAAS,UAAU,WAC5B,4BAA4B,CAAC,OAAO,CAAC,GAC7C,yBAAyB,CAAC,OAAO,CAAC;sBAqCb,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;yBAoDtD,mBAAmB,GAAG,wBAAwB;CA4DtE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { ConflictError, GuardrailTriggeredError, ProviderHTTPError, ValidationError, createAgent, generateObject, generateText, runAgent, streamAgent, streamObject, streamText } from "@zhivex-ai/core";
|
|
1
|
+
import { ConflictError, GuardrailTriggeredError, ProviderHTTPError, ValidationError, createAgent, createStructuredOutputPrompt, createTextMessage, generateObject, generateText, runAgent, streamAgent, streamObject, streamText } from "@zhivex-ai/core";
|
|
2
2
|
import { createRouteDecision, gatewayMessagesToModelMessages } from "./compat.js";
|
|
3
|
+
import { hasToolHistory, validateGatewayMessages } from "./history.js";
|
|
3
4
|
import { GatewayError } from "./types.js";
|
|
4
5
|
export { GatewayError } from "./types.js";
|
|
5
6
|
const DEFAULT_MAX_FALLBACKS = 8;
|
|
@@ -104,6 +105,8 @@ const validateTarget = (target, label) => {
|
|
|
104
105
|
}
|
|
105
106
|
};
|
|
106
107
|
const validateRouteRequest = (config, request) => {
|
|
108
|
+
if (request.messages !== undefined)
|
|
109
|
+
validateGatewayMessages(request.messages);
|
|
107
110
|
const fallbacks = request.fallbacks ?? [];
|
|
108
111
|
const maxFallbacks = getMaxFallbacks(config);
|
|
109
112
|
if (fallbacks.length > maxFallbacks) {
|
|
@@ -293,7 +296,8 @@ const normalizeError = (error) => {
|
|
|
293
296
|
return {
|
|
294
297
|
error: new GatewayError(error instanceof Error ? redactSensitiveErrorMessage(error.message) : `Provider HTTP ${status}.`, retryable),
|
|
295
298
|
retrySameTarget: retryable,
|
|
296
|
-
fallbackNextTarget: true
|
|
299
|
+
fallbackNextTarget: true,
|
|
300
|
+
retryAfterMs: error instanceof ProviderHTTPError ? error.retryAfterMs : undefined
|
|
297
301
|
};
|
|
298
302
|
}
|
|
299
303
|
if (error instanceof Error) {
|
|
@@ -351,12 +355,14 @@ const getMaxRetries = (config) => {
|
|
|
351
355
|
max: MAX_MAX_RETRIES
|
|
352
356
|
});
|
|
353
357
|
};
|
|
354
|
-
const retryBackoffMs = (config, retry) => {
|
|
358
|
+
const retryBackoffMs = (config, retry, retryAfterMs) => {
|
|
355
359
|
const base = config.retryBackoffMs ?? 200;
|
|
356
360
|
if (!Number.isFinite(base) || base < 0) {
|
|
357
361
|
throw new GatewayError("Gateway retryBackoffMs must be a finite non-negative number.", false);
|
|
358
362
|
}
|
|
359
|
-
|
|
363
|
+
const serverDelay = typeof retryAfterMs === "number" && Number.isFinite(retryAfterMs) && retryAfterMs >= 0
|
|
364
|
+
? retryAfterMs : 0;
|
|
365
|
+
return Math.min(60_000, Math.max(base * (retry + 1), serverDelay));
|
|
360
366
|
};
|
|
361
367
|
const createAttempt = (target, ok, latencyMs, targetRank, options = {}) => ({
|
|
362
368
|
provider: target.provider,
|
|
@@ -424,11 +430,78 @@ const normalizeUsage = (usage, inputText, outputText) => {
|
|
|
424
430
|
estimated: usage?.inputTokens == null || usage?.outputTokens == null || usage?.totalTokens == null
|
|
425
431
|
};
|
|
426
432
|
};
|
|
427
|
-
const getInputText = (request) => `${request.systemPrompt ?? ""}\n${request.messages.map((message) => message.content).join("\n")}`.trim();
|
|
428
|
-
const requestHasImages = (request) => request.messages?.some((message) => (message.images?.length ?? 0) > 0) ?? false;
|
|
433
|
+
const getInputText = (request) => `${request.systemPrompt ?? ""}\n${request.messages.map((message) => "parts" in message ? JSON.stringify(message.parts) : message.content).join("\n")}`.trim();
|
|
434
|
+
const requestHasImages = (request) => request.messages?.some((message) => "parts" in message ? message.parts.some((part) => part.type === "image") : (message.images?.length ?? 0) > 0) ?? false;
|
|
435
|
+
const requestHasToolHistory = (request) => request.messages?.some((message) => "parts" in message && hasToolHistory([message])) ?? false;
|
|
436
|
+
// Native Anthropic support predates the optional capability. New adapters opt in explicitly.
|
|
437
|
+
const historyTransport = (model) => model.capabilities.toolHistory ?? (model.provider === "anthropic" ? "native" : undefined);
|
|
438
|
+
const historySkipReason = (model, history) => history && (!historyTransport(model) || !model.capabilities.tools)
|
|
439
|
+
? "Skipped because model does not support the gateway tool history contract."
|
|
440
|
+
: undefined;
|
|
441
|
+
const historyInputSkipReason = (model, input) => {
|
|
442
|
+
if (!hasToolHistory(input.messages))
|
|
443
|
+
return undefined;
|
|
444
|
+
if (historyTransport(model) === "json" && input.messages.some((message) => {
|
|
445
|
+
let seenCall = false;
|
|
446
|
+
return message.parts.some((part) => {
|
|
447
|
+
if (part.type === "tool-call")
|
|
448
|
+
seenCall = true;
|
|
449
|
+
return seenCall && part.type === "text";
|
|
450
|
+
});
|
|
451
|
+
}))
|
|
452
|
+
return "Skipped because the destination cannot preserve text interleaved after tool calls.";
|
|
453
|
+
if (model.provider !== "deepseek" && model.provider !== "qwen")
|
|
454
|
+
return undefined;
|
|
455
|
+
const options = input.providerOptions ?? {};
|
|
456
|
+
const thinking = options.thinking;
|
|
457
|
+
if ((input.reasoning && (input.reasoning.effort !== "none" || input.reasoning.includeThoughts)) ||
|
|
458
|
+
thinking?.type === "enabled" || options.enable_thinking === true ||
|
|
459
|
+
(options.reasoning_effort !== undefined && options.reasoning_effort !== "none") ||
|
|
460
|
+
options.thinking_budget !== undefined) {
|
|
461
|
+
return "Skipped because portable tool history cannot replay provider-specific thinking state.";
|
|
462
|
+
}
|
|
463
|
+
return undefined;
|
|
464
|
+
};
|
|
465
|
+
const prepareHistoryInput = (model, input, enabled) => {
|
|
466
|
+
if (!enabled)
|
|
467
|
+
return input;
|
|
468
|
+
const providerOptions = { ...(input.providerOptions ?? {}) };
|
|
469
|
+
// Portable replay contains no private reasoning state. Default these hybrid models to non-thinking.
|
|
470
|
+
if (model.provider === "deepseek")
|
|
471
|
+
providerOptions.thinking = { type: "disabled" };
|
|
472
|
+
if (model.provider === "qwen")
|
|
473
|
+
providerOptions.enable_thinking = false;
|
|
474
|
+
return {
|
|
475
|
+
...input,
|
|
476
|
+
messages: structuredClone(input.messages),
|
|
477
|
+
toolResultFormat: historyTransport(model) === "json" ? "envelope" : input.toolResultFormat,
|
|
478
|
+
providerOptions
|
|
479
|
+
};
|
|
480
|
+
};
|
|
481
|
+
const historySignals = new WeakMap();
|
|
482
|
+
const historyAbortSignal = (signal) => {
|
|
483
|
+
if (!signal)
|
|
484
|
+
return undefined;
|
|
485
|
+
const existing = historySignals.get(signal);
|
|
486
|
+
if (existing)
|
|
487
|
+
return existing;
|
|
488
|
+
const controller = new AbortController();
|
|
489
|
+
const abort = () => controller.abort(new DOMException("Gateway request aborted.", "AbortError"));
|
|
490
|
+
if (signal.aborted)
|
|
491
|
+
abort();
|
|
492
|
+
else
|
|
493
|
+
signal.addEventListener("abort", abort, { once: true });
|
|
494
|
+
historySignals.set(signal, controller.signal);
|
|
495
|
+
return controller.signal;
|
|
496
|
+
};
|
|
497
|
+
const assertLegacyAgentMessages = (request) => {
|
|
498
|
+
if (request.messages?.some((message) => "parts" in message)) {
|
|
499
|
+
throw new GatewayError("Canonical gateway history is not supported by agent operations.", false);
|
|
500
|
+
}
|
|
501
|
+
};
|
|
429
502
|
const buildRequiredCapabilities = (request, extra = {}) => ({
|
|
430
503
|
...(request.requiredCapabilities ?? {}),
|
|
431
|
-
...(request.tools ? { tools: true } : {}),
|
|
504
|
+
...(request.tools || requestHasToolHistory(request) ? { tools: true } : {}),
|
|
432
505
|
...(request.toolChoice ? { toolChoice: true } : {}),
|
|
433
506
|
...(request.reasoning ? { reasoning: true } : {}),
|
|
434
507
|
...(requestHasImages(request) ? { vision: true } : {}),
|
|
@@ -448,7 +521,7 @@ const objectCapabilitySkipReason = (model, request) => {
|
|
|
448
521
|
return undefined;
|
|
449
522
|
};
|
|
450
523
|
const modelInputSkipReason = (model, input) => {
|
|
451
|
-
if (input.tools && !model.capabilities.tools) {
|
|
524
|
+
if ((input.tools || hasToolHistory(input.messages)) && !model.capabilities.tools) {
|
|
452
525
|
return "Skipped because model does not support tools.";
|
|
453
526
|
}
|
|
454
527
|
if (input.reasoning && !model.capabilities.reasoning) {
|
|
@@ -474,7 +547,7 @@ const createTextOptions = (model, request) => ({
|
|
|
474
547
|
maxTokens: request.maxTokens,
|
|
475
548
|
reasoning: request.reasoning,
|
|
476
549
|
providerOptions: request.providerOptions,
|
|
477
|
-
abortSignal: request.abortSignal
|
|
550
|
+
abortSignal: requestHasToolHistory(request) ? historyAbortSignal(request.abortSignal) : request.abortSignal
|
|
478
551
|
});
|
|
479
552
|
const enrichTextResult = (request, target, attempts, routeDecision, startedAt, result) => ({
|
|
480
553
|
...result,
|
|
@@ -548,6 +621,8 @@ export const createGateway = (config) => {
|
|
|
548
621
|
const candidates = [];
|
|
549
622
|
let notificationChain = Promise.resolve();
|
|
550
623
|
const queueAttempt = (attempt) => {
|
|
624
|
+
attempt = { ...attempt, ...(attempt.errorMessage !== undefined
|
|
625
|
+
? { errorMessage: redactSensitiveErrorMessage(attempt.errorMessage) } : {}) };
|
|
551
626
|
attempts.push(attempt);
|
|
552
627
|
notificationChain = notificationChain.then(() => notifyAttempt(config, attempt, request.abortSignal));
|
|
553
628
|
};
|
|
@@ -568,7 +643,7 @@ export const createGateway = (config) => {
|
|
|
568
643
|
catch (error) {
|
|
569
644
|
queueAttempt(createAttempt(target, false, 0, targetRank, {
|
|
570
645
|
reasonCode: "operation-skip",
|
|
571
|
-
errorMessage: error instanceof Error ? error.message : "Provider model construction failed."
|
|
646
|
+
errorMessage: !requestHasToolHistory(request) && error instanceof Error ? error.message : "Provider model construction failed."
|
|
572
647
|
}));
|
|
573
648
|
continue;
|
|
574
649
|
}
|
|
@@ -579,6 +654,14 @@ export const createGateway = (config) => {
|
|
|
579
654
|
}));
|
|
580
655
|
continue;
|
|
581
656
|
}
|
|
657
|
+
const historyReason = historySkipReason(model, requestHasToolHistory(request));
|
|
658
|
+
if (historyReason) {
|
|
659
|
+
queueAttempt(createAttempt(target, false, 0, targetRank, {
|
|
660
|
+
reasonCode: "model-capabilities",
|
|
661
|
+
errorMessage: historyReason
|
|
662
|
+
}));
|
|
663
|
+
continue;
|
|
664
|
+
}
|
|
582
665
|
const budgetReason = costBudgetSkipReason(config, request, target);
|
|
583
666
|
if (budgetReason) {
|
|
584
667
|
queueAttempt(createAttempt(target, false, 0, targetRank, {
|
|
@@ -601,6 +684,7 @@ export const createGateway = (config) => {
|
|
|
601
684
|
throw new GatewayError(attempts.at(-1)?.errorMessage ?? "No gateway target satisfied the request.", false);
|
|
602
685
|
}
|
|
603
686
|
const context = {
|
|
687
|
+
toolHistory: requestHasToolHistory(request),
|
|
604
688
|
attempts,
|
|
605
689
|
candidates,
|
|
606
690
|
routeDecision,
|
|
@@ -627,6 +711,25 @@ export const createGateway = (config) => {
|
|
|
627
711
|
const first = context.candidates[0];
|
|
628
712
|
const maxTotalAttempts = getMaxTotalAttempts(config);
|
|
629
713
|
let totalProviderAttempts = 0;
|
|
714
|
+
const prepareInput = (model, input) => {
|
|
715
|
+
const structured = input.structuredOutput;
|
|
716
|
+
if (!context.autoObject || !structured || model.capabilities.structuredOutput)
|
|
717
|
+
return input;
|
|
718
|
+
return {
|
|
719
|
+
...input,
|
|
720
|
+
structuredOutput: undefined,
|
|
721
|
+
messages: [...input.messages, createTextMessage("system", createStructuredOutputPrompt(structured.schema, {
|
|
722
|
+
name: structured.name, description: structured.description
|
|
723
|
+
}))]
|
|
724
|
+
};
|
|
725
|
+
};
|
|
726
|
+
const dispositionFor = (error) => {
|
|
727
|
+
const disposition = normalizeError(error);
|
|
728
|
+
if (context.toolHistory) {
|
|
729
|
+
disposition.error = new GatewayError("Gateway provider failed while continuing tool history.", disposition.error.retryable);
|
|
730
|
+
}
|
|
731
|
+
return disposition;
|
|
732
|
+
};
|
|
630
733
|
const reserveProviderAttempt = () => {
|
|
631
734
|
if (totalProviderAttempts >= maxTotalAttempts) {
|
|
632
735
|
throw new GatewayError(`Gateway operation exceeded the configured maximum of ${maxTotalAttempts} provider attempts.`, false);
|
|
@@ -649,7 +752,9 @@ export const createGateway = (config) => {
|
|
|
649
752
|
: context.candidates;
|
|
650
753
|
const maxRetries = getMaxRetries(config);
|
|
651
754
|
for (const candidate of candidates) {
|
|
652
|
-
const
|
|
755
|
+
const candidateInput = prepareInput(candidate.model, input);
|
|
756
|
+
const inputSkipReason = modelInputSkipReason(candidate.model, candidateInput) ??
|
|
757
|
+
(context.toolHistory ? historyInputSkipReason(candidate.model, input) : undefined);
|
|
653
758
|
if (inputSkipReason) {
|
|
654
759
|
await recordInputSkip(candidate, inputSkipReason);
|
|
655
760
|
continue;
|
|
@@ -660,7 +765,7 @@ export const createGateway = (config) => {
|
|
|
660
765
|
const control = createAttemptControl(input.abortSignal, getAttemptTimeoutMs(config, candidate.target.provider));
|
|
661
766
|
try {
|
|
662
767
|
const result = await control.waitFor(candidate.model.generate({
|
|
663
|
-
...
|
|
768
|
+
...prepareHistoryInput(candidate.model, candidateInput, context.toolHistory),
|
|
664
769
|
abortSignal: control.signal
|
|
665
770
|
}));
|
|
666
771
|
control.stopTimeout();
|
|
@@ -685,14 +790,14 @@ export const createGateway = (config) => {
|
|
|
685
790
|
}));
|
|
686
791
|
throw abortReason(input.abortSignal);
|
|
687
792
|
}
|
|
688
|
-
const disposition =
|
|
793
|
+
const disposition = dispositionFor(error);
|
|
689
794
|
await context.recordAttempt(createAttempt(candidate.target, false, Date.now() - attemptStartedAt, candidate.targetRank, {
|
|
690
795
|
retry,
|
|
691
796
|
reasonCode: "provider-error",
|
|
692
797
|
errorMessage: disposition.error.message
|
|
693
798
|
}));
|
|
694
799
|
if (retry < maxRetries && disposition.retrySameTarget) {
|
|
695
|
-
await abortableSleep(retryBackoffMs(config, retry), input.abortSignal);
|
|
800
|
+
await abortableSleep(retryBackoffMs(config, retry, disposition.retryAfterMs), input.abortSignal);
|
|
696
801
|
continue;
|
|
697
802
|
}
|
|
698
803
|
if (!disposition.fallbackNextTarget) {
|
|
@@ -711,7 +816,9 @@ export const createGateway = (config) => {
|
|
|
711
816
|
: context.candidates;
|
|
712
817
|
const maxRetries = getMaxRetries(config);
|
|
713
818
|
for (const candidate of candidates) {
|
|
714
|
-
const
|
|
819
|
+
const candidateInput = prepareInput(candidate.model, input);
|
|
820
|
+
const inputSkipReason = modelInputSkipReason(candidate.model, candidateInput) ??
|
|
821
|
+
(context.toolHistory ? historyInputSkipReason(candidate.model, input) : undefined);
|
|
715
822
|
if (inputSkipReason) {
|
|
716
823
|
await recordInputSkip(candidate, inputSkipReason);
|
|
717
824
|
continue;
|
|
@@ -727,7 +834,7 @@ export const createGateway = (config) => {
|
|
|
727
834
|
let iterator;
|
|
728
835
|
try {
|
|
729
836
|
const providerStream = await control.waitFor(candidate.model.stream({
|
|
730
|
-
...
|
|
837
|
+
...prepareHistoryInput(candidate.model, candidateInput, context.toolHistory),
|
|
731
838
|
abortSignal: control.signal
|
|
732
839
|
}));
|
|
733
840
|
iterator = providerStream[Symbol.asyncIterator]();
|
|
@@ -739,10 +846,6 @@ export const createGateway = (config) => {
|
|
|
739
846
|
throw firstEvent.value.error;
|
|
740
847
|
}
|
|
741
848
|
control.stopTimeout();
|
|
742
|
-
await context.recordAttempt(createAttempt(candidate.target, true, Date.now() - attemptStartedAt, candidate.targetRank, {
|
|
743
|
-
retry,
|
|
744
|
-
reasonCode: "provider-success"
|
|
745
|
-
}));
|
|
746
849
|
await context.lock(candidate);
|
|
747
850
|
const streamIdleTimeoutMs = getStreamIdleTimeoutMs(config, candidate.target.provider);
|
|
748
851
|
const nextEvent = async () => {
|
|
@@ -766,18 +869,39 @@ export const createGateway = (config) => {
|
|
|
766
869
|
const next = await nextEvent();
|
|
767
870
|
if (next.done) {
|
|
768
871
|
completed = true;
|
|
872
|
+
await context.recordAttempt(createAttempt(candidate.target, true, Date.now() - attemptStartedAt, candidate.targetRank, {
|
|
873
|
+
retry, reasonCode: "provider-success"
|
|
874
|
+
}));
|
|
769
875
|
return;
|
|
770
876
|
}
|
|
877
|
+
if (next.value.type === "error")
|
|
878
|
+
throw next.value.error;
|
|
771
879
|
yield next.value;
|
|
772
880
|
}
|
|
773
881
|
}
|
|
882
|
+
catch (error) {
|
|
883
|
+
const aborted = input.abortSignal?.aborted === true;
|
|
884
|
+
const diagnostic = dispositionFor(error).error;
|
|
885
|
+
const failure = aborted ? abortReason(input.abortSignal) : context.toolHistory ? diagnostic : error;
|
|
886
|
+
await context.recordAttempt(createAttempt(candidate.target, false, Date.now() - attemptStartedAt, candidate.targetRank, {
|
|
887
|
+
retry,
|
|
888
|
+
reasonCode: aborted ? "request-aborted" : "provider-error",
|
|
889
|
+
errorMessage: aborted ? abortReason(input.abortSignal).message : diagnostic.message
|
|
890
|
+
}));
|
|
891
|
+
throw failure;
|
|
892
|
+
}
|
|
774
893
|
finally {
|
|
775
894
|
if (!completed) {
|
|
776
895
|
control.abort(new DOMException("Gateway stream consumer closed.", "AbortError"));
|
|
777
896
|
}
|
|
778
897
|
control.dispose();
|
|
898
|
+
// Cleanup is best-effort: an iterator may ignore abort while next() is pending.
|
|
899
|
+
// Never let return() mask the original failure or hold collect() open.
|
|
779
900
|
if (iterator?.return) {
|
|
780
|
-
|
|
901
|
+
try {
|
|
902
|
+
void Promise.resolve(iterator.return()).catch(() => undefined);
|
|
903
|
+
}
|
|
904
|
+
catch { /* Synchronous cleanup failures are also best-effort. */ }
|
|
781
905
|
}
|
|
782
906
|
}
|
|
783
907
|
})();
|
|
@@ -788,7 +912,10 @@ export const createGateway = (config) => {
|
|
|
788
912
|
control.abort(error);
|
|
789
913
|
control.dispose();
|
|
790
914
|
if (iterator?.return) {
|
|
791
|
-
|
|
915
|
+
try {
|
|
916
|
+
void Promise.resolve(iterator.return()).catch(() => undefined);
|
|
917
|
+
}
|
|
918
|
+
catch { /* Cleanup must not prevent fallback. */ }
|
|
792
919
|
}
|
|
793
920
|
if (callerAborted) {
|
|
794
921
|
await context.recordAttempt(createAttempt(candidate.target, false, Date.now() - attemptStartedAt, candidate.targetRank, {
|
|
@@ -798,14 +925,14 @@ export const createGateway = (config) => {
|
|
|
798
925
|
}));
|
|
799
926
|
throw abortReason(input.abortSignal);
|
|
800
927
|
}
|
|
801
|
-
const disposition =
|
|
928
|
+
const disposition = dispositionFor(error);
|
|
802
929
|
await context.recordAttempt(createAttempt(candidate.target, false, Date.now() - attemptStartedAt, candidate.targetRank, {
|
|
803
930
|
retry,
|
|
804
931
|
reasonCode: "provider-error",
|
|
805
932
|
errorMessage: disposition.error.message
|
|
806
933
|
}));
|
|
807
934
|
if (retry < maxRetries && disposition.retrySameTarget) {
|
|
808
|
-
await abortableSleep(retryBackoffMs(config, retry), input.abortSignal);
|
|
935
|
+
await abortableSleep(retryBackoffMs(config, retry, disposition.retryAfterMs), input.abortSignal);
|
|
809
936
|
continue;
|
|
810
937
|
}
|
|
811
938
|
if (!disposition.fallbackNextTarget) {
|
|
@@ -825,7 +952,9 @@ export const createGateway = (config) => {
|
|
|
825
952
|
return context.winner?.model.modelId ?? first.model.modelId;
|
|
826
953
|
},
|
|
827
954
|
get capabilities() {
|
|
828
|
-
|
|
955
|
+
const capabilities = context.winner?.model.capabilities ?? first.model.capabilities;
|
|
956
|
+
// Keep the schema in Core input; each destination resolves auto independently.
|
|
957
|
+
return context.autoObject ? { ...capabilities, structuredOutput: true } : capabilities;
|
|
829
958
|
},
|
|
830
959
|
generate,
|
|
831
960
|
stream
|
|
@@ -866,6 +995,7 @@ export const createGateway = (config) => {
|
|
|
866
995
|
return message ? { reasonCode: "operation-skip", message } : undefined;
|
|
867
996
|
}
|
|
868
997
|
});
|
|
998
|
+
route.context.autoObject = (request.mode ?? "auto") === "auto";
|
|
869
999
|
const result = await generateObject({
|
|
870
1000
|
...createTextOptions(route.model, request),
|
|
871
1001
|
schema: request.schema,
|
|
@@ -873,7 +1003,9 @@ export const createGateway = (config) => {
|
|
|
873
1003
|
schemaName: request.schemaName,
|
|
874
1004
|
schemaDescription: request.schemaDescription
|
|
875
1005
|
});
|
|
876
|
-
return enrichObjectResult(request, targetForResult(route.context), route.context.attempts, route.context.routeDecision, route.context.startedAt, result
|
|
1006
|
+
return enrichObjectResult(request, targetForResult(route.context), route.context.attempts, route.context.routeDecision, route.context.startedAt, { ...result, objectMode: route.context.autoObject
|
|
1007
|
+
? (route.context.winner.model.capabilities.structuredOutput ? "native" : "prompted")
|
|
1008
|
+
: result.objectMode });
|
|
877
1009
|
},
|
|
878
1010
|
streamObject(request) {
|
|
879
1011
|
const route = createStandardRoute(request, {
|
|
@@ -883,6 +1015,7 @@ export const createGateway = (config) => {
|
|
|
883
1015
|
return message ? { reasonCode: "operation-skip", message } : undefined;
|
|
884
1016
|
}
|
|
885
1017
|
});
|
|
1018
|
+
route.context.autoObject = (request.mode ?? "auto") === "auto";
|
|
886
1019
|
const streamResult = streamObject({
|
|
887
1020
|
...createTextOptions(route.model, request),
|
|
888
1021
|
schema: request.schema,
|
|
@@ -896,11 +1029,14 @@ export const createGateway = (config) => {
|
|
|
896
1029
|
textStream: streamResult.textStream,
|
|
897
1030
|
collect: async () => {
|
|
898
1031
|
const result = await streamResult.collect();
|
|
899
|
-
return enrichObjectResult(request, targetForResult(route.context), route.context.attempts, route.context.routeDecision, route.context.startedAt, result
|
|
1032
|
+
return enrichObjectResult(request, targetForResult(route.context), route.context.attempts, route.context.routeDecision, route.context.startedAt, { ...result, objectMode: route.context.autoObject
|
|
1033
|
+
? (route.context.winner.model.capabilities.structuredOutput ? "native" : "prompted")
|
|
1034
|
+
: result.objectMode });
|
|
900
1035
|
}
|
|
901
1036
|
};
|
|
902
1037
|
},
|
|
903
1038
|
async runAgent(request) {
|
|
1039
|
+
assertLegacyAgentMessages(request);
|
|
904
1040
|
const route = createStandardRoute(request, {
|
|
905
1041
|
defaultIntent: "tool-heavy",
|
|
906
1042
|
getSkipReason: (model) => supportsRequiredAgentCapabilities(model, request.requiredAgentCapabilities)
|
|
@@ -943,6 +1079,7 @@ export const createGateway = (config) => {
|
|
|
943
1079
|
return enrichAgentResult(targetForResult(route.context), route.context.attempts, route.context.routeDecision, route.context.startedAt, result);
|
|
944
1080
|
},
|
|
945
1081
|
streamAgent(request) {
|
|
1082
|
+
assertLegacyAgentMessages(request);
|
|
946
1083
|
const route = createStandardRoute(request, {
|
|
947
1084
|
defaultIntent: "tool-heavy",
|
|
948
1085
|
extraRequiredCapabilities: { streaming: true },
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AgentApprovalResponse, AgentCapabilities, AgentHookFailurePolicy, AgentHandoff, AgentMemoryStore, AgentRunPolicy, AgentRunOutput, AgentRunState, AgentRunStore, AgentStoreScope, AgentStreamResult, AgentSupportTier, AgentTelemetryObserver, GenerateObjectOutput, GenerateTextOutput, JsonValue, ModelCatalog, ProviderAdapter, ReasoningConfig, StreamObjectResult, StreamTextResult, TokenUsage, ToolApprovalPolicy, ToolChoice, ToolExecutionOptions, ToolSet } from "@zhivex-ai/core";
|
|
1
|
+
import type { AgentApprovalResponse, AgentCapabilities, AgentHookFailurePolicy, AgentHandoff, AgentMemoryStore, AgentRunPolicy, AgentRunOutput, AgentRunState, AgentRunStore, AgentStoreScope, AgentStreamResult, AgentSupportTier, AgentTelemetryObserver, GenerateObjectOutput, GenerateTextOutput, JsonValue, ModelCatalog, ModelMessage, ProviderAdapter, ReasoningConfig, StreamObjectResult, StreamTextResult, TokenUsage, ToolApprovalPolicy, ToolChoice, ToolExecutionOptions, ToolSet } from "@zhivex-ai/core";
|
|
2
2
|
import type { ZodTypeAny } from "zod";
|
|
3
3
|
export type GatewayProviderId = "openai" | "xai" | "meta" | "anthropic" | "gemini" | "vertex" | "qwen" | "kimi" | "deepseek" | "zai" | "bedrock" | "ollama" | "azure-openai" | "openrouter";
|
|
4
4
|
export type GatewayRoutingMode = "speed" | "balanced" | "quality";
|
|
@@ -15,12 +15,14 @@ export interface GatewayMessage {
|
|
|
15
15
|
content: string;
|
|
16
16
|
images?: GatewayImageAttachment[];
|
|
17
17
|
}
|
|
18
|
+
/** Legacy text/image messages or canonical core messages. See the supported history subset in README. */
|
|
19
|
+
export type GatewayInputMessage = GatewayMessage | ModelMessage;
|
|
18
20
|
export interface GatewayModelTarget {
|
|
19
21
|
provider: GatewayProviderId;
|
|
20
22
|
modelId: string;
|
|
21
23
|
}
|
|
22
24
|
export interface GatewayRequest {
|
|
23
|
-
messages:
|
|
25
|
+
messages: GatewayInputMessage[];
|
|
24
26
|
systemPrompt?: string;
|
|
25
27
|
temperature?: number;
|
|
26
28
|
maxTokens?: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,oBAAoB,EACpB,OAAO,EACR,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAEtC,MAAM,MAAM,iBAAiB,GACzB,QAAQ,GACR,KAAK,GACL,MAAM,GACN,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,MAAM,GACN,UAAU,GACV,KAAK,GACL,SAAS,GACT,QAAQ,GACR,cAAc,GACd,YAAY,CAAC;AACjB,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,CAAC;AAClE,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,CAAC;AACpE,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAC1D,MAAM,MAAM,wBAAwB,GAChC,oBAAoB,GACpB,oBAAoB,GACpB,aAAa,GACb,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,GAChB,kBAAkB,CAAC;AACvB,MAAM,MAAM,8BAA8B,GACtC,eAAe,GACf,kBAAkB,GAClB,iBAAiB,CAAC;AAEtB,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,sBAAsB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAiPA,MAAM,OAAO,YAAa,SAAQ,KAAK;IAG1B;IAFX,YACE,OAAe,EACN,SAAkB;QAE3B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFN,cAAS,GAAT,SAAS,CAAS;QAG3B,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhivex-ai/gateway",
|
|
3
|
-
"version": "1.1
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "Routing and fallback helpers for Zhivex AI SDK.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@zhivex-ai/core": "^1.
|
|
44
|
+
"@zhivex-ai/core": "^1.13.0",
|
|
45
45
|
"zod": "^4.4.3"
|
|
46
46
|
}
|
|
47
47
|
}
|