instar 1.3.1073 → 1.3.1075
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/core/ProjectRoundExecution.d.ts.map +1 -1
- package/dist/core/ProjectRoundExecution.js +79 -3
- package/dist/core/ProjectRoundExecution.js.map +1 -1
- package/dist/data/standards-registry.meta.json +1 -1
- package/dist/messaging/SpawnRequestManager.d.ts.map +1 -1
- package/dist/messaging/SpawnRequestManager.js +176 -88
- package/dist/messaging/SpawnRequestManager.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +2 -2
- package/src/data/standards-registry.meta.json +1 -1
- package/upgrades/1.3.1074.md +61 -0
- package/upgrades/1.3.1075.md +34 -0
- package/upgrades/side-effects/project-round-spawn-guard.md +113 -0
- package/upgrades/side-effects/spawn-transient-refusal-class-guard.md +157 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectRoundExecution.d.ts","sourceRoot":"","sources":["../../src/core/ProjectRoundExecution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAIH,OAAO,KAAK,EAAc,iBAAiB,EAAe,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"ProjectRoundExecution.d.ts","sourceRoot":"","sources":["../../src/core/ProjectRoundExecution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAIH,OAAO,KAAK,EAAc,iBAAiB,EAAe,MAAM,wBAAwB,CAAC;AAOzF,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAC/C,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,gDAAgD;AAChD,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,qCAAqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;;;;;;;;;;;;;;;;OAkBG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAE9E;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,oBAAoB,GACpB,QAAQ,GACR,QAAQ,GACR,cAAc,CAAC;AAEnB,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,YAAY,CAAC;IACtB,+BAA+B;IAC/B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,oFAAoF;IACpF,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,mFAAmF;IACnF,aAAa,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,cAAc,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CA2OhG;AAgPD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA2ChE;AAED;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB;IACvC,oDAAoD;IACpD,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,gEAAgE;IAChE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,gFAAgF;IAChF,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,uBAAuB,CAC3C,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,EAAE,iBAAiB;AAC1B;mFACmF;AACnF,eAAe,GAAE,MAAsB,GACtC,OAAO,CAAC,wBAAwB,CAAC,CAmCnC"}
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
import { spawn, execFileSync } from 'node:child_process';
|
|
37
37
|
import { ProjectRoundLock } from './ProjectRoundLock.js';
|
|
38
38
|
import { ProjectRoundWorktrees } from './ProjectRoundWorktrees.js';
|
|
39
|
+
import { detectClaudePath } from './Config.js';
|
|
39
40
|
import { SafeGitExecutor } from './SafeGitExecutor.js';
|
|
40
41
|
import { withSyncOp } from './InFlightSyncOpMarker.js';
|
|
41
42
|
/** Per-spec defaults. Tests dial both down to keep the suite fast. */
|
|
@@ -183,6 +184,22 @@ export async function runRound(input, deps) {
|
|
|
183
184
|
unmergedItemIds = [...lastItemIds];
|
|
184
185
|
break;
|
|
185
186
|
}
|
|
187
|
+
// The child never started. Record it as a round failure that NAMES the
|
|
188
|
+
// cause, and do NOT spend a resume attempt: a binary that cannot be
|
|
189
|
+
// resolved or executed will not resolve on a retry, so relaunching would
|
|
190
|
+
// burn the attempt budget and report the wrong reason ("attempts
|
|
191
|
+
// exhausted") for a condition that is not about attempts at all.
|
|
192
|
+
// "Could not start" and "started and failed" are different facts and the
|
|
193
|
+
// round record must not render them the same.
|
|
194
|
+
if (exit.kind === 'spawn-failed') {
|
|
195
|
+
outcome = 'failed';
|
|
196
|
+
// Node's spawn errors already name the binary ("spawn claude ENOENT"),
|
|
197
|
+
// so the message alone is enough to diagnose without plumbing the
|
|
198
|
+
// resolved path — which would risk leaking an absolute home path.
|
|
199
|
+
reason = `could not start the autonomous child: ${exit.spawnError ?? 'unknown spawn error'}`;
|
|
200
|
+
unmergedItemIds = [...lastItemIds];
|
|
201
|
+
break;
|
|
202
|
+
}
|
|
186
203
|
// Natural exit.
|
|
187
204
|
if (exit.kind === 'exited' && exit.code === 0) {
|
|
188
205
|
// Step 6: verify per-item artifacts.
|
|
@@ -283,8 +300,36 @@ async function recordOutcome(tracker, projectId, roundIndex, outcome) {
|
|
|
283
300
|
// OCC race — caller (or next reconcile) will retry.
|
|
284
301
|
}
|
|
285
302
|
}
|
|
303
|
+
/**
|
|
304
|
+
* Spawn errors captured at the spawn site.
|
|
305
|
+
*
|
|
306
|
+
* `child_process.spawn` reports a failure to START (ENOENT, EACCES) by
|
|
307
|
+
* emitting `'error'` — NOT by emitting `'exit'`. Two consequences, and the
|
|
308
|
+
* second is the one that bites:
|
|
309
|
+
*
|
|
310
|
+
* 1. An unhandled `'error'` becomes a process-level uncaught exception.
|
|
311
|
+
* `uncaughtExceptionPolicy` crashes by default on anything it does not
|
|
312
|
+
* recognise — correctly, since an unknown exception is not safe to
|
|
313
|
+
* swallow. So an unstartable child took the WHOLE agent server down.
|
|
314
|
+
* 2. Even with the crash averted, `'exit'` never fires, so a waiter that
|
|
315
|
+
* listens only for `'exit'` waits forever for an event that cannot come.
|
|
316
|
+
*
|
|
317
|
+
* Capturing here — at the spawn site, in the same tick as the spawn — means
|
|
318
|
+
* the "a spawn failure never crashes the process" property does not depend on
|
|
319
|
+
* any caller remembering to attach a listener. The waiter separately consumes
|
|
320
|
+
* the error to turn it into a recorded round failure.
|
|
321
|
+
*/
|
|
322
|
+
const spawnFailures = new WeakMap();
|
|
286
323
|
function spawnAutonomousChild(input, itemIds) {
|
|
287
|
-
|
|
324
|
+
// Resolve the binary rather than trusting the server's PATH. The server runs
|
|
325
|
+
// under launchd, whose PATH routinely excludes the nvm/asdf/npm-global bin dir
|
|
326
|
+
// that actually holds `claude` — so a bare 'claude' resolves in the operator's
|
|
327
|
+
// terminal and ENOENTs in the server. `detectFrameworkBinary` already scans
|
|
328
|
+
// exactly those locations (its own comment records the 2026-05-31 session-spawn
|
|
329
|
+
// crash from this same cause); this callsite simply was not using it.
|
|
330
|
+
// Falls back to the bare name so a host where detection legitimately finds
|
|
331
|
+
// nothing behaves as before rather than failing earlier than it used to.
|
|
332
|
+
const cmd = input.spawnCommand ?? detectClaudePath() ?? 'claude';
|
|
288
333
|
const args = input.spawnArgs ?? ['--skill', 'autonomous'];
|
|
289
334
|
const workdir = input.initialWorkdir ??
|
|
290
335
|
(itemIds.length > 0
|
|
@@ -307,6 +352,13 @@ function spawnAutonomousChild(input, itemIds) {
|
|
|
307
352
|
INSTAR_STOP_CONDITION: 'all-items-merged-on-main',
|
|
308
353
|
},
|
|
309
354
|
});
|
|
355
|
+
// Attach IMMEDIATELY — see spawnFailures above. Without a listener a failure
|
|
356
|
+
// to START is an unhandled 'error' event, which is a process-level uncaught
|
|
357
|
+
// exception, which kills the agent server. This listener exists so that
|
|
358
|
+
// property holds no matter what the caller does with the returned child.
|
|
359
|
+
child.on('error', (err) => {
|
|
360
|
+
spawnFailures.set(child, err);
|
|
361
|
+
});
|
|
310
362
|
return child;
|
|
311
363
|
}
|
|
312
364
|
async function waitForExitOrPollChange(child, tracker, projectId, roundIndex, initialItemIds, pollIntervalMs, sigtermGraceMs) {
|
|
@@ -321,9 +373,33 @@ async function waitForExitOrPollChange(child, tracker, projectId, roundIndex, in
|
|
|
321
373
|
resolve();
|
|
322
374
|
});
|
|
323
375
|
});
|
|
376
|
+
// A child that never STARTED emits 'error' and never emits 'exit', so the
|
|
377
|
+
// loop below would otherwise wait forever for an event that cannot arrive.
|
|
378
|
+
// Check the spawn-site capture first (the error may already have fired before
|
|
379
|
+
// this function attached anything), then listen for a later one.
|
|
380
|
+
// An error that ALREADY fired (captured at the spawn site) is answered before
|
|
381
|
+
// any waiting at all — read into its own local so the check below is not
|
|
382
|
+
// narrowed by this one.
|
|
383
|
+
const alreadyFailed = spawnFailures.get(child);
|
|
384
|
+
if (alreadyFailed) {
|
|
385
|
+
return { kind: 'spawn-failed', spawnError: alreadyFailed.message };
|
|
386
|
+
}
|
|
387
|
+
// Holder object rather than a bare `let`: the assignment happens inside a
|
|
388
|
+
// callback, which TypeScript's control-flow analysis cannot see.
|
|
389
|
+
const failure = {};
|
|
390
|
+
const spawnFailurePromise = new Promise((resolve) => {
|
|
391
|
+
child.once('error', (err) => {
|
|
392
|
+
failure.err = err;
|
|
393
|
+
resolve();
|
|
394
|
+
});
|
|
395
|
+
});
|
|
324
396
|
while (!exited) {
|
|
325
|
-
// Wait
|
|
326
|
-
await Promise.race([exitPromise, sleep(pollIntervalMs)]);
|
|
397
|
+
// Wait for exit, a spawn failure, OR the poll interval — whichever is first.
|
|
398
|
+
await Promise.race([exitPromise, spawnFailurePromise, sleep(pollIntervalMs)]);
|
|
399
|
+
const failedToStart = failure.err;
|
|
400
|
+
if (failedToStart) {
|
|
401
|
+
return { kind: 'spawn-failed', spawnError: failedToStart.message };
|
|
402
|
+
}
|
|
327
403
|
if (exited)
|
|
328
404
|
break;
|
|
329
405
|
// Halt check.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectRoundExecution.js","sourceRoot":"","sources":["../../src/core/ProjectRoundExecution.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ProjectRoundExecution.js","sourceRoot":"","sources":["../../src/core/ProjectRoundExecution.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpawnRequestManager.d.ts","sourceRoot":"","sources":["../../src/messaging/SpawnRequestManager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SpawnRequestManager.d.ts","sourceRoot":"","sources":["../../src/messaging/SpawnRequestManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -150,6 +150,10 @@ export class SpawnRequestManager {
|
|
|
150
150
|
* Used by DRR's age-boost.
|
|
151
151
|
*/
|
|
152
152
|
#pendingMessages = new Map();
|
|
153
|
+
/** Serialize launch attempts per agent so one backlog cannot be delivered twice. */
|
|
154
|
+
#spawnInflightByAgent = new Set();
|
|
155
|
+
/** Arrival order shared by queued and in-flight-reserved payloads. */
|
|
156
|
+
#nextQueueSequence = 0;
|
|
153
157
|
/** Max queued messages per agent before oldest are dropped */
|
|
154
158
|
static MAX_QUEUED_PER_AGENT = 10;
|
|
155
159
|
/** Max age for queued messages (10 minutes) */
|
|
@@ -299,7 +303,10 @@ export class SpawnRequestManager {
|
|
|
299
303
|
/** Effective per-agent queue cap, accounting for soft-limiter degradation. */
|
|
300
304
|
effectiveMaxQueuedPerAgent(agent) {
|
|
301
305
|
if (this.isInfraDegraded(agent)) {
|
|
302
|
-
|
|
306
|
+
// A zero cap makes `while (queue.length >= cap)` non-terminating. Keep
|
|
307
|
+
// degraded admission bounded but live, even for a stale constructor
|
|
308
|
+
// config written before updateConfig began rejecting zero.
|
|
309
|
+
return Math.max(1, this.#config.degradedMaxQueuedPerAgent ?? DEGRADED_MAX_QUEUED_PER_AGENT_DEFAULT);
|
|
303
310
|
}
|
|
304
311
|
return _a.MAX_QUEUED_PER_AGENT;
|
|
305
312
|
}
|
|
@@ -308,12 +315,48 @@ export class SpawnRequestManager {
|
|
|
308
315
|
this.#consecutiveSpawnFailures.delete(agent);
|
|
309
316
|
this.#penaltyUntil.delete(agent);
|
|
310
317
|
}
|
|
318
|
+
/**
|
|
319
|
+
* The single construction path for a retryable refusal.
|
|
320
|
+
*
|
|
321
|
+
* `retryAfterMs` means "not now", so returning it without first preserving
|
|
322
|
+
* the refused payload is a data-loss bug. Keeping construction here makes
|
|
323
|
+
* that postcondition class-wide: the structural guard test rejects any
|
|
324
|
+
* retryable-result object created elsewhere in this class.
|
|
325
|
+
*
|
|
326
|
+
* Queued backlog is not handled here: evaluate snapshots it without removal
|
|
327
|
+
* and commits that exact snapshot only after spawnSession reports delivery.
|
|
328
|
+
* A rejection therefore leaves the backlog's age and ordering untouched.
|
|
329
|
+
*/
|
|
330
|
+
#refuseTransiently(request, reason, retryAfterMs, reservedPayload) {
|
|
331
|
+
const agent = request.requester.agent;
|
|
332
|
+
if (reservedPayload) {
|
|
333
|
+
this.#admitQueuedMessage(agent, reservedPayload);
|
|
334
|
+
}
|
|
335
|
+
else if (request.context) {
|
|
336
|
+
this.#queueMessage(agent, request.context, request.pendingMessages?.[0]);
|
|
337
|
+
}
|
|
338
|
+
return {
|
|
339
|
+
approved: false,
|
|
340
|
+
reason,
|
|
341
|
+
retryAfterMs,
|
|
342
|
+
};
|
|
343
|
+
}
|
|
311
344
|
// ── Public API ──────────────────────────────────────────────
|
|
312
345
|
/**
|
|
313
346
|
* Evaluate and potentially approve a spawn request.
|
|
314
347
|
* Returns the result with approval status and session info if spawned.
|
|
315
348
|
*/
|
|
316
349
|
async evaluate(request) {
|
|
350
|
+
return this.#evaluateGuarded(request);
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Typed implementation boundary for the class-level preservation invariant.
|
|
354
|
+
*
|
|
355
|
+
* A retryable result cannot satisfy this return type unless it came from
|
|
356
|
+
* `#refuseTransiently`, whose private brand certifies use of the preservation
|
|
357
|
+
* funnel.
|
|
358
|
+
*/
|
|
359
|
+
async #evaluateGuarded(request) {
|
|
317
360
|
const agent = request.requester.agent;
|
|
318
361
|
// §4.3: payload byte-size cap. Refuse oversized envelopes at admission so
|
|
319
362
|
// bulk content can't hog drain-tick budget. Measured on the UTF-8 byte
|
|
@@ -331,14 +374,7 @@ export class SpawnRequestManager {
|
|
|
331
374
|
// §4.2: single-source cooldown check (covers cooldown AND penalty).
|
|
332
375
|
const remainingMs = this.cooldownRemainingMs(agent);
|
|
333
376
|
if (remainingMs > 0) {
|
|
334
|
-
|
|
335
|
-
this.#queueMessage(agent, request.context, request.pendingMessages?.[0]);
|
|
336
|
-
}
|
|
337
|
-
return {
|
|
338
|
-
approved: false,
|
|
339
|
-
reason: `Cooldown: ${Math.ceil(remainingMs / 1000)}s remaining before next spawn for ${agent}`,
|
|
340
|
-
retryAfterMs: remainingMs,
|
|
341
|
-
};
|
|
377
|
+
return this.#refuseTransiently(request, `Cooldown: ${Math.ceil(remainingMs / 1000)}s remaining before next spawn for ${agent}`, remainingMs);
|
|
342
378
|
}
|
|
343
379
|
// Check session limits — prefer the live accessor over the constructor
|
|
344
380
|
// snapshot so config reloads (e.g. operator raising sessions.maxSessions)
|
|
@@ -350,38 +386,13 @@ export class SpawnRequestManager {
|
|
|
350
386
|
: this.#config.maxSessions;
|
|
351
387
|
if (activeSessions.length >= liveMaxSessions) {
|
|
352
388
|
if (request.priority !== 'critical' && request.priority !== 'high') {
|
|
353
|
-
|
|
354
|
-
// session cap clears as running sessions finish — this branch sets
|
|
355
|
-
// retryAfterMs itself — so the content must survive the wait.
|
|
356
|
-
if (request.context) {
|
|
357
|
-
this.#queueMessage(agent, request.context, request.pendingMessages?.[0]);
|
|
358
|
-
}
|
|
359
|
-
return {
|
|
360
|
-
approved: false,
|
|
361
|
-
reason: `Session limit reached (${activeSessions.length}/${liveMaxSessions}). Priority ${request.priority} insufficient to override.`,
|
|
362
|
-
retryAfterMs: 60_000,
|
|
363
|
-
};
|
|
389
|
+
return this.#refuseTransiently(request, `Session limit reached (${activeSessions.length}/${liveMaxSessions}). Priority ${request.priority} insufficient to override.`, 60_000);
|
|
364
390
|
}
|
|
365
391
|
}
|
|
366
|
-
// Check memory pressure.
|
|
367
|
-
//
|
|
368
|
-
// very branch sets retryAfterMs — and the content must survive it. Before
|
|
369
|
-
// this, memory pressure was the ONLY transient-pressure denial that
|
|
370
|
-
// destroyed the payload, so an A2A dispatch arriving during a pressure
|
|
371
|
-
// window was silently deleted while both the caller (`handled: true` from
|
|
372
|
-
// ThreadlineRouter) and the remote sender (`delivered: true`) recorded
|
|
373
|
-
// success. Observed live 2026-07-29: 40 such denials on one machine in a
|
|
374
|
-
// day, oscillating across the threshold every 30-80s, each one a lost
|
|
375
|
-
// inbound message.
|
|
392
|
+
// Check memory pressure. The refusal funnel preserves the payload while
|
|
393
|
+
// the transient pressure condition clears.
|
|
376
394
|
if (this.#config.isMemoryPressureHigh?.()) {
|
|
377
|
-
|
|
378
|
-
this.#queueMessage(agent, request.context, request.pendingMessages?.[0]);
|
|
379
|
-
}
|
|
380
|
-
return {
|
|
381
|
-
approved: false,
|
|
382
|
-
reason: 'Memory pressure too high for new session',
|
|
383
|
-
retryAfterMs: 120_000,
|
|
384
|
-
};
|
|
395
|
+
return this.#refuseTransiently(request, 'Memory pressure too high for new session', 120_000);
|
|
385
396
|
}
|
|
386
397
|
// Subscription-quota gate (S1) — only wired when the subscription-path
|
|
387
398
|
// reroute is active, so a peer-driven spawn can't exhaust the operator's
|
|
@@ -390,35 +401,31 @@ export class SpawnRequestManager {
|
|
|
390
401
|
if (this.#config.shouldSpawnSession) {
|
|
391
402
|
const quota = this.#config.shouldSpawnSession(request.priority);
|
|
392
403
|
if (!quota.allowed) {
|
|
393
|
-
|
|
394
|
-
this.#queueMessage(agent, request.context, request.pendingMessages?.[0]);
|
|
395
|
-
}
|
|
396
|
-
return {
|
|
397
|
-
approved: false,
|
|
398
|
-
reason: `Subscription quota gate: ${quota.reason}`,
|
|
399
|
-
retryAfterMs: 120_000,
|
|
400
|
-
};
|
|
404
|
+
return this.#refuseTransiently(request, `Subscription quota gate: ${quota.reason}`, 120_000);
|
|
401
405
|
}
|
|
402
406
|
}
|
|
407
|
+
// Cooldown can legitimately be configured to zero, so it cannot serve as
|
|
408
|
+
// the concurrency lock. Serialize per agent explicitly: otherwise two
|
|
409
|
+
// overlapping launches can snapshot and deliver the same backlog.
|
|
410
|
+
if (this.#spawnInflightByAgent.has(agent)) {
|
|
411
|
+
return this.#refuseTransiently(request, `Spawn already in flight for ${agent}`, 1_000);
|
|
412
|
+
}
|
|
413
|
+
// Stamp the current payload before the first await, but do not enqueue it
|
|
414
|
+
// yet: it is already present in the launch prompt. If launch fails, the
|
|
415
|
+
// exact reserved object is inserted by sequence, preserving both its
|
|
416
|
+
// original TTL and its position ahead of later concurrent arrivals.
|
|
417
|
+
const currentReservation = request.context
|
|
418
|
+
? this.#makeQueuedMessage(request.context, request.pendingMessages?.[0])
|
|
419
|
+
: undefined;
|
|
420
|
+
this.#spawnInflightByAgent.add(agent);
|
|
403
421
|
// §4.2: failure-suppressive reservation. Stamp `lastSpawnByAgent` BEFORE
|
|
404
422
|
// the async spawn, and do NOT roll back on failure. A peer that triggers
|
|
405
423
|
// fast-failing spawns still pays the cooldown.
|
|
406
424
|
this.#lastSpawnByAgent.set(agent, this.#nowFn());
|
|
407
|
-
|
|
408
|
-
// empties the queue here because the prompt has to carry the payloads, so a
|
|
409
|
-
// spawn that throws destroys them. That is a real defect, but the obvious fix
|
|
410
|
-
// — put them back in the catch — is UNSAFE against the real `spawnSession`
|
|
411
|
-
// implementation: SessionManager.spawnSession creates the live tmux session
|
|
412
|
-
// WITH the prompt, and only afterwards calls state.saveSession() outside any
|
|
413
|
-
// try/catch. A throw from that bookkeeping step means the payloads were
|
|
414
|
-
// already DELIVERED, so re-queueing them would deliver the same instruction
|
|
415
|
-
// to a second live session. Restoring here would trade a rare lost message
|
|
416
|
-
// for a rare duplicated one, which is worse — a duplicate can act twice.
|
|
417
|
-
// The prerequisite is making spawnSession stop reporting failure once the
|
|
418
|
-
// session is live and holding the prompt. Tracked: CMT-1114.
|
|
425
|
+
let queuedSnapshot = [];
|
|
419
426
|
try {
|
|
420
|
-
|
|
421
|
-
const prompt = this.#buildSpawnPrompt(request,
|
|
427
|
+
queuedSnapshot = this.#snapshotQueue(agent);
|
|
428
|
+
const prompt = this.#buildSpawnPrompt(request, queuedSnapshot);
|
|
422
429
|
const spawned = await this.#config.spawnSession(prompt, {
|
|
423
430
|
model: request.suggestedModel,
|
|
424
431
|
maxDurationMinutes: request.suggestedMaxDuration,
|
|
@@ -433,6 +440,10 @@ export class SpawnRequestManager {
|
|
|
433
440
|
// Undefined on every non-warm spawn → headless behavior unchanged.
|
|
434
441
|
interactive: request.interactive,
|
|
435
442
|
});
|
|
443
|
+
// spawnSession's contract is now delivery-truthful: resolution means the
|
|
444
|
+
// prompt reached a live session. Remove only the entries in this prompt;
|
|
445
|
+
// messages arriving while spawnSession was in flight remain queued.
|
|
446
|
+
this.#commitQueueSnapshot(agent, queuedSnapshot);
|
|
436
447
|
// Accept both the legacy bare-id return and the {sessionId, tmuxSession}
|
|
437
448
|
// object form. The tmuxSession (when provided) is forwarded so callers
|
|
438
449
|
// (spawnNewThread) persist the REAL tmux name as the resume entry's
|
|
@@ -453,14 +464,10 @@ export class SpawnRequestManager {
|
|
|
453
464
|
catch (err) {
|
|
454
465
|
const cause = this.#classifyFailure(err);
|
|
455
466
|
this.#applyFailureAttribution(agent, cause);
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
approved: false,
|
|
461
|
-
reason: `Spawn failed (${cause}): ${err instanceof Error ? err.message : 'unknown error'}`,
|
|
462
|
-
retryAfterMs: 30_000,
|
|
463
|
-
};
|
|
467
|
+
return this.#refuseTransiently(request, `Spawn failed (${cause}): ${err instanceof Error ? err.message : 'unknown error'}`, 30_000, currentReservation);
|
|
468
|
+
}
|
|
469
|
+
finally {
|
|
470
|
+
this.#spawnInflightByAgent.delete(agent);
|
|
464
471
|
}
|
|
465
472
|
}
|
|
466
473
|
/**
|
|
@@ -518,6 +525,25 @@ export class SpawnRequestManager {
|
|
|
518
525
|
* global cap. (Per-agent truncation still queues the new entry.)
|
|
519
526
|
*/
|
|
520
527
|
#queueMessage(agent, context, threadId) {
|
|
528
|
+
return this.#admitQueuedMessage(agent, this.#makeQueuedMessage(context, threadId));
|
|
529
|
+
}
|
|
530
|
+
/**
|
|
531
|
+
* Construct queue metadata at message arrival rather than eventual
|
|
532
|
+
* admission. In-flight payloads use this to retain their original TTL and
|
|
533
|
+
* order if the launch fails after later messages have arrived.
|
|
534
|
+
*/
|
|
535
|
+
#makeQueuedMessage(context, threadId) {
|
|
536
|
+
return {
|
|
537
|
+
context,
|
|
538
|
+
threadId,
|
|
539
|
+
receivedAt: this.#nowFn(),
|
|
540
|
+
envelopeHash: computeEnvelopeHash({ context, threadId }),
|
|
541
|
+
drainAttempts: 0,
|
|
542
|
+
sequence: this.#nextQueueSequence++,
|
|
543
|
+
};
|
|
544
|
+
}
|
|
545
|
+
/** Admit a fully stamped payload while preserving monotonic arrival order. */
|
|
546
|
+
#admitQueuedMessage(agent, message) {
|
|
521
547
|
// §4.3 global cap: refuse new enqueues when total queued is at the
|
|
522
548
|
// global limit. Computed before any local mutation.
|
|
523
549
|
const maxGlobal = this.#config.maxGlobalQueued ?? DEFAULT_MAX_GLOBAL_QUEUED;
|
|
@@ -525,12 +551,37 @@ export class SpawnRequestManager {
|
|
|
525
551
|
for (const q of this.#pendingMessages.values())
|
|
526
552
|
totalQueued += q.length;
|
|
527
553
|
if (totalQueued >= maxGlobal) {
|
|
528
|
-
//
|
|
529
|
-
//
|
|
530
|
-
//
|
|
531
|
-
//
|
|
532
|
-
//
|
|
533
|
-
|
|
554
|
+
// A launch payload is stamped before its await and may be admitted only
|
|
555
|
+
// after a later in-flight refusal has filled the final slot. Preserve the
|
|
556
|
+
// bounded queue's chronological policy: an earlier reserved payload
|
|
557
|
+
// displaces the globally newest later arrival; an actually newer payload
|
|
558
|
+
// remains refused as before.
|
|
559
|
+
let newest;
|
|
560
|
+
for (const [queuedAgent, queued] of this.#pendingMessages) {
|
|
561
|
+
for (const entry of queued) {
|
|
562
|
+
if (!newest || entry.sequence > newest.entry.sequence) {
|
|
563
|
+
newest = { agent: queuedAgent, entry };
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
if (newest && message.sequence < newest.entry.sequence) {
|
|
568
|
+
const newestQueue = this.#pendingMessages.get(newest.agent);
|
|
569
|
+
const newestIndex = newestQueue?.indexOf(newest.entry) ?? -1;
|
|
570
|
+
if (newestQueue && newestIndex >= 0) {
|
|
571
|
+
newestQueue.splice(newestIndex, 1);
|
|
572
|
+
if (newestQueue.length === 0) {
|
|
573
|
+
this.#pendingMessages.delete(newest.agent);
|
|
574
|
+
}
|
|
575
|
+
this.#truncated.add(newest.agent);
|
|
576
|
+
totalQueued--;
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
if (totalQueued >= maxGlobal) {
|
|
581
|
+
// Mark the agent truncated before refusing. The preservation funnel does
|
|
582
|
+
// not surface this internal boolean, so without the marker a global-cap
|
|
583
|
+
// refusal would leave no trace. The per-agent cap below already sets it;
|
|
584
|
+
// this makes the global cap match.
|
|
534
585
|
this.#truncated.add(agent);
|
|
535
586
|
return false;
|
|
536
587
|
}
|
|
@@ -541,12 +592,19 @@ export class SpawnRequestManager {
|
|
|
541
592
|
}
|
|
542
593
|
const now = this.#nowFn();
|
|
543
594
|
const maxAge = _a.QUEUE_MAX_AGE_MS;
|
|
595
|
+
queue.sort((a, b) => a.sequence - b.sequence);
|
|
544
596
|
while (queue.length > 0 && now - queue[0].receivedAt > maxAge) {
|
|
545
597
|
queue.shift();
|
|
546
598
|
}
|
|
547
599
|
// §4.2 infra soft limiter + §4.3 truncation marker.
|
|
548
600
|
// Per-agent cap (degraded if soft-limited). Drop oldest on overflow.
|
|
549
601
|
const cap = this.effectiveMaxQueuedPerAgent(agent);
|
|
602
|
+
if (cap <= 0) {
|
|
603
|
+
// Defensive backstop for future cap sources; effective config currently
|
|
604
|
+
// floors degraded admission at one.
|
|
605
|
+
this.#truncated.add(agent);
|
|
606
|
+
return false;
|
|
607
|
+
}
|
|
550
608
|
let truncatedAny = false;
|
|
551
609
|
while (queue.length >= cap) {
|
|
552
610
|
queue.shift();
|
|
@@ -554,21 +612,22 @@ export class SpawnRequestManager {
|
|
|
554
612
|
}
|
|
555
613
|
if (truncatedAny)
|
|
556
614
|
this.#truncated.add(agent);
|
|
557
|
-
queue.push(
|
|
558
|
-
|
|
559
|
-
threadId,
|
|
560
|
-
receivedAt: now,
|
|
561
|
-
envelopeHash: computeEnvelopeHash({ context, threadId }),
|
|
562
|
-
drainAttempts: 0,
|
|
563
|
-
});
|
|
615
|
+
queue.push(message);
|
|
616
|
+
queue.sort((a, b) => a.sequence - b.sequence);
|
|
564
617
|
return true;
|
|
565
618
|
}
|
|
566
619
|
/** §4.3: returns true if this agent's queue was truncated since last drain. */
|
|
567
620
|
isTruncated(agent) {
|
|
568
621
|
return this.#truncated.has(agent);
|
|
569
622
|
}
|
|
570
|
-
/**
|
|
571
|
-
|
|
623
|
+
/**
|
|
624
|
+
* Snapshot the currently valid queue without removing it.
|
|
625
|
+
*
|
|
626
|
+
* The snapshot stays reserved while spawnSession is in flight. This prevents
|
|
627
|
+
* another sender from consuming the temporarily freed global capacity and
|
|
628
|
+
* preserves each entry's original TTL/order if launch fails.
|
|
629
|
+
*/
|
|
630
|
+
#snapshotQueue(agent) {
|
|
572
631
|
const queue = this.#pendingMessages.get(agent);
|
|
573
632
|
if (!queue || queue.length === 0) {
|
|
574
633
|
this.#truncated.delete(agent); // empty queue can't claim "truncated"
|
|
@@ -577,9 +636,36 @@ export class SpawnRequestManager {
|
|
|
577
636
|
const now = this.#nowFn();
|
|
578
637
|
const maxAge = _a.QUEUE_MAX_AGE_MS;
|
|
579
638
|
const valid = queue.filter(m => now - m.receivedAt < maxAge);
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
639
|
+
if (valid.length === 0) {
|
|
640
|
+
this.#pendingMessages.delete(agent);
|
|
641
|
+
this.#truncated.delete(agent);
|
|
642
|
+
return [];
|
|
643
|
+
}
|
|
644
|
+
if (valid.length !== queue.length) {
|
|
645
|
+
this.#pendingMessages.set(agent, valid);
|
|
646
|
+
}
|
|
647
|
+
return [...valid];
|
|
648
|
+
}
|
|
649
|
+
/**
|
|
650
|
+
* Commit exactly the queue entries included in a delivered prompt.
|
|
651
|
+
*
|
|
652
|
+
* Object identity is deliberate: entries appended while spawnSession awaited
|
|
653
|
+
* may carry identical content/hash but represent separate inbound messages.
|
|
654
|
+
*/
|
|
655
|
+
#commitQueueSnapshot(agent, delivered) {
|
|
656
|
+
if (delivered.length === 0)
|
|
657
|
+
return;
|
|
658
|
+
const queue = this.#pendingMessages.get(agent);
|
|
659
|
+
if (!queue || queue.length === 0)
|
|
660
|
+
return;
|
|
661
|
+
const deliveredEntries = new Set(delivered);
|
|
662
|
+
const remaining = queue.filter((entry) => !deliveredEntries.has(entry));
|
|
663
|
+
if (remaining.length === 0) {
|
|
664
|
+
this.#pendingMessages.delete(agent);
|
|
665
|
+
this.#truncated.delete(agent);
|
|
666
|
+
return;
|
|
667
|
+
}
|
|
668
|
+
this.#pendingMessages.set(agent, remaining);
|
|
583
669
|
}
|
|
584
670
|
/** Get count of queued messages for an agent (for monitoring) */
|
|
585
671
|
getQueuedCount(agent) {
|
|
@@ -762,7 +848,7 @@ export class SpawnRequestManager {
|
|
|
762
848
|
maxDrainsPerTick: this.#config.maxDrainsPerTick ?? DRAIN_MAX_PER_TICK_DEFAULT,
|
|
763
849
|
maxEnvelopeBytes: this.#config.maxEnvelopeBytes ?? DEFAULT_MAX_ENVELOPE_BYTES,
|
|
764
850
|
maxGlobalQueued: this.#config.maxGlobalQueued ?? DEFAULT_MAX_GLOBAL_QUEUED,
|
|
765
|
-
degradedMaxQueuedPerAgent: this.#config.degradedMaxQueuedPerAgent ?? DEGRADED_MAX_QUEUED_PER_AGENT_DEFAULT,
|
|
851
|
+
degradedMaxQueuedPerAgent: Math.max(1, this.#config.degradedMaxQueuedPerAgent ?? DEGRADED_MAX_QUEUED_PER_AGENT_DEFAULT),
|
|
766
852
|
drainTickMs: this.getDrainTickMs(),
|
|
767
853
|
};
|
|
768
854
|
}
|
|
@@ -784,7 +870,7 @@ export class SpawnRequestManager {
|
|
|
784
870
|
['maxDrainsPerTick', v => v >= 1 && Number.isFinite(v) && Number.isInteger(v)],
|
|
785
871
|
['maxEnvelopeBytes', v => v >= 1 && Number.isFinite(v) && Number.isInteger(v)],
|
|
786
872
|
['maxGlobalQueued', v => v >= 0 && Number.isFinite(v) && Number.isInteger(v)],
|
|
787
|
-
['degradedMaxQueuedPerAgent', v => v >=
|
|
873
|
+
['degradedMaxQueuedPerAgent', v => v >= 1 && Number.isFinite(v) && Number.isInteger(v)],
|
|
788
874
|
];
|
|
789
875
|
for (const [k, ok] of validators) {
|
|
790
876
|
const v = patch[k];
|
|
@@ -820,6 +906,8 @@ export class SpawnRequestManager {
|
|
|
820
906
|
this.#drainAttempts.clear();
|
|
821
907
|
this.#infraFailureWindow.clear();
|
|
822
908
|
this.#truncated.clear();
|
|
909
|
+
this.#spawnInflightByAgent.clear();
|
|
910
|
+
this.#nextQueueSequence = 0;
|
|
823
911
|
}
|
|
824
912
|
}
|
|
825
913
|
_a = SpawnRequestManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpawnRequestManager.js","sourceRoot":"","sources":["../../src/messaging/SpawnRequestManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SpawnRequestManager.js","sourceRoot":"","sources":["../../src/messaging/SpawnRequestManager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./builtin-manifest.schema.json",
|
|
3
3
|
"schemaVersion": 1,
|
|
4
|
-
"generatedAt": "2026-07-
|
|
5
|
-
"instarVersion": "1.3.
|
|
4
|
+
"generatedAt": "2026-07-30T17:43:36.323Z",
|
|
5
|
+
"instarVersion": "1.3.1075",
|
|
6
6
|
"entryCount": 202,
|
|
7
7
|
"entries": {
|
|
8
8
|
"hook:session-start": {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- assembled-by: assemble-next-md -->
|
|
4
|
+
<!-- bump: patch -->
|
|
5
|
+
|
|
6
|
+
## What Changed
|
|
7
|
+
|
|
8
|
+
Starting a project round could kill the whole agent server instead of failing the round.
|
|
9
|
+
|
|
10
|
+
The round launches a background `claude` session. The agent server is started at login, so
|
|
11
|
+
its search path excludes the directory where `claude` actually lives on nvm/asdf-managed
|
|
12
|
+
hosts. A launch that cannot find the binary reports an `'error'` event — never `'exit'` —
|
|
13
|
+
and nothing was listening, so Node escalated it to a process-level uncaught exception. The
|
|
14
|
+
server died and auto-restarted, leaving the round marked "not started" with nothing recorded
|
|
15
|
+
to explain it.
|
|
16
|
+
|
|
17
|
+
Two fixes at the one call site:
|
|
18
|
+
|
|
19
|
+
1. The binary is resolved via the existing `detectClaudePath()` / `detectFrameworkBinary`
|
|
20
|
+
helper, which already scans npm-global, Homebrew, nvm, asdf and PATH, and is already used
|
|
21
|
+
by five other files. This call site simply was not using it.
|
|
22
|
+
2. A failure to start is now handled and recorded as a round failure whose reason names the
|
|
23
|
+
cause. It deliberately does not consume a resume attempt — retrying a binary that is not
|
|
24
|
+
there cannot succeed, and "attempts exhausted" would be a true-sounding but wrong reason.
|
|
25
|
+
|
|
26
|
+
The process-level crash policy is unchanged and untouched. It is correct to crash on an
|
|
27
|
+
unrecognised exception; the defect was an unattended launch, not the backstop.
|
|
28
|
+
|
|
29
|
+
## What to Tell Your User
|
|
30
|
+
|
|
31
|
+
If a project round ever seemed to do nothing — the round stayed "not started" and your agent
|
|
32
|
+
appeared to restart itself around the same moment — this is why. The round was trying to
|
|
33
|
+
launch a background session, could not find the program, and that took the whole server down
|
|
34
|
+
instead of failing the round.
|
|
35
|
+
|
|
36
|
+
Two things are better now. The launch looks in the places the program is actually installed,
|
|
37
|
+
rather than only the short list a login-started service inherits. And if a launch still
|
|
38
|
+
cannot happen, you get a round marked failed with a reason that says so, instead of a silent
|
|
39
|
+
restart and a round that looks untouched.
|
|
40
|
+
|
|
41
|
+
Nothing is required of you and no setting changed.
|
|
42
|
+
|
|
43
|
+
## Summary of New Capabilities
|
|
44
|
+
|
|
45
|
+
No new capability. This removes a crash and replaces a silent non-event with a recorded,
|
|
46
|
+
readable failure reason.
|
|
47
|
+
|
|
48
|
+
## Evidence
|
|
49
|
+
|
|
50
|
+
Tests launch a genuinely nonexistent binary, so the ENOENT is real rather than mocked.
|
|
51
|
+
|
|
52
|
+
- Against the pre-change source: **3 failed / 9 passed**, and the run reports three
|
|
53
|
+
`Uncaught Exception: spawn … ENOENT` — the same crash observed twice in production on
|
|
54
|
+
2026-07-30.
|
|
55
|
+
- Against the fixed source: **12 passed / 12**.
|
|
56
|
+
- A fourth test (ordinary non-zero exit still exhausts resumes) passes on both revisions and
|
|
57
|
+
is labelled CONTROL rather than counted as evidence.
|
|
58
|
+
- Run duration fell 48s → 18s, because the unfixed version waited on exits that could never
|
|
59
|
+
arrive — the second, quieter half of the same defect.
|
|
60
|
+
|
|
61
|
+
`tsc` clean on both changed files.
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- assembled-by: assemble-next-md -->
|
|
4
|
+
<!-- bump: patch -->
|
|
5
|
+
|
|
6
|
+
## What Changed
|
|
7
|
+
|
|
8
|
+
Every retryable refusal in `SpawnRequestManager` now passes through one preservation funnel before it returns. Cooldown, session-cap, memory-pressure, subscription-quota, and real pre-delivery launch failures keep their exact existing verdicts and retry intervals; the difference is that their inbound context is admitted to the existing retry queue rather than relying on branch authors to remember the same bookkeeping.
|
|
9
|
+
|
|
10
|
+
The launch path is now transactional around queued messages. It snapshots the backlog for the outgoing prompt but leaves those entries in the queue until `spawnSession` confirms delivery. A launch rejection leaves the backlog's original timestamps and order untouched, and the current refused payload joins it using the timestamp and sequence reserved when launch began. If a later arrival filled the final global queue slot while launch awaited, chronological reconciliation evicts that globally newest arrival for the earlier reservation while keeping the configured bound. A successful launch removes only the exact snapshot it delivered, so messages arriving during launch remain queued.
|
|
11
|
+
|
|
12
|
+
A per-agent in-flight reservation prevents two overlapping launches from delivering the same backlog when cooldown is zero. Degraded queue admission also floors legacy zero-cap configuration at one bounded slot, preventing the former non-terminating overflow loop.
|
|
13
|
+
|
|
14
|
+
A private branded TypeScript result makes direct retryable returns fail compilation; an AST ratchet pins the public method to that typed implementation, permits retryable call returns only from `#refuseTransiently`, and forbids branded casts elsewhere in the class. A mutation regression proves an `any`-returning helper cannot bypass the rule. The same test verifies the production server constructs this guarded class, starts the drain loop, passes that exact instance to `ThreadlineRouter` and `AgentServer`, and disposes it at shutdown.
|
|
15
|
+
|
|
16
|
+
## What to Tell Your User
|
|
17
|
+
|
|
18
|
+
Temporary worker-start failures no longer eat agent-to-agent messages. A refused message waits for the next delivery attempt, and this is now enforced across the whole class rather than repaired one branch at a time.
|
|
19
|
+
|
|
20
|
+
## Summary of New Capabilities
|
|
21
|
+
|
|
22
|
+
No new user-facing capability, endpoint, flag, or configuration. This is a reliability invariant and CI regression guard for existing Threadline delivery.
|
|
23
|
+
|
|
24
|
+
## Evidence
|
|
25
|
+
|
|
26
|
+
- Every new regression ran on the unfixed source first and failed for the intended reasons:
|
|
27
|
+
- the real launch-failure regression found zero retained payloads where two were required;
|
|
28
|
+
- the class ratchet found five retryable returns bypassing a preservation funnel.
|
|
29
|
+
- reviewer-strengthened checks exposed reordered concurrent arrivals, duplicate overlapping launch admission, the zero-cap loop precondition, and the missing typed guard.
|
|
30
|
+
- re-review-strengthened checks exposed final-slot global-cap loss of the earlier reservation and an `any`-helper bypass of the first branded ratchet.
|
|
31
|
+
- Fixed focused run: 89/89 tests.
|
|
32
|
+
- Adjacent subscription-quota, Threadline, relay, admission, and messaging-route run: 166/166 tests.
|
|
33
|
+
- `npm run lint`, including TypeScript typecheck and the full lint chain: pass.
|
|
34
|
+
- Production wiring assertions cover constructor, router/server handoff, drain-loop start, and shutdown disposal.
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# Side-effects review — project round spawn guard
|
|
2
|
+
|
|
3
|
+
Change: `ProjectRoundExecution` resolves the autonomous binary via the existing
|
|
4
|
+
`detectClaudePath()` and handles the `'error'` event a failed spawn emits, recording a
|
|
5
|
+
round failure instead of crashing the agent server.
|
|
6
|
+
|
|
7
|
+
Related prior art: **ACT-1269** (2026-07-25, still pending) — same ENOENT class in the same
|
|
8
|
+
subsystem, different binary (`gh`). **CMT-513** (delivered 2026-05-25) — an uncaught
|
|
9
|
+
exception that crashed the whole server, i.e. the class has history.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 1. Over-block — what legitimate inputs does this reject that it shouldn't?
|
|
14
|
+
|
|
15
|
+
**None identified, and the risk direction is checked.** The new branch fires only on a
|
|
16
|
+
`'error'` event from `spawn`, which is emitted exclusively when the child fails to START
|
|
17
|
+
(ENOENT, EACCES, EPERM). It cannot fire for a child that started and exited non-zero — that
|
|
18
|
+
path still runs the pre-existing resume logic, and a CONTROL test asserts it.
|
|
19
|
+
|
|
20
|
+
The binary resolution is `input.spawnCommand ?? detectClaudePath() ?? 'claude'`. An injected
|
|
21
|
+
`spawnCommand` (every test, and any future caller) is untouched, and the final fallback is
|
|
22
|
+
the previous literal, so a host where detection legitimately finds nothing behaves exactly
|
|
23
|
+
as before rather than failing earlier than it used to.
|
|
24
|
+
|
|
25
|
+
## 2. Under-block — what failure modes does this still miss?
|
|
26
|
+
|
|
27
|
+
**Named rather than glossed:**
|
|
28
|
+
- A child that starts successfully and then hangs forever is NOT covered here. The existing
|
|
29
|
+
poll loop handles halt/set-change, but there is no wall-clock ceiling on a running child.
|
|
30
|
+
Out of scope; not introduced by this change.
|
|
31
|
+
- A child that starts and immediately exits non-zero still consumes resume attempts, which
|
|
32
|
+
is correct — that IS a "started and failed" case.
|
|
33
|
+
- ACT-1269's `gh` ENOENT is a DIFFERENT call site in a different layer and is **not** fixed
|
|
34
|
+
here. This change does not close that action, and I am not claiming it does.
|
|
35
|
+
|
|
36
|
+
## 3. Level-of-abstraction fit
|
|
37
|
+
|
|
38
|
+
**Right layer, and I checked whether a higher one should own it.**
|
|
39
|
+
The obvious alternative was to add ENOENT to `uncaughtExceptionPolicy`'s survivable
|
|
40
|
+
allowlist. **Rejected on the module's own stated reasoning**: it crashes by default because
|
|
41
|
+
an unknown exception is not safe to swallow, keeps its list deliberately tight, and says in
|
|
42
|
+
place that it is *"the crash backstop, NOT a license to skip the catch — the first-seen-stack
|
|
43
|
+
logging still surfaces the un-guarded callsite so the real missing `.catch` gets fixed."*
|
|
44
|
+
Widening that allowlist would have degraded a deliberately-tight safety boundary to quiet one
|
|
45
|
+
callsite's bug. The policy is correct; the callsite was wrong.
|
|
46
|
+
|
|
47
|
+
Binary resolution likewise belongs in `Config.detectFrameworkBinary`, where it already lives
|
|
48
|
+
and is already used by five other files — not re-implemented here.
|
|
49
|
+
|
|
50
|
+
## 4. Signal vs authority compliance
|
|
51
|
+
|
|
52
|
+
Compliant. This adds no new blocking authority. It converts an unhandled process-level event
|
|
53
|
+
into a **recorded round outcome** — strictly more information, strictly less destructive. The
|
|
54
|
+
crash-vs-continue authority remains entirely with `uncaughtExceptionPolicy`, untouched.
|
|
55
|
+
|
|
56
|
+
## 5. Interactions — shadowing, double-fire, races
|
|
57
|
+
|
|
58
|
+
- **Two `'error'` listeners are attached deliberately** (one at the spawn site for the
|
|
59
|
+
never-crash guarantee, one in the waiter for control flow). Node invokes all listeners; the
|
|
60
|
+
first prevents the throw, the second drives the outcome. Not a double-fire: they have
|
|
61
|
+
different jobs and the outcome is produced once.
|
|
62
|
+
- **An error that fires BEFORE the waiter attaches** is covered — the waiter checks the
|
|
63
|
+
spawn-site capture first and returns immediately. Without that check there is a real
|
|
64
|
+
ordering window.
|
|
65
|
+
- **No interaction with the halt path**: a halted round returns before the spawn-failure
|
|
66
|
+
branch is reachable, and halt is checked first in the loop.
|
|
67
|
+
- **`killProcessGroup` is not called** on a spawn failure — correct, since there is no process
|
|
68
|
+
group to kill; calling it would be a no-op at best.
|
|
69
|
+
|
|
70
|
+
## 6. External surfaces
|
|
71
|
+
|
|
72
|
+
**One, and it is operator-visible: the round's recorded `reason` string changes** for this
|
|
73
|
+
failure mode, from (previously) nothing at all — because the server died before writing — to
|
|
74
|
+
a sentence naming the spawn error.
|
|
75
|
+
|
|
76
|
+
Node's spawn error text already embeds the binary name (`spawn claude ENOENT`), so the reason
|
|
77
|
+
is diagnostic without plumbing the resolved absolute path through — which would risk leaking
|
|
78
|
+
an absolute home directory into an operator-facing record. That was a deliberate choice, made
|
|
79
|
+
after writing the interpolation and removing it.
|
|
80
|
+
|
|
81
|
+
No API shape change, no new config key, no new route. No CLAUDE.md update proposed: this adds
|
|
82
|
+
no capability an agent should newly reach for — it removes a crash.
|
|
83
|
+
|
|
84
|
+
*(Explicitly checked, because my own 07-30 review of a different change answered this section
|
|
85
|
+
"None. no external surface" and was wrong — a deploy path was an external surface. Here the
|
|
86
|
+
question was asked as "what else consumes this?" rather than "does the other tool read it?")*
|
|
87
|
+
|
|
88
|
+
## 7. Multi-machine posture (Cross-Machine Coherence)
|
|
89
|
+
|
|
90
|
+
**Machine-local BY DESIGN, and the reason is intrinsic rather than an omission.** Binary
|
|
91
|
+
resolution answers "where is this program on THIS filesystem" — there is no coherent unified
|
|
92
|
+
value across machines, and a replicated answer would be actively wrong (the Mini resolves
|
|
93
|
+
`claude` under nvm; another host may use Homebrew or asdf). The existing
|
|
94
|
+
`detectFrameworkBinary` memo is per-process for the same reason.
|
|
95
|
+
|
|
96
|
+
The round outcome it produces is already per-project state written through
|
|
97
|
+
`InitiativeTracker`, whose replication posture this change does not alter.
|
|
98
|
+
|
|
99
|
+
## 8. Rollback cost
|
|
100
|
+
|
|
101
|
+
**Low, and the lever is real rather than assumed.** The change is two edits in one file plus
|
|
102
|
+
one import. Reverting the commit restores prior behaviour exactly; there is no migration, no
|
|
103
|
+
persisted new field, and no config key to unset.
|
|
104
|
+
|
|
105
|
+
A partial rollback is also available and safe: keeping the `'error'` handler while reverting
|
|
106
|
+
the resolution (or vice versa) leaves a coherent system, because the two halves are
|
|
107
|
+
independent — one prevents a crash, the other makes the launch more likely to succeed.
|
|
108
|
+
|
|
109
|
+
**Confidence stated honestly:** the crash and the hang are both reproduced by tests that fail
|
|
110
|
+
on the pre-change source, so the failure mode is verified rather than reasoned. What is NOT
|
|
111
|
+
verified is production behaviour on a host where detection returns a path that exists but is
|
|
112
|
+
not executable — the handler covers it by construction (EACCES is also an `'error'` event),
|
|
113
|
+
but no test exercises that specific errno.
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
# Side-Effects Review — transient spawn refusal class guard
|
|
2
|
+
|
|
3
|
+
**Version / slug:** `spawn-transient-refusal-class-guard`
|
|
4
|
+
**Date:** `2026-07-30`
|
|
5
|
+
**Author:** `instar-codey`
|
|
6
|
+
**Second-pass reviewer:** `Locke (independent Codex review)`
|
|
7
|
+
|
|
8
|
+
## Summary of the change
|
|
9
|
+
|
|
10
|
+
`SpawnRequestManager.evaluate()` now delegates to a privately typed `#evaluateGuarded` implementation. Every retryable refusal in that implementation must satisfy a branded result type that only `#refuseTransiently` constructs; the funnel admits the current context to the existing bounded queue before returning the original denial. The spawn path snapshots queued entries without deleting them, passes that snapshot into the prompt, and commits only those exact object identities after `spawnSession` resolves. A real pre-delivery launch rejection therefore leaves the old backlog intact and queues the current request with its launch-start timestamp and sequence. If a later arrival occupied the final global slot during the await, global admission reconciles by sequence and displaces the globally newest later entry for the earlier reservation without exceeding the bound. A per-agent in-flight reservation prevents overlapping launches from delivering one snapshot twice. `tests/unit/spawn-request-manager-class-guard.test.ts` pins the public method to the typed implementation, permits call returns only from the preservation funnel, forbids branded casts elsewhere in the class, exercises an `any`-helper mutation, and checks the production server constructs, starts, routes, exposes, and disposes this exact manager.
|
|
11
|
+
|
|
12
|
+
Files touched:
|
|
13
|
+
|
|
14
|
+
- `src/messaging/SpawnRequestManager.ts` — typed preservation funnel, transactional queue snapshot/commit, sequence reservation, and per-agent in-flight serialization.
|
|
15
|
+
- `tests/unit/spawn-request-manager.test.ts` — real pre-delivery failure, ordering/TTL, overlap, final-global-slot reconciliation, and zero-cap regressions.
|
|
16
|
+
- `tests/unit/spawn-request-manager-class-guard.test.ts` — class-wide AST ratchet and production-wiring proof.
|
|
17
|
+
- `docs/specs/spawn-transient-refusal-class-guard.eli16.md` — Tier-1 plain-English review surface.
|
|
18
|
+
- `upgrades/next/spawn-transient-refusal-class-guard.md` — release fragment.
|
|
19
|
+
|
|
20
|
+
## Decision-point inventory
|
|
21
|
+
|
|
22
|
+
- `SpawnRequestManager.evaluate()` admission checks — **pass-through** — cooldown, session cap, memory pressure, subscription quota, and launch-failure predicates/verdicts are unchanged.
|
|
23
|
+
- `#refuseTransiently()` — **add** — mechanical postcondition for an already-made retryable decision; it has no authority to classify a request or relax a gate.
|
|
24
|
+
- `#spawnInflightByAgent` — **add** — a mechanical per-agent mutex after all admission decisions, preventing duplicate delivery without changing who may eventually spawn.
|
|
25
|
+
- queue snapshot commit after `spawnSession` resolution — **modify** — removes only payloads whose prompt has been reported delivered.
|
|
26
|
+
- degraded queue cap normalization — **modify** — stale constructor value zero is floored to one and new runtime updates reject zero, preventing a non-terminating overflow loop.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 1. Over-block
|
|
31
|
+
|
|
32
|
+
No admission authority changes. Every pre-existing refusal returns the same `approved`, `reason`, and `retryAfterMs` values as before. An overlapping same-agent launch is now serialized with a retryable refusal; without this mechanical lock, cooldown zero allowed both attempts to deliver the same queued instructions.
|
|
33
|
+
|
|
34
|
+
The existing global/per-agent queue bounds still apply. Ordinary new arrivals at the global cap are refused and set the existing truncation marker. The only reconciliation case is a payload stamped earlier but admitted later because its launch was in flight: it displaces the globally newest later entry, marks that entry's agent truncated, and leaves total depth unchanged. This preserves chronological priority without weakening the ceiling.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## 2. Under-block
|
|
39
|
+
|
|
40
|
+
This guard defines “retryable” mechanically as a `SpawnResult` carrying `retryAfterMs`. The private brand and guarded return union make a new retryable result fail type-checking unless it uses the funnel. The AST half constrains every guarded return to either a final literal result or a direct `this.#refuseTransiently` call, forbids assertions inside the guarded method, and permits branded casts across the class only at the funnel's single construction point. A mutation test injects an `any`-returning private helper and proves the ratchet rejects it. A future refusal that is conceptually temporary and omits `retryAfterMs` would still be treated as permanent; reviewers must ensure temporary decisions expose retry semantics.
|
|
41
|
+
|
|
42
|
+
The queue remains process-local and a server restart can still lose admitted entries. That is tracked as `CMT-1112`; the current change closes branch drift, not persistence. <!-- tracked: CMT-1112 -->
|
|
43
|
+
|
|
44
|
+
The remote sender is not yet given an end-to-end receipt distinguishing “spawned now” from “accepted into retry queue” or “queue cap refused admission.” That contract correction is tracked as `CMT-1111`. <!-- tracked: CMT-1111 -->
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 3. Level-of-abstraction fit
|
|
49
|
+
|
|
50
|
+
The invariant belongs inside `SpawnRequestManager`, the one class that owns all five retryable outcomes and the queue they must feed. Putting it in `ThreadlineRouter` would require the router to reinterpret reason strings and duplicate admission knowledge. Putting it in each detector repeats the defect: another branch can forget.
|
|
51
|
+
|
|
52
|
+
The compiler brand is intentionally class-scoped and is the non-bypassable enforcement. The AST ratchet pins the production method shape and blocks casts around that brand, while ordinary behavioral tests prove the funnel actually preserves and later drains content.
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## 4. Signal vs authority compliance
|
|
57
|
+
|
|
58
|
+
**Required reference:** [docs/signal-vs-authority.md](../../docs/signal-vs-authority.md)
|
|
59
|
+
|
|
60
|
+
- [x] No — this change has no new block/allow surface.
|
|
61
|
+
|
|
62
|
+
Cooldown, session-count, memory-pressure, subscription-quota, and launch-result producers remain the existing authorities. `#refuseTransiently` consumes their already-final denial and performs deterministic storage bookkeeping. The AST test is a development-time structural validator, not a runtime message classifier and not a competing authority.
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## 4b. Judgment-point check (Judgment Within Floors standard)
|
|
67
|
+
|
|
68
|
+
No new static heuristic appears at a competing-signals decision point. “A result containing `retryAfterMs` must use the preservation funnel” is an enumerable transport invariant, analogous to an idempotency-key requirement. It does not judge message meaning, urgency, or user intent.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## 5. Interactions
|
|
73
|
+
|
|
74
|
+
- **Shadowing:** the funnel runs only after an existing authority has denied. It cannot prevent later checks from running because those branches already returned at the same points.
|
|
75
|
+
- **Double-fire:** pre-spawn branches queue the current payload once through the funnel. The launch branch snapshots existing entries without removing them; success commits the snapshot, while rejection queues only the current payload. The per-agent in-flight set prevents a second launch from snapshotting the same backlog before the first commits.
|
|
76
|
+
- **Races:** `spawnSession` is awaited, so another inbound request can enqueue while launch is in flight. The old destructive drain temporarily freed capacity and could lose ordering. The new queue snapshot retains old entries in place; success removes snapshot entries by object identity, leaving concurrently appended entries even when their content/hash matches. On failure, the reserved current payload is inserted by its launch-start sequence, ahead of later arrivals.
|
|
77
|
+
- **TTL:** failed launch does not recreate backlog entries. The current request receives its `receivedAt` timestamp before the launch await, so a slow failure cannot extend its ten-minute lifetime.
|
|
78
|
+
- **Global capacity:** a reserved payload is not counted while already present in an in-flight launch prompt. If its launch fails after a later arrival fills the last slot, sequence reconciliation evicts only the globally newest later entry and admits the earlier reservation. This is bounded oldest-first retention, not extra capacity.
|
|
79
|
+
- **Truncation:** a successful snapshot commit clears the truncation marker only if no entries remain. A concurrent remainder retains its marker.
|
|
80
|
+
- **Drain loop:** `runTick` already prevents overlapping ticks with `#tickInflight`. The production `onDrainReady` callback calls the same guarded `evaluate()` method.
|
|
81
|
+
- **Zero cap:** legacy `degradedMaxQueuedPerAgent: 0` previously made `while (queue.length >= cap)` infinite even for an empty queue. Effective admission now floors it to one, and live config updates reject zero.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 6. External surfaces
|
|
86
|
+
|
|
87
|
+
Other agents observe no new response fields and no changed denial copy. The visible improvement is behavioral: a message refused under a temporary condition remains available for retry, including when the worker process itself failed before delivery.
|
|
88
|
+
|
|
89
|
+
No endpoint, configuration key, dashboard control, URL, database, or external service integration is added. Queue timing remains dependent on existing cooldown and drain cadence.
|
|
90
|
+
|
|
91
|
+
No operator-facing actions are introduced.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## 6b. Operator-surface quality (Operator-Surface Quality standard)
|
|
96
|
+
|
|
97
|
+
No operator surface — not applicable.
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## 7. Multi-machine posture (Cross-Machine Coherence)
|
|
102
|
+
|
|
103
|
+
**Machine-local BY DESIGN.** Spawn admission and the pending queue belong to the machine that received the inbound dispatch and is responsible for starting the local worker. This change neither creates nor changes topic placement, replicated records, or pool routing. The class guard applies identically in every installed copy.
|
|
104
|
+
|
|
105
|
+
The process-local queue is not durable across restart; that separate persistence gap is tracked as `CMT-1112`. <!-- tracked: CMT-1112 -->
|
|
106
|
+
|
|
107
|
+
This change emits no user-facing notices, creates no URLs, and adds no durable state that could strand during topic transfer.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 8. Rollback cost
|
|
112
|
+
|
|
113
|
+
- **Hot-fix release:** revert the single code/test/docs commit and ship the next patch.
|
|
114
|
+
- **Data migration:** none.
|
|
115
|
+
- **Agent state repair:** none; the queue schema and persisted state are unchanged.
|
|
116
|
+
- **User visibility:** rollback would reopen the pre-delivery spawn-failure loss and remove the structural CI ratchet.
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## Conclusion
|
|
121
|
+
|
|
122
|
+
The side-effects pass changed the initial implementation materially. Re-enqueueing drained messages would have reset their TTL and reordered them behind messages arriving during the launch await. The first independent pass then found four further gaps: overlapping same-agent launches could duplicate the snapshot; the current failed payload could sort behind a later arrival; a zero degraded cap could loop forever; and a raw AST text rule could be bypassed. The second independent pass found two more: the earlier reservation could still lose to a later arrival at the global cap, and an `any`-returning helper outside the guarded method could evade the branded boundary. The final design adds per-agent serialization, launch-start sequence/TTL reservation, chronological global-cap reconciliation, a one-slot degraded floor, and a compiler-enforced private brand with whole-class cast and guarded-return constraints. Existing admission authorities remain intact. Independent re-review concurs; this is clear to ship.
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## Second-pass review
|
|
127
|
+
|
|
128
|
+
**Reviewer:** Locke
|
|
129
|
+
**First verdict:** CONCERN
|
|
130
|
+
|
|
131
|
+
The first pass requested four concrete repairs: serialize same-agent launches; preserve the current payload's launch-start order and TTL across failure; make zero degraded capacity terminate safely; and replace the bypassable raw AST rule with a compiler-enforced return boundary plus stronger production wiring assertions. All four were reproduced with tests that failed against the then-current implementation before the fixes were written.
|
|
132
|
+
|
|
133
|
+
**Second verdict:** CONCERN
|
|
134
|
+
|
|
135
|
+
The re-review found a cap-one race where a later in-flight refusal could occupy the sole global slot before the earlier launch failed, causing the earlier reservation to be dropped. It also demonstrated that an `any`-returning helper outside `#evaluateGuarded` could evade the first AST rule. Both exact reproductions failed before their repairs: the recovered prompt contained only the later payload, and the mutation produced zero violations. The implementation now reconciles full global capacity by sequence and the ratchet constrains guarded return shapes plus branded casts across the class.
|
|
136
|
+
|
|
137
|
+
**Final verdict:** CONCUR
|
|
138
|
+
|
|
139
|
+
Locke re-read the final diff and this artifact, reran the focused 89-test suite, and confirmed both later concerns plus all four earlier concerns are closed. The production constructor, `ThreadlineRouter`/`AgentServer` handoffs, start, and dispose links are real and structurally pinned. No actionable correctness concern remains.
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Evidence pointers
|
|
144
|
+
|
|
145
|
+
- Initial failing-before runtime result: expected queue depth `2`, received `0`.
|
|
146
|
+
- Initial failing-before class ratchet: direct retryable result construction at five lines in the unfixed class.
|
|
147
|
+
- Reviewer-strengthened failing-before result: four failures — ordering, overlapping admission, zero-cap effective value, and missing typed guard.
|
|
148
|
+
- Re-review-strengthened failing-before result: two failures — final-slot loss of the earlier reservation and undetected `any`-helper indirection.
|
|
149
|
+
- Fixed focused run: 89/89.
|
|
150
|
+
- Adjacent quota/router/admission/integration run: 166/166.
|
|
151
|
+
- Full TypeScript and 33-step lint chain: pass after reviewer repairs.
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## Class-Closure Declaration (display-only mirror)
|
|
156
|
+
|
|
157
|
+
No agent-authored-artifact defect — not applicable. The defect is in hand-written TypeScript, not an LLM prompt, hook, config, skill, or standards text, and this change does not add a new self-triggered controller. The existing bounded drain controller is unchanged. Separately, this PR itself supplies the missing runtime/CI class guard: `#refuseTransiently` plus `tests/unit/spawn-request-manager-class-guard.test.ts` catch direct retryable returns, indirect helper returns, and branded casts outside the one construction point.
|