@zhivex-ai/gateway 0.3.0 → 0.3.1-next.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 +37 -0
- package/dist/attempts.d.ts +19 -0
- package/dist/attempts.d.ts.map +1 -0
- package/dist/attempts.js +221 -0
- package/dist/attempts.js.map +1 -0
- package/dist/compat.d.ts +1 -2
- package/dist/compat.d.ts.map +1 -1
- package/dist/compat.js +0 -6
- package/dist/compat.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +157 -260
- package/dist/index.js.map +1 -1
- package/dist/policies.d.ts +10 -0
- package/dist/policies.d.ts.map +1 -0
- package/dist/policies.js +210 -0
- package/dist/policies.js.map +1 -0
- package/dist/runtime-state.d.ts +32 -0
- package/dist/runtime-state.d.ts.map +1 -0
- package/dist/runtime-state.js +158 -0
- package/dist/runtime-state.js.map +1 -0
- package/dist/types.d.ts +194 -14
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +10 -0
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,77 +1,13 @@
|
|
|
1
1
|
import { generateObject, generateText, streamObject, streamText } from "@zhivex-ai/core";
|
|
2
|
-
import {
|
|
2
|
+
import { executeRoutedOperation } from "./attempts.js";
|
|
3
|
+
import { gatewayMessagesToModelMessages, stripImagesForUnsupportedModel } from "./compat.js";
|
|
4
|
+
import { createDefaultRetryPolicy, createDefaultRouterPolicy } from "./policies.js";
|
|
5
|
+
import { createInMemoryGatewayRuntimeStore, gatewayTargetKey } from "./runtime-state.js";
|
|
3
6
|
import { GatewayError } from "./types.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const qualityBoost = model.includes("pro") || model.includes("claude") ? 2 : 0;
|
|
8
|
-
const speedBoost = model.includes("flash") || model.includes("lite") ? 2 : 0;
|
|
9
|
-
const reasoningBoost = model.includes("pro") || model.includes("claude") ? 2 : 0;
|
|
10
|
-
const catalogCost = config.modelCatalog?.find(target.provider, target.modelId)?.costPer1kTokens;
|
|
11
|
-
const costPenalty = config.providerCostsPer1kTokens?.[target.provider] ?? catalogCost ?? 0;
|
|
12
|
-
const latencyPenalty = (config.latencyBiasMs?.[target.provider] ?? 0) / 100;
|
|
13
|
-
if (mode === "speed") {
|
|
14
|
-
return speedBoost + localBoost - latencyPenalty;
|
|
15
|
-
}
|
|
16
|
-
if (mode === "quality") {
|
|
17
|
-
return qualityBoost + (intent === "reasoning" ? reasoningBoost : 0) - costPenalty;
|
|
18
|
-
}
|
|
19
|
-
return speedBoost + qualityBoost + localBoost + (intent === "reasoning" ? 1 : 0) - costPenalty - latencyPenalty;
|
|
20
|
-
};
|
|
21
|
-
const orderTargets = (mode, intent, primary, fallbacks, config) => [primary, ...fallbacks]
|
|
22
|
-
.filter((target, index, list) => list.findIndex((candidate) => candidate.provider === target.provider && candidate.modelId === target.modelId) === index)
|
|
23
|
-
.sort((left, right) => scoreTarget(mode, intent, right, config) - scoreTarget(mode, intent, left, config));
|
|
24
|
-
const supportsRequiredCapabilities = (adapter, target, requiredCapabilities) => {
|
|
25
|
-
if (!requiredCapabilities) {
|
|
26
|
-
return true;
|
|
27
|
-
}
|
|
28
|
-
const capabilities = adapter.languageModel(target.modelId).capabilities;
|
|
29
|
-
return Object.entries(requiredCapabilities).every(([key, required]) => required !== true || capabilities[key] === true);
|
|
30
|
-
};
|
|
31
|
-
const withinCostBudget = (config, request, target) => {
|
|
32
|
-
if (request.maxCostPer1kTokens == null) {
|
|
33
|
-
return true;
|
|
34
|
-
}
|
|
35
|
-
const configuredCost = config.providerCostsPer1kTokens?.[target.provider];
|
|
36
|
-
const catalogCost = config.modelCatalog?.find(target.provider, target.modelId)?.costPer1kTokens;
|
|
37
|
-
const effectiveCost = configuredCost ?? catalogCost;
|
|
38
|
-
if (effectiveCost == null) {
|
|
39
|
-
return true;
|
|
40
|
-
}
|
|
41
|
-
return effectiveCost <= request.maxCostPer1kTokens;
|
|
42
|
-
};
|
|
7
|
+
export * from "./policies.js";
|
|
8
|
+
export * from "./runtime-state.js";
|
|
9
|
+
export * from "./types.js";
|
|
43
10
|
const estimateTokens = (text) => Math.max(1, Math.ceil(text.trim().length / 4));
|
|
44
|
-
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
45
|
-
const withTimeout = async (promise, timeoutMs) => new Promise((resolve, reject) => {
|
|
46
|
-
const timer = setTimeout(() => reject(new GatewayError(`Provider timed out after ${timeoutMs}ms.`, true)), timeoutMs);
|
|
47
|
-
promise
|
|
48
|
-
.then((value) => {
|
|
49
|
-
clearTimeout(timer);
|
|
50
|
-
resolve(value);
|
|
51
|
-
})
|
|
52
|
-
.catch((error) => {
|
|
53
|
-
clearTimeout(timer);
|
|
54
|
-
reject(error);
|
|
55
|
-
});
|
|
56
|
-
});
|
|
57
|
-
const normalizeError = (error) => {
|
|
58
|
-
if (error instanceof GatewayError) {
|
|
59
|
-
return error;
|
|
60
|
-
}
|
|
61
|
-
if (error instanceof Error) {
|
|
62
|
-
const message = error.message.toLowerCase();
|
|
63
|
-
if (message.includes("timed out") || message.includes("429") || message.includes("rate")) {
|
|
64
|
-
return new GatewayError(error.message, true);
|
|
65
|
-
}
|
|
66
|
-
if (message.includes("connect") || message.includes("econnrefused") || message.includes("503")) {
|
|
67
|
-
return new GatewayError(error.message, true);
|
|
68
|
-
}
|
|
69
|
-
return new GatewayError(error.message, false);
|
|
70
|
-
}
|
|
71
|
-
return new GatewayError("Unknown gateway error.", false);
|
|
72
|
-
};
|
|
73
|
-
const getAttemptTimeoutMs = (config, provider) => config.attemptTimeoutsMs?.[provider] ?? config.attemptTimeoutMs ?? 20_000;
|
|
74
|
-
const retryBackoffMs = (config, retry) => (config.retryBackoffMs ?? 200) * (retry + 1);
|
|
75
11
|
const normalizeUsage = (usage, inputText, outputText) => {
|
|
76
12
|
const inputTokens = usage?.inputTokens ?? estimateTokens(inputText);
|
|
77
13
|
const outputTokens = usage?.outputTokens ?? estimateTokens(outputText);
|
|
@@ -83,14 +19,17 @@ const normalizeUsage = (usage, inputText, outputText) => {
|
|
|
83
19
|
estimated: usage?.inputTokens == null || usage?.outputTokens == null || usage?.totalTokens == null
|
|
84
20
|
};
|
|
85
21
|
};
|
|
86
|
-
const requestMessages = (request) => gatewayMessagesToModelMessages(stripImagesForUnsupportedModel(request.messages, request.primary.provider, request.primary.modelId), request.systemPrompt);
|
|
87
22
|
const getInputText = (request) => `${request.systemPrompt ?? ""}\n${request.messages.map((message) => message.content).join("\n")}`.trim();
|
|
23
|
+
const dedupeTargets = (primary, fallbacks = []) => [primary, ...fallbacks].filter((target, index, list) => list.findIndex((candidate) => candidate.provider === target.provider && candidate.modelId === target.modelId) === index);
|
|
88
24
|
const buildRequiredCapabilities = (request, extra = {}) => ({
|
|
89
25
|
...(request.requiredCapabilities ?? {}),
|
|
90
26
|
...(request.tools ? { tools: true } : {}),
|
|
91
27
|
...(request.reasoning ? { reasoning: true } : {}),
|
|
28
|
+
...(request.stepType === "grounded" ? { webSearch: true } : {}),
|
|
92
29
|
...extra
|
|
93
30
|
});
|
|
31
|
+
const getTaskIntent = (request) => request.taskIntent ??
|
|
32
|
+
(request.stepType === "plan" ? "reasoning" : request.stepType === "act" ? "tool-heavy" : "chat");
|
|
94
33
|
const createTextOptions = (adapter, target, request) => ({
|
|
95
34
|
model: adapter.languageModel(target.modelId),
|
|
96
35
|
messages: gatewayMessagesToModelMessages(stripImagesForUnsupportedModel(request.messages, target.provider, target.modelId), request.systemPrompt),
|
|
@@ -104,218 +43,176 @@ const createTextOptions = (adapter, target, request) => ({
|
|
|
104
43
|
providerOptions: request.providerOptions,
|
|
105
44
|
abortSignal: request.abortSignal
|
|
106
45
|
});
|
|
107
|
-
const enrichTextResult = (request, target, attempts, routeDecision, startedAt, result) => ({
|
|
46
|
+
const enrichTextResult = (request, target, attempts, routeDecision, startedAt, result, currentTime = Date.now()) => ({
|
|
108
47
|
...result,
|
|
109
48
|
providerUsed: target.provider,
|
|
110
49
|
modelUsed: target.modelId,
|
|
111
|
-
latencyMs:
|
|
50
|
+
latencyMs: currentTime - startedAt,
|
|
112
51
|
attempts,
|
|
113
52
|
usage: normalizeUsage(result.usage, getInputText(request), result.text),
|
|
114
53
|
routeDecision
|
|
115
54
|
});
|
|
116
|
-
const enrichObjectResult = (request, target, attempts, routeDecision, startedAt, result) => ({
|
|
55
|
+
const enrichObjectResult = (request, target, attempts, routeDecision, startedAt, result, currentTime = Date.now()) => ({
|
|
117
56
|
...result,
|
|
118
57
|
providerUsed: target.provider,
|
|
119
58
|
modelUsed: target.modelId,
|
|
120
|
-
latencyMs:
|
|
59
|
+
latencyMs: currentTime - startedAt,
|
|
121
60
|
attempts,
|
|
122
61
|
usage: normalizeUsage(result.usage, getInputText(request), result.text),
|
|
123
62
|
routeDecision
|
|
124
63
|
});
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
if (!
|
|
129
|
-
|
|
64
|
+
const getAttemptTimeoutMs = (config, provider) => config.attemptTimeoutsMs?.[provider] ?? config.attemptTimeoutMs ?? 20_000;
|
|
65
|
+
const withFirstEventReplay = (streamResult, firstEvent, iterator) => {
|
|
66
|
+
const eventStream = (async function* () {
|
|
67
|
+
if (!firstEvent.done) {
|
|
68
|
+
yield firstEvent.value;
|
|
69
|
+
}
|
|
70
|
+
while (true) {
|
|
71
|
+
const next = await iterator.next();
|
|
72
|
+
if (next.done) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
yield next.value;
|
|
130
76
|
}
|
|
131
|
-
|
|
77
|
+
})();
|
|
78
|
+
return {
|
|
79
|
+
...streamResult,
|
|
80
|
+
eventStream
|
|
132
81
|
};
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
82
|
+
};
|
|
83
|
+
export const createGateway = (config) => {
|
|
84
|
+
const now = config.now ?? Date.now;
|
|
85
|
+
const runtimeStore = config.runtimeStore ?? createInMemoryGatewayRuntimeStore();
|
|
86
|
+
const routerPolicy = config.routerPolicy ?? createDefaultRouterPolicy();
|
|
87
|
+
const retryPolicy = config.retryPolicy ?? createDefaultRetryPolicy({ maxRetries: config.maxRetries, backoffMs: config.retryBackoffMs });
|
|
88
|
+
const emitEvent = async (event) => {
|
|
89
|
+
await config.onEvent?.(event);
|
|
90
|
+
};
|
|
91
|
+
const getAdapter = (provider) => config.adapters[provider];
|
|
92
|
+
const planRoute = async (request, extraRequiredCapabilities = {}) => {
|
|
93
|
+
const normalizedRequest = {
|
|
94
|
+
...request,
|
|
95
|
+
taskIntent: getTaskIntent(request)
|
|
142
96
|
};
|
|
97
|
+
const targets = dedupeTargets(request.primary, request.fallbacks);
|
|
98
|
+
const runtimeStates = new Map(await Promise.all(targets.map(async (target) => [gatewayTargetKey(target), await runtimeStore.get(gatewayTargetKey(target))])));
|
|
99
|
+
const routeDecision = await routerPolicy.plan({
|
|
100
|
+
request: normalizedRequest,
|
|
101
|
+
targets,
|
|
102
|
+
requiredCapabilities: buildRequiredCapabilities(normalizedRequest, extraRequiredCapabilities),
|
|
103
|
+
adapters: config.adapters,
|
|
104
|
+
runtimeStates,
|
|
105
|
+
modelCatalog: config.modelCatalog,
|
|
106
|
+
providerCostsPer1kTokens: config.providerCostsPer1kTokens,
|
|
107
|
+
latencyBiasMs: config.latencyBiasMs,
|
|
108
|
+
now: now()
|
|
109
|
+
});
|
|
110
|
+
await emitEvent({
|
|
111
|
+
type: "route-selected",
|
|
112
|
+
request: normalizedRequest,
|
|
113
|
+
timestamp: now(),
|
|
114
|
+
decision: routeDecision
|
|
115
|
+
});
|
|
116
|
+
return routeDecision;
|
|
143
117
|
};
|
|
144
118
|
const runGenerate = async (request, operation, extraRequiredCapabilities = {}) => {
|
|
145
|
-
const
|
|
146
|
-
const
|
|
147
|
-
const
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
continue;
|
|
161
|
-
}
|
|
162
|
-
if (!withinCostBudget(config, request, target)) {
|
|
163
|
-
attempts.push({
|
|
164
|
-
provider: target.provider,
|
|
165
|
-
modelId: target.modelId,
|
|
166
|
-
ok: false,
|
|
167
|
-
latencyMs: 0,
|
|
168
|
-
errorMessage: "Skipped because provider cost exceeds the configured budget."
|
|
169
|
-
});
|
|
170
|
-
continue;
|
|
171
|
-
}
|
|
172
|
-
for (let retry = 0; retry <= maxRetries; retry += 1) {
|
|
173
|
-
const attemptStartedAt = Date.now();
|
|
174
|
-
try {
|
|
175
|
-
await config.onAttempt?.({
|
|
176
|
-
provider: target.provider,
|
|
177
|
-
modelId: target.modelId,
|
|
178
|
-
ok: true,
|
|
179
|
-
latencyMs: 0,
|
|
180
|
-
retry,
|
|
181
|
-
targetRank: targetIndex
|
|
182
|
-
});
|
|
183
|
-
const result = await withTimeout(operation(adapter, target), getAttemptTimeoutMs(config, target.provider));
|
|
184
|
-
attempts.push({
|
|
185
|
-
provider: target.provider,
|
|
186
|
-
modelId: target.modelId,
|
|
187
|
-
ok: true,
|
|
188
|
-
latencyMs: Date.now() - attemptStartedAt
|
|
189
|
-
});
|
|
190
|
-
return {
|
|
191
|
-
attempts,
|
|
192
|
-
target,
|
|
193
|
-
startedAt,
|
|
194
|
-
routeDecision,
|
|
195
|
-
result
|
|
196
|
-
};
|
|
197
|
-
}
|
|
198
|
-
catch (error) {
|
|
199
|
-
const normalized = normalizeError(error);
|
|
200
|
-
attempts.push({
|
|
201
|
-
provider: target.provider,
|
|
202
|
-
modelId: target.modelId,
|
|
203
|
-
ok: false,
|
|
204
|
-
latencyMs: Date.now() - attemptStartedAt,
|
|
205
|
-
errorMessage: normalized.message
|
|
206
|
-
});
|
|
207
|
-
await config.onAttempt?.({
|
|
208
|
-
provider: target.provider,
|
|
209
|
-
modelId: target.modelId,
|
|
210
|
-
ok: false,
|
|
211
|
-
latencyMs: Date.now() - attemptStartedAt,
|
|
212
|
-
errorMessage: normalized.message,
|
|
213
|
-
retry,
|
|
214
|
-
targetRank: targetIndex
|
|
215
|
-
});
|
|
216
|
-
if (retry < maxRetries && normalized.retryable) {
|
|
217
|
-
await sleep(retryBackoffMs(config, retry));
|
|
218
|
-
continue;
|
|
219
|
-
}
|
|
220
|
-
break;
|
|
119
|
+
const startedAt = now();
|
|
120
|
+
const routeDecision = await planRoute(request, extraRequiredCapabilities);
|
|
121
|
+
const executed = await executeRoutedOperation({
|
|
122
|
+
request,
|
|
123
|
+
routeDecision,
|
|
124
|
+
retryPolicy,
|
|
125
|
+
runtimeStore,
|
|
126
|
+
getAttemptTimeoutMs: (target) => getAttemptTimeoutMs(config, target.provider),
|
|
127
|
+
onAttempt: config.onAttempt,
|
|
128
|
+
onEvent: config.onEvent,
|
|
129
|
+
now,
|
|
130
|
+
operation: async (target) => {
|
|
131
|
+
const adapter = getAdapter(target.provider);
|
|
132
|
+
if (!adapter) {
|
|
133
|
+
throw new GatewayError(`No adapter registered for provider "${target.provider}".`, false);
|
|
221
134
|
}
|
|
135
|
+
return operation(adapter, target);
|
|
222
136
|
}
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
|
|
137
|
+
});
|
|
138
|
+
return {
|
|
139
|
+
...executed,
|
|
140
|
+
startedAt,
|
|
141
|
+
routeDecision
|
|
142
|
+
};
|
|
226
143
|
};
|
|
227
144
|
const runStream = async (request, operation, extraRequiredCapabilities = {}) => {
|
|
228
|
-
const
|
|
229
|
-
const
|
|
230
|
-
const
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
if (!withinCostBudget(config, request, target)) {
|
|
246
|
-
attempts.push({
|
|
247
|
-
provider: target.provider,
|
|
248
|
-
modelId: target.modelId,
|
|
249
|
-
ok: false,
|
|
250
|
-
latencyMs: 0,
|
|
251
|
-
errorMessage: "Skipped because provider cost exceeds the configured budget."
|
|
252
|
-
});
|
|
253
|
-
continue;
|
|
254
|
-
}
|
|
255
|
-
for (let retry = 0; retry <= maxRetries; retry += 1) {
|
|
256
|
-
const attemptStartedAt = Date.now();
|
|
145
|
+
const startedAt = now();
|
|
146
|
+
const routeDecision = await planRoute(request, { streaming: true, ...extraRequiredCapabilities });
|
|
147
|
+
const executed = await executeRoutedOperation({
|
|
148
|
+
request,
|
|
149
|
+
routeDecision,
|
|
150
|
+
retryPolicy,
|
|
151
|
+
runtimeStore,
|
|
152
|
+
getAttemptTimeoutMs: (target) => getAttemptTimeoutMs(config, target.provider),
|
|
153
|
+
onAttempt: config.onAttempt,
|
|
154
|
+
onEvent: config.onEvent,
|
|
155
|
+
now,
|
|
156
|
+
operation: async (target) => {
|
|
157
|
+
const adapter = getAdapter(target.provider);
|
|
158
|
+
if (!adapter) {
|
|
159
|
+
throw new GatewayError(`No adapter registered for provider "${target.provider}".`, false);
|
|
160
|
+
}
|
|
161
|
+
const streamResult = operation(adapter, target);
|
|
257
162
|
try {
|
|
258
|
-
await config.onAttempt?.({
|
|
259
|
-
provider: target.provider,
|
|
260
|
-
modelId: target.modelId,
|
|
261
|
-
ok: true,
|
|
262
|
-
latencyMs: 0,
|
|
263
|
-
retry,
|
|
264
|
-
targetRank: targetIndex
|
|
265
|
-
});
|
|
266
|
-
const streamResult = operation(adapter, target);
|
|
267
163
|
const iterator = streamResult.eventStream[Symbol.asyncIterator]();
|
|
268
|
-
const first = await
|
|
164
|
+
const first = await iterator.next();
|
|
269
165
|
if (!first.done && first.value.type === "error") {
|
|
166
|
+
await streamResult.collect().catch(() => undefined);
|
|
270
167
|
throw first.value.error;
|
|
271
168
|
}
|
|
272
|
-
|
|
273
|
-
provider: target.provider,
|
|
274
|
-
modelId: target.modelId,
|
|
275
|
-
ok: true,
|
|
276
|
-
latencyMs: Date.now() - attemptStartedAt
|
|
277
|
-
});
|
|
278
|
-
return {
|
|
279
|
-
attempts,
|
|
280
|
-
target,
|
|
281
|
-
startedAt,
|
|
282
|
-
routeDecision,
|
|
283
|
-
streamResult
|
|
284
|
-
};
|
|
169
|
+
return withFirstEventReplay(streamResult, first, iterator);
|
|
285
170
|
}
|
|
286
171
|
catch (error) {
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
provider: target.provider,
|
|
290
|
-
modelId: target.modelId,
|
|
291
|
-
ok: false,
|
|
292
|
-
latencyMs: Date.now() - attemptStartedAt,
|
|
293
|
-
errorMessage: normalized.message
|
|
294
|
-
});
|
|
295
|
-
await config.onAttempt?.({
|
|
296
|
-
provider: target.provider,
|
|
297
|
-
modelId: target.modelId,
|
|
298
|
-
ok: false,
|
|
299
|
-
latencyMs: Date.now() - attemptStartedAt,
|
|
300
|
-
errorMessage: normalized.message,
|
|
301
|
-
retry,
|
|
302
|
-
targetRank: targetIndex
|
|
303
|
-
});
|
|
304
|
-
if (retry < maxRetries && normalized.retryable) {
|
|
305
|
-
await sleep(retryBackoffMs(config, retry));
|
|
306
|
-
continue;
|
|
307
|
-
}
|
|
308
|
-
break;
|
|
172
|
+
await streamResult.collect().catch(() => undefined);
|
|
173
|
+
throw error;
|
|
309
174
|
}
|
|
310
175
|
}
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
|
|
176
|
+
});
|
|
177
|
+
return {
|
|
178
|
+
...executed,
|
|
179
|
+
startedAt,
|
|
180
|
+
routeDecision
|
|
181
|
+
};
|
|
314
182
|
};
|
|
315
183
|
return {
|
|
184
|
+
async resolveModel(request) {
|
|
185
|
+
const routeDecision = await planRoute(request);
|
|
186
|
+
const target = routeDecision.orderedTargets[0];
|
|
187
|
+
if (!target) {
|
|
188
|
+
throw new GatewayError("No available gateway targets matched the request.", false);
|
|
189
|
+
}
|
|
190
|
+
const adapter = getAdapter(target.provider);
|
|
191
|
+
if (!adapter) {
|
|
192
|
+
throw new GatewayError(`No adapter registered for provider "${target.provider}".`, false);
|
|
193
|
+
}
|
|
194
|
+
if (request.stepType === "grounded") {
|
|
195
|
+
const groundedModel = adapter.groundedLanguageModel?.(target.modelId);
|
|
196
|
+
if (!groundedModel) {
|
|
197
|
+
throw new GatewayError(`Provider "${target.provider}" does not expose grounded models.`, false);
|
|
198
|
+
}
|
|
199
|
+
return {
|
|
200
|
+
target,
|
|
201
|
+
routeDecision,
|
|
202
|
+
model: groundedModel,
|
|
203
|
+
kind: "grounded"
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
return {
|
|
207
|
+
target,
|
|
208
|
+
routeDecision,
|
|
209
|
+
model: adapter.languageModel(target.modelId),
|
|
210
|
+
kind: "language"
|
|
211
|
+
};
|
|
212
|
+
},
|
|
316
213
|
async generate(request) {
|
|
317
214
|
const routed = await runGenerate(request, (adapter, target) => generateText(createTextOptions(adapter, target, request)));
|
|
318
|
-
return enrichTextResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, routed.result);
|
|
215
|
+
return enrichTextResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, routed.result, now());
|
|
319
216
|
},
|
|
320
217
|
streamText(request) {
|
|
321
218
|
const selected = runStream(request, (adapter, target) => streamText(createTextOptions(adapter, target, request)));
|
|
@@ -323,21 +220,21 @@ export const createGateway = (config) => {
|
|
|
323
220
|
const ensureRelay = async () => {
|
|
324
221
|
if (!relayPromise) {
|
|
325
222
|
relayPromise = selected.then((routed) => ({
|
|
326
|
-
collect: async () => enrichTextResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, await routed.
|
|
223
|
+
collect: async () => enrichTextResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, await routed.result.collect(), now())
|
|
327
224
|
}));
|
|
328
225
|
}
|
|
329
226
|
return relayPromise;
|
|
330
227
|
};
|
|
331
228
|
return {
|
|
332
229
|
eventStream: (async function* () {
|
|
333
|
-
const {
|
|
334
|
-
for await (const event of
|
|
230
|
+
const { result } = await selected;
|
|
231
|
+
for await (const event of result.eventStream) {
|
|
335
232
|
yield event;
|
|
336
233
|
}
|
|
337
234
|
})(),
|
|
338
235
|
textStream: (async function* () {
|
|
339
|
-
const {
|
|
340
|
-
for await (const chunk of
|
|
236
|
+
const { result } = await selected;
|
|
237
|
+
for await (const chunk of result.textStream) {
|
|
341
238
|
yield chunk;
|
|
342
239
|
}
|
|
343
240
|
})(),
|
|
@@ -351,8 +248,8 @@ export const createGateway = (config) => {
|
|
|
351
248
|
mode: request.mode,
|
|
352
249
|
schemaName: request.schemaName,
|
|
353
250
|
schemaDescription: request.schemaDescription
|
|
354
|
-
}));
|
|
355
|
-
return enrichObjectResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, routed.result);
|
|
251
|
+
}), { structuredOutput: request.mode === "native" ? true : undefined });
|
|
252
|
+
return enrichObjectResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, routed.result, now());
|
|
356
253
|
},
|
|
357
254
|
streamObject(request) {
|
|
358
255
|
const selected = runStream(request, (adapter, target) => streamObject({
|
|
@@ -361,21 +258,21 @@ export const createGateway = (config) => {
|
|
|
361
258
|
mode: request.mode,
|
|
362
259
|
schemaName: request.schemaName,
|
|
363
260
|
schemaDescription: request.schemaDescription
|
|
364
|
-
}));
|
|
261
|
+
}), { structuredOutput: request.mode === "native" ? true : undefined });
|
|
365
262
|
let relayPromise;
|
|
366
263
|
const ensureRelay = async () => {
|
|
367
264
|
if (!relayPromise) {
|
|
368
265
|
relayPromise = selected.then((routed) => ({
|
|
369
|
-
streamResult: routed.
|
|
370
|
-
collect: async () => enrichObjectResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, await routed.
|
|
266
|
+
streamResult: routed.result,
|
|
267
|
+
collect: async () => enrichObjectResult(request, routed.target, routed.attempts, routed.routeDecision, routed.startedAt, await routed.result.collect(), now())
|
|
371
268
|
}));
|
|
372
269
|
}
|
|
373
270
|
return relayPromise;
|
|
374
271
|
};
|
|
375
272
|
return {
|
|
376
273
|
eventStream: (async function* () {
|
|
377
|
-
const {
|
|
378
|
-
for await (const event of
|
|
274
|
+
const { result } = await selected;
|
|
275
|
+
for await (const event of result.eventStream) {
|
|
379
276
|
yield event;
|
|
380
277
|
}
|
|
381
278
|
})(),
|
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":"AAAA,OAAO,EACL,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,UAAU,EAUX,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,8BAA8B,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,iCAAiC,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAezF,OAAO,EACL,YAAY,EAGb,MAAM,YAAY,CAAC;AAEpB,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAE3B,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;AAExF,MAAM,cAAc,GAAG,CACrB,KAAwF,EACxF,SAAiB,EACjB,UAAkB,EAClB,EAAE;IACF,MAAM,WAAW,GAAG,KAAK,EAAE,WAAW,IAAI,cAAc,CAAC,SAAS,CAAC,CAAC;IACpE,MAAM,YAAY,GAAG,KAAK,EAAE,YAAY,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,KAAK,EAAE,WAAW,IAAI,WAAW,GAAG,YAAY,CAAC;IACrE,OAAO;QACL,WAAW;QACX,YAAY;QACZ,WAAW;QACX,SAAS,EAAE,KAAK,EAAE,WAAW,IAAI,IAAI,IAAI,KAAK,EAAE,YAAY,IAAI,IAAI,IAAI,KAAK,EAAE,WAAW,IAAI,IAAI;KACnG,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,OAAuB,EAAE,EAAE,CAC/C,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;AAE3G,MAAM,aAAa,GAAG,CAAC,OAA2B,EAAE,YAAkC,EAAE,EAAE,EAAE,CAC1F,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,CAAC,MAAM,CAC5B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CACtB,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,CAC1H,CAAC;AAEJ,MAAM,yBAAyB,GAAG,CAChC,OAAuB,EACvB,QAAqC,EAAE,EACV,EAAE,CAAC,CAAC;IACjC,GAAG,CAAC,OAAO,CAAC,oBAAoB,IAAI,EAAE,CAAC;IACvC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjD,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,GAAG,KAAK;CACT,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,OAAuB,EAAgC,EAAE,CAC9E,OAAO,CAAC,UAAU;IAClB,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnG,MAAM,iBAAiB,GAAG,CACxB,OAAwB,EACxB,MAA0B,EAC1B,OAAuB,EACF,EAAE,CAAC,CAAC;IACzB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;IAC5C,QAAQ,EAAE,8BAA8B,CACtC,8BAA8B,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,EACjF,OAAO,CAAC,YAAY,CACrB;IACD,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,UAAU,EAAE,OAAO,CAAC,UAAU;IAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;IACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;IAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;IAChC,SAAS,EAAE,OAAO,CAAC,SAAS;IAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;IAC5B,eAAe,EAAE,OAAO,CAAC,eAAe;IACxC,WAAW,EAAE,OAAO,CAAC,WAAW;CACjC,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CACvB,OAAuB,EACvB,MAA0B,EAC1B,QAA0B,EAC1B,aAAmC,EACnC,SAAiB,EACjB,MAA0B,EAC1B,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,EACP,EAAE,CAAC,CAAC;IACrB,GAAG,MAAM;IACT,YAAY,EAAE,MAAM,CAAC,QAAQ;IAC7B,SAAS,EAAE,MAAM,CAAC,OAAO;IACzB,SAAS,EAAE,WAAW,GAAG,SAAS;IAClC,QAAQ;IACR,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IACvE,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CACzB,OAAuB,EACvB,MAA0B,EAC1B,QAA0B,EAC1B,aAAmC,EACnC,SAAiB,EACjB,MAAqC,EACrC,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,EACQ,EAAE,CAAC,CAAC;IACpC,GAAG,MAAM;IACT,YAAY,EAAE,MAAM,CAAC,QAAQ;IAC7B,SAAS,EAAE,MAAM,CAAC,OAAO;IACzB,SAAS,EAAE,WAAW,GAAG,SAAS;IAClC,QAAQ;IACR,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC;IACvE,aAAa;CACd,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG,CAAC,MAAqB,EAAE,QAA2B,EAAE,EAAE,CACjF,MAAM,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC;AAE5E,MAAM,oBAAoB,GAAG,CAC3B,YAAqB,EACrB,UAAkC,EAClC,QAA+B,EACtB,EAAE;IACX,MAAM,WAAW,GAAG,CAAC,KAAK,SAAS,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACrB,MAAM,UAAU,CAAC,KAAK,CAAC;QACzB,CAAC;QAED,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO;QACL,GAAG,YAAY;QACf,WAAW;KACZ,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAqB,EAAE,EAAE;IACrD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IACnC,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,iCAAiC,EAAE,CAAC;IAChF,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,yBAAyB,EAAE,CAAC;IACxE,MAAM,WAAW,GACf,MAAM,CAAC,WAAW,IAAI,wBAAwB,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAEtH,MAAM,SAAS,GAAG,KAAK,EAAE,KAAmB,EAAE,EAAE;QAC9C,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,QAA2B,EAA+B,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAE3G,MAAM,SAAS,GAAG,KAAK,EACrB,OAAuB,EACvB,4BAAyD,EAAE,EAC5B,EAAE;QACjC,MAAM,iBAAiB,GAAG;YACxB,GAAG,OAAO;YACV,UAAU,EAAE,aAAa,CAAC,OAAO,CAAC;SACV,CAAC;QAC3B,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,MAAM,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAU,CAAC,CAAC,CACxI,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC;YAC5C,OAAO,EAAE,iBAAiB;YAC1B,OAAO;YACP,oBAAoB,EAAE,yBAAyB,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;YAC7F,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,aAAa;YACb,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,wBAAwB,EAAE,MAAM,CAAC,wBAAwB;YACzD,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,GAAG,EAAE,GAAG,EAAE;SACX,CAAC,CAAC;QACH,MAAM,SAAS,CAAC;YACd,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,iBAAiB;YAC1B,SAAS,EAAE,GAAG,EAAE;YAChB,QAAQ,EAAE,aAAa;SACxB,CAAC,CAAC;QACH,OAAO,aAAa,CAAC;IACvB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,EACvB,OAAuB,EACvB,SAAqF,EACrF,4BAAyD,EAAE,EAC3D,EAAE;QACF,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC;YAC5C,OAAO;YACP,aAAa;YACb,WAAW;YACX,YAAY;YACZ,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC;YAC7E,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,GAAG;YACH,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC1B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,YAAY,CAAC,uCAAuC,MAAM,CAAC,QAAQ,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACpC,CAAC;SACF,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,QAAQ;YACX,SAAS;YACT,aAAa;SACd,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,KAAK,EACrB,OAAuB,EACvB,SAAkF,EAClF,4BAAyD,EAAE,EAC3D,EAAE;QACF,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,yBAAyB,EAAE,CAAC,CAAC;QAClG,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC;YAC5C,OAAO;YACP,aAAa;YACb,WAAW;YACX,YAAY;YACZ,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC;YAC7E,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,GAAG;YACH,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;gBAC1B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,YAAY,CAAC,uCAAuC,MAAM,CAAC,QAAQ,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC5F,CAAC;gBACD,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAChD,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;oBAClE,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAEpC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAChD,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;wBACpD,MAAM,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC1B,CAAC;oBAED,OAAO,oBAAoB,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;gBAC7D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;oBACpD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,QAAQ;YACX,SAAS;YACT,aAAa;SACd,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,CAAC,YAAY,CAAC,OAAuB;YACxC,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,YAAY,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;YACrF,CAAC;YAED,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,YAAY,CAAC,uCAAuC,MAAM,CAAC,QAAQ,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5F,CAAC;YAED,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACpC,MAAM,aAAa,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACtE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,YAAY,CAAC,aAAa,MAAM,CAAC,QAAQ,oCAAoC,EAAE,KAAK,CAAC,CAAC;gBAClG,CAAC;gBAED,OAAO;oBACL,MAAM;oBACN,aAAa;oBACb,KAAK,EAAE,aAAa;oBACpB,IAAI,EAAE,UAAU;iBACjB,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,MAAM;gBACN,aAAa;gBACb,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC5C,IAAI,EAAE,UAAU;aACjB,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,OAAuB;YACpC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1H,OAAO,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACjI,CAAC;QAED,UAAU,CAAC,OAAuB;YAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAClH,IAAI,YAIS,CAAC;YAEd,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;wBACxC,OAAO,EAAE,KAAK,IAAI,EAAE,CAClB,gBAAgB,CACd,OAAO,EACP,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,SAAS,EAChB,MAAM,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAC7B,GAAG,EAAE,CACN;qBACJ,CAAC,CAAC,CAAC;gBACN,CAAC;gBAED,OAAO,YAAY,CAAC;YACtB,CAAC,CAAC;YAEF,OAAO;gBACL,WAAW,EAAE,CAAC,KAAK,SAAS,CAAC;oBAC3B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC;oBAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;wBAC7C,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC,CAAC,EAAE;gBACJ,UAAU,EAAE,CAAC,KAAK,SAAS,CAAC;oBAC1B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC;oBAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;wBAC5C,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC,CAAC,EAAE;gBACJ,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;aACrD,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,cAAc,CAClB,OAA8C;YAE9C,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,OAAO,EACP,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAClB,cAAc,CAAC;gBACb,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;gBAC9C,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;aACX,CAAC,EACtC,EAAE,gBAAgB,EAAE,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CACnE,CAAC;YAEF,OAAO,kBAAkB,CACvB,OAAO,EACP,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,MAAuC,EAC9C,GAAG,EAAE,CACN,CAAC;QACJ,CAAC;QAED,YAAY,CAA6B,OAA8C;YACrF,MAAM,QAAQ,GAAG,SAAS,CACxB,OAAO,EACP,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAClB,YAAY,CAAC;gBACX,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;gBAC9C,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;aACX,CAAC,EACtC,EAAE,gBAAgB,EAAE,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CACnE,CAAC;YACF,IAAI,YAKS,CAAC;YAEd,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;wBACxC,YAAY,EAAE,MAAM,CAAC,MAAqC;wBAC1D,OAAO,EAAE,KAAK,IAAI,EAAE,CAClB,kBAAkB,CAChB,OAAO,EACP,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,SAAS,EAChB,MAAO,MAAM,CAAC,MAAsC,CAAC,OAAO,EAAE,EAC9D,GAAG,EAAE,CACN;qBACJ,CAAC,CAAC,CAAC;gBACN,CAAC;gBAED,OAAO,YAAY,CAAC;YACtB,CAAC,CAAC;YAEF,OAAO;gBACL,WAAW,EAAE,CAAC,KAAK,SAAS,CAAC;oBAC3B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC;oBAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;wBAC7C,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC,CAAC,EAAE;gBACJ,mBAAmB,EAAE,CAAC,KAAK,SAAS,CAAC;oBACnC,MAAM,KAAK,GAAG,MAAM,WAAW,EAAE,CAAC;oBAClC,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,KAAK,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;wBACnE,MAAM,OAAO,CAAC;oBAChB,CAAC;gBACH,CAAC,CAAC,EAAE;gBACJ,UAAU,EAAE,CAAC,KAAK,SAAS,CAAC;oBAC1B,MAAM,KAAK,GAAG,MAAM,WAAW,EAAE,CAAC;oBAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;wBACxD,MAAM,KAAK,CAAC;oBACd,CAAC;gBACH,CAAC,CAAC,EAAE;gBACJ,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;aACrD,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { GatewayRetryPolicy, GatewayRouterPolicy } from "./types.js";
|
|
2
|
+
export declare const createDefaultRouterPolicy: () => GatewayRouterPolicy;
|
|
3
|
+
export interface DefaultRetryPolicyOptions {
|
|
4
|
+
maxRetries?: number;
|
|
5
|
+
backoffMs?: number;
|
|
6
|
+
cooldownAfterRetryableFailures?: number;
|
|
7
|
+
cooldownMs?: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const createDefaultRetryPolicy: (options?: DefaultRetryPolicyOptions) => GatewayRetryPolicy;
|
|
10
|
+
//# sourceMappingURL=policies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../src/policies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKV,kBAAkB,EAIlB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AA0KpB,eAAO,MAAM,yBAAyB,QAAO,mBAkB3C,CAAC;AAEH,MAAM,WAAW,yBAAyB;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAqBD,eAAO,MAAM,wBAAwB,GAAI,UAAS,yBAA8B,KAAG,kBAkCjF,CAAC"}
|