@zhivex-ai/gateway 0.5.2 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -48,22 +48,24 @@ console.log(result.providerUsed);
48
48
  console.log(result.attempts);
49
49
  ```
50
50
 
51
- The gateway also supports `streamText()`, `generateObject()`, and `streamObject()` while preserving the selected target for the full request lifecycle, including tool loops.
51
+ The gateway also supports `streamText()`, `generateObject()`, and `streamObject()` while preserving the selected target for the full request lifecycle, including tool loops. Object routes skip incompatible targets before making a provider call: native mode requires `structuredOutput`, prompted mode requires `jsonMode`, and auto mode accepts either capability.
52
52
 
53
53
  For agent workloads, use `runAgent()` or `streamAgent()` to route by both regular model capabilities and agent-specific capabilities such as `supportTier`, `approvalRequests`, or `remoteMcp`.
54
54
 
55
55
  ```ts
56
56
  const agentResult = await gateway.runAgent({
57
- primary: { provider: "bedrock", modelId: "anthropic.claude-v2" },
58
- fallbacks: [{ provider: "openai", modelId: "gpt-5" }],
59
- prompt: "Use the strongest available agent provider.",
57
+ primary: { provider: "kimi", modelId: "kimi-k2.5" },
58
+ fallbacks: [{ provider: "qwen", modelId: "qwen-plus" }],
59
+ prompt: "Use hosted retrieval and an MCP map server.",
60
60
  requiredAgentCapabilities: {
61
- supportTier: "tier-a",
62
- approvalRequests: true
61
+ supportTier: "tier-b",
62
+ hostedFileSearch: true,
63
+ remoteMcp: true
63
64
  }
64
65
  });
65
66
 
66
67
  console.log(agentResult.providerUsed);
68
+ console.log(agentResult.attempts);
67
69
  console.log(agentResult.routeDecision);
68
70
  ```
69
71
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAGtC,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,4BAA4B,EAEjC,KAAK,qBAAqB,EAE1B,KAAK,cAAc,EACnB,KAAK,eAAe,EAEpB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE7B,MAAM,YAAY,CAAC;AAiSpB,eAAO,MAAM,aAAa,GAAI,QAAQ,aAAa;sBA8RvB,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;wBAK7C,cAAc,GAAG,uBAAuB;mBAyCvC,OAAO,SAAS,UAAU,WACpC,4BAA4B,CAAC,OAAO,CAAC,GAC7C,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;iBAuB7B,OAAO,SAAS,UAAU,WAAW,4BAA4B,CAAC,OAAO,CAAC,GAAG,yBAAyB,CAAC,OAAO,CAAC;sBA2DpG,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;yBA4BtD,mBAAmB,GAAG,wBAAwB;CAqEtE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AAGtC,OAAO,EAGL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,4BAA4B,EAEjC,KAAK,qBAAqB,EAE1B,KAAK,cAAc,EACnB,KAAK,eAAe,EAEpB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE7B,MAAM,YAAY,CAAC;AAuUpB,eAAO,MAAM,aAAa,GAAI,QAAQ,aAAa;sBAwTvB,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;wBAK7C,cAAc,GAAG,uBAAuB;mBAyCvC,OAAO,SAAS,UAAU,WACpC,4BAA4B,CAAC,OAAO,CAAC,GAC7C,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;iBAyB7B,OAAO,SAAS,UAAU,WAAW,4BAA4B,CAAC,OAAO,CAAC,GAAG,yBAAyB,CAAC,OAAO,CAAC;sBA6DpG,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC;yBAkCtD,mBAAmB,GAAG,wBAAwB;CAwEtE,CAAC"}
package/dist/index.js CHANGED
@@ -91,6 +91,14 @@ const normalizeError = (error) => {
91
91
  };
92
92
  const getAttemptTimeoutMs = (config, provider) => config.attemptTimeoutsMs?.[provider] ?? config.attemptTimeoutMs ?? 20_000;
93
93
  const retryBackoffMs = (config, retry) => (config.retryBackoffMs ?? 200) * (retry + 1);
94
+ const createAttempt = (target, ok, latencyMs, targetRank, options = {}) => ({
95
+ provider: target.provider,
96
+ modelId: target.modelId,
97
+ ok,
98
+ latencyMs,
99
+ targetRank,
100
+ ...options
101
+ });
94
102
  const normalizeUsage = (usage, inputText, outputText) => {
95
103
  const inputTokens = usage?.inputTokens ?? estimateTokens(inputText);
96
104
  const outputTokens = usage?.outputTokens ?? estimateTokens(outputText);
@@ -110,6 +118,20 @@ const buildRequiredCapabilities = (request, extra = {}) => ({
110
118
  ...(request.reasoning ? { reasoning: true } : {}),
111
119
  ...extra
112
120
  });
121
+ const objectCapabilitySkipReason = (adapter, target, request) => {
122
+ const capabilities = adapter.languageModel(target.modelId).capabilities;
123
+ const mode = request.mode ?? "auto";
124
+ if (mode === "native" && !capabilities.structuredOutput) {
125
+ return "Skipped because model capabilities do not satisfy native structured output.";
126
+ }
127
+ if (mode === "prompted" && !capabilities.jsonMode) {
128
+ return "Skipped because model capabilities do not satisfy prompted JSON output.";
129
+ }
130
+ if (mode === "auto" && !capabilities.structuredOutput && !capabilities.jsonMode) {
131
+ return "Skipped because model capabilities do not satisfy object output.";
132
+ }
133
+ return undefined;
134
+ };
113
135
  const createTextOptions = (adapter, target, request) => ({
114
136
  model: adapter.languageModel(target.modelId),
115
137
  messages: gatewayMessagesToModelMessages(stripImagesForUnsupportedModel(request.messages, target.provider, target.modelId), request.systemPrompt),
@@ -204,53 +226,47 @@ export const createGateway = (config) => {
204
226
  const orderedTargets = orderTargets(mode, intent, request.primary, request.fallbacks ?? [], config);
205
227
  const routeDecision = createRouteDecision(mode, intent, orderedTargets);
206
228
  const attempts = [];
207
- for (const target of orderedTargets) {
229
+ for (const [targetIndex, target] of orderedTargets.entries()) {
208
230
  const adapter = getAdapter(target.provider);
209
231
  if (!supportsRequiredCapabilities(adapter, target, buildRequiredCapabilities(request))) {
210
- attempts.push({
211
- provider: target.provider,
212
- modelId: target.modelId,
213
- ok: false,
214
- latencyMs: 0,
232
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
233
+ reasonCode: "model-capabilities",
215
234
  errorMessage: "Skipped because model capabilities do not satisfy the request."
216
- });
235
+ }));
217
236
  continue;
218
237
  }
219
238
  if (!supportsRequiredAgentCapabilities(adapter, target, request.requiredAgentCapabilities)) {
220
- attempts.push({
221
- provider: target.provider,
222
- modelId: target.modelId,
223
- ok: false,
224
- latencyMs: 0,
239
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
240
+ reasonCode: "agent-capabilities",
225
241
  errorMessage: "Skipped because agent capabilities do not satisfy the request."
226
- });
242
+ }));
227
243
  continue;
228
244
  }
229
245
  if (!withinCostBudget(config, request, target)) {
230
- attempts.push({
231
- provider: target.provider,
232
- modelId: target.modelId,
233
- ok: false,
234
- latencyMs: 0,
246
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
247
+ reasonCode: "cost-budget",
235
248
  errorMessage: "Skipped because provider cost exceeds the configured budget."
236
- });
249
+ }));
237
250
  continue;
238
251
  }
239
252
  await config.onAgentRoute?.({
240
253
  provider: target.provider,
241
254
  modelId: target.modelId,
242
- routeDecision
255
+ routeDecision,
256
+ attempts,
257
+ targetRank: targetIndex
243
258
  });
244
259
  return {
245
260
  target,
246
261
  attempts,
247
262
  routeDecision,
248
- startedAt: Date.now()
263
+ startedAt: Date.now(),
264
+ targetRank: targetIndex
249
265
  };
250
266
  }
251
267
  throw new GatewayError(attempts.at(-1)?.errorMessage ?? "No gateway agent target satisfied the request.", false);
252
268
  };
253
- const runGenerate = async (request, operation, extraRequiredCapabilities = {}) => {
269
+ const runGenerate = async (request, operation, extraRequiredCapabilities = {}, getSkipReason) => {
254
270
  const attempts = [];
255
271
  const startedAt = Date.now();
256
272
  const { orderedTargets, routeDecision } = routeDecisionFor(request);
@@ -259,23 +275,25 @@ export const createGateway = (config) => {
259
275
  for (const [targetIndex, target] of orderedTargets.entries()) {
260
276
  const adapter = getAdapter(target.provider);
261
277
  if (!supportsRequiredCapabilities(adapter, target, requiredCapabilities)) {
262
- attempts.push({
263
- provider: target.provider,
264
- modelId: target.modelId,
265
- ok: false,
266
- latencyMs: 0,
278
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
279
+ reasonCode: "model-capabilities",
267
280
  errorMessage: "Skipped because model capabilities do not satisfy the request."
268
- });
281
+ }));
269
282
  continue;
270
283
  }
271
284
  if (!withinCostBudget(config, request, target)) {
272
- attempts.push({
273
- provider: target.provider,
274
- modelId: target.modelId,
275
- ok: false,
276
- latencyMs: 0,
285
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
286
+ reasonCode: "cost-budget",
277
287
  errorMessage: "Skipped because provider cost exceeds the configured budget."
278
- });
288
+ }));
289
+ continue;
290
+ }
291
+ const skipReason = getSkipReason?.(adapter, target);
292
+ if (skipReason) {
293
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
294
+ reasonCode: "operation-skip",
295
+ errorMessage: skipReason
296
+ }));
279
297
  continue;
280
298
  }
281
299
  for (let retry = 0; retry <= maxRetries; retry += 1) {
@@ -290,12 +308,7 @@ export const createGateway = (config) => {
290
308
  targetRank: targetIndex
291
309
  });
292
310
  const result = await withTimeout(operation(adapter, target), getAttemptTimeoutMs(config, target.provider));
293
- attempts.push({
294
- provider: target.provider,
295
- modelId: target.modelId,
296
- ok: true,
297
- latencyMs: Date.now() - attemptStartedAt
298
- });
311
+ attempts.push(createAttempt(target, true, Date.now() - attemptStartedAt, targetIndex, { retry }));
299
312
  return {
300
313
  attempts,
301
314
  target,
@@ -306,13 +319,11 @@ export const createGateway = (config) => {
306
319
  }
307
320
  catch (error) {
308
321
  const normalized = normalizeError(error);
309
- attempts.push({
310
- provider: target.provider,
311
- modelId: target.modelId,
312
- ok: false,
313
- latencyMs: Date.now() - attemptStartedAt,
314
- errorMessage: normalized.message
315
- });
322
+ attempts.push(createAttempt(target, false, Date.now() - attemptStartedAt, targetIndex, {
323
+ reasonCode: "provider-error",
324
+ errorMessage: normalized.message,
325
+ retry
326
+ }));
316
327
  await config.onAttempt?.({
317
328
  provider: target.provider,
318
329
  modelId: target.modelId,
@@ -333,7 +344,7 @@ export const createGateway = (config) => {
333
344
  const finalError = attempts.at(-1)?.errorMessage ?? "All gateway attempts failed.";
334
345
  throw new GatewayError(finalError, false);
335
346
  };
336
- const runStream = async (request, operation, extraRequiredCapabilities = {}) => {
347
+ const runStream = async (request, operation, extraRequiredCapabilities = {}, getSkipReason) => {
337
348
  const attempts = [];
338
349
  const startedAt = Date.now();
339
350
  const { orderedTargets, routeDecision } = routeDecisionFor(request);
@@ -342,23 +353,25 @@ export const createGateway = (config) => {
342
353
  for (const [targetIndex, target] of orderedTargets.entries()) {
343
354
  const adapter = getAdapter(target.provider);
344
355
  if (!supportsRequiredCapabilities(adapter, target, requiredCapabilities)) {
345
- attempts.push({
346
- provider: target.provider,
347
- modelId: target.modelId,
348
- ok: false,
349
- latencyMs: 0,
356
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
357
+ reasonCode: "model-capabilities",
350
358
  errorMessage: "Skipped because model capabilities do not satisfy the request."
351
- });
359
+ }));
352
360
  continue;
353
361
  }
354
362
  if (!withinCostBudget(config, request, target)) {
355
- attempts.push({
356
- provider: target.provider,
357
- modelId: target.modelId,
358
- ok: false,
359
- latencyMs: 0,
363
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
364
+ reasonCode: "cost-budget",
360
365
  errorMessage: "Skipped because provider cost exceeds the configured budget."
361
- });
366
+ }));
367
+ continue;
368
+ }
369
+ const skipReason = getSkipReason?.(adapter, target);
370
+ if (skipReason) {
371
+ attempts.push(createAttempt(target, false, 0, targetIndex, {
372
+ reasonCode: "operation-skip",
373
+ errorMessage: skipReason
374
+ }));
362
375
  continue;
363
376
  }
364
377
  for (let retry = 0; retry <= maxRetries; retry += 1) {
@@ -378,29 +391,37 @@ export const createGateway = (config) => {
378
391
  if (!first.done && first.value.type === "error") {
379
392
  throw first.value.error;
380
393
  }
381
- attempts.push({
382
- provider: target.provider,
383
- modelId: target.modelId,
384
- ok: true,
385
- latencyMs: Date.now() - attemptStartedAt
386
- });
394
+ const eventStream = (async function* () {
395
+ if (!first.done) {
396
+ yield first.value;
397
+ }
398
+ for (;;) {
399
+ const next = await iterator.next();
400
+ if (next.done) {
401
+ return;
402
+ }
403
+ yield next.value;
404
+ }
405
+ })();
406
+ attempts.push(createAttempt(target, true, Date.now() - attemptStartedAt, targetIndex, { retry }));
387
407
  return {
388
408
  attempts,
389
409
  target,
390
410
  startedAt,
391
411
  routeDecision,
392
- streamResult
412
+ streamResult: {
413
+ ...streamResult,
414
+ eventStream
415
+ }
393
416
  };
394
417
  }
395
418
  catch (error) {
396
419
  const normalized = normalizeError(error);
397
- attempts.push({
398
- provider: target.provider,
399
- modelId: target.modelId,
400
- ok: false,
401
- latencyMs: Date.now() - attemptStartedAt,
402
- errorMessage: normalized.message
403
- });
420
+ attempts.push(createAttempt(target, false, Date.now() - attemptStartedAt, targetIndex, {
421
+ reasonCode: "provider-error",
422
+ errorMessage: normalized.message,
423
+ retry
424
+ }));
404
425
  await config.onAttempt?.({
405
426
  provider: target.provider,
406
427
  modelId: target.modelId,
@@ -460,7 +481,7 @@ export const createGateway = (config) => {
460
481
  mode: request.mode,
461
482
  schemaName: request.schemaName,
462
483
  schemaDescription: request.schemaDescription
463
- }));
484
+ }), {}, (adapter, target) => objectCapabilitySkipReason(adapter, target, request));
464
485
  return enrichObjectResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, routed.result);
465
486
  },
466
487
  streamObject(request) {
@@ -470,7 +491,7 @@ export const createGateway = (config) => {
470
491
  mode: request.mode,
471
492
  schemaName: request.schemaName,
472
493
  schemaDescription: request.schemaDescription
473
- }));
494
+ }), {}, (adapter, target) => objectCapabilitySkipReason(adapter, target, request));
474
495
  let relayPromise;
475
496
  const ensureRelay = async () => {
476
497
  if (!relayPromise) {
@@ -526,7 +547,7 @@ export const createGateway = (config) => {
526
547
  const result = await runAgent(agent, {
527
548
  ...createAgentRunInput(request, selection.target)
528
549
  });
529
- return enrichAgentResult(selection.target, selection.attempts, selection.routeDecision, selection.startedAt, result);
550
+ return enrichAgentResult(selection.target, [...selection.attempts, createAttempt(selection.target, true, Date.now() - selection.startedAt, selection.targetRank, { retry: 0 })], selection.routeDecision, selection.startedAt, result);
530
551
  },
531
552
  streamAgent(request) {
532
553
  const selection = selectAgentTarget(request);
@@ -557,7 +578,10 @@ export const createGateway = (config) => {
557
578
  });
558
579
  return {
559
580
  streamResult,
560
- collect: async () => enrichAgentResult(selected.target, selected.attempts, selected.routeDecision, selected.startedAt, await streamResult.collect())
581
+ collect: async () => enrichAgentResult(selected.target, [
582
+ ...selected.attempts,
583
+ createAttempt(selected.target, true, Date.now() - selected.startedAt, selected.targetRank, { retry: 0 })
584
+ ], selected.routeDecision, selected.startedAt, await streamResult.collect())
561
585
  };
562
586
  });
563
587
  }
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
@@ -58,6 +58,9 @@ export interface GatewayAttempt {
58
58
  ok: boolean;
59
59
  latencyMs: number;
60
60
  errorMessage?: string;
61
+ reasonCode?: "model-capabilities" | "agent-capabilities" | "cost-budget" | "operation-skip" | "provider-error";
62
+ retry?: number;
63
+ targetRank?: number;
61
64
  }
62
65
  export interface GatewayResponse {
63
66
  text: string;
@@ -127,6 +130,8 @@ export interface GatewayConfig {
127
130
  provider: GatewayProviderId;
128
131
  modelId: string;
129
132
  routeDecision: GatewayResponse["routeDecision"];
133
+ attempts: GatewayAttempt[];
134
+ targetRank: number;
130
135
  }) => void | Promise<void>;
131
136
  }
132
137
  export declare class GatewayError extends Error {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EAEjB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EAEtB,oBAAoB,EACpB,kBAAkB,EAElB,SAAS,EACT,YAAY,EAEZ,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,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,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,MAAM,GACN,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;AAEpE,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,cAAc,EAAE,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,GAAG,OAAO,GAAG,kBAAkB,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAClI,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,cAAc,CAAC;IAC5F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,SAAS,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACpC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAC1C,yBAAyB,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC,GAAG;QAC5E,WAAW,CAAC,EAAE,gBAAgB,CAAC;KAChC,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAClD,oBAAoB,CAAC,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,CAAC;IAClE,YAAY,EAAE,iBAAiB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,UAAU,GAAG;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAC3C,aAAa,EAAE;QACb,IAAI,EAAE,kBAAkB,CAAC;QACzB,MAAM,EAAE,iBAAiB,CAAC;QAC1B,cAAc,EAAE,kBAAkB,EAAE,CAAC;QACrC,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACnC,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACzC,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,4BAA4B,CAAC,OAAO,SAAS,UAAU,CAAE,SAAQ,cAAc;IAC9F,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB,CAAC,OAAO,SAAS,UAAU,CAC/D,SAAQ,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,EAC7C,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,gBAAgB,EAAE,SAAS,CAAC;IAChF,OAAO,EAAE,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,oBAAqB,SAAQ,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC;IACzE,KAAK,EAAE,aAAa,GAAG;QACrB,aAAa,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;KACjD,CAAC;IACF,YAAY,EAAE,iBAAiB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,aAAa,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;CACjD;AAED,MAAM,WAAW,wBAAyB,SAAQ,IAAI,CAAC,iBAAiB,EAAE,SAAS,CAAC;IAClF,OAAO,EAAE,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAC9C;AAED,MAAM,WAAW,yBAAyB,CAAC,OAAO,SAAS,UAAU,CAAE,SAAQ,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;IACzH,OAAO,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,CAAC;IAC9D,gBAAgB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;IACtG,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;IACtE,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtG,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE;QACzB,QAAQ,EAAE,iBAAiB,CAAC;QAC5B,OAAO,EAAE,MAAM,CAAC;QAChB,aAAa,EAAE,eAAe,CAAC,eAAe,CAAC,CAAC;KACjD,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,qBAAa,YAAa,SAAQ,KAAK;IAGnC,QAAQ,CAAC,SAAS,EAAE,OAAO;gBAD3B,OAAO,EAAE,MAAM,EACN,SAAS,EAAE,OAAO;CAK9B"}
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":"AAqLA,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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA0LA,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": "0.5.2",
3
+ "version": "0.7.0",
4
4
  "description": "Routing and fallback helpers for Zhivex AI SDK.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -41,6 +41,6 @@
41
41
  "access": "public"
42
42
  },
43
43
  "dependencies": {
44
- "@zhivex-ai/core": "^0.9.0"
44
+ "@zhivex-ai/core": "^0.10.0"
45
45
  }
46
46
  }