@genesislcap/foundation-ai 15.6.2 → 15.7.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/dts/index.d.ts +1 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/transports/anthropic-transport.d.ts.map +1 -1
- package/dist/dts/transports/budget-exhausted-error.d.ts +254 -0
- package/dist/dts/transports/budget-exhausted-error.d.ts.map +1 -0
- package/dist/dts/transports/gemini-transport.d.ts.map +1 -1
- package/dist/dts/transports/post-with-retry.d.ts +6 -1
- package/dist/dts/transports/post-with-retry.d.ts.map +1 -1
- package/dist/dts/transports/server-openai-transport.d.ts.map +1 -1
- package/dist/dts/types/chat.types.d.ts +74 -2
- package/dist/dts/types/chat.types.d.ts.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/transports/anthropic-transport.js +2 -1
- package/dist/esm/transports/budget-exhausted-error.js +277 -0
- package/dist/esm/transports/gemini-transport.js +2 -1
- package/dist/esm/transports/post-with-retry.js +47 -8
- package/dist/esm/transports/server-openai-transport.js +19 -0
- package/dist/foundation-ai.api.json +533 -6
- package/dist/foundation-ai.d.ts +247 -2
- package/package.json +11 -11
package/dist/dts/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export type { RegisterAIProvidersOptions } from './ai-provider-di';
|
|
|
5
5
|
export { AnthropicProvider } from './providers/anthropic-provider';
|
|
6
6
|
export { GeminiProvider } from './providers/gemini-provider';
|
|
7
7
|
export { AnthropicTransport, ResponseTruncatedError } from './transports/anthropic-transport';
|
|
8
|
+
export { BUDGETED_VENDORS, BudgetExhaustedError, DEFAULT_BUDGET_EXHAUSTED_MESSAGE, isBudgetedVendor, VENDOR_LABELS, vendorTypeOfLabel, } from './transports/budget-exhausted-error';
|
|
8
9
|
export { GeminiTransport, MalformedFunctionCallError } from './transports/gemini-transport';
|
|
9
10
|
export { AI_FEATURE_FLAG, isAIFeatureEnabled } from './utils/feature-flags';
|
|
10
11
|
export { ChatTemperature } from './utils/temperature';
|
package/dist/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,8BAA8B,EAC9B,yBAAyB,EACzB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AACpF,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,cAAc,EACd,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,4BAA4B,EAC5B,WAAW,EACX,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC1E,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,8BAA8B,EAC9B,yBAAyB,EACzB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,6BAA6B,EAC7B,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AAKvB,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,mBAAmB,GACpB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC9F,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,gCAAgC,EAChC,gBAAgB,EAChB,aAAa,EACb,iBAAiB,GAClB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AACpF,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,cAAc,EACd,eAAe,EACf,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,4BAA4B,EAC5B,WAAW,EACX,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,YAAY,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvE,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,YAAY,EAAE,wBAAwB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC1E,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,4BAA4B,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-transport.d.ts","sourceRoot":"","sources":["../../../src/transports/anthropic-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC7B,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAGV,WAAW,EACX,kBAAkB,EAGnB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"anthropic-transport.d.ts","sourceRoot":"","sources":["../../../src/transports/anthropic-transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The AI-spend budget wall (GENC-1464 workstream C/D).
|
|
3
|
+
*
|
|
4
|
+
* Lives in its own module rather than beside `ResponseTruncatedError` in
|
|
5
|
+
* `anthropic-transport.ts` because it is raised from `post-with-retry.ts`, which
|
|
6
|
+
* both transports import — homing it in a transport would close an import cycle
|
|
7
|
+
* (transport → post-with-retry → transport) that the repo's `circular` check
|
|
8
|
+
* rejects.
|
|
9
|
+
*/
|
|
10
|
+
import type { AIProviderType } from '../types/config.types';
|
|
11
|
+
/** The proxy's machine-readable rejection code for an exhausted AI budget. */
|
|
12
|
+
export declare const BUDGET_EXCEEDED_CODE = "BUDGET_EXCEEDED";
|
|
13
|
+
/**
|
|
14
|
+
* Display name for each concrete AI vendor: the **single source** every
|
|
15
|
+
* transport's `vendorLabel` is read from, and the only place a vendor's name is
|
|
16
|
+
* spelled for a user.
|
|
17
|
+
*
|
|
18
|
+
* This map is the hinge of the per-vendor budget model (GENC-1464). A wall is
|
|
19
|
+
* attributed to a vendor by reverse-looking-up the label the refused transport
|
|
20
|
+
* stamped on its {@link BudgetExhaustedError} — so a label that drifts from this
|
|
21
|
+
* map (a literal typo, a casing change, a new vendor added with a hardcoded
|
|
22
|
+
* string) silently degrades every wall from that transport to "unattributable"
|
|
23
|
+
* and re-locks the whole session instead of just that vendor. It fails safe, but
|
|
24
|
+
* the feature quietly stops working, which is why the transports read their label
|
|
25
|
+
* from here rather than restating it.
|
|
26
|
+
*
|
|
27
|
+
* The map has **two kinds of entry**, and the difference matters:
|
|
28
|
+
*
|
|
29
|
+
* - The {@link BUDGETED_VENDORS} — `anthropic` and `gemini` — reach the model
|
|
30
|
+
* through the ai-service proxy, are metered by it, and stamp their label on a
|
|
31
|
+
* {@link BudgetExhaustedError}. For these the label is both an attribution key
|
|
32
|
+
* and display copy.
|
|
33
|
+
* - `chrome` and `openai` are **display-only**. `ChromeProvider` talks to the
|
|
34
|
+
* on-device Prompt API and the proxy refuses `openai` outright, so neither can
|
|
35
|
+
* be refused for budget or stamp a label — but both report a `provider` from
|
|
36
|
+
* `getStatus()`, which puts them in the assistant's reachable set, which is
|
|
37
|
+
* what the blocked banner names when it tells a walled user where they can
|
|
38
|
+
* still go ("Switch to Chrome to keep going."). Dropping either entry would
|
|
39
|
+
* print the raw type there.
|
|
40
|
+
*
|
|
41
|
+
* `'none'` is excluded deliberately: it is the "no provider configured" sentinel,
|
|
42
|
+
* not a vendor, and nothing can be refused by it — nor switched to.
|
|
43
|
+
*
|
|
44
|
+
* @beta
|
|
45
|
+
*/
|
|
46
|
+
export declare const VENDOR_LABELS: Readonly<Record<Exclude<AIProviderType, 'none'>, string>>;
|
|
47
|
+
/**
|
|
48
|
+
* The vendors whose spend the ai-service proxy meters — i.e. the only vendors
|
|
49
|
+
* that can raise a {@link BudgetExhaustedError}, and therefore the only ones a
|
|
50
|
+
* 402's `otherVendorAvailable: false` is a statement about.
|
|
51
|
+
*
|
|
52
|
+
* Deliberately narrower than the keys of {@link VENDOR_LABELS}, and it must stay
|
|
53
|
+
* exactly the proxy's own list — `VENDORS` in ai-service's `utils/aiVendor.js`.
|
|
54
|
+
* A vendor listed here that the proxy does not meter gets walled by the
|
|
55
|
+
* `otherVendorAvailable: false` sweep on a verdict that says nothing about it,
|
|
56
|
+
* and if it is reachable, `blocked` then derives true and locks a composer with
|
|
57
|
+
* headroom left.
|
|
58
|
+
*
|
|
59
|
+
* Two vendors are excluded for that reason:
|
|
60
|
+
* - `chrome` runs on-device — no pot to exhaust, and free.
|
|
61
|
+
* - `openai` is **not budgeted by the proxy**. ai-service rejects it up front
|
|
62
|
+
* with `400 UNSUPPORTED_PROVIDER` (`SUPPORTED_PROVIDERS` in `aiVendor.js`), no
|
|
63
|
+
* `MODEL_PRICING` row names it, and `otherVendorAvailable` is computed over
|
|
64
|
+
* Anthropic and Gemini alone. So it can never raise a 402, and a 402 is never
|
|
65
|
+
* a statement about it.
|
|
66
|
+
*
|
|
67
|
+
* @beta
|
|
68
|
+
*/
|
|
69
|
+
export declare const BUDGETED_VENDORS: readonly AIProviderType[];
|
|
70
|
+
/**
|
|
71
|
+
* Whether this vendor's spend is metered by the proxy — see
|
|
72
|
+
* {@link BUDGETED_VENDORS}.
|
|
73
|
+
*
|
|
74
|
+
* A HOST-FACING helper with, deliberately, no internal caller: the library's
|
|
75
|
+
* own consumers iterate {@link BUDGETED_VENDORS} directly (structural, cannot
|
|
76
|
+
* drift), while a host writing its own budget pre-flight or status surface
|
|
77
|
+
* needs the membership test in predicate form. Kept exported for that use —
|
|
78
|
+
* genesis-create's pre-flight is the shape of consumer it exists for.
|
|
79
|
+
*
|
|
80
|
+
* @beta
|
|
81
|
+
*/
|
|
82
|
+
export declare const isBudgetedVendor: (vendor: AIProviderType | undefined) => boolean;
|
|
83
|
+
/**
|
|
84
|
+
* The {@link AIProviderType} behind a vendor label, or `undefined` for a label
|
|
85
|
+
* no vendor claims.
|
|
86
|
+
*
|
|
87
|
+
* Case-insensitive and whitespace-tolerant, because the label travels as free
|
|
88
|
+
* text on the wire (the driver contract carries `vendorLabel`, not the type) and
|
|
89
|
+
* an unrecognised label must degrade to "unattributable" rather than to a wrong
|
|
90
|
+
* attribution — blocking the wrong vendor is worse than blocking none.
|
|
91
|
+
*
|
|
92
|
+
* @beta
|
|
93
|
+
*/
|
|
94
|
+
export declare function vendorTypeOfLabel(label?: string): AIProviderType | undefined;
|
|
95
|
+
/**
|
|
96
|
+
* HTTP status the ai-service proxy rejects an over-budget request with, in both
|
|
97
|
+
* the legacy JSON mode (the response status) and the NDJSON framed mode (the
|
|
98
|
+
* `status` on the terminal `err` frame).
|
|
99
|
+
*
|
|
100
|
+
* Deliberately **absent** from every transport's `RETRYABLE_STATUSES`: the budget
|
|
101
|
+
* does not refill on a backoff ladder, so retrying only delays the inevitable
|
|
102
|
+
* five times over.
|
|
103
|
+
*/
|
|
104
|
+
export declare const BUDGET_EXCEEDED_STATUS = 402;
|
|
105
|
+
/**
|
|
106
|
+
* The single copy shown to a user whose AI budget is gone — the transcript bubble
|
|
107
|
+
* the chat driver appends, and the default text of the assistant's blocked banner.
|
|
108
|
+
*
|
|
109
|
+
* Deliberately **vendor-neutral**: the same bundle ships to white-labelled
|
|
110
|
+
* deployments where "contact Genesis" is simply wrong. A host that wants
|
|
111
|
+
* branded wording overrides both surfaces — the banner via
|
|
112
|
+
* `FoundationAiAssistant.setBlocked(true, reason)`, the transcript bubble via
|
|
113
|
+
* `ChatDriverConfig.budgetExhaustedMessage` — so neither is stuck with this
|
|
114
|
+
* default while the other is customised.
|
|
115
|
+
*
|
|
116
|
+
* @beta
|
|
117
|
+
*/
|
|
118
|
+
export declare const DEFAULT_BUDGET_EXHAUSTED_MESSAGE = "You've reached your AI usage limit. Contact your administrator to raise it.";
|
|
119
|
+
/**
|
|
120
|
+
* Thrown when the AI-spend budget for the caller (user, tenant, or project) is
|
|
121
|
+
* exhausted and the ai-service proxy refuses the request outright — HTTP `402`
|
|
122
|
+
* with `code: 'BUDGET_EXCEEDED'`, in either the legacy JSON or the NDJSON framed
|
|
123
|
+
* mode.
|
|
124
|
+
*
|
|
125
|
+
* This is a **terminal, non-transient** condition, in the same family as
|
|
126
|
+
* `ResponseTruncatedError`: no amount of retrying clears it, because nothing
|
|
127
|
+
* about the request is wrong. The budget has to be raised out-of-band before any
|
|
128
|
+
* further call can succeed, so both the transport retry ladder and the driver's
|
|
129
|
+
* transient-retry catch step aside for it and the failure surfaces immediately
|
|
130
|
+
* as the `'budget-exhausted'` `TurnFailureReason`.
|
|
131
|
+
*
|
|
132
|
+
* `budgetUsd`/`spentUsd` are populated from the rejection body when the proxy
|
|
133
|
+
* supplies them (the workstream-C contract does); they are optional because a
|
|
134
|
+
* plain-text or truncated 402 from an older proxy still has to classify.
|
|
135
|
+
*
|
|
136
|
+
* @beta
|
|
137
|
+
*/
|
|
138
|
+
export declare class BudgetExhaustedError extends Error {
|
|
139
|
+
/** Vendor label of the transport that was refused (e.g. `'Anthropic'`). */
|
|
140
|
+
readonly vendorLabel: string;
|
|
141
|
+
/** The configured spend cap in USD, when the proxy reported one. */
|
|
142
|
+
readonly budgetUsd?: number;
|
|
143
|
+
/** Spend already booked against that cap in USD, when the proxy reported it. */
|
|
144
|
+
readonly spentUsd?: number;
|
|
145
|
+
/** The proxy's human-readable rejection message, when present. */
|
|
146
|
+
readonly detail?: string;
|
|
147
|
+
/**
|
|
148
|
+
* The proxy's own verdict on whether **any other** vendor it meters still has
|
|
149
|
+
* headroom, from the 402's `otherVendorAvailable`.
|
|
150
|
+
*
|
|
151
|
+
* The one field on this error a client cannot re-derive. A client can only
|
|
152
|
+
* infer "another vendor is free" from registry membership — which knows
|
|
153
|
+
* nothing about that vendor's remaining spend — so a `false` here is the only
|
|
154
|
+
* thing standing between the user and "Switch to Gemini to keep going" for a
|
|
155
|
+
* Gemini pot that is already empty. `undefined` means the proxy did not say
|
|
156
|
+
* (an older build), and the client is back to inferring.
|
|
157
|
+
*/
|
|
158
|
+
readonly otherVendorAvailable?: boolean;
|
|
159
|
+
/**
|
|
160
|
+
* The vendor the **proxy** says it refused, verbatim from the 402's `vendor`.
|
|
161
|
+
*
|
|
162
|
+
* A second opinion, not the first: {@link BudgetExhaustedError.vendorLabel}
|
|
163
|
+
* comes from the transport that was actually called and wins wherever it
|
|
164
|
+
* resolves. This one rescues attribution when the transport's label does not —
|
|
165
|
+
* a white-labelled or multiplexing gateway whose single transport fronts more
|
|
166
|
+
* than one upstream stamps one static label for all of them, and only the
|
|
167
|
+
* proxy knows which pot the request was actually booked against.
|
|
168
|
+
*/
|
|
169
|
+
readonly serverVendor?: string;
|
|
170
|
+
constructor(
|
|
171
|
+
/** Vendor label of the transport that was refused (e.g. `'Anthropic'`). */
|
|
172
|
+
vendorLabel: string,
|
|
173
|
+
/** The configured spend cap in USD, when the proxy reported one. */
|
|
174
|
+
budgetUsd?: number,
|
|
175
|
+
/** Spend already booked against that cap in USD, when the proxy reported it. */
|
|
176
|
+
spentUsd?: number,
|
|
177
|
+
/** The proxy's human-readable rejection message, when present. */
|
|
178
|
+
detail?: string,
|
|
179
|
+
/**
|
|
180
|
+
* The fields the proxy reports about the wider budget picture. An object
|
|
181
|
+
* rather than two more positional arguments: the four above are already the
|
|
182
|
+
* limit of what reads at a call site, and these two are set together or not
|
|
183
|
+
* at all.
|
|
184
|
+
*/
|
|
185
|
+
extra?: {
|
|
186
|
+
otherVendorAvailable?: boolean;
|
|
187
|
+
serverVendor?: string;
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* True for a budget rejection in either wire mode: the contracted `402`, or the
|
|
192
|
+
* `BUDGET_EXCEEDED` code under **any** status.
|
|
193
|
+
*
|
|
194
|
+
* Both keys are load-bearing, and they are not redundant:
|
|
195
|
+
*
|
|
196
|
+
* - `status` is the key the workstream-C contract guarantees ("402 always"), and
|
|
197
|
+
* the only one a plain-text or unparseable rejection carries.
|
|
198
|
+
* - `code` is the cheap defence against that contract drifting. Nothing stops a
|
|
199
|
+
* proxy from mapping the refusal onto `403` or `429` — and `429` is in *both*
|
|
200
|
+
* transports' `RETRYABLE_STATUSES`, so a status-only check would hand the user
|
|
201
|
+
* the exact bug GENC-1464 exists to fix: five doomed requests and ~31s of backoff
|
|
202
|
+
* before an opaque failure. A well-formed `{ t: 'err', status: 429, code:
|
|
203
|
+
* 'BUDGET_EXCEEDED' }` frame is accepted by `readFramedBody` (it only rejects a
|
|
204
|
+
* non-numeric status), so this is a reachable shape, not a hypothetical one.
|
|
205
|
+
*
|
|
206
|
+
* The false-positive cost is a proxy sending `code: 'BUDGET_EXCEEDED'` on a
|
|
207
|
+
* genuinely retryable failure — a shape the contract does not permit.
|
|
208
|
+
*
|
|
209
|
+
* Internal to the transports (unlike `BudgetExhaustedError`, which hosts branch
|
|
210
|
+
* on): deliberately **not** re-exported from the package index.
|
|
211
|
+
*
|
|
212
|
+
* @internal
|
|
213
|
+
*/
|
|
214
|
+
export declare const isBudgetRejection: (status: number | undefined, code?: string) => boolean;
|
|
215
|
+
/**
|
|
216
|
+
* Best-effort JSON parse of an error body — `undefined` rather than a throw.
|
|
217
|
+
* Shared by every caller that has to classify a rejection body before it knows
|
|
218
|
+
* whether the body is JSON at all.
|
|
219
|
+
*
|
|
220
|
+
* @internal
|
|
221
|
+
*/
|
|
222
|
+
export declare const parseJsonOrUndefined: (text: string) => unknown;
|
|
223
|
+
/**
|
|
224
|
+
* Read the `code` field off an already-parsed rejection body, ignoring anything
|
|
225
|
+
* that is not a string. Pairs with {@link isBudgetRejection} at the legacy call
|
|
226
|
+
* sites, which have a parsed body rather than a typed frame.
|
|
227
|
+
*
|
|
228
|
+
* @internal
|
|
229
|
+
*/
|
|
230
|
+
export declare const codeOf: (payload: unknown) => string | undefined;
|
|
231
|
+
/**
|
|
232
|
+
* Build a {@link BudgetExhaustedError} from a rejection payload of either shape:
|
|
233
|
+
* the legacy body `{ error, code, budgetUsd, spentUsd, vendor,
|
|
234
|
+
* otherVendorAvailable }` or the framed err frame's `details` (the same fields
|
|
235
|
+
* minus `error`) plus its top-level `error`.
|
|
236
|
+
*
|
|
237
|
+
* The fields read off the wire, and why each is here:
|
|
238
|
+
*
|
|
239
|
+
* | field | used for |
|
|
240
|
+
* | ---------------------- | ----------------------------------------------------- |
|
|
241
|
+
* | `budgetUsd` | the cap in the banner's figures |
|
|
242
|
+
* | `spentUsd` | the spend in the banner's figures |
|
|
243
|
+
* | `error` | the proxy's human-readable detail |
|
|
244
|
+
* | `vendor` | attribution when the transport's own label is unclaimed |
|
|
245
|
+
* | `otherVendorAvailable` | whether "switch vendor" is honest advice at all |
|
|
246
|
+
*
|
|
247
|
+
* Tolerant by design — a `402` classifies even when the payload is missing,
|
|
248
|
+
* unparseable, or carries none of these. Each field is narrowed independently,
|
|
249
|
+
* so a proxy that sends `null` for a figure it does not know (which the
|
|
250
|
+
* ai-service side now does, in preference to a misleading `0`) still yields the
|
|
251
|
+
* vendor and the availability verdict.
|
|
252
|
+
*/
|
|
253
|
+
export declare function budgetExhaustedFrom(vendorLabel: string, payload: unknown, fallbackDetail?: string): BudgetExhaustedError;
|
|
254
|
+
//# sourceMappingURL=budget-exhausted-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"budget-exhausted-error.d.ts","sourceRoot":"","sources":["../../../src/transports/budget-exhausted-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,8EAA8E;AAC9E,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAMhF,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,cAAc,EAG3C,CAAC;AAEZ;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,GAAI,QAAQ,cAAc,GAAG,SAAS,KAAG,OACjB,CAAC;AAUtD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAG5E;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gCAAgC,gFACkC,CAAC;AAEhF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IA2B3C,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM;IAC1B,kEAAkE;IAClE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;IAjC1B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAExC;;;;;;;;;OASG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;;IAG7B,2EAA2E;IAClE,WAAW,EAAE,MAAM;IAC5B,oEAAoE;IAC3D,SAAS,CAAC,EAAE,MAAM;IAC3B,gFAAgF;IACvE,QAAQ,CAAC,EAAE,MAAM;IAC1B,kEAAkE;IACzD,MAAM,CAAC,EAAE,MAAM;IACxB;;;;;OAKG;IACH,KAAK,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;CAcpE;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,GAAG,SAAS,EAAE,OAAO,MAAM,KAAG,OACV,CAAC;AAErE;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAAI,MAAM,MAAM,KAAG,OAMnD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,MAAM,GAAI,SAAS,OAAO,KAAG,MAAM,GAAG,SAGlD,CAAC;AAcF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,EAChB,cAAc,CAAC,EAAE,MAAM,GACtB,oBAAoB,CAiCtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini-transport.d.ts","sourceRoot":"","sources":["../../../src/transports/gemini-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC7B,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAEV,WAAW,EACX,kBAAkB,EAInB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"gemini-transport.d.ts","sourceRoot":"","sources":["../../../src/transports/gemini-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC7B,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAEV,WAAW,EACX,kBAAkB,EAInB,MAAM,qBAAqB,CAAC;AA4I7B,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA0CD;;;;;;GAMG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAAtB,aAAa,CAAC,EAAE,MAAM;CAI5C;AAED;;;;;;;;GAQG;AACH,qBAAa,eAAgB,YAAW,WAAW,EAAE,aAAa,EAAE,sBAAsB;IACxF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD;;;;;OAKG;IACH,OAAO,CAAC,eAAe,CAAK;IAC5B;;;;OAIG;IACH,OAAO,CAAC,kBAAkB,CAAK;gBAEnB,MAAM,GAAE,qBAA0B;IAe9C,SAAS,IAAI;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,aAAa,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;IAQ/E,iGAAiG;IACjG,eAAe,IAAI,MAAM;IAIzB,mGAAmG;IACnG,kBAAkB,IAAI,MAAM;IAI5B,+FAA+F;IAC/F,iBAAiB,IAAI,IAAI;IAOnB,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBvE,eAAe,CACnB,OAAO,EAAE,WAAW,EAAE,EACtB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,WAAW,CAAC;IAuFvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAa;IACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAK;IAEhD;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAgDrB,OAAO,CAAC,gBAAgB;IAoFxB;;;;;;;;;OASG;IACH,OAAO,CAAC,eAAe;IAyCvB,OAAO,CAAC,kBAAkB;IA0H1B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,wBAAwB;IAkBhC;;;;;;;;OAQG;IACH,OAAO,CAAC,mBAAmB;IAkC3B,OAAO,CAAC,aAAa;IA8BrB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAO;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAO;IACzD;;;;;;;;;;OAUG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAO;IACjD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAIxC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAQ;YAEjC,IAAI;IAgBlB,OAAO,CAAC,eAAe;CAexB"}
|
|
@@ -17,7 +17,12 @@ export interface PostWithRetryOptions {
|
|
|
17
17
|
credentials: RequestCredentials;
|
|
18
18
|
/** Prefixes thrown messages, retry logs and frame diagnostics (e.g. `'Anthropic'`). */
|
|
19
19
|
vendorLabel: string;
|
|
20
|
-
/**
|
|
20
|
+
/**
|
|
21
|
+
* **Error** statuses (HTTP and err-frame alike) that join the backoff ladder.
|
|
22
|
+
* Only consulted for a non-ok response — every member of both transports' sets
|
|
23
|
+
* (429/502/503/529) is non-ok, so nothing is lost, but a `2xx` listed here
|
|
24
|
+
* would never be retried.
|
|
25
|
+
*/
|
|
21
26
|
retryableStatuses: readonly number[];
|
|
22
27
|
/** Wall-clock cap (ms) for connect/headers — and the whole body on the legacy JSON path. */
|
|
23
28
|
timeout: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"post-with-retry.d.ts","sourceRoot":"","sources":["../../../src/transports/post-with-retry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"post-with-retry.d.ts","sourceRoot":"","sources":["../../../src/transports/post-with-retry.ts"],"names":[],"mappings":"AAYA;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC;;;OAGG;IACH,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,EAAE,kBAAkB,CAAC;IAChC,uFAAuF;IACvF,WAAW,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,4FAA4F;IAC5F,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,YAAY,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;IACtB,uEAAuE;IACvE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAID;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,CAiLnF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-openai-transport.d.ts","sourceRoot":"","sources":["../../../src/transports/server-openai-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"server-openai-transport.d.ts","sourceRoot":"","sources":["../../../src/transports/server-openai-transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAyBrE,MAAM,WAAW,2BAA2B;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAAa,qBAAsB,YAAW,WAAW;IACvD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,MAAM,GAAE,2BAAgC;IAKpD,SAAS,IAAI;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE;IAQnE,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;CAkD9E"}
|
|
@@ -532,10 +532,20 @@ export interface InteractionRequestOptions {
|
|
|
532
532
|
* an incomplete tool call; deterministic, so it is not retried.
|
|
533
533
|
* - `refusal` — a safety-classifier decline (e.g. Fable 5 `stop_reason: 'refusal'`),
|
|
534
534
|
* which returns empty content; deterministic, so it is not retried.
|
|
535
|
+
* - `budget_exhausted` — the AI-spend budget is used up and the proxy refused the
|
|
536
|
+
* request (HTTP 402). **Terminal for the parent too, and enforced**: the parent
|
|
537
|
+
* driver ends its own turn as soon as this outcome comes back, instead of
|
|
538
|
+
* appending it as a tool result and calling the model again into the same wall.
|
|
539
|
+
* So a handler that receives it will not be called a second time this turn, and
|
|
540
|
+
* the parent turn reports `'budget-exhausted'` in its own right.
|
|
541
|
+
*
|
|
542
|
+
* Recovery guidance differs sharply by reason — see `docs/sub_agent.md`. Only
|
|
543
|
+
* `budget_exhausted` and `refusal` are terminal; retrying either just reproduces
|
|
544
|
+
* it. The rest are worth a retry or a question to the user.
|
|
535
545
|
*
|
|
536
546
|
* @beta
|
|
537
547
|
*/
|
|
538
|
-
export type SubAgentFailureReason = 'max_iterations' | 'malformed_tool_call' | 'empty_response' | 'unknown_tool_limit' | 'timeout' | 'response_truncated' | 'refusal';
|
|
548
|
+
export type SubAgentFailureReason = 'max_iterations' | 'malformed_tool_call' | 'empty_response' | 'unknown_tool_limit' | 'timeout' | 'response_truncated' | 'refusal' | 'budget_exhausted';
|
|
539
549
|
/**
|
|
540
550
|
* When a tool call's declared payload(s) become stale and should be condensed
|
|
541
551
|
* out of the to-model history. The kinds form a spectrum of widening staleness
|
|
@@ -910,10 +920,13 @@ export interface ChatFallback {
|
|
|
910
920
|
* incomplete tool call; deterministic, so it bails without retry.
|
|
911
921
|
* - `refusal` — a safety-classifier decline (e.g. Fable 5 `stop_reason: 'refusal'`),
|
|
912
922
|
* which returns empty content; deterministic, so it is not retried.
|
|
923
|
+
* - `budget-exhausted` — the AI-spend budget is used up and the proxy refused the request
|
|
924
|
+
* (`BudgetExhaustedError`, HTTP 402). Terminal, not retried: the
|
|
925
|
+
* budget must be raised out-of-band before any call can succeed.
|
|
913
926
|
*
|
|
914
927
|
* @beta
|
|
915
928
|
*/
|
|
916
|
-
export type TurnFailureReason = 'exception' | 'malformed-function-call' | 'empty-response' | 'unknown-tool-limit' | 'max-iterations' | 'response-truncated' | 'refusal';
|
|
929
|
+
export type TurnFailureReason = 'exception' | 'malformed-function-call' | 'empty-response' | 'unknown-tool-limit' | 'max-iterations' | 'response-truncated' | 'refusal' | 'budget-exhausted';
|
|
917
930
|
/**
|
|
918
931
|
* The result returned by a driver after processing a user turn.
|
|
919
932
|
*
|
|
@@ -929,6 +942,65 @@ export type ChatDriverResult = {
|
|
|
929
942
|
* successful turn, a user cancel, and a driver dispose (none are failures).
|
|
930
943
|
*/
|
|
931
944
|
failureReason?: TurnFailureReason;
|
|
945
|
+
/**
|
|
946
|
+
* Budget figures reported by the proxy, present **only** when
|
|
947
|
+
* `failureReason === 'budget-exhausted'` and the rejection carried them.
|
|
948
|
+
* Lifted off `BudgetExhaustedError` so a host can render the real numbers
|
|
949
|
+
* ("$25.40 of $25") without catching the transport error itself — before
|
|
950
|
+
* this the figures reached the debug log but not the caller, so the
|
|
951
|
+
* assistant's blocked banner could only ever show generic copy.
|
|
952
|
+
*
|
|
953
|
+
* Present whenever the wall carried anything worth reporting — figures, or
|
|
954
|
+
* an attributable vendor. Omitted entirely (not set to `undefined`) when
|
|
955
|
+
* it carried neither, and absent from every non-budget result — a clean
|
|
956
|
+
* turn's shape stays byte-identical to the historical `{ reason: 'done' }`.
|
|
957
|
+
*/
|
|
958
|
+
budget?: {
|
|
959
|
+
/** The configured spend cap in USD, when the proxy reported one. */
|
|
960
|
+
budgetUsd?: number;
|
|
961
|
+
/** Spend already booked against that cap in USD, when reported. */
|
|
962
|
+
spentUsd?: number;
|
|
963
|
+
/**
|
|
964
|
+
* Vendor label of the transport that was refused (e.g. `'Anthropic'`).
|
|
965
|
+
* Always present when `budget` is: it is the one field that keeps a
|
|
966
|
+
* per-vendor budget model open without a breaking change later.
|
|
967
|
+
*/
|
|
968
|
+
vendorLabel: string;
|
|
969
|
+
/**
|
|
970
|
+
* The refusing vendor as a typed {@link AIProviderType}: the normalised
|
|
971
|
+
* key of `vendorLabel` where that label is one a vendor claims, otherwise
|
|
972
|
+
* the normalised key of the proxy's own `vendor` field on the 402.
|
|
973
|
+
*
|
|
974
|
+
* So it is **not** always a normalisation of `vendorLabel`, and the two
|
|
975
|
+
* fields can legitimately disagree — a white-labelled or multiplexing
|
|
976
|
+
* gateway stamps one static transport label in front of several upstreams,
|
|
977
|
+
* and only the proxy can say which of them refused. The fallback is
|
|
978
|
+
* deliberate: it is what keeps attribution working for those deployments
|
|
979
|
+
* instead of degrading them all to "unattributable".
|
|
980
|
+
*
|
|
981
|
+
* Optional because a label no vendor claims and a 402 that names no vendor
|
|
982
|
+
* must degrade to "unattributable" rather than to a wrong attribution.
|
|
983
|
+
* Derived from the label first, rather than from the driver's
|
|
984
|
+
* last-resolved provider, **on purpose**: the label originates at the
|
|
985
|
+
* transport that was actually refused, whereas the last-resolved provider
|
|
986
|
+
* is stale on the classification seam (an orchestrated turn classifies
|
|
987
|
+
* against the registry default, which the chat driver may never have
|
|
988
|
+
* resolved).
|
|
989
|
+
*/
|
|
990
|
+
vendor?: AIProviderType;
|
|
991
|
+
/**
|
|
992
|
+
* The proxy's verdict on whether any OTHER vendor it meters still has
|
|
993
|
+
* headroom (the 402's `otherVendorAvailable`).
|
|
994
|
+
*
|
|
995
|
+
* The only field here a client cannot re-derive, and the reason it is
|
|
996
|
+
* carried: a client can infer "another vendor exists" from registry
|
|
997
|
+
* membership, but never "another vendor has budget left". A `false` is
|
|
998
|
+
* therefore server-known truth that must beat that inference —
|
|
999
|
+
* `FoundationAiAssistant` uses it to stop advising a switch to a vendor
|
|
1000
|
+
* whose pot is already empty. `undefined` means the proxy did not say.
|
|
1001
|
+
*/
|
|
1002
|
+
otherVendorAvailable?: boolean;
|
|
1003
|
+
};
|
|
932
1004
|
} | {
|
|
933
1005
|
reason: 'agent-handoff';
|
|
934
1006
|
summary: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/types/chat.types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat.types.d.ts","sourceRoot":"","sources":["../../../src/types/chat.types.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.js
CHANGED
|
@@ -7,6 +7,7 @@ export { AIProviderRegistry, registerAIProviderRegistry, registerAIProviders, }
|
|
|
7
7
|
export { AnthropicProvider } from './providers/anthropic-provider';
|
|
8
8
|
export { GeminiProvider } from './providers/gemini-provider';
|
|
9
9
|
export { AnthropicTransport, ResponseTruncatedError } from './transports/anthropic-transport';
|
|
10
|
+
export { BUDGETED_VENDORS, BudgetExhaustedError, DEFAULT_BUDGET_EXHAUSTED_MESSAGE, isBudgetedVendor, VENDOR_LABELS, vendorTypeOfLabel, } from './transports/budget-exhausted-error';
|
|
10
11
|
export { GeminiTransport, MalformedFunctionCallError } from './transports/gemini-transport';
|
|
11
12
|
export { AI_FEATURE_FLAG, isAIFeatureEnabled } from './utils/feature-flags';
|
|
12
13
|
export { ChatTemperature } from './utils/temperature';
|
|
@@ -2,6 +2,7 @@ import { __awaiter } from "tslib";
|
|
|
2
2
|
import { SUPPORTED_ANTHROPIC_MODEL_IDS, } from '../types';
|
|
3
3
|
import { logger } from '../utils/logger';
|
|
4
4
|
import { scaleTemperature } from '../utils/temperature';
|
|
5
|
+
import { VENDOR_LABELS } from './budget-exhausted-error';
|
|
5
6
|
import { postWithRetry } from './post-with-retry';
|
|
6
7
|
const ANTHROPIC_DIRECT_URL = 'https://api.anthropic.com/v1/messages';
|
|
7
8
|
const ANTHROPIC_API_VERSION = '2023-06-01';
|
|
@@ -670,7 +671,7 @@ export class AnthropicTransport {
|
|
|
670
671
|
headers: requestHeaders,
|
|
671
672
|
body,
|
|
672
673
|
credentials,
|
|
673
|
-
vendorLabel:
|
|
674
|
+
vendorLabel: VENDOR_LABELS.anthropic,
|
|
674
675
|
retryableStatuses: AnthropicTransport.RETRYABLE_STATUSES,
|
|
675
676
|
timeout: this.timeout,
|
|
676
677
|
stallTimeout: this.stallTimeout,
|