@plurnk/plurnk-providers 1.4.0 → 1.5.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.
Files changed (72) hide show
  1. package/.env.defaults +9 -17
  2. package/README.md +3 -0
  3. package/SPEC.md +40 -23
  4. package/dist/AiSdkProvider.d.ts +2 -1
  5. package/dist/AiSdkProvider.d.ts.map +1 -1
  6. package/dist/AiSdkProvider.js +55 -34
  7. package/dist/AiSdkProvider.js.map +1 -1
  8. package/dist/Mock.d.ts +6 -7
  9. package/dist/Mock.d.ts.map +1 -1
  10. package/dist/Mock.js +1 -0
  11. package/dist/Mock.js.map +1 -1
  12. package/dist/Pool.js +1 -1
  13. package/dist/Pool.js.map +1 -1
  14. package/dist/accounting.d.ts +3 -0
  15. package/dist/accounting.d.ts.map +1 -0
  16. package/dist/accounting.js +84 -0
  17. package/dist/accounting.js.map +1 -0
  18. package/dist/aiSdkTransport.d.ts +2 -1
  19. package/dist/aiSdkTransport.d.ts.map +1 -1
  20. package/dist/aiSdkTransport.js +73 -2
  21. package/dist/aiSdkTransport.js.map +1 -1
  22. package/dist/catalogProvider.d.ts +3 -2
  23. package/dist/catalogProvider.d.ts.map +1 -1
  24. package/dist/catalogProvider.js +11 -11
  25. package/dist/catalogProvider.js.map +1 -1
  26. package/dist/cost.d.ts +1 -1
  27. package/dist/cost.d.ts.map +1 -1
  28. package/dist/cost.js +6 -9
  29. package/dist/cost.js.map +1 -1
  30. package/dist/env.d.ts +0 -6
  31. package/dist/env.d.ts.map +1 -1
  32. package/dist/env.js +0 -22
  33. package/dist/env.js.map +1 -1
  34. package/dist/errors.d.ts.map +1 -1
  35. package/dist/errors.js +2 -0
  36. package/dist/errors.js.map +1 -1
  37. package/dist/index.d.ts +1 -1
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +1 -1
  40. package/dist/index.js.map +1 -1
  41. package/dist/sdkModels.d.ts +2 -0
  42. package/dist/sdkModels.d.ts.map +1 -1
  43. package/dist/sdkModels.js +13 -3
  44. package/dist/sdkModels.js.map +1 -1
  45. package/dist/types.d.ts +9 -0
  46. package/dist/types.d.ts.map +1 -1
  47. package/dist/usage.d.ts +1 -0
  48. package/dist/usage.d.ts.map +1 -1
  49. package/dist/usage.js +38 -5
  50. package/dist/usage.js.map +1 -1
  51. package/package.json +8 -7
  52. package/src/AiSdkProvider.test.ts +277 -17
  53. package/src/AiSdkProvider.ts +70 -40
  54. package/src/Mock.ts +5 -2
  55. package/src/Pool.ts +1 -1
  56. package/src/accounting.test.ts +58 -0
  57. package/src/accounting.ts +88 -0
  58. package/src/aiSdkTransport.ts +77 -3
  59. package/src/boundaries.test.ts +1 -0
  60. package/src/catalogProvider.test.ts +26 -15
  61. package/src/catalogProvider.ts +12 -11
  62. package/src/cost.test.ts +7 -6
  63. package/src/cost.ts +4 -9
  64. package/src/env.test.ts +1 -26
  65. package/src/env.ts +0 -24
  66. package/src/errors.ts +1 -0
  67. package/src/index.ts +1 -1
  68. package/src/sdkModels.test.ts +22 -3
  69. package/src/sdkModels.ts +15 -3
  70. package/src/types.ts +22 -3
  71. package/src/usage.test.ts +9 -1
  72. package/src/usage.ts +40 -7
package/.env.defaults CHANGED
@@ -16,8 +16,8 @@
16
16
  # --- Side-channel reasoning (SPEC §4, #32/#33/#399) ---
17
17
  # ACTIVATION and BUDGET are separate so a numeric can never silently flip wire flags.
18
18
  # off | adaptive | on. The provider maps intent to each backend's native mechanism
19
- # (reasoning_effort, enable_thinking, think, ...). Default ADAPTIVE (owner ruling,
20
- # #399): reasoning ACTIVE on a fresh install, each backend's own adaptive depth,
19
+ # (reasoning_effort, enable_thinking, think, ...). Default ADAPTIVE (#399):
20
+ # reasoning ACTIVE on a fresh install, each backend's own adaptive depth,
21
21
  # no shipped magnitude - a reasoning model that ships un-reasoning blind-edits and
22
22
  # declares done.
23
23
  PLURNK_PROVIDERS_REASONING=adaptive
@@ -68,12 +68,12 @@ PLURNK_PROVIDERS_DRY_MULTIPLIER=0
68
68
  # Total generation-operation timeout (ms), including retries; caller cancellation also spans the operation.
69
69
  PLURNK_PROVIDERS_FETCH_TIMEOUT=600000
70
70
  # Maximum silence (ms) between streamed response-body chunks after response
71
- # streaming begins. Disabled at the portable floor: slow local inference may
72
- # pause legitimately. Enable per alias only from measured endpoint behavior.
73
- PLURNK_PROVIDERS_STREAM_IDLE_TIMEOUT=0
74
- # PLURNK_PROVIDERS_STREAM_IDLE_TIMEOUT_firefast=120000
75
- # Transient-failure retries: 0 = surface the first failure; N = retries on 429/5xx/timeout
76
- # with exponential backoff (Retry-After wins). RETRY_DELAY is the backoff base (ms).
71
+ # streaming begins. Two minutes: generous for slow local inference, fast enough
72
+ # to catch a dead connection before the total timeout. A detected stall consumes
73
+ # the same configured retry budget as every other retryable transport failure.
74
+ PLURNK_PROVIDERS_STREAM_IDLE_TIMEOUT=120000
75
+ # Transient-failure retries: 0 = surface the first failure; N = retries on
76
+ # 429/5xx/stream-idle timeout with the AI SDK's backoff (Retry-After wins).
77
77
  PLURNK_PROVIDERS_RETRY_ATTEMPTS=3
78
78
  # Maximum characters retained from an upstream provider diagnostic in the
79
79
  # public Problem detail. Structured failure facts are not truncated.
@@ -101,14 +101,6 @@ PLURNK_PROVIDERS_PROBE_DELAY=250
101
101
  # pressure are consumer policy, not provider configuration.
102
102
  # PLURNK_PROVIDERS_CONTEXT_WINDOW=200000
103
103
 
104
- # --- Model pricing override (USD per million tokens; {§model-fact-resolution}) ---
105
- # Models.dev owns catalog rates. Set these together for a model absent from the
106
- # snapshot or to deliberately override its rates. Cached input defaults to the
107
- # input rate when omitted. All three knobs are per-alias scopable.
108
- # PLURNK_PROVIDERS_INPUT_USD_PER_MILLION=1
109
- # PLURNK_PROVIDERS_CACHE_READ_USD_PER_MILLION=0.1
110
- # PLURNK_PROVIDERS_OUTPUT_USD_PER_MILLION=5
111
-
112
104
  # --- llama-server detection pin (#34) ---
113
105
  # Unset = auto-detect from the /v1/models fingerprint. 1 = pin llama-server capabilities
114
106
  # (grammar transport, slot pinning, /tokenize) WITHOUT trusting the probe; 0 = force plain
@@ -171,7 +163,7 @@ OPENAI_BASE_URL=https://api.openai.com/v1
171
163
  PLURNK_BASE_URL=https://plurnk.ai/v1
172
164
  # PLURNK_BASE_URL=http://plurnksnr2kihuukt6v22ko72r34dxeatbsfhgow3hvnlw6btanxphad.onion/v1 # Tor
173
165
 
174
- # --- Generation envelope (#507, owner-ruled) - sane defaults from the DETECTED window ---
166
+ # --- Generation envelope (#507) - sane defaults from the DETECTED window ---
175
167
  # When a backend advertises its context window (llama-server n_ctx, the plurnk.ai router,
176
168
  # a cataloged cloud model), the reserves derive from it automatically - ZERO operator
177
169
  # tuning. Each accepts a percentage of the window ("10%") or an absolute token count
package/README.md CHANGED
@@ -142,3 +142,6 @@ record of that procedure, never a substitute for it.
142
142
  npm run test:lint -w @plurnk/plurnk-providers
143
143
  npm run test:unit -w @plurnk/plurnk-providers
144
144
  ```
145
+
146
+ `npm run test:providersPing` is an explicit paid diagnostic; it calls each
147
+ keyed provider once and prints the retained sanitized evidence directory.
package/SPEC.md CHANGED
@@ -74,12 +74,20 @@ hard; consumers do not reinterpret it as ordinary unavailability.
74
74
  endpoint exposes its real vocabulary. Content tokenization does not substitute
75
75
  for complete-request measurement.
76
76
 
77
- §provider-monetary-evidence A provider response may carry an authoritative
78
- settled `charge`; it wins over every local calculation. Otherwise
79
- `calculateCharge` returns estimated, explicitly free, or unknown evidence under
80
- {§provider-cost}. The numeric `calculateCost` method remains only as a frozen
81
- 1.x compatibility surface: a positive value adapts to an estimate, while zero
82
- adapts to unknown because it cannot prove free.
77
+ §provider-monetary-evidence One precedence path converts each provider response
78
+ into {§provider-cost} evidence:
79
+
80
+ | Precedence | Evidence | Result |
81
+ | --- | --- | --- |
82
+ | 1 | A documented monetary field on that response | The adapter normalizes it as `ProviderResponse.charge`; its decimal USD equivalent wins. |
83
+ | 2 | Exact response usage and the exact model's Models.dev rates | `calculateCharge` returns estimated USD, or explicit free when every applicable rate is zero. |
84
+ | 3 | Neither | Unknown; no cost is reported. |
85
+
86
+ Models.dev is the sole supported fallback rate table. Missing usage or rates
87
+ never proves free. The numeric `calculateCost` method remains callable only as a
88
+ frozen 1.x compatibility surface and is not a monetary-reporting authority.
89
+ `providerCostUsd` exposes authoritative, estimated, and free evidence as decimal
90
+ USD and returns `null` for unknown evidence.
83
91
 
84
92
  ### Generation
85
93
 
@@ -190,8 +198,6 @@ The universal groups are:
190
198
  - request, stream-idle, retry, and probe budgets;
191
199
  - local GBNF and llama-server capability pins;
192
200
  - context-window and generation-envelope overrides;
193
- - explicit input, cached-input, and output USD-per-million rates for models
194
- absent from the snapshot or deliberate operator overrides;
195
201
  - opt-in logprob and raw-body capture.
196
202
 
197
203
  Operator secrets and machine-specific values never belong in committed
@@ -213,12 +219,11 @@ Provider and model facts resolve independently:
213
219
  | Context window | Catalog metadata or a local endpoint probe. | `PLURNK_PROVIDERS_CONTEXT_WINDOW`. | Minimum when both exist; the sole value otherwise. A cataloged cloud miss fails construction; a compatible probe miss remains `null` with one warning. |
214
220
  | Completion envelope | Catalog `maxOutput`; there is no live limit probe. | `PLURNK_PROVIDERS_COMPLETION_RESERVE`. | An absolute reserve wins. A percentage derives from the effective window and is capped by catalog `maxOutput` when present. |
215
221
  | Reasoning capability | Catalog `reasoning: true`, exposed by snapshot lookup. | Runtime activation, reserve, and adapter wire style. | The catalog bit is informational; provider construction neither activates nor blocks reasoning from it. |
216
- | Estimated USD rates | Catalog input, output, and optional cache-read rates. | Complete input/output rate override; cache optional. | Operator rates win; otherwise catalog rates apply. Missing rates produce unknown evidence; explicit all-zero rates produce free evidence. No live price fetch exists. |
222
+ | Estimated USD rates | Models.dev input, output, and optional cache-read rates. | None. | Missing rates produce unknown evidence; explicit all-zero rates produce free evidence. No live price fetch exists. |
217
223
 
218
- The cached-input override defaults to the explicit input rate when omitted.
219
- Catalog cache-read cost likewise defaults to catalog input cost. Catalog
220
- cache-write cost remains snapshot information; the current usage estimator has
221
- no cache-write quantity to price.
224
+ Models.dev cache-read cost defaults to its input cost when omitted. Cache-write
225
+ cost remains snapshot information; the current usage record has no cache-write
226
+ quantity to price.
222
227
 
223
228
  `instantiateProvider` resolves in this order:
224
229
 
@@ -239,6 +244,11 @@ Model IDs resolve exactly first. A unique catalog suffix is accepted to avoid
239
244
  forcing a vendor-owned resource prefix into PLURNK aliases. Ambiguous suffixes
240
245
  fail to resolve.
241
246
 
247
+ The catalog package identifies the protocol family, not a mandatory client
248
+ implementation. xAI uses its documented OpenAI-compatible response directly
249
+ because that wire includes exact cost ticks the corresponding AI SDK projection
250
+ omits.
251
+
242
252
  Provider declarations configure facts, not credentials:
243
253
 
244
254
  ```dotenv
@@ -308,9 +318,12 @@ every request:
308
318
  | `on` | true | explicit reasoning budget |
309
319
 
310
320
  The explicit budget may tighten but MUST NOT exceed the resolved reasoning
311
- reserve. `reasoning_format: "auto"` requests a separate readable reasoning
312
- channel. Process-wide llama-server flags are fallback server configuration, not
313
- part of the PLURNK contract and need not be synchronized with an alias.
321
+ reserve. Template calls normally use `reasoning_format: "auto"` for a separate
322
+ readable channel. A GBNF-bearing call uses `"none"` so the exact constrained
323
+ sentence survives response projection; the adapter separates its leading
324
+ reasoning enclosure only after preserving grammar evidence. Process-wide
325
+ llama-server flags are fallback server configuration, not part of the PLURNK
326
+ contract and need not be synchronized with an alias.
314
327
 
315
328
  §llama-reasoning-request The allowance is cumulative across the complete response. Opening a second or
316
329
  later reasoning block does not replenish it. Template parsing, the reasoning
@@ -353,9 +366,12 @@ normal value. Retry exhaustion is preserved as `attempts` and
353
366
  `retryExhausted`, and the resulting Problem is not marked retryable after the
354
367
  provider has consumed its automatic retry budget.
355
368
 
356
- The AI SDK owns attempt scheduling. `PLURNK_PROVIDERS_RETRY_ATTEMPTS` is the
357
- maximum retry count. Caller cancellation spans the operation. Total and
358
- stream-chunk deadlines are separately configurable.
369
+ The AI SDK owns one attempt scheduler around the complete generation exchange.
370
+ `PLURNK_PROVIDERS_RETRY_ATTEMPTS` is the maximum retry count, including a
371
+ configured stream-chunk deadline that expires while consuming a response body.
372
+ The total generation deadline and caller cancellation span that scheduler and
373
+ every attempt; neither restarts during replay. Total and stream-chunk deadlines
374
+ are separately configurable.
359
375
 
360
376
  HTTP 408, 409, 429, and ordinary 5xx responses are retryable unless the endpoint
361
377
  explicitly says otherwise. Endpoint control responses 520–527 are final so a
@@ -391,10 +407,11 @@ When a grammar-capable adapter receives a grammar, `ProviderResponse` carries
391
407
  `grammarEvidence: { input, contentStart, transported }`. `input` is the exact
392
408
  pre-projection sentence represented by the response, `contentStart` is its
393
409
  Unicode-code-point offset to `assistant.content`, and `transported` says whether
394
- the grammar was actually sent. For active llama-server template reasoning, the
395
- adapter reconstructs the Harmony enclosure only when the response demonstrates
396
- that `reasoning_format: "auto"` projected it; otherwise it cannot claim evidence.
397
- For an unsplit response, `input` is `content` and `contentStart` is zero.
410
+ the grammar was actually sent. Active llama-server template reasoning requests
411
+ the unprojected sentence, records it, and then separates its leading enclosure;
412
+ an empty body therefore remains observable. An endpoint that projects despite
413
+ that request supplies no independent evidence. For an unsplit response, `input`
414
+ is `content` and `contentStart` is zero.
398
415
 
399
416
  §gbnf-response-observation The provider transports and represents; it does not grade its own enforcement.
400
417
  The consumer validates `grammarEvidence.input` outside the enforcer's failure
@@ -1,4 +1,4 @@
1
- import type { ChatMessage, PromptTokenMeasurement, Provider, ProviderResponse, ProviderUsage } from "./types.ts";
1
+ import type { AuthoritativeChargeNormalizer, ChatMessage, PromptTokenMeasurement, Provider, ProviderResponse, ProviderUsage } from "./types.ts";
2
2
  import type { ProviderCost } from "@plurnk/plurnk-contracts";
3
3
  import type { Reasoning, ReasoningResponseStyle, ReserveSpec } from "./env.ts";
4
4
  import type { LanguageModel } from "ai";
@@ -23,6 +23,7 @@ export type AiSdkProviderConfig = {
23
23
  calculateCharge?: (usage: ProviderUsage) => Exclude<ProviderCost, {
24
24
  kind: "authoritative";
25
25
  }>;
26
+ normalizeCharge?: AuthoritativeChargeNormalizer;
26
27
  source?: string;
27
28
  grammarStyle?: GrammarStyle;
28
29
  promptCacheKey?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"AiSdkProvider.d.ts","sourceRoot":"","sources":["../src/AiSdkProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiSdkProvider.d.ts","sourceRoot":"","sources":["../src/AiSdkProvider.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import { attributeUnitemizedReasoning } from "./usage.js";
11
11
  import { validateGbnf } from "@plurnk/gbnf";
12
12
  import { assertPromptTokenMeasurement, estimatePromptTokens } from "./promptTokens.js";
13
13
  import { emitWarningOnce } from "./warnings.js";
14
+ import { validateAuthoritativeCharge } from "./cost.js";
14
15
  // Drop trailing occurrences of a server-rendered EOG marker. llama-server
15
16
  // under --special renders EOS as literal text, so a raw-EOS-ended turn carries a
16
17
  // trailing <eos> the grammar never sanctioned. Trailing-only + exact-match, so it
@@ -24,15 +25,10 @@ const stripTrailingSpecial = (content, marker) => {
24
25
  out = out.slice(0, -marker.length);
25
26
  return out;
26
27
  };
27
- // {§provider-tagged-reasoning} Only the model-contract position is structural:
28
- // one exact leading envelope. Parsing after stream assembly keeps SSE and JSON
29
- // on one path and leaves later literal tags in the visible suffix untouched.
30
- const projectTaggedReasoning = (content, structuredReasoning, style) => {
31
- const opening = "<think>";
32
- if (style !== "think-tags" || structuredReasoning.length > 0 || !content.startsWith(opening)) {
28
+ const projectLeadingReasoning = (content, structuredReasoning, opening, closing) => {
29
+ if (structuredReasoning.length > 0 || !content.startsWith(opening)) {
33
30
  return { content, reasoning: structuredReasoning, projected: false, contentStart: 0 };
34
31
  }
35
- const closing = "</think>";
36
32
  const closingIndex = content.indexOf(closing, opening.length);
37
33
  if (closingIndex === -1) {
38
34
  return {
@@ -50,6 +46,17 @@ const projectTaggedReasoning = (content, structuredReasoning, style) => {
50
46
  contentStart: [...content.slice(0, suffixStart)].length,
51
47
  };
52
48
  };
49
+ // {§provider-tagged-reasoning} Only the model-contract position is structural:
50
+ // one exact leading envelope. Parsing after stream assembly keeps SSE and JSON
51
+ // on one path and leaves later literal tags in the visible suffix untouched.
52
+ const projectTaggedReasoning = (content, structuredReasoning, style) => style === "think-tags"
53
+ ? projectLeadingReasoning(content, structuredReasoning, "<think>", "</think>")
54
+ : { content, reasoning: structuredReasoning, projected: false, contentStart: 0 };
55
+ // llama-server's template reasoning parser can project this leading channel out
56
+ // of the OpenAI-compatible response. Grammar evidence needs the sentence before
57
+ // that lossy projection, so constrained template turns request it verbatim and
58
+ // split the observed enclosure here.
59
+ const projectTemplateReasoning = (content) => projectLeadingReasoning(content, "", "<|channel>thought\n", "<channel|>");
53
60
  // Shared budget→effort breakpoints (xai and google had identical copies).
54
61
  export const effortFromBudget = (budget) => {
55
62
  if (budget <= 1000)
@@ -105,6 +112,7 @@ export default class AiSdkProvider {
105
112
  #promptTokensUrl;
106
113
  #calculateCost;
107
114
  #calculateCharge;
115
+ #normalizeCharge;
108
116
  #source;
109
117
  #grammarStyle;
110
118
  #promptCacheKey;
@@ -167,6 +175,7 @@ export default class AiSdkProvider {
167
175
  this.#promptTokensUrl = config.promptTokensUrl;
168
176
  this.#calculateCost = config.calculateCost ?? (() => 0);
169
177
  this.#calculateCharge = config.calculateCharge;
178
+ this.#normalizeCharge = config.normalizeCharge;
170
179
  this.#source = config.source ?? "provider";
171
180
  this.#grammarStyle = config.grammarStyle ?? "none";
172
181
  this.#promptCacheKey = config.promptCacheKey ?? false;
@@ -273,9 +282,10 @@ export default class AiSdkProvider {
273
282
  return this.#calculateCharge?.(usage)
274
283
  ?? { kind: "unknown", reason: "no provider rate or settled charge is available" };
275
284
  }
276
- // Reasoning intent maps independently of grammar transport. The llama-server
277
- // template mapping is owned by {§llama-reasoning-request}.
278
- #reasoningBody() {
285
+ // Reasoning activation and allowance are independent of grammar transport;
286
+ // only the response representation becomes lossless when evidence is needed.
287
+ // The llama-server template mapping is owned by {§llama-reasoning-request}.
288
+ #reasoningBody(preserveGrammarSentence = false) {
279
289
  const { mode, budget } = this.#reasoning;
280
290
  const on = mode !== "off";
281
291
  switch (this.#reasoningStyle) {
@@ -285,7 +295,7 @@ export default class AiSdkProvider {
285
295
  : mode === "on" ? budget : this.reasoningReserve;
286
296
  return {
287
297
  chat_template_kwargs: { enable_thinking: on },
288
- reasoning_format: "auto",
298
+ reasoning_format: preserveGrammarSentence ? "none" : "auto",
289
299
  ...(allowance === null ? {} : { thinking_budget_tokens: allowance }),
290
300
  };
291
301
  }
@@ -473,6 +483,8 @@ export default class AiSdkProvider {
473
483
  if (wantGrammar && this.#gbnfDebug)
474
484
  this.#assertGrammarValid(grammar);
475
485
  const sendGrammar = wantGrammar && !this.#gbnfDebug ? grammar : undefined;
486
+ const preserveGrammarSentence = wantGrammar
487
+ && this.#reasoningStyle === "template";
476
488
  // Assembly order = precedence: the family's sampling DEFAULTS
477
489
  // (PLURNK_PROVIDERS_TEMPERATURE — universal, measured on grammar
478
490
  // paths and the name promises every request) < the caller's `sampling`
@@ -485,7 +497,7 @@ export default class AiSdkProvider {
485
497
  ...(this.#serviceTier !== undefined ? { service_tier: this.#serviceTier } : {}),
486
498
  model: this.#model,
487
499
  messages,
488
- ...this.#reasoningBody(),
500
+ ...this.#reasoningBody(preserveGrammarSentence),
489
501
  ...this.#grammarBody(sendGrammar),
490
502
  ...(maxTokens !== undefined ? { max_tokens: maxTokens } : {}),
491
503
  // Request per-token logprobs only when enabled (managed field —
@@ -499,7 +511,9 @@ export default class AiSdkProvider {
499
511
  };
500
512
  // Per-request headers = static auth/routing + any first-party telemetry.
501
513
  const metaHeaders = this.#metadataHeaders(attributions, client, strikes, workerId, primaryWorkerId, workspaceId, loop, turn);
502
- const headers = Object.keys(metaHeaders).length > 0 ? { ...this.#headers, ...metaHeaders } : this.#headers;
514
+ const headers = Object.keys(metaHeaders).length === 0
515
+ ? this.#headers
516
+ : { ...this.#headers, ...metaHeaders };
503
517
  let raw;
504
518
  try {
505
519
  raw = this.#languageModel === undefined
@@ -567,41 +581,43 @@ export default class AiSdkProvider {
567
581
  // wire text for forensics.
568
582
  if (this.#eosText !== undefined)
569
583
  raw.content = stripTrailingSpecial(raw.content, this.#eosText);
570
- const taggedReasoning = projectTaggedReasoning(raw.content, raw.reasoning, this.#reasoningResponseStyle);
571
- // Preserve the exact sentence seen at the grammar boundary. llama-server's
572
- // `reasoning_format: "auto"` projects one raw Harmony enclosure into the
573
- // reasoning/content fields; the wire field's presence is the proof that the
574
- // projection occurred. The provider represents this evidence and never grades it.
584
+ const grammarInput = raw.content;
585
+ const projectedReasoning = preserveGrammarSentence && !raw.reasoningProjected
586
+ ? projectTemplateReasoning(raw.content)
587
+ : projectTaggedReasoning(raw.content, raw.reasoning, this.#reasoningResponseStyle);
588
+ // Preserve the exact sentence seen at the grammar boundary. Constrained
589
+ // template turns request `reasoning_format: "none"`, so even an empty
590
+ // channel remains observable. An unexpectedly projected response cannot
591
+ // supply independent pre-projection evidence.
575
592
  let grammarEvidence;
576
593
  if (wantGrammar) {
577
- if (taggedReasoning.projected) {
578
- grammarEvidence = {
579
- input: raw.content,
580
- contentStart: taggedReasoning.contentStart,
581
- transported: sendGrammar !== undefined,
582
- };
583
- }
584
- else if (this.#reasoningStyle === "template" && this.#reasoning.mode !== "off") {
585
- if (raw.reasoningProjected) {
586
- const prefix = `<|channel>thought\n${raw.reasoning}<channel|>`;
594
+ if (preserveGrammarSentence) {
595
+ if (!raw.reasoningProjected) {
587
596
  grammarEvidence = {
588
- input: `${prefix}${raw.content}`,
589
- contentStart: [...prefix].length,
597
+ input: grammarInput,
598
+ contentStart: projectedReasoning.projected ? projectedReasoning.contentStart : 0,
590
599
  transported: sendGrammar !== undefined,
591
600
  };
592
601
  }
593
602
  }
603
+ else if (projectedReasoning.projected) {
604
+ grammarEvidence = {
605
+ input: grammarInput,
606
+ contentStart: projectedReasoning.contentStart,
607
+ transported: sendGrammar !== undefined,
608
+ };
609
+ }
594
610
  else {
595
611
  grammarEvidence = {
596
- input: raw.content,
612
+ input: grammarInput,
597
613
  contentStart: 0,
598
614
  transported: sendGrammar !== undefined,
599
615
  };
600
616
  }
601
617
  }
602
- if (taggedReasoning.projected) {
603
- raw.content = taggedReasoning.content;
604
- raw.reasoning = taggedReasoning.reasoning;
618
+ if (projectedReasoning.projected) {
619
+ raw.content = projectedReasoning.content;
620
+ raw.reasoning = projectedReasoning.reasoning;
605
621
  raw.usage = attributeUnitemizedReasoning(raw.usage, raw.reasoning, raw.content);
606
622
  }
607
623
  let notices;
@@ -646,8 +662,13 @@ export default class AiSdkProvider {
646
662
  model: raw.model,
647
663
  ...(logprobs !== undefined ? { logprobs, meanLogprob } : {}),
648
664
  };
665
+ const normalizedCharge = this.#normalizeCharge?.(raw.chargeEvidence);
666
+ const charge = normalizedCharge === undefined
667
+ ? undefined
668
+ : validateAuthoritativeCharge(normalizedCharge);
649
669
  const evidence = {
650
670
  assistantRaw: raw,
671
+ ...(charge === undefined ? {} : { charge }),
651
672
  ...(grammarEvidence !== undefined ? { grammarEvidence } : {}),
652
673
  ...(raw.rawBody !== undefined ? { rawBody: raw.rawBody } : {}),
653
674
  ...(meta !== undefined ? { meta } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"AiSdkProvider.js","sourceRoot":"","sources":["../src/AiSdkProvider.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,oEAAoE;AACpE,wEAAwE;AACxE,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,iEAAiE;AAKjE,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEjF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AA0HhD,0EAA0E;AAC1E,iFAAiF;AACjF,kFAAkF;AAClF,mFAAmF;AACnF,6DAA6D;AAC7D,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAE,MAAc,EAAU,EAAE;IACrE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,IAAI,GAAG,GAAG,OAAO,CAAC;IAClB,OAAO,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAChE,OAAO,GAAG,CAAC;AACf,CAAC,CAAC;AASF,+EAA+E;AAC/E,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,sBAAsB,GAAG,CAC3B,OAAe,EACf,mBAA2B,EAC3B,KAA6B,EACJ,EAAE;IAC3B,MAAM,OAAO,GAAG,SAAS,CAAC;IAC1B,IAAI,KAAK,KAAK,YAAY,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3F,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IAC1F,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC;IAC3B,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9D,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,OAAO;YACH,OAAO,EAAE,EAAE;YACX,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACxC,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM;SACpC,CAAC;IACN,CAAC;IACD,MAAM,WAAW,GAAG,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAClD,OAAO;QACH,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;QACnC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC;QACtD,SAAS,EAAE,IAAI;QACf,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM;KAC1D,CAAC;AACN,CAAC,CAAC;AAEF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAAc,EAA6B,EAAE;IAC1E,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,QAAQ,CAAC;IACpC,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAEF,8EAA8E;AAC9E,uBAAuB;AACvB,iFAAiF;AACjF,6FAA6F;AAC7F,2EAA2E;AAC3E,gFAAgF;AAChF,iFAAiF;AACjF,+EAA+E;AAC/E,6EAA6E;AAC7E,oDAAoD;AACpD,8EAA8E;AAC9E,yEAAyE;AACzE,4EAA4E;AAC5E,iDAAiD;AACjD,MAAM,kBAAkB,GAAwB,IAAI,GAAG,CAAC;IACpD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc;IACpH,kBAAkB,EAAE,kBAAkB,EAAE,UAAU,EAAE,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,qCAAqC;IACzK,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB;IAChF,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,uBAAuB;IAC1E,kBAAkB;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAS;IACf,IAAI,CAAqB;IACzB,cAAc,CAA4B;IAC1C,eAAe,CAAS;IACxB,oBAAoB,CAAqB;IACzC,QAAQ,CAAyB;IACjC,MAAM,CAAgB;IACtB,UAAU,GAAG,KAAK,CAAC;IACnB,sBAAsB,CAAqB;IAC3C,QAAQ,CAAqB;IAC7B,cAAc,CAAgB;IAC9B,UAAU,CAAY;IACtB,YAAY,CAAS;IACrB,cAAc,CAAS;IACvB,iBAAiB,CAAS;IAC1B,cAAc,CAAqB;IACnC,QAAQ,CAAqB;IAC7B,iBAAiB,CAAqB;IACtC,YAAY,CAAqB;IACjC,eAAe,CAAiB;IAChC,uBAAuB,CAAyB;IAChD,kBAAkB,CAAuH;IACzI,gBAAgB,CAAqB;IACrC,cAAc,CAAmC;IACjD,gBAAgB,CAA8E;IAC9F,OAAO,CAAS;IAChB,aAAa,CAAe;IAC5B,eAAe,CAAU;IACzB,YAAY,CAAqB;IACjC,UAAU,CAAU;IACpB,UAAU,CAAU;IACpB,mBAAmB,CAAU;IAC7B,oBAAoB,CAAU;IAC9B,UAAU,CAAgB;IAC1B,cAAc,CAAS;IACvB,iBAAiB,CAAqB;IACtC,YAAY,CAAgB;IAC5B,iBAAiB,CAA0B;IAC3C,kBAAkB,CAA0B;IAC5C,aAAa,CAAU;IACvB,QAAQ,CAAU;IAClB,YAAY,CAAqB;IACjC,kBAAkB,CAAsB;IAC/B,YAAY,CAA4D;IAEjF,mGAAmG;IACnG,wEAAwE;IACxE,2EAA2E;IAC3E,wDAAwD;IACxD,QAAQ,CAAuC;IAE/C,YAAY,MAA2B;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,+DAA+D,CAAC,CAAC;QACnH,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC;QAC7C,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,mBAAmB,CAAC;QACvD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/E,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,uEAAuE;QACvE,sEAAsE;QACtE,+CAA+C;QAC/C,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACrF,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,6GAA6G,CAAC,CAAC;QACjK,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,OAAO,MAAM,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QACnG,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC;QACvD,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,IAAI,UAAU,CAAC;QAC3E,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,IAAI,MAAM,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YACjF,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,4DAA4D,CAAC,CAAC;QAChH,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrG,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,aAAa,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,eAAe,CAAC;QAC/C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,UAAU,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;QACtD,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,KAAK,CAAC;QAC5C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QAC3C,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,kBAAkB,IAAI,KAAK,CAAC;QAC9D,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,eAAe,IAAI,IAAI,CAAC,QAAQ,CAAC;QACnD,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,mBAAmB,IAAI,KAAK,CAAC;QAChE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC;QAC/C,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QACjD,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC;QACnD,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC/C,IAAI,IAAI,CAAC,eAAe,KAAK,UAAU;eAChC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,IAAI;eAC7B,gBAAgB,KAAK,IAAI;eACzB,IAAI,CAAC,UAAU,CAAC,MAAO,GAAG,gBAAgB,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,wCAAwC,IAAI,CAAC,UAAU,CAAC,MAAM,8DAA8D,gBAAgB,GAAG,CAAC,CAAC;QACpL,CAAC;QACD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAC/B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,GAAG,KAAK,EAAE,IAAY,EAAqB,EAAE;gBACtD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;oBACvC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE;oBACjE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBACvC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;iBACpD,CAAC,CAAC;gBACH,IAAI,CAAC,GAAG,CAAC,EAAE;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,gCAAgC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC1F,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyB,CAAC;gBAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;oBACxE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,6CAA6C,CAAC,CAAC;gBAClF,CAAC;gBACD,OAAO,MAAM,CAAC;YAClB,CAAC,CAAC;QACN,CAAC;IACL,CAAC;IAED,IAAI,aAAa,KAAoB,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAClE,sGAAsG;IACtG,yEAAyE;IACzE,eAAe,CAAC,IAA6B;QACzC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,QAAQ,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC;QACzC,OAAO,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;IAChG,CAAC;IACD,IAAI,gBAAgB,KAAoB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC9F,IAAI,iBAAiB,KAAoB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAChG,IAAI,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,sEAAsE;IACtE,IAAI,WAAW,KAAyB,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IACnE,yEAAyE;IACzE,IAAI,iBAAiB,KAA0B,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAChF,qEAAqE;IACrE,2EAA2E;IAC3E,qEAAqE;IACrE,IAAI,gBAAgB,KAAc,OAAO,IAAI,CAAC,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC;IAEzE,KAAK,CAAC,iBAAiB,CACnB,QAAgC,EAChC,MAAoB;QAEpB,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO,4BAA4B,CAC/B,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,EAC/C,IAAI,CAAC,OAAO,CACf,CAAC;QACN,CAAC;QAED,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC1D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBACtD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE;gBACjE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACjB,KAAK,EAAE,IAAI,CAAC,MAAM;oBAClB,QAAQ;oBACR,GAAG,IAAI,CAAC,cAAc,EAAE;iBAC3B,CAAC;gBACF,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aAC9E,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,oBAAoB,CACvB,QAAQ,EACR,mDAAmD,QAAQ,CAAC,MAAM,EAAE,CACvE,CAAC;YACN,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAgC,CAAC;YACjE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAK,IAAI,CAAC,YAAuB,GAAG,CAAC,EAAE,CAAC;gBAC5E,OAAO,oBAAoB,CACvB,QAAQ,EACR,iFAAiF,CACpF,CAAC;YACN,CAAC;YACD,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,IAAI,CAAC,YAAsB;gBACnC,MAAM,EAAE,gDAAgD;aAC3D,CAAC;QACN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,OAAO,oBAAoB,CACvB,QAAQ,EACR,gDAAgD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC3G,CAAC;QACN,CAAC;IACL,CAAC;IACD,aAAa,CAAC,KAAoB,IAAY,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAClF,eAAe,CAAC,KAAoB;QAChC,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC;eAC9B,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,iDAAiD,EAAE,CAAC;IAC1F,CAAC;IAED,6EAA6E;IAC7E,2DAA2D;IAC3D,cAAc;QACV,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QACzC,MAAM,EAAE,GAAG,IAAI,KAAK,KAAK,CAAC;QAC1B,QAAQ,IAAI,CAAC,eAAe,EAAE,CAAC;YAC3B,KAAK,UAAU,EAAE,CAAC;gBACd,MAAM,SAAS,GAAG,IAAI,KAAK,KAAK;oBAC5B,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;gBACrD,OAAO;oBACH,oBAAoB,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE;oBAC7C,gBAAgB,EAAE,MAAM;oBACxB,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,SAAS,EAAE,CAAC;iBACvE,CAAC;YACN,CAAC;YACD,KAAK,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,KAAK,mBAAmB,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,iEAAiE;YACjE,wCAAwC;YACxC,KAAK,QAAQ,EAAE,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,MAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3F,sEAAsE;YACtE,mEAAmE;YACnE,qEAAqE;YACrE,sEAAsE;YACtE,8DAA8D;YAC9D,oEAAoE;YACpE,eAAe;YACf,KAAK,iBAAiB,EAAE,OAAO,IAAI,KAAK,KAAK;gBACzC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,EAAE;gBAC9B,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,MAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,gCAAgC;YAChC,KAAK,iBAAiB,EAAE,OAAO,IAAI,KAAK,KAAK;gBACzC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;gBACpC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;oBACd,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC7B,gBAAgB,EAAE,gBAAgB,CAAC,MAAO,CAAC;iBAC9C,CAAC,CAAC,CAAC,EAAE,CAAC;YACX,mEAAmE;YACnE,iEAAiE;YACjE,KAAK,WAAW,EAAE,OAAO,IAAI,KAAK,KAAK;gBACnC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;gBACpC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,KAAK,MAAM,EAAE,OAAO,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,8EAA8E;IAC9E,0EAA0E;IAC1E,uEAAuE;IACvE,4EAA4E;IAC5E,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,SAAS,GAAG,CAAC,CAAC;IAEd,SAAS,CAAC,QAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAC7F,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;YAC1C,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAe,CAAC,CAAC;YACxE,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,mCAAmC;QACxE,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,yFAAyF;IACzF,6CAA6C;IAC7C,YAAY,CAAC,OAA2B;QACpC,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACrC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,uEAAuE;YACvE,gDAAgD;YAChD,KAAK,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;YACzE,KAAK,MAAM,EAAE,OAAO,EAAE,CAAC;QAC3B,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,yEAAyE;IACzE,kFAAkF;IAClF,6EAA6E;IAC7E,oFAAoF;IACpF,oEAAoE;IACpE,8DAA8D;IAC9D,yFAAyF;IACzF,8FAA8F;IAC9F,sBAAsB;QAClB,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;YACzB,sEAAsE;YACtE,6EAA6E;YAC7E,6EAA6E;YAC7E,KAAK,UAAU,EAAE,OAAO;gBACpB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;oBAC/D,cAAc,EAAE,IAAI,CAAC,cAAc;oBACnC,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnE,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClG,CAAC,CAAC,CAAC,EAAE,CAAC;aACV,CAAC;YACF,KAAK,MAAM,EAAE,OAAO,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxG,CAAC;IACL,CAAC;IAED,8FAA8F;IAC9F,6EAA6E;IAC7E,4EAA4E;IAC5E,8EAA8E;IAC9E,yEAAyE;IACzE,qFAAqF;IACrF,yEAAyE;IACzE,sEAAsE;IACtE,gBAAgB,CAAC,YAAkC,EAAE,MAA0B,EAAE,OAA2B,EAAE,QAAgB,EAAE,eAAmC,EAAE,WAA+B,EAAE,IAAwB,EAAE,IAAwB;QACpP,IAAI,CAAC,IAAI,CAAC,mBAAmB;YAAE,OAAO,EAAE,CAAC;QACzC,MAAM,CAAC,GAA2B,EAAE,CAAC;QACrC,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAClH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC;QAC3E,IAAI,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC;YAAE,CAAC,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9G,uCAAuC;QACvC,mEAAmE;QACnE,yEAAyE;QACzE,CAAC,CAAC,kBAAkB,CAAC,GAAG,QAAQ,CAAC;QACjC,wFAAwF;QACxF,sEAAsE;QACtE,wEAAwE;QACxE,oEAAoE;QACpE,yEAAyE;QACzE,0EAA0E;QAC1E,mDAAmD;QACnD,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,CAAC,uBAAuB,CAAC,GAAG,eAAe,CAAC;QAC9G,iEAAiE;QACjE,oEAAoE;QACpE,uEAAuE;QACvE,kDAAkD;QAClD,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YAAE,CAAC,CAAC,qBAAqB,CAAC,GAAG,WAAW,CAAC;QAChG,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;YAAE,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/F,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;YAAE,CAAC,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/F,OAAO,CAAC,CAAC;IACb,CAAC;IAED,0GAA0G;IAC1G,wEAAwE;IACxE,+EAA+E;IAC/E,+EAA+E;IAC/E,+EAA+E;IAC/E,0EAA0E;IAC1E,gEAAgE;IAChE,mBAAmB,CAAC,OAAe;QAC/B,IAAI,CAAC;YACD,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,oEAAqE,KAAe,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/H,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,4EAA4E;IAC5E,kEAAkE;IAClE,UAAU,CAAC,aAAsC;QAC7C,MAAM,IAAI,GAA4B,EAAE,GAAG,aAAa,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IAED,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,4EAA4E;IAC5E,8DAA8D;IAC9D,mCAAmC;IACnC,aAAa,CAAC,QAA6C;QACvD,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,EAAE,CAAC;QACtC,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1F,OAAO,GAAG,CAAC;IACf,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAA2R;QACza,yDAAyD;QACzD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;QAC9I,mDAAmD;QACnD,uCAAuC;QACvC,MAAM,EAAE,cAAc,EAAE,CAAC;QAEzB,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,WAAW,GAAG,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,MAAM,CAAC;QAC3E,IAAI,WAAW,IAAI,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,mBAAmB,CAAC,OAAQ,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1E,8DAA8D;QAC9D,iEAAiE;QACjE,uEAAuE;QACvE,0CAA0C;QAC1C,MAAM,IAAI,GAA4B;YAClC,oEAAoE;YACpE,yEAAyE;YACzE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnG,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/E,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,QAAQ;YACR,GAAG,IAAI,CAAC,cAAc,EAAE;YACxB,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;YACjC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,gEAAgE;YAChE,sEAAsE;YACtE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAC3B,2DAA2D;YAC3D,wEAAwE;YACxE,qEAAqE;YACrE,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;QAEF,yEAAyE;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7H,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3G,IAAI,GAAG,CAAC;QACR,IAAI,CAAC;YACD,GAAG,GAAG,IAAI,CAAC,cAAc,KAAK,SAAS;gBACnC,CAAC,CAAC,MAAM,uBAAuB,CAAC;oBAC5B,GAAG,EAAE,IAAI,CAAC,IAAK;oBACf,KAAK,EAAE,IAAI,CAAC,MAAM;oBAClB,OAAO;oBACP,IAAI;oBACJ,QAAQ;oBACR,MAAM;oBACN,KAAK,EAAE,IAAI,CAAC,MAAM;oBAClB,cAAc,EAAE,IAAI,CAAC,eAAe;oBACpC,mBAAmB,EAAE,IAAI,CAAC,oBAAoB;oBAC9C,aAAa,EAAE,IAAI,CAAC,cAAc;oBAClC,SAAS,EAAE,IAAI,CAAC,UAAU;oBAC1B,cAAc,EAAE,IAAI,CAAC,QAAQ;iBAChC,CAAC;gBACF,CAAC,CAAC,MAAM,iBAAiB,CAAC;oBACtB,aAAa,EAAE,IAAI,CAAC,cAAc;oBAClC,OAAO;oBACP,QAAQ;oBACR,MAAM;oBACN,cAAc,EAAE,IAAI,CAAC,eAAe;oBACpC,mBAAmB,EAAE,IAAI,CAAC,oBAAoB;oBAC9C,aAAa,EAAE,IAAI,CAAC,cAAc;oBAClC,SAAS,EAAE,IAAI,CAAC,UAAU;oBAC1B,cAAc,EAAE,IAAI,CAAC,QAAQ;oBAC7B,WAAW,EAAE,IAAI,CAAC,aAAa;wBAC3B,CAAC,CAAC,CAAC,OAAO,QAAQ,EAAE,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;wBACxF,CAAC,CAAC,OAAO,QAAQ,EAAE,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;oBAClF,IAAI,EAAE,OAAO,QAAQ,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBACtE,IAAI,EAAE,OAAO,QAAQ,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBACtE,eAAe,EAAE,OAAO,QAAQ,EAAE,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;oBACvG,gBAAgB,EAAE,OAAO,QAAQ,EAAE,iBAAiB,KAAK,QAAQ;wBAC7D,CAAC,CAAC,QAAQ,CAAC,iBAAiB;wBAC5B,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS;oBAC3F,aAAa,EAAE,OAAO,QAAQ,EAAE,IAAI,KAAK,QAAQ;wBAC7C,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACjB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;4BACxF,CAAC,CAAC,QAAQ,CAAC,IAAI;4BACf,CAAC,CAAC,SAAS;oBACnB,IAAI,EAAE,OAAO,QAAQ,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACpE,eAAe,EAAE,SAAS;oBAC1B,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,KAAK;wBACrC,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,UAAU;4BACjC,CAAC,CAAC,kBAAkB;4BACpB,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAO,CAAC;iBACtD,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,GAAG,CAAC;YAC/B,MAAM,EAAE,GAAG,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtE,IAAI,CAAC,EAAE,CAAC,MAAM,KAAK,GAAG,IAAI,EAAE,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;gBAC3G,MAAM,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC1H,CAAC;YACD,MAAM,EAAE,CAAC;QACb,CAAC;QAED,sEAAsE;QACtE,8EAA8E;QAC9E,4EAA4E;QAC5E,6EAA6E;QAC7E,+EAA+E;QAC/E,2BAA2B;QAC3B,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,GAAG,CAAC,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEhG,MAAM,eAAe,GAAG,sBAAsB,CAC1C,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,SAAS,EACb,IAAI,CAAC,uBAAuB,CAC/B,CAAC;QAEF,2EAA2E;QAC3E,yEAAyE;QACzE,4EAA4E;QAC5E,kFAAkF;QAClF,IAAI,eAA4C,CAAC;QACjD,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,eAAe,CAAC,SAAS,EAAE,CAAC;gBAC5B,eAAe,GAAG;oBACd,KAAK,EAAE,GAAG,CAAC,OAAO;oBAClB,YAAY,EAAE,eAAe,CAAC,YAAY;oBAC1C,WAAW,EAAE,WAAW,KAAK,SAAS;iBACzC,CAAC;YACN,CAAC;iBAAM,IAAI,IAAI,CAAC,eAAe,KAAK,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC/E,IAAI,GAAG,CAAC,kBAAkB,EAAE,CAAC;oBACzB,MAAM,MAAM,GAAG,sBAAsB,GAAG,CAAC,SAAS,YAAY,CAAC;oBAC/D,eAAe,GAAG;wBACd,KAAK,EAAE,GAAG,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE;wBAChC,YAAY,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM;wBAChC,WAAW,EAAE,WAAW,KAAK,SAAS;qBACzC,CAAC;gBACN,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,eAAe,GAAG;oBACd,KAAK,EAAE,GAAG,CAAC,OAAO;oBAClB,YAAY,EAAE,CAAC;oBACf,WAAW,EAAE,WAAW,KAAK,SAAS;iBACzC,CAAC;YACN,CAAC;QACL,CAAC;QAED,IAAI,eAAe,CAAC,SAAS,EAAE,CAAC;YAC5B,GAAG,CAAC,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;YACtC,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC;YAC1C,GAAG,CAAC,KAAK,GAAG,4BAA4B,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,OAAqC,CAAC;QAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QACxB,IAAI,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3D,6CAA6C;YAC7C,uEAAuE;YACvE,mEAAmE;YACnE,qEAAqE;YACrE,IAAI,CAAC;gBACD,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACvD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;oBAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;iBAC/B,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;gBAC9D,IAAI,KAAK,CAAC,UAAU,GAAG,OAAO,GAAG,EAAE,EAAE,CAAC;oBAClC,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;wBAClB,MAAM,EAAE,IAAI,CAAC,OAAO;wBACpB,IAAI,EAAE,oBAAoB;wBAC1B,KAAK,EAAE,MAAM;wBACb,OAAO,EAAE,+BAA+B,KAAK,CAAC,UAAU,sCAAsC,OAAO,oGAAoG;wBACzM,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM;qBACpC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,eAAe,CACX,GAAG,IAAI,CAAC,OAAO,iDAAiD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EACzH,wCAAwC,CAC3C,CAAC;YACN,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,MAAM,WAAW,GAAG,QAAQ,KAAK,SAAS;YACtC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM;YAC3E,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,SAAS,GAAG;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YAC1D,GAAG,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;gBACjC,CAAC,CAAC,EAAE,kBAAkB,EAAE,GAAG,CAAC,kBAAkB,EAAE;gBAChD,CAAC,CAAC,EAAE,CAAC;YACT,KAAK;YACL,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC;QACF,MAAM,QAAQ,GAAG;YACb,YAAY,EAAE,GAAG;YACjB,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAC;QACF,IAAI,GAAG,CAAC,YAAY,KAAK,sBAAsB,EAAE,CAAC;YAC9C,MAAM,OAAO,GAA6C;gBACtD,SAAS,EAAE,EAAE,GAAG,SAAS,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE;gBAC3D,GAAG,QAAQ;aACd,CAAC;YACF,MAAM,IAAI,aAAa,CACnB,IAAI,CAAC,OAAO,EACZ,sBAAsB,EACtB,mFAAmF,EACnF;gBACI,OAAO;gBACP,UAAU,EAAE;oBACR,KAAK,EAAE,mBAAmB;oBAC1B,YAAY,EAAE,sBAAsB;oBACpC,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,SAAS;wBACjC,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,EAAE,eAAe,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC;iBAClD;aACJ,CACJ,CAAC;QACN,CAAC;QACD,OAAO;YACH,SAAS,EAAE,EAAE,GAAG,SAAS,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE;YAC3D,GAAG,QAAQ;SACd,CAAC;IACN,CAAC;CACJ"}
1
+ {"version":3,"file":"AiSdkProvider.js","sourceRoot":"","sources":["../src/AiSdkProvider.ts"],"names":[],"mappings":"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"}
package/dist/Mock.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ChatMessage, FinishReason, GrammarEvidence, PromptTokenMeasurement, Provider, ProviderAssistant, ProviderEncryptedReasoningItem, ProviderResponse, ProviderUsage } from "./types.ts";
1
+ import type { AuthoritativeCharge, ChatMessage, FinishReason, GrammarEvidence, PromptTokenMeasurement, Provider, ProviderAssistant, ProviderEncryptedReasoningItem, ProviderResponse, ProviderUsage } from "./types.ts";
2
2
  import type { ProviderCost } from "@plurnk/plurnk-contracts";
3
3
  export type MockAssistant = {
4
4
  content: string;
@@ -12,6 +12,7 @@ export type MockAssistant = {
12
12
  export type MockResponse = {
13
13
  assistant: MockAssistant;
14
14
  assistantRaw?: unknown;
15
+ charge?: AuthoritativeCharge;
15
16
  grammarEvidence?: GrammarEvidence;
16
17
  };
17
18
  export type MockReturnedAssistant = ProviderAssistant & {
@@ -21,6 +22,9 @@ export type MockReturnedResponse = ProviderResponse & {
21
22
  assistant: MockReturnedAssistant;
22
23
  };
23
24
  declare const DEFAULT_USAGE: ProviderUsage;
25
+ type MockGenerateArgs = Omit<Parameters<Provider["generate"]>[0], "workerId"> & {
26
+ workerId?: string;
27
+ };
24
28
  export default class Mock implements Provider {
25
29
  #private;
26
30
  constructor({ contextWindow, responses }: {
@@ -36,12 +40,7 @@ export default class Mock implements Provider {
36
40
  calculateCharge(_usage: ProviderUsage): Exclude<ProviderCost, {
37
41
  kind: "authoritative";
38
42
  }>;
39
- generate({ signal, grammar }: {
40
- messages: ChatMessage[];
41
- workerId?: string;
42
- signal?: AbortSignal;
43
- grammar?: string;
44
- }): Promise<MockReturnedResponse>;
43
+ generate({ signal, grammar }: MockGenerateArgs): Promise<MockReturnedResponse>;
45
44
  get remaining(): number;
46
45
  }
47
46
  export { DEFAULT_USAGE as mockDefaultUsage };
@@ -1 +1 @@
1
- {"version":3,"file":"Mock.d.ts","sourceRoot":"","sources":["../src/Mock.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACnM,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kBAAkB,CAAC,EAAE,aAAa,CAAC,8BAA8B,CAAC,CAAC;IAKnE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,SAAS,EAAE,aAAa,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,eAAe,CAAC;CACrC,CAAC;AAGF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,GAAG;IAAE,SAAS,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAE3F,QAAA,MAAM,aAAa,EAAE,aAA+E,CAAC;AAErG,MAAM,CAAC,OAAO,OAAO,IAAK,YAAW,QAAQ;;IAczC,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE;QAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,YAAY,EAAE,CAAA;KAAE,EAMpG;IAED,IAAI,aAAa,IAAI,MAAM,GAAG,IAAI,CAAgC;IAClE,IAAI,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAAmC;IACxE,IAAI,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAAoC;IAC1E,IAAI,KAAK,IAAI,MAAM,CAAmB;IAKhC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAMzF;IAGD,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAAc;IAC1D,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE;QAAE,IAAI,EAAE,eAAe,CAAA;KAAE,CAAC,CAAsD;IAExI,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA0BzJ;IAED,IAAI,SAAS,IAAI,MAAM,CAA+B;CACzD;AAED,OAAO,EAAE,aAAa,IAAI,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"Mock.d.ts","sourceRoot":"","sources":["../src/Mock.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxN,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzB,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kBAAkB,CAAC,EAAE,aAAa,CAAC,8BAA8B,CAAC,CAAC;IAKnE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACvB,SAAS,EAAE,aAAa,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,eAAe,CAAC,EAAE,eAAe,CAAC;CACrC,CAAC;AAGF,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG;IAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,GAAG;IAAE,SAAS,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAE3F,QAAA,MAAM,aAAa,EAAE,aAA+E,CAAC;AACrG,KAAK,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtG,MAAM,CAAC,OAAO,OAAO,IAAK,YAAW,QAAQ;;IAczC,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,EAAE;QAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,YAAY,EAAE,CAAA;KAAE,EAMpG;IAED,IAAI,aAAa,IAAI,MAAM,GAAG,IAAI,CAAgC;IAClE,IAAI,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAAmC;IACxE,IAAI,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAAoC;IAC1E,IAAI,KAAK,IAAI,MAAM,CAAmB;IAKhC,iBAAiB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAMzF;IAGD,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAAc;IAC1D,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE;QAAE,IAAI,EAAE,eAAe,CAAA;KAAE,CAAC,CAAsD;IAExI,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2BnF;IAED,IAAI,SAAS,IAAI,MAAM,CAA+B;CACzD;AAED,OAAO,EAAE,aAAa,IAAI,gBAAgB,EAAE,CAAC"}
package/dist/Mock.js CHANGED
@@ -68,6 +68,7 @@ export default class Mock {
68
68
  return {
69
69
  assistant,
70
70
  assistantRaw: next.assistantRaw ?? null,
71
+ ...(next.charge === undefined ? {} : { charge: next.charge }),
71
72
  ...(grammarEvidence !== undefined ? { grammarEvidence } : {}),
72
73
  };
73
74
  }
package/dist/Mock.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Mock.js","sourceRoot":"","sources":["../src/Mock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mock.js","sourceRoot":"","sources":["../src/Mock.ts"],"names":[],"mappings":"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"}
package/dist/Pool.js CHANGED
@@ -104,7 +104,7 @@ export default class Pool {
104
104
  calculateCost(usage) { return this.#backends[0].calculateCost(usage); }
105
105
  calculateCharge(usage) {
106
106
  const backend = this.#backends[0];
107
- return resolveProviderCost(undefined, backend.calculateCharge?.(usage), () => backend.calculateCost(usage));
107
+ return resolveProviderCost(undefined, backend.calculateCharge?.(usage));
108
108
  }
109
109
  // --- dispatch ---
110
110
  async generate(args) {