audit-tools 0.32.59 → 0.32.60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/audit/cli/charterDeltaPrompt.d.ts.map +1 -1
- package/dist/audit/cli/charterDeltaPrompt.js +19 -1
- package/dist/audit/cli/charterDeltaPrompt.js.map +1 -1
- package/dist/audit/cli/dispatch/tierRouting.d.ts +8 -0
- package/dist/audit/cli/dispatch/tierRouting.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/tierRouting.js +1 -1
- package/dist/audit/cli/dispatch/tierRouting.js.map +1 -1
- package/dist/audit/cli/dispatch/tokenUsageObservation.d.ts +91 -0
- package/dist/audit/cli/dispatch/tokenUsageObservation.d.ts.map +1 -0
- package/dist/audit/cli/dispatch/tokenUsageObservation.js +210 -0
- package/dist/audit/cli/dispatch/tokenUsageObservation.js.map +1 -0
- package/dist/audit/cli/dispatch.d.ts.map +1 -1
- package/dist/audit/cli/dispatch.js +21 -9
- package/dist/audit/cli/dispatch.js.map +1 -1
- package/dist/audit/cli/mergeAndIngestCommand.d.ts.map +1 -1
- package/dist/audit/cli/mergeAndIngestCommand.js +62 -4
- package/dist/audit/cli/mergeAndIngestCommand.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +7 -4
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/prompts.d.ts.map +1 -1
- package/dist/audit/cli/prompts.js +12 -0
- package/dist/audit/cli/prompts.js.map +1 -1
- package/dist/audit/cli/providerConfirmationStep.d.ts +10 -1
- package/dist/audit/cli/providerConfirmationStep.d.ts.map +1 -1
- package/dist/audit/cli/providerConfirmationStep.js +49 -0
- package/dist/audit/cli/providerConfirmationStep.js.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.js +17 -1
- package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
- package/dist/audit/contracts/workerSchemas.d.ts +36 -0
- package/dist/audit/contracts/workerSchemas.d.ts.map +1 -1
- package/dist/audit/orchestrator/charterExtractionExecutor.d.ts.map +1 -1
- package/dist/audit/orchestrator/charterExtractionExecutor.js +11 -6
- package/dist/audit/orchestrator/charterExtractionExecutor.js.map +1 -1
- package/dist/audit/orchestrator/rollingDispatch.d.ts.map +1 -1
- package/dist/audit/orchestrator/rollingDispatch.js +2 -0
- package/dist/audit/orchestrator/rollingDispatch.js.map +1 -1
- package/dist/audit/quota/index.d.ts +4 -4
- package/dist/audit/types/activeDispatch.d.ts +8 -0
- package/dist/audit/types/activeDispatch.d.ts.map +1 -1
- package/dist/audit/types.d.ts +30 -0
- package/dist/audit/types.d.ts.map +1 -1
- package/dist/audit/types.js +19 -0
- package/dist/audit/types.js.map +1 -1
- package/dist/audit/validation/auditResults.d.ts.map +1 -1
- package/dist/audit/validation/auditResults.js +40 -0
- package/dist/audit/validation/auditResults.js.map +1 -1
- package/dist/remediate/steps/dispatch/acceptNode.d.ts +1 -1
- package/dist/remediate/steps/dispatch/acceptNode.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/acceptNode.js +13 -6
- package/dist/remediate/steps/dispatch/acceptNode.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +23 -0
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +52 -15
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/shared/dispatch/admissionLoop.d.ts +8 -6
- package/dist/shared/dispatch/admissionLoop.d.ts.map +1 -1
- package/dist/shared/dispatch/admissionLoop.js +13 -7
- package/dist/shared/dispatch/admissionLoop.js.map +1 -1
- package/dist/shared/dispatch/providerLaunchFinalize.d.ts +7 -3
- package/dist/shared/dispatch/providerLaunchFinalize.d.ts.map +1 -1
- package/dist/shared/dispatch/providerLaunchFinalize.js +52 -6
- package/dist/shared/dispatch/providerLaunchFinalize.js.map +1 -1
- package/dist/shared/dispatch/rollingDispatch.d.ts +97 -1
- package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
- package/dist/shared/dispatch/rollingDispatch.js +231 -80
- package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
- package/dist/shared/dispatch/unifiedRolling.d.ts +23 -0
- package/dist/shared/dispatch/unifiedRolling.d.ts.map +1 -1
- package/dist/shared/dispatch/unifiedRolling.js +2 -0
- package/dist/shared/dispatch/unifiedRolling.js.map +1 -1
- package/dist/shared/friction/stepBoundaryCapture.d.ts +87 -1
- package/dist/shared/friction/stepBoundaryCapture.d.ts.map +1 -1
- package/dist/shared/friction/stepBoundaryCapture.js +117 -0
- package/dist/shared/friction/stepBoundaryCapture.js.map +1 -1
- package/dist/shared/friction/triage.d.ts.map +1 -1
- package/dist/shared/friction/triage.js +0 -0
- package/dist/shared/friction/triage.js.map +1 -1
- package/dist/shared/index.d.ts +9 -7
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +5 -5
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/providers/providerConfirmation.d.ts +43 -1
- package/dist/shared/providers/providerConfirmation.d.ts.map +1 -1
- package/dist/shared/providers/providerConfirmation.js +28 -0
- package/dist/shared/providers/providerConfirmation.js.map +1 -1
- package/dist/shared/quota/accountId.d.ts +54 -0
- package/dist/shared/quota/accountId.d.ts.map +1 -0
- package/dist/shared/quota/accountId.js +96 -0
- package/dist/shared/quota/accountId.js.map +1 -0
- package/dist/shared/quota/apiPool.d.ts.map +1 -1
- package/dist/shared/quota/apiPool.js +29 -1
- package/dist/shared/quota/apiPool.js.map +1 -1
- package/dist/shared/quota/capacity.d.ts +2 -2
- package/dist/shared/quota/errorParsing.d.ts +31 -0
- package/dist/shared/quota/errorParsing.d.ts.map +1 -1
- package/dist/shared/quota/errorParsing.js +115 -0
- package/dist/shared/quota/errorParsing.js.map +1 -1
- package/dist/shared/quota/hostSessionQuotaSource.d.ts +15 -2
- package/dist/shared/quota/hostSessionQuotaSource.d.ts.map +1 -1
- package/dist/shared/quota/hostSessionQuotaSource.js +12 -8
- package/dist/shared/quota/hostSessionQuotaSource.js.map +1 -1
- package/dist/shared/quota/scheduler.d.ts +70 -11
- package/dist/shared/quota/scheduler.d.ts.map +1 -1
- package/dist/shared/quota/scheduler.js +86 -18
- package/dist/shared/quota/scheduler.js.map +1 -1
- package/dist/shared/quota/state.d.ts +72 -0
- package/dist/shared/quota/state.d.ts.map +1 -1
- package/dist/shared/quota/state.js +108 -0
- package/dist/shared/quota/state.js.map +1 -1
- package/dist/shared/types/rollingDispatch.d.ts +50 -1
- package/dist/shared/types/rollingDispatch.d.ts.map +1 -1
- package/package.json +1 -1
- package/schemas/audit_result.schema.json +16 -0
- package/schemas/audit_results.schema.json +16 -0
|
@@ -29,12 +29,38 @@
|
|
|
29
29
|
* degraded. Inert when quota management is disabled (selection stays pure
|
|
30
30
|
* capability order). This is what makes the real-time quota sources actually
|
|
31
31
|
* redistribute load instead of merely throttling a single chosen pool.
|
|
32
|
+
* - Credit exhaustion (Slice A2, backlog HIGH 2026-07-11): a `credit_exhausted`
|
|
33
|
+
* result (out of prepaid usage credits, detected via
|
|
34
|
+
* `detectCreditExhaustionFromChannel` — architecturally distinct from a 429:
|
|
35
|
+
* NO reset timer) permanently drops the pool into `exhaustedPoolIds` and
|
|
36
|
+
* RE-QUEUES the packet, exactly like the transient-429 re-route above, EXCEPT
|
|
37
|
+
* it records the quota outcome as `error` (never `rate_limited`) so no
|
|
38
|
+
* persisted backoff `cooldown_until` is ever set — the exclusion is a
|
|
39
|
+
* permanent-for-this-run, in-memory demotion, never a timed retry. `onCreditExhausted`
|
|
40
|
+
* is the consumer's friction-emission seam (mirrors `onCostDrift`).
|
|
41
|
+
* - Quota-unclassified harvest (Slice A2b, TIER 2 of the three-tier classifier):
|
|
42
|
+
* TIER 1 is the precise `detectCreditExhaustionError` / `detectRateLimitError`
|
|
43
|
+
* above (unchanged). TIER 3 is a death whose text matches neither precise
|
|
44
|
+
* pattern NOR the broad `detectQuotaSuspicious` pre-filter — a genuine,
|
|
45
|
+
* unclassified `error`. TIER 2 sits between them: a death whose text IS
|
|
46
|
+
* quota-suspicious (the broad pre-filter matched) but classified as NEITHER
|
|
47
|
+
* precise class. A `quota_unclassified` result degrades CONSERVATIVELY — like
|
|
48
|
+
* the transient-429 re-route above, it RE-QUEUES the packet and records the
|
|
49
|
+
* quota outcome as `rate_limited` (a REVERSIBLE, timed backoff cooldown), but
|
|
50
|
+
* it is the ONE thing it must NEVER do that credit_exhausted does: it never
|
|
51
|
+
* adds the pool to `exhaustedPoolIds`. Guessing a permanent exclusion from an
|
|
52
|
+
* ambiguous, broadly-matched message is worse than the silent-death bug this
|
|
53
|
+
* fixes — only a CONFIDENT precise credit-exhaustion match may ever permanently
|
|
54
|
+
* exclude a pool. `onQuotaUnclassified` is the consumer's harvest seam: it
|
|
55
|
+
* carries the verbatim matched text so an operator can classify the death and
|
|
56
|
+
* improve `errorParsing.ts`'s pattern set (mirrors `onCreditExhausted`).
|
|
32
57
|
*/
|
|
33
|
-
import { scheduleWave,
|
|
34
|
-
import { recordWaveOutcome, readQuotaState, emptyQuotaState,
|
|
58
|
+
import { scheduleWave, } from "../quota/scheduler.js";
|
|
59
|
+
import { recordWaveOutcome, readQuotaState, emptyQuotaState, quotaSnapshotWindowPctMap, foldSlopeObservationFromPctMaps, } from "../quota/state.js";
|
|
35
60
|
import { buildEmptyPoolTerminal, buildQuotaPausedTerminal } from "../quota/capacity.js";
|
|
36
61
|
import { detectRateLimitError, computeCooldownUntil } from "../quota/errorParsing.js";
|
|
37
62
|
import { DISPATCH_LEASE_TTL_MS } from "../quota/reservationLedger.js";
|
|
63
|
+
import { deriveLocalAccountId, foldAccountCooldown } from "../quota/accountId.js";
|
|
38
64
|
import { tierRank } from "./tierRank.js";
|
|
39
65
|
// ---------------------------------------------------------------------------
|
|
40
66
|
// InFlightTokenTracker
|
|
@@ -88,20 +114,28 @@ function poolCapabilityRank(pool) {
|
|
|
88
114
|
// ---------------------------------------------------------------------------
|
|
89
115
|
/**
|
|
90
116
|
* Classify a pool as quota-degraded from its live signals: an active cooldown
|
|
91
|
-
* (learned 429 backoff, or a critical proactive reset folded in by
|
|
92
|
-
*
|
|
93
|
-
* pool is still dispatchable — `scheduleWave` floors
|
|
94
|
-
* deprioritised so load spills to a healthier peer first
|
|
117
|
+
* (learned 429 backoff, or a critical proactive reset folded in by `scheduleWave`)
|
|
118
|
+
* or a derived remaining token budget too small to fund even this packet's
|
|
119
|
+
* estimated tokens. A degraded pool is still dispatchable — `scheduleWave` floors
|
|
120
|
+
* the wave at 1 — but it is deprioritised so load spills to a healthier peer first
|
|
121
|
+
* (INV-QD-14).
|
|
95
122
|
*
|
|
96
|
-
*
|
|
97
|
-
* a
|
|
98
|
-
*
|
|
123
|
+
* The near-wall signal is a token-vs-token comparison, never a remaining_pct cliff:
|
|
124
|
+
* a pool is degraded exactly when `deriveTokenBudget`'s remaining budget (absolute
|
|
125
|
+
* `tokens_remaining`, or `remaining_pct × learned tokens_per_pct`) can't cover the
|
|
126
|
+
* packet — so a 5%-remaining window that still holds plenty of absolute tokens is
|
|
127
|
+
* NOT degraded (the old `< 0.3` cliff wrongly sank it), while a window with barely
|
|
128
|
+
* any tokens left IS, whatever its percentage. A pool with no derivable budget (an
|
|
129
|
+
* uncalibrated window ⇒ `remaining_token_budget == null`) can't be token-reasoned
|
|
130
|
+
* about, so it is not proactively degraded here; the reactive 429→cooldown floor
|
|
131
|
+
* (INV-QD-07) backstops it. `budgetTokens` is the packet's estimated cost, the same
|
|
132
|
+
* quantity the scheduler's token gate spends against.
|
|
99
133
|
*/
|
|
100
|
-
function isPoolQuotaDegraded(
|
|
134
|
+
function isPoolQuotaDegraded(schedule, budgetTokens) {
|
|
101
135
|
if (schedule.cooldown_until)
|
|
102
136
|
return true;
|
|
103
|
-
const
|
|
104
|
-
return
|
|
137
|
+
const remaining = schedule.remaining_token_budget;
|
|
138
|
+
return remaining != null && remaining < budgetTokens;
|
|
105
139
|
}
|
|
106
140
|
/**
|
|
107
141
|
* Select the best available provider slot for a packet.
|
|
@@ -143,21 +177,6 @@ export function selectProvider(packet, confirmedPools, inFlightTracker, quotaSta
|
|
|
143
177
|
const resetAt = pausedPoolResetAt.get(poolId);
|
|
144
178
|
return resetAt != null && now < resetAt;
|
|
145
179
|
};
|
|
146
|
-
// Capability ordering: high-complexity → descending rank, low-complexity → ascending.
|
|
147
|
-
// Within an equal-capability tie, balance by current in-flight load (least-loaded
|
|
148
|
-
// first) so a run of same-complexity packets fans OUT across equal pools rather than
|
|
149
|
-
// front-loading the first — deliberate multi-pool fan-out even when the pools are
|
|
150
|
-
// unbounded (defect-1 sub-defect 2). Each dispatch updates the tracker, so the next
|
|
151
|
-
// same-rank packet in the pass prefers the peer that is now less loaded.
|
|
152
|
-
const sorted = [...confirmedPools]
|
|
153
|
-
.filter((p) => !exhaustedPoolIds.has(p.id) && !isPausedNow(p.id))
|
|
154
|
-
.sort((a, b) => {
|
|
155
|
-
const diff = poolCapabilityRank(b) - poolCapabilityRank(a);
|
|
156
|
-
const capOrdered = highComplexity ? diff : -diff;
|
|
157
|
-
if (capOrdered !== 0)
|
|
158
|
-
return capOrdered;
|
|
159
|
-
return inFlightTracker.getInFlightTokens(a.id) - inFlightTracker.getInFlightTokens(b.id);
|
|
160
|
-
});
|
|
161
180
|
// Ask scheduleWave whether each pool can accept one more slot, accounting for
|
|
162
181
|
// in-flight tokens as additional estimated slot cost. The schedule already
|
|
163
182
|
// folds in the real-time quota snapshot, the resolved provider limits, and any
|
|
@@ -176,7 +195,24 @@ export function selectProvider(packet, confirmedPools, inFlightTracker, quotaSta
|
|
|
176
195
|
// unavailable (readQuotaState throwing → the cache retains its prior/empty state),
|
|
177
196
|
// so a prior-run cooldown still drives proactive spill instead of waiting for the
|
|
178
197
|
// reactive 429 floor. Both are keyed by pool.id, so they can never index apart.
|
|
179
|
-
const
|
|
198
|
+
const ownQuotaStateEntry = quotaStateEntries[poolKey] ?? pool.quotaStateEntry ?? null;
|
|
199
|
+
// Account-axis fold (Bug 3 / Slice A3): a bare-API-key source (openai-compatible
|
|
200
|
+
// / NIM) carries no live account handshake, so its account is derived locally
|
|
201
|
+
// from (endpoint, api_key_env). When this pool has one, pull in the WORST
|
|
202
|
+
// cooldown/429 signal recorded under ANY sibling pool sharing that same
|
|
203
|
+
// account — reading each sibling's OWN live-or-frozen entry, exactly as this
|
|
204
|
+
// pool's own entry was just resolved above — so a cooldown learned on one
|
|
205
|
+
// source of the account gates every sibling, never just the pool whose own key
|
|
206
|
+
// happened to record the 429. Budget fields (tokens_per_pct/output_per_input)
|
|
207
|
+
// are untouched by the fold — see `foldAccountCooldown`.
|
|
208
|
+
const accountId = pool.source ? deriveLocalAccountId(pool.source) : null;
|
|
209
|
+
const quotaStateEntry = accountId
|
|
210
|
+
? foldAccountCooldown(ownQuotaStateEntry, confirmedPools
|
|
211
|
+
.filter((sibling) => sibling.id !== pool.id &&
|
|
212
|
+
sibling.source &&
|
|
213
|
+
deriveLocalAccountId(sibling.source) === accountId)
|
|
214
|
+
.map((sibling) => quotaStateEntries[sibling.id] ?? sibling.quotaStateEntry ?? null))
|
|
215
|
+
: ownQuotaStateEntry;
|
|
180
216
|
const inFlightTokens = inFlightTracker.getInFlightTokens(pool.id);
|
|
181
217
|
return scheduleWave({
|
|
182
218
|
providerName: pool.providerName,
|
|
@@ -190,20 +226,44 @@ export function selectProvider(packet, confirmedPools, inFlightTracker, quotaSta
|
|
|
190
226
|
quotaSourceSnapshot: pool.quotaSourceSnapshot ?? null,
|
|
191
227
|
});
|
|
192
228
|
};
|
|
193
|
-
const evaluated =
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
//
|
|
197
|
-
//
|
|
198
|
-
//
|
|
199
|
-
//
|
|
200
|
-
//
|
|
201
|
-
//
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
229
|
+
const evaluated = confirmedPools
|
|
230
|
+
.filter((p) => !exhaustedPoolIds.has(p.id) && !isPausedNow(p.id))
|
|
231
|
+
.map((pool) => ({ pool, schedule: scheduleForPool(pool) }));
|
|
232
|
+
// Single ordering pass (INV-QD-14 proactive spill), in priority order — quota
|
|
233
|
+
// management is one track, always-on, so this ordering always applies:
|
|
234
|
+
// 1. Health: a HARD-degraded pool — active cooldown, cost-demoted (declared free
|
|
235
|
+
// but observed charging), or one whose derived remaining budget can't fund this
|
|
236
|
+
// packet's estimated tokens (`isPoolQuotaDegraded`) — sinks below every pool with
|
|
237
|
+
// live headroom so load spills off it BEFORE a 429. These are the KNOWABLE
|
|
238
|
+
// constraint signals; there is deliberately NO absolute remaining_pct cliff, so a
|
|
239
|
+
// pool that cannot be token-reasoned about (an uncalibrated window) is not
|
|
240
|
+
// proactively sunk — the reactive 429→cooldown floor backstops it. Cost-demotion
|
|
241
|
+
// is folded in here (not into `isPoolQuotaDegraded`, a pure function of live quota
|
|
242
|
+
// signals) because the demotion set is dispatch-run state.
|
|
243
|
+
// 2. Capability: high-complexity packets prefer the most-capable pool, low-complexity
|
|
244
|
+
// the least (preserving expensive capacity for harder work). Rank from `pool.rank`,
|
|
245
|
+
// never a provider-name table (INV-shared-core-02).
|
|
246
|
+
// 3. Load balance: within an equal-capability tie, least in-flight-loaded first so a
|
|
247
|
+
// run of same-complexity packets fans OUT across equal pools rather than
|
|
248
|
+
// front-loading the first (defect-1 sub-defect 2).
|
|
249
|
+
// 4. Relative headroom: a final tiebreak toward the pool with more remaining quota —
|
|
250
|
+
// a pure RELATIVE comparison of the pools' own `remaining_pct`, never a threshold.
|
|
251
|
+
const isHardDegraded = (e) => isPoolQuotaDegraded(e.schedule, packet.estimatedTokens) || costDemotedPoolIds.has(e.pool.id);
|
|
252
|
+
const ordered = [...evaluated].sort((a, b) => {
|
|
253
|
+
const degradedDiff = (isHardDegraded(a) ? 1 : 0) - (isHardDegraded(b) ? 1 : 0);
|
|
254
|
+
if (degradedDiff !== 0)
|
|
255
|
+
return degradedDiff;
|
|
256
|
+
const rankDiff = poolCapabilityRank(b.pool) - poolCapabilityRank(a.pool);
|
|
257
|
+
const capOrdered = highComplexity ? rankDiff : -rankDiff;
|
|
258
|
+
if (capOrdered !== 0)
|
|
259
|
+
return capOrdered;
|
|
260
|
+
const loadDiff = inFlightTracker.getInFlightTokens(a.pool.id) - inFlightTracker.getInFlightTokens(b.pool.id);
|
|
261
|
+
if (loadDiff !== 0)
|
|
262
|
+
return loadDiff;
|
|
263
|
+
const headroomA = a.pool.quotaSourceSnapshot?.remaining_pct ?? Number.POSITIVE_INFINITY;
|
|
264
|
+
const headroomB = b.pool.quotaSourceSnapshot?.remaining_pct ?? Number.POSITIVE_INFINITY;
|
|
265
|
+
return headroomB - headroomA;
|
|
266
|
+
});
|
|
207
267
|
for (const { pool, schedule } of ordered) {
|
|
208
268
|
if (schedule.max_concurrent > 0) {
|
|
209
269
|
return {
|
|
@@ -226,7 +286,7 @@ export function selectProvider(packet, confirmedPools, inFlightTracker, quotaSta
|
|
|
226
286
|
* separate concurrency cap unless `options.maxConcurrentPerPool` is set.
|
|
227
287
|
*/
|
|
228
288
|
export function createRollingDispatcher(config, options = {}) {
|
|
229
|
-
const { confirmedPools, sessionConfig, dispatchPacket, onResult, onCostDrift, costDemotedPoolIds: injectedCostDemotedPoolIds, isPacketEscalated, recordRateLimit, reservationLedger, resolvePoolBudget, resolveOutputReservation: resolveOutputReservationFn, } = config;
|
|
289
|
+
const { confirmedPools, sessionConfig, dispatchPacket, onResult, onCostDrift, onCreditExhausted, onQuotaUnclassified, costDemotedPoolIds: injectedCostDemotedPoolIds, isPacketEscalated, recordRateLimit, reservationLedger, resolvePoolBudget, resolveOutputReservation: resolveOutputReservationFn, } = config;
|
|
230
290
|
const state = {
|
|
231
291
|
pendingQueue: [],
|
|
232
292
|
inFlight: new Map(),
|
|
@@ -237,41 +297,27 @@ export function createRollingDispatcher(config, options = {}) {
|
|
|
237
297
|
// A driver-provided set (driveRolling) makes demotion span this run's sub-waves
|
|
238
298
|
// + levels; a standalone dispatcher owns a fresh per-instance set.
|
|
239
299
|
costDemotedPoolIds: injectedCostDemotedPoolIds ?? new Set(),
|
|
300
|
+
quotaUnclassifiedPoolIds: new Set(),
|
|
240
301
|
};
|
|
241
302
|
const inFlightTracker = new InFlightTokenTracker();
|
|
242
303
|
const allResults = [];
|
|
243
304
|
// Per-pool in-flight count for optional maxConcurrentPerPool cap.
|
|
244
305
|
const inFlightPerPool = new Map();
|
|
245
306
|
const slopeBaselines = new Map();
|
|
246
|
-
function windowPctMap(pool) {
|
|
247
|
-
const map = new Map();
|
|
248
|
-
const snap = pool?.quotaSourceSnapshot;
|
|
249
|
-
if (!snap)
|
|
250
|
-
return map;
|
|
251
|
-
if (snap.windows && snap.windows.length > 0) {
|
|
252
|
-
for (const w of snap.windows) {
|
|
253
|
-
if (w.remaining_pct != null && Number.isFinite(w.remaining_pct)) {
|
|
254
|
-
map.set(w.label, w.remaining_pct);
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
else if (snap.remaining_pct != null && Number.isFinite(snap.remaining_pct)) {
|
|
259
|
-
map.set("default", snap.remaining_pct);
|
|
260
|
-
}
|
|
261
|
-
return map;
|
|
262
|
-
}
|
|
263
307
|
function ensureBaseline(poolId) {
|
|
264
308
|
if (slopeBaselines.has(poolId))
|
|
265
309
|
return;
|
|
266
310
|
const pool = confirmedPools.find((p) => p.id === poolId);
|
|
267
311
|
slopeBaselines.set(poolId, {
|
|
268
|
-
pctByLabel:
|
|
312
|
+
pctByLabel: quotaSnapshotWindowPctMap(pool?.quotaSourceSnapshot),
|
|
269
313
|
tokensSinceBaseline: 0,
|
|
270
314
|
});
|
|
271
315
|
}
|
|
272
316
|
/**
|
|
273
317
|
* Attribute the tokens dispatched since the baseline to whichever of the pool's
|
|
274
|
-
* windows have MOVED, folding a slope sample per moved window
|
|
318
|
+
* windows have MOVED, folding a slope sample per moved window (single-sourced
|
|
319
|
+
* in {@link foldSlopeObservationFromPctMaps}, shared with the host-dispatch
|
|
320
|
+
* merge path via {@link foldSlopeObservationFromSnapshots}). No-op when the
|
|
275
321
|
* pool has no live snapshot or no window advanced. Re-baselines on any fold.
|
|
276
322
|
*/
|
|
277
323
|
async function observeSlope(poolId, tokens) {
|
|
@@ -280,23 +326,9 @@ export function createRollingDispatcher(config, options = {}) {
|
|
|
280
326
|
return;
|
|
281
327
|
baseline.tokensSinceBaseline += Math.max(0, tokens);
|
|
282
328
|
const pool = confirmedPools.find((p) => p.id === poolId);
|
|
283
|
-
const current =
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
const nowPct = current.get(label);
|
|
287
|
-
if (nowPct == null)
|
|
288
|
-
continue;
|
|
289
|
-
if ((priorPct - nowPct) * 100 < 0.5)
|
|
290
|
-
continue; // below MIN_SLOPE_DELTA_PERCENT
|
|
291
|
-
try {
|
|
292
|
-
await recordTokensPerPctObservation(poolId, label, priorPct, nowPct, baseline.tokensSinceBaseline);
|
|
293
|
-
}
|
|
294
|
-
catch {
|
|
295
|
-
// Non-fatal: slope learning must never abort dispatch.
|
|
296
|
-
}
|
|
297
|
-
foldedAny = true;
|
|
298
|
-
}
|
|
299
|
-
if (foldedAny) {
|
|
329
|
+
const current = quotaSnapshotWindowPctMap(pool?.quotaSourceSnapshot);
|
|
330
|
+
const folded = await foldSlopeObservationFromPctMaps(poolId, baseline.pctByLabel, current, baseline.tokensSinceBaseline);
|
|
331
|
+
if (folded.length > 0) {
|
|
300
332
|
slopeBaselines.set(poolId, { pctByLabel: current, tokensSinceBaseline: 0 });
|
|
301
333
|
quotaStateCacheDirty = true;
|
|
302
334
|
}
|
|
@@ -431,10 +463,24 @@ export function createRollingDispatcher(config, options = {}) {
|
|
|
431
463
|
// outcome under it so the reactive backoff state lands on the same entry
|
|
432
464
|
// scheduling reads.
|
|
433
465
|
const providerModelKey = providerSlot.poolId;
|
|
466
|
+
// credit_exhausted records as a plain 'error' outcome — NOT 'rate_limited' —
|
|
467
|
+
// so recordWaveOutcomeUnsafe never applies the exponential-backoff
|
|
468
|
+
// cooldown_until a rate_limited outcome would (state.ts:412-430). That
|
|
469
|
+
// cooldown is a TIMED reset; credit exhaustion has none. The permanent-for-
|
|
470
|
+
// the-run exclusion lives entirely in the in-memory exhaustedPoolIds set
|
|
471
|
+
// below, never in the persisted quota-state cooldown.
|
|
472
|
+
// quota_unclassified records as 'rate_limited' — NOT 'error' — precisely so
|
|
473
|
+
// recordWaveOutcomeUnsafe DOES apply its exponential-backoff cooldown_until
|
|
474
|
+
// (state.ts:412-430). That reversible, timed cooldown IS the "conservative
|
|
475
|
+
// degrade" mechanism (isPoolQuotaDegraded spills load off the pool while the
|
|
476
|
+
// cooldown is active, but the pool stays selectable — never a hard
|
|
477
|
+
// in-run exclusion via exhaustedPoolIds, unlike credit_exhausted below).
|
|
434
478
|
const quotaOutcome = result.outcome === "success" ? "success"
|
|
435
479
|
: result.outcome === "rate_limited" ? "rate_limited"
|
|
436
480
|
: result.outcome === "error" ? "error"
|
|
437
|
-
: "
|
|
481
|
+
: result.outcome === "credit_exhausted" ? "error"
|
|
482
|
+
: result.outcome === "quota_unclassified" ? "rate_limited"
|
|
483
|
+
: "timeout";
|
|
438
484
|
try {
|
|
439
485
|
await recordWaveOutcome(providerModelKey, { outcome: quotaOutcome });
|
|
440
486
|
}
|
|
@@ -525,6 +571,111 @@ export function createRollingDispatcher(config, options = {}) {
|
|
|
525
571
|
}
|
|
526
572
|
return;
|
|
527
573
|
}
|
|
574
|
+
// Credit exhaustion (backlog HIGH, 2026-07-11 live run): an out-of-prepaid-
|
|
575
|
+
// usage-credits condition has NO reset time — unlike a transient 429, an
|
|
576
|
+
// operator must add credits before the pool can ever serve again. Unlike the
|
|
577
|
+
// rate_limited branch above, there is no reset-time / host-session-escalation
|
|
578
|
+
// split to consider: EVERY credit_exhausted result permanently excludes the
|
|
579
|
+
// pool from this run's admissible set (monotonic exhaustedPoolIds — no timed
|
|
580
|
+
// cooldown, ever) and re-queues the packet so a surviving pool absorbs it. If
|
|
581
|
+
// this was the last admissible pool, the run degrades to the SAME empty_pool /
|
|
582
|
+
// quota_paused stranding path a bare 429 exhaustion hits (INV-QD-07) — it
|
|
583
|
+
// pauses/strands gracefully rather than re-killing every packet on the dead pool.
|
|
584
|
+
if (result.outcome === "credit_exhausted") {
|
|
585
|
+
// Fire the hook only the FIRST time a given pool goes credit-exhausted
|
|
586
|
+
// (concurrent in-flight packets against the same pool would otherwise each
|
|
587
|
+
// re-fire it) — matches the "once per pool" contract onCreditExhausted
|
|
588
|
+
// documents, so a downstream consumer need not rely on friction-dedup.
|
|
589
|
+
const firstForPool = !state.exhaustedPoolIds.has(providerSlot.poolId);
|
|
590
|
+
state.exhaustedPoolIds.add(providerSlot.poolId);
|
|
591
|
+
if (firstForPool) {
|
|
592
|
+
try {
|
|
593
|
+
onCreditExhausted?.({
|
|
594
|
+
poolId: providerSlot.poolId,
|
|
595
|
+
rawMatch: result.creditExhaustion?.rawMatch ?? null,
|
|
596
|
+
});
|
|
597
|
+
}
|
|
598
|
+
catch {
|
|
599
|
+
// Best-effort: a throwing friction hook must never abort dispatch.
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
if (!state.completedIds.has(packet.id) && !state.pendingQueue.some((q) => q.id === packet.id)) {
|
|
603
|
+
state.pendingQueue.unshift(packet);
|
|
604
|
+
}
|
|
605
|
+
try {
|
|
606
|
+
process.stderr.write(JSON.stringify({
|
|
607
|
+
ts: new Date().toISOString(),
|
|
608
|
+
kind: "rolling_dispatch_requeue_credit_exhausted",
|
|
609
|
+
packet_id: packet.id,
|
|
610
|
+
exhausted_pool_id: providerSlot.poolId,
|
|
611
|
+
}) + "\n");
|
|
612
|
+
}
|
|
613
|
+
catch {
|
|
614
|
+
// Observability must never abort a run.
|
|
615
|
+
}
|
|
616
|
+
return;
|
|
617
|
+
}
|
|
618
|
+
// Quota-unclassified (Slice A2b, TIER 2, backlog HIGH 2026-07-11): a worker
|
|
619
|
+
// death whose text was quota-SUSPICIOUS (the broad `detectQuotaSuspicious`
|
|
620
|
+
// pre-filter matched) but classified as NEITHER precise class above. This is
|
|
621
|
+
// the CONSERVATIVE degrade — the hard-won lesson from the credit-exhaustion
|
|
622
|
+
// review: guessing a permanent exclusion from an ambiguous, broadly-matched
|
|
623
|
+
// message is worse than the silent-death bug this fixes. So, DELIBERATELY
|
|
624
|
+
// UNLIKE credit_exhausted: the pool is NEVER added to `exhaustedPoolIds` —
|
|
625
|
+
// it stays fully selectable across future runs / re-derivations. The
|
|
626
|
+
// quotaOutcome mapping above already recorded this as a 'rate_limited'
|
|
627
|
+
// outcome, so `recordWaveOutcome` applied a REAL, REVERSIBLE, timed backoff
|
|
628
|
+
// cooldown (`cooldown_until`) to the PERSISTED quota state.
|
|
629
|
+
//
|
|
630
|
+
// Within THIS run, a bounded livelock guard is still required: a pool that
|
|
631
|
+
// is neither excluded (exhaustedPoolIds) nor paused (pausedPoolResetAt) is
|
|
632
|
+
// re-selected on EVERY dispatch pass, so a pool that keeps returning
|
|
633
|
+
// quota_unclassified forever would spin the engine's tight dispatch loop
|
|
634
|
+
// indefinitely (unlike credit_exhausted / a bare-429 rate_limited, which are
|
|
635
|
+
// both bounded by exhaustedPoolIds shrinking the admissible set toward
|
|
636
|
+
// empty). Reuse the SAME `pausedPoolResetAt` piece-D mechanism a parsed
|
|
637
|
+
// session-limit reset uses (`computeCooldownUntil`, in-memory, per-pool,
|
|
638
|
+
// monotonically extended never shortened): it is exactly "reversible pool
|
|
639
|
+
// cooldown/pause" — the pool becomes selectable again once the pause
|
|
640
|
+
// elapses, and if it is the only pool, `noPoolCanAcceptNow` correctly
|
|
641
|
+
// strands the remainder as a RETRYABLE `quota_paused` terminal (INV-QD-07)
|
|
642
|
+
// instead of spinning forever.
|
|
643
|
+
if (result.outcome === "quota_unclassified") {
|
|
644
|
+
const resetAtMs = Date.parse(computeCooldownUntil(null));
|
|
645
|
+
const priorPause = state.pausedPoolResetAt.get(providerSlot.poolId);
|
|
646
|
+
state.pausedPoolResetAt.set(providerSlot.poolId, priorPause != null ? Math.max(priorPause, resetAtMs) : resetAtMs);
|
|
647
|
+
// Fire the harvest hook only the FIRST time a given pool hits this (mirrors
|
|
648
|
+
// onCreditExhausted's firstForPool gate) — a DEDICATED bookkeeping set, never
|
|
649
|
+
// exhaustedPoolIds, so this can never accidentally exclude the pool.
|
|
650
|
+
const firstForPool = !state.quotaUnclassifiedPoolIds.has(providerSlot.poolId);
|
|
651
|
+
state.quotaUnclassifiedPoolIds.add(providerSlot.poolId);
|
|
652
|
+
if (firstForPool) {
|
|
653
|
+
try {
|
|
654
|
+
onQuotaUnclassified?.({
|
|
655
|
+
poolId: providerSlot.poolId,
|
|
656
|
+
text: result.quotaUnclassified?.text ?? "",
|
|
657
|
+
});
|
|
658
|
+
}
|
|
659
|
+
catch {
|
|
660
|
+
// Best-effort: a throwing friction hook must never abort dispatch.
|
|
661
|
+
}
|
|
662
|
+
}
|
|
663
|
+
if (!state.completedIds.has(packet.id) && !state.pendingQueue.some((q) => q.id === packet.id)) {
|
|
664
|
+
state.pendingQueue.unshift(packet);
|
|
665
|
+
}
|
|
666
|
+
try {
|
|
667
|
+
process.stderr.write(JSON.stringify({
|
|
668
|
+
ts: new Date().toISOString(),
|
|
669
|
+
kind: "rolling_dispatch_requeue_quota_unclassified",
|
|
670
|
+
packet_id: packet.id,
|
|
671
|
+
pool_id: providerSlot.poolId,
|
|
672
|
+
}) + "\n");
|
|
673
|
+
}
|
|
674
|
+
catch {
|
|
675
|
+
// Observability must never abort a run.
|
|
676
|
+
}
|
|
677
|
+
return;
|
|
678
|
+
}
|
|
528
679
|
// Reactive cost verification (arbitrage tier): a pool DECLARED free
|
|
529
680
|
// (`declaredCostPerMtok === 0`) that reports a positive cost on a successful
|
|
530
681
|
// completion has a falsified free-first claim — demote it (spill to fallback via
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rollingDispatch.js","sourceRoot":"","sources":["../../../src/shared/dispatch/rollingDispatch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rollingDispatch.js","sourceRoot":"","sources":["../../../src/shared/dispatch/rollingDispatch.ts"],"names":[],"mappings":"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"}
|
|
@@ -92,6 +92,29 @@ export interface UnifiedRollingConfig<TItem, TPayload> {
|
|
|
92
92
|
observedCostUsd: number;
|
|
93
93
|
declaredCostPerMtok: number;
|
|
94
94
|
}) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Credit exhaustion (no-reset-timer degrade, distinct from a rate limit):
|
|
97
|
+
* invoked once per pool the first time a `credit_exhausted` result lands. The
|
|
98
|
+
* engine has already permanently excluded the pool from this run by the time
|
|
99
|
+
* this fires. Forwarded to the engine; the consumer wires it to friction
|
|
100
|
+
* emission. Omit to leave the exclusion silent.
|
|
101
|
+
*/
|
|
102
|
+
onCreditExhausted?: (info: {
|
|
103
|
+
poolId: string;
|
|
104
|
+
rawMatch: string | null;
|
|
105
|
+
}) => void;
|
|
106
|
+
/**
|
|
107
|
+
* Quota-unclassified harvest (Slice A2b, TIER 2): invoked once per pool the
|
|
108
|
+
* first time a `quota_unclassified` result lands (broad quota-suspicious
|
|
109
|
+
* pre-filter matched, but neither precise class did). The engine has already
|
|
110
|
+
* degraded conservatively (re-queued, reversible cooldown, pool NEVER added to
|
|
111
|
+
* the exclusion set). Forwarded to the engine; the consumer wires it to
|
|
112
|
+
* friction emission carrying the verbatim text. Omit to leave it silent.
|
|
113
|
+
*/
|
|
114
|
+
onQuotaUnclassified?: (info: {
|
|
115
|
+
poolId: string;
|
|
116
|
+
text: string;
|
|
117
|
+
}) => void;
|
|
95
118
|
/** Engine escalation hooks (host-session rate-limit accrual + strand-not-requeue read). */
|
|
96
119
|
recordRateLimit?: (packet: RollingDispatchPacket<TPayload>, result: RollingDispatchResult<TPayload>) => void;
|
|
97
120
|
isPacketEscalated?: (packetId: string) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unifiedRolling.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/unifiedRolling.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"unifiedRolling.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/unifiedRolling.ts"],"names":[],"mappings":"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"}
|
|
@@ -147,6 +147,8 @@ export async function driveRolling(config) {
|
|
|
147
147
|
? { resolveOutputReservation: config.resolveOutputReservation }
|
|
148
148
|
: {}),
|
|
149
149
|
...(config.onCostDrift ? { onCostDrift: config.onCostDrift } : {}),
|
|
150
|
+
...(config.onCreditExhausted ? { onCreditExhausted: config.onCreditExhausted } : {}),
|
|
151
|
+
...(config.onQuotaUnclassified ? { onQuotaUnclassified: config.onQuotaUnclassified } : {}),
|
|
150
152
|
costDemotedPoolIds,
|
|
151
153
|
onResult: (result) => {
|
|
152
154
|
out.allResults.push(result);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unifiedRolling.js","sourceRoot":"","sources":["../../../src/shared/dispatch/unifiedRolling.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"unifiedRolling.js","sourceRoot":"","sources":["../../../src/shared/dispatch/unifiedRolling.ts"],"names":[],"mappings":"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"}
|