@cleocode/core 2026.10.25 → 2026.10.26

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 (198) hide show
  1. package/dist/build-provenance.json +2 -2
  2. package/dist/dispatch/contracts/output-contracts.d.ts +13 -0
  3. package/dist/dispatch/contracts/output-contracts.d.ts.map +1 -1
  4. package/dist/dispatch/contracts/output-contracts.js +29 -0
  5. package/dist/dispatch/contracts/output-contracts.js.map +1 -1
  6. package/dist/docs/docs-ops.d.ts +8 -0
  7. package/dist/docs/docs-ops.d.ts.map +1 -1
  8. package/dist/docs/docs-ops.js +24 -1
  9. package/dist/docs/docs-ops.js.map +1 -1
  10. package/dist/docs/docs-update.d.ts +8 -5
  11. package/dist/docs/docs-update.d.ts.map +1 -1
  12. package/dist/docs/docs-update.js +16 -5
  13. package/dist/docs/docs-update.js.map +1 -1
  14. package/dist/gateway-client/generated/types.gen.d.ts +27 -0
  15. package/dist/gateway-client/generated/types.gen.d.ts.map +1 -1
  16. package/dist/hooks/handlers/watchdog-hooks.d.ts.map +1 -1
  17. package/dist/hooks/handlers/watchdog-hooks.js +5 -0
  18. package/dist/hooks/handlers/watchdog-hooks.js.map +1 -1
  19. package/dist/internal.d.ts +3 -2
  20. package/dist/internal.d.ts.map +1 -1
  21. package/dist/internal.js +5 -2
  22. package/dist/internal.js.map +1 -1
  23. package/dist/lifecycle/verification/satisfies-validator.d.ts.map +1 -1
  24. package/dist/lifecycle/verification/satisfies-validator.js +22 -10
  25. package/dist/lifecycle/verification/satisfies-validator.js.map +1 -1
  26. package/dist/memory/brain-writer-thread.d.ts +30 -0
  27. package/dist/memory/brain-writer-thread.d.ts.map +1 -1
  28. package/dist/memory/brain-writer-thread.js +46 -1
  29. package/dist/memory/brain-writer-thread.js.map +1 -1
  30. package/dist/memory/brain-writer-worker.js +13 -2
  31. package/dist/memory/brain-writer-worker.js.map +1 -1
  32. package/dist/memory/embedding-backfill.d.ts +12 -0
  33. package/dist/memory/embedding-backfill.d.ts.map +1 -1
  34. package/dist/memory/embedding-backfill.js +51 -31
  35. package/dist/memory/embedding-backfill.js.map +1 -1
  36. package/dist/orchestrate/include-deps.d.ts +58 -0
  37. package/dist/orchestrate/include-deps.d.ts.map +1 -0
  38. package/dist/orchestrate/include-deps.js +138 -0
  39. package/dist/orchestrate/include-deps.js.map +1 -0
  40. package/dist/orchestrate/spawn-ops.d.ts +14 -33
  41. package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
  42. package/dist/orchestrate/spawn-ops.js +49 -61
  43. package/dist/orchestrate/spawn-ops.js.map +1 -1
  44. package/dist/orchestrate/worktree-complete.d.ts +15 -1
  45. package/dist/orchestrate/worktree-complete.d.ts.map +1 -1
  46. package/dist/orchestrate/worktree-complete.js +36 -3
  47. package/dist/orchestrate/worktree-complete.js.map +1 -1
  48. package/dist/release/ci-evidence.d.ts +142 -4
  49. package/dist/release/ci-evidence.d.ts.map +1 -1
  50. package/dist/release/ci-evidence.js +298 -48
  51. package/dist/release/ci-evidence.js.map +1 -1
  52. package/dist/release/open.d.ts +25 -1
  53. package/dist/release/open.d.ts.map +1 -1
  54. package/dist/release/open.js +63 -11
  55. package/dist/release/open.js.map +1 -1
  56. package/dist/resources/admission-ledger.d.ts +83 -11
  57. package/dist/resources/admission-ledger.d.ts.map +1 -1
  58. package/dist/resources/admission-ledger.js +138 -39
  59. package/dist/resources/admission-ledger.js.map +1 -1
  60. package/dist/resources/governor.js +1 -1
  61. package/dist/resources/governor.js.map +1 -1
  62. package/dist/resources/hook-footprint.d.ts +24 -0
  63. package/dist/resources/hook-footprint.d.ts.map +1 -1
  64. package/dist/resources/hook-footprint.js +38 -1
  65. package/dist/resources/hook-footprint.js.map +1 -1
  66. package/dist/resources/run-class.d.ts +38 -5
  67. package/dist/resources/run-class.d.ts.map +1 -1
  68. package/dist/resources/run-class.js +60 -11
  69. package/dist/resources/run-class.js.map +1 -1
  70. package/dist/resources/run-governed.d.ts +13 -3
  71. package/dist/resources/run-governed.d.ts.map +1 -1
  72. package/dist/resources/run-governed.js +42 -9
  73. package/dist/resources/run-governed.js.map +1 -1
  74. package/dist/resources/slot-holder.d.ts +3 -3
  75. package/dist/resources/slot-holder.js +3 -3
  76. package/dist/resources/tool-groups.d.ts +11 -7
  77. package/dist/resources/tool-groups.d.ts.map +1 -1
  78. package/dist/resources/tool-groups.js +24 -13
  79. package/dist/resources/tool-groups.js.map +1 -1
  80. package/dist/spawn/branch-integration.d.ts +281 -0
  81. package/dist/spawn/branch-integration.d.ts.map +1 -0
  82. package/dist/spawn/branch-integration.js +715 -0
  83. package/dist/spawn/branch-integration.js.map +1 -0
  84. package/dist/spawn/branch-lock.d.ts +32 -270
  85. package/dist/spawn/branch-lock.d.ts.map +1 -1
  86. package/dist/spawn/branch-lock.js +59 -770
  87. package/dist/spawn/branch-lock.js.map +1 -1
  88. package/dist/spawn/index.d.ts +3 -1
  89. package/dist/spawn/index.d.ts.map +1 -1
  90. package/dist/spawn/index.js +5 -1
  91. package/dist/spawn/index.js.map +1 -1
  92. package/dist/store/exodus/recovery.d.ts.map +1 -1
  93. package/dist/store/exodus/recovery.js +9 -4
  94. package/dist/store/exodus/recovery.js.map +1 -1
  95. package/dist/system/health.d.ts.map +1 -1
  96. package/dist/system/health.js +3 -1
  97. package/dist/system/health.js.map +1 -1
  98. package/dist/tasks/ac-coverage-gate.d.ts +18 -2
  99. package/dist/tasks/ac-coverage-gate.d.ts.map +1 -1
  100. package/dist/tasks/ac-coverage-gate.js +40 -6
  101. package/dist/tasks/ac-coverage-gate.js.map +1 -1
  102. package/dist/tasks/ac-table.d.ts.map +1 -1
  103. package/dist/tasks/ac-table.js +3 -10
  104. package/dist/tasks/ac-table.js.map +1 -1
  105. package/dist/tasks/affected-packages.d.ts.map +1 -1
  106. package/dist/tasks/affected-packages.js +54 -10
  107. package/dist/tasks/affected-packages.js.map +1 -1
  108. package/dist/tasks/affected-scope.d.ts +10 -1
  109. package/dist/tasks/affected-scope.d.ts.map +1 -1
  110. package/dist/tasks/affected-scope.js +13 -3
  111. package/dist/tasks/affected-scope.js.map +1 -1
  112. package/dist/tasks/change-set.d.ts +9 -6
  113. package/dist/tasks/change-set.d.ts.map +1 -1
  114. package/dist/tasks/change-set.js +75 -97
  115. package/dist/tasks/change-set.js.map +1 -1
  116. package/dist/tasks/command-line.d.ts.map +1 -1
  117. package/dist/tasks/command-line.js +6 -2
  118. package/dist/tasks/command-line.js.map +1 -1
  119. package/dist/tasks/complete.d.ts.map +1 -1
  120. package/dist/tasks/complete.js +7 -2
  121. package/dist/tasks/complete.js.map +1 -1
  122. package/dist/tasks/done-plan.d.ts.map +1 -1
  123. package/dist/tasks/done-plan.js +111 -29
  124. package/dist/tasks/done-plan.js.map +1 -1
  125. package/dist/tasks/done-record.d.ts +14 -0
  126. package/dist/tasks/done-record.d.ts.map +1 -1
  127. package/dist/tasks/done-record.js +17 -10
  128. package/dist/tasks/done-record.js.map +1 -1
  129. package/dist/tasks/evidence-tree.d.ts +33 -0
  130. package/dist/tasks/evidence-tree.d.ts.map +1 -0
  131. package/dist/tasks/evidence-tree.js +132 -0
  132. package/dist/tasks/evidence-tree.js.map +1 -0
  133. package/dist/tasks/evidence.d.ts +42 -6
  134. package/dist/tasks/evidence.d.ts.map +1 -1
  135. package/dist/tasks/evidence.js +175 -79
  136. package/dist/tasks/evidence.js.map +1 -1
  137. package/dist/tasks/gate-preview.d.ts.map +1 -1
  138. package/dist/tasks/gate-preview.js +3 -2
  139. package/dist/tasks/gate-preview.js.map +1 -1
  140. package/dist/tasks/gate-runner.d.ts +11 -3
  141. package/dist/tasks/gate-runner.d.ts.map +1 -1
  142. package/dist/tasks/gate-runner.js +156 -37
  143. package/dist/tasks/gate-runner.js.map +1 -1
  144. package/dist/tasks/gate-staleness.d.ts +58 -0
  145. package/dist/tasks/gate-staleness.d.ts.map +1 -0
  146. package/dist/tasks/gate-staleness.js +78 -0
  147. package/dist/tasks/gate-staleness.js.map +1 -0
  148. package/dist/tasks/heavy-tool-env.d.ts +26 -1
  149. package/dist/tasks/heavy-tool-env.d.ts.map +1 -1
  150. package/dist/tasks/heavy-tool-env.js +92 -5
  151. package/dist/tasks/heavy-tool-env.js.map +1 -1
  152. package/dist/tasks/heavy-tool-limit.d.ts +24 -0
  153. package/dist/tasks/heavy-tool-limit.d.ts.map +1 -1
  154. package/dist/tasks/heavy-tool-limit.js +44 -1
  155. package/dist/tasks/heavy-tool-limit.js.map +1 -1
  156. package/dist/tasks/show.d.ts.map +1 -1
  157. package/dist/tasks/show.js +43 -0
  158. package/dist/tasks/show.js.map +1 -1
  159. package/dist/tasks/test-run-binding.d.ts +48 -3
  160. package/dist/tasks/test-run-binding.d.ts.map +1 -1
  161. package/dist/tasks/test-run-binding.js +111 -3
  162. package/dist/tasks/test-run-binding.js.map +1 -1
  163. package/dist/tasks/tool-cache.d.ts +58 -7
  164. package/dist/tasks/tool-cache.d.ts.map +1 -1
  165. package/dist/tasks/tool-cache.js +216 -16
  166. package/dist/tasks/tool-cache.js.map +1 -1
  167. package/dist/tasks/tool-resolver.d.ts +13 -0
  168. package/dist/tasks/tool-resolver.d.ts.map +1 -1
  169. package/dist/tasks/tool-resolver.js +34 -0
  170. package/dist/tasks/tool-resolver.js.map +1 -1
  171. package/dist/tasks/tool-runner-guard.d.ts +6 -0
  172. package/dist/tasks/tool-runner-guard.d.ts.map +1 -1
  173. package/dist/tasks/tool-runner-guard.js.map +1 -1
  174. package/dist/tasks/tool-semaphore.js +1 -1
  175. package/dist/tasks/tool-semaphore.js.map +1 -1
  176. package/dist/tasks/verification-policy.d.ts +26 -3
  177. package/dist/tasks/verification-policy.d.ts.map +1 -1
  178. package/dist/tasks/verification-policy.js +76 -11
  179. package/dist/tasks/verification-policy.js.map +1 -1
  180. package/dist/validation/doctor/checks.d.ts +12 -0
  181. package/dist/validation/doctor/checks.d.ts.map +1 -1
  182. package/dist/validation/doctor/checks.js +33 -0
  183. package/dist/validation/doctor/checks.js.map +1 -1
  184. package/dist/validation/engine-ops.d.ts +6 -0
  185. package/dist/validation/engine-ops.d.ts.map +1 -1
  186. package/dist/validation/engine-ops.js +51 -1
  187. package/dist/validation/engine-ops.js.map +1 -1
  188. package/dist/worktree/force-unlock.js +2 -2
  189. package/dist/worktree/force-unlock.js.map +1 -1
  190. package/dist/worktree/list.d.ts +7 -7
  191. package/dist/worktree/list.d.ts.map +1 -1
  192. package/dist/worktree/list.js +11 -56
  193. package/dist/worktree/list.js.map +1 -1
  194. package/dist/worktree/prune.d.ts +2 -2
  195. package/dist/worktree/prune.d.ts.map +1 -1
  196. package/dist/worktree/prune.js +4 -4
  197. package/dist/worktree/prune.js.map +1 -1
  198. package/package.json +13 -13
@@ -25,10 +25,15 @@
25
25
  * fail (T12961, see `tool-cache-failed-first.ts`). A failing run is
26
26
  * re-run in full once; a pass then is recorded as `flaky`.
27
27
  * 5. **Resource kills are not results** — a run killed by a signal, an
28
- * exit of 128 + a kill signal, or a heap OOM is returned but never
29
- * cached, and the key includes the heap and worker limits the run was
30
- * given, so a retry with more memory always runs (T12989, see
31
- * {@link resourceKillReason}).
28
+ * exit of 128 + a kill signal, a heap OOM or worker crash its output
29
+ * reports, or (on Linux) an OOM kill in its systemd scope is returned but
30
+ * never cached, and the key includes the heap and worker limits the run
31
+ * was given, so a retry with more memory always runs (T12989, see
32
+ * {@link resourceKillReason}). Limitation (T13011): where no scope
33
+ * confines the run (macOS, Windows, no user systemd), a kill that a
34
+ * wrapper reports as a plain exit 1 with no marker in the output (pnpm
35
+ * 12+ `-r` does this) cannot be told from a failing test and is cached
36
+ * as an ordinary red.
32
37
  *
33
38
  * Cache layout (under `<projectRoot>/.cleo/cache/evidence/`):
34
39
  *
@@ -54,7 +59,7 @@ import { activeToolGroups, trackToolGroup } from '../resources/tool-groups.js';
54
59
  import { isLocked, withLock } from '../store/lock.js';
55
60
  import { declaredEvidencePatterns, originDefaultMergeBase } from './affected-packages.js';
56
61
  import { planHeavyToolEnv, vitestWorkerCeiling, withoutNpmEnvConfigWarnings, } from './heavy-tool-env.js';
57
- import { confinementStartupFailure, isSystemdRunCommand, withMemoryLimit, } from './heavy-tool-limit.js';
62
+ import { confinementStartupFailure, isSystemdRunCommand, scopeOomKilled, withMemoryLimit, } from './heavy-tool-limit.js';
58
63
  import { captureEnvFingerprint, captureResourceEnv } from './tool-cache-env.js';
59
64
  import { FAILED_FIRST_TOOLS, parseFailingTestFiles, planFocusedRuns, readFailedFirstPointer, reportsNoTestFiles, writeFailedFirstPointer, } from './tool-cache-failed-first.js';
60
65
  import { parseRawProjectContext } from './tool-resolver.js';
@@ -389,11 +394,16 @@ const KILL_SIGNALS = [
389
394
  * of a pool worker that vanished — what the kernel OOM-killing one fork looks
390
395
  * like from the pool, which then exits 1 like a failing assertion.
391
396
  *
392
- * Matched as literal substrings, and only on a NON-ZERO exit. A false match
393
- * (a failing test that happens to print one of these) costs a re-run, never a
397
+ * Jest's reports of a worker the OS killed (T13012) are included: it writes
398
+ * them to stderr at the end of the run, with no V8 message.
399
+ *
400
+ * Matched as literal substrings, and only on a NON-ZERO exit, anywhere in the
401
+ * streamed output (T13012), not only the captured tail. A false match (a
402
+ * failing test that happens to print one of these) costs a re-run, never a
394
403
  * wrong verdict: the exit code is still reported, just not cached.
395
404
  *
396
405
  * @task T12989
406
+ * @task T13012
397
407
  */
398
408
  const RESOURCE_KILL_MARKERS = [
399
409
  'JavaScript heap out of memory',
@@ -404,7 +414,36 @@ const RESOURCE_KILL_MARKERS = [
404
414
  'Worker exited unexpectedly',
405
415
  'ENOMEM',
406
416
  'Cannot allocate memory',
417
+ 'was terminated by another process',
418
+ 'child process exceptions, exceeding retry limit',
407
419
  ];
420
+ /** Characters kept from one chunk to find a marker split across chunks (T13012). */
421
+ const MARKER_OVERLAP = Math.max(...RESOURCE_KILL_MARKERS.map((m) => m.length)) - 1;
422
+ /**
423
+ * Watch one output stream for a {@link RESOURCE_KILL_MARKERS} marker (T13012).
424
+ * Each chunk is scanned with the end of the previous one prepended, so a
425
+ * marker split across chunks is found; the first marker found sticks.
426
+ * Decoded as latin1 (one char per byte): the markers are ASCII, and a
427
+ * multi-byte character split across chunks cannot hide one.
428
+ *
429
+ * @returns `scan` for each chunk and `seen` for the marker found, or `null`.
430
+ *
431
+ * @internal Exported for tests.
432
+ */
433
+ export function killMarkerScanner() {
434
+ let carry = '';
435
+ let found = null;
436
+ return {
437
+ scan(chunk) {
438
+ if (found !== null)
439
+ return;
440
+ const text = carry + chunk.toString('latin1');
441
+ found = RESOURCE_KILL_MARKERS.find((m) => text.includes(m)) ?? null;
442
+ carry = text.slice(-MARKER_OVERLAP);
443
+ },
444
+ seen: () => found,
445
+ };
446
+ }
408
447
  /**
409
448
  * Why a finished run was killed for resources, or `null` when its outcome is
410
449
  * a real result.
@@ -414,15 +453,20 @@ const RESOURCE_KILL_MARKERS = [
414
453
  * 1. a terminating `signal` — the process did not exit on its own;
415
454
  * 2. an exit code of `128 + n` for a {@link KILL_SIGNALS} signal — the same
416
455
  * kill, reported by a wrapper (`sh` exits 137 for a `SIGKILL`ed child);
417
- * 3. a non-zero exit whose output carries a {@link RESOURCE_KILL_MARKERS}
418
- * marker — vitest catches a worker's heap OOM and exits 1.
456
+ * 3. a non-zero exit in a systemd scope the kernel OOM-killed in (Linux,
457
+ * T13011) — `pnpm -r` 12+ reports a SIGKILLed child as plain exit 1;
458
+ * 4. a non-zero exit whose output carries a {@link RESOURCE_KILL_MARKERS}
459
+ * marker — vitest catches a worker's heap OOM and exits 1. The marker
460
+ * may be anywhere in the stream (`killMarker`, T13012), not only in the
461
+ * captured tail.
419
462
  *
420
463
  * Exit 0 is always a result, and so is a plain non-zero exit such as a failing
421
464
  * assertion's 1: that red stays cacheable for failed-first reruns. A run that
422
465
  * never started (`exitCode` and `signal` both null) is not a kill; it is
423
466
  * reported, and refused by {@link isEntryUsable}, as an unknown outcome.
424
467
  *
425
- * @param run - The finished run's exit code, signal and captured output.
468
+ * @param run - The finished run's exit code, signal, captured output, the
469
+ * marker its stream scan saw and the systemd scope the kernel OOM-killed in.
426
470
  * @returns A short reason, e.g. `exit 137 (128 + SIGKILL)`, or `null`.
427
471
  *
428
472
  * @example
@@ -433,6 +477,8 @@ const RESOURCE_KILL_MARKERS = [
433
477
  * ```
434
478
  *
435
479
  * @task T12989
480
+ * @task T13011
481
+ * @task T13012
436
482
  */
437
483
  export function resourceKillReason(run) {
438
484
  if (run.signal !== null)
@@ -444,10 +490,35 @@ export function resourceKillReason(run) {
444
490
  return `exit ${run.exitCode} (128 + ${name})`;
445
491
  }
446
492
  }
493
+ if (run.oomKilledScope) {
494
+ return `the kernel OOM-killed a process in ${run.oomKilledScope} (exit ${run.exitCode})`;
495
+ }
447
496
  const output = `${run.stdout}\n${run.stderr}`;
448
- const marker = RESOURCE_KILL_MARKERS.find((m) => output.includes(m));
497
+ const marker = run.killMarker ?? RESOURCE_KILL_MARKERS.find((m) => output.includes(m));
449
498
  return marker === undefined ? null : `output reports "${marker}"`;
450
499
  }
500
+ /**
501
+ * {@link resourceKillReason} for a run spawned as `limited`: a non-zero exit
502
+ * with no other kill evidence asks the run's systemd scope whether the kernel
503
+ * OOM-killed in it (T13011), since `pnpm -r` 12+ reports that kill as exit 1.
504
+ *
505
+ * @param run - The finished run.
506
+ * @param limited - How it was spawned ({@link withMemoryLimit}).
507
+ * @param oomKilled - The scope probe (tests inject one). @defaultValue {@link scopeOomKilled}
508
+ * @returns The kill reason, or `null` for a real result.
509
+ *
510
+ * @task T13011
511
+ */
512
+ export function runKillReason(run, limited, oomKilled = scopeOomKilled) {
513
+ const reason = resourceKillReason(run);
514
+ if (reason !== null || !limited.confined || limited.unitName === null)
515
+ return reason;
516
+ if (run.exitCode === null || run.exitCode === 0)
517
+ return null;
518
+ return oomKilled(limited.unitName)
519
+ ? resourceKillReason({ ...run, oomKilledScope: limited.unitName })
520
+ : null;
521
+ }
451
522
  /**
452
523
  * Maximum bytes retained from a child's stdout / stderr stream during
453
524
  * spawn. The tool-evidence atom only needs the trailing 512 bytes for
@@ -558,6 +629,18 @@ function killProcessTree(pid, signal) {
558
629
  /** Signals whose default action would end cleo and orphan the tool groups it started. */
559
630
  const TERMINATION_SIGNALS = ['SIGHUP', 'SIGINT', 'SIGTERM'];
560
631
  let terminationCleanupInstalled = false;
632
+ /**
633
+ * How long a re-raised signal waits for best-effort drains (T13018): longer
634
+ * than their own 2 s deadline (brain writer, embedding and mental-model
635
+ * queues).
636
+ */
637
+ const SIGNAL_DRAIN_GRACE_MS = 2_500;
638
+ /** Signals that had a `process.once` drain listener when the cleanup was installed. */
639
+ const drainsAtInstall = new Set();
640
+ /** Whether a `process.once` listener (a best-effort drain) is registered for `signal`. */
641
+ function hasDrainListener(signal) {
642
+ return process.rawListeners(signal).some((l) => 'listener' in l);
643
+ }
561
644
  /** SIGTERM every tool group this process started that is still running. */
562
645
  function terminateActiveToolGroups() {
563
646
  for (const pgid of activeToolGroups())
@@ -577,7 +660,10 @@ function setTerminationCleanup(on) {
577
660
  if (on === terminationCleanupInstalled)
578
661
  return;
579
662
  terminationCleanupInstalled = on;
663
+ drainsAtInstall.clear();
580
664
  for (const signal of TERMINATION_SIGNALS) {
665
+ if (on && hasDrainListener(signal))
666
+ drainsAtInstall.add(signal);
581
667
  if (on)
582
668
  process.on(signal, onTerminationSignal);
583
669
  else
@@ -606,15 +692,28 @@ function syncTerminationCleanup() {
606
692
  * `signal-exit` then releases its locks and the process dies by the signal.
607
693
  * Another listener of the signal sees it twice.
608
694
  *
695
+ * T13018: best-effort drains (brain writer, embedding and mental-model
696
+ * queues) listen with `process.once` and finish within 2 s. Re-raised at once,
697
+ * the signal found them consumed and `signal-exit` ended the process mid-drain.
698
+ * When such a listener was registered at install time or is still pending,
699
+ * the re-raise waits {@link SIGNAL_DRAIN_GRACE_MS} on a timer that keeps the
700
+ * process alive; a drain that calls `process.exit` first ends it sooner.
701
+ *
609
702
  * @param signal - The signal received.
610
703
  *
611
704
  * @internal Exported for tests.
612
705
  * @task T12963
706
+ * @task T13018
613
707
  */
614
708
  export function terminateToolGroupsOnSignal(signal) {
615
709
  terminateActiveToolGroups();
710
+ const drains = drainsAtInstall.has(signal) || hasDrainListener(signal);
616
711
  setTerminationCleanup(false);
617
- process.kill(process.pid, signal);
712
+ if (!drains) {
713
+ process.kill(process.pid, signal);
714
+ return;
715
+ }
716
+ setTimeout(() => process.kill(process.pid, signal), SIGNAL_DRAIN_GRACE_MS);
618
717
  }
619
718
  /**
620
719
  * The `exit` listener: SIGTERM every tool group still running. `exit`
@@ -666,11 +765,17 @@ function spawnCmd(cmd, args, cwd, spawnTimeoutMs, envOverlay, baseEnv = process.
666
765
  // even if cleo dies first, and a terminating signal is passed on to it.
667
766
  const untrackGroup = trackToolGroup(child.pid);
668
767
  syncTerminationCleanup();
768
+ // T13012: a kill marker is looked for in every chunk, so one that later
769
+ // output pushes out of the 64 KiB tail still marks the run.
770
+ const stdoutMarker = killMarkerScanner();
771
+ const stderrMarker = killMarkerScanner();
669
772
  child.stdout?.on('data', (d) => {
670
773
  stdoutBuf.append(d);
774
+ stdoutMarker.scan(d);
671
775
  });
672
776
  child.stderr?.on('data', (d) => {
673
777
  stderrBuf.append(d);
778
+ stderrMarker.scan(d);
674
779
  });
675
780
  let timedOut = false;
676
781
  let deadlineTimer;
@@ -700,6 +805,7 @@ function spawnCmd(cmd, args, cwd, spawnTimeoutMs, envOverlay, baseEnv = process.
700
805
  stderr: spawnError !== null && stderr === '' ? spawnError : stderr,
701
806
  timedOut,
702
807
  spawnError,
808
+ killMarker: stdoutMarker.seen() ?? stderrMarker.seen(),
703
809
  });
704
810
  };
705
811
  // A genuine pre-start failure: ENOENT, EACCES, EAGAIN. No signal, no code.
@@ -1124,6 +1230,49 @@ export async function captureTree(root, protectedInputs = []) {
1124
1230
  export function cacheEntryPath(projectRoot, key) {
1125
1231
  return join(projectRoot, '.cleo', 'cache', 'evidence', `${key}.json`);
1126
1232
  }
1233
+ /**
1234
+ * Where a key's killed-run marker lives (T13014): beside its entry, never
1235
+ * matched as one (`<key>.killed.json`).
1236
+ *
1237
+ * @param projectRoot - Store root.
1238
+ * @param key - Cache key.
1239
+ */
1240
+ function killedMarkerPath(projectRoot, key) {
1241
+ return join(projectRoot, '.cleo', 'cache', 'evidence', `${key}.killed.json`);
1242
+ }
1243
+ /** Record a resource kill for the waiters on its key; best effort (T13014). */
1244
+ function writeKilledMarker(projectRoot, marker) {
1245
+ try {
1246
+ const path = killedMarkerPath(projectRoot, marker.key);
1247
+ const tmp = `${path}.${process.pid}.tmp`;
1248
+ writeFileSync(tmp, JSON.stringify(marker), 'utf-8');
1249
+ renameSync(tmp, path);
1250
+ }
1251
+ catch {
1252
+ // Not recorded: a waiter reruns, as before T13014.
1253
+ }
1254
+ }
1255
+ /**
1256
+ * The kill recorded for `key` since `sinceMs`, or `null` (T13014). Callers pass
1257
+ * the moment they began waiting on the key's holder, so only that holder's
1258
+ * kill counts: it ran at the same limits (the key carries the heap and
1259
+ * workers). A call that never waited runs again, so a retry after memory
1260
+ * frees up is never refused.
1261
+ */
1262
+ function readKilledMarker(projectRoot, key, sinceMs) {
1263
+ try {
1264
+ const m = JSON.parse(readFileSync(killedMarkerPath(projectRoot, key), 'utf-8'));
1265
+ return m.key === key &&
1266
+ typeof m.resourceKill === 'string' &&
1267
+ typeof m.atMs === 'number' &&
1268
+ m.atMs >= sinceMs
1269
+ ? m
1270
+ : null;
1271
+ }
1272
+ catch {
1273
+ return null;
1274
+ }
1275
+ }
1127
1276
  function ensureCacheDir(projectRoot) {
1128
1277
  const dir = join(projectRoot, '.cleo', 'cache', 'evidence');
1129
1278
  if (!existsSync(dir)) {
@@ -1253,7 +1402,7 @@ async function runFocused(command, plan, executionRoot, spawnTimeoutMs, toolEnv)
1253
1402
  const harnessFailure = confinementStartupFailure(result.stderr, limited.confined);
1254
1403
  if (harnessFailure !== null)
1255
1404
  return { kind: 'harness', result, durationMs, harnessFailure };
1256
- if (result.exitCode === null || resourceKillReason(result) !== null) {
1405
+ if (result.exitCode === null || runKillReason(result, limited) !== null) {
1257
1406
  return { kind: 'inconclusive' };
1258
1407
  }
1259
1408
  if (result.exitCode !== 0) {
@@ -1338,6 +1487,10 @@ export async function runToolCached(command, projectRoot, opts = {}) {
1338
1487
  async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1339
1488
  const toolEnv = spawnPlan.overlay;
1340
1489
  const callStartedAt = Date.now();
1490
+ // T13014: when this call first found another caller holding the key's lock.
1491
+ // Only such a waiter reports a kill instead of running: a call that never
1492
+ // waited (a fresh retry, even within the same millisecond as the kill) runs.
1493
+ let waitedSince = null;
1341
1494
  const tailBytes = opts.tailBytes ?? 512;
1342
1495
  const lockStaleMs = opts.lockStaleMs ?? 600_000;
1343
1496
  // T12105 / gh#1193: an explicit opts value (tests) wins; otherwise the
@@ -1449,6 +1602,30 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1449
1602
  durationMs,
1450
1603
  }),
1451
1604
  });
1605
+ // T13014: the run this caller waited on was killed for resources at the same
1606
+ // limits: report that kill instead of rerunning into it.
1607
+ const killedResult = (m) => ({
1608
+ exitCode: m.exitCode,
1609
+ signal: m.signal,
1610
+ stdoutTail: m.stdoutTail,
1611
+ stderrTail: m.stderrTail,
1612
+ durationMs: m.durationMs,
1613
+ cacheHit: false,
1614
+ timedOut: false,
1615
+ lockBusy: false,
1616
+ executionRoot,
1617
+ treeHash,
1618
+ harnessFailure: null,
1619
+ resourceKill: `${m.resourceKill}, in the run this one waited on at the same heap and workers (not rerun)`,
1620
+ entry: makeEntry({
1621
+ exitCode: m.exitCode,
1622
+ signal: m.signal,
1623
+ stdoutTail: m.stdoutTail,
1624
+ stderrTail: m.stderrTail,
1625
+ durationMs: m.durationMs,
1626
+ resourceKill: m.resourceKill,
1627
+ }),
1628
+ });
1452
1629
  // Fast path — fresh cache hit
1453
1630
  if (!bypassCache) {
1454
1631
  const existing = readCacheEntry(projectRoot, key);
@@ -1482,6 +1659,9 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1482
1659
  if (fresh)
1483
1660
  return hit(fresh);
1484
1661
  }
1662
+ const killed = waitedSince === null ? null : readKilledMarker(projectRoot, key, waitedSince);
1663
+ if (killed !== null)
1664
+ return killedResult(killed);
1485
1665
  sweepLegacyEntriesOnce(projectRoot);
1486
1666
  const failedFirstEnabled = FAILED_FIRST_TOOLS.has(command.canonical);
1487
1667
  let trackedCache = null;
@@ -1610,7 +1790,7 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1610
1790
  // same limits under the same pressure doubles the cost of the kill), not
1611
1791
  // recorded for failed-first (the unknown outcome leaves the pointer) and
1612
1792
  // not cached (`isEntryUsable` refuses `resourceKill`).
1613
- const resourceKill = resourceKillReason(result);
1793
+ const resourceKill = runKillReason(result, limited);
1614
1794
  let failedTestFiles;
1615
1795
  let flaky;
1616
1796
  let flakyFailureTail;
@@ -1634,7 +1814,7 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1634
1814
  const retry = await spawnNormal();
1635
1815
  if (!retry.result.timedOut &&
1636
1816
  harnessOf(retry.result) === null &&
1637
- resourceKillReason(retry.result) === null) {
1817
+ runKillReason(retry.result, limited) === null) {
1638
1818
  if (retry.result.exitCode === 0) {
1639
1819
  flaky = files.length > 0 ? files : ['<unknown>'];
1640
1820
  flakyFailureTail = tailString(`${result.stdout}\n${result.stderr}`, tailBytes);
@@ -1698,6 +1878,20 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1698
1878
  if (isEntryUsable(entry)) {
1699
1879
  writeCacheEntry(projectRoot, entry);
1700
1880
  }
1881
+ else if (resourceKill !== null) {
1882
+ // T13014: written under the lock, so every waiter on this key reads it
1883
+ // when the lock is released and reports the kill instead of rerunning.
1884
+ writeKilledMarker(projectRoot, {
1885
+ key,
1886
+ resourceKill,
1887
+ atMs: Date.now(),
1888
+ exitCode: entry.exitCode,
1889
+ signal: entry.signal ?? null,
1890
+ stdoutTail: entry.stdoutTail,
1891
+ stderrTail: entry.stderrTail,
1892
+ durationMs: entry.durationMs,
1893
+ });
1894
+ }
1701
1895
  return {
1702
1896
  exitCode: entry.exitCode,
1703
1897
  signal: entry.signal ?? null,
@@ -1725,7 +1919,9 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1725
1919
  // waiter does not occupy a slot a different key could use.
1726
1920
  //
1727
1921
  // When the holder releases without a usable entry (timeout, harness
1728
- // failure, resource kill, crash) the waiter loops and runs the tool itself. The total wait
1922
+ // failure, crash) the waiter loops and runs the tool itself. A resource
1923
+ // kill is reported instead (T13014): the waiter has the same key, so the
1924
+ // same heap and workers, and would only run into the same kill. The total wait
1729
1925
  // is bounded by `lockWaitMs`; past it the caller gets `lockBusy`.
1730
1926
  // The holder's worst case is a focused rerun, the normal command and its
1731
1927
  // one flake retry — three spawn deadlines — plus slack.
@@ -1762,6 +1958,7 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1762
1958
  : undefined;
1763
1959
  if (causeCode !== 'ELOCKED')
1764
1960
  throw err;
1961
+ waitedSince ??= Date.now();
1765
1962
  }
1766
1963
  finally {
1767
1964
  if (releaseSemaphore)
@@ -1779,6 +1976,9 @@ async function runToolCachedWithPlan(command, projectRoot, opts, spawnPlan) {
1779
1976
  const done = readCacheEntry(projectRoot, key);
1780
1977
  if (done && acceptable(done))
1781
1978
  return hit(done);
1979
+ const killed = readKilledMarker(projectRoot, key, waitedSince ?? callStartedAt);
1980
+ if (killed !== null)
1981
+ return killedResult(killed);
1782
1982
  if (Date.now() >= waitDeadline) {
1783
1983
  // T12025: a typed, actionable result so callers surface
1784
1984
  // E_EVIDENCE_TOOL_BUSY instead of a generic error.
@@ -1 +1 @@
1
- {"version":3,"file":"tool-cache.js","sourceRoot":"","sources":["../../src/tasks/tool-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-cache.js","sourceRoot":"","sources":["../../src/tasks/tool-cache.ts"],"names":[],"mappings":"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"}
@@ -174,6 +174,19 @@ export declare function canonicalToolName(toolName: string): CanonicalTool | nul
174
174
  * @task T1534
175
175
  */
176
176
  export declare function resolveToolCommand(toolName: string, projectRoot: string, opts?: ResolveOptions): ResolveToolResult;
177
+ /**
178
+ * Why each command a project-context declares cannot run as written (T14039):
179
+ * every tool command of {@link PROJECT_CONTEXT_KEY_MAP} plus
180
+ * `testing.affectedCommand`, split as {@link resolveToolCommand} splits them.
181
+ * A command using shell syntax (`a && b`) is named with the operator and the
182
+ * package-script remedy, so `tool:config-schema` refuses the config before a
183
+ * tool run trips on it.
184
+ *
185
+ * @param ctx - A parsed project-context.json (anything else declares no command).
186
+ * @returns One message per unrunnable command; empty when all can run.
187
+ * @task T14039
188
+ */
189
+ export declare function projectContextCommandProblems(ctx: unknown): string[];
177
190
  /**
178
191
  * Load project-context.json *without* relying on `loadProjectContext`'s
179
192
  * imports (escape-hatch for tests that need to inspect raw context).
@@ -1 +1 @@
1
- {"version":3,"file":"tool-resolver.d.ts","sourceRoot":"","sources":["../../src/tasks/tool-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAQ9D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,gGAiBlB,CAAC;AAEX;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACxB,iBAAiB,GACjB,gBAAgB,GAChB,kBAAkB,GAClB,cAAc,CAAC;AAEnB;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,SAAS,EAAE,aAAa,CAAC;IACzB,gFAAgF;IAChF,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,mDAAmD;IACnD,MAAM,EAAE,gBAAgB,CAAC;IACzB,gFAAgF;IAChF,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,mBAAmB,CAAA;CAAE,GAC1C;IACE,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,EACJ,gBAAgB,GAChB,oBAAoB,GACpB,uBAAuB,GACvB,wBAAwB,CAAC;IAC7B,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AA+EN;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAI7C;AAsUD,UAAU,cAAc;IACtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACjD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAIxE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,cAAmB,GACxB,iBAAiB,CA4HnB;AAyCD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAQzF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAQlF"}
1
+ {"version":3,"file":"tool-resolver.d.ts","sourceRoot":"","sources":["../../src/tasks/tool-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAQ9D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,gGAiBlB,CAAC;AAEX;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACxB,iBAAiB,GACjB,gBAAgB,GAChB,kBAAkB,GAClB,cAAc,CAAC;AAEnB;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,SAAS,EAAE,aAAa,CAAC;IACzB,gFAAgF;IAChF,WAAW,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,mDAAmD;IACnD,MAAM,EAAE,gBAAgB,CAAC;IACzB,gFAAgF;IAChF,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GACzB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,mBAAmB,CAAA;CAAE,GAC1C;IACE,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,QAAQ,EACJ,gBAAgB,GAChB,oBAAoB,GACpB,uBAAuB,GACvB,wBAAwB,CAAC;IAC7B,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AA+EN;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAI7C;AAsUD,UAAU,cAAc;IACtB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CACjD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAIxE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,cAAmB,GACxB,iBAAiB,CA4HnB;AAyCD;;;;;;;;;;;GAWG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CAgBpE;AAMD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAQzF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAQlF"}