audit-tools 0.30.51 → 0.30.53

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 (60) hide show
  1. package/dist/audit/cli/prompts.d.ts.map +1 -1
  2. package/dist/audit/cli/prompts.js +3 -1
  3. package/dist/audit/cli/prompts.js.map +1 -1
  4. package/dist/audit/orchestrator/rollingDispatch.d.ts +2 -2
  5. package/dist/audit/orchestrator/rollingDispatch.d.ts.map +1 -1
  6. package/dist/audit/quota/index.d.ts +120 -18
  7. package/dist/audit/quota/index.d.ts.map +1 -1
  8. package/dist/audit/types/auditScope.d.ts +2 -2
  9. package/dist/remediate/steps/dispatch.d.ts.map +1 -1
  10. package/dist/remediate/steps/dispatch.js +28 -1
  11. package/dist/remediate/steps/dispatch.js.map +1 -1
  12. package/dist/remediate/steps/nextStep.d.ts +9 -1
  13. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  14. package/dist/remediate/steps/nextStep.js +107 -2
  15. package/dist/remediate/steps/nextStep.js.map +1 -1
  16. package/dist/remediate/steps/types.d.ts +1 -1
  17. package/dist/remediate/steps/types.d.ts.map +1 -1
  18. package/dist/remediate/steps/types.js.map +1 -1
  19. package/dist/shared/dispatch/rollingDispatch.d.ts +22 -1
  20. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  21. package/dist/shared/dispatch/rollingDispatch.js +147 -7
  22. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  23. package/dist/shared/index.d.ts +5 -4
  24. package/dist/shared/index.d.ts.map +1 -1
  25. package/dist/shared/index.js +4 -3
  26. package/dist/shared/index.js.map +1 -1
  27. package/dist/shared/quota/capacity.d.ts +87 -8
  28. package/dist/shared/quota/capacity.d.ts.map +1 -1
  29. package/dist/shared/quota/capacity.js +27 -2
  30. package/dist/shared/quota/capacity.js.map +1 -1
  31. package/dist/shared/quota/claudeOAuthQuotaSource.d.ts.map +1 -1
  32. package/dist/shared/quota/claudeOAuthQuotaSource.js +56 -0
  33. package/dist/shared/quota/claudeOAuthQuotaSource.js.map +1 -1
  34. package/dist/shared/quota/quotaSource.d.ts +62 -2
  35. package/dist/shared/quota/quotaSource.d.ts.map +1 -1
  36. package/dist/shared/quota/quotaSource.js +24 -0
  37. package/dist/shared/quota/quotaSource.js.map +1 -1
  38. package/dist/shared/quota/scheduler.d.ts +19 -2
  39. package/dist/shared/quota/scheduler.d.ts.map +1 -1
  40. package/dist/shared/quota/scheduler.js +162 -86
  41. package/dist/shared/quota/scheduler.js.map +1 -1
  42. package/dist/shared/quota/state.d.ts +22 -0
  43. package/dist/shared/quota/state.d.ts.map +1 -1
  44. package/dist/shared/quota/state.js +59 -0
  45. package/dist/shared/quota/state.js.map +1 -1
  46. package/dist/shared/quota/tokenBudgetView.d.ts +17 -0
  47. package/dist/shared/quota/tokenBudgetView.d.ts.map +1 -0
  48. package/dist/shared/quota/tokenBudgetView.js +77 -0
  49. package/dist/shared/quota/tokenBudgetView.js.map +1 -0
  50. package/dist/shared/quota/types.d.ts +19 -1
  51. package/dist/shared/quota/types.d.ts.map +1 -1
  52. package/dist/shared/quota/types.js +1 -2
  53. package/dist/shared/quota/types.js.map +1 -1
  54. package/dist/shared/repair/brokeredDispatch.d.ts.map +1 -1
  55. package/dist/shared/repair/brokeredDispatch.js +5 -3
  56. package/dist/shared/repair/brokeredDispatch.js.map +1 -1
  57. package/dist/shared/types/sessionConfig.d.ts +0 -3
  58. package/dist/shared/types/sessionConfig.d.ts.map +1 -1
  59. package/dist/shared/types/sessionConfig.js.map +1 -1
  60. package/package.json +1 -1
@@ -11,8 +11,13 @@ import { type DiscoveredRateLimitsInput } from "./scheduler.js";
11
11
  * pool reports zero slots) and the engine cannot dispatch remaining items.
12
12
  * - `livelock_guard`: N consecutive waves passed with zero progress (all items
13
13
  * remain undispatchable despite pools being present) and the guard tripped.
14
+ * - `quota_paused`: every remaining item's pool is paused until a stated host
15
+ * session-limit reset (a "resets 1:50pm"-style wall), and nothing is in flight.
16
+ * Distinct from `empty_pool` / `livelock_guard`: the strand is RETRYABLE — a
17
+ * later step (after the earliest reset) redispatches the stranded items clean,
18
+ * so the consumer must keep them PENDING, never mark them blocked/failed.
14
19
  */
15
- export type PartialCompletionReason = "empty_pool" | "livelock_guard";
20
+ export type PartialCompletionReason = "empty_pool" | "livelock_guard" | "quota_paused";
16
21
  /**
17
22
  * Consumer-neutral signal that the dispatch engine reached a terminal it cannot
18
23
  * recover from on its own. The caller must route stranded items through a
@@ -27,6 +32,12 @@ export interface PartialCompletionTerminal {
27
32
  reason: PartialCompletionReason;
28
33
  /** task/unit IDs the engine could not dispatch. */
29
34
  stranded_ids: string[];
35
+ /**
36
+ * Only set for `reason: "quota_paused"`: the ISO timestamp of the EARLIEST
37
+ * pool reset across the stranded items' paused pools. A later step scheduled
38
+ * at/after this instant can redispatch the stranded items — they redo clean.
39
+ */
40
+ earliest_reset_at?: string;
30
41
  }
31
42
  /**
32
43
  * Detect a livelock or empty-pool condition after a series of no-progress waves
@@ -54,6 +65,14 @@ export declare function detectLivelock(options: {
54
65
  * without crashing.
55
66
  */
56
67
  export declare function buildEmptyPoolTerminal(strandedIds: string[]): PartialCompletionTerminal;
68
+ /**
69
+ * Produce a `quota_paused` {@link PartialCompletionTerminal}: the stranded items'
70
+ * pools are all paused until a stated host session-limit reset, and nothing is in
71
+ * flight. `earliestResetAt` (ISO) is the soonest reset a resuming step should wait
72
+ * for. The consumer keeps these items PENDING/re-dispatchable — they are NOT a
73
+ * failure, unlike the empty-pool / livelock terminals.
74
+ */
75
+ export declare function buildQuotaPausedTerminal(strandedIds: string[], earliestResetAt: string | null): PartialCompletionTerminal;
57
76
  /**
58
77
  * A dispatch capacity pool: one backend (a provider + host model) that runs
59
78
  * review/worker subagents in parallel, each in its own fresh session with its
@@ -86,6 +105,13 @@ export interface CapacityPool {
86
105
  discoveredLimits?: DiscoveredRateLimitsInput | null;
87
106
  /** Real-time usage snapshot for this pool, if available. */
88
107
  quotaSourceSnapshot?: QuotaUsageSnapshot | null;
108
+ /**
109
+ * Tokens already in flight against this pool (sum of estimated tokens for
110
+ * dispatched-but-not-yet-completed packets). Threaded into {@link scheduleWave}
111
+ * so the token-budget gate never over-subscribes the remaining window across
112
+ * concurrent dispatch. Defaults to 0 when absent.
113
+ */
114
+ inFlightTokens?: number;
89
115
  /**
90
116
  * Explicit silent-degrade marker: true when this pool's proactive quota source
91
117
  * was queried and degraded to no snapshot (missing/expired creds, 401/5xx,
@@ -173,7 +199,16 @@ export declare const DispatchCapacityPoolSummarySchema: z.ZodObject<{
173
199
  }>>;
174
200
  cooldown_until: z.ZodNullable<z.ZodString>;
175
201
  estimated_wave_tokens: z.ZodNumber;
176
- binding_cap: z.ZodEnum<["rpm", "tpm", "learned", "fallback", "first_contact", "cooldown", "host_concurrency", "none"]>;
202
+ binding_cap: z.ZodEnum<["rpm", "tpm", "token_budget", "learned", "cooldown", "host_concurrency", "none"]>;
203
+ /**
204
+ * Per-target token-budget view surfaced to the orchestrating host so it sees
205
+ * the real constraints, not just an opaque slot count: the remaining token
206
+ * budget the gate spent against (MIN across the pool's own windows; null when
207
+ * no live snapshot / cold start) and the tokens already in flight against it.
208
+ * `remaining_pct` / `reset_at` come from `quota_source_snapshot`.
209
+ */
210
+ remaining_token_budget: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
211
+ in_flight_tokens: z.ZodOptional<z.ZodNumber>;
177
212
  quota_source_snapshot: z.ZodOptional<z.ZodNullable<z.ZodObject<{
178
213
  remaining_pct: z.ZodNullable<z.ZodNumber>;
179
214
  reset_at: z.ZodNullable<z.ZodString>;
@@ -181,20 +216,48 @@ export declare const DispatchCapacityPoolSummarySchema: z.ZodObject<{
181
216
  tokens_remaining: z.ZodNullable<z.ZodNumber>;
182
217
  captured_at: z.ZodString;
183
218
  source: z.ZodString;
219
+ windows: z.ZodOptional<z.ZodArray<z.ZodObject<{
220
+ label: z.ZodString;
221
+ remaining_pct: z.ZodNullable<z.ZodNumber>;
222
+ reset_at: z.ZodNullable<z.ZodString>;
223
+ tokens_remaining: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
224
+ }, "strict", z.ZodTypeAny, {
225
+ label: string;
226
+ remaining_pct: number | null;
227
+ reset_at: string | null;
228
+ tokens_remaining?: number | null | undefined;
229
+ }, {
230
+ label: string;
231
+ remaining_pct: number | null;
232
+ reset_at: string | null;
233
+ tokens_remaining?: number | null | undefined;
234
+ }>, "many">>;
184
235
  }, "strict", z.ZodTypeAny, {
185
236
  remaining_pct: number | null;
186
237
  reset_at: string | null;
187
- requests_remaining: number | null;
188
238
  tokens_remaining: number | null;
239
+ requests_remaining: number | null;
189
240
  captured_at: string;
190
241
  source: string;
242
+ windows?: {
243
+ label: string;
244
+ remaining_pct: number | null;
245
+ reset_at: string | null;
246
+ tokens_remaining?: number | null | undefined;
247
+ }[] | undefined;
191
248
  }, {
192
249
  remaining_pct: number | null;
193
250
  reset_at: string | null;
194
- requests_remaining: number | null;
195
251
  tokens_remaining: number | null;
252
+ requests_remaining: number | null;
196
253
  captured_at: string;
197
254
  source: string;
255
+ windows?: {
256
+ label: string;
257
+ remaining_pct: number | null;
258
+ reset_at: string | null;
259
+ tokens_remaining?: number | null | undefined;
260
+ }[] | undefined;
198
261
  }>>>;
199
262
  /** Raw silent-degrade marker for this pool (see CapacityPool.quotaSignalDegraded). */
200
263
  quota_signal_degraded: z.ZodOptional<z.ZodBoolean>;
@@ -220,15 +283,23 @@ export declare const DispatchCapacityPoolSummarySchema: z.ZodObject<{
220
283
  description: string;
221
284
  } | null;
222
285
  estimated_wave_tokens: number;
223
- binding_cap: "none" | "learned" | "rpm" | "tpm" | "fallback" | "first_contact" | "cooldown" | "host_concurrency";
286
+ binding_cap: "none" | "learned" | "rpm" | "tpm" | "token_budget" | "cooldown" | "host_concurrency";
224
287
  rank?: "deep" | "small" | "standard" | undefined;
288
+ remaining_token_budget?: number | null | undefined;
289
+ in_flight_tokens?: number | undefined;
225
290
  quota_source_snapshot?: {
226
291
  remaining_pct: number | null;
227
292
  reset_at: string | null;
228
- requests_remaining: number | null;
229
293
  tokens_remaining: number | null;
294
+ requests_remaining: number | null;
230
295
  captured_at: string;
231
296
  source: string;
297
+ windows?: {
298
+ label: string;
299
+ remaining_pct: number | null;
300
+ reset_at: string | null;
301
+ tokens_remaining?: number | null | undefined;
302
+ }[] | undefined;
232
303
  } | null | undefined;
233
304
  quota_signal_degraded?: boolean | undefined;
234
305
  quota_coverage?: "established" | "reactive_only" | "unestablished" | undefined;
@@ -252,15 +323,23 @@ export declare const DispatchCapacityPoolSummarySchema: z.ZodObject<{
252
323
  description: string;
253
324
  } | null;
254
325
  estimated_wave_tokens: number;
255
- binding_cap: "none" | "learned" | "rpm" | "tpm" | "fallback" | "first_contact" | "cooldown" | "host_concurrency";
326
+ binding_cap: "none" | "learned" | "rpm" | "tpm" | "token_budget" | "cooldown" | "host_concurrency";
256
327
  rank?: "deep" | "small" | "standard" | undefined;
328
+ remaining_token_budget?: number | null | undefined;
329
+ in_flight_tokens?: number | undefined;
257
330
  quota_source_snapshot?: {
258
331
  remaining_pct: number | null;
259
332
  reset_at: string | null;
260
- requests_remaining: number | null;
261
333
  tokens_remaining: number | null;
334
+ requests_remaining: number | null;
262
335
  captured_at: string;
263
336
  source: string;
337
+ windows?: {
338
+ label: string;
339
+ remaining_pct: number | null;
340
+ reset_at: string | null;
341
+ tokens_remaining?: number | null | undefined;
342
+ }[] | undefined;
264
343
  } | null | undefined;
265
344
  quota_signal_degraded?: boolean | undefined;
266
345
  quota_coverage?: "established" | "reactive_only" | "unestablished" | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"capacity.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/capacity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capacity.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/capacity.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,20 @@ export function buildEmptyPoolTerminal(strandedIds) {
43
43
  stranded_ids: [...strandedIds],
44
44
  };
45
45
  }
46
+ /**
47
+ * Produce a `quota_paused` {@link PartialCompletionTerminal}: the stranded items'
48
+ * pools are all paused until a stated host session-limit reset, and nothing is in
49
+ * flight. `earliestResetAt` (ISO) is the soonest reset a resuming step should wait
50
+ * for. The consumer keeps these items PENDING/re-dispatchable — they are NOT a
51
+ * failure, unlike the empty-pool / livelock terminals.
52
+ */
53
+ export function buildQuotaPausedTerminal(strandedIds, earliestResetAt) {
54
+ return {
55
+ reason: "quota_paused",
56
+ stranded_ids: [...strandedIds],
57
+ ...(earliestResetAt ? { earliest_reset_at: earliestResetAt } : {}),
58
+ };
59
+ }
46
60
  /** Compact, serializable view of one pool allocation for dispatch-quota files. */
47
61
  export const DispatchCapacityPoolSummarySchema = z
48
62
  .object({
@@ -57,6 +71,15 @@ export const DispatchCapacityPoolSummarySchema = z
57
71
  cooldown_until: z.string().nullable(),
58
72
  estimated_wave_tokens: z.number().int().min(0),
59
73
  binding_cap: WaveBindingCapSchema,
74
+ /**
75
+ * Per-target token-budget view surfaced to the orchestrating host so it sees
76
+ * the real constraints, not just an opaque slot count: the remaining token
77
+ * budget the gate spent against (MIN across the pool's own windows; null when
78
+ * no live snapshot / cold start) and the tokens already in flight against it.
79
+ * `remaining_pct` / `reset_at` come from `quota_source_snapshot`.
80
+ */
81
+ remaining_token_budget: z.number().nullable().optional(),
82
+ in_flight_tokens: z.number().int().min(0).optional(),
60
83
  quota_source_snapshot: QuotaUsageSnapshotSchema.nullable().optional(),
61
84
  /** Raw silent-degrade marker for this pool (see CapacityPool.quotaSignalDegraded). */
62
85
  quota_signal_degraded: z.boolean().optional(),
@@ -68,11 +91,10 @@ export const DispatchCapacityPoolSummarySchema = z
68
91
  const CAP_PRIORITY = {
69
92
  cooldown: 6,
70
93
  host_concurrency: 5,
94
+ token_budget: 5,
71
95
  tpm: 4,
72
96
  rpm: 3,
73
97
  learned: 2,
74
- first_contact: 1,
75
- fallback: 1,
76
98
  none: 0,
77
99
  };
78
100
  /**
@@ -253,6 +275,7 @@ function schedulePool(pool, sessionConfig, itemTokens) {
253
275
  hostConcurrencyLimit: pool.hostConcurrencyLimit,
254
276
  discoveredLimits: pool.discoveredLimits ?? null,
255
277
  quotaSourceSnapshot: pool.quotaSourceSnapshot ?? null,
278
+ inFlightTokens: pool.inFlightTokens ?? 0,
256
279
  });
257
280
  return {
258
281
  pool_id: pool.id,
@@ -292,6 +315,8 @@ export function summarizeDispatchCapacityPools(capacity) {
292
315
  cooldown_until: allocation.schedule.cooldown_until,
293
316
  estimated_wave_tokens: allocation.schedule.estimated_wave_tokens,
294
317
  binding_cap: allocation.schedule.binding_cap ?? "none",
318
+ remaining_token_budget: allocation.schedule.remaining_token_budget ?? null,
319
+ in_flight_tokens: allocation.schedule.in_flight_tokens ?? 0,
295
320
  quota_source_snapshot: allocation.schedule.quota_source_snapshot ?? null,
296
321
  ...(allocation.quotaSignalDegraded ? { quota_signal_degraded: true } : {}),
297
322
  ...(allocation.quotaCoverage ? { quota_coverage: allocation.quotaCoverage } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"capacity.js","sourceRoot":"","sources":["../../../src/shared/quota/capacity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capacity.js","sourceRoot":"","sources":["../../../src/shared/quota/capacity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"claudeOAuthQuotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/claudeOAuthQuotaSource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claudeOAuthQuotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/claudeOAuthQuotaSource.ts"],"names":[],"mappings":"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"}
@@ -241,6 +241,7 @@ export function mapUsageToSnapshot(body, model, nowMs) {
241
241
  const binding = pickBindingWindow(body, model);
242
242
  if (binding == null)
243
243
  return null;
244
+ const windows = collectWindows(body, model);
244
245
  return {
245
246
  // (100 - util)/100 (not 1 - util/100) so integer percents stay exact: 20/100 === 0.2.
246
247
  remaining_pct: clampFraction((100 - binding.utilization) / 100),
@@ -249,8 +250,63 @@ export function mapUsageToSnapshot(body, model, nowMs) {
249
250
  tokens_remaining: null,
250
251
  captured_at: new Date(nowMs).toISOString(),
251
252
  source: "claude-oauth",
253
+ ...(windows.length > 0 ? { windows } : {}),
252
254
  };
253
255
  }
256
+ /**
257
+ * Enumerate the per-window remaining budgets with agnostic labels: the top-level
258
+ * `five_hour`→"session" / `seven_day`→"weekly" windows, plus any model-scoped
259
+ * `limits[]` entry keyed by its own group/kind (falling back to a stable
260
+ * synthetic label). Each window's own utilization becomes its own
261
+ * `remaining_pct`, so the token-budget gate can learn a distinct tokens→percent
262
+ * slope per window. Labels are never provider/model identities (INV-QD-04);
263
+ * degrade-safe (empty on a malformed payload).
264
+ */
265
+ function collectWindows(body, model) {
266
+ const out = [];
267
+ const seen = new Set();
268
+ // The Claude body reports the SAME window twice — once as a top-level
269
+ // `five_hour`/`seven_day` block and again as a `limits[]` entry with the
270
+ // matching group/kind. Emit ONE window per label (top-level wins, pushed
271
+ // first); a later entry for an already-seen label is skipped.
272
+ const pushWindow = (label, utilization, resets_at) => {
273
+ if (typeof utilization !== "number")
274
+ return;
275
+ if (seen.has(label))
276
+ return;
277
+ seen.add(label);
278
+ out.push({
279
+ label,
280
+ remaining_pct: clampFraction((100 - utilization) / 100),
281
+ reset_at: resets_at ?? null,
282
+ });
283
+ };
284
+ if (body.five_hour)
285
+ pushWindow("session", body.five_hour.utilization, body.five_hour.resets_at ?? null);
286
+ if (body.seven_day)
287
+ pushWindow("weekly", body.seven_day.utilization, body.seven_day.resets_at ?? null);
288
+ let syntheticIndex = 0;
289
+ for (const lim of Array.isArray(body.limits) ? body.limits : []) {
290
+ if (typeof lim?.percent !== "number")
291
+ continue;
292
+ if (!limitAppliesToModel(lim, model))
293
+ continue;
294
+ const label = limitLabel(lim, syntheticIndex);
295
+ syntheticIndex++;
296
+ pushWindow(label, lim.percent, lim.resets_at ?? null);
297
+ }
298
+ return out;
299
+ }
300
+ /**
301
+ * Agnostic label for a `limits[]` window: its declared `group`/`kind` when the
302
+ * payload carries one, else a stable synthetic `limit_<n>`. Never a model name.
303
+ */
304
+ function limitLabel(lim, index) {
305
+ const declared = lim.group ?? lim.kind;
306
+ if (typeof declared === "string" && declared.trim().length > 0)
307
+ return declared;
308
+ return `limit_${index}`;
309
+ }
254
310
  /** The window closest to its cap (highest utilization) across limits[] + top-level windows. */
255
311
  function pickBindingWindow(body, model) {
256
312
  const candidates = [];
@@ -1 +1 @@
1
- {"version":3,"file":"claudeOAuthQuotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/claudeOAuthQuotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,qBAAqB,GAItB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;AACjE,MAAM,cAAc,GAAG,2CAA2C,CAAC;AACnE,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAC7C,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;AACxD,6EAA6E;AAC7E,MAAM,eAAe,GAAG,sCAAsC,CAAC;AAC/D,MAAM,oBAAoB,GAAG,8CAA8C,CAAC;AAE5E,sEAAsE;AACtE,OAAO,EAAE,qBAAqB,EAAE,CAAC;AA4DjC,MAAM,OAAO,sBAAuB,SAAQ,mBAAmB;IACpD,IAAI,GAAG,cAAc,CAAC;IACd,eAAe,CAAS;IACxB,2BAA2B,CAAU;IACrC,aAAa,CAAc;IAC3B,YAAY,CAAkC;IAC9C,aAAa,CAAS;IACtB,kBAAkB,CAAS;IAE5C,YAAY,UAAyC,EAAE;QACrD,KAAK,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;QACnC,IAAI,CAAC,2BAA2B,GAAG,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC;QACzE,IAAI,CAAC,eAAe;YAClB,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAClF,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,mBAAmB,IAAI,qBAAqB,CAAC,CAAC;QACnF,IAAI,CAAC,YAAY;YACf,OAAO,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACtE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,eAAe,CAAC;QAC9D,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,oBAAoB,CAAC;IAC/E,CAAC;IAES,eAAe,CAAC,QAAgB;QACxC,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACO,aAAa,CAAC,SAAiB;QACvC,IAAI,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,2BAA2B,CAAC;YAAE,OAAO,IAAI,CAAC;QACjF,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,EAAE,gBAAgB,CAAC;QACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,SAAiB,EACjB,KAAoB,EACpB,KAAa;QAEb,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,gBAAgB,CACjC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,EAC5C,IAAI,CAAC,YAAY,EAAE,CACpB,CAAC;QACF,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACtB,2EAA2E;QAC3E,6EAA6E;QAC7E,+EAA+E;QAC/E,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;QAC5C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,WAAW,KAAK,QAAQ,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAC9E,OAAO,gBAAgB,CACrB,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,KAAK,EAAE,EAC7C,IAAI,CAAC,YAAY,EAAE,CACpB,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,kBAAkB,CAC9B,KAAa,EACb,YAAqB;QAErB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC3D,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QACzD,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAExB,MAAM,KAAK,GACT,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;YACrC,KAAK,CAAC,WAAW,KAAK,EAAE;YACxB,CAAC,CAAC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;QACrE,IAAI,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3B,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,WAAqB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACtE,CAAC;QAED,8EAA8E;QAC9E,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;YACxE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QACpE,OAAO,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,CAAC;IAED,yEAAyE;IACjE,cAAc;QACpB,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC,CAAC,wDAAwD;QACvE,CAAC;QACD,IAAI,CAAC;YACH,OAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC,aAAa,IAAI,IAAI,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,iBAAiB,CAAC,KAAa,EAAE,YAAqB;QAClE,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,eAAe,OAAO,CAAC;QAChD,IAAI,CAAC;YACH,OAAO,MAAM,YAAY,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;gBAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpC,IAAI,CAAC,KAAK;oBAAE,OAAO,IAAI,CAAC;gBACxB,MAAM,UAAU,GACd,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;oBACrC,KAAK,CAAC,WAAW,KAAK,EAAE;oBACxB,CAAC,CAAC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,KAAK,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;gBACrE,IAAI,UAAU,IAAI,CAAC,YAAY;oBAAE,OAAO,KAAK,CAAC,WAAqB,CAAC;gBACpE,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,IAAI,KAAK,CAAC,YAAY,KAAK,EAAE;oBAAE,OAAO,IAAI,CAAC;gBAErF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC7D,IAAI,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;oBACzF,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,IAAI,GAAqD;oBAC7D,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;iBACtC,CAAC;gBACF,IAAI,CAAC,aAAa,GAAG;oBACnB,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC;oBAC7B,WAAW,EAAE,KAAK,CAAC,YAAY;oBAC/B,YAAY,EAAE,KAAK,CAAC,aAAa;oBACjC,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC,UAAU,GAAG,IAAI;oBAC1C,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM;iBAC1E,CAAC;gBACF,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;gBAClC,OAAO,KAAK,CAAC,YAAY,CAAC;YAC5B,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC,CAAC,kEAAkE;QACjF,CAAC;IACH,CAAC;IAED,+EAA+E;IACvE,KAAK,CAAC,eAAe,CAAC,YAAoB;QAChD,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,SAAsB,EAAE,IAAI,CAAC,kBAAkB,EAAE;YACvF,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,UAAU,EAAE,eAAe;gBAC3B,aAAa,EAAE,YAAY;gBAC3B,SAAS,EAAE,IAAI,CAAC,aAAa;aAC9B,CAAC;SACH,CAAC,CAAC;QACH,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,IAA6B,CAAC;IAC9D,CAAC;IAED,wFAAwF;IAChF,mBAAmB;QACzB,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACH,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAqD,CAAC;QAC7E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,yFAAyF;IACjF,sBAAsB,CAAC,KAAc;QAC3C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,eAAe,MAAM,CAAC;QAC1C,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACnD,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IACxC,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAAoD,EACpD,GAAsB;IAEtB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE;QAChE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,KAAK,CAAC,WAAW,EAAE;YAC5C,gBAAgB,EAAE,iBAAiB;YACnC,YAAY,EAAE,GAAG,CAAC,SAAS;YAC3B,MAAM,EAAE,kBAAkB;SAC3B;KACF,CAAC,CAAC;IACH,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC9B,OAAO,kBAAkB,CAAC,IAAqB,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;AAC3E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,IAAmB,EACnB,KAAoB,EACpB,KAAa;IAEb,8EAA8E;IAC9E,uDAAuD;IACvD,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1D,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/C,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO;QACL,sFAAsF;QACtF,aAAa,EAAE,aAAa,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,GAAG,CAAC;QAC/D,QAAQ,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;QACnC,kBAAkB,EAAE,IAAI;QACxB,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE;QAC1C,MAAM,EAAE,cAAc;KACvB,CAAC;AACJ,CAAC;AAOD,+FAA+F;AAC/F,SAAS,iBAAiB,CAAC,IAAmB,EAAE,KAAoB;IAClE,MAAM,UAAU,GAAoB,EAAE,CAAC;IACvC,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAChE,IAAI,OAAO,GAAG,EAAE,OAAO,KAAK,QAAQ;YAAE,SAAS;QAC/C,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,KAAK,CAAC;YAAE,SAAS;QAC/C,UAAU,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,IAAI,OAAO,CAAC,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YACtC,UAAU,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,IAAI,EAAE,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAoB,EAAE,KAAoB;IACrE,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,IAAI,CAAC;IAClF,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC,CAAC,mCAAmC;IACjE,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC,CAAC,+CAA+C;IACzE,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,0EAA0E;AAC1E,mFAAmF;AACnF,SAAS,eAAe,CAAC,IAAmB;IAC1C,MAAM,GAAG,GAAkB,EAAE,CAAC;IAC9B,IAAI,IAAI,CAAC,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,SAAS;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"claudeOAuthQuotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/claudeOAuthQuotaSource.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,30 @@
1
1
  import { z } from "zod";
2
+ /**
3
+ * One quota WINDOW's remaining budget. A provider may expose several windows
4
+ * that scale on DIFFERENT denominators (e.g. Claude's 5-hour `session` vs 7-day
5
+ * `weekly`; Codex's primary vs secondary). The same N tokens is a large percent
6
+ * of a small window and a tiny percent of a big one, so tokens→percent slope is
7
+ * learned per (pool, window-label) and the pool's budget is the MIN across
8
+ * windows. `label` is an AGNOSTIC string ("session","weekly",…) — never a
9
+ * provider/model identity — so any source can add its own windows.
10
+ */
11
+ export declare const QuotaWindowSchema: z.ZodObject<{
12
+ label: z.ZodString;
13
+ remaining_pct: z.ZodNullable<z.ZodNumber>;
14
+ reset_at: z.ZodNullable<z.ZodString>;
15
+ tokens_remaining: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
16
+ }, "strict", z.ZodTypeAny, {
17
+ label: string;
18
+ remaining_pct: number | null;
19
+ reset_at: string | null;
20
+ tokens_remaining?: number | null | undefined;
21
+ }, {
22
+ label: string;
23
+ remaining_pct: number | null;
24
+ reset_at: string | null;
25
+ tokens_remaining?: number | null | undefined;
26
+ }>;
27
+ export type QuotaWindow = z.infer<typeof QuotaWindowSchema>;
2
28
  export declare const QuotaUsageSnapshotSchema: z.ZodObject<{
3
29
  remaining_pct: z.ZodNullable<z.ZodNumber>;
4
30
  reset_at: z.ZodNullable<z.ZodString>;
@@ -6,20 +32,54 @@ export declare const QuotaUsageSnapshotSchema: z.ZodObject<{
6
32
  tokens_remaining: z.ZodNullable<z.ZodNumber>;
7
33
  captured_at: z.ZodString;
8
34
  source: z.ZodString;
35
+ /**
36
+ * Per-window breakdown when the provider exposes multiple quota windows that
37
+ * scale differently. Top-level `remaining_pct`/`reset_at` remain the MIN
38
+ * (binding) window for consumers that want one number. Absent for
39
+ * single-window providers.
40
+ */
41
+ windows: z.ZodOptional<z.ZodArray<z.ZodObject<{
42
+ label: z.ZodString;
43
+ remaining_pct: z.ZodNullable<z.ZodNumber>;
44
+ reset_at: z.ZodNullable<z.ZodString>;
45
+ tokens_remaining: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
46
+ }, "strict", z.ZodTypeAny, {
47
+ label: string;
48
+ remaining_pct: number | null;
49
+ reset_at: string | null;
50
+ tokens_remaining?: number | null | undefined;
51
+ }, {
52
+ label: string;
53
+ remaining_pct: number | null;
54
+ reset_at: string | null;
55
+ tokens_remaining?: number | null | undefined;
56
+ }>, "many">>;
9
57
  }, "strict", z.ZodTypeAny, {
10
58
  remaining_pct: number | null;
11
59
  reset_at: string | null;
12
- requests_remaining: number | null;
13
60
  tokens_remaining: number | null;
61
+ requests_remaining: number | null;
14
62
  captured_at: string;
15
63
  source: string;
64
+ windows?: {
65
+ label: string;
66
+ remaining_pct: number | null;
67
+ reset_at: string | null;
68
+ tokens_remaining?: number | null | undefined;
69
+ }[] | undefined;
16
70
  }, {
17
71
  remaining_pct: number | null;
18
72
  reset_at: string | null;
19
- requests_remaining: number | null;
20
73
  tokens_remaining: number | null;
74
+ requests_remaining: number | null;
21
75
  captured_at: string;
22
76
  source: string;
77
+ windows?: {
78
+ label: string;
79
+ remaining_pct: number | null;
80
+ reset_at: string | null;
81
+ tokens_remaining?: number | null | undefined;
82
+ }[] | undefined;
23
83
  }>;
24
84
  export type QuotaUsageSnapshot = z.infer<typeof QuotaUsageSnapshotSchema>;
25
85
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"quotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;EAS1B,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAChF;;;;;;OAMG;IACH,UAAU,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjE;;;;;;;OAOG;IACH,gBAAgB,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpE;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5C;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAOxB;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAQ3B"}
1
+ {"version":3,"file":"quotaSource.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;EAOnB,CAAC;AACZ,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,wBAAwB;;;;;;;IAQjC;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGI,CAAC;AACZ,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,UAAU,GAAG,gBAAgB,CAAC;AAEpE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IAChF;;;;;;OAMG;IACH,UAAU,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACjE;;;;;;;OAOG;IACH,gBAAgB,CAAC,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACpE;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5C;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAOxB;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,WAAW,EACnB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAQ3B"}
@@ -1,4 +1,21 @@
1
1
  import { z } from "zod";
2
+ /**
3
+ * One quota WINDOW's remaining budget. A provider may expose several windows
4
+ * that scale on DIFFERENT denominators (e.g. Claude's 5-hour `session` vs 7-day
5
+ * `weekly`; Codex's primary vs secondary). The same N tokens is a large percent
6
+ * of a small window and a tiny percent of a big one, so tokens→percent slope is
7
+ * learned per (pool, window-label) and the pool's budget is the MIN across
8
+ * windows. `label` is an AGNOSTIC string ("session","weekly",…) — never a
9
+ * provider/model identity — so any source can add its own windows.
10
+ */
11
+ export const QuotaWindowSchema = z
12
+ .object({
13
+ label: z.string(),
14
+ remaining_pct: z.number().nullable(),
15
+ reset_at: z.string().nullable(),
16
+ tokens_remaining: z.number().int().nullable().optional(),
17
+ })
18
+ .strict();
2
19
  export const QuotaUsageSnapshotSchema = z
3
20
  .object({
4
21
  remaining_pct: z.number().nullable(),
@@ -7,6 +24,13 @@ export const QuotaUsageSnapshotSchema = z
7
24
  tokens_remaining: z.number().int().nullable(),
8
25
  captured_at: z.string(),
9
26
  source: z.string(),
27
+ /**
28
+ * Per-window breakdown when the provider exposes multiple quota windows that
29
+ * scale differently. Top-level `remaining_pct`/`reset_at` remain the MIN
30
+ * (binding) window for consumers that want one number. Absent for
31
+ * single-window providers.
32
+ */
33
+ windows: z.array(QuotaWindowSchema).optional(),
10
34
  })
11
35
  .strict();
12
36
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"quotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC;KACD,MAAM,EAAE,CAAC;AA2DZ;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAmB,EACnB,gBAAwB;IAExB,IAAI,CAAC,MAAM,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAmB,EACnB,gBAAwB;IAExB,IAAI,MAAM,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAChD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"quotaSource.js","sourceRoot":"","sources":["../../../src/shared/quota/quotaSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACzD,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC/C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB;;;;;OAKG;IACH,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;CAC/C,CAAC;KACD,MAAM,EAAE,CAAC;AA2DZ;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAmB,EACnB,gBAAwB;IAExB,IAAI,CAAC,MAAM,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAmB,EACnB,gBAAwB;IAExB,IAAI,MAAM,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAClE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAChD,CAAC;AACH,CAAC"}
@@ -76,6 +76,13 @@ export interface ScheduleWaveOptions {
76
76
  quotaSourceSnapshot?: QuotaUsageSnapshot | null;
77
77
  /** RPM/TPM discovered from provider queries or response header extraction. */
78
78
  discoveredLimits?: DiscoveredRateLimitsInput | null;
79
+ /**
80
+ * Tokens already in flight against THIS pool (sum of estimated tokens for
81
+ * dispatched-but-not-yet-completed packets). Added to the wave's projected slot
82
+ * tokens when checking the token-budget gate so concurrent dispatch never
83
+ * over-subscribes the remaining window. Defaults to 0.
84
+ */
85
+ inFlightTokens?: number;
79
86
  }
80
87
  /** Fraction of a discovered RPM/TPM limit we actually schedule against. */
81
88
  export declare const DEFAULT_SAFETY_MARGIN = 0.8;
@@ -176,11 +183,21 @@ export interface SelectDispatchDriverInput {
176
183
  */
177
184
  export declare function selectDispatchDriver(input: SelectDispatchDriverInput): DispatchDriverSelection;
178
185
  /**
179
- * Real-time quota-source `remaining_pct` thresholds. At/under CRITICAL we throttle
180
- * to a single request; at/under LOW we halve the wave.
186
+ * Real-time quota-source `remaining_pct` thresholds retained for consumers that
187
+ * classify a pool's health from its live snapshot (e.g. the rolling engine's
188
+ * proactive cross-pool spill, INV-QD-14). These are NO LONGER wave-sizing
189
+ * cliffs: the scheduler sizes the wave against the learned token BUDGET gate
190
+ * ({@link deriveTokenBudget}), not a fixed remaining_pct step function.
181
191
  */
182
192
  export declare const QUOTA_REMAINING_PCT_CRITICAL = 0.1;
183
193
  export declare const QUOTA_REMAINING_PCT_LOW = 0.3;
194
+ /**
195
+ * Cold-start per-window calibration batch: with no learned tokens_per_pct slope
196
+ * for a window and no absolute tokens_remaining, admit at most this many slots so
197
+ * the run can OBSERVE Δutilization and seed the slope. This is a BOOTSTRAP, not a
198
+ * permanent cap — once even one slope sample lands, the learned budget governs.
199
+ */
200
+ export declare const TOKEN_BUDGET_COLD_START_SLOTS = 2;
184
201
  export declare function scheduleWave(options: ScheduleWaveOptions): WaveSchedule;
185
202
  /**
186
203
  * Build the quota pool key used for indexing quota-state.json entries and gating
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/scheduler.ts"],"names":[],"mappings":"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"}