@framers/agentos 0.10.26 → 0.10.27
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/dist/core/llm/providers/implementations/MistralProvider.js +2 -2
- package/dist/core/llm/providers/implementations/MistralProvider.js.map +1 -1
- package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts +40 -0
- package/dist/core/llm/providers/implementations/OpenRouterProvider.d.ts.map +1 -1
- package/dist/core/llm/providers/implementations/OpenRouterProvider.js +181 -8
- package/dist/core/llm/providers/implementations/OpenRouterProvider.js.map +1 -1
- package/dist/core/llm/providers/openai-cache-params.js +2 -2
- package/dist/core/llm/providers/openai-cache-params.js.map +1 -1
- package/dist/io/channels/telephony/providers/plivo.d.ts +81 -24
- package/dist/io/channels/telephony/providers/plivo.d.ts.map +1 -1
- package/dist/io/channels/telephony/providers/plivo.js +643 -52
- package/dist/io/channels/telephony/providers/plivo.js.map +1 -1
- package/dist/io/channels/telephony/providers/telnyx.d.ts +22 -8
- package/dist/io/channels/telephony/providers/telnyx.d.ts.map +1 -1
- package/dist/io/channels/telephony/providers/telnyx.js +45 -12
- package/dist/io/channels/telephony/providers/telnyx.js.map +1 -1
- package/dist/io/channels/telephony/providers/twilio.d.ts +12 -4
- package/dist/io/channels/telephony/providers/twilio.d.ts.map +1 -1
- package/dist/io/channels/telephony/providers/twilio.js +115 -19
- package/dist/io/channels/telephony/providers/twilio.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// File: backend/agentos/core/llm/providers/implementations/MistralProvider.ts
|
|
2
|
-
import {
|
|
2
|
+
import { sha256Hex } from '../../../utils/sha256.js';
|
|
3
3
|
import { OpenAIProvider } from './OpenAIProvider.js';
|
|
4
4
|
/** Mistral accepts only tool call ids made of nine letters and digits. */
|
|
5
5
|
const MISTRAL_TOOL_CALL_ID = /^[A-Za-z0-9]{9}$/;
|
|
@@ -16,7 +16,7 @@ const MISTRAL_TOOL_CALL_ID = /^[A-Za-z0-9]{9}$/;
|
|
|
16
16
|
export function toMistralToolCallId(id) {
|
|
17
17
|
if (MISTRAL_TOOL_CALL_ID.test(id))
|
|
18
18
|
return id;
|
|
19
|
-
return
|
|
19
|
+
return sha256Hex(id).slice(0, 9);
|
|
20
20
|
}
|
|
21
21
|
/** The messages with every tool call id in Mistral's form. */
|
|
22
22
|
function withMistralToolCallIds(messages) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MistralProvider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/implementations/MistralProvider.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAuB9E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"MistralProvider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/implementations/MistralProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -181,6 +181,46 @@ export declare class OpenRouterProvider implements IProvider {
|
|
|
181
181
|
* jittered exponential backoff; 4xx request errors throw immediately.
|
|
182
182
|
*/
|
|
183
183
|
private makeApiRequest;
|
|
184
|
+
/**
|
|
185
|
+
* Masks the configured API keys (the raw config value and each key in a
|
|
186
|
+
* comma-separated pool) and any base-URL credentials out of text bound
|
|
187
|
+
* for an error, a log line or a health report.
|
|
188
|
+
*
|
|
189
|
+
* @param text - Text that may quote a request header or URL.
|
|
190
|
+
* @returns The text with those secrets replaced by `[redacted]`.
|
|
191
|
+
*/
|
|
192
|
+
private redactSecrets;
|
|
193
|
+
/** Every configured secret: the raw key setting, each pooled key, and base-URL credentials. */
|
|
194
|
+
private configuredSecrets;
|
|
195
|
+
/**
|
|
196
|
+
* Masks the end of a text that was cut short when that end is the start
|
|
197
|
+
* of a configured secret. {@link redactSecrets} matches whole secrets
|
|
198
|
+
* only, so a key split by the cut would otherwise show all but its last
|
|
199
|
+
* characters.
|
|
200
|
+
*
|
|
201
|
+
* @param text - Text cut at a size limit or a timeout.
|
|
202
|
+
* @returns The text with any such tail replaced by `[redacted]`.
|
|
203
|
+
*/
|
|
204
|
+
private maskCutSecretTail;
|
|
205
|
+
/**
|
|
206
|
+
* A response body as kept in error details, with the configured keys
|
|
207
|
+
* masked: text directly, JSON values through their serialized form.
|
|
208
|
+
* Anything that does not serialize, such as a live stream whose `req`
|
|
209
|
+
* holds the Authorization header, is replaced by a placeholder.
|
|
210
|
+
*
|
|
211
|
+
* @param data - The response body as axios returned it.
|
|
212
|
+
* @returns A plain value that is safe to log or serialize.
|
|
213
|
+
*/
|
|
214
|
+
private redactResponseData;
|
|
215
|
+
/**
|
|
216
|
+
* The parts of a caught error worth keeping in details: its name, string
|
|
217
|
+
* `code` and masked message. An AxiosError's config and request carry the
|
|
218
|
+
* Authorization header, so they are left out.
|
|
219
|
+
*
|
|
220
|
+
* @param error - The caught error.
|
|
221
|
+
* @returns A plain description that is safe to log or serialize.
|
|
222
|
+
*/
|
|
223
|
+
private describeError;
|
|
184
224
|
private parseSseStream;
|
|
185
225
|
}
|
|
186
226
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterProvider.d.ts","sourceRoot":"","sources":["../../../../../src/core/llm/providers/implementations/OpenRouterProvider.ts"],"names":[],"mappings":"AACA;;;;;;GAMG;AAGH,OAAO,EACL,SAAS,EACT,WAAW,EACX,sBAAsB,EACtB,uBAAuB,EACvB,SAAS,EACT,UAAU,EACV,wBAAwB,EACxB,yBAAyB,EAE1B,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenRouterProvider.d.ts","sourceRoot":"","sources":["../../../../../src/core/llm/providers/implementations/OpenRouterProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ import { ApiKeyPool } from '../../../providers/ApiKeyPool.js';
|
|
|
12
12
|
import { createGMIErrorFromError, GMIErrorCode } from '../../../utils/errors.js'; // Corrected import path
|
|
13
13
|
import { clampMaxOutputTokens } from '../model-output-limits.js';
|
|
14
14
|
import { stripGeminiOnlyParams } from '../openrouter-only-params.js';
|
|
15
|
+
import { baseUrlCredentials, redactUrlSecrets } from '../url-secrets.js';
|
|
15
16
|
/**
|
|
16
17
|
* Default OpenRouter provider-routing preferences from the environment.
|
|
17
18
|
*
|
|
@@ -92,6 +93,74 @@ export function mapOpenRouterUsage(apiUsage) {
|
|
|
92
93
|
: {}),
|
|
93
94
|
};
|
|
94
95
|
}
|
|
96
|
+
/** Longest streamed error body read into an error, in bytes. */
|
|
97
|
+
const MAX_STREAM_ERROR_BODY_BYTES = 8192;
|
|
98
|
+
/** How long reading a streamed error body may take, in milliseconds. */
|
|
99
|
+
const STREAM_ERROR_BODY_TIMEOUT_MS = 2000;
|
|
100
|
+
/** Whether a value is a Node readable stream, as axios returns for `responseType: 'stream'`. */
|
|
101
|
+
function isReadableStream(value) {
|
|
102
|
+
return (typeof value === 'object' &&
|
|
103
|
+
value !== null &&
|
|
104
|
+
typeof value.pipe === 'function' &&
|
|
105
|
+
typeof value.on === 'function');
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Reads up to {@link MAX_STREAM_ERROR_BODY_BYTES} of a streamed error body as
|
|
109
|
+
* UTF-8 text, waiting at most {@link STREAM_ERROR_BODY_TIMEOUT_MS}, then
|
|
110
|
+
* destroys the stream so its socket is released.
|
|
111
|
+
*
|
|
112
|
+
* @param stream - The error response body axios returned as a stream.
|
|
113
|
+
* @returns The text read, possibly empty, and whether it is the whole body
|
|
114
|
+
* (false when the size limit, the timeout or a stream error cut it short).
|
|
115
|
+
*/
|
|
116
|
+
async function readErrorStream(stream) {
|
|
117
|
+
const chunks = [];
|
|
118
|
+
let size = 0;
|
|
119
|
+
let ended = false;
|
|
120
|
+
try {
|
|
121
|
+
await new Promise((resolve) => {
|
|
122
|
+
const timer = setTimeout(finish, STREAM_ERROR_BODY_TIMEOUT_MS);
|
|
123
|
+
function finish() {
|
|
124
|
+
clearTimeout(timer);
|
|
125
|
+
stream.removeListener('data', onData);
|
|
126
|
+
stream.removeListener('end', onEnd);
|
|
127
|
+
stream.removeListener('error', finish);
|
|
128
|
+
resolve();
|
|
129
|
+
}
|
|
130
|
+
function onEnd() {
|
|
131
|
+
ended = true;
|
|
132
|
+
finish();
|
|
133
|
+
}
|
|
134
|
+
function onData(chunk) {
|
|
135
|
+
const bytes = typeof chunk === 'string' ? Buffer.from(chunk) : chunk;
|
|
136
|
+
chunks.push(bytes);
|
|
137
|
+
size += bytes.length;
|
|
138
|
+
if (size >= MAX_STREAM_ERROR_BODY_BYTES)
|
|
139
|
+
finish();
|
|
140
|
+
}
|
|
141
|
+
stream.on('data', onData);
|
|
142
|
+
stream.once('end', onEnd);
|
|
143
|
+
stream.once('error', finish);
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
finally {
|
|
147
|
+
stream.destroy?.();
|
|
148
|
+
}
|
|
149
|
+
return {
|
|
150
|
+
text: Buffer.concat(chunks).subarray(0, MAX_STREAM_ERROR_BODY_BYTES).toString('utf8'),
|
|
151
|
+
complete: ended && size <= MAX_STREAM_ERROR_BODY_BYTES,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
/** An error body read as text: the parsed JSON object when it is one, else the text. */
|
|
155
|
+
function parseErrorBody(text) {
|
|
156
|
+
try {
|
|
157
|
+
const parsed = JSON.parse(text);
|
|
158
|
+
return parsed !== null && typeof parsed === 'object' ? parsed : text;
|
|
159
|
+
}
|
|
160
|
+
catch {
|
|
161
|
+
return text;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
95
164
|
export class OpenRouterProvider {
|
|
96
165
|
constructor() {
|
|
97
166
|
this.providerId = 'openrouter';
|
|
@@ -658,9 +727,9 @@ export class OpenRouterProvider {
|
|
|
658
727
|
return {
|
|
659
728
|
isHealthy: false,
|
|
660
729
|
details: {
|
|
661
|
-
message: `OpenRouter health check failed: ${err.message}
|
|
730
|
+
message: this.redactSecrets(`OpenRouter health check failed: ${err.message}`),
|
|
662
731
|
status: err.response?.status,
|
|
663
|
-
responseData: err.response?.data,
|
|
732
|
+
responseData: this.redactResponseData(err.response?.data),
|
|
664
733
|
},
|
|
665
734
|
};
|
|
666
735
|
}
|
|
@@ -859,6 +928,17 @@ export class OpenRouterProvider {
|
|
|
859
928
|
if (axios.isAxiosError(error)) {
|
|
860
929
|
statusCode = error.response?.status;
|
|
861
930
|
errorData = error.response?.data;
|
|
931
|
+
// A streamed request's error body is the live response stream,
|
|
932
|
+
// whose `req` holds the request head with the Authorization
|
|
933
|
+
// header. Read a bounded prefix and drop the stream, so the
|
|
934
|
+
// message can use the body and nothing keeps the request.
|
|
935
|
+
if (isReadableStream(errorData)) {
|
|
936
|
+
const { text, complete } = await readErrorStream(errorData);
|
|
937
|
+
// A body cut short can end inside a key, which whole-secret
|
|
938
|
+
// masking would not match. Whole keys are masked first, so a key
|
|
939
|
+
// whose last characters also start a key is not split in two.
|
|
940
|
+
errorData = parseErrorBody(complete ? text : this.maskCutSecretTail(this.redactSecrets(text)));
|
|
941
|
+
}
|
|
862
942
|
transportFailure = error.response === undefined;
|
|
863
943
|
const retryAfterRaw = error.response?.headers?.['retry-after'];
|
|
864
944
|
const parsedRetryAfter = typeof retryAfterRaw === 'string' ? parseInt(retryAfterRaw, 10) : NaN;
|
|
@@ -869,7 +949,7 @@ export class OpenRouterProvider {
|
|
|
869
949
|
errorMessage = errorData.error.message || errorMessage;
|
|
870
950
|
errorType = errorData.error.type || errorType;
|
|
871
951
|
}
|
|
872
|
-
else if (typeof errorData === 'string') {
|
|
952
|
+
else if (typeof errorData === 'string' && errorData.trim()) {
|
|
873
953
|
errorMessage = errorData;
|
|
874
954
|
}
|
|
875
955
|
else if (error.message) {
|
|
@@ -887,8 +967,16 @@ export class OpenRouterProvider {
|
|
|
887
967
|
// Prefix the status code into the message so downstream retry/fallback
|
|
888
968
|
// logic (e.g. isRetryableError, which greps for \b402\b) can route on it
|
|
889
969
|
// even when the OR API body provides a friendlier description.
|
|
890
|
-
const decoratedMessage = statusCode ? `[${statusCode}] ${errorMessage}` : errorMessage;
|
|
891
|
-
lastError = new OpenRouterProviderError(decoratedMessage, 'API_REQUEST_FAILED', statusCode, errorType, {
|
|
970
|
+
const decoratedMessage = this.redactSecrets(statusCode ? `[${statusCode}] ${errorMessage}` : errorMessage);
|
|
971
|
+
lastError = new OpenRouterProviderError(decoratedMessage, 'API_REQUEST_FAILED', statusCode, errorType, {
|
|
972
|
+
requestEndpoint: endpoint,
|
|
973
|
+
requestBodyPreview: body ? JSON.stringify(body).substring(0, 200) + '...' : undefined,
|
|
974
|
+
responseData: this.redactResponseData(errorData),
|
|
975
|
+
// Not the AxiosError itself: its config and request carry the
|
|
976
|
+
// Authorization header, so logging or serializing the details
|
|
977
|
+
// would print the API key.
|
|
978
|
+
underlyingError: this.describeError(error),
|
|
979
|
+
});
|
|
892
980
|
const retryable = transportFailure ||
|
|
893
981
|
statusCode === 408 ||
|
|
894
982
|
statusCode === 429 ||
|
|
@@ -908,6 +996,88 @@ export class OpenRouterProvider {
|
|
|
908
996
|
// the compiler + any future refactor honest.
|
|
909
997
|
throw lastError ?? new OpenRouterProviderError('OpenRouter request failed.', 'API_REQUEST_FAILED');
|
|
910
998
|
}
|
|
999
|
+
/**
|
|
1000
|
+
* Masks the configured API keys (the raw config value and each key in a
|
|
1001
|
+
* comma-separated pool) and any base-URL credentials out of text bound
|
|
1002
|
+
* for an error, a log line or a health report.
|
|
1003
|
+
*
|
|
1004
|
+
* @param text - Text that may quote a request header or URL.
|
|
1005
|
+
* @returns The text with those secrets replaced by `[redacted]`.
|
|
1006
|
+
*/
|
|
1007
|
+
redactSecrets(text) {
|
|
1008
|
+
const rawKeys = this.config?.apiKey ?? '';
|
|
1009
|
+
const keys = [rawKeys, ...rawKeys.split(',').map((key) => key.trim())];
|
|
1010
|
+
return redactUrlSecrets(text, this.config?.baseURL, keys);
|
|
1011
|
+
}
|
|
1012
|
+
/** Every configured secret: the raw key setting, each pooled key, and base-URL credentials. */
|
|
1013
|
+
configuredSecrets() {
|
|
1014
|
+
const rawKeys = this.config?.apiKey ?? '';
|
|
1015
|
+
return [rawKeys, ...rawKeys.split(',').map((key) => key.trim()), baseUrlCredentials(this.config?.baseURL) ?? ''].filter((secret) => secret.length > 0);
|
|
1016
|
+
}
|
|
1017
|
+
/**
|
|
1018
|
+
* Masks the end of a text that was cut short when that end is the start
|
|
1019
|
+
* of a configured secret. {@link redactSecrets} matches whole secrets
|
|
1020
|
+
* only, so a key split by the cut would otherwise show all but its last
|
|
1021
|
+
* characters.
|
|
1022
|
+
*
|
|
1023
|
+
* @param text - Text cut at a size limit or a timeout.
|
|
1024
|
+
* @returns The text with any such tail replaced by `[redacted]`.
|
|
1025
|
+
*/
|
|
1026
|
+
maskCutSecretTail(text) {
|
|
1027
|
+
let cut = 0;
|
|
1028
|
+
for (const secret of this.configuredSecrets()) {
|
|
1029
|
+
for (let length = Math.min(secret.length - 1, text.length); length > cut; length--) {
|
|
1030
|
+
if (text.endsWith(secret.slice(0, length))) {
|
|
1031
|
+
cut = length;
|
|
1032
|
+
break;
|
|
1033
|
+
}
|
|
1034
|
+
}
|
|
1035
|
+
}
|
|
1036
|
+
return cut > 0 ? `${text.slice(0, text.length - cut)}[redacted]` : text;
|
|
1037
|
+
}
|
|
1038
|
+
/**
|
|
1039
|
+
* A response body as kept in error details, with the configured keys
|
|
1040
|
+
* masked: text directly, JSON values through their serialized form.
|
|
1041
|
+
* Anything that does not serialize, such as a live stream whose `req`
|
|
1042
|
+
* holds the Authorization header, is replaced by a placeholder.
|
|
1043
|
+
*
|
|
1044
|
+
* @param data - The response body as axios returned it.
|
|
1045
|
+
* @returns A plain value that is safe to log or serialize.
|
|
1046
|
+
*/
|
|
1047
|
+
redactResponseData(data) {
|
|
1048
|
+
if (data === undefined || data === null)
|
|
1049
|
+
return data;
|
|
1050
|
+
if (typeof data === 'string')
|
|
1051
|
+
return this.redactSecrets(data);
|
|
1052
|
+
if (isReadableStream(data))
|
|
1053
|
+
return '[stream body not read]';
|
|
1054
|
+
try {
|
|
1055
|
+
const json = JSON.stringify(data);
|
|
1056
|
+
return json === undefined ? undefined : JSON.parse(this.redactSecrets(json));
|
|
1057
|
+
}
|
|
1058
|
+
catch {
|
|
1059
|
+
return '[unserializable response body]';
|
|
1060
|
+
}
|
|
1061
|
+
}
|
|
1062
|
+
/**
|
|
1063
|
+
* The parts of a caught error worth keeping in details: its name, string
|
|
1064
|
+
* `code` and masked message. An AxiosError's config and request carry the
|
|
1065
|
+
* Authorization header, so they are left out.
|
|
1066
|
+
*
|
|
1067
|
+
* @param error - The caught error.
|
|
1068
|
+
* @returns A plain description that is safe to log or serialize.
|
|
1069
|
+
*/
|
|
1070
|
+
describeError(error) {
|
|
1071
|
+
if (error instanceof Error) {
|
|
1072
|
+
const code = error.code;
|
|
1073
|
+
return {
|
|
1074
|
+
name: error.name,
|
|
1075
|
+
...(typeof code === 'string' ? { code } : {}),
|
|
1076
|
+
message: this.redactSecrets(error.message),
|
|
1077
|
+
};
|
|
1078
|
+
}
|
|
1079
|
+
return { message: this.redactSecrets(String(error)) };
|
|
1080
|
+
}
|
|
911
1081
|
async *parseSseStream(stream) {
|
|
912
1082
|
let buffer = '';
|
|
913
1083
|
const readableStream = stream;
|
|
@@ -928,11 +1098,14 @@ export class OpenRouterProvider {
|
|
|
928
1098
|
}
|
|
929
1099
|
}
|
|
930
1100
|
catch (error) {
|
|
931
|
-
const message = error instanceof Error ? error.message : "OpenRouter stream parsing/reading error";
|
|
932
|
-
|
|
1101
|
+
const message = this.redactSecrets(error instanceof Error ? error.message : "OpenRouter stream parsing/reading error");
|
|
1102
|
+
// A stream error can be an AxiosError holding the request config, so
|
|
1103
|
+
// only its description is logged and kept.
|
|
1104
|
+
const description = this.describeError(error);
|
|
1105
|
+
console.error("OpenRouterProvider: Error reading or parsing SSE stream:", message, description);
|
|
933
1106
|
if (error instanceof OpenRouterProviderError)
|
|
934
1107
|
throw error;
|
|
935
|
-
throw new OpenRouterProviderError(message, 'STREAM_PARSING_ERROR', undefined, undefined,
|
|
1108
|
+
throw new OpenRouterProviderError(message, 'STREAM_PARSING_ERROR', undefined, undefined, description);
|
|
936
1109
|
}
|
|
937
1110
|
finally {
|
|
938
1111
|
if (typeof readableStream.destroy === 'function') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenRouterProvider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/implementations/OpenRouterProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenRouterProvider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/implementations/OpenRouterProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
* Every 5.6/6 id probed rejects `in_memory` with "This model is compatible
|
|
41
41
|
* only with 24h extended prompt caching", hence their ONLY_24H membership.
|
|
42
42
|
*/
|
|
43
|
-
import {
|
|
43
|
+
import { sha256Hex } from '../../utils/sha256.js';
|
|
44
44
|
/** Families that accept `prompt_cache_options.ttl: '30m'`. */
|
|
45
45
|
const TTL_30M_FAMILIES = [
|
|
46
46
|
'gpt-5.6', 'gpt-5.6-sol', 'gpt-5.6-terra', 'gpt-5.6-luna', 'gpt-6-astra',
|
|
@@ -121,7 +121,7 @@ export function resolvePromptCacheKey(option, sessionId) {
|
|
|
121
121
|
if (option === 'auto') {
|
|
122
122
|
if (!sessionId || !sessionId.trim())
|
|
123
123
|
return undefined;
|
|
124
|
-
return 'agentos:' +
|
|
124
|
+
return 'agentos:' + sha256Hex(sessionId).slice(0, 16);
|
|
125
125
|
}
|
|
126
126
|
const trimmed = option.trim();
|
|
127
127
|
return trimmed.length ? trimmed : undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai-cache-params.js","sourceRoot":"","sources":["../../../../src/core/llm/providers/openai-cache-params.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"openai-cache-params.js","sourceRoot":"","sources":["../../../../src/core/llm/providers/openai-cache-params.ts"],"names":[],"mappings":"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"}
|