audit-tools 0.32.8 → 0.32.9

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 (99) hide show
  1. package/dist/audit/cli/dispatch/quotaPool.d.ts +20 -2
  2. package/dist/audit/cli/dispatch/quotaPool.d.ts.map +1 -1
  3. package/dist/audit/cli/dispatch/quotaPool.js +38 -7
  4. package/dist/audit/cli/dispatch/quotaPool.js.map +1 -1
  5. package/dist/audit/cli/dispatch/tierRouting.d.ts +4 -1
  6. package/dist/audit/cli/dispatch/tierRouting.d.ts.map +1 -1
  7. package/dist/audit/cli/dispatch/tierRouting.js +7 -4
  8. package/dist/audit/cli/dispatch/tierRouting.js.map +1 -1
  9. package/dist/audit/cli/dispatch/types.d.ts +9 -4
  10. package/dist/audit/cli/dispatch/types.d.ts.map +1 -1
  11. package/dist/audit/cli/dispatch.d.ts +7 -0
  12. package/dist/audit/cli/dispatch.d.ts.map +1 -1
  13. package/dist/audit/cli/dispatch.js +24 -12
  14. package/dist/audit/cli/dispatch.js.map +1 -1
  15. package/dist/audit/cli/mergeAndIngestCommand.d.ts +0 -9
  16. package/dist/audit/cli/mergeAndIngestCommand.d.ts.map +1 -1
  17. package/dist/audit/cli/mergeAndIngestCommand.js +29 -1
  18. package/dist/audit/cli/mergeAndIngestCommand.js.map +1 -1
  19. package/dist/audit/cli/prompts.d.ts.map +1 -1
  20. package/dist/audit/cli/prompts.js +4 -2
  21. package/dist/audit/cli/prompts.js.map +1 -1
  22. package/dist/audit/cli/rollingAuditDispatch.d.ts.map +1 -1
  23. package/dist/audit/cli/rollingAuditDispatch.js +3 -0
  24. package/dist/audit/cli/rollingAuditDispatch.js.map +1 -1
  25. package/dist/audit/cli/semanticReviewStep.d.ts.map +1 -1
  26. package/dist/audit/cli/semanticReviewStep.js +10 -6
  27. package/dist/audit/cli/semanticReviewStep.js.map +1 -1
  28. package/dist/audit/cli/steps.d.ts +20 -10
  29. package/dist/audit/cli/steps.d.ts.map +1 -1
  30. package/dist/audit/cli/steps.js +4 -2
  31. package/dist/audit/cli/steps.js.map +1 -1
  32. package/dist/audit/orchestrator/rollingDispatch.d.ts +7 -6
  33. package/dist/audit/orchestrator/rollingDispatch.d.ts.map +1 -1
  34. package/dist/audit/orchestrator/rollingDispatch.js +37 -19
  35. package/dist/audit/orchestrator/rollingDispatch.js.map +1 -1
  36. package/dist/audit/quota/index.d.ts +137 -8
  37. package/dist/audit/quota/index.d.ts.map +1 -1
  38. package/dist/audit/quota/index.js +9 -8
  39. package/dist/audit/quota/index.js.map +1 -1
  40. package/dist/remediate/dispatch/ownershipRegistry.d.ts +2 -22
  41. package/dist/remediate/dispatch/ownershipRegistry.d.ts.map +1 -1
  42. package/dist/remediate/dispatch/ownershipRegistry.js +7 -45
  43. package/dist/remediate/dispatch/ownershipRegistry.js.map +1 -1
  44. package/dist/remediate/steps/dispatch.d.ts +22 -1
  45. package/dist/remediate/steps/dispatch.d.ts.map +1 -1
  46. package/dist/remediate/steps/dispatch.js +89 -5
  47. package/dist/remediate/steps/dispatch.js.map +1 -1
  48. package/dist/remediate/steps/nextStep.d.ts.map +1 -1
  49. package/dist/remediate/steps/nextStep.js +89 -116
  50. package/dist/remediate/steps/nextStep.js.map +1 -1
  51. package/dist/remediate/steps/rollingSession.d.ts +15 -17
  52. package/dist/remediate/steps/rollingSession.d.ts.map +1 -1
  53. package/dist/remediate/steps/rollingSession.js +33 -57
  54. package/dist/remediate/steps/rollingSession.js.map +1 -1
  55. package/dist/remediate/steps/types.d.ts +12 -4
  56. package/dist/remediate/steps/types.d.ts.map +1 -1
  57. package/dist/remediate/steps/types.js +1 -1
  58. package/dist/shared/dispatch/admissionLoop.d.ts +245 -0
  59. package/dist/shared/dispatch/admissionLoop.d.ts.map +1 -0
  60. package/dist/shared/dispatch/admissionLoop.js +204 -0
  61. package/dist/shared/dispatch/admissionLoop.js.map +1 -0
  62. package/dist/{remediate → shared}/dispatch/ownershipScheduler.d.ts +23 -2
  63. package/dist/shared/dispatch/ownershipScheduler.d.ts.map +1 -0
  64. package/dist/{remediate → shared}/dispatch/ownershipScheduler.js +34 -6
  65. package/dist/shared/dispatch/ownershipScheduler.js.map +1 -0
  66. package/dist/shared/dispatch/pathIdentity.d.ts +26 -0
  67. package/dist/shared/dispatch/pathIdentity.d.ts.map +1 -0
  68. package/dist/shared/dispatch/pathIdentity.js +49 -0
  69. package/dist/shared/dispatch/pathIdentity.js.map +1 -0
  70. package/dist/shared/dispatch/rollingDispatch.d.ts +37 -0
  71. package/dist/shared/dispatch/rollingDispatch.d.ts.map +1 -1
  72. package/dist/shared/dispatch/rollingDispatch.js +117 -18
  73. package/dist/shared/dispatch/rollingDispatch.js.map +1 -1
  74. package/dist/shared/dispatch/unifiedRolling.d.ts +131 -0
  75. package/dist/shared/dispatch/unifiedRolling.d.ts.map +1 -0
  76. package/dist/shared/dispatch/unifiedRolling.js +161 -0
  77. package/dist/shared/dispatch/unifiedRolling.js.map +1 -0
  78. package/dist/shared/index.d.ts +12 -1
  79. package/dist/shared/index.d.ts.map +1 -1
  80. package/dist/shared/index.js +18 -1
  81. package/dist/shared/index.js.map +1 -1
  82. package/dist/shared/quota/packetCost.d.ts +29 -0
  83. package/dist/shared/quota/packetCost.d.ts.map +1 -0
  84. package/dist/shared/quota/packetCost.js +51 -0
  85. package/dist/shared/quota/packetCost.js.map +1 -0
  86. package/dist/shared/quota/reservationLedger.d.ts +100 -0
  87. package/dist/shared/quota/reservationLedger.d.ts.map +1 -0
  88. package/dist/shared/quota/reservationLedger.js +224 -0
  89. package/dist/shared/quota/reservationLedger.js.map +1 -0
  90. package/dist/shared/quota/state.d.ts +20 -0
  91. package/dist/shared/quota/state.d.ts.map +1 -1
  92. package/dist/shared/quota/state.js +50 -0
  93. package/dist/shared/quota/state.js.map +1 -1
  94. package/dist/shared/quota/types.d.ts +11 -0
  95. package/dist/shared/quota/types.d.ts.map +1 -1
  96. package/dist/shared/quota/types.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/remediate/dispatch/ownershipScheduler.d.ts.map +0 -1
  99. package/dist/remediate/dispatch/ownershipScheduler.js.map +0 -1
@@ -131,34 +131,40 @@ export async function prepareHostRollingDispatch(options, runId, waveOptions, hy
131
131
  const preClaimed = hybrid
132
132
  ? new Map(hybrid.partition.map((a) => [a.block_id, a.ownerToken]))
133
133
  : null;
134
+ const dir = implementDir(options.artifactsDir, runId);
135
+ const quotaPath = join(dir, "dispatch-quota.json");
136
+ const quota = await readOptionalJsonFile(quotaPath);
137
+ // The admission block is the tool-owned budget gate: dispatch EXACTLY the granted
138
+ // set this step. A missing/empty admission (older state, or a degrade) grants
139
+ // nothing — the frontier folds to zero and the run re-grants on the next next-step.
140
+ const grantedIds = new Set(quota?.admission?.granted_packet_ids ?? []);
134
141
  const frontier = plan.items
135
142
  .filter((i) => typeof i.block_id === "string")
136
143
  .filter((i) => !partitionIds || partitionIds.has(i.block_id))
144
+ // Admission gate: only the granted subset of the eligible frontier runs this step.
145
+ .filter((i) => grantedIds.has(i.block_id))
137
146
  .map((i) => ({ block_id: i.block_id, prompt_path: i.prompt_path, result_path: i.result_path }));
138
- const dir = implementDir(options.artifactsDir, runId);
139
- const quotaPath = join(dir, "dispatch-quota.json");
140
- const quota = await readOptionalJsonFile(quotaPath);
141
- const slots = Math.max(1, quota?.max_concurrent_agents ?? 1);
142
- // Pre-create worktrees only for the initial bounded batch ( slots); the rest
143
- // are JIT-created by `accept-node` as nodes complete so ~slots worktrees
144
- // exist at any time, never the whole frontier at once. Each node is CLAIMED
145
- // through the shared registry BEFORE its worktree is created, so a node the
146
- // in-process driver (or a second host loop) already holds is skipped here
147
- // rather than double-dispatched (A-10 exactly-one-claimant). The slot freed by
148
- // a skipped node is filled by walking further into the frontier. In hybrid mode
149
- // the coordinator already claimed each partition node, so its token is REUSED
150
- // (never re-claimed — that would self-collide and skip the node).
147
+ // Create a worktree for the WHOLE granted set upfront (worktrees == granted set):
148
+ // admission already bounded the set to what the live budget + any declared in-flight
149
+ // cap allow, so there is no per-completion JIT refill — the pending remainder is
150
+ // re-granted at the next next-step. Each node is CLAIMED through the shared registry
151
+ // BEFORE its worktree is created, so a node the in-process driver (or a second host
152
+ // loop) already holds is recorded `contested` (its owner runs + accepts it) rather
153
+ // than double-dispatched (A-10 exactly-one-claimant). In hybrid mode the coordinator
154
+ // already claimed each partition node, so its token is REUSED (never re-claimed
155
+ // that would self-collide and skip the node).
151
156
  const registry = nodeClaimRegistry(options.artifactsDir, runId);
152
157
  const initialNodes = [];
153
158
  const claims = {};
159
+ const contested = [];
154
160
  for (const node of frontier) {
155
- if (initialNodes.length >= slots)
156
- break;
157
161
  let token = preClaimed?.get(node.block_id);
158
162
  if (!token) {
159
163
  const claim = await registry.claim(node.block_id, HOST_SUBAGENT_CLAIM_POOL);
160
- if (!claim.acquired)
161
- continue; // held by another driver — its node to run.
164
+ if (!claim.acquired) {
165
+ contested.push(node.block_id); // held by another driver — its node to run + accept.
166
+ continue;
167
+ }
162
168
  token = claim.ownerToken;
163
169
  }
164
170
  // `plan` (above) is the single source of each block's declared scope (write ∪
@@ -169,11 +175,11 @@ export async function prepareHostRollingDispatch(options, runId, waveOptions, hy
169
175
  }
170
176
  const session = {
171
177
  run_id: runId,
172
- slots,
173
178
  frontier,
174
179
  dispatched: initialNodes.map((n) => n.block_id),
175
180
  accepted: [],
176
181
  claims,
182
+ contested,
177
183
  };
178
184
  await writeJsonFile(sessionPath(options.artifactsDir, runId), session);
179
185
  return {
@@ -245,52 +251,22 @@ export async function advanceHostRolling(opts) {
245
251
  }
246
252
  }
247
253
  session.contested ??= [];
248
- // JIT-dispatch the next eligible node. Walk the frontier and CLAIM each
249
- // undispatched, non-contested node through the shared registry BEFORE creating
250
- // its worktree; a node a peer driver already holds is recorded `contested` (it
251
- // is theirs to run + accept) and the walk advances so the two drivers never
252
- // both pick the same node and the freed slot is not wasted on a contested id
253
- // (A-10 exactly-one-claimant / coordinator parity).
254
- let next;
255
- let nextToken;
256
- for (const candidate of session.frontier) {
257
- if (session.dispatched.includes(candidate.block_id) ||
258
- session.contested.includes(candidate.block_id)) {
259
- continue;
260
- }
261
- const claim = await registry.claim(candidate.block_id, HOST_SUBAGENT_CLAIM_POOL);
262
- if (!claim.acquired) {
263
- session.contested.push(candidate.block_id);
264
- continue;
265
- }
266
- next = candidate;
267
- nextToken = claim.ownerToken;
268
- break;
269
- }
270
- // This session's completion target is the frontier minus the nodes a peer
254
+ // No per-completion JIT refill: the whole granted set already has worktrees
255
+ // (worktrees == granted set — admission bounded it to the live budget at grant
256
+ // time). The pending remainder is re-granted at the NEXT next-step. So each
257
+ // `accept-node` only runs the finished node's lifecycle, then reports wait/done.
258
+ // This session's completion target is the granted set minus the nodes a peer
271
259
  // driver owns. Empty `contested` (the common single-driver case) → the full
272
- // frontier, so the directive counts are unchanged.
260
+ // granted set, so the counts are unchanged.
273
261
  const ownTotal = session.frontier.length - session.contested.length;
274
262
  const inFlight = session.dispatched.length - session.accepted.length;
275
- if (next && nextToken) {
276
- createNodeWorktree(opts.root, next.block_id, opts.runId, await declaredPathsForBlockSafe(opts.artifactsDir, opts.runId, next.block_id));
277
- session.dispatched.push(next.block_id);
278
- session.claims[next.block_id] = nextToken;
279
- await writeJsonFile(sessionPath(opts.artifactsDir, opts.runId), session);
280
- return {
281
- kind: "dispatch",
282
- node: next,
283
- worktree_root: worktreePath(opts.root, next.block_id, opts.runId),
284
- in_flight: session.dispatched.length - session.accepted.length,
285
- accepted: session.accepted.length,
286
- total: ownTotal,
287
- };
288
- }
289
263
  await writeJsonFile(sessionPath(opts.artifactsDir, opts.runId), session);
290
264
  // Done when every node this session is responsible for has been accepted AND
291
265
  // nothing is still in flight — a contested node held by a peer driver does not
292
266
  // keep this session waiting forever (the peer accepts it; the run-level
293
- // `mergeImplementResults` is the finalizer over both drivers' outcomes).
267
+ // `mergeImplementResults` is the finalizer over both drivers' outcomes, and it
268
+ // reconciles the grant's reservation-ledger leases so budget frees for the next
269
+ // grant).
294
270
  if (session.accepted.length >= ownTotal && inFlight <= 0) {
295
271
  return { kind: "done", accepted: session.accepted.length, total: ownTotal };
296
272
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rollingSession.js","sourceRoot":"","sources":["../../../src/remediate/steps/rollingSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollingSession.js","sourceRoot":"","sources":["../../../src/remediate/steps/rollingSession.ts"],"names":[],"mappings":"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"}
@@ -67,17 +67,25 @@ export interface ImplementWorkerResult {
67
67
  amended_files?: string[];
68
68
  }
69
69
  export declare const REMEDIATION_CLOSING_RESULT_CONTRACT_VERSION: "remediate-code-closing-result/v1alpha1";
70
- export declare const REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION: "remediate-code-dispatch-quota/v1alpha2";
70
+ export declare const REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION: "remediate-code-dispatch-quota/v1alpha3";
71
71
  export type { HostConcurrencyLimitSource, HostConcurrencyLimit } from "audit-tools/shared";
72
72
  export type { LimitSource, LimitConfidence, ResolvedLimits, BackoffState, WaveBindingCap, DispatchCapacityPoolSummary, } from "audit-tools/shared";
73
73
  export type { QuotaUsageSnapshot } from "audit-tools/shared";
74
- import type { HostConcurrencyLimit, LimitSource, LimitConfidence, ResolvedLimits, BackoffState, QuotaUsageSnapshot, WaveBindingCap, DispatchCapacityPoolSummary } from "audit-tools/shared";
74
+ import type { HostConcurrencyLimit, LimitSource, LimitConfidence, ResolvedLimits, BackoffState, QuotaUsageSnapshot, WaveBindingCap, DispatchCapacityPoolSummary, DispatchAdmission } from "audit-tools/shared";
75
75
  export interface RemediationDispatchQuota {
76
- contract_version: typeof REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION | "remediate-code-dispatch-quota/v1alpha1";
76
+ contract_version: typeof REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION;
77
77
  run_id: string;
78
78
  phase: DispatchPhase;
79
79
  host_concurrency_limit: HostConcurrencyLimit | null;
80
- max_concurrent_agents: number;
80
+ /**
81
+ * Admission control (v1alpha3) — REPLACES the removed `max_concurrent_agents`
82
+ * scalar. The tool GRANTS the affordable admitted set (`granted_packet_ids`,
83
+ * cost-first-capable, ledger-leased); the host dispatches exactly that set and
84
+ * re-invokes next-step for the next grant. The granted set's size is the emergent
85
+ * admission width — there is no computed concurrency number. Single-sourced with the
86
+ * audit side via `computeDispatchAdmission`. See spec/audit/dispatch-admission-control.md.
87
+ */
88
+ admission: DispatchAdmission;
81
89
  estimated_wave_tokens: number;
82
90
  model: string | null;
83
91
  confidence: LimitConfidence;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/remediate/steps/types.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,5 @@ export const REMEDIATION_STEP_CONTRACT_VERSION = "remediate-code-step/v1alpha1";
2
2
  export const REMEDIATION_DISPATCH_PLAN_CONTRACT_VERSION = "remediate-code-dispatch-plan/v1alpha1";
3
3
  export const REMEDIATION_WORKER_RESULT_CONTRACT_VERSION = "remediate-code-worker-result/v1alpha1";
4
4
  export const REMEDIATION_CLOSING_RESULT_CONTRACT_VERSION = "remediate-code-closing-result/v1alpha1";
5
- export const REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION = "remediate-code-dispatch-quota/v1alpha2";
5
+ export const REMEDIATION_DISPATCH_QUOTA_CONTRACT_VERSION = "remediate-code-dispatch-quota/v1alpha3";
6
6
  //# sourceMappingURL=types.js.map
@@ -0,0 +1,245 @@
1
+ import { z } from "zod";
2
+ import type { ReservationLedger } from "../quota/reservationLedger.js";
3
+ /** One packet the admission loop may grant this pass. */
4
+ export interface AdmissionCandidate {
5
+ id: string;
6
+ /** Reservation cost = input estimate + output envelope (estimatePacketCost). */
7
+ cost: number;
8
+ /** Complexity in [0, 1] — the default capability gate's routing signal. */
9
+ complexity: number;
10
+ }
11
+ /** One pool a packet may be routed to. */
12
+ export interface AdmissionPool {
13
+ poolId: string;
14
+ /** `provider#account/model` — the metered account the lease keys to. */
15
+ resourceKey: string;
16
+ /** Live remaining token budget for `resourceKey`. `+Infinity` ⇒ optimistic. */
17
+ budget: number;
18
+ /** Declared hard in-flight cap (e.g. Codex's 6), passed verbatim. null ⇒ none. */
19
+ declaredCap: number | null;
20
+ /** Cost rank — LOWER is cheaper; the loop routes cheapest-capable-first. */
21
+ costRank: number;
22
+ /** Capability rank — HIGHER is more capable; ties break toward more capable. */
23
+ capabilityRank: number;
24
+ /** Largest packet cost this pool can fit (context window − output). */
25
+ capacityTokens: number;
26
+ }
27
+ /** A successful admission: one packet leased to one pool. */
28
+ export interface AdmissionGrant {
29
+ packet_id: string;
30
+ pool_id: string;
31
+ resource_key: string;
32
+ lease_id: string;
33
+ cost: number;
34
+ }
35
+ export declare const AdmissionGrantSchema: z.ZodObject<{
36
+ packet_id: z.ZodString;
37
+ pool_id: z.ZodString;
38
+ resource_key: z.ZodString;
39
+ lease_id: z.ZodString;
40
+ cost: z.ZodNumber;
41
+ }, "strict", z.ZodTypeAny, {
42
+ packet_id: string;
43
+ cost: number;
44
+ pool_id: string;
45
+ resource_key: string;
46
+ lease_id: string;
47
+ }, {
48
+ packet_id: string;
49
+ cost: number;
50
+ pool_id: string;
51
+ resource_key: string;
52
+ lease_id: string;
53
+ }>;
54
+ /** Why a packet was admitted or blocked — the per-admission explain record. */
55
+ export declare const AdmissionExplainSchema: z.ZodObject<{
56
+ packet_id: z.ZodString;
57
+ /** null only when NO pool was capable of the packet at all. */
58
+ pool_id: z.ZodNullable<z.ZodString>;
59
+ resource_key: z.ZodNullable<z.ZodString>;
60
+ admitted: z.ZodBoolean;
61
+ reason: z.ZodEnum<["admitted", "no_capable_pool", "budget_exhausted", "cap_reached"]>;
62
+ /** Present on an admit attempt against a real pool (budget headroom before it). */
63
+ headroom_before: z.ZodOptional<z.ZodNumber>;
64
+ outstanding_before: z.ZodOptional<z.ZodNumber>;
65
+ cost: z.ZodNumber;
66
+ }, "strict", z.ZodTypeAny, {
67
+ reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
68
+ admitted: boolean;
69
+ packet_id: string;
70
+ cost: number;
71
+ pool_id: string | null;
72
+ resource_key: string | null;
73
+ headroom_before?: number | undefined;
74
+ outstanding_before?: number | undefined;
75
+ }, {
76
+ reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
77
+ admitted: boolean;
78
+ packet_id: string;
79
+ cost: number;
80
+ pool_id: string | null;
81
+ resource_key: string | null;
82
+ headroom_before?: number | undefined;
83
+ outstanding_before?: number | undefined;
84
+ }>;
85
+ export type AdmissionExplain = z.infer<typeof AdmissionExplainSchema>;
86
+ /**
87
+ * The admission artifact both orchestrators embed in their dispatch-quota contract,
88
+ * REPLACING the removed `max_concurrent_agents` scalar. `granted_packet_ids` is the
89
+ * set the host dispatches this step (its size is the emergent admission width);
90
+ * `declared_cap` is the verbatim per-environment hard in-flight cap (null when
91
+ * none); `leases` are reconciled (freed) at result-ingest; `explains` reconstruct
92
+ * why the fan-out was the width it was.
93
+ */
94
+ export declare const DispatchAdmissionSchema: z.ZodObject<{
95
+ granted_packet_ids: z.ZodArray<z.ZodString, "many">;
96
+ declared_cap: z.ZodNullable<z.ZodNumber>;
97
+ leases: z.ZodArray<z.ZodObject<{
98
+ packet_id: z.ZodString;
99
+ pool_id: z.ZodString;
100
+ resource_key: z.ZodString;
101
+ lease_id: z.ZodString;
102
+ cost: z.ZodNumber;
103
+ }, "strict", z.ZodTypeAny, {
104
+ packet_id: string;
105
+ cost: number;
106
+ pool_id: string;
107
+ resource_key: string;
108
+ lease_id: string;
109
+ }, {
110
+ packet_id: string;
111
+ cost: number;
112
+ pool_id: string;
113
+ resource_key: string;
114
+ lease_id: string;
115
+ }>, "many">;
116
+ explains: z.ZodArray<z.ZodObject<{
117
+ packet_id: z.ZodString;
118
+ /** null only when NO pool was capable of the packet at all. */
119
+ pool_id: z.ZodNullable<z.ZodString>;
120
+ resource_key: z.ZodNullable<z.ZodString>;
121
+ admitted: z.ZodBoolean;
122
+ reason: z.ZodEnum<["admitted", "no_capable_pool", "budget_exhausted", "cap_reached"]>;
123
+ /** Present on an admit attempt against a real pool (budget headroom before it). */
124
+ headroom_before: z.ZodOptional<z.ZodNumber>;
125
+ outstanding_before: z.ZodOptional<z.ZodNumber>;
126
+ cost: z.ZodNumber;
127
+ }, "strict", z.ZodTypeAny, {
128
+ reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
129
+ admitted: boolean;
130
+ packet_id: string;
131
+ cost: number;
132
+ pool_id: string | null;
133
+ resource_key: string | null;
134
+ headroom_before?: number | undefined;
135
+ outstanding_before?: number | undefined;
136
+ }, {
137
+ reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
138
+ admitted: boolean;
139
+ packet_id: string;
140
+ cost: number;
141
+ pool_id: string | null;
142
+ resource_key: string | null;
143
+ headroom_before?: number | undefined;
144
+ outstanding_before?: number | undefined;
145
+ }>, "many">;
146
+ }, "strict", z.ZodTypeAny, {
147
+ leases: {
148
+ packet_id: string;
149
+ cost: number;
150
+ pool_id: string;
151
+ resource_key: string;
152
+ lease_id: string;
153
+ }[];
154
+ granted_packet_ids: string[];
155
+ declared_cap: number | null;
156
+ explains: {
157
+ reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
158
+ admitted: boolean;
159
+ packet_id: string;
160
+ cost: number;
161
+ pool_id: string | null;
162
+ resource_key: string | null;
163
+ headroom_before?: number | undefined;
164
+ outstanding_before?: number | undefined;
165
+ }[];
166
+ }, {
167
+ leases: {
168
+ packet_id: string;
169
+ cost: number;
170
+ pool_id: string;
171
+ resource_key: string;
172
+ lease_id: string;
173
+ }[];
174
+ granted_packet_ids: string[];
175
+ declared_cap: number | null;
176
+ explains: {
177
+ reason: "admitted" | "no_capable_pool" | "budget_exhausted" | "cap_reached";
178
+ admitted: boolean;
179
+ packet_id: string;
180
+ cost: number;
181
+ pool_id: string | null;
182
+ resource_key: string | null;
183
+ headroom_before?: number | undefined;
184
+ outstanding_before?: number | undefined;
185
+ }[];
186
+ }>;
187
+ export type DispatchAdmission = z.infer<typeof DispatchAdmissionSchema>;
188
+ /** Outcome of one admission pass. */
189
+ export interface AdmitBatchResult {
190
+ granted: AdmissionGrant[];
191
+ explains: AdmissionExplain[];
192
+ /** Packet ids not admitted this pass — deferred to a later grant (re-invoke). */
193
+ blocked: string[];
194
+ }
195
+ export interface AdmitBatchInput {
196
+ /** Candidate packets in PRIORITY order (highest-priority first). */
197
+ packets: AdmissionCandidate[];
198
+ pools: AdmissionPool[];
199
+ ledger: ReservationLedger;
200
+ /**
201
+ * Capability gate: may this pool handle this packet? Defaults to a size fit
202
+ * (`pool.capacityTokens >= packet.cost`) — a grounded, provider-neutral gate. A
203
+ * caller refines the complexity/risk gate by supplying its own predicate (the
204
+ * intended extension point for cost/capability routing policy).
205
+ */
206
+ capable?: (pool: AdmissionPool, packet: AdmissionCandidate) => boolean;
207
+ leaseTtlMs?: number;
208
+ }
209
+ /**
210
+ * Admit as many packets as budget + declared caps allow this pass, routing each to
211
+ * the cheapest capable pool with headroom. Every admission RESERVES the packet's
212
+ * cost against the shared ledger under its lock, so co-located dispatch loops on one
213
+ * account cannot collectively over-admit. Returns the granted set (the host
214
+ * dispatches exactly these), the explain trail, and the blocked remainder.
215
+ *
216
+ * A pool's declared in-flight cap is enforced by COUNT of its outstanding ledger
217
+ * leases (cross-process) plus this batch's grants — the only place an explicit
218
+ * agent-count exists (a verbatim environment limit), never a computed concurrency.
219
+ */
220
+ export declare function admitBatch(input: AdmitBatchInput): Promise<AdmitBatchResult>;
221
+ /**
222
+ * Build the `DispatchAdmission` contract block both orchestrators embed in their
223
+ * dispatch-quota — the single-sourced host-path admission derivation (no per-tool
224
+ * copy that could drift). Computes each packet's envelope reservation
225
+ * (`estimatePacketCost` with the declared output cap), derives the surfaced declared
226
+ * cap (the most-constraining pool's in-flight cap), and either GRANTS via
227
+ * {@link admitBatch} (host-subagent path, `grantLeases: true` — leases persist for
228
+ * reconcile at ingest) or returns a plan-only block listing every candidate
229
+ * (`grantLeases: false` — the in-process rolling engine leases per-packet itself,
230
+ * so a host grant here would double-count).
231
+ */
232
+ export declare function computeDispatchAdmission(input: {
233
+ packets: {
234
+ id: string;
235
+ inputTokens: number;
236
+ complexity: number;
237
+ }[];
238
+ pools: AdmissionPool[];
239
+ /** Declared output cap for the packet envelope (cold-start; ratio refines later). */
240
+ outputCap: number;
241
+ grantLeases: boolean;
242
+ ledger: ReservationLedger;
243
+ capable?: (pool: AdmissionPool, packet: AdmissionCandidate) => boolean;
244
+ }): Promise<DispatchAdmission>;
245
+ //# sourceMappingURL=admissionLoop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admissionLoop.d.ts","sourceRoot":"","sources":["../../../src/shared/dispatch/admissionLoop.ts"],"names":[],"mappings":"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"}