@truefoundry/ai-gateway-sdk 0.0.12 → 0.0.14

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.
Files changed (80) hide show
  1. package/dist/adapters/bedrock-converse/requestTransform.d.ts +3 -0
  2. package/dist/adapters/bedrock-converse/requestTransform.js +3 -0
  3. package/dist/adapters/bedrock-converse/requestTransform.js.map +1 -1
  4. package/dist/adapters/gemini/requestTransform.js +3 -0
  5. package/dist/adapters/gemini/requestTransform.js.map +1 -1
  6. package/dist/adapters/messages/index.js +6 -1
  7. package/dist/adapters/messages/index.js.map +1 -1
  8. package/dist/adapters/responses/requestTransform.js +2 -0
  9. package/dist/adapters/responses/requestTransform.js.map +1 -1
  10. package/dist/adapters/responses/responseTransform.js +1 -1
  11. package/dist/adapters/responses/responseTransform.js.map +1 -1
  12. package/dist/adapters/responses/streamTransform.d.ts +1 -0
  13. package/dist/adapters/responses/streamTransform.js +4 -1
  14. package/dist/adapters/responses/streamTransform.js.map +1 -1
  15. package/dist/autogen/decoders.d.ts +5 -1
  16. package/dist/autogen/decoders.js +44 -0
  17. package/dist/autogen/decoders.js.map +1 -1
  18. package/dist/autogen/meta.d.ts +5 -1
  19. package/dist/autogen/meta.js +4 -0
  20. package/dist/autogen/meta.js.map +1 -1
  21. package/dist/autogen/models.d.ts +154 -2
  22. package/dist/autogen/schema.json +130 -0
  23. package/dist/entities/Provider.d.ts +1 -0
  24. package/dist/entities/Provider.js +1 -0
  25. package/dist/entities/Provider.js.map +1 -1
  26. package/dist/handlers/tfyUtils.js +4 -0
  27. package/dist/handlers/tfyUtils.js.map +1 -1
  28. package/dist/index.d.ts +1 -0
  29. package/dist/index.js +1 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/parity/providerResponseCapture.d.ts +18 -0
  32. package/dist/parity/providerResponseCapture.js +35 -0
  33. package/dist/parity/providerResponseCapture.js.map +1 -0
  34. package/dist/providers/bedrock/chatComplete.js +14 -0
  35. package/dist/providers/bedrock/chatComplete.js.map +1 -1
  36. package/dist/providers/bedrock/types.d.ts +7 -0
  37. package/dist/providers/bedrock/types.js.map +1 -1
  38. package/dist/providers/fireworks-ai/api.d.ts +2 -0
  39. package/dist/providers/fireworks-ai/api.js +25 -0
  40. package/dist/providers/fireworks-ai/api.js.map +1 -0
  41. package/dist/providers/fireworks-ai/index.d.ts +3 -0
  42. package/dist/providers/fireworks-ai/index.js +23 -0
  43. package/dist/providers/fireworks-ai/index.js.map +1 -0
  44. package/dist/providers/google/chatComplete.d.ts +1 -0
  45. package/dist/providers/google/chatComplete.js +16 -1
  46. package/dist/providers/google/chatComplete.js.map +1 -1
  47. package/dist/providers/google-vertex-ai/chatComplete.js +11 -1
  48. package/dist/providers/google-vertex-ai/chatComplete.js.map +1 -1
  49. package/dist/providers/google-vertex-ai/types.d.ts +1 -0
  50. package/dist/providers/google-vertex-ai/types.js.map +1 -1
  51. package/dist/providers/index.js +2 -0
  52. package/dist/providers/index.js.map +1 -1
  53. package/dist/providers/open-ai-base/chatCompleteViaResponses/responseTransform.d.ts +1 -0
  54. package/dist/providers/open-ai-base/chatCompleteViaResponses/responseTransform.js +20 -4
  55. package/dist/providers/open-ai-base/chatCompleteViaResponses/responseTransform.js.map +1 -1
  56. package/dist/providers/open-ai-base/chatCompleteViaResponses/streamTransform.d.ts +1 -0
  57. package/dist/providers/open-ai-base/chatCompleteViaResponses/streamTransform.js +3 -0
  58. package/dist/providers/open-ai-base/chatCompleteViaResponses/streamTransform.js.map +1 -1
  59. package/dist/providers/truefoundry-managed/api.d.ts +8 -1
  60. package/dist/providers/truefoundry-managed/api.js +30 -17
  61. package/dist/providers/truefoundry-managed/api.js.map +1 -1
  62. package/dist/providers/truefoundry-managed/index.d.ts +6 -0
  63. package/dist/providers/truefoundry-managed/index.js +9 -21
  64. package/dist/providers/truefoundry-managed/index.js.map +1 -1
  65. package/dist/providers/types.d.ts +7 -0
  66. package/dist/providers/types.js.map +1 -1
  67. package/dist/providers/utils/serviceTierUtils.d.ts +13 -0
  68. package/dist/providers/utils/serviceTierUtils.js +56 -0
  69. package/dist/providers/utils/serviceTierUtils.js.map +1 -0
  70. package/dist/services/execute.js +109 -68
  71. package/dist/services/execute.js.map +1 -1
  72. package/dist/services/handleProviderResponse.js +11 -0
  73. package/dist/services/handleProviderResponse.js.map +1 -1
  74. package/dist/services/transformToProviderRequest.js +14 -2
  75. package/dist/services/transformToProviderRequest.js.map +1 -1
  76. package/dist/types/contracts.d.ts +4 -0
  77. package/dist/utils/sdkRequestUrl.d.ts +5 -0
  78. package/dist/utils/sdkRequestUrl.js +36 -0
  79. package/dist/utils/sdkRequestUrl.js.map +1 -1
  80. package/package.json +1 -1
@@ -38,6 +38,7 @@ export function transformResponsesToChatCompletionsResponse(response, responseSt
38
38
  model: response?.model ?? '',
39
39
  provider: response?.provider ?? provider,
40
40
  choices: [choice],
41
+ ...(response?.service_tier && { service_tier: response.service_tier }),
41
42
  ...(response?.usage && { usage: transformUsage(response.usage) }),
42
43
  };
43
44
  }
@@ -100,17 +101,32 @@ export function resolveFinishReason(response, hasToolCalls) {
100
101
  return 'length';
101
102
  return 'stop';
102
103
  }
104
+ /** Keep cache-write and image counts — cost prices them separately from text. */
103
105
  export function transformUsage(usage) {
104
106
  const promptTokens = usage.input_tokens ?? 0;
105
107
  const completionTokens = usage.output_tokens ?? 0;
106
- const cachedTokens = usage.input_tokens_details?.cached_tokens;
107
- const reasoningTokens = usage.output_tokens_details?.reasoning_tokens;
108
+ const inputDetails = usage.input_tokens_details;
109
+ const outputDetails = usage.output_tokens_details;
110
+ const promptTokensDetails = {
111
+ ...(inputDetails?.cached_tokens != null && { cached_tokens: inputDetails.cached_tokens }),
112
+ ...(inputDetails?.cache_write_tokens != null && { cache_write_tokens: inputDetails.cache_write_tokens }),
113
+ ...(inputDetails?.image_tokens != null && { image_tokens: inputDetails.image_tokens }),
114
+ ...(inputDetails?.audio_tokens != null && { audio_tokens: inputDetails.audio_tokens }),
115
+ ...(inputDetails?.cached_tokens_details != null && {
116
+ cached_tokens_details: inputDetails.cached_tokens_details,
117
+ }),
118
+ };
119
+ const completionTokensDetails = {
120
+ ...(outputDetails?.reasoning_tokens != null && { reasoning_tokens: outputDetails.reasoning_tokens }),
121
+ ...(outputDetails?.image_tokens != null && { image_tokens: outputDetails.image_tokens }),
122
+ ...(outputDetails?.audio_tokens != null && { audio_tokens: outputDetails.audio_tokens }),
123
+ };
108
124
  return {
109
125
  prompt_tokens: promptTokens,
110
126
  completion_tokens: completionTokens,
111
127
  total_tokens: usage.total_tokens ?? promptTokens + completionTokens,
112
- ...(cachedTokens != null && { prompt_tokens_details: { cached_tokens: cachedTokens } }),
113
- ...(reasoningTokens != null && { completion_tokens_details: { reasoning_tokens: reasoningTokens } }),
128
+ ...(Object.keys(promptTokensDetails).length > 0 && { prompt_tokens_details: promptTokensDetails }),
129
+ ...(Object.keys(completionTokensDetails).length > 0 && { completion_tokens_details: completionTokensDetails }),
114
130
  };
115
131
  }
116
132
  //# sourceMappingURL=responseTransform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"responseTransform.js","sourceRoot":"","sources":["../../../../src/providers/open-ai-base/chatCompleteViaResponses/responseTransform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"responseTransform.js","sourceRoot":"","sources":["../../../../src/providers/open-ai-base/chatCompleteViaResponses/responseTransform.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface ChatCompletionsStreamState {
12
12
  cursorBufferedArguments: Map<number, string>;
13
13
  nextToolCallIndex: number;
14
14
  provider?: string;
15
+ serviceTier?: string;
15
16
  }
16
17
  export declare function createChatCompletionsStreamState(fallbackId?: string, provider?: string, cursorFreeformToolNames?: Set<string>): ChatCompletionsStreamState;
17
18
  /**
@@ -244,6 +244,7 @@ function closeStream(state, response) {
244
244
  created: state.created,
245
245
  model: state.model,
246
246
  ...(state.provider && { provider: state.provider }),
247
+ ...(state.serviceTier && { service_tier: state.serviceTier }),
247
248
  choices: [],
248
249
  usage: transformUsage(response.usage),
249
250
  }));
@@ -268,6 +269,8 @@ function seedFromResponse(state, response) {
268
269
  state.model = response.model;
269
270
  if (!state.created && response.created_at)
270
271
  state.created = response.created_at;
272
+ if (response.service_tier)
273
+ state.serviceTier = response.service_tier;
271
274
  }
272
275
  function emit(state, delta, finishReason = null) {
273
276
  return toSse({
@@ -1 +1 @@
1
- {"version":3,"file":"streamTransform.js","sourceRoot":"","sources":["../../../../src/providers/open-ai-base/chatCompleteViaResponses/streamTransform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"streamTransform.js","sourceRoot":"","sources":["../../../../src/providers/open-ai-base/chatCompleteViaResponses/streamTransform.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,10 @@
1
- import { ProviderAPIConfig } from '../types.js';
1
+ import { Endpoint, ProviderAPIConfig } from '../types.js';
2
+ /** Endpoints forwarded to the upstream gateway; any other endpoint is unsupported. */
3
+ export declare const TRUEFOUNDRY_MANAGED_ENDPOINTS: Partial<Record<Endpoint, string>>;
4
+ /**
5
+ * Caller headers the upstream gateway needs to serve the request as the caller asked.
6
+ * Everything else (routing, retries, logging, MCP, guardrails, auth) belongs to this gateway's tenant.
7
+ */
8
+ export declare const TRUEFOUNDRY_MANAGED_FORWARDED_HEADERS: string[];
2
9
  declare const TrueFoundryManagedAPIConfig: ProviderAPIConfig;
3
10
  export default TrueFoundryManagedAPIConfig;
@@ -1,29 +1,42 @@
1
+ import { TFY_CACHE_CONTROL_HEADER } from '../../constants.js';
1
2
  const TRAILING_SLASHES_REGEX = /\/+$/;
3
+ /** Endpoints forwarded to the upstream gateway; any other endpoint is unsupported. */
4
+ export const TRUEFOUNDRY_MANAGED_ENDPOINTS = {
5
+ chatComplete: '/chat/completions',
6
+ messages: '/messages',
7
+ messagesCountTokens: '/messages/count_tokens',
8
+ complete: '/completions',
9
+ embed: '/embeddings',
10
+ createModelResponse: '/responses',
11
+ };
12
+ /**
13
+ * Caller headers the upstream gateway needs to serve the request as the caller asked.
14
+ * Everything else (routing, retries, logging, MCP, guardrails, auth) belongs to this gateway's tenant.
15
+ */
16
+ export const TRUEFOUNDRY_MANAGED_FORWARDED_HEADERS = [
17
+ TFY_CACHE_CONTROL_HEADER,
18
+ 'anthropic-beta',
19
+ 'anthropic-version',
20
+ 'x-tfy-anthropic-beta',
21
+ 'x-tfy-anthropic-version',
22
+ ];
2
23
  const TrueFoundryManagedAPIConfig = {
3
24
  getBaseURL: ({ providerOptions }) => {
4
25
  const manifest = providerOptions.providerAccount.manifest;
5
26
  return (manifest.base_url ?? '').replace(TRAILING_SLASHES_REGEX, '');
6
27
  },
7
- headers: ({ providerOptions }) => {
28
+ headers: ({ providerOptions, request }) => {
8
29
  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 '';
30
+ const headers = {};
31
+ for (const name of TRUEFOUNDRY_MANAGED_FORWARDED_HEADERS) {
32
+ const value = request.headers[name];
33
+ if (value)
34
+ headers[name] = value;
25
35
  }
36
+ headers.Authorization = `Bearer ${manifest.auth_data?.api_key}`;
37
+ return headers;
26
38
  },
39
+ getEndpoint: ({ endpoint }) => TRUEFOUNDRY_MANAGED_ENDPOINTS[endpoint] ?? '',
27
40
  };
28
41
  export default TrueFoundryManagedAPIConfig;
29
42
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/providers/truefoundry-managed/api.ts"],"names":[],"mappings":"AAUA,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC,MAAM,2BAA2B,GAAsB;IACrD,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;QAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,eAAe,CAAC,QAA6C,CAAC;QAC/F,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,QAA6C,CAAC;QAC/F,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,2BAA2B,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/providers/truefoundry-managed/api.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAG3D,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAEtC,sFAAsF;AACtF,MAAM,CAAC,MAAM,6BAA6B,GAAsC;IAC9E,YAAY,EAAE,mBAAmB;IACjC,QAAQ,EAAE,WAAW;IACrB,mBAAmB,EAAE,wBAAwB;IAC7C,QAAQ,EAAE,cAAc;IACxB,KAAK,EAAE,aAAa;IACpB,mBAAmB,EAAE,YAAY;CAClC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAG;IACnD,wBAAwB;IACxB,gBAAgB;IAChB,mBAAmB;IACnB,sBAAsB;IACtB,yBAAyB;CAC1B,CAAC;AAEF,MAAM,2BAA2B,GAAsB;IACrD,UAAU,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE;QAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,eAAe,CAAC,QAA6C,CAAC;QAC/F,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,OAAO,EAAE,EAAE,EAAE;QACxC,MAAM,QAAQ,GAAG,eAAe,CAAC,eAAe,CAAC,QAA6C,CAAC;QAC/F,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,qCAAqC,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,KAAK;gBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACnC,CAAC;QACD,OAAO,CAAC,aAAa,GAAG,UAAU,QAAQ,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;QAChE,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,EAAE;CAC7E,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * ================================
3
+ * TFY Managed File
4
+ * TrueFoundry Managed provider config
5
+ * ================================
6
+ */
1
7
  import { ProviderConfigs } from '../types.js';
2
8
  declare const TrueFoundryManagedConfig: ProviderConfigs;
3
9
  export default TrueFoundryManagedConfig;
@@ -1,29 +1,17 @@
1
- /**
2
- * ================================
3
- * TFY Managed File
4
- * TrueFoundry Managed provider config
5
- * ================================
6
- */
7
- import { TRUEFOUNDRY_MANAGED } 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
1
  import TrueFoundryManagedAPIConfig from './api.js';
12
2
  import { withInsufficientCreditError } from './insufficientCredit.js';
13
- const { complete, ...baseResponseTransforms } = responseTransformers(TRUEFOUNDRY_MANAGED, { complete: true });
3
+ // The upstream gateway already returns gateway-shaped responses; only its budget error is rewritten.
4
+ const passThroughResponse = withInsufficientCreditError((response) => response);
5
+ // No request params or stream transforms: bodies and stream chunks pass through (transformToProviderRequest).
14
6
  const TrueFoundryManagedConfig = {
15
- chatComplete: chatCompleteParams([]),
16
- complete: completeParams([]),
17
- createModelResponse: createModelResponseParams([]),
18
- embed: embedParams([]),
19
7
  api: TrueFoundryManagedAPIConfig,
20
8
  responseTransforms: {
21
- ...baseResponseTransforms,
22
- complete: complete && withInsufficientCreditError(complete),
23
- chatComplete: withInsufficientCreditError(OpenAILikeChatCompleteResponseTransform(TRUEFOUNDRY_MANAGED)),
24
- embed: withInsufficientCreditError(OpenAILikeEmbedResponseTransform(TRUEFOUNDRY_MANAGED)),
25
- createModelResponse: withInsufficientCreditError(OpenAICreateModelResponseTransformer(TRUEFOUNDRY_MANAGED)),
26
- 'stream-chatComplete': OpenAILikeChatCompleteStreamChunkTransform(TRUEFOUNDRY_MANAGED),
9
+ chatComplete: passThroughResponse,
10
+ complete: passThroughResponse,
11
+ createModelResponse: passThroughResponse,
12
+ embed: passThroughResponse,
13
+ messages: passThroughResponse,
14
+ messagesCountTokens: passThroughResponse,
27
15
  },
28
16
  };
29
17
  export default TrueFoundryManagedConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/truefoundry-managed/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,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,2BAA2B,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAEnE,MAAM,EAAE,QAAQ,EAAE,GAAG,sBAAsB,EAAE,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAE9G,MAAM,wBAAwB,GAAoB;IAChD,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,2BAA2B;IAChC,kBAAkB,EAAE;QAClB,GAAG,sBAAsB;QACzB,QAAQ,EAAE,QAAQ,IAAI,2BAA2B,CAAC,QAAQ,CAAC;QAC3D,YAAY,EAAE,2BAA2B,CAAC,uCAAuC,CAAC,mBAAmB,CAAC,CAAC;QACvG,KAAK,EAAE,2BAA2B,CAAC,gCAAgC,CAAC,mBAAmB,CAAC,CAAC;QACzF,mBAAmB,EAAE,2BAA2B,CAAC,oCAAoC,CAAC,mBAAmB,CAAC,CAAC;QAC3G,qBAAqB,EAAE,0CAA0C,CAAC,mBAAmB,CAAC;KACvF;CACF,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/truefoundry-managed/index.ts"],"names":[],"mappings":"AAOA,OAAO,2BAA2B,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAEnE,qGAAqG;AACrG,MAAM,mBAAmB,GAAG,2BAA2B,CAAC,CAAC,QAAiB,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;AAEzF,8GAA8G;AAC9G,MAAM,wBAAwB,GAAoB;IAChD,GAAG,EAAE,2BAA2B;IAChC,kBAAkB,EAAE;QAClB,YAAY,EAAE,mBAAmB;QACjC,QAAQ,EAAE,mBAAmB;QAC7B,mBAAmB,EAAE,mBAAmB;QACxC,KAAK,EAAE,mBAAmB;QAC1B,QAAQ,EAAE,mBAAmB;QAC7B,mBAAmB,EAAE,mBAAmB;KACzC;CACF,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
@@ -168,12 +168,19 @@ export interface CResponse extends BaseResponse {
168
168
  completion_tokens_details?: {
169
169
  accepted_prediction_tokens?: number;
170
170
  audio_tokens?: number;
171
+ image_tokens?: number;
171
172
  reasoning_tokens?: number;
172
173
  rejected_prediction_tokens?: number;
173
174
  };
174
175
  prompt_tokens_details?: {
175
176
  audio_tokens?: number;
176
177
  cached_tokens?: number;
178
+ cached_tokens_details?: {
179
+ image_tokens?: number;
180
+ };
181
+ /** OpenAI cache-write count. */
182
+ cache_write_tokens?: number;
183
+ image_tokens?: number;
177
184
  };
178
185
  cache_read_input_tokens?: number;
179
186
  cache_creation_input_tokens?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAiiBA,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,kCAAiB,CAAA;IACjB,0CAAyB,CAAA;IACzB,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;AACjC,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAwiBA,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,kCAAiB,CAAA;IACjB,0CAAyB,CAAA;IACzB,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;AACjC,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB"}
@@ -0,0 +1,13 @@
1
+ export declare function toBedrockServiceTier(serviceTier?: string): {
2
+ type: string;
3
+ } | undefined;
4
+ export declare function toGeminiServiceTier(serviceTier?: string): string | undefined;
5
+ export declare function fromBedrockServiceTier(serviceTier?: {
6
+ type?: string;
7
+ }): string | undefined;
8
+ export declare function fromGeminiTrafficType(trafficType?: string): string | undefined;
9
+ export declare function fromGeminiServiceTierHeader(header?: string | null): string | undefined;
10
+ export declare function resolveGeminiServedServiceTier(args: {
11
+ headerTier?: string | null;
12
+ trafficType?: string;
13
+ }): string | undefined;
@@ -0,0 +1,56 @@
1
+ const BEDROCK_SERVICE_TIERS = new Set(['default', 'flex', 'priority', 'ultrafast']);
2
+ const GEMINI_BODY_SERVICE_TIERS = new Set(['standard', 'flex', 'priority']);
3
+ const GEMINI_TRAFFIC_TYPE_TO_SERVICE_TIER = {
4
+ ON_DEMAND: 'default',
5
+ ON_DEMAND_PRIORITY: 'priority',
6
+ ON_DEMAND_FLEX: 'flex',
7
+ FLEX: 'flex',
8
+ BATCH: 'flex',
9
+ };
10
+ function normalizeTier(serviceTier) {
11
+ const tier = serviceTier?.trim().toLowerCase();
12
+ return tier || undefined;
13
+ }
14
+ function mapOpenAIServiceTier(serviceTier, aliases) {
15
+ const tier = normalizeTier(serviceTier);
16
+ if (!tier)
17
+ return undefined;
18
+ if (tier === 'auto')
19
+ return aliases.auto;
20
+ if (tier === 'fast')
21
+ return aliases.fast;
22
+ if (tier === 'standard')
23
+ return 'default';
24
+ return tier;
25
+ }
26
+ export function toBedrockServiceTier(serviceTier) {
27
+ const mapped = mapOpenAIServiceTier(serviceTier, { auto: 'default', fast: 'priority' });
28
+ if (!mapped || !BEDROCK_SERVICE_TIERS.has(mapped))
29
+ return undefined;
30
+ return { type: mapped };
31
+ }
32
+ export function toGeminiServiceTier(serviceTier) {
33
+ const mapped = mapOpenAIServiceTier(serviceTier, { auto: 'priority', fast: 'priority' });
34
+ if (!mapped)
35
+ return undefined;
36
+ const bodyTier = mapped === 'default' ? 'standard' : mapped;
37
+ return GEMINI_BODY_SERVICE_TIERS.has(bodyTier) ? bodyTier : undefined;
38
+ }
39
+ export function fromBedrockServiceTier(serviceTier) {
40
+ return normalizeTier(serviceTier?.type);
41
+ }
42
+ export function fromGeminiTrafficType(trafficType) {
43
+ if (!trafficType)
44
+ return undefined;
45
+ return GEMINI_TRAFFIC_TYPE_TO_SERVICE_TIER[trafficType.toUpperCase()];
46
+ }
47
+ export function fromGeminiServiceTierHeader(header) {
48
+ const tier = normalizeTier(header ?? undefined);
49
+ if (!tier)
50
+ return undefined;
51
+ return tier === 'standard' ? 'default' : tier;
52
+ }
53
+ export function resolveGeminiServedServiceTier(args) {
54
+ return fromGeminiServiceTierHeader(args.headerTier) ?? fromGeminiTrafficType(args.trafficType);
55
+ }
56
+ //# sourceMappingURL=serviceTierUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serviceTierUtils.js","sourceRoot":"","sources":["../../../src/providers/utils/serviceTierUtils.ts"],"names":[],"mappings":"AAAA,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;AACpF,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;AAE5E,MAAM,mCAAmC,GAA2B;IAClE,SAAS,EAAE,SAAS;IACpB,kBAAkB,EAAE,UAAU;IAC9B,cAAc,EAAE,MAAM;IACtB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,MAAM;CACd,CAAC;AAEF,SAAS,aAAa,CAAC,WAAoB;IACzC,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/C,OAAO,IAAI,IAAI,SAAS,CAAC;AAC3B,CAAC;AAED,SAAS,oBAAoB,CAC3B,WAA+B,EAC/B,OAAuC;IAEvC,MAAM,IAAI,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC;IACzC,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC;IACzC,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,SAAS,CAAC;IAC1C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,WAAoB;IACvD,MAAM,MAAM,GAAG,oBAAoB,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IACxF,IAAI,CAAC,MAAM,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IACpE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAoB;IACtD,MAAM,MAAM,GAAG,oBAAoB,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IACzF,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5D,OAAO,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,WAA+B;IACpE,OAAO,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,WAAoB;IACxD,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,OAAO,mCAAmC,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,MAAsB;IAChE,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAG9C;IACC,OAAO,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACjG,CAAC"}
@@ -10,14 +10,25 @@ import { ensureAdaptersInitialized } from '../adapters/index.js';
10
10
  import { adaptNonStreamingResponse, adaptStreamingResponse, resolveAdapter } from '../adapters/registry.js';
11
11
  import { retryFromExecution } from '../handlers/retryFromExecution.js';
12
12
  import { getActualModelId, getFoundationModelId, getProviderConfig } from '../handlers/tfyUtils.js';
13
+ import { abortProviderResponseCapture, emitProviderResponseCapture } from '../parity/providerResponseCapture.js';
13
14
  import { deriveProviderHeaderOptions, toLowercaseHeaders } from '../utils/deriveProviderHeaderOptions.js';
14
15
  import { logIgnoredFailure } from '../utils/ignoreWithLog.js';
15
16
  import { isStreamingEnabledSdk } from '../utils/isStreamingEnabled.js';
16
17
  import { logProviderCallFailure } from '../utils/providerFailureLogging.js';
17
- import { sdkRequestUrl } from '../utils/sdkRequestUrl.js';
18
+ import { EXECUTE_TRACING_BODY, EXECUTE_TRACING_URL, redactTracingRequestUrl, sdkRequestUrl, } from '../utils/sdkRequestUrl.js';
18
19
  import { buildFetchInit } from './buildFetchInit.js';
19
20
  import { createProviderRequest } from './createProviderRequest.js';
20
21
  import { handleProviderResponse } from './handleProviderResponse.js';
22
+ /** Live tryPost aborts the capture tee when response handling throws; one open branch holds the upstream. */
23
+ async function handleProviderResponseOrAbortCapture(input) {
24
+ try {
25
+ return await handleProviderResponse(input);
26
+ }
27
+ catch (err) {
28
+ abortProviderResponseCapture();
29
+ throw err;
30
+ }
31
+ }
21
32
  /** Logs a failed provider call and returns the gateway-side failure to carry on the report, if any. */
22
33
  async function recordProviderFailure(args) {
23
34
  const { retried, url, call, latencyMs, streaming } = args;
@@ -106,7 +117,8 @@ async function executeRequestHandler(call, handler) {
106
117
  signal,
107
118
  modelId,
108
119
  }));
109
- const { response, attempt } = retried;
120
+ let { response } = retried;
121
+ const { attempt } = retried;
110
122
  const latencyMs = performance.now() - fetchStartMs;
111
123
  const streaming = isStreamingEnabledSdk({
112
124
  body: call.request.body,
@@ -114,7 +126,14 @@ async function executeRequestHandler(call, handler) {
114
126
  path: call.request.path,
115
127
  });
116
128
  const gatewayFailure = await recordProviderFailure({ retried, url: '', call, latencyMs, streaming });
117
- const handled = await handleProviderResponse({
129
+ response = emitProviderResponseCapture(response, {
130
+ url: sdkRequestUrl(call.request),
131
+ endpoint,
132
+ postAdapterBody: call.request.body,
133
+ needsResponseTranslation: false,
134
+ openaiUseResponsesApi: call.execution.openaiUseResponsesApi,
135
+ });
136
+ const handled = await handleProviderResponseOrAbortCapture({
118
137
  response,
119
138
  endpoint,
120
139
  provider,
@@ -162,73 +181,95 @@ export async function executeCall(call) {
162
181
  }
163
182
  const originalBody = cloneOriginalBody(call.request.body);
164
183
  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);
184
+ try {
185
+ const streaming = isStreamingEnabledSdk({
186
+ body: built.postAdapterBody,
187
+ endpoint: built.endpoint,
188
+ path: call.request.path,
189
+ });
190
+ const provider = call.providerOptions.providerAccount.provider;
191
+ const foundationModelId = getFoundationModelId(call.providerOptions.model);
192
+ const yieldRawBytes = deriveYieldRawBytes({
193
+ streaming,
194
+ inboundEndpoint: call.request.endpoint,
195
+ provider,
196
+ foundationModelId,
197
+ });
198
+ const fetchInit = buildFetchInit(built, call);
199
+ const fetchStartMs = performance.now();
200
+ const retried = await retryFromExecution(built.url, fetchInit, call.execution);
201
+ let { response } = retried;
202
+ const { attempt } = retried;
203
+ const latencyMs = performance.now() - fetchStartMs;
204
+ const gatewayFailure = await recordProviderFailure({ retried, url: built.url, call, latencyMs, streaming });
205
+ response = emitProviderResponseCapture(response, {
206
+ url: built.url,
207
+ endpoint: built.endpoint,
208
+ postAdapterBody: built.postAdapterBody,
209
+ needsResponseTranslation: built.needsResponseTranslation,
210
+ openaiUseResponsesApi: call.execution.openaiUseResponsesApi,
211
+ });
212
+ const modelId = getActualModelId(call.providerOptions.model) || undefined;
213
+ const modelMetadata = {
214
+ provider,
215
+ endpoint: built.endpoint,
216
+ ...(modelId ? { modelId } : {}),
217
+ };
218
+ const headerOptions = deriveProviderHeaderOptions(call.request.headers);
219
+ const handled = await handleProviderResponseOrAbortCapture({
220
+ response,
221
+ endpoint: built.endpoint,
222
+ provider,
223
+ providerOptions: call.providerOptions,
224
+ execution: call.execution,
225
+ streaming,
226
+ yieldRawBytes,
227
+ // Client body for billed chars/seconds (TTS/Veo). Not returned from createProviderRequest.
228
+ gatewayRequestBody: call.request.body,
229
+ postAdapterBody: built.postAdapterBody,
230
+ requestUrl: built.url,
231
+ inboundPath: call.request.path, // NEW: live ctx.req.url for CLONE usage routers
232
+ attempts: attempt ?? 0,
233
+ timings: { latencyMs, fetchStartMs }, // NEW: fetchStartMs on ExecutionTimings
234
+ fetchStartMs,
235
+ modelMetadata,
236
+ strictOpenAiCompliance: call.callConfig.strictOpenAiCompliance ?? true,
237
+ headerOptions,
238
+ callConfig: call.callConfig,
239
+ inboundEndpoint: call.request.endpoint,
240
+ gatewayFailure,
241
+ });
242
+ let finalResponse = handled.response;
243
+ if (built.needsResponseTranslation) {
244
+ const inboundAdapter = resolveAdapter(call.request.endpoint);
245
+ if (inboundAdapter) {
246
+ if (streaming && handled.response.status === 200) {
247
+ finalResponse = adaptStreamingResponse(handled.response, inboundAdapter, originalBody, {
248
+ abortSignal: call.execution.abortSignal,
249
+ });
250
+ }
251
+ else {
252
+ finalResponse = await adaptNonStreamingResponse(handled.response, inboundAdapter, provider, originalBody);
253
+ }
225
254
  }
226
255
  }
256
+ return {
257
+ response: finalResponse,
258
+ executionReport: handled.executionReport,
259
+ servedEndpoint: built.endpoint,
260
+ requestUrl: redactTracingRequestUrl(built.url),
261
+ providerRequestBody: built.outboundBody,
262
+ };
263
+ }
264
+ catch (err) {
265
+ // First-chunk and timeout throws never reach the result. The gateway reads these off the error.
266
+ if (err && typeof err === 'object') {
267
+ Object.assign(err, {
268
+ [EXECUTE_TRACING_URL]: redactTracingRequestUrl(built.url),
269
+ [EXECUTE_TRACING_BODY]: built.outboundBody,
270
+ });
271
+ }
272
+ throw err;
227
273
  }
228
- return {
229
- response: finalResponse,
230
- executionReport: handled.executionReport,
231
- servedEndpoint: built.endpoint,
232
- };
233
274
  }
234
275
  //# sourceMappingURL=execute.js.map