@cleocode/core 2026.8.9 → 2026.9.2

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 (171) hide show
  1. package/dist/conduit/conduit-client.d.ts.map +1 -1
  2. package/dist/conduit/conduit-client.js +10 -2
  3. package/dist/conduit/conduit-client.js.map +1 -1
  4. package/dist/dispatch/mvi-projection.d.ts +38 -0
  5. package/dist/dispatch/mvi-projection.d.ts.map +1 -1
  6. package/dist/dispatch/mvi-projection.js +189 -11
  7. package/dist/dispatch/mvi-projection.js.map +1 -1
  8. package/dist/docs/export-document.js +41 -3
  9. package/dist/docs/export-document.js.map +2 -2
  10. package/dist/doctor/acceptance-drift.d.ts +258 -0
  11. package/dist/doctor/acceptance-drift.d.ts.map +1 -0
  12. package/dist/doctor/acceptance-drift.js +366 -0
  13. package/dist/doctor/acceptance-drift.js.map +1 -0
  14. package/dist/doctor/index.d.ts +4 -0
  15. package/dist/doctor/index.d.ts.map +1 -1
  16. package/dist/doctor/index.js +2 -0
  17. package/dist/doctor/index.js.map +1 -1
  18. package/dist/doctor/legacy-reaper.d.ts +105 -0
  19. package/dist/doctor/legacy-reaper.d.ts.map +1 -0
  20. package/dist/doctor/legacy-reaper.js +151 -0
  21. package/dist/doctor/legacy-reaper.js.map +1 -0
  22. package/dist/doctor/malformed-task-ids.d.ts +111 -0
  23. package/dist/doctor/malformed-task-ids.d.ts.map +1 -0
  24. package/dist/doctor/malformed-task-ids.js +139 -0
  25. package/dist/doctor/malformed-task-ids.js.map +1 -0
  26. package/dist/doctor/nexus-schema-residency.d.ts +115 -0
  27. package/dist/doctor/nexus-schema-residency.d.ts.map +1 -0
  28. package/dist/doctor/nexus-schema-residency.js +178 -0
  29. package/dist/doctor/nexus-schema-residency.js.map +1 -0
  30. package/dist/error-registry.d.ts.map +1 -1
  31. package/dist/error-registry.js +18 -0
  32. package/dist/error-registry.js.map +1 -1
  33. package/dist/internal.d.ts +1 -0
  34. package/dist/internal.d.ts.map +1 -1
  35. package/dist/internal.js +1 -0
  36. package/dist/internal.js.map +1 -1
  37. package/dist/llm/ai-sdk-warnings.d.ts +55 -0
  38. package/dist/llm/ai-sdk-warnings.d.ts.map +1 -0
  39. package/dist/llm/ai-sdk-warnings.js +83 -0
  40. package/dist/llm/ai-sdk-warnings.js.map +1 -0
  41. package/dist/llm/model-runner.d.ts +0 -8
  42. package/dist/llm/model-runner.d.ts.map +1 -1
  43. package/dist/llm/model-runner.js +8 -0
  44. package/dist/llm/model-runner.js.map +1 -1
  45. package/dist/llm/plugin-facade.js +73 -8
  46. package/dist/llm/plugin-facade.js.map +3 -3
  47. package/dist/memory/embedding-queue.d.ts +12 -0
  48. package/dist/memory/embedding-queue.d.ts.map +1 -1
  49. package/dist/memory/embedding-queue.js +39 -5
  50. package/dist/memory/embedding-queue.js.map +1 -1
  51. package/dist/orchestrate/worktree-complete.d.ts.map +1 -1
  52. package/dist/orchestrate/worktree-complete.js +26 -0
  53. package/dist/orchestrate/worktree-complete.js.map +1 -1
  54. package/dist/output.d.ts.map +1 -1
  55. package/dist/output.js +25 -0
  56. package/dist/output.js.map +1 -1
  57. package/dist/release/pr-evidence.d.ts +13 -0
  58. package/dist/release/pr-evidence.d.ts.map +1 -1
  59. package/dist/release/pr-evidence.js +54 -1
  60. package/dist/release/pr-evidence.js.map +1 -1
  61. package/dist/render/session/briefing.d.ts.map +1 -1
  62. package/dist/render/session/briefing.js +9 -0
  63. package/dist/render/session/briefing.js.map +1 -1
  64. package/dist/selfimprove/fix-gen.js +73 -8
  65. package/dist/selfimprove/fix-gen.js.map +3 -3
  66. package/dist/sessions/briefing.d.ts +13 -0
  67. package/dist/sessions/briefing.d.ts.map +1 -1
  68. package/dist/sessions/briefing.js +64 -7
  69. package/dist/sessions/briefing.js.map +1 -1
  70. package/dist/sessions/handoff.d.ts +32 -4
  71. package/dist/sessions/handoff.d.ts.map +1 -1
  72. package/dist/sessions/handoff.js +7 -7
  73. package/dist/sessions/handoff.js.map +1 -1
  74. package/dist/shutdown-deadline.d.ts +144 -0
  75. package/dist/shutdown-deadline.d.ts.map +1 -0
  76. package/dist/shutdown-deadline.js +187 -0
  77. package/dist/shutdown-deadline.js.map +1 -0
  78. package/dist/shutdown.d.ts +5 -2
  79. package/dist/shutdown.d.ts.map +1 -1
  80. package/dist/shutdown.js +19 -14
  81. package/dist/shutdown.js.map +1 -1
  82. package/dist/spawn/branch-lock.d.ts.map +1 -1
  83. package/dist/spawn/branch-lock.js +33 -0
  84. package/dist/spawn/branch-lock.js.map +1 -1
  85. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  86. package/dist/store/sqlite-data-accessor.js +14 -0
  87. package/dist/store/sqlite-data-accessor.js.map +1 -1
  88. package/dist/store/tasks-sqlite.d.ts.map +1 -1
  89. package/dist/store/tasks-sqlite.js +16 -1
  90. package/dist/store/tasks-sqlite.js.map +1 -1
  91. package/dist/tasks/ac-immutability.d.ts.map +1 -1
  92. package/dist/tasks/ac-immutability.js +36 -0
  93. package/dist/tasks/ac-immutability.js.map +1 -1
  94. package/dist/tasks/add.d.ts +18 -0
  95. package/dist/tasks/add.d.ts.map +1 -1
  96. package/dist/tasks/add.js +28 -5
  97. package/dist/tasks/add.js.map +1 -1
  98. package/dist/tasks/axis-filters.d.ts +53 -0
  99. package/dist/tasks/axis-filters.d.ts.map +1 -0
  100. package/dist/tasks/axis-filters.js +77 -0
  101. package/dist/tasks/axis-filters.js.map +1 -0
  102. package/dist/tasks/complete.d.ts.map +1 -1
  103. package/dist/tasks/complete.js +10 -1
  104. package/dist/tasks/complete.js.map +1 -1
  105. package/dist/tasks/duplicate-detector.d.ts +67 -14
  106. package/dist/tasks/duplicate-detector.d.ts.map +1 -1
  107. package/dist/tasks/duplicate-detector.js +197 -54
  108. package/dist/tasks/duplicate-detector.js.map +1 -1
  109. package/dist/tasks/evidence.d.ts +139 -0
  110. package/dist/tasks/evidence.d.ts.map +1 -1
  111. package/dist/tasks/evidence.js +321 -26
  112. package/dist/tasks/evidence.js.map +1 -1
  113. package/dist/tasks/find.d.ts.map +1 -1
  114. package/dist/tasks/find.js +9 -2
  115. package/dist/tasks/find.js.map +1 -1
  116. package/dist/tasks/gate-runner.d.ts.map +1 -1
  117. package/dist/tasks/gate-runner.js +25 -4
  118. package/dist/tasks/gate-runner.js.map +1 -1
  119. package/dist/tasks/heavy-tool-env.d.ts +20 -0
  120. package/dist/tasks/heavy-tool-env.d.ts.map +1 -1
  121. package/dist/tasks/heavy-tool-env.js +74 -4
  122. package/dist/tasks/heavy-tool-env.js.map +1 -1
  123. package/dist/tasks/heavy-tool-limit.d.ts +160 -0
  124. package/dist/tasks/heavy-tool-limit.d.ts.map +1 -0
  125. package/dist/tasks/heavy-tool-limit.js +231 -0
  126. package/dist/tasks/heavy-tool-limit.js.map +1 -0
  127. package/dist/tasks/index.d.ts +1 -1
  128. package/dist/tasks/index.d.ts.map +1 -1
  129. package/dist/tasks/index.js +1 -1
  130. package/dist/tasks/index.js.map +1 -1
  131. package/dist/tasks/infer-add-params.d.ts +28 -0
  132. package/dist/tasks/infer-add-params.d.ts.map +1 -1
  133. package/dist/tasks/infer-add-params.js +96 -6
  134. package/dist/tasks/infer-add-params.js.map +1 -1
  135. package/dist/tasks/list.d.ts +30 -1
  136. package/dist/tasks/list.d.ts.map +1 -1
  137. package/dist/tasks/list.js +14 -0
  138. package/dist/tasks/list.js.map +1 -1
  139. package/dist/tasks/ops.d.ts +4 -0
  140. package/dist/tasks/ops.d.ts.map +1 -1
  141. package/dist/tasks/ops.js +2 -0
  142. package/dist/tasks/ops.js.map +1 -1
  143. package/dist/tasks/session-scope.d.ts +51 -4
  144. package/dist/tasks/session-scope.d.ts.map +1 -1
  145. package/dist/tasks/session-scope.js +68 -10
  146. package/dist/tasks/session-scope.js.map +1 -1
  147. package/dist/tasks/tool-cache.d.ts +130 -9
  148. package/dist/tasks/tool-cache.d.ts.map +1 -1
  149. package/dist/tasks/tool-cache.js +172 -22
  150. package/dist/tasks/tool-cache.js.map +1 -1
  151. package/dist/tasks/tool-semaphore.d.ts +91 -0
  152. package/dist/tasks/tool-semaphore.d.ts.map +1 -1
  153. package/dist/tasks/tool-semaphore.js +203 -14
  154. package/dist/tasks/tool-semaphore.js.map +1 -1
  155. package/dist/validation/doctor/checks.d.ts +64 -0
  156. package/dist/validation/doctor/checks.d.ts.map +1 -1
  157. package/dist/validation/doctor/checks.js +249 -0
  158. package/dist/validation/doctor/checks.js.map +1 -1
  159. package/dist/validation/engine-ops.d.ts.map +1 -1
  160. package/dist/validation/engine-ops.js +41 -5
  161. package/dist/validation/engine-ops.js.map +1 -1
  162. package/package.json +13 -13
  163. package/templates/CLEO-INJECTION.md +28 -44
  164. package/dist/backfill/adr-backfill-walker.d.ts +0 -57
  165. package/dist/backfill/adr-backfill-walker.d.ts.map +0 -1
  166. package/dist/backfill/adr-backfill-walker.js +0 -631
  167. package/dist/backfill/adr-backfill-walker.js.map +0 -1
  168. package/dist/tasks/graph-rag.d.ts +0 -49
  169. package/dist/tasks/graph-rag.d.ts.map +0 -1
  170. package/dist/tasks/graph-rag.js +0 -328
  171. package/dist/tasks/graph-rag.js.map +0 -1
@@ -19,16 +19,18 @@
19
19
  * @adr ADR-051
20
20
  * @adr ADR-061
21
21
  */
22
- import { spawn } from 'node:child_process';
22
+ import { execFileSync, spawn } from 'node:child_process';
23
23
  import { createHash } from 'node:crypto';
24
24
  import { existsSync, readFileSync, realpathSync, statSync } from 'node:fs';
25
25
  import { readFile, stat } from 'node:fs/promises';
26
26
  import { dirname, isAbsolute, join, resolve as resolvePath } from 'node:path';
27
27
  import { EvidenceParseError, ExitCode, GATE_EVIDENCE_REQUIREMENTS, parseEvidenceString, validateEvidenceForGate, } from '@cleocode/contracts';
28
28
  import { CleoError } from '../errors.js';
29
+ import { pushWarning } from '../output.js';
29
30
  import { getEffectiveHead } from '../worktree/effective-head.js';
31
+ import { describeMemoryLimit } from './heavy-tool-limit.js';
30
32
  import { computeCommitRevalidationKey, readCommitRevalidationEntry, writeCommitRevalidationEntry, } from './revalidation-cache.js';
31
- import { runToolCached } from './tool-cache.js';
33
+ import { resolveSpawnTimeoutMs, runToolCached } from './tool-cache.js';
32
34
  import { CANONICAL_TOOLS, listValidToolNames, resolveToolCommand, } from './tool-resolver.js';
33
35
  /**
34
36
  * Valid tool names recognised by the `tool:<name>` evidence atom.
@@ -429,6 +431,44 @@ async function validateCommit(sha, projectRoot, taskId) {
429
431
  const fullSha = full.stdout.trim() || sha;
430
432
  return { ok: true, atom: { kind: 'commit', sha: fullSha, shortSha } };
431
433
  }
434
+ /**
435
+ * Warning code emitted when the T9245 content-intersect check was computed
436
+ * from acceptance PROSE rather than from a declared `task.files` list, and so
437
+ * was downgraded from blocking to advisory (gh#1240).
438
+ *
439
+ * A distinct, stable code so the downgrade is COUNTABLE: "how many tasks rely
440
+ * on derived AC files?" is answerable by grepping envelopes rather than by
441
+ * reading code. If the answer is "almost all", `--files` adoption is the real
442
+ * problem and this tier boundary is hiding it; if "almost none", the change
443
+ * costs nearly nothing. Shipping a gate change blind to its own blast radius
444
+ * would be a poor look given what gh#1240 is about.
445
+ *
446
+ * @task T12118 (gh#1240)
447
+ */
448
+ export const W_AC_FILES_DERIVED = 'W_AC_FILES_DERIVED';
449
+ /**
450
+ * Surface a downgraded content-intersect result as a first-class envelope
451
+ * warning.
452
+ *
453
+ * Deliberately NOT log-only: a warning nobody reads is how a weakened gate
454
+ * becomes an invisible one.
455
+ *
456
+ * @param taskId - Task whose gate was evaluated.
457
+ * @param detail - The reason text the gate would have failed with.
458
+ *
459
+ * @internal
460
+ * @task T12118 (gh#1240)
461
+ */
462
+ function warnDerivedAcFiles(taskId, detail) {
463
+ pushWarning({
464
+ code: W_AC_FILES_DERIVED,
465
+ severity: 'warn',
466
+ message: `Content-intersect check for ${taskId} was NOT enforced: its AC file list was ` +
467
+ `inferred from acceptance prose, not declared via --files. ${detail} ` +
468
+ `Declare files with \`cleo update ${taskId} --files <paths>\` to make this gate enforcing.`,
469
+ context: { taskId, acFilesProvenance: 'derived' },
470
+ });
471
+ }
432
472
  /**
433
473
  * Path-token regex used by {@link extractTaskAcFiles} to recover AC file paths
434
474
  * from free-text acceptance strings when {@link Task.files} is empty.
@@ -549,13 +589,84 @@ export function isRepoPathLike(token) {
549
589
  * @task T11960
550
590
  */
551
591
  export function extractTaskAcFiles(task) {
552
- // 1. Explicit files array wins.
592
+ return extractTaskAcFilesWithProvenance(task).files;
593
+ }
594
+ /**
595
+ * Negation cues that mean a path named nearby is PROHIBITED, not required.
596
+ *
597
+ * @remarks
598
+ * This list exists ONLY to keep the advisory message from telling an operator
599
+ * to modify a file their own acceptance criteria forbid. **It buys no
600
+ * enforcement authority and must never be used to promote derived file lists
601
+ * back to blocking.** Prose cannot reliably distinguish a target from a
602
+ * prohibition, an example, or a cross-reference — handling the negations we
603
+ * have seen does not change that, it only moves the next failure somewhere we
604
+ * have not looked yet. The tier boundary in
605
+ * {@link extractTaskAcFilesWithProvenance} is the actual fix (gh#1240).
606
+ *
607
+ * @internal
608
+ * @task T12118 (gh#1240)
609
+ */
610
+ const AC_NEGATION_CUE = /\b(?:not|no|never|without|unmodified|untouched|unchanged|avoid(?:s|ing)?|exclude[sd]?|excluding|unaffected|preserve[sd]?|nothing)\b/i;
611
+ /**
612
+ * Does the clause surrounding `token` in `text` negate it?
613
+ *
614
+ * Splits on clause boundaries so a prohibition in one clause does not suppress
615
+ * a legitimate requirement in another — `"updates src/a.ts; does not touch
616
+ * src/b.ts"` must keep `src/a.ts`.
617
+ *
618
+ * @internal
619
+ * @task T12118 (gh#1240)
620
+ */
621
+ function clauseNegatesToken(text, token) {
622
+ for (const clause of text.split(/[;,]|\s+(?:and|but|while|whereas)\s+/i)) {
623
+ if (clause.includes(token))
624
+ return AC_NEGATION_CUE.test(clause);
625
+ }
626
+ return AC_NEGATION_CUE.test(text);
627
+ }
628
+ /**
629
+ * Extract a task's AC file list together with its provenance.
630
+ *
631
+ * ## Why provenance matters (gh#1240)
632
+ *
633
+ * `task.files` is the documented SSoT, and prose parsing is documented as a
634
+ * fallback for legacy tasks predating `--files`. But the T9245 content-
635
+ * intersect gate treated both identically and BLOCKED on either — so **a
636
+ * heuristic fallback was wired to a blocking gate**.
637
+ *
638
+ * The reported symptom is the sharpest possible demonstration: an AC reading
639
+ * "the diff touches no line of src/lib/compound-catalog.ts" had the filename
640
+ * scraped out of it and the negation discarded, so the gate demanded a
641
+ * modification to the one file the task forbade touching. The gate became
642
+ * satisfiable only by violating the criteria it was enforcing, and every
643
+ * honest escape was worse than the check: modify the forbidden file, rewrite
644
+ * the AC to hide the filename, or burn an audited owner override on correct
645
+ * work.
646
+ *
647
+ * The negation is the most spectacular symptom, not the defect. A regex
648
+ * cannot tell a target from a prohibition, an example, or a cross-reference,
649
+ * and the incentive created by getting it wrong is to stop writing negative
650
+ * constraints — which are among the most valuable ACs there are, because
651
+ * "do not modify X" is how a blast radius gets pinned.
652
+ *
653
+ * So: **enforcement requires a declaration; a guess may only advise.** The
654
+ * caller blocks on `declared` and warns on `derived`.
655
+ *
656
+ * @param task - Task fields to read.
657
+ * @returns Files plus the provenance the caller must gate enforcement on.
658
+ *
659
+ * @task T12118 (gh#1240)
660
+ * @task T9245
661
+ */
662
+ export function extractTaskAcFilesWithProvenance(task) {
663
+ // 1. Explicit files array wins — a declaration.
553
664
  if (task.files && task.files.length > 0) {
554
- return [...task.files];
665
+ return { files: [...task.files], provenance: 'declared' };
555
666
  }
556
667
  // 2. Parse path tokens from AC strings, filtered by repo-path heuristic.
557
668
  if (!task.acceptance || task.acceptance.length === 0) {
558
- return null;
669
+ return { files: null, provenance: 'derived' };
559
670
  }
560
671
  const parsed = new Set();
561
672
  for (const item of task.acceptance) {
@@ -565,13 +676,18 @@ export function extractTaskAcFiles(task) {
565
676
  AC_PATH_TOKEN.lastIndex = 0;
566
677
  let m = AC_PATH_TOKEN.exec(item);
567
678
  while (m !== null) {
679
+ const token = m[1];
568
680
  // T11960: apply repo-path heuristic to filter URL/prose false-positives.
569
- if (m[1] && isRepoPathLike(m[1]))
570
- parsed.add(m[1]);
681
+ // gh#1240: drop paths their own clause forbids touching, so the advisory
682
+ // never names a file the AC prohibits. Advisory quality only — see
683
+ // AC_NEGATION_CUE.
684
+ if (token && isRepoPathLike(token) && !clauseNegatesToken(item, token)) {
685
+ parsed.add(token);
686
+ }
571
687
  m = AC_PATH_TOKEN.exec(item);
572
688
  }
573
689
  }
574
- return parsed.size > 0 ? Array.from(parsed) : null;
690
+ return { files: parsed.size > 0 ? Array.from(parsed) : null, provenance: 'derived' };
575
691
  }
576
692
  /**
577
693
  * Return the list of file paths a commit touched (added, modified, or deleted).
@@ -775,7 +891,7 @@ async function checkCommitContentIntersect(sha, taskId, projectRoot) {
775
891
  if (task.kind === 'research' || task.kind === 'spike') {
776
892
  return { ok: true, atom: { kind: 'commit', sha, shortSha: sha.slice(0, 7) } };
777
893
  }
778
- const acFiles = extractTaskAcFiles({
894
+ const { files: acFiles, provenance } = extractTaskAcFilesWithProvenance({
779
895
  files: task.files,
780
896
  acceptance: task.acceptance,
781
897
  });
@@ -783,23 +899,38 @@ async function checkCommitContentIntersect(sha, taskId, projectRoot) {
783
899
  if (!acFiles || acFiles.length === 0) {
784
900
  return { ok: true, atom: { kind: 'commit', sha, shortSha: sha.slice(0, 7) } };
785
901
  }
902
+ /**
903
+ * gh#1240: only a DECLARATION may block. `derived` means a regex found
904
+ * path-shaped tokens in acceptance prose — a guess about what a sentence
905
+ * meant, which cannot distinguish a target from a prohibition, an example,
906
+ * or a cross-reference. Blocking on that produced gates satisfiable only by
907
+ * violating the acceptance criteria they enforce. The check still runs and
908
+ * is still reported; it just cannot fail the gate.
909
+ */
910
+ const enforcing = provenance === 'declared';
786
911
  const diffFiles = await gitShowFiles(sha, projectRoot);
912
+ const acPreview = `${acFiles.slice(0, 5).join(', ')}${acFiles.length > 5 ? '…' : ''}`;
787
913
  if (diffFiles.length === 0) {
788
- return {
789
- ok: false,
790
- reason: `Commit ${sha.slice(0, 7)} touches no files — cannot satisfy implemented gate ` +
791
- `for task ${taskId} (expected diff to include at least one of: ${acFiles.slice(0, 5).join(', ')}` +
792
- `${acFiles.length > 5 ? '…' : ''})`,
793
- codeName: 'E_EVIDENCE_CONTENT_MISMATCH',
794
- };
914
+ const reason = `Commit ${sha.slice(0, 7)} touches no files — cannot satisfy implemented gate ` +
915
+ `for task ${taskId} (expected diff to include at least one of: ${acPreview})`;
916
+ if (!enforcing) {
917
+ warnDerivedAcFiles(taskId, reason);
918
+ return { ok: true, atom: { kind: 'commit', sha, shortSha: sha.slice(0, 7) } };
919
+ }
920
+ return { ok: false, reason, codeName: 'E_EVIDENCE_CONTENT_MISMATCH' };
795
921
  }
796
922
  if (!diffIntersectsAc(diffFiles, acFiles)) {
923
+ const reason = `Commit ${sha.slice(0, 7)} diff does not intersect task ${taskId} AC files. ` +
924
+ `Diff touched: [${diffFiles.slice(0, 5).join(', ')}${diffFiles.length > 5 ? '…' : ''}]. ` +
925
+ `AC ${enforcing ? 'declared' : 'inferred from prose'}: [${acPreview}]. ` +
926
+ `T9245: the commit MUST modify at least one declared AC file.`;
927
+ if (!enforcing) {
928
+ warnDerivedAcFiles(taskId, reason);
929
+ return { ok: true, atom: { kind: 'commit', sha, shortSha: sha.slice(0, 7) } };
930
+ }
797
931
  return {
798
932
  ok: false,
799
- reason: `Commit ${sha.slice(0, 7)} diff does not intersect task ${taskId} AC files. ` +
800
- `Diff touched: [${diffFiles.slice(0, 5).join(', ')}${diffFiles.length > 5 ? '…' : ''}]. ` +
801
- `AC declared: [${acFiles.slice(0, 5).join(', ')}${acFiles.length > 5 ? '…' : ''}]. ` +
802
- `T9245: the commit MUST modify at least one declared AC file.`,
933
+ reason,
803
934
  codeName: 'E_EVIDENCE_CONTENT_MISMATCH',
804
935
  };
805
936
  }
@@ -952,12 +1083,90 @@ async function validateFiles(paths, projectRoot, taskId, commitSha) {
952
1083
  }
953
1084
  return { ok: true, atom: { kind: 'files', files } };
954
1085
  }
1086
+ /**
1087
+ * Resolve the tree that evidence tools should RUN in, given the CLEO store
1088
+ * root.
1089
+ *
1090
+ * `projectRoot` is the store root. For a git worktree, `getProjectRoot()`
1091
+ * deliberately resolves to the MAIN repo so all worktrees share one `.cleo/`
1092
+ * database — correct for the store, wrong as a tool's working directory.
1093
+ * Using it to spawn `tool:` evidence made a verify launched from a worktree
1094
+ * measure the main checkout instead (gh#1220, gh#1226): a peer's in-flight
1095
+ * branch and untracked files decided the result. A red peer produced a false
1096
+ * FAIL; a green peer produced a silent false PASS attesting a run that never
1097
+ * touched the code under test (gh#1230).
1098
+ *
1099
+ * Resolution is deliberately CONSERVATIVE: the caller's git toplevel is used
1100
+ * only when it belongs to the SAME project — i.e. when its canonical main
1101
+ * repo equals `projectRoot`. Anything else (an unrelated cwd, a test harness
1102
+ * pointing at a tmpdir, a non-git cwd) falls back to `projectRoot`, so
1103
+ * single-checkout behaviour is bit-for-bit unchanged.
1104
+ *
1105
+ * @param projectRoot - Absolute CLEO store root.
1106
+ * @param cwd - Directory the CLI was invoked from. Defaults to `process.cwd()`.
1107
+ * @returns Absolute path of the tree to execute in.
1108
+ *
1109
+ * @task T12112 (gh#1220, gh#1226, gh#1230)
1110
+ */
1111
+ export function resolveEvidenceExecutionRoot(projectRoot,
1112
+ // This function's entire purpose is to recover the tree the CLI was INVOKED
1113
+ // from, which is by definition not the project root. The sanctioned
1114
+ // `resolveOrCwd()` falls back to `getProjectRoot()`, which deliberately
1115
+ // collapses a worktree to its main repo — using it here would make this
1116
+ // function return `projectRoot` unconditionally and silently revert gh#1220
1117
+ // while every test stayed green. The bare cwd is the only correct source,
1118
+ // and it only LOCATES a candidate; the same-project check below decides
1119
+ // whether it is honoured.
1120
+ cwd = process.cwd()) {
1121
+ let toplevel;
1122
+ try {
1123
+ toplevel = execFileSync('git', ['rev-parse', '--show-toplevel'], {
1124
+ cwd,
1125
+ encoding: 'utf-8',
1126
+ stdio: ['ignore', 'pipe', 'ignore'],
1127
+ }).trim();
1128
+ }
1129
+ catch {
1130
+ return projectRoot; // not a git checkout — nothing better to offer
1131
+ }
1132
+ if (!toplevel)
1133
+ return projectRoot;
1134
+ const sameProject = (a, b) => {
1135
+ const norm = (x) => {
1136
+ try {
1137
+ return realpathSync(x);
1138
+ }
1139
+ catch {
1140
+ return resolvePath(x);
1141
+ }
1142
+ };
1143
+ return norm(a) === norm(b);
1144
+ };
1145
+ // Only redirect when the caller's tree is a worktree OF this project.
1146
+ if (sameProject(resolveCanonicalProjectRoot(toplevel), projectRoot))
1147
+ return toplevel;
1148
+ return projectRoot;
1149
+ }
955
1150
  async function validateTestRun(path, projectRoot) {
956
- const abs = isAbsolute(path) ? path : resolvePath(projectRoot, path);
1151
+ // gh#1226: a relative test-run path names a report the caller just wrote,
1152
+ // in the caller's tree. Resolving it against the shared store root made a
1153
+ // report written in a worktree report "file does not exist". Try the
1154
+ // execution root first, then fall back to the store root so an absolute or
1155
+ // store-relative path keeps working.
1156
+ const executionRoot = resolveEvidenceExecutionRoot(projectRoot);
1157
+ let abs;
1158
+ if (isAbsolute(path)) {
1159
+ abs = path;
1160
+ }
1161
+ else {
1162
+ const fromExecution = resolvePath(executionRoot, path);
1163
+ abs = existsSync(fromExecution) ? fromExecution : resolvePath(projectRoot, path);
1164
+ }
957
1165
  if (!existsSync(abs)) {
958
1166
  return {
959
1167
  ok: false,
960
- reason: `test-run file does not exist: ${path}`,
1168
+ reason: `test-run file does not exist: ${path} ` +
1169
+ `(looked in ${executionRoot}${executionRoot === projectRoot ? '' : ` and ${projectRoot}`})`,
961
1170
  codeName: 'E_EVIDENCE_INVALID',
962
1171
  };
963
1172
  }
@@ -1052,16 +1261,24 @@ async function validateTool(tool, projectRoot) {
1052
1261
  : 'E_EVIDENCE_TOOL_UNAVAILABLE',
1053
1262
  };
1054
1263
  }
1055
- const result = await runToolCached(resolution.command, projectRoot);
1264
+ // gh#1220/#1226/#1230: spawn in — and fingerprint against — the tree the
1265
+ // operator actually invoked from, not the shared store root.
1266
+ const executionRoot = resolveEvidenceExecutionRoot(projectRoot);
1267
+ const result = await runToolCached(resolution.command, projectRoot, { executionRoot });
1056
1268
  // T12025: wall-clock child-process deadline exceeded — the tool was
1057
1269
  // terminated and the lock released. Signal retry; do NOT record a partially
1058
1270
  // captured gate.
1059
1271
  if (result.timedOut) {
1272
+ const envKey = `CLEO_TOOL_TIMEOUT_${resolution.command.canonical.toUpperCase().replace(/-/g, '_')}`;
1273
+ const deadlineMs = resolveSpawnTimeoutMs(resolution.command.canonical);
1060
1274
  return {
1061
1275
  ok: false,
1062
1276
  reason: `Tool "${tool}" → ${resolution.command.cmd} ${resolution.command.args.join(' ')} ` +
1063
- `exceeded the wall-clock deadline and was terminated. The lock and semaphore ` +
1064
- `slot are released — retry the verify once the system has capacity.`,
1277
+ `exceeded its ${Math.round(deadlineMs / 1000)}s wall-clock deadline in ${result.executionRoot} ` +
1278
+ `and was terminated. No result was captured, so nothing was cached. ` +
1279
+ `RETRYING UNCHANGED WILL FAIL IDENTICALLY and will re-run the whole tool first — ` +
1280
+ `raise the deadline with ${envKey}=<milliseconds> (e.g. ${envKey}=1800000 for 30 min) ` +
1281
+ `and verify again.`,
1065
1282
  codeName: 'E_EVIDENCE_TOOL_TIMEOUT',
1066
1283
  };
1067
1284
  }
@@ -1078,11 +1295,36 @@ async function validateTool(tool, projectRoot) {
1078
1295
  codeName: 'E_EVIDENCE_TOOL_BUSY',
1079
1296
  };
1080
1297
  }
1298
+ // gh#1381: a tool KILLED after it started is a different fact from a tool
1299
+ // that never started, and until the signal was bound in `spawnCmd` the two
1300
+ // arrived here as the same `exitCode: null`. The message below used to say
1301
+ // "binary missing or spawn error" for both — so an OOM-killed 41-minute test
1302
+ // suite sent three separate operators hunting a binary that was present, and
1303
+ // the one diagnostic that would have helped (you exceeded the memory
1304
+ // ceiling) was the one fact discarded.
1305
+ if (result.signal !== null) {
1306
+ const limit = describeMemoryLimit(resolution.command.canonical);
1307
+ return {
1308
+ ok: false,
1309
+ reason: `Tool "${tool}" → ${resolution.command.cmd} ${resolution.command.args.join(' ')} ` +
1310
+ `RAN for ${Math.round(result.durationMs / 1000)}s in ${result.executionRoot} and was ` +
1311
+ `KILLED by ${result.signal}. The binary is present and the command started — ` +
1312
+ `this is not a resolution problem.${limit} ` +
1313
+ `Nothing was cached, so a retry re-runs the tool from scratch and will be killed ` +
1314
+ `identically unless the cause is addressed.` +
1315
+ (result.stdoutTail || result.stderrTail
1316
+ ? ` Last output before the kill: ${tailString(`${result.stdoutTail}\n${result.stderrTail}`, 512)}`
1317
+ : ''),
1318
+ codeName: 'E_EVIDENCE_TOOL_KILLED',
1319
+ };
1320
+ }
1081
1321
  if (result.exitCode === null) {
1082
1322
  return {
1083
1323
  ok: false,
1084
1324
  reason: `Tool "${tool}" → ${resolution.command.cmd} ${resolution.command.args.join(' ')} ` +
1085
- `could not be executed (binary missing or spawn error)`,
1325
+ `could not be executed in ${result.executionRoot} — the process never started ` +
1326
+ `(binary missing, not executable, or spawn error). No signal was delivered, so ` +
1327
+ `it did not run and get killed.`,
1086
1328
  codeName: 'E_EVIDENCE_TOOL_UNAVAILABLE',
1087
1329
  };
1088
1330
  }
@@ -1471,6 +1713,59 @@ export function checkCallsiteCoverageAtom(atoms) {
1471
1713
  }
1472
1714
  return null;
1473
1715
  }
1716
+ /**
1717
+ * Was this task's `implemented` gate satisfied by a DECISION rather than by a
1718
+ * code change?
1719
+ *
1720
+ * ADR-051 lets `implemented` be satisfied by `[decision, files]` or
1721
+ * `[decision, note]` — the shape of a pure audit, review or spike: read code,
1722
+ * record findings, change nothing. But `testsPassed` accepts only
1723
+ * `test-run | tool | pr` and `qaPassed` only `tool | pr`, so such a task could
1724
+ * not complete (gh#1215). The remaining escapes are all unusable by
1725
+ * construction: `tool:test` is meaningless for a task that changed nothing,
1726
+ * and `CLEO_OWNER_OVERRIDE` is capped per session and rejected on critical
1727
+ * gates anyway. A correctly-evidenced audit task simply stayed pending.
1728
+ *
1729
+ * A decision-only task has no tests to run and nothing to lint, so those gates
1730
+ * are satisfied by ABSENCE — the same reasoning as the T12083
1731
+ * `notApplicable` tool atom, which records that a gate was satisfied because
1732
+ * the project has no such toolchain rather than silently passing it.
1733
+ *
1734
+ * Deliberately narrow: a `commit:` or `pr:` atom anywhere in the `implemented`
1735
+ * evidence means code DID change, and the normal gates apply in full. The
1736
+ * exemption cannot be reached by choosing weaker evidence — `implemented`
1737
+ * still had to be satisfied first, and `decision:` is a hard atom validated
1738
+ * against the BRAIN decision-store.
1739
+ *
1740
+ * @param implementedEvidence - Stored evidence for the `implemented` gate.
1741
+ * @returns `true` when the task demonstrably changed no code.
1742
+ *
1743
+ * @task T12125 (gh#1215)
1744
+ * @adr ADR-051 §2.3
1745
+ */
1746
+ export function isDecisionOnlyImplementation(implementedEvidence) {
1747
+ const atoms = implementedEvidence?.atoms;
1748
+ if (!atoms || atoms.length === 0)
1749
+ return false;
1750
+ const hasDecision = atoms.some((a) => a.kind === 'decision');
1751
+ if (!hasDecision)
1752
+ return false;
1753
+ // Any evidence of an actual code change disqualifies the exemption.
1754
+ return !atoms.some((a) => a.kind === 'commit' || a.kind === 'pr');
1755
+ }
1756
+ /**
1757
+ * Gates that a decision-only task satisfies by absence.
1758
+ *
1759
+ * `testsPassed` and `qaPassed` measure the effect of a code change. With no
1760
+ * code change there is nothing for them to measure, and demanding them makes
1761
+ * the task uncompletable rather than well-verified.
1762
+ *
1763
+ * @task T12125 (gh#1215)
1764
+ */
1765
+ export const DECISION_ONLY_INAPPLICABLE_GATES = Object.freeze([
1766
+ 'testsPassed',
1767
+ 'qaPassed',
1768
+ ]);
1474
1769
  // ---------------------------------------------------------------------------
1475
1770
  // Gate minimum evaluation
1476
1771
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/tasks/evidence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evidence.js","sourceRoot":"","sources":["../../src/tasks/evidence.ts"],"names":[],"mappings":"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"}