audit-tools 0.33.3 → 0.33.6
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/args.d.ts +1 -1
- package/dist/audit/cli/args.d.ts.map +1 -1
- package/dist/audit/cli/args.js +1 -4
- package/dist/audit/cli/args.js.map +1 -1
- package/dist/audit/cli/dispatch/hostFanoutGate.d.ts +7 -0
- package/dist/audit/cli/dispatch/hostFanoutGate.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/hostFanoutGate.js +18 -4
- package/dist/audit/cli/dispatch/hostFanoutGate.js.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.d.ts +12 -0
- package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
- package/dist/audit/cli/dispatch/quotaPool.js +59 -31
- package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
- package/dist/audit/cli/dispatch/types.d.ts +7 -0
- package/dist/audit/cli/dispatch/types.d.ts.map +1 -1
- package/dist/audit/cli/dispatch.d.ts +19 -0
- package/dist/audit/cli/dispatch.d.ts.map +1 -1
- package/dist/audit/cli/dispatch.js +46 -8
- package/dist/audit/cli/dispatch.js.map +1 -1
- package/dist/audit/cli/hybridDispatch.d.ts +16 -3
- package/dist/audit/cli/hybridDispatch.d.ts.map +1 -1
- package/dist/audit/cli/hybridDispatch.js +16 -23
- package/dist/audit/cli/hybridDispatch.js.map +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts +1 -1
- package/dist/audit/cli/nextStepCommand.d.ts.map +1 -1
- package/dist/audit/cli/nextStepCommand.js +32 -18
- package/dist/audit/cli/nextStepCommand.js.map +1 -1
- package/dist/audit/cli/nextStepHelpers.d.ts.map +1 -1
- package/dist/audit/cli/nextStepHelpers.js +74 -51
- package/dist/audit/cli/nextStepHelpers.js.map +1 -1
- package/dist/audit/cli/reviewRun.d.ts +1 -0
- package/dist/audit/cli/reviewRun.d.ts.map +1 -1
- package/dist/audit/cli/reviewRun.js +5 -1
- package/dist/audit/cli/reviewRun.js.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.d.ts +12 -30
- package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
- package/dist/audit/cli/rollingAuditDispatch.js +11 -60
- package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
- package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
- package/dist/audit/cli/semanticReviewStep.js +30 -7
- package/dist/audit/cli/semanticReviewStep.js.map +1 -1
- package/dist/audit/quota/index.d.ts +2 -668
- package/dist/audit/quota/index.d.ts.map +1 -1
- package/dist/audit/quota/index.js +5 -30
- package/dist/audit/quota/index.js.map +1 -1
- package/dist/remediate/steps/dispatch/marshal.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/marshal.js +8 -1
- package/dist/remediate/steps/dispatch/marshal.js.map +1 -1
- package/dist/remediate/steps/dispatch/waveScheduling.d.ts +9 -2
- package/dist/remediate/steps/dispatch/waveScheduling.d.ts.map +1 -1
- package/dist/remediate/steps/dispatch/waveScheduling.js +48 -42
- package/dist/remediate/steps/dispatch/waveScheduling.js.map +1 -1
- package/dist/remediate/steps/nextStep.d.ts +79 -65
- package/dist/remediate/steps/nextStep.d.ts.map +1 -1
- package/dist/remediate/steps/nextStep.js +379 -380
- package/dist/remediate/steps/nextStep.js.map +1 -1
- package/dist/remediate/steps/types.d.ts +7 -27
- package/dist/remediate/steps/types.d.ts.map +1 -1
- package/dist/remediate/steps/types.js +0 -1
- package/dist/remediate/steps/types.js.map +1 -1
- package/dist/shared/dispatch/admissionLoop.d.ts +66 -8
- package/dist/shared/dispatch/admissionLoop.d.ts.map +1 -1
- package/dist/shared/dispatch/admissionLoop.js +168 -3
- package/dist/shared/dispatch/admissionLoop.js.map +1 -1
- package/dist/shared/dispatch/dispatchQuotaContract.d.ts +720 -0
- package/dist/shared/dispatch/dispatchQuotaContract.d.ts.map +1 -0
- package/dist/shared/dispatch/dispatchQuotaContract.js +76 -0
- package/dist/shared/dispatch/dispatchQuotaContract.js.map +1 -0
- package/dist/shared/dispatch/hostDispatchWall.d.ts +39 -0
- package/dist/shared/dispatch/hostDispatchWall.d.ts.map +1 -1
- package/dist/shared/dispatch/hostDispatchWall.js +22 -1
- package/dist/shared/dispatch/hostDispatchWall.js.map +1 -1
- package/dist/shared/dispatch/rollingDispatch.d.ts +18 -1
- package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
- package/dist/shared/dispatch/rollingDispatch.js +35 -9
- package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
- package/dist/shared/dispatch/settledPools.d.ts +32 -0
- package/dist/shared/dispatch/settledPools.d.ts.map +1 -1
- package/dist/shared/dispatch/settledPools.js +37 -0
- package/dist/shared/dispatch/settledPools.js.map +1 -1
- package/dist/shared/index.d.ts +9 -6
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +7 -5
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/providers/inProcessWorkers.d.ts +42 -0
- package/dist/shared/providers/inProcessWorkers.d.ts.map +1 -0
- package/dist/shared/providers/inProcessWorkers.js +64 -0
- package/dist/shared/providers/inProcessWorkers.js.map +1 -0
- package/dist/shared/providers/providerPathGuard.d.ts +33 -4
- package/dist/shared/providers/providerPathGuard.d.ts.map +1 -1
- package/dist/shared/providers/providerPathGuard.js +33 -4
- package/dist/shared/providers/providerPathGuard.js.map +1 -1
- package/dist/shared/providers/proxyCatalog.d.ts.map +1 -1
- package/dist/shared/providers/proxyCatalog.js +21 -4
- package/dist/shared/providers/proxyCatalog.js.map +1 -1
- package/dist/shared/quota/apiPool.d.ts +94 -44
- package/dist/shared/quota/apiPool.d.ts.map +1 -1
- package/dist/shared/quota/apiPool.js +173 -75
- package/dist/shared/quota/apiPool.js.map +1 -1
- package/dist/shared/quota/capacity.d.ts +8 -1
- package/dist/shared/quota/capacity.d.ts.map +1 -1
- package/dist/shared/quota/capacity.js +2 -1
- package/dist/shared/quota/capacity.js.map +1 -1
- package/dist/shared/types/auditorDescriptor.d.ts +0 -8
- package/dist/shared/types/auditorDescriptor.d.ts.map +1 -1
- package/dist/shared/types/auditorDescriptor.js.map +1 -1
- package/dist/shared/validation/sessionConfig.d.ts.map +1 -1
- package/dist/shared/validation/sessionConfig.js +10 -0
- package/dist/shared/validation/sessionConfig.js.map +1 -1
- package/opencode.json +2 -2
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import type { ReservationLedger } from "../quota/reservationLedger.js";
|
|
3
3
|
import type { DispatchCapacityPoolSummary } from "../quota/capacity.js";
|
|
4
|
+
import type { DispatchModelTier } from "../types/stepContract.js";
|
|
4
5
|
/** One packet the admission loop may grant this pass. */
|
|
5
6
|
export interface AdmissionCandidate {
|
|
6
7
|
id: string;
|
|
@@ -8,6 +9,15 @@ export interface AdmissionCandidate {
|
|
|
8
9
|
cost: number;
|
|
9
10
|
/** Complexity in [0, 1] — the default capability gate's routing signal. */
|
|
10
11
|
complexity: number;
|
|
12
|
+
/**
|
|
13
|
+
* The packet's minimum-capability floor (unified-routing step C): its dispatch
|
|
14
|
+
* tier (`resolveDispatchTier` — risk/complexity-derived). A pool is eligible only
|
|
15
|
+
* if its RELATIVE capability among the currently-available pools clears this
|
|
16
|
+
* floor ({@link buildCapabilityFloorCapable}); a hard `deep` packet is never
|
|
17
|
+
* routed to a bottom-band model just because it is free, idle, and fits context.
|
|
18
|
+
* Absent ⇒ no floor (small), preserving legacy callers.
|
|
19
|
+
*/
|
|
20
|
+
requiredTier?: DispatchModelTier;
|
|
11
21
|
}
|
|
12
22
|
/** One pool a packet may be routed to. */
|
|
13
23
|
export interface AdmissionPool {
|
|
@@ -119,13 +129,13 @@ export declare const AdmissionExplainSchema: z.ZodObject<{
|
|
|
119
129
|
pool_id: z.ZodNullable<z.ZodString>;
|
|
120
130
|
resource_key: z.ZodNullable<z.ZodString>;
|
|
121
131
|
admitted: z.ZodBoolean;
|
|
122
|
-
reason: z.ZodEnum<["admitted", "no_capable_pool", "budget_exhausted", "cap_reached"]>;
|
|
132
|
+
reason: z.ZodEnum<["admitted", "no_capable_pool", "budget_exhausted", "cap_reached", "packet_oversized"]>;
|
|
123
133
|
/** Present on an admit attempt against a real pool (budget headroom before it). */
|
|
124
134
|
headroom_before: z.ZodOptional<z.ZodNumber>;
|
|
125
135
|
outstanding_before: z.ZodOptional<z.ZodNumber>;
|
|
126
136
|
cost: z.ZodNumber;
|
|
127
137
|
}, "strict", z.ZodTypeAny, {
|
|
128
|
-
reason: "
|
|
138
|
+
reason: "budget_exhausted" | "cap_reached" | "no_capable_pool" | "admitted" | "packet_oversized";
|
|
129
139
|
pool_id: string | null;
|
|
130
140
|
cost: number;
|
|
131
141
|
admitted: boolean;
|
|
@@ -134,7 +144,7 @@ export declare const AdmissionExplainSchema: z.ZodObject<{
|
|
|
134
144
|
headroom_before?: number | undefined;
|
|
135
145
|
outstanding_before?: number | undefined;
|
|
136
146
|
}, {
|
|
137
|
-
reason: "
|
|
147
|
+
reason: "budget_exhausted" | "cap_reached" | "no_capable_pool" | "admitted" | "packet_oversized";
|
|
138
148
|
pool_id: string | null;
|
|
139
149
|
cost: number;
|
|
140
150
|
admitted: boolean;
|
|
@@ -180,13 +190,13 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
|
|
|
180
190
|
pool_id: z.ZodNullable<z.ZodString>;
|
|
181
191
|
resource_key: z.ZodNullable<z.ZodString>;
|
|
182
192
|
admitted: z.ZodBoolean;
|
|
183
|
-
reason: z.ZodEnum<["admitted", "no_capable_pool", "budget_exhausted", "cap_reached"]>;
|
|
193
|
+
reason: z.ZodEnum<["admitted", "no_capable_pool", "budget_exhausted", "cap_reached", "packet_oversized"]>;
|
|
184
194
|
/** Present on an admit attempt against a real pool (budget headroom before it). */
|
|
185
195
|
headroom_before: z.ZodOptional<z.ZodNumber>;
|
|
186
196
|
outstanding_before: z.ZodOptional<z.ZodNumber>;
|
|
187
197
|
cost: z.ZodNumber;
|
|
188
198
|
}, "strict", z.ZodTypeAny, {
|
|
189
|
-
reason: "
|
|
199
|
+
reason: "budget_exhausted" | "cap_reached" | "no_capable_pool" | "admitted" | "packet_oversized";
|
|
190
200
|
pool_id: string | null;
|
|
191
201
|
cost: number;
|
|
192
202
|
admitted: boolean;
|
|
@@ -195,7 +205,7 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
|
|
|
195
205
|
headroom_before?: number | undefined;
|
|
196
206
|
outstanding_before?: number | undefined;
|
|
197
207
|
}, {
|
|
198
|
-
reason: "
|
|
208
|
+
reason: "budget_exhausted" | "cap_reached" | "no_capable_pool" | "admitted" | "packet_oversized";
|
|
199
209
|
pool_id: string | null;
|
|
200
210
|
cost: number;
|
|
201
211
|
admitted: boolean;
|
|
@@ -215,7 +225,7 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
|
|
|
215
225
|
granted_packet_ids: string[];
|
|
216
226
|
declared_cap: number | null;
|
|
217
227
|
explains: {
|
|
218
|
-
reason: "
|
|
228
|
+
reason: "budget_exhausted" | "cap_reached" | "no_capable_pool" | "admitted" | "packet_oversized";
|
|
219
229
|
pool_id: string | null;
|
|
220
230
|
cost: number;
|
|
221
231
|
admitted: boolean;
|
|
@@ -235,7 +245,7 @@ export declare const DispatchAdmissionSchema: z.ZodObject<{
|
|
|
235
245
|
granted_packet_ids: string[];
|
|
236
246
|
declared_cap: number | null;
|
|
237
247
|
explains: {
|
|
238
|
-
reason: "
|
|
248
|
+
reason: "budget_exhausted" | "cap_reached" | "no_capable_pool" | "admitted" | "packet_oversized";
|
|
239
249
|
pool_id: string | null;
|
|
240
250
|
cost: number;
|
|
241
251
|
admitted: boolean;
|
|
@@ -282,6 +292,53 @@ export interface AdmitBatchInput {
|
|
|
282
292
|
*/
|
|
283
293
|
dispatchBias?: number;
|
|
284
294
|
}
|
|
295
|
+
/**
|
|
296
|
+
* Build the composed capability gate (unified-routing step C): size-fit AND a
|
|
297
|
+
* RELATIVE per-packet capability floor over the currently-available pool set.
|
|
298
|
+
*
|
|
299
|
+
* Relative, never absolute (the "never a named-model→tier map" invariant): pools
|
|
300
|
+
* with a known per-model `capabilityScore` (registry/leaderboard composite_rank,
|
|
301
|
+
* LOWER = better) are banded into terciles among the SCORED pools — band 0 = top
|
|
302
|
+
* third. A pool with no score but a NON-NEUTRAL tier ordinal maps ordinal→band
|
|
303
|
+
* (deep→0, small→2). A pool with neither signal (score null + neutral ordinal —
|
|
304
|
+
* e.g. a proxy pool the leaderboard didn't match) is UNKNOWN and **fails open**
|
|
305
|
+
* (owner decision 2026-07-17): it stays eligible for every floor, and `onFailOpen`
|
|
306
|
+
* records the low-confidence routing so the choice is observable — fail-closed
|
|
307
|
+
* would reproduce the host-only collapse whenever no pool carries capability data.
|
|
308
|
+
*
|
|
309
|
+
* Floor: `deep` ⇒ band 0 only; `standard` ⇒ bands 0–1; `small`/absent ⇒ all.
|
|
310
|
+
* Composed over the size-fit gate, so supplying this predicate never loses the
|
|
311
|
+
* context-window check. Proxy-agnostic by construction — it reads only the pool's
|
|
312
|
+
* own `capabilityScore`/`capabilityRank` fields, never a transport's catalog
|
|
313
|
+
* ([[litellm-replaces-repair-proxy]]).
|
|
314
|
+
*/
|
|
315
|
+
export declare function buildCapabilityFloorCapable(pools: readonly AdmissionPool[], onFailOpen?: (info: {
|
|
316
|
+
poolId: string;
|
|
317
|
+
packetId: string;
|
|
318
|
+
requiredTier: DispatchModelTier;
|
|
319
|
+
}) => void): (pool: AdmissionPool, packet: AdmissionCandidate) => boolean;
|
|
320
|
+
/**
|
|
321
|
+
* The in-process engine's draw over the ONE capability-floor implementation
|
|
322
|
+
* ({@link buildCapabilityFloorCapable}) — adapts the engine's `CapacityPool` shape
|
|
323
|
+
* (F4) via the same signals the admission summaries carry (`rank` → tier ordinal,
|
|
324
|
+
* `declaredCapabilityRank` → raw score), so the engine and the host path band
|
|
325
|
+
* pools identically and cannot drift. Size-fit stays the engine's own
|
|
326
|
+
* `doesNotFitContext` gate, so the stub's `capacityTokens` is +Infinity (inert
|
|
327
|
+
* here). Fail-open all the way down: an unknown pool id, like unknown capability,
|
|
328
|
+
* never blocks.
|
|
329
|
+
*/
|
|
330
|
+
export declare function buildCapacityPoolCapabilityFloor(pools: readonly {
|
|
331
|
+
id: string;
|
|
332
|
+
rank?: DispatchModelTier;
|
|
333
|
+
declaredCapabilityRank?: number | null;
|
|
334
|
+
}[], onFailOpen?: (info: {
|
|
335
|
+
poolId: string;
|
|
336
|
+
packetId: string;
|
|
337
|
+
requiredTier: DispatchModelTier;
|
|
338
|
+
}) => void): (poolId: string, packet: {
|
|
339
|
+
id: string;
|
|
340
|
+
requiredTier?: DispatchModelTier;
|
|
341
|
+
}) => boolean;
|
|
285
342
|
/**
|
|
286
343
|
* Admit as many packets as budget + declared caps allow this pass, routing each to
|
|
287
344
|
* the cheapest capable pool with headroom. Every admission RESERVES the packet's
|
|
@@ -310,6 +367,7 @@ export declare function computeDispatchAdmission(input: {
|
|
|
310
367
|
id: string;
|
|
311
368
|
inputTokens: number;
|
|
312
369
|
complexity: number;
|
|
370
|
+
requiredTier?: DispatchModelTier;
|
|
313
371
|
}[];
|
|
314
372
|
pools: AdmissionPool[];
|
|
315
373
|
/** Declared output cap for the packet envelope (cold-start; ratio refines later). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admissionLoop.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/admissionLoop.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"admissionLoop.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/admissionLoop.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,7 +72,13 @@ export function admissionPoolsFromSummaries(summaries, confirmedCostPositions) {
|
|
|
72
72
|
hostActiveSubagents: pool.host_concurrency_limit?.active_subagents,
|
|
73
73
|
sourceConcurrencyCap: pool.concurrency_cap,
|
|
74
74
|
}),
|
|
75
|
-
|
|
75
|
+
// ONE fit predicate on both dispatch paths (unified-routing step B): a source
|
|
76
|
+
// pool's own effective window (`context_cap_tokens`, non-null since step A)
|
|
77
|
+
// outranks the wave's resolved limits — previously the host-admission path gated
|
|
78
|
+
// every pool against the HOST's window, so a small-context source pool admitted
|
|
79
|
+
// packets it could never serve (413 instead of skip). Host pools carry no
|
|
80
|
+
// `context_cap_tokens` and fall through to their real resolved window.
|
|
81
|
+
capacityTokens: pool.context_cap_tokens ?? pool.resolved_limits.context_tokens,
|
|
76
82
|
calibrating: pool.calibrating === true,
|
|
77
83
|
}));
|
|
78
84
|
}
|
|
@@ -93,7 +99,7 @@ export const AdmissionExplainSchema = z
|
|
|
93
99
|
pool_id: z.string().nullable(),
|
|
94
100
|
resource_key: z.string().nullable(),
|
|
95
101
|
admitted: z.boolean(),
|
|
96
|
-
reason: z.enum(["admitted", "no_capable_pool", "budget_exhausted", "cap_reached"]),
|
|
102
|
+
reason: z.enum(["admitted", "no_capable_pool", "budget_exhausted", "cap_reached", "packet_oversized"]),
|
|
97
103
|
/** Present on an admit attempt against a real pool (budget headroom before it). */
|
|
98
104
|
headroom_before: z.number().optional(),
|
|
99
105
|
outstanding_before: z.number().optional(),
|
|
@@ -122,6 +128,116 @@ function defaultCapable(pool, packet) {
|
|
|
122
128
|
return true;
|
|
123
129
|
return pool.capacityTokens >= packet.cost;
|
|
124
130
|
}
|
|
131
|
+
/**
|
|
132
|
+
* Build the composed capability gate (unified-routing step C): size-fit AND a
|
|
133
|
+
* RELATIVE per-packet capability floor over the currently-available pool set.
|
|
134
|
+
*
|
|
135
|
+
* Relative, never absolute (the "never a named-model→tier map" invariant): pools
|
|
136
|
+
* with a known per-model `capabilityScore` (registry/leaderboard composite_rank,
|
|
137
|
+
* LOWER = better) are banded into terciles among the SCORED pools — band 0 = top
|
|
138
|
+
* third. A pool with no score but a NON-NEUTRAL tier ordinal maps ordinal→band
|
|
139
|
+
* (deep→0, small→2). A pool with neither signal (score null + neutral ordinal —
|
|
140
|
+
* e.g. a proxy pool the leaderboard didn't match) is UNKNOWN and **fails open**
|
|
141
|
+
* (owner decision 2026-07-17): it stays eligible for every floor, and `onFailOpen`
|
|
142
|
+
* records the low-confidence routing so the choice is observable — fail-closed
|
|
143
|
+
* would reproduce the host-only collapse whenever no pool carries capability data.
|
|
144
|
+
*
|
|
145
|
+
* Floor: `deep` ⇒ band 0 only; `standard` ⇒ bands 0–1; `small`/absent ⇒ all.
|
|
146
|
+
* Composed over the size-fit gate, so supplying this predicate never loses the
|
|
147
|
+
* context-window check. Proxy-agnostic by construction — it reads only the pool's
|
|
148
|
+
* own `capabilityScore`/`capabilityRank` fields, never a transport's catalog
|
|
149
|
+
* ([[litellm-replaces-repair-proxy]]).
|
|
150
|
+
*/
|
|
151
|
+
export function buildCapabilityFloorCapable(pools, onFailOpen) {
|
|
152
|
+
// Tercile-band the scored pools once per batch (deterministic: score asc, poolId tiebreak).
|
|
153
|
+
const scored = pools
|
|
154
|
+
.filter((p) => typeof p.capabilityScore === "number" && Number.isFinite(p.capabilityScore))
|
|
155
|
+
.sort((a, b) => a.capabilityScore - b.capabilityScore ||
|
|
156
|
+
a.poolId.localeCompare(b.poolId));
|
|
157
|
+
const scoreBand = new Map();
|
|
158
|
+
scored.forEach((p, i) => {
|
|
159
|
+
scoreBand.set(p.poolId, Math.floor((3 * i) / scored.length));
|
|
160
|
+
});
|
|
161
|
+
const NEUTRAL_ORDINAL = tierRank(undefined); // the fallback tier — carries no information
|
|
162
|
+
const bandOf = (pool) => {
|
|
163
|
+
const fromScore = scoreBand.get(pool.poolId);
|
|
164
|
+
if (fromScore !== undefined)
|
|
165
|
+
return fromScore;
|
|
166
|
+
// No score: a non-neutral ordinal is a real declared/roster rank → coarse band.
|
|
167
|
+
// (A genuinely-DECLARED `standard` rank is indistinguishable from the fallback
|
|
168
|
+
// here — both are the neutral ordinal — so declared-standard pools are treated
|
|
169
|
+
// as unknown/fail-open. Deliberate: representing "declared vs defaulted" would
|
|
170
|
+
// need rank provenance on the summary; fail-open is the safe direction.)
|
|
171
|
+
if (pool.capabilityRank !== NEUTRAL_ORDINAL)
|
|
172
|
+
return 2 - Math.min(pool.capabilityRank, 2);
|
|
173
|
+
return null; // unknown — fail open
|
|
174
|
+
};
|
|
175
|
+
// The batch's BEST available band — the floor is RELATIVE all the way down
|
|
176
|
+
// (C-review F3): `deep` means "the most capable band available", not "band 0 or
|
|
177
|
+
// nothing". Without this, an all-small ordinal roster gives every deep packet an
|
|
178
|
+
// empty candidate set → a `no_capable_pool` wall that step E rightly calls
|
|
179
|
+
// structural/permanent — a livelock the floor itself manufactured. The scored
|
|
180
|
+
// path already behaves this way (n=1 scored pool = band 0 by construction).
|
|
181
|
+
const bands = pools.map(bandOf).filter((b) => b !== null);
|
|
182
|
+
const anyBanded = bands.length > 0;
|
|
183
|
+
const bestAvailableBand = anyBanded ? Math.min(...bands) : 0;
|
|
184
|
+
const FLOOR_MAX_BAND = { deep: 0, standard: 1, small: 2 };
|
|
185
|
+
return (pool, packet) => {
|
|
186
|
+
if (!defaultCapable(pool, packet))
|
|
187
|
+
return false;
|
|
188
|
+
const tier = packet.requiredTier;
|
|
189
|
+
if (!tier || tier === "small")
|
|
190
|
+
return true;
|
|
191
|
+
const band = bandOf(pool);
|
|
192
|
+
if (band === null) {
|
|
193
|
+
// Unknown capability: fail-open, never a block. Record it ONLY when the batch
|
|
194
|
+
// has at least one banded pool (C-review F2) — with zero capability data the
|
|
195
|
+
// floor is globally inert and there is no routing choice to flag; recording
|
|
196
|
+
// would spam a warning per packet on every ordinary single-host wave.
|
|
197
|
+
if (anyBanded) {
|
|
198
|
+
onFailOpen?.({ poolId: pool.poolId, packetId: packet.id, requiredTier: tier });
|
|
199
|
+
}
|
|
200
|
+
return true;
|
|
201
|
+
}
|
|
202
|
+
return band <= Math.max(FLOOR_MAX_BAND[tier], bestAvailableBand);
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* The in-process engine's draw over the ONE capability-floor implementation
|
|
207
|
+
* ({@link buildCapabilityFloorCapable}) — adapts the engine's `CapacityPool` shape
|
|
208
|
+
* (F4) via the same signals the admission summaries carry (`rank` → tier ordinal,
|
|
209
|
+
* `declaredCapabilityRank` → raw score), so the engine and the host path band
|
|
210
|
+
* pools identically and cannot drift. Size-fit stays the engine's own
|
|
211
|
+
* `doesNotFitContext` gate, so the stub's `capacityTokens` is +Infinity (inert
|
|
212
|
+
* here). Fail-open all the way down: an unknown pool id, like unknown capability,
|
|
213
|
+
* never blocks.
|
|
214
|
+
*/
|
|
215
|
+
export function buildCapacityPoolCapabilityFloor(pools, onFailOpen) {
|
|
216
|
+
const stubs = pools.map((p) => ({
|
|
217
|
+
poolId: p.id,
|
|
218
|
+
resourceKey: p.id,
|
|
219
|
+
budget: Number.POSITIVE_INFINITY,
|
|
220
|
+
declaredCap: null,
|
|
221
|
+
costRank: 0,
|
|
222
|
+
capabilityRank: tierRank(p.rank),
|
|
223
|
+
capabilityScore: p.declaredCapabilityRank ?? null,
|
|
224
|
+
throughputConcurrency: Number.POSITIVE_INFINITY,
|
|
225
|
+
capacityTokens: Number.POSITIVE_INFINITY,
|
|
226
|
+
}));
|
|
227
|
+
const byId = new Map(stubs.map((s) => [s.poolId, s]));
|
|
228
|
+
const floor = buildCapabilityFloorCapable(stubs, onFailOpen);
|
|
229
|
+
return (poolId, packet) => {
|
|
230
|
+
const stub = byId.get(poolId);
|
|
231
|
+
if (!stub)
|
|
232
|
+
return true; // pool outside the banded set — no signal, fail open
|
|
233
|
+
return floor(stub, {
|
|
234
|
+
id: packet.id,
|
|
235
|
+
cost: 0,
|
|
236
|
+
complexity: 0,
|
|
237
|
+
...(packet.requiredTier ? { requiredTier: packet.requiredTier } : {}),
|
|
238
|
+
});
|
|
239
|
+
};
|
|
240
|
+
}
|
|
125
241
|
/**
|
|
126
242
|
* Finer capability tiebreak on the raw registry score (LOWER = more capable), consulted
|
|
127
243
|
* only after the coarse tier ordinal has tied. A present score sorts before an absent
|
|
@@ -325,10 +441,59 @@ export async function computeDispatchAdmission(input) {
|
|
|
325
441
|
id: p.id,
|
|
326
442
|
cost: estimatePacketCost({ inputEstimate: p.inputTokens, declaredOutputCap: input.outputCap }).cost,
|
|
327
443
|
complexity: p.complexity,
|
|
444
|
+
...(p.requiredTier ? { requiredTier: p.requiredTier } : {}),
|
|
328
445
|
}));
|
|
329
446
|
const declaredCap = input.pools.reduce((min, p) => (p.declaredCap == null ? min : min == null ? p.declaredCap : Math.min(min, p.declaredCap)), null);
|
|
330
447
|
if (!input.grantLeases) {
|
|
331
|
-
|
|
448
|
+
// Plan-only path (in-process engine — it admits + leases per packet itself).
|
|
449
|
+
// No leases, but the capability FLOOR still applies (F4): the contract must not
|
|
450
|
+
// display a grant the engine's floor will refuse to dispatch. Floor ONLY — size
|
|
451
|
+
// fit stays the engine's own `doesNotFitContext` gate (declared per-pool caps),
|
|
452
|
+
// so a size refusal is never mislabeled `no_capable_pool` here. Residual (named,
|
|
453
|
+
// display-only): the engine can still size-refuse a displayed grant onto a
|
|
454
|
+
// capped pool; the packet remains dispatchable to uncapped pools.
|
|
455
|
+
// An EMPTY pool set means no capacity summary reached admission, not "nothing
|
|
456
|
+
// is capable" — grant all, as before the floor existed.
|
|
457
|
+
if (input.pools.length === 0) {
|
|
458
|
+
return {
|
|
459
|
+
granted_packet_ids: candidates.map((c) => c.id),
|
|
460
|
+
declared_cap: declaredCap,
|
|
461
|
+
leases: [],
|
|
462
|
+
explains: [],
|
|
463
|
+
};
|
|
464
|
+
}
|
|
465
|
+
// Same-pool conjunction of the two per-packet engine axes: capability floor
|
|
466
|
+
// (banded over size-neutralized stubs, mirroring
|
|
467
|
+
// `buildCapacityPoolCapabilityFloor`) ∧ envelope fit (`defaultCapable`). Built
|
|
468
|
+
// here from the pools — never `input.capable`, whose composed predicate can't
|
|
469
|
+
// separate the axes. The RELATIVE floor never refuses every pool (fail-open +
|
|
470
|
+
// the best band is always eligible), so a total refusal is always a size fact:
|
|
471
|
+
// labeled `packet_oversized`, never `no_capable_pool` (which would misread a
|
|
472
|
+
// sizing problem as a capability one — adversarial-review F1).
|
|
473
|
+
const sizeNeutralPools = input.pools.map((p) => ({
|
|
474
|
+
...p,
|
|
475
|
+
capacityTokens: Number.POSITIVE_INFINITY,
|
|
476
|
+
}));
|
|
477
|
+
const floorOnly = buildCapabilityFloorCapable(sizeNeutralPools);
|
|
478
|
+
const grantedIds = [];
|
|
479
|
+
const explains = [];
|
|
480
|
+
for (const candidate of candidates) {
|
|
481
|
+
const granted = input.pools.some((pool, i) => floorOnly(sizeNeutralPools[i], candidate) && defaultCapable(pool, candidate));
|
|
482
|
+
if (granted) {
|
|
483
|
+
grantedIds.push(candidate.id);
|
|
484
|
+
}
|
|
485
|
+
else {
|
|
486
|
+
explains.push({
|
|
487
|
+
packet_id: candidate.id,
|
|
488
|
+
pool_id: null,
|
|
489
|
+
resource_key: null,
|
|
490
|
+
admitted: false,
|
|
491
|
+
reason: "packet_oversized",
|
|
492
|
+
cost: candidate.cost,
|
|
493
|
+
});
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
return { granted_packet_ids: grantedIds, declared_cap: declaredCap, leases: [], explains };
|
|
332
497
|
}
|
|
333
498
|
const admit = await admitBatch({
|
|
334
499
|
packets: candidates,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admissionLoop.js","sourceRoot":"","sources":["../../../src/shared/dispatch/admissionLoop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"admissionLoop.js","sourceRoot":"","sources":["../../../src/shared/dispatch/admissionLoop.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,mFAAmF;AACnF,EAAE;AACF,iFAAiF;AACjF,mFAAmF;AACnF,oFAAoF;AACpF,iFAAiF;AACjF,yEAAyE;AACzE,2EAA2E;AAC3E,oFAAoF;AACpF,mFAAmF;AACnF,EAAE;AACF,6EAA6E;AAC7E,kFAAkF;AAClF,oFAAoF;AACpF,iFAAiF;AACjF,gFAAgF;AAChF,mCAAmC;AAEnC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAkExE;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,2BAA2B,CAAC,MAI3C;IACC,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,mBAAmB,IAAI,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,iBAAiB,CAAC;AACjE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,2BAA2B,CACzC,SAAiD,EACjD,sBAAmD;IAEnD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9B,MAAM,EAAE,IAAI,CAAC,OAAO;QACpB,WAAW,EAAE,IAAI,CAAC,OAAO;QACzB,MAAM,EAAE,IAAI,CAAC,sBAAsB,IAAI,MAAM,CAAC,iBAAiB;QAC/D,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,gBAAgB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI;QAC1F,QAAQ,EAAE,cAAc,CAAC;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,mBAAmB,EAAE,IAAI,CAAC,sBAAsB;YAChD,iBAAiB,EAAE,uBAAuB,CAAC,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAAC;SAC/E,CAAC;QACF,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QACnC,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,IAAI;QAC7C,qBAAqB,EAAE,2BAA2B,CAAC;YACjD,kBAAkB,EAAE,IAAI,CAAC,oBAAoB;YAC7C,mBAAmB,EAAE,IAAI,CAAC,sBAAsB,EAAE,gBAAgB;YAClE,oBAAoB,EAAE,IAAI,CAAC,eAAe;SAC3C,CAAC;QACF,8EAA8E;QAC9E,4EAA4E;QAC5E,iFAAiF;QACjF,gFAAgF;QAChF,0EAA0E;QAC1E,uEAAuE;QACvE,cAAc,EAAE,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,eAAe,CAAC,cAAc;QAC9E,WAAW,EAAE,IAAI,CAAC,WAAW,KAAK,IAAI;KACvC,CAAC,CAAC,CAAC;AACN,CAAC;AAWD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;IACxB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,+EAA+E;AAC/E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,+DAA+D;IAC/D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,aAAa,EAAE,kBAAkB,CAAC,CAAC;IACtG,mFAAmF;IACnF,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACtC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC;KACD,MAAM,EAAE,CAAC;AAGZ;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC;KACrC,MAAM,CAAC;IACN,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACvC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAChD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;IACrC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC;CAC1C,CAAC;KACD,MAAM,EAAE,CAAC;AAyCZ,oFAAoF;AACpF,SAAS,cAAc,CAAC,IAAmB,EAAE,MAA0B;IACrE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnF,OAAO,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAA+B,EAC/B,UAAkG;IAElG,4FAA4F;IAC5F,MAAM,MAAM,GAAG,KAAK;SACjB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;SAC1F,IAAI,CACH,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACN,CAAC,CAAC,eAA0B,GAAI,CAAC,CAAC,eAA0B;QAC7D,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CACnC,CAAC;IACJ,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,6CAA6C;IAC1F,MAAM,MAAM,GAAG,CAAC,IAAmB,EAAiB,EAAE;QACpD,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAC9C,gFAAgF;QAChF,+EAA+E;QAC/E,+EAA+E;QAC/E,+EAA+E;QAC/E,yEAAyE;QACzE,IAAI,IAAI,CAAC,cAAc,KAAK,eAAe;YAAE,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACzF,OAAO,IAAI,CAAC,CAAC,sBAAsB;IACrC,CAAC,CAAC;IACF,2EAA2E;IAC3E,gFAAgF;IAChF,iFAAiF;IACjF,2EAA2E;IAC3E,8EAA8E;IAC9E,4EAA4E;IAC5E,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACnC,MAAM,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAsC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAC7F,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QACtB,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC;QACjC,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,8EAA8E;YAC9E,6EAA6E;YAC7E,4EAA4E;YAC5E,sEAAsE;YACtE,IAAI,SAAS,EAAE,CAAC;gBACd,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC,CAAC;IACnE,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gCAAgC,CAC9C,KAIG,EACH,UAAkG;IAElG,MAAM,KAAK,GAAoB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,MAAM,EAAE,CAAC,CAAC,EAAE;QACZ,WAAW,EAAE,CAAC,CAAC,EAAE;QACjB,MAAM,EAAE,MAAM,CAAC,iBAAiB;QAChC,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,CAAC;QACX,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAChC,eAAe,EAAE,CAAC,CAAC,sBAAsB,IAAI,IAAI;QACjD,qBAAqB,EAAE,MAAM,CAAC,iBAAiB;QAC/C,cAAc,EAAE,MAAM,CAAC,iBAAiB;KACzC,CAAC,CAAC,CAAC;IACJ,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,2BAA2B,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC7D,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,CAAC,qDAAqD;QAC7E,OAAO,KAAK,CAAC,IAAI,EAAE;YACjB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,CAAC;YACP,UAAU,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtE,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,CAAgB,EAAE,CAAgB;IAC5D,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;IAClH,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;IAClH,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI;QAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,oCAAoC;IACpF,IAAI,EAAE,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,wBAAwB;IACpD,IAAI,EAAE,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kGAAkG;AAClG,SAAS,YAAY,CAAC,CAAgB,EAAE,CAAgB;IACtD,OAAO,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,IAAI,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACpG,CAAC;AAED,iFAAiF;AACjF,SAAS,SAAS,CAAC,CAAgB,EAAE,CAAgB;IACnD,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,uFAAuF;AACvF,SAAS,aAAa,CAAC,CAAgB,EAAE,CAAgB;IACvD,MAAM,EAAE,GAAG,CAAC,CAAC,qBAAqB,CAAC;IACnC,MAAM,EAAE,GAAG,CAAC,CAAC,qBAAqB,CAAC;IACnC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACd,IAAI,EAAE,KAAK,MAAM,CAAC,iBAAiB;YAAE,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,EAAE,KAAK,MAAM,CAAC,iBAAiB;YAAE,OAAO,CAAC,CAAC;QAC9C,OAAO,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,IAAI,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC5F,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,KAAsB,EAAE,IAAY;IAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9B,IAAI,IAAI,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,OAAO;SACJ,KAAK,EAAE;SACP,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACrD,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,OAAO;SACJ,KAAK,EAAE;SACP,IAAI,CAAC,aAAa,CAAC;SACnB,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,CAAC,IAAmB,EAAU,EAAE,CAC9C,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACjG,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAClH,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,KAAsB;IACrD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,cAAc,CAAC;IAChD,qFAAqF;IACrF,gFAAgF;IAChF,wFAAwF;IACxF,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAuB,EAAE,CAAC;IACxC,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,gFAAgF;IAChF,iFAAiF;IACjF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC/C,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;IAC5E,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,iFAAiF;QACjF,mFAAmF;QACnF,uEAAuE;QACvE,MAAM,UAAU,GAAG,eAAe,CAChC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EACnD,IAAI,CACL,CAAC;QAEF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC;gBACZ,SAAS,EAAE,MAAM,CAAC,EAAE;gBACpB,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,IAAI;gBAClB,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,iBAAiB;gBACzB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACxB,SAAS;QACX,CAAC;QAED,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,UAAU,GAA+B,kBAAkB,CAAC;QAChE,IAAI,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;QAC9B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,gFAAgF;YAChF,6EAA6E;YAC7E,8EAA8E;YAC9E,8EAA8E;YAC9E,uEAAuE;YACvE,+EAA+E;YAC/E,gFAAgF;YAChF,kFAAkF;YAClF,8EAA8E;YAC9E,gFAAgF;YAChF,mFAAmF;YACnF,oCAAoC;YACpC,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW;gBACrC,CAAC,CAAC,6BAA6B,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,MAAM,EAAE,sBAAsB,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;gBACtG,CAAC,CAAC,IAAI,CAAC;YACT,MAAM,YAAY,GAChB,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;YAC3G,IAAI,YAAY,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;gBAChF,UAAU,GAAG,aAAa,CAAC;gBAC3B,QAAQ,GAAG,IAAI,CAAC;gBAChB,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;gBACxC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtE,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC;oBACX,SAAS,EAAE,MAAM,CAAC,EAAE;oBACpB,OAAO,EAAE,IAAI,CAAC,MAAM;oBACpB,YAAY,EAAE,IAAI,CAAC,WAAW;oBAC9B,QAAQ,EAAE,QAAQ,CAAC,OAAO;oBAC1B,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAC,CAAC;gBACH,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtE,QAAQ,CAAC,IAAI,CAAC;oBACZ,SAAS,EAAE,MAAM,CAAC,EAAE;oBACpB,OAAO,EAAE,IAAI,CAAC,MAAM;oBACpB,YAAY,EAAE,IAAI,CAAC,WAAW;oBAC9B,QAAQ,EAAE,IAAI;oBACd,MAAM,EAAE,UAAU;oBAClB,eAAe,EAAE,QAAQ,CAAC,cAAc;oBACxC,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB;oBAC9C,IAAI,EAAE,MAAM,CAAC,IAAI;iBAClB,CAAC,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM;YACR,CAAC;YACD,UAAU,GAAG,kBAAkB,CAAC;YAChC,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC;gBACZ,SAAS,EAAE,MAAM,CAAC,EAAE;gBACpB,OAAO,EAAE,QAAQ,CAAC,MAAM;gBACxB,YAAY,EAAE,QAAQ,CAAC,WAAW;gBAClC,QAAQ,EAAE,KAAK;gBACf,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACxC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,KAU9C;IACC,MAAM,UAAU,GAAyB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,IAAI,EAAE,kBAAkB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,WAAW,EAAE,iBAAiB,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI;QACnG,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5D,CAAC,CAAC,CAAC;IACJ,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CACpC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,EACtG,IAAI,CACL,CAAC;IACF,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACvB,6EAA6E;QAC7E,gFAAgF;QAChF,gFAAgF;QAChF,gFAAgF;QAChF,iFAAiF;QACjF,2EAA2E;QAC3E,kEAAkE;QAClE,8EAA8E;QAC9E,wDAAwD;QACxD,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;gBACL,kBAAkB,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/C,YAAY,EAAE,WAAW;gBACzB,MAAM,EAAE,EAAE;gBACV,QAAQ,EAAE,EAAE;aACb,CAAC;QACJ,CAAC;QACD,4EAA4E;QAC5E,iDAAiD;QACjD,+EAA+E;QAC/E,8EAA8E;QAC9E,8EAA8E;QAC9E,+EAA+E;QAC/E,6EAA6E;QAC7E,+DAA+D;QAC/D,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/C,GAAG,CAAC;YACJ,cAAc,EAAE,MAAM,CAAC,iBAAiB;SACzC,CAAC,CAAC,CAAC;QACJ,MAAM,SAAS,GAAG,2BAA2B,CAAC,gBAAgB,CAAC,CAAC;QAChE,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAC9B,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAE,EAAE,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAC3F,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACZ,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CAAC;oBACZ,SAAS,EAAE,SAAS,CAAC,EAAE;oBACvB,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,IAAI;oBAClB,QAAQ,EAAE,KAAK;oBACf,MAAM,EAAE,kBAAkB;oBAC1B,IAAI,EAAE,SAAS,CAAC,IAAI;iBACrB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;IAC7F,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC;QAC7B,OAAO,EAAE,UAAU;QACnB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,sEAAsE;QACtE,uEAAuE;QACvE,kEAAkE;QAClE,yEAAyE;QACzE,UAAU,EAAE,qBAAqB;QACjC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAC,CAAC;IACH,OAAO;QACL,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACzD,YAAY,EAAE,WAAW;QACzB,MAAM,EAAE,KAAK,CAAC,OAAO;QACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC;AACJ,CAAC"}
|