@truefoundry/ai-gateway-sdk 0.0.9 → 0.0.10
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 +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/services/buildExecutionReport.d.ts +36 -11
- package/dist/services/buildExecutionReport.js +876 -2
- package/dist/services/buildExecutionReport.js.map +1 -1
- package/dist/services/execute.js +4 -2
- package/dist/services/execute.js.map +1 -1
- package/dist/services/handleProviderResponse.d.ts +3 -1
- package/dist/services/handleProviderResponse.js +27 -5
- package/dist/services/handleProviderResponse.js.map +1 -1
- package/dist/stream/classifyAwsStreamEventKey.d.ts +30 -0
- package/dist/stream/classifyAwsStreamEventKey.js +67 -0
- package/dist/stream/classifyAwsStreamEventKey.js.map +1 -0
- package/dist/stream/index.d.ts +1 -0
- package/dist/stream/index.js +1 -0
- package/dist/stream/index.js.map +1 -1
- package/dist/stream/pumpProviderAwsEventStream.js +13 -1
- package/dist/stream/pumpProviderAwsEventStream.js.map +1 -1
- package/dist/stream/pumpProviderSseStream.js +6 -1
- package/dist/stream/pumpProviderSseStream.js.map +1 -1
- package/dist/stream/resolveStreamEndReason.d.ts +2 -0
- package/dist/stream/resolveStreamEndReason.js +18 -0
- package/dist/stream/resolveStreamEndReason.js.map +1 -1
- package/dist/stream/types.d.ts +4 -1
- package/dist/types/contracts.d.ts +2 -0
- package/dist/types/executionReport.d.ts +8 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export type { ContentItem, ExtractedMessages, GuardrailHelpers, GuardrailsRunCon
|
|
|
7
7
|
export { transformCapturedProviderResponse, type CapturedProviderResponse, type TransformCapturedProviderResponseInput, type TransformedClientResponse, } from './parity/transformCapturedProviderResponse.js';
|
|
8
8
|
export { getSdkRequestTenantName, runWithSdkRequestContext } from './requestContext.js';
|
|
9
9
|
export { LlmGatewaySdk } from './sdk.js';
|
|
10
|
-
export { getStreamModeSplitPattern, pumpProviderAwsEventStream, pumpProviderSseStream, readSseFrames, shouldReadAwsEventStream, } from './stream/index.js';
|
|
10
|
+
export { classifyAwsStreamEventKey, getStreamModeSplitPattern, pumpProviderAwsEventStream, pumpProviderSseStream, readSseFrames, shouldReadAwsEventStream, } from './stream/index.js';
|
|
11
11
|
export type { GetStreamModeSplitPatternInput, PumpProviderAwsEventStreamOptions, PumpProviderBaseOptions, PumpProviderSseOptions, PumpResult, ReadSseFramesOptions, ReadSseFramesResult, ShouldReadAwsEventStreamInput, SplitPattern, SseCommentMode, StreamTransformFn, } from './stream/index.js';
|
|
12
12
|
export type { CachePort } from './types/cache.js';
|
|
13
13
|
export type { BilledUsageOverlay, EndReason, Endpoint, ExecutionFinishReason, ExecutionModelMetadata, ExecutionReport, ExecutionTimings, ExecutionToolUsage, GatewayFailure, MidStreamError, MidStreamErrorKind, MidStreamProviderErrorToken, ProviderCallConfig, ProviderOptions, SdkCallInputs, SdkExecuteResult, SdkExecutionConfig, SdkInitConfig, SdkRequest, SdkRequestBody, SessionContext, TokenUsage, TokenUsageIteration, } from './types/contracts.js';
|
package/dist/index.js
CHANGED
|
@@ -6,6 +6,6 @@ export { initAdapters } from './adapters/index.js';
|
|
|
6
6
|
export { transformCapturedProviderResponse, } from './parity/transformCapturedProviderResponse.js';
|
|
7
7
|
export { getSdkRequestTenantName, runWithSdkRequestContext } from './requestContext.js';
|
|
8
8
|
export { LlmGatewaySdk } from './sdk.js';
|
|
9
|
-
export { getStreamModeSplitPattern, pumpProviderAwsEventStream, pumpProviderSseStream, readSseFrames, shouldReadAwsEventStream, } from './stream/index.js';
|
|
9
|
+
export { classifyAwsStreamEventKey, getStreamModeSplitPattern, pumpProviderAwsEventStream, pumpProviderSseStream, readSseFrames, shouldReadAwsEventStream, } from './stream/index.js';
|
|
10
10
|
export { deriveProviderHeaderOptions } from './utils/deriveProviderHeaderOptions.js';
|
|
11
11
|
//# 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,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"}
|
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Settle {@link ExecutionReport} for SDK execute (P7.1).
|
|
3
|
-
*
|
|
4
|
-
* No USD / OTel. Prefer omitting usage over inventing zeros.
|
|
5
|
-
*/
|
|
6
1
|
import type { Endpoint } from '../providers/types.js';
|
|
7
2
|
import type { PumpResult } from '../stream/types.js';
|
|
8
|
-
import type { ExecutionFinishReason, ExecutionModelMetadata, ExecutionReport, ExecutionTimings, TokenUsage, TokenUsageIteration } from '../types/executionReport.js';
|
|
3
|
+
import type { ExecutionFinishReason, ExecutionModelMetadata, ExecutionReport, ExecutionTimings, ExecutionToolUsage, TokenUsage, TokenUsageIteration } from '../types/executionReport.js';
|
|
9
4
|
import { type BilledUsageOverlay } from '../utils/billedUsage.js';
|
|
10
5
|
export declare function usageFromJson(json: unknown): TokenUsage | undefined;
|
|
11
6
|
export declare function mergeTokenUsage(prev?: TokenUsage, next?: TokenUsage): TokenUsage | undefined;
|
|
@@ -14,6 +9,8 @@ export type UsageSnapshot = {
|
|
|
14
9
|
finishReason?: ExecutionFinishReason;
|
|
15
10
|
iterations?: TokenUsageIteration[];
|
|
16
11
|
};
|
|
12
|
+
/** NEW: streaming settle payload (usage snapshot + CLONE LiveUsage pricing facts). */
|
|
13
|
+
export type StreamSettleExtra = UsageSnapshot & Omit<LiveUsage, 'usage' | 'finishReason'>;
|
|
17
14
|
export declare function mergeUsageSnapshots(prev?: UsageSnapshot, next?: UsageSnapshot): UsageSnapshot | undefined;
|
|
18
15
|
export declare function finalizeReportUsage(args: {
|
|
19
16
|
usage?: TokenUsage;
|
|
@@ -39,10 +36,38 @@ export declare function createStreamingReportDeferred(args: {
|
|
|
39
36
|
providerRequestId?: string;
|
|
40
37
|
}): {
|
|
41
38
|
promise: Promise<ExecutionReport>;
|
|
42
|
-
settle: (pumpResult: PumpResult, extra?:
|
|
43
|
-
finishReason?: ExecutionFinishReason;
|
|
44
|
-
usage?: TokenUsage;
|
|
45
|
-
iterations?: TokenUsageIteration[];
|
|
46
|
-
}) => void;
|
|
39
|
+
settle: (pumpResult: PumpResult, extra?: StreamSettleExtra) => void;
|
|
47
40
|
settleWithError: (err: unknown) => void;
|
|
48
41
|
};
|
|
42
|
+
/** NEW: SDK stand-in for the live `ctx` facts token loggers branch on. */
|
|
43
|
+
export interface LiveUsageScope {
|
|
44
|
+
/** Live `requestType` / served endpoint. */
|
|
45
|
+
endpoint: Endpoint;
|
|
46
|
+
/** Live `ctx.req.url` pathname substrings (messages, ranking, converse-stream, …). */
|
|
47
|
+
inboundPath: string;
|
|
48
|
+
isGeminiRouter?: boolean;
|
|
49
|
+
isBedrockRouter?: boolean;
|
|
50
|
+
/** Live `request` / `gatewayRequest` (post-adapter body). */
|
|
51
|
+
request: any;
|
|
52
|
+
}
|
|
53
|
+
/** NEW shape: what one live logger would pass into `logModelSpanAttributes` for pricing. */
|
|
54
|
+
export interface LiveUsage {
|
|
55
|
+
usage: TokenUsage;
|
|
56
|
+
/** CLONE: live `TOKENS_ESTIMATED` when estimateTokenCountFromText runs. */
|
|
57
|
+
tokensEstimated?: boolean;
|
|
58
|
+
finishReason?: ExecutionFinishReason;
|
|
59
|
+
serviceTier?: string;
|
|
60
|
+
toolUsage?: ExecutionToolUsage;
|
|
61
|
+
/** CLONE: live `providerReportedCostInUsd(usage)` (e.g. Perplexity total_cost). */
|
|
62
|
+
providerReportedCostInUsd?: number;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* NEW router over CLONE parsers: non-stream counts live `handleNonStreamingMode` would price.
|
|
66
|
+
* `undefined` = no live token logger (caller keeps usageFromJson).
|
|
67
|
+
*/
|
|
68
|
+
export declare function liveUsageFromResponse(scope: LiveUsageScope, json: unknown, headers: Headers): LiveUsage | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* NEW router over CLONE parsers: stream counts live `logStreamingResponse` would price from frames.
|
|
71
|
+
* `undefined` = no live stream logger for this endpoint.
|
|
72
|
+
*/
|
|
73
|
+
export declare function liveUsageFromStreamFrames(scope: LiveUsageScope, frames: string[], streamState: Record<string, unknown>, cancelledMidwayByClient: boolean): LiveUsage | undefined;
|