audit-tools 0.32.28 → 0.32.30

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 (103) hide show
  1. package/dist/audit/cli/args.d.ts +10 -1
  2. package/dist/audit/cli/args.d.ts.map +1 -1
  3. package/dist/audit/cli/args.js +18 -1
  4. package/dist/audit/cli/args.js.map +1 -1
  5. package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
  6. package/dist/audit/cli/dispatch/quotaPool.js +3 -6
  7. package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
  8. package/dist/audit/cli/hybridDispatch.d.ts.map +1 -1
  9. package/dist/audit/cli/hybridDispatch.js +3 -12
  10. package/dist/audit/cli/hybridDispatch.js.map +1 -1
  11. package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
  12. package/dist/audit/cli/nextStepCommand.js +9 -2
  13. package/dist/audit/cli/nextStepCommand.js.map +1 -1
  14. package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
  15. package/dist/audit/cli/nextStepHelpers.js +8 -2
  16. package/dist/audit/cli/nextStepHelpers.js.map +1 -1
  17. package/dist/audit/cli/quotaCommand.d.ts.map +1 -1
  18. package/dist/audit/cli/quotaCommand.js +7 -8
  19. package/dist/audit/cli/quotaCommand.js.map +1 -1
  20. package/dist/audit/cli/rollingAuditDispatch.d.ts +6 -0
  21. package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
  22. package/dist/audit/cli/rollingAuditDispatch.js +10 -3
  23. package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
  24. package/dist/audit/quota/index.d.ts +10 -15
  25. package/dist/audit/quota/index.d.ts.map +1 -1
  26. package/dist/audit/quota/index.js +1 -1
  27. package/dist/audit/quota/index.js.map +1 -1
  28. package/dist/audit/supervisor/sessionConfig.d.ts +9 -1
  29. package/dist/audit/supervisor/sessionConfig.d.ts.map +1 -1
  30. package/dist/audit/supervisor/sessionConfig.js +28 -0
  31. package/dist/audit/supervisor/sessionConfig.js.map +1 -1
  32. package/dist/audit/validation/sessionConfig.d.ts.map +1 -1
  33. package/dist/audit/validation/sessionConfig.js +9 -0
  34. package/dist/audit/validation/sessionConfig.js.map +1 -1
  35. package/dist/remediate/index.d.ts.map +1 -1
  36. package/dist/remediate/index.js +14 -1
  37. package/dist/remediate/index.js.map +1 -1
  38. package/dist/remediate/quota/index.d.ts +2 -2
  39. package/dist/remediate/quota/index.d.ts.map +1 -1
  40. package/dist/remediate/quota/index.js +1 -1
  41. package/dist/remediate/quota/index.js.map +1 -1
  42. package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
  43. package/dist/remediate/steps/dispatch/waveScheduling.js +9 -17
  44. package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
  45. package/dist/remediate/steps/nextStep.d.ts +7 -1
  46. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  47. package/dist/remediate/steps/nextStep.js +20 -6
  48. package/dist/remediate/steps/nextStep.js.map +1 -1
  49. package/dist/shared/dispatch/rollingDispatch.d.ts +0 -5
  50. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  51. package/dist/shared/dispatch/rollingDispatch.js +25 -19
  52. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  53. package/dist/shared/index.d.ts +6 -6
  54. package/dist/shared/index.d.ts.map +1 -1
  55. package/dist/shared/index.js +5 -5
  56. package/dist/shared/index.js.map +1 -1
  57. package/dist/shared/providers/providerPathGuard.d.ts +52 -1
  58. package/dist/shared/providers/providerPathGuard.d.ts.map +1 -1
  59. package/dist/shared/providers/providerPathGuard.js +62 -0
  60. package/dist/shared/providers/providerPathGuard.js.map +1 -1
  61. package/dist/shared/quota/apiPool.d.ts +22 -0
  62. package/dist/shared/quota/apiPool.d.ts.map +1 -1
  63. package/dist/shared/quota/apiPool.js +30 -0
  64. package/dist/shared/quota/apiPool.js.map +1 -1
  65. package/dist/shared/quota/capacity.d.ts +6 -6
  66. package/dist/shared/quota/capacity.d.ts.map +1 -1
  67. package/dist/shared/quota/capacity.js +3 -4
  68. package/dist/shared/quota/capacity.js.map +1 -1
  69. package/dist/shared/quota/claimRegistry.d.ts.map +1 -1
  70. package/dist/shared/quota/claimRegistry.js +8 -4
  71. package/dist/shared/quota/claimRegistry.js.map +1 -1
  72. package/dist/shared/quota/compositeQuotaSource.d.ts +0 -1
  73. package/dist/shared/quota/compositeQuotaSource.d.ts.map +1 -1
  74. package/dist/shared/quota/compositeQuotaSource.js +1 -1
  75. package/dist/shared/quota/compositeQuotaSource.js.map +1 -1
  76. package/dist/shared/quota/learnedQuotaSource.d.ts +9 -3
  77. package/dist/shared/quota/learnedQuotaSource.d.ts.map +1 -1
  78. package/dist/shared/quota/learnedQuotaSource.js +18 -9
  79. package/dist/shared/quota/learnedQuotaSource.js.map +1 -1
  80. package/dist/shared/quota/reservationLedger.d.ts.map +1 -1
  81. package/dist/shared/quota/reservationLedger.js +10 -3
  82. package/dist/shared/quota/reservationLedger.js.map +1 -1
  83. package/dist/shared/quota/scheduler.d.ts +0 -2
  84. package/dist/shared/quota/scheduler.d.ts.map +1 -1
  85. package/dist/shared/quota/scheduler.js +9 -27
  86. package/dist/shared/quota/scheduler.js.map +1 -1
  87. package/dist/shared/quota/state.d.ts +88 -19
  88. package/dist/shared/quota/state.d.ts.map +1 -1
  89. package/dist/shared/quota/state.js +182 -135
  90. package/dist/shared/quota/state.js.map +1 -1
  91. package/dist/shared/quota/types.d.ts +10 -15
  92. package/dist/shared/quota/types.d.ts.map +1 -1
  93. package/dist/shared/quota/types.js +0 -2
  94. package/dist/shared/quota/types.js.map +1 -1
  95. package/dist/shared/repair/brokeredDispatch.d.ts +9 -6
  96. package/dist/shared/repair/brokeredDispatch.d.ts.map +1 -1
  97. package/dist/shared/repair/brokeredDispatch.js +12 -20
  98. package/dist/shared/repair/brokeredDispatch.js.map +1 -1
  99. package/dist/shared/types/sessionConfig.d.ts +13 -12
  100. package/dist/shared/types/sessionConfig.d.ts.map +1 -1
  101. package/dist/shared/types/sessionConfig.js +0 -13
  102. package/dist/shared/types/sessionConfig.js.map +1 -1
  103. package/package.json +1 -1
@@ -1,7 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { DispatchModelTierSchema } from "../types/stepContract.js";
3
3
  import { hostClassFor, resolveLimits, } from "./limits.js";
4
- import { computeMaxSafeConcurrency, computeRampUpConcurrency } from "./state.js";
5
4
  import { DEFAULT_CONTEXT_TOKENS, DEFAULT_OUTPUT_TOKENS } from "../tokens.js";
6
5
  /**
7
6
  * One entry of the host's model roster, reported at the dispatch handshake
@@ -77,8 +76,6 @@ export function parseHostModelRoster(raw) {
77
76
  // instead of re-typing the number.
78
77
  /** Fraction of a discovered RPM/TPM limit we actually schedule against. */
79
78
  export const DEFAULT_SAFETY_MARGIN = 0.8;
80
- /** Half-life (hours) for decaying learned concurrency evidence. */
81
- export const DEFAULT_EMPIRICAL_HALF_LIFE_HOURS = 24;
82
79
  /**
83
80
  * Reference cold-start floor for the capable-vs-cold host CLASSIFICATION (no
84
81
  * longer a scheduler wave cap — the token-budget gate replaced the invented
@@ -95,8 +92,7 @@ const COLD_START_CONCURRENCY = 3;
95
92
  * scheduler wave-sizing cap (the invented cold-start/fallback caps were removed in
96
93
  * favour of the token-budget gate); it survives solely as the reference point for
97
94
  * the capable-vs-cold host CLASSIFICATION in `classifyCapableHost`
98
- * (brokeredDispatch): a host reporting a ceiling above this floor, or learned
99
- * evidence above it, is "capable".
95
+ * (brokeredDispatch): a host reporting a ceiling above this floor is "capable".
100
96
  */
101
97
  const AGENT_HOST_CONCURRENCY = 8;
102
98
  /**
@@ -274,7 +270,7 @@ function sumTopN(sorted, n) {
274
270
  return sum;
275
271
  }
276
272
  function computeUncappedWaveSize(input) {
277
- const { waveSize: initialSize, limits, safetyMargin, avgTokens, slotsSorted, quotaStateEntry, quota, halfLifeHours, } = input;
273
+ const { waveSize: initialSize, limits, safetyMargin, avgTokens, slotsSorted, } = input;
278
274
  let current = initialSize;
279
275
  let bindingCap = "none";
280
276
  // Cap by requests-per-minute
@@ -307,21 +303,11 @@ function computeUncappedWaveSize(input) {
307
303
  }
308
304
  }
309
305
  }
310
- // Learned concurrency cap (from recorded safe/failure buckets). With no learned
311
- // history there is NO invented ceiling here: concurrency is governed solely by
312
- // real provider limits (RPM/TPM above), the host-reported subagent ceiling
313
- // (applied at the call site), and the token-budget gate (applied by
314
- // scheduleWave). An unconfigured provider with no signals stays uncapped.
315
- if (quotaStateEntry) {
316
- const rampUp = quota.ramp_up_enabled !== false;
317
- const cap = rampUp
318
- ? computeRampUpConcurrency(quotaStateEntry, halfLifeHours)
319
- : computeMaxSafeConcurrency(quotaStateEntry, halfLifeHours);
320
- if (cap < current) {
321
- current = cap;
322
- bindingCap = "learned";
323
- }
324
- }
306
+ // There is NO invented ceiling here. Concurrency is governed solely by real
307
+ // provider limits (RPM/TPM above), a DECLARED provider concurrency cap, the
308
+ // host-reported subagent ceiling (applied at the call site), and the
309
+ // token-budget gate (applied by scheduleWave). A provider with no signals stays
310
+ // uncapped we never infer a safe concurrency from an outcome stream.
325
311
  return { size: current, binding_cap: bindingCap };
326
312
  }
327
313
  export function scheduleWave(options) {
@@ -361,7 +347,6 @@ export function scheduleWave(options) {
361
347
  };
362
348
  }
363
349
  const safetyMargin = quota.safety_margin ?? DEFAULT_SAFETY_MARGIN;
364
- const halfLifeHours = quota.empirical_half_life_hours ?? DEFAULT_EMPIRICAL_HALF_LIFE_HOURS;
365
350
  const { limits, source, confidence } = resolveLimits({ providerName, sessionConfig, hostModel, discoveredLimits });
366
351
  // Fill null RPM/TPM from discovered limits (provider query or header extraction)
367
352
  if (discoveredLimits) {
@@ -378,8 +363,8 @@ export function scheduleWave(options) {
378
363
  }
379
364
  }
380
365
  // During an active cooldown we throttle to a single request and skip all cap
381
- // logic; otherwise apply RPM/TPM and learned caps. The token-budget gate and
382
- // host-concurrency ceiling are applied below.
366
+ // logic; otherwise apply RPM/TPM. The token-budget gate and host-concurrency
367
+ // ceiling are applied below.
383
368
  let waveSize = requestedConcurrency;
384
369
  let bindingCap = "none";
385
370
  if (cooldownUntil) {
@@ -393,9 +378,6 @@ export function scheduleWave(options) {
393
378
  safetyMargin,
394
379
  avgTokens,
395
380
  slotsSorted,
396
- quotaStateEntry,
397
- quota,
398
- halfLifeHours,
399
381
  });
400
382
  waveSize = uncapped.size;
401
383
  bindingCap = uncapped.binding_cap;
@@ -1 +1 @@
1
- {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/shared/quota/scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/shared/quota/scheduler.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,82 @@
1
- import type { ObservedWaveOutcome, QuotaState, QuotaStateEntry } from "./types.js";
2
- export declare const MAX_BUCKET_LEVEL = 32;
1
+ import type { ObservedWaveOutcome, QuotaState } from "./types.js";
3
2
  export declare function setQuotaStateDir(dir: string): void;
4
3
  export declare function getQuotaStatePath(): string;
5
- export declare function decayWeight(weight: number, elapsedHours: number, halfLifeHours: number): number;
6
- export declare function applyDecayToEntry(entry: QuotaStateEntry, halfLifeHours: number): QuotaStateEntry;
4
+ /**
5
+ * The cold-start quota state. This is the ONLY value that legitimately means
6
+ * "nothing learned yet" — it must never be manufactured from a read failure.
7
+ * An empty state carries no `cooldown_until`, no learned limits, and no
8
+ * concurrency evidence, so silently substituting it for an unreadable file
9
+ * degrades the engine in the **fail-open** direction (unbounded dispatch).
10
+ */
11
+ export declare function emptyQuotaState(): QuotaState;
12
+ /**
13
+ * The quota state file exists but could not be read or is not a valid
14
+ * {@link QuotaState}. Distinct from "absent" (cold start → {@link emptyQuotaState}).
15
+ *
16
+ * Thrown rather than degraded-to-empty for two reasons: a reader that swallows
17
+ * it dispatches with no throttle at all, and a read-modify-write path that
18
+ * swallows it overwrites the file with an empty state, destroying every learned
19
+ * limit and live cooldown. Callers that genuinely want a degrade must opt in
20
+ * explicitly and say so (see `learnedQuotaSource.probeUsage`, which reports
21
+ * `degraded`, and the read-only reporting commands).
22
+ */
23
+ export declare class QuotaStateUnavailableError extends Error {
24
+ readonly statePath: string;
25
+ /**
26
+ * `corrupt` — the bytes are there but are not a valid QuotaState. Terminal
27
+ * for that file: re-reading will fail identically, so a write-path may
28
+ * quarantine it (see {@link readQuotaStateForUpdate}).
29
+ * `unreadable` — the file could not be opened (EACCES, EBUSY, EIO). Possibly
30
+ * transient, and the content may be perfectly good — NEVER destroy it.
31
+ */
32
+ readonly kind: "corrupt" | "unreadable";
33
+ readonly reason: string;
34
+ constructor(statePath: string,
35
+ /**
36
+ * `corrupt` — the bytes are there but are not a valid QuotaState. Terminal
37
+ * for that file: re-reading will fail identically, so a write-path may
38
+ * quarantine it (see {@link readQuotaStateForUpdate}).
39
+ * `unreadable` — the file could not be opened (EACCES, EBUSY, EIO). Possibly
40
+ * transient, and the content may be perfectly good — NEVER destroy it.
41
+ */
42
+ kind: "corrupt" | "unreadable", reason: string);
43
+ }
7
44
  export declare function readQuotaState(): Promise<QuotaState>;
45
+ /**
46
+ * The ONE opt-in degrade for {@link readQuotaState}: return the cold-start state
47
+ * when the file is unusable, after saying so on stderr. Use only where losing
48
+ * every cooldown and learned limit is survivable (pool construction, read-only
49
+ * reporting) — never on a path that would then WRITE the degraded state back.
50
+ * The degrade is loud by construction so a corrupt file cannot look like a cold
51
+ * start.
52
+ */
53
+ export declare function readQuotaStateOrDegrade(context: string): Promise<QuotaState>;
54
+ /**
55
+ * Read quota state for a read-modify-write whose caller ALREADY HOLDS
56
+ * `quota-state.json.lock`. Every RMW helper in this module goes through it.
57
+ *
58
+ * A `corrupt` file is terminal — every future read fails the same way — so
59
+ * without a repair path the first bad byte would permanently disable cooldown
60
+ * persistence and limit learning for the life of that file, with nothing but one
61
+ * stderr line to show for it. So: quarantine the bad bytes aside (evidence is
62
+ * preserved, never deleted), say so loudly, and continue from cold state, which
63
+ * the caller's write then re-establishes. Safe to do here precisely because the
64
+ * lock is held.
65
+ *
66
+ * An `unreadable` file (EACCES/EBUSY/EIO) is NOT quarantined and NOT swallowed —
67
+ * the content may be perfectly good and the failure transient, so the rejection
68
+ * propagates and the caller leaves the file untouched.
69
+ */
70
+ export declare function readQuotaStateForUpdate(context: string): Promise<QuotaState>;
71
+ /**
72
+ * Persist quota state atomically (temp file + rename, via the shared
73
+ * `writeJsonFile`). Atomicity is load-bearing: `refreshQuotaStateIfNeeded`
74
+ * reads this file WITHOUT taking `quota-state.json.lock`, so a truncating
75
+ * in-place write would expose a torn file to a co-located peer. With
76
+ * rename-over-destination a reader observes either the whole old file or the
77
+ * whole new one, never a prefix.
78
+ */
8
79
  export declare function writeQuotaState(state: QuotaState): Promise<void>;
9
- export declare function computeMaxSafeConcurrency(entry: QuotaStateEntry, halfLifeHours: number, maxToCheck?: number): number;
10
- export declare function computeRampUpConcurrency(entry: QuotaStateEntry, halfLifeHours: number, maxToCheck?: number): number;
11
80
  export declare const TOKENS_PER_PCT_EWMA_ALPHA = 0.3;
12
81
  export declare const MIN_SLOPE_DELTA_PERCENT = 0.5;
13
82
  /**
@@ -38,7 +107,8 @@ export declare function foldOutputRatioObservation(prior: Record<string, number>
38
107
  * Persist a folded output/input ratio observation for a pool's quota-state entry,
39
108
  * under the shared quota-state file lock. Reads the current entry (or a blank one),
40
109
  * folds the observation via {@link foldOutputRatioObservation}, and writes back.
41
- * Degrade-safe: a missing/unreadable state file falls to a blank entry; an
110
+ * A missing state file is cold start; a CORRUPT one is quarantined and rebuilt
111
+ * ({@link readQuotaStateForUpdate}); a transient-unreadable one rejects. An
42
112
  * observation carrying no ratio signal leaves the file untouched-in-value.
43
113
  */
44
114
  export declare function recordOutputRatioObservation(providerModelKey: string, lens: string, actualInputTokens: number, actualOutputTokens: number): Promise<void>;
@@ -46,24 +116,23 @@ export declare function recordOutputRatioObservation(providerModelKey: string, l
46
116
  * Persist a folded tokens_per_pct observation for a pool's quota-state entry,
47
117
  * under the shared quota-state file lock. Reads the current entry (or a blank
48
118
  * one), folds the observation via {@link foldTokensPerPctObservation}, and writes
49
- * back. Degrade-safe: a missing/unreadable state file falls to a blank entry;
50
- * an observation that doesn't move the slope leaves the file untouched-in-value.
119
+ * back. A missing state file is cold start; a CORRUPT one is quarantined and
120
+ * rebuilt ({@link readQuotaStateForUpdate}); a transient-unreadable one rejects.
121
+ * An observation that doesn't move the slope leaves the file untouched-in-value.
51
122
  */
52
123
  export declare function recordTokensPerPctObservation(providerModelKey: string, windowLabel: string, priorRemainingPct: number, newRemainingPct: number, tokensDispatched: number): Promise<void>;
53
124
  export declare const BASE_COOLDOWN_MS = 60000;
54
125
  export declare const MAX_COOLDOWN_MS: number;
55
126
  export declare function computeBackoffCooldownMs(consecutive429Count: number): number;
56
- export declare function computeBackoffFailureWeight(consecutive429Count: number): number;
57
- export declare function recordWaveOutcome(providerModelKey: string, outcome: ObservedWaveOutcome, halfLifeHours: number): Promise<void>;
58
127
  /**
59
- * Targeted recovery: zero out the failure_weight on a single concurrency bucket
60
- * for a given provider-model key. Use this when a sparse or stale failure entry
61
- * at level `concurrency` is permanently capping the inferred safe concurrency —
62
- * the scan in computeMaxSafeConcurrency breaks at the first bucket whose
63
- * failure_weight dominates, so clearing one bad entry unblocks all higher levels.
128
+ * Record the outcome of a dispatched wave against a pool's quota entry: a success
129
+ * clears the cooldown and the 429 streak; a 429 extends both.
64
130
  *
65
- * This is faster than waiting for the 24-hour decay half-life to clear bad entries.
66
- * success_weight is preserved; only the failure evidence is removed.
131
+ * It records no concurrency evidence. Concurrency is DECLARED by the provider
132
+ * (`source.quota.max_concurrent` `CapacityPool.concurrencyCap`) or ABSENT, in
133
+ * which case quota headroom and rate limits are the only throttle. Inferring a
134
+ * safe concurrency from an outcome stream is a category error — see
135
+ * `spec/audit/dispatch-admission-control.md`.
67
136
  */
68
- export declare function clearBucketFailureEvidence(providerModelKey: string, concurrency: number): Promise<void>;
137
+ export declare function recordWaveOutcome(providerModelKey: string, outcome: ObservedWaveOutcome): Promise<void>;
69
138
  //# sourceMappingURL=state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAqB,mBAAmB,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAWtG,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAKnC,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAGlD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAG1C;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,GACpB,MAAM,CAGR;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,MAAM,GACpB,eAAe,CAWjB;AASD,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CA2B1D;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtE;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,MAAM,EACrB,UAAU,SAAmB,GAC5B,MAAM,CAgBR;AAID,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,MAAM,EACrB,UAAU,SAAmB,GAC5B,MAAM,CAYR;AAKD,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAI7C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACzC,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,MAAM,GACvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBxB;AAKD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACzC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,EAAE,MAAM,GACzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBxB;AAED;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAMD,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,eAAe,QAAc,CAAC;AAE3C,wBAAgB,wBAAwB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAG5E;AAED,wBAAgB,2BAA2B,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAE/E;AAED,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,mBAAmB,EAC5B,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED;;;;;;;;;GASG;AACH,wBAAsB,0BAA0B,CAC9C,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAaf"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/shared/quota/state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAmB,MAAM,YAAY,CAAC;AAMnF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAElD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAG1C;AASD;;;;;;GAMG;AACH,wBAAgB,eAAe,IAAI,UAAU,CAE5C;AAED;;;;;;;;;;GAUG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;IAEjD,QAAQ,CAAC,SAAS,EAAE,MAAM;IAC1B;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,YAAY;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM;gBATd,SAAS,EAAE,MAAM;IAC1B;;;;;;OAMG;IACM,IAAI,EAAE,SAAS,GAAG,YAAY,EAC9B,MAAM,EAAE,MAAM;CAK1B;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAuC1D;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAWlF;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CA0BlF;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtE;AA0BD,eAAO,MAAM,yBAAyB,MAAM,CAAC;AAI7C,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACzC,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,MAAM,GACvB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBxB;AAKD,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAE3C;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACzC,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,EAAE,MAAM,GACzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAkBxB;AAED;;;;;;;GAOG;AACH,wBAAsB,4BAA4B,CAChD,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,gBAAgB,EAAE,MAAM,EACxB,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,eAAe,EAAE,MAAM,EACvB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAMD,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,eAAe,QAAc,CAAC;AAE3C,wBAAgB,wBAAwB,CAAC,mBAAmB,EAAE,MAAM,GAAG,MAAM,CAG5E;AAED;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAGf"}