@truefoundry/ai-gateway-sdk 0.0.11 → 0.0.12-rc.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/dist/index.d.ts CHANGED
@@ -14,3 +14,4 @@ export type { BilledUsageOverlay, EndReason, Endpoint, ExecutionFinishReason, Ex
14
14
  export type { AnthropicServerToolColumn, AnthropicServerToolMapping, BetaColumn, CatalogProviderConfig, CatalogProviderConfigs, ModelConfigMap, ProviderModelConfigs, } from './types/modelConfig.js';
15
15
  export type { AnthropicOptions, AwsOptions, AwsSagemakerOptions, AzureAiInferenceOptions, AzureOptions, CommonHeaderOptions, FireworksAiOptions, HuggingFaceOptions, MistralOptions, OpenAIOptions, ProviderHeaderOptions, SnowflakeCortexOptions, StabilityAiOptions, VertexOptions, WorkersAiOptions, } from './types/options.js';
16
16
  export { deriveProviderHeaderOptions } from './utils/deriveProviderHeaderOptions.js';
17
+ export { EXECUTE_TRACING_BODY, EXECUTE_TRACING_URL, redactTracingRequestUrl } from './utils/sdkRequestUrl.js';
package/dist/index.js CHANGED
@@ -8,4 +8,5 @@ export { getSdkRequestTenantName, runWithSdkRequestContext } from './requestCont
8
8
  export { LlmGatewaySdk } from './sdk.js';
9
9
  export { classifyAwsStreamEventKey, getStreamModeSplitPattern, pumpProviderAwsEventStream, pumpProviderSseStream, readSseFrames, shouldReadAwsEventStream, } from './stream/index.js';
10
10
  export { deriveProviderHeaderOptions } from './utils/deriveProviderHeaderOptions.js';
11
+ export { EXECUTE_TRACING_BODY, EXECUTE_TRACING_URL, redactTracingRequestUrl } from './utils/sdkRequestUrl.js';
11
12
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAU1C,OAAO,EACL,iCAAiC,GAIlC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,aAAa,EACb,wBAAwB,GACzB,MAAM,UAAU,CAAC;AAkElB,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAU1C,OAAO,EACL,iCAAiC,GAIlC,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,aAAa,EACb,wBAAwB,GACzB,MAAM,UAAU,CAAC;AAkElB,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Endpoint } from '../providers/types.js';
2
+ import type { SdkRequestBody } from '../types/contracts.js';
3
+ export interface ProviderResponseCaptureMeta {
4
+ url: string;
5
+ endpoint: Endpoint;
6
+ postAdapterBody: SdkRequestBody;
7
+ needsResponseTranslation: boolean;
8
+ openaiUseResponsesApi?: boolean;
9
+ contentType: string;
10
+ }
11
+ export type ProviderResponseCaptureHandler = (body: ReadableStream<Uint8Array>, meta: ProviderResponseCaptureMeta) => void;
12
+ export declare function runWithProviderResponseCapture<T>(handler: ProviderResponseCaptureHandler, fn: () => Promise<T>): Promise<T>;
13
+ export declare function emitProviderResponseCapture(response: Response, meta: Omit<ProviderResponseCaptureMeta, 'contentType'>): Response;
@@ -0,0 +1,14 @@
1
+ import { AsyncLocalStorage } from 'node:async_hooks';
2
+ const providerResponseCaptureAls = new AsyncLocalStorage();
3
+ export function runWithProviderResponseCapture(handler, fn) {
4
+ return providerResponseCaptureAls.run(handler, fn);
5
+ }
6
+ export function emitProviderResponseCapture(response, meta) {
7
+ const handler = providerResponseCaptureAls.getStore();
8
+ if (!handler || response.status !== 200 || !response.body)
9
+ return response;
10
+ const [live, capture] = response.body.tee();
11
+ handler(capture, { ...meta, contentType: response.headers.get('content-type') || '' });
12
+ return new Response(live, response);
13
+ }
14
+ //# sourceMappingURL=providerResponseCapture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerResponseCapture.js","sourceRoot":"","sources":["../../src/parity/providerResponseCapture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAkBrD,MAAM,0BAA0B,GAAG,IAAI,iBAAiB,EAAkC,CAAC;AAE3F,MAAM,UAAU,8BAA8B,CAC5C,OAAuC,EACvC,EAAoB;IAEpB,OAAO,0BAA0B,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,QAAkB,EAClB,IAAsD;IAEtD,MAAM,OAAO,GAAG,0BAA0B,CAAC,QAAQ,EAAE,CAAC;IACtD,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAC;IAC3E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5C,OAAO,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvF,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ProviderAPIConfig } from '../types.js';
2
+ declare const TrueFoundryModelsAPIConfig: ProviderAPIConfig;
3
+ export default TrueFoundryModelsAPIConfig;
@@ -0,0 +1,29 @@
1
+ const TRAILING_SLASHES_REGEX = /\/+$/;
2
+ const TrueFoundryModelsAPIConfig = {
3
+ getBaseURL: ({ providerOptions }) => {
4
+ const manifest = providerOptions.providerAccount.manifest;
5
+ return (manifest.base_url ?? '').replace(TRAILING_SLASHES_REGEX, '');
6
+ },
7
+ headers: ({ providerOptions }) => {
8
+ const manifest = providerOptions.providerAccount.manifest;
9
+ return {
10
+ Authorization: `Bearer ${manifest.auth_data?.api_key}`,
11
+ };
12
+ },
13
+ getEndpoint: ({ endpoint }) => {
14
+ switch (endpoint) {
15
+ case 'chatComplete':
16
+ return '/chat/completions';
17
+ case 'complete':
18
+ return '/completions';
19
+ case 'embed':
20
+ return '/embeddings';
21
+ case 'createModelResponse':
22
+ return '/responses';
23
+ default:
24
+ return '';
25
+ }
26
+ },
27
+ };
28
+ export default TrueFoundryModelsAPIConfig;
29
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/providers/truefoundry-models/api.ts"],"names":[],"mappings":"AAUA,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC,MAAM,0BAA0B,GAAsB;IACpD,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;QAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,eAAe,CAAC,QAA4C,CAAC;QAC9F,OAAO,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;QAC/B,MAAM,QAAQ,GAAG,eAAe,CAAC,eAAe,CAAC,QAA4C,CAAC;QAC9F,OAAO;YACL,aAAa,EAAE,UAAU,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE;SACvD,CAAC;IACJ,CAAC;IACD,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC5B,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,cAAc;gBACjB,OAAO,mBAAmB,CAAC;YAC7B,KAAK,UAAU;gBACb,OAAO,cAAc,CAAC;YACxB,KAAK,OAAO;gBACV,OAAO,aAAa,CAAC;YACvB,KAAK,qBAAqB;gBACxB,OAAO,YAAY,CAAC;YACtB;gBACE,OAAO,EAAE,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ProviderConfigs } from '../types.js';
2
+ declare const TrueFoundryModelsConfig: ProviderConfigs;
3
+ export default TrueFoundryModelsConfig;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * ================================
3
+ * TFY Managed File
4
+ * TrueFoundry Models provider config
5
+ * ================================
6
+ */
7
+ import { TRUEFOUNDRY_MODELS } from '../../globals.js';
8
+ import { chatCompleteParams, completeParams, createModelResponseParams, embedParams, OpenAICreateModelResponseTransformer, responseTransformers, } from '../open-ai-base/index.js';
9
+ import { OpenAILikeChatCompleteResponseTransform, OpenAILikeChatCompleteStreamChunkTransform, } from '../openai-like/chatComplete.js';
10
+ import { OpenAILikeEmbedResponseTransform } from '../openai-like/embed.js';
11
+ import TrueFoundryModelsAPIConfig from './api.js';
12
+ const TrueFoundryModelsConfig = {
13
+ chatComplete: chatCompleteParams([]),
14
+ complete: completeParams([]),
15
+ createModelResponse: createModelResponseParams([]),
16
+ embed: embedParams([]),
17
+ api: TrueFoundryModelsAPIConfig,
18
+ responseTransforms: {
19
+ ...responseTransformers(TRUEFOUNDRY_MODELS, { complete: true }),
20
+ chatComplete: OpenAILikeChatCompleteResponseTransform(TRUEFOUNDRY_MODELS),
21
+ embed: OpenAILikeEmbedResponseTransform(TRUEFOUNDRY_MODELS),
22
+ createModelResponse: OpenAICreateModelResponseTransformer(TRUEFOUNDRY_MODELS),
23
+ 'stream-chatComplete': OpenAILikeChatCompleteStreamChunkTransform(TRUEFOUNDRY_MODELS),
24
+ },
25
+ };
26
+ export default TrueFoundryModelsConfig;
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/truefoundry-models/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,yBAAyB,EACzB,WAAW,EACX,oCAAoC,EACpC,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,uCAAuC,EACvC,0CAA0C,GAC3C,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAExE,OAAO,0BAA0B,MAAM,OAAO,CAAC;AAE/C,MAAM,uBAAuB,GAAoB;IAC/C,YAAY,EAAE,kBAAkB,CAAC,EAAE,CAAC;IACpC,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC;IAC5B,mBAAmB,EAAE,yBAAyB,CAAC,EAAE,CAAC;IAClD,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;IACtB,GAAG,EAAE,0BAA0B;IAC/B,kBAAkB,EAAE;QAClB,GAAG,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC/D,YAAY,EAAE,uCAAuC,CAAC,kBAAkB,CAAC;QACzE,KAAK,EAAE,gCAAgC,CAAC,kBAAkB,CAAC;QAC3D,mBAAmB,EAAE,oCAAoC,CAAC,kBAAkB,CAAC;QAC7E,qBAAqB,EAAE,0CAA0C,CAAC,kBAAkB,CAAC;KACtF;CACF,CAAC;AAEF,eAAe,uBAAuB,CAAC"}
@@ -14,7 +14,7 @@ import { deriveProviderHeaderOptions, toLowercaseHeaders } from '../utils/derive
14
14
  import { logIgnoredFailure } from '../utils/ignoreWithLog.js';
15
15
  import { isStreamingEnabledSdk } from '../utils/isStreamingEnabled.js';
16
16
  import { logProviderCallFailure } from '../utils/providerFailureLogging.js';
17
- import { sdkRequestUrl } from '../utils/sdkRequestUrl.js';
17
+ import { EXECUTE_TRACING_BODY, EXECUTE_TRACING_URL, redactTracingRequestUrl, sdkRequestUrl, } from '../utils/sdkRequestUrl.js';
18
18
  import { buildFetchInit } from './buildFetchInit.js';
19
19
  import { createProviderRequest } from './createProviderRequest.js';
20
20
  import { handleProviderResponse } from './handleProviderResponse.js';
@@ -162,73 +162,87 @@ export async function executeCall(call) {
162
162
  }
163
163
  const originalBody = cloneOriginalBody(call.request.body);
164
164
  const built = await createProviderRequest(call);
165
- const streaming = isStreamingEnabledSdk({
166
- body: built.postAdapterBody,
167
- endpoint: built.endpoint,
168
- path: call.request.path,
169
- });
170
- const provider = call.providerOptions.providerAccount.provider;
171
- const foundationModelId = getFoundationModelId(call.providerOptions.model);
172
- const yieldRawBytes = deriveYieldRawBytes({
173
- streaming,
174
- inboundEndpoint: call.request.endpoint,
175
- provider,
176
- foundationModelId,
177
- });
178
- const fetchInit = buildFetchInit(built, call);
179
- const fetchStartMs = performance.now();
180
- const retried = await retryFromExecution(built.url, fetchInit, call.execution);
181
- const { response, attempt } = retried;
182
- const latencyMs = performance.now() - fetchStartMs;
183
- const gatewayFailure = await recordProviderFailure({ retried, url: built.url, call, latencyMs, streaming });
184
- const modelId = getActualModelId(call.providerOptions.model) || undefined;
185
- const modelMetadata = {
186
- provider,
187
- endpoint: built.endpoint,
188
- ...(modelId ? { modelId } : {}),
189
- };
190
- const headerOptions = deriveProviderHeaderOptions(call.request.headers);
191
- const handled = await handleProviderResponse({
192
- response,
193
- endpoint: built.endpoint,
194
- provider,
195
- providerOptions: call.providerOptions,
196
- execution: call.execution,
197
- streaming,
198
- yieldRawBytes,
199
- // Client body for billed chars/seconds (TTS/Veo). Not returned from createProviderRequest.
200
- gatewayRequestBody: call.request.body,
201
- postAdapterBody: built.postAdapterBody,
202
- requestUrl: built.url,
203
- inboundPath: call.request.path, // NEW: live ctx.req.url for CLONE usage routers
204
- attempts: attempt ?? 0,
205
- timings: { latencyMs, fetchStartMs }, // NEW: fetchStartMs on ExecutionTimings
206
- fetchStartMs,
207
- modelMetadata,
208
- strictOpenAiCompliance: call.callConfig.strictOpenAiCompliance ?? true,
209
- headerOptions,
210
- callConfig: call.callConfig,
211
- inboundEndpoint: call.request.endpoint,
212
- gatewayFailure,
213
- });
214
- let finalResponse = handled.response;
215
- if (built.needsResponseTranslation) {
216
- const inboundAdapter = resolveAdapter(call.request.endpoint);
217
- if (inboundAdapter) {
218
- if (streaming && handled.response.status === 200) {
219
- finalResponse = adaptStreamingResponse(handled.response, inboundAdapter, originalBody, {
220
- abortSignal: call.execution.abortSignal,
221
- });
222
- }
223
- else {
224
- finalResponse = await adaptNonStreamingResponse(handled.response, inboundAdapter, provider, originalBody);
165
+ try {
166
+ const streaming = isStreamingEnabledSdk({
167
+ body: built.postAdapterBody,
168
+ endpoint: built.endpoint,
169
+ path: call.request.path,
170
+ });
171
+ const provider = call.providerOptions.providerAccount.provider;
172
+ const foundationModelId = getFoundationModelId(call.providerOptions.model);
173
+ const yieldRawBytes = deriveYieldRawBytes({
174
+ streaming,
175
+ inboundEndpoint: call.request.endpoint,
176
+ provider,
177
+ foundationModelId,
178
+ });
179
+ const fetchInit = buildFetchInit(built, call);
180
+ const fetchStartMs = performance.now();
181
+ const retried = await retryFromExecution(built.url, fetchInit, call.execution);
182
+ const { response, attempt } = retried;
183
+ const latencyMs = performance.now() - fetchStartMs;
184
+ const gatewayFailure = await recordProviderFailure({ retried, url: built.url, call, latencyMs, streaming });
185
+ const modelId = getActualModelId(call.providerOptions.model) || undefined;
186
+ const modelMetadata = {
187
+ provider,
188
+ endpoint: built.endpoint,
189
+ ...(modelId ? { modelId } : {}),
190
+ };
191
+ const headerOptions = deriveProviderHeaderOptions(call.request.headers);
192
+ const handled = await handleProviderResponse({
193
+ response,
194
+ endpoint: built.endpoint,
195
+ provider,
196
+ providerOptions: call.providerOptions,
197
+ execution: call.execution,
198
+ streaming,
199
+ yieldRawBytes,
200
+ // Client body for billed chars/seconds (TTS/Veo). Not returned from createProviderRequest.
201
+ gatewayRequestBody: call.request.body,
202
+ postAdapterBody: built.postAdapterBody,
203
+ requestUrl: built.url,
204
+ inboundPath: call.request.path, // NEW: live ctx.req.url for CLONE usage routers
205
+ attempts: attempt ?? 0,
206
+ timings: { latencyMs, fetchStartMs }, // NEW: fetchStartMs on ExecutionTimings
207
+ fetchStartMs,
208
+ modelMetadata,
209
+ strictOpenAiCompliance: call.callConfig.strictOpenAiCompliance ?? true,
210
+ headerOptions,
211
+ callConfig: call.callConfig,
212
+ inboundEndpoint: call.request.endpoint,
213
+ gatewayFailure,
214
+ });
215
+ let finalResponse = handled.response;
216
+ if (built.needsResponseTranslation) {
217
+ const inboundAdapter = resolveAdapter(call.request.endpoint);
218
+ if (inboundAdapter) {
219
+ if (streaming && handled.response.status === 200) {
220
+ finalResponse = adaptStreamingResponse(handled.response, inboundAdapter, originalBody, {
221
+ abortSignal: call.execution.abortSignal,
222
+ });
223
+ }
224
+ else {
225
+ finalResponse = await adaptNonStreamingResponse(handled.response, inboundAdapter, provider, originalBody);
226
+ }
225
227
  }
226
228
  }
229
+ return {
230
+ response: finalResponse,
231
+ executionReport: handled.executionReport,
232
+ servedEndpoint: built.endpoint,
233
+ requestUrl: redactTracingRequestUrl(built.url),
234
+ providerRequestBody: built.outboundBody,
235
+ };
236
+ }
237
+ catch (err) {
238
+ // First-chunk and timeout throws never reach the result. The gateway reads these off the error.
239
+ if (err && typeof err === 'object') {
240
+ Object.assign(err, {
241
+ [EXECUTE_TRACING_URL]: redactTracingRequestUrl(built.url),
242
+ [EXECUTE_TRACING_BODY]: built.outboundBody,
243
+ });
244
+ }
245
+ throw err;
227
246
  }
228
- return {
229
- response: finalResponse,
230
- executionReport: handled.executionReport,
231
- servedEndpoint: built.endpoint,
232
- };
233
247
  }
234
248
  //# sourceMappingURL=execute.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/services/execute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/services/execute.ts"],"names":[],"mappings":"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"}
@@ -160,4 +160,8 @@ export interface SdkExecuteResult {
160
160
  executionReport: Promise<ExecutionReport>;
161
161
  /** Post-adapter endpoint that drove transforms / usage (`chatComplete`, `embed`, …). */
162
162
  servedEndpoint: Endpoint;
163
+ /** Tracing URL; credential query values are redacted. Absent for requestHandlers. */
164
+ requestUrl?: string;
165
+ /** Body after transformToProviderRequest. Absent for requestHandlers. */
166
+ providerRequestBody?: SdkRequestBody;
163
167
  }
@@ -1,7 +1,12 @@
1
1
  import type { SdkRequest } from '../types/contracts.js';
2
+ /** Stamped onto errors thrown after the outbound URL exists, so the gateway can still fill the Model span. */
3
+ export declare const EXECUTE_TRACING_URL = "tracingRequestUrl";
4
+ export declare const EXECUTE_TRACING_BODY = "tracingProviderBody";
2
5
  /**
3
6
  * Reconstruct a URL string from `SdkRequest.path` + `SdkRequest.search` for
4
7
  * providers that still split path segments / query the way they did with
5
8
  * `gatewayRequestURL`. Host is a placeholder and must not be fetched.
6
9
  */
7
10
  export declare function sdkRequestUrl(request: Pick<SdkRequest, 'path' | 'search'>): string;
11
+ /** Tracing copy of an outbound URL. Credential query values (`?key=`) are replaced; the fetch URL is unchanged. */
12
+ export declare function redactTracingRequestUrl(url: string): string;
@@ -1,3 +1,7 @@
1
+ const REDACTED_QUERY_VALUE = '***REDACTED***';
2
+ /** Stamped onto errors thrown after the outbound URL exists, so the gateway can still fill the Model span. */
3
+ export const EXECUTE_TRACING_URL = 'tracingRequestUrl';
4
+ export const EXECUTE_TRACING_BODY = 'tracingProviderBody';
1
5
  /**
2
6
  * Reconstruct a URL string from `SdkRequest.path` + `SdkRequest.search` for
3
7
  * providers that still split path segments / query the way they did with
@@ -6,4 +10,31 @@
6
10
  export function sdkRequestUrl(request) {
7
11
  return new URL(request.path + request.search, 'https://gateway.invalid').toString();
8
12
  }
13
+ function isCredentialQueryKey(key) {
14
+ const k = key.toLowerCase();
15
+ return (k.includes('key') ||
16
+ k.includes('token') ||
17
+ k.includes('secret') ||
18
+ k.includes('password') ||
19
+ k.includes('signature') ||
20
+ k.includes('auth') ||
21
+ k.includes('credential'));
22
+ }
23
+ /** Tracing copy of an outbound URL. Credential query values (`?key=`) are replaced; the fetch URL is unchanged. */
24
+ export function redactTracingRequestUrl(url) {
25
+ try {
26
+ const parsed = new URL(url);
27
+ let changed = false;
28
+ for (const name of [...parsed.searchParams.keys()]) {
29
+ if (!isCredentialQueryKey(name))
30
+ continue;
31
+ parsed.searchParams.set(name, REDACTED_QUERY_VALUE);
32
+ changed = true;
33
+ }
34
+ return changed ? parsed.toString() : url;
35
+ }
36
+ catch {
37
+ return url;
38
+ }
39
+ }
9
40
  //# sourceMappingURL=sdkRequestUrl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdkRequestUrl.js","sourceRoot":"","sources":["../../src/utils/sdkRequestUrl.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAA4C;IACxE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;AACtF,CAAC"}
1
+ {"version":3,"file":"sdkRequestUrl.js","sourceRoot":"","sources":["../../src/utils/sdkRequestUrl.ts"],"names":[],"mappings":"AAEA,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAE9C,8GAA8G;AAC9G,MAAM,CAAC,MAAM,mBAAmB,GAAG,mBAAmB,CAAC;AACvD,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAE1D;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAA4C;IACxE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC,QAAQ,EAAE,CAAC;AACtF,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAW;IACvC,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAC5B,OAAO,CACL,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACjB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;QACnB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QACtB,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;QACvB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAClB,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CACzB,CAAC;AACJ,CAAC;AAED,mHAAmH;AACnH,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC1C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;YACpD,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QACD,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@truefoundry/ai-gateway-sdk",
3
- "version": "0.0.11",
3
+ "version": "0.0.12-rc.0",
4
4
  "description": "LLM provider translation SDK",
5
5
  "author": "Truefoundry",
6
6
  "license": "UNLICENSED",