commandcode-api-proxy 0.1.4 → 0.3.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 +59 -29
- package/dist/config.d.ts +5 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +30 -1
- package/dist/config.js.map +1 -1
- package/dist/models.json +88 -23
- package/dist/proxy.js +18 -5
- package/dist/proxy.js.map +1 -1
- package/dist/server.d.ts +4 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +162 -46
- package/dist/server.js.map +1 -1
- package/dist/setup/opencode.d.ts.map +1 -1
- package/dist/setup/opencode.js +20 -1
- package/dist/setup/opencode.js.map +1 -1
- package/dist/stream.d.ts +0 -17
- package/dist/stream.d.ts.map +1 -1
- package/dist/stream.js +0 -44
- package/dist/stream.js.map +1 -1
- package/dist/translate/anthropic.d.ts +10 -1
- package/dist/translate/anthropic.d.ts.map +1 -1
- package/dist/translate/anthropic.js +88 -20
- package/dist/translate/anthropic.js.map +1 -1
- package/dist/translate/models.d.ts +15 -0
- package/dist/translate/models.d.ts.map +1 -1
- package/dist/translate/models.js +48 -1
- package/dist/translate/models.js.map +1 -1
- package/dist/translate/openai.d.ts +31 -0
- package/dist/translate/openai.d.ts.map +1 -1
- package/dist/translate/openai.js +128 -38
- package/dist/translate/openai.js.map +1 -1
- package/dist/translate/types.d.ts +16 -2
- package/dist/translate/types.d.ts.map +1 -1
- package/dist/upstream.d.ts +3 -10
- package/dist/upstream.d.ts.map +1 -1
- package/dist/upstream.js +166 -42
- package/dist/upstream.js.map +1 -1
- package/package.json +17 -15
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import crypto from "node:crypto";
|
|
2
2
|
import { resolveAnthropicModel } from "../translate/anthropic-models.js";
|
|
3
|
-
import {
|
|
3
|
+
import { resolveEffortForModel } from "../translate/models.js";
|
|
4
|
+
import { extractUsage, pruneDanglingTools, buildCCConfig } from "../translate/util.js";
|
|
4
5
|
import { logger } from "../logger.js";
|
|
5
6
|
// ── Constants ──
|
|
6
|
-
const REASONING_THRESHOLDS = { LOW: 2000, MEDIUM: 8000 };
|
|
7
|
+
const REASONING_THRESHOLDS = { LOW: 2000, MEDIUM: 8000, HIGH: 16000, XHIGH: 32000 };
|
|
7
8
|
const ANTHROPIC_STOP_REASON_MAP = {
|
|
8
9
|
stop: "end_turn",
|
|
9
10
|
length: "max_tokens",
|
|
@@ -112,9 +113,7 @@ function toCCMessages(messages) {
|
|
|
112
113
|
}
|
|
113
114
|
return {
|
|
114
115
|
ccMessages: pruneDanglingTools(ccMessages),
|
|
115
|
-
systemPrompt: systemParts.length > 0
|
|
116
|
-
? systemParts.join("\n\n")
|
|
117
|
-
: undefined,
|
|
116
|
+
systemPrompt: systemParts.length > 0 ? systemParts.join("\n\n") : undefined,
|
|
118
117
|
};
|
|
119
118
|
}
|
|
120
119
|
function toCCPartByBlock(block) {
|
|
@@ -132,24 +131,30 @@ function toCCPartByBlock(block) {
|
|
|
132
131
|
function resolveReasoningEffort(thinking) {
|
|
133
132
|
if (!thinking)
|
|
134
133
|
return undefined;
|
|
135
|
-
|
|
134
|
+
const b = thinking.budget_tokens;
|
|
135
|
+
if (b <= REASONING_THRESHOLDS.LOW)
|
|
136
136
|
return "low";
|
|
137
|
-
if (
|
|
137
|
+
if (b <= REASONING_THRESHOLDS.MEDIUM)
|
|
138
138
|
return "medium";
|
|
139
|
-
|
|
139
|
+
if (b <= REASONING_THRESHOLDS.HIGH)
|
|
140
|
+
return "high";
|
|
141
|
+
if (b <= REASONING_THRESHOLDS.XHIGH)
|
|
142
|
+
return "xhigh";
|
|
143
|
+
return "max";
|
|
140
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* Map an Anthropic `tool_choice` to the object form CC's bridge requires.
|
|
147
|
+
* CC accepts `{type:"auto"|"any"|"tool", name?}` only. Anthropic "any" → "any";
|
|
148
|
+
* Anthropic "none" has no CC equivalent, so we omit it (default auto).
|
|
149
|
+
*/
|
|
141
150
|
function resolveToolChoice(anthropic) {
|
|
142
151
|
const tc = anthropic.tool_choice;
|
|
143
|
-
if (!tc)
|
|
144
|
-
return undefined;
|
|
145
|
-
if (tc.type === "auto")
|
|
152
|
+
if (!tc || tc.type === "auto" || tc.type === "none")
|
|
146
153
|
return undefined;
|
|
147
154
|
if (tc.type === "any")
|
|
148
|
-
return "
|
|
155
|
+
return { type: "any" };
|
|
149
156
|
if (tc.type === "tool")
|
|
150
|
-
return tc.name;
|
|
151
|
-
if (tc.type === "none")
|
|
152
|
-
return "none";
|
|
157
|
+
return { type: "tool", name: tc.name };
|
|
153
158
|
return undefined;
|
|
154
159
|
}
|
|
155
160
|
export function toCCRequest(req, configOverrides) {
|
|
@@ -188,10 +193,11 @@ export function toCCRequest(req, configOverrides) {
|
|
|
188
193
|
stream: req.stream ?? false,
|
|
189
194
|
max_tokens: req.max_tokens,
|
|
190
195
|
temperature: req.temperature,
|
|
196
|
+
top_p: req.top_p,
|
|
191
197
|
stop: req.stop_sequences,
|
|
192
198
|
tools: ccTools,
|
|
193
199
|
tool_choice: resolveToolChoice(req),
|
|
194
|
-
reasoning_effort: resolveReasoningEffort(req.thinking),
|
|
200
|
+
reasoning_effort: resolveEffortForModel(resolvedModel, resolveReasoningEffort(req.thinking)),
|
|
195
201
|
},
|
|
196
202
|
threadId: crypto.randomUUID(),
|
|
197
203
|
};
|
|
@@ -211,10 +217,14 @@ export class AnthropicStreamEncoder {
|
|
|
211
217
|
pendingStart = null;
|
|
212
218
|
started = false;
|
|
213
219
|
pinged = false;
|
|
220
|
+
sawFinish = false;
|
|
214
221
|
constructor(model) {
|
|
215
222
|
this.model = model;
|
|
216
223
|
this.messageId = `msg_${crypto.randomUUID()}`;
|
|
217
224
|
}
|
|
225
|
+
get finished() {
|
|
226
|
+
return this.sawFinish;
|
|
227
|
+
}
|
|
218
228
|
emit(event) {
|
|
219
229
|
if (event.type === "start") {
|
|
220
230
|
this.blockIndex = 0;
|
|
@@ -223,6 +233,7 @@ export class AnthropicStreamEncoder {
|
|
|
223
233
|
return [];
|
|
224
234
|
}
|
|
225
235
|
if (event.type === "error") {
|
|
236
|
+
this.sawFinish = true;
|
|
226
237
|
const msg = event.data.message ??
|
|
227
238
|
event.data.error?.message ??
|
|
228
239
|
JSON.stringify(event.data);
|
|
@@ -255,10 +266,24 @@ export class AnthropicStreamEncoder {
|
|
|
255
266
|
return this.handleContent(event);
|
|
256
267
|
}
|
|
257
268
|
handleFinish(event) {
|
|
269
|
+
this.sawFinish = true;
|
|
258
270
|
const records = [];
|
|
271
|
+
// If we never emitted a content event, `started` is still false and no
|
|
272
|
+
// message_start was sent. The Anthropic SDK requires message_start as
|
|
273
|
+
// the first event — synthesize one before the closing records so we
|
|
274
|
+
// don't deliver a stream that starts with message_delta.
|
|
275
|
+
if (!this.started) {
|
|
276
|
+
records.push(this.makeMessageStart(0));
|
|
277
|
+
this.started = true;
|
|
278
|
+
}
|
|
259
279
|
this.closeCurrentBlock(records);
|
|
260
280
|
const finishReason = event.data.finishReason ?? "stop";
|
|
261
281
|
const usage = extractUsage(event.data);
|
|
282
|
+
// CC's `start` event carries no usage — input/output token counts are only
|
|
283
|
+
// known at `finish`. Anthropic's SDK merges `message_delta.usage` over the
|
|
284
|
+
// `message_start.usage`, so emitting them here corrects the final values
|
|
285
|
+
// (message_start reported input_tokens as 0 because start was empty).
|
|
286
|
+
const cachedTokens = usage?.promptTokensDetails?.cachedTokens;
|
|
262
287
|
records.push({
|
|
263
288
|
event: "message_delta",
|
|
264
289
|
data: {
|
|
@@ -268,7 +293,9 @@ export class AnthropicStreamEncoder {
|
|
|
268
293
|
stop_sequence: null,
|
|
269
294
|
},
|
|
270
295
|
usage: {
|
|
296
|
+
input_tokens: usage?.promptTokens ?? 0,
|
|
271
297
|
output_tokens: usage?.completionTokens ?? 0,
|
|
298
|
+
...(cachedTokens != null ? { cache_read_input_tokens: cachedTokens } : {}),
|
|
272
299
|
},
|
|
273
300
|
},
|
|
274
301
|
});
|
|
@@ -313,6 +340,15 @@ export class AnthropicStreamEncoder {
|
|
|
313
340
|
const tcName = event.data.toolName ?? event.data.name ?? "";
|
|
314
341
|
const input = event.data.input ?? event.data.arguments;
|
|
315
342
|
const argsStr = typeof input === "string" ? input : input != null ? JSON.stringify(input) : "";
|
|
343
|
+
// If the upstream streamed deltas for this tool call first and then
|
|
344
|
+
// sent the final `tool-call` event with the same id, reuse the block
|
|
345
|
+
// it already opened instead of creating a duplicate `tool_use`.
|
|
346
|
+
if (this.currentBlockType === "tool_use" && this.currentToolCallId === tcId) {
|
|
347
|
+
if (argsStr) {
|
|
348
|
+
records.push(this.makeDelta({ type: "input_json_delta", partial_json: argsStr }));
|
|
349
|
+
}
|
|
350
|
+
break;
|
|
351
|
+
}
|
|
316
352
|
this.closeCurrentBlock(records);
|
|
317
353
|
this.ensureBlockOpenWith(records, "tool_use", {
|
|
318
354
|
type: "tool_use",
|
|
@@ -396,6 +432,30 @@ export class AnthropicStreamEncoder {
|
|
|
396
432
|
},
|
|
397
433
|
};
|
|
398
434
|
}
|
|
435
|
+
/**
|
|
436
|
+
* Build the closing records for a stream that ended without a `finish`
|
|
437
|
+
* event from the upstream (e.g. upstream connection dropped mid-response).
|
|
438
|
+
* Emits synthetic message_delta + message_stop so the Anthropic SDK sees
|
|
439
|
+
* a well-formed end-of-stream instead of a truncated response.
|
|
440
|
+
*/
|
|
441
|
+
finishRecords(stopReason = "end_turn") {
|
|
442
|
+
const records = [];
|
|
443
|
+
if (!this.started) {
|
|
444
|
+
records.push(this.makeMessageStart(0));
|
|
445
|
+
this.started = true;
|
|
446
|
+
}
|
|
447
|
+
this.closeCurrentBlock(records);
|
|
448
|
+
records.push({
|
|
449
|
+
event: "message_delta",
|
|
450
|
+
data: {
|
|
451
|
+
type: "message_delta",
|
|
452
|
+
delta: { stop_reason: stopReason, stop_sequence: null },
|
|
453
|
+
usage: { input_tokens: 0, output_tokens: 0 },
|
|
454
|
+
},
|
|
455
|
+
});
|
|
456
|
+
records.push({ event: "message_stop", data: {} });
|
|
457
|
+
return records;
|
|
458
|
+
}
|
|
399
459
|
}
|
|
400
460
|
// ── Non-streaming response builder ──
|
|
401
461
|
export function buildAnthropicResponse(events, model, messageId) {
|
|
@@ -424,6 +484,10 @@ export function buildAnthropicResponse(events, model, messageId) {
|
|
|
424
484
|
break;
|
|
425
485
|
}
|
|
426
486
|
}
|
|
487
|
+
// Block ordering follows Anthropic's extended-thinking contract:
|
|
488
|
+
// thinking blocks must precede the text they reason about, and tool_use
|
|
489
|
+
// blocks come last. Mixing this up confuses strict clients (Claude Code
|
|
490
|
+
// uses thinking-block position to continue reasoning across turns).
|
|
427
491
|
const content = [];
|
|
428
492
|
if (thinkingContent) {
|
|
429
493
|
content.push({
|
|
@@ -432,10 +496,14 @@ export function buildAnthropicResponse(events, model, messageId) {
|
|
|
432
496
|
signature: "_cc_proxy_placeholder",
|
|
433
497
|
});
|
|
434
498
|
}
|
|
499
|
+
if (textContent)
|
|
500
|
+
content.push({ type: "text", text: textContent });
|
|
435
501
|
content.push(...toolUseBlocks);
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
502
|
+
// Anthropic requires content to be non-empty — if there was no text, no
|
|
503
|
+
// thinking, and no tool calls (e.g. empty refusal), synthesize an empty
|
|
504
|
+
// text block rather than sending an empty array.
|
|
505
|
+
if (content.length === 0)
|
|
506
|
+
content.push({ type: "text", text: "" });
|
|
439
507
|
const finishEvent = events.find((e) => e.type === "finish");
|
|
440
508
|
const finishReason = finishEvent?.data.finishReason ?? "stop";
|
|
441
509
|
const usage = finishEvent ? extractUsage(finishEvent.data) : undefined;
|
|
@@ -451,7 +519,7 @@ export function buildAnthropicResponse(events, model, messageId) {
|
|
|
451
519
|
input_tokens: usage?.promptTokens ?? 0,
|
|
452
520
|
output_tokens: usage?.completionTokens ?? 0,
|
|
453
521
|
cache_creation_input_tokens: 0,
|
|
454
|
-
cache_read_input_tokens: 0,
|
|
522
|
+
cache_read_input_tokens: usage?.promptTokensDetails?.cachedTokens ?? 0,
|
|
455
523
|
},
|
|
456
524
|
};
|
|
457
525
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/translate/anthropic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/translate/anthropic.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,4 +6,19 @@
|
|
|
6
6
|
export declare function fetchModelList(apiBase: string, apiKey: string): Promise<string[]>;
|
|
7
7
|
export declare function getDefaultModels(): string[];
|
|
8
8
|
export declare function resolveModel(model: string): string;
|
|
9
|
+
/**
|
|
10
|
+
* Resolve a requested reasoning effort for a specific (canonical) model.
|
|
11
|
+
*
|
|
12
|
+
* CC accepts `params.reasoning_effort` but each model supports a different set
|
|
13
|
+
* of levels, and CC silently coerces unsupported values (it does not 400). To
|
|
14
|
+
* honor caller intent without sending a value the model can't use:
|
|
15
|
+
* - If the model isn't catalogued (no known effort set), pass the request
|
|
16
|
+
* through unchanged — we don't know better, so don't regress.
|
|
17
|
+
* - If the model has a known effort set, clip an unsupported request to the
|
|
18
|
+
* nearest valid level (highest supported rank ≤ requested, else the lowest
|
|
19
|
+
* supported). E.g. deepseek-v4-pro supports only {high, max}, so a request
|
|
20
|
+
* for "low"/"medium" becomes "high", and "max" stays reachable.
|
|
21
|
+
* - If no effort was requested, return undefined and let CC pick its default.
|
|
22
|
+
*/
|
|
23
|
+
export declare function resolveEffortForModel(canonicalModel: string, requested?: string): string | undefined;
|
|
9
24
|
//# sourceMappingURL=models.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/translate/models.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/translate/models.ts"],"names":[],"mappings":"AAYA;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAavF;AAED,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAE3C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAmBlD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,cAAc,EAAE,MAAM,EACtB,SAAS,CAAC,EAAE,MAAM,GACjB,MAAM,GAAG,SAAS,CAiBpB"}
|
package/dist/translate/models.js
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
import modelsData from "../models.json" with { type: "json" };
|
|
3
3
|
const BUILTIN_MODELS = modelsData.builtin;
|
|
4
4
|
const SHORT_ALIASES = modelsData.shortAliases;
|
|
5
|
+
/** Canonical model id → the discrete reasoning-effort levels CC accepts for it. */
|
|
6
|
+
const REASONING_EFFORTS = modelsData.reasoningEfforts ?? {};
|
|
7
|
+
/** Rank ordering of effort levels (low → max). Used to clip to the nearest valid. */
|
|
8
|
+
const EFFORT_RANK = { low: 0, medium: 1, high: 2, xhigh: 3, max: 4 };
|
|
5
9
|
/**
|
|
6
10
|
* Fetch available models from CC provider API. Returns the model list (used by
|
|
7
11
|
* the /v1/models endpoint). Failures yield an empty list — the caller falls
|
|
@@ -30,12 +34,55 @@ export function resolveModel(model) {
|
|
|
30
34
|
if (!model || model === "default") {
|
|
31
35
|
return BUILTIN_MODELS[0];
|
|
32
36
|
}
|
|
33
|
-
|
|
37
|
+
// Alias lookup is case-insensitive so callers can pass the bare model name
|
|
38
|
+
// with original casing (e.g. "GLM-5.2") as well as the lowercase short alias.
|
|
39
|
+
const aliased = SHORT_ALIASES[model] ?? SHORT_ALIASES[model.toLowerCase()];
|
|
34
40
|
if (aliased)
|
|
35
41
|
return aliased;
|
|
36
42
|
// Already a full model ID (contains "/") — pass through untouched.
|
|
37
43
|
if (model.includes("/"))
|
|
38
44
|
return model;
|
|
45
|
+
// Bare name without an org prefix (e.g. "GLM-5.2", "Kimi-K3", or
|
|
46
|
+
// "nemotron-3-ultra-550b-a55b" — which has no short alias). Match it against
|
|
47
|
+
// the builtin catalog by last path segment so it still resolves to a full ID.
|
|
48
|
+
const lower = model.toLowerCase();
|
|
49
|
+
for (const id of BUILTIN_MODELS) {
|
|
50
|
+
const last = id.split("/").pop() ?? id;
|
|
51
|
+
if (last.toLowerCase() === lower)
|
|
52
|
+
return id;
|
|
53
|
+
}
|
|
39
54
|
return model;
|
|
40
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Resolve a requested reasoning effort for a specific (canonical) model.
|
|
58
|
+
*
|
|
59
|
+
* CC accepts `params.reasoning_effort` but each model supports a different set
|
|
60
|
+
* of levels, and CC silently coerces unsupported values (it does not 400). To
|
|
61
|
+
* honor caller intent without sending a value the model can't use:
|
|
62
|
+
* - If the model isn't catalogued (no known effort set), pass the request
|
|
63
|
+
* through unchanged — we don't know better, so don't regress.
|
|
64
|
+
* - If the model has a known effort set, clip an unsupported request to the
|
|
65
|
+
* nearest valid level (highest supported rank ≤ requested, else the lowest
|
|
66
|
+
* supported). E.g. deepseek-v4-pro supports only {high, max}, so a request
|
|
67
|
+
* for "low"/"medium" becomes "high", and "max" stays reachable.
|
|
68
|
+
* - If no effort was requested, return undefined and let CC pick its default.
|
|
69
|
+
*/
|
|
70
|
+
export function resolveEffortForModel(canonicalModel, requested) {
|
|
71
|
+
const supported = REASONING_EFFORTS[canonicalModel];
|
|
72
|
+
// Uncatalogued/empty effort set, or nothing requested → preserve as-is
|
|
73
|
+
// (undefined or the value). The empty-array guard matters: `[]` is truthy,
|
|
74
|
+
// and reduce() on it below would otherwise throw.
|
|
75
|
+
if (!supported || supported.length === 0 || !requested)
|
|
76
|
+
return requested;
|
|
77
|
+
if (supported.includes(requested))
|
|
78
|
+
return requested;
|
|
79
|
+
const rank = (e) => EFFORT_RANK[e] ?? 2;
|
|
80
|
+
const reqRank = rank(requested);
|
|
81
|
+
const atOrBelow = supported.filter((e) => rank(e) <= reqRank);
|
|
82
|
+
if (atOrBelow.length > 0) {
|
|
83
|
+
return atOrBelow.reduce((best, e) => (rank(e) > rank(best) ? e : best));
|
|
84
|
+
}
|
|
85
|
+
// Requested rank is below every supported level → use the lowest supported.
|
|
86
|
+
return supported.reduce((best, e) => (rank(e) < rank(best) ? e : best));
|
|
87
|
+
}
|
|
41
88
|
//# sourceMappingURL=models.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/translate/models.ts"],"names":[],"mappings":"AAAA,yEAAyE;AAEzE,OAAO,UAAU,MAAM,eAAe,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE7D,MAAM,cAAc,GAAa,UAAU,CAAC,OAAO,CAAC;AACpD,MAAM,aAAa,GAA2B,UAAU,CAAC,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/translate/models.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,9 +5,40 @@ export declare class OpenAIStreamEncoder {
|
|
|
5
5
|
readonly id: string;
|
|
6
6
|
private readonly created;
|
|
7
7
|
private toolCallIndex;
|
|
8
|
+
private sawFinish;
|
|
9
|
+
private readonly toolCallIdToIndex;
|
|
8
10
|
constructor(model: string);
|
|
11
|
+
get finished(): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Resolve the OpenAI streaming `index` for a given tool-call id, allocating
|
|
14
|
+
* a new one on first sighting. Falls back to the upstream-provided index
|
|
15
|
+
* (if any) so we don't fight a bridge that already numbers them.
|
|
16
|
+
*/
|
|
17
|
+
private resolveToolCallIndex;
|
|
9
18
|
emit(event: CCEvent): object[];
|
|
19
|
+
/**
|
|
20
|
+
* Build a uniform error→content+finish chunk pair. Used both by `emit()`
|
|
21
|
+
* for upstream error events and by the server's pumpStream catch for
|
|
22
|
+
* stream-level errors (TCP failure, idle timeout, encoder throw). Both
|
|
23
|
+
* paths surface errors as valid chat.completion.chunk records so the
|
|
24
|
+
* client always sees a uniform stream shape instead of a mix of valid
|
|
25
|
+
* chunks and an ad-hoc `{error:...}` envelope.
|
|
26
|
+
*/
|
|
27
|
+
private errorChunks;
|
|
10
28
|
errorChunk(err: Error): object;
|
|
29
|
+
/**
|
|
30
|
+
* Build the closing chunks for a stream that ended without a `finish`
|
|
31
|
+
* event from the upstream (e.g. upstream connection dropped mid-response).
|
|
32
|
+
* Emits a synthetic finish_reason so the client SDK doesn't see a
|
|
33
|
+
* truncated response.
|
|
34
|
+
*/
|
|
35
|
+
finishChunks(reason?: string): object[];
|
|
36
|
+
/**
|
|
37
|
+
* Public wrapper around errorChunks() for stream-level errors caught by
|
|
38
|
+
* pumpStream (TCP failure, idle timeout, encoder throw). Emits a uniform
|
|
39
|
+
* content+finish chunk pair instead of an out-of-band error envelope.
|
|
40
|
+
*/
|
|
41
|
+
streamErrorChunks(err: Error): object[];
|
|
11
42
|
}
|
|
12
43
|
export declare function buildNonStreamingResponse(events: CCEvent[], model: string, id: string): object;
|
|
13
44
|
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/translate/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iBAAiB,EASjB,aAAa,
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/translate/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iBAAiB,EASjB,aAAa,EAEb,OAAO,EAER,MAAM,sBAAsB,CAAC;AAyI9B,wBAAgB,WAAW,CACzB,GAAG,EAAE,iBAAiB,EACtB,eAAe,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,GACjD,aAAa,CA6Bf;AAmCD,qBAAa,mBAAmB;IAWlB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAVlC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,SAAS,CAAS;IAK1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;gBAElC,KAAK,EAAE,MAAM;IAK1C,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAW5B,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE;IAuJ9B;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;IAwBnB,UAAU,CAAC,GAAG,EAAE,KAAK,GAAG,MAAM;IAW9B;;;;;OAKG;IACH,YAAY,CAAC,MAAM,GAAE,MAAe,GAAG,MAAM,EAAE;IAY/C;;;;OAIG;IACH,iBAAiB,CAAC,GAAG,EAAE,KAAK,GAAG,MAAM,EAAE;CAGxC;AAWD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CA2F9F"}
|