@cleocode/core 2026.10.2 → 2026.10.4

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 (228) hide show
  1. package/dist/build-provenance.json +2 -2
  2. package/dist/cloud/http.d.ts +2 -0
  3. package/dist/cloud/http.d.ts.map +1 -1
  4. package/dist/cloud/http.js +3 -0
  5. package/dist/cloud/http.js.map +1 -1
  6. package/dist/cloud/manifest-check.d.ts.map +1 -1
  7. package/dist/cloud/manifest-check.js +13 -0
  8. package/dist/cloud/manifest-check.js.map +1 -1
  9. package/dist/cloud/nexus-enrol.d.ts +9 -0
  10. package/dist/cloud/nexus-enrol.d.ts.map +1 -1
  11. package/dist/cloud/nexus-enrol.js +45 -2
  12. package/dist/cloud/nexus-enrol.js.map +1 -1
  13. package/dist/cloud/nexus-first-run.d.ts +142 -0
  14. package/dist/cloud/nexus-first-run.d.ts.map +1 -0
  15. package/dist/cloud/nexus-first-run.js +352 -0
  16. package/dist/cloud/nexus-first-run.js.map +1 -0
  17. package/dist/cloud/nexus-project-names.d.ts +173 -0
  18. package/dist/cloud/nexus-project-names.d.ts.map +1 -0
  19. package/dist/cloud/nexus-project-names.js +314 -0
  20. package/dist/cloud/nexus-project-names.js.map +1 -0
  21. package/dist/cloud/nexus-vault-keys.d.ts +35 -3
  22. package/dist/cloud/nexus-vault-keys.d.ts.map +1 -1
  23. package/dist/cloud/nexus-vault-keys.js +212 -22
  24. package/dist/cloud/nexus-vault-keys.js.map +1 -1
  25. package/dist/cloud/nexus-vault.d.ts.map +1 -1
  26. package/dist/cloud/nexus-vault.js +14 -2
  27. package/dist/cloud/nexus-vault.js.map +1 -1
  28. package/dist/dispatch/contracts/derive-output-contract.d.ts +1 -1
  29. package/dist/dispatch/contracts/derive-output-contract.d.ts.map +1 -1
  30. package/dist/dispatch/contracts/derive-output-contract.js +2 -1
  31. package/dist/dispatch/contracts/derive-output-contract.js.map +1 -1
  32. package/dist/dispatch/contracts/output-contracts.d.ts +2 -1
  33. package/dist/dispatch/contracts/output-contracts.d.ts.map +1 -1
  34. package/dist/dispatch/contracts/output-contracts.js +1 -1
  35. package/dist/dispatch/contracts/output-contracts.js.map +1 -1
  36. package/dist/dispatch/mvi-projection.d.ts +1 -1
  37. package/dist/dispatch/mvi-projection.d.ts.map +1 -1
  38. package/dist/dispatch/mvi-projection.js +1 -1
  39. package/dist/dispatch/mvi-projection.js.map +1 -1
  40. package/dist/docs/export-document.js +24462 -24572
  41. package/dist/docs/export-document.js.map +3 -3
  42. package/dist/doctor/db-substrate.d.ts +6 -9
  43. package/dist/doctor/db-substrate.d.ts.map +1 -1
  44. package/dist/doctor/db-substrate.js +10 -14
  45. package/dist/doctor/db-substrate.js.map +1 -1
  46. package/dist/doctor/migrations.d.ts +18 -0
  47. package/dist/doctor/migrations.d.ts.map +1 -1
  48. package/dist/doctor/migrations.js +54 -2
  49. package/dist/doctor/migrations.js.map +1 -1
  50. package/dist/error-catalog.js +1 -1
  51. package/dist/error-catalog.js.map +1 -1
  52. package/dist/errors.d.ts +1 -1
  53. package/dist/errors.d.ts.map +1 -1
  54. package/dist/errors.js +1 -1
  55. package/dist/errors.js.map +1 -1
  56. package/dist/init.d.ts.map +1 -1
  57. package/dist/init.js +21 -5
  58. package/dist/init.js.map +1 -1
  59. package/dist/llm/conversation.d.ts.map +1 -1
  60. package/dist/llm/conversation.js +15 -4
  61. package/dist/llm/conversation.js.map +1 -1
  62. package/dist/llm/plugin-facade.js +277 -376
  63. package/dist/llm/plugin-facade.js.map +3 -3
  64. package/dist/llm/transports/bedrock.d.ts +1 -0
  65. package/dist/llm/transports/bedrock.d.ts.map +1 -1
  66. package/dist/llm/transports/bedrock.js +30 -12
  67. package/dist/llm/transports/bedrock.js.map +1 -1
  68. package/dist/memory/decision-contradiction.d.ts.map +1 -1
  69. package/dist/memory/decision-contradiction.js +10 -5
  70. package/dist/memory/decision-contradiction.js.map +1 -1
  71. package/dist/memory/dialectic-evaluator.d.ts.map +1 -1
  72. package/dist/memory/dialectic-evaluator.js +4 -1
  73. package/dist/memory/dialectic-evaluator.js.map +1 -1
  74. package/dist/memory/transcript-extractor.d.ts.map +1 -1
  75. package/dist/memory/transcript-extractor.js +3 -2
  76. package/dist/memory/transcript-extractor.js.map +1 -1
  77. package/dist/metrics/token-service.d.ts +16 -0
  78. package/dist/metrics/token-service.d.ts.map +1 -1
  79. package/dist/metrics/token-service.js +18 -0
  80. package/dist/metrics/token-service.js.map +1 -1
  81. package/dist/nexus/api-contracts.d.ts.map +1 -1
  82. package/dist/nexus/api-contracts.js +27 -11
  83. package/dist/nexus/api-contracts.js.map +1 -1
  84. package/dist/nexus/api-extractors/http-extractor.d.ts +2 -2
  85. package/dist/nexus/api-extractors/http-extractor.d.ts.map +1 -1
  86. package/dist/nexus/api-extractors/http-extractor.js +3 -3
  87. package/dist/nexus/api-extractors/http-extractor.js.map +1 -1
  88. package/dist/nexus/clusters.js +1 -1
  89. package/dist/nexus/clusters.js.map +1 -1
  90. package/dist/nexus/diff.d.ts +1 -1
  91. package/dist/nexus/diff.d.ts.map +1 -1
  92. package/dist/nexus/diff.js +3 -2
  93. package/dist/nexus/diff.js.map +1 -1
  94. package/dist/nexus/flows.js +1 -1
  95. package/dist/nexus/flows.js.map +1 -1
  96. package/dist/nexus/identity.d.ts +8 -0
  97. package/dist/nexus/identity.d.ts.map +1 -1
  98. package/dist/nexus/identity.js +17 -1
  99. package/dist/nexus/identity.js.map +1 -1
  100. package/dist/nexus/index.d.ts +1 -1
  101. package/dist/nexus/index.d.ts.map +1 -1
  102. package/dist/nexus/index.js +2 -2
  103. package/dist/nexus/index.js.map +1 -1
  104. package/dist/nexus/nexus-bridge.d.ts.map +1 -1
  105. package/dist/nexus/nexus-bridge.js +5 -5
  106. package/dist/nexus/nexus-bridge.js.map +1 -1
  107. package/dist/nexus/registry.d.ts +22 -0
  108. package/dist/nexus/registry.d.ts.map +1 -1
  109. package/dist/nexus/registry.js +76 -1
  110. package/dist/nexus/registry.js.map +1 -1
  111. package/dist/paths.js +1 -1
  112. package/dist/paths.js.map +1 -1
  113. package/dist/project-scope.js +1 -1
  114. package/dist/project-scope.js.map +1 -1
  115. package/dist/project-tombstone.js +1 -1
  116. package/dist/project-tombstone.js.map +1 -1
  117. package/dist/release/open.d.ts +3 -6
  118. package/dist/release/open.d.ts.map +1 -1
  119. package/dist/release/open.js +59 -23
  120. package/dist/release/open.js.map +1 -1
  121. package/dist/release/preflight-skip.d.ts +69 -10
  122. package/dist/release/preflight-skip.d.ts.map +1 -1
  123. package/dist/release/preflight-skip.js +195 -47
  124. package/dist/release/preflight-skip.js.map +1 -1
  125. package/dist/render/colors.js +1 -19
  126. package/dist/render/colors.js.map +1 -1
  127. package/dist/render/tasks/colors.js +1 -1
  128. package/dist/render/tasks/colors.js.map +1 -1
  129. package/dist/resources/governor.d.ts +12 -0
  130. package/dist/resources/governor.d.ts.map +1 -1
  131. package/dist/resources/governor.js +5 -1
  132. package/dist/resources/governor.js.map +1 -1
  133. package/dist/resources/heavy-command-hook-delivery.d.ts +144 -0
  134. package/dist/resources/heavy-command-hook-delivery.d.ts.map +1 -0
  135. package/dist/resources/heavy-command-hook-delivery.js +204 -0
  136. package/dist/resources/heavy-command-hook-delivery.js.map +1 -0
  137. package/dist/resources/heavy-command.d.ts +69 -0
  138. package/dist/resources/heavy-command.d.ts.map +1 -1
  139. package/dist/resources/heavy-command.js +479 -7
  140. package/dist/resources/heavy-command.js.map +1 -1
  141. package/dist/resources/run-class.d.ts.map +1 -1
  142. package/dist/resources/run-class.js +1 -0
  143. package/dist/resources/run-class.js.map +1 -1
  144. package/dist/routing/build-command-groups.d.ts +1 -1
  145. package/dist/routing/build-command-groups.d.ts.map +1 -1
  146. package/dist/routing/build-command-groups.js +4 -1
  147. package/dist/routing/build-command-groups.js.map +1 -1
  148. package/dist/scaffold/ensure-skills.d.ts.map +1 -1
  149. package/dist/scaffold/ensure-skills.js +58 -2
  150. package/dist/scaffold/ensure-skills.js.map +1 -1
  151. package/dist/selfimprove/fix-gen.js +277 -376
  152. package/dist/selfimprove/fix-gen.js.map +3 -3
  153. package/dist/sessions/briefing.d.ts.map +1 -1
  154. package/dist/sessions/briefing.js +11 -0
  155. package/dist/sessions/briefing.js.map +1 -1
  156. package/dist/store/dual-scope-db.d.ts.map +1 -1
  157. package/dist/store/dual-scope-db.js +6 -1
  158. package/dist/store/dual-scope-db.js.map +1 -1
  159. package/dist/store/portable-bundle-scan.d.ts +22 -0
  160. package/dist/store/portable-bundle-scan.d.ts.map +1 -1
  161. package/dist/store/portable-bundle-scan.js +97 -25
  162. package/dist/store/portable-bundle-scan.js.map +1 -1
  163. package/dist/store/portable-bundle.d.ts +7 -0
  164. package/dist/store/portable-bundle.d.ts.map +1 -1
  165. package/dist/store/portable-bundle.js +10 -1
  166. package/dist/store/portable-bundle.js.map +1 -1
  167. package/dist/store/table-classification.d.ts +27 -0
  168. package/dist/store/table-classification.d.ts.map +1 -1
  169. package/dist/store/table-classification.js +32 -0
  170. package/dist/store/table-classification.js.map +1 -1
  171. package/dist/store/vault-manifest.d.ts +5 -1
  172. package/dist/store/vault-manifest.d.ts.map +1 -1
  173. package/dist/store/vault-manifest.js +9 -2
  174. package/dist/store/vault-manifest.js.map +1 -1
  175. package/dist/system/health.d.ts +13 -0
  176. package/dist/system/health.d.ts.map +1 -1
  177. package/dist/system/health.js +96 -1
  178. package/dist/system/health.js.map +1 -1
  179. package/dist/tasks/affected-packages.d.ts +20 -7
  180. package/dist/tasks/affected-packages.d.ts.map +1 -1
  181. package/dist/tasks/affected-packages.js +39 -13
  182. package/dist/tasks/affected-packages.js.map +1 -1
  183. package/dist/tasks/affected-template.d.ts +93 -0
  184. package/dist/tasks/affected-template.d.ts.map +1 -0
  185. package/dist/tasks/affected-template.js +198 -0
  186. package/dist/tasks/affected-template.js.map +1 -0
  187. package/dist/tasks/command-line.d.ts +4 -1
  188. package/dist/tasks/command-line.d.ts.map +1 -1
  189. package/dist/tasks/command-line.js +7 -2
  190. package/dist/tasks/command-line.js.map +1 -1
  191. package/dist/tasks/done-plan.d.ts.map +1 -1
  192. package/dist/tasks/done-plan.js +12 -2
  193. package/dist/tasks/done-plan.js.map +1 -1
  194. package/dist/tasks/duplicate-detector.d.ts.map +1 -1
  195. package/dist/tasks/duplicate-detector.js +11 -5
  196. package/dist/tasks/duplicate-detector.js.map +1 -1
  197. package/dist/tasks/evidence.d.ts.map +1 -1
  198. package/dist/tasks/evidence.js +185 -11
  199. package/dist/tasks/evidence.js.map +1 -1
  200. package/dist/tasks/heavy-tool-env.d.ts +385 -18
  201. package/dist/tasks/heavy-tool-env.d.ts.map +1 -1
  202. package/dist/tasks/heavy-tool-env.js +719 -40
  203. package/dist/tasks/heavy-tool-env.js.map +1 -1
  204. package/dist/tasks/index.d.ts +2 -2
  205. package/dist/tasks/index.d.ts.map +1 -1
  206. package/dist/tasks/index.js +1 -1
  207. package/dist/tasks/index.js.map +1 -1
  208. package/dist/tasks/tool-cache-env.d.ts +20 -13
  209. package/dist/tasks/tool-cache-env.d.ts.map +1 -1
  210. package/dist/tasks/tool-cache-env.js +27 -48
  211. package/dist/tasks/tool-cache-env.js.map +1 -1
  212. package/dist/tasks/tool-cache.d.ts +8 -0
  213. package/dist/tasks/tool-cache.d.ts.map +1 -1
  214. package/dist/tasks/tool-cache.js +19 -6
  215. package/dist/tasks/tool-cache.js.map +1 -1
  216. package/dist/tasks/tool-semaphore.d.ts +66 -23
  217. package/dist/tasks/tool-semaphore.d.ts.map +1 -1
  218. package/dist/tasks/tool-semaphore.js +96 -34
  219. package/dist/tasks/tool-semaphore.js.map +1 -1
  220. package/dist/upgrade.d.ts.map +1 -1
  221. package/dist/upgrade.js +37 -4
  222. package/dist/upgrade.js.map +1 -1
  223. package/dist/validation/doctor/checks.d.ts +17 -0
  224. package/dist/validation/doctor/checks.d.ts.map +1 -1
  225. package/dist/validation/doctor/checks.js +83 -0
  226. package/dist/validation/doctor/checks.js.map +1 -1
  227. package/package.json +13 -13
  228. package/schemas/project-context.schema.json +5 -1
@@ -1 +1 @@
1
- {"version":3,"file":"affected-packages.d.ts","sourceRoot":"","sources":["../../src/tasks/affected-packages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"affected-packages.d.ts","sourceRoot":"","sources":["../../src/tasks/affected-packages.ts"],"names":[],"mappings":"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"}
@@ -26,7 +26,8 @@ import { createHash } from 'node:crypto';
26
26
  import { existsSync, readdirSync, readFileSync, statSync } from 'node:fs';
27
27
  import { join, relative } from 'node:path';
28
28
  import { promisify } from 'node:util';
29
- import { isCiDocumentPath } from '../release/ci-evidence.js';
29
+ import { isCiDocumentPath, readCiSatisfies } from '../release/ci-evidence.js';
30
+ import { resolveAffectedTemplate } from './affected-template.js';
30
31
  import { splitCommandLine } from './command-line.js';
31
32
  import { acquireGlobalSlot } from './tool-semaphore.js';
32
33
  /**
@@ -357,8 +358,8 @@ export function scriptTestTargets(root, packages, direct) {
357
358
  /**
358
359
  * Expand a `testing.affectedCommand` template into a spawnable command.
359
360
  * `{projects}` → `--project <name>` per package, `{filters}` → `--filter
360
- * <name>` per package, `{packages}` → the names. Each expands to separate
361
- * arguments. The template is split with POSIX `sh` quoting and run without a
361
+ * <name>` per package, `{workspaces}` → `--workspace <name>` per package (npm,
362
+ * T13125), `{packages}` → the names. Each expands to separate arguments. The template is split with POSIX `sh` quoting and run without a
362
363
  * shell, so shell syntax (`&&`, `|`, `$`, …) is refused rather than passed to
363
364
  * the target as literal words, which could run a different program and
364
365
  * false-PASS (T12718).
@@ -376,6 +377,8 @@ export function buildAffectedTestCommand(template, packages, projects = packages
376
377
  return projects.flatMap((p) => ['--project', p]);
377
378
  if (word === '{filters}')
378
379
  return packages.flatMap((p) => ['--filter', p]);
380
+ if (word === '{workspaces}')
381
+ return packages.flatMap((p) => ['--workspace', p]);
379
382
  if (word === '{packages}')
380
383
  return [...packages];
381
384
  return [word];
@@ -448,15 +451,18 @@ export function changedPathsSinceDefault(root) {
448
451
  export async function planAffectedTestRun(storeRoot, root, opts = {}) {
449
452
  const { readRawProjectContext } = await import('./tool-resolver.js');
450
453
  const testing = readRawProjectContext(storeRoot)?.testing;
451
- const template = typeof testing?.affectedCommand === 'string' ? testing.affectedCommand : '';
452
- if (template.trim() === '') {
454
+ // T13125: a declared template, else one derived from testing.command.
455
+ const resolved = resolveAffectedTemplate(testing, root);
456
+ if (resolved === null) {
453
457
  return {
454
458
  ok: false,
455
459
  codeName: 'E_EVIDENCE_TOOL_UNAVAILABLE',
456
460
  reason: 'tool:test-affected needs testing.affectedCommand in .cleo/project-context.json, e.g. ' +
457
- '"pnpm exec vitest run {projects}" ({projects}/{filters}/{packages} expand per package).',
461
+ '"pnpm exec vitest run {projects}" ({projects}/{filters}/{workspaces}/{packages} expand per ' +
462
+ 'package); none could be derived from testing.command.',
458
463
  };
459
464
  }
465
+ const template = resolved.template;
460
466
  // T12718: a template the runner cannot split without a shell is a config
461
467
  // error, refused before anything runs — never a pass for a truncated argv.
462
468
  let templateWords;
@@ -519,14 +525,31 @@ export async function planAffectedTestRun(storeRoot, root, opts = {}) {
519
525
  packages: scope.packages,
520
526
  projects,
521
527
  untested,
528
+ template: resolved,
522
529
  };
523
530
  }
531
+ /**
532
+ * Why a scope-aware `tool:test` runs the whole suite when no affected template
533
+ * is declared or derivable (T13125), naming `ci:<pr>` as the preferred
534
+ * `testsPassed` evidence when the project accepts it.
535
+ *
536
+ * @param storeRoot - CLEO store root (project context).
537
+ * @returns The reason recorded on the `tool` atom.
538
+ * @task T13125
539
+ */
540
+ export function wholeSuiteReason(storeRoot) {
541
+ const base = 'no testing.affectedCommand is declared and none can be derived from testing.command, so ' +
542
+ 'every tool:test runs the whole suite (cleo doctor proposes one where it can)';
543
+ return readCiSatisfies(storeRoot)
544
+ ? `${base}; evidence.ciSatisfies is set, so ci:<pr> (the merged PR's CI) is the preferred testsPassed evidence`
545
+ : base;
546
+ }
524
547
  /**
525
548
  * Decide how `tool:test` runs (T12959): the affected packages first whenever
526
- * `testing.affectedCommand` is declared, the full suite only when that scope
527
- * cannot be trusted. Full when the project opts out
528
- * (`testing.preferAffected: false`), declares no template, or the change is
529
- * not known to be unmerged (a scoped run counts before merge only, D11150);
549
+ * an affected template is declared (`testing.affectedCommand`) or derivable
550
+ * from `testing.command` (T13125), the full suite only when that scope cannot
551
+ * be trusted. Full when the project opts out (`testing.preferAffected:
552
+ * false`), has no template, or the change is not known to be unmerged (a scoped run counts before merge only, D11150);
530
553
  * otherwise whatever {@link planAffectedTestRun} decides, its refusal (root
531
554
  * config changed, no origin, nothing touched, …) becoming the full run's
532
555
  * recorded reason. An affected plan that would leave a dependent package
@@ -548,10 +571,13 @@ export async function planAffectedTestRun(storeRoot, root, opts = {}) {
548
571
  export async function planScopedTestRun(storeRoot, root, opts = {}) {
549
572
  const { readRawProjectContext } = await import('./tool-resolver.js');
550
573
  const testing = readRawProjectContext(storeRoot)?.testing;
551
- if (typeof testing?.affectedCommand !== 'string' || testing.affectedCommand.trim() === '') {
552
- return { scope: 'full', reason: null };
574
+ // T13125: no declared template and none derivable is the one case that
575
+ // runs the whole suite on every verify; the reason says so and names the way
576
+ // out, so the atom and `cleo done --plan` show it instead of staying silent.
577
+ if (resolveAffectedTemplate(testing, root) === null) {
578
+ return { scope: 'full', reason: wholeSuiteReason(storeRoot) };
553
579
  }
554
- if (testing.preferAffected === false) {
580
+ if (testing?.preferAffected === false) {
555
581
  return { scope: 'full', reason: 'testing.preferAffected is false' };
556
582
  }
557
583
  if (opts.mergeState) {
@@ -1 +1 @@
1
- {"version":3,"file":"affected-packages.js","sourceRoot":"","sources":["../../src/tasks/affected-packages.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"affected-packages.js","sourceRoot":"","sources":["../../src/tasks/affected-packages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * The affected-scope test template a project runs under, declared or derived
3
+ * (T13125).
4
+ *
5
+ * A scope-aware `tool:test` (T12959) runs only the packages a branch changed,
6
+ * plus their dependents, when the project declares `testing.affectedCommand`.
7
+ * Most workspaces never declared one, so every `cleo verify --evidence
8
+ * tool:test` ran the whole workspace suite, once per task: on 2026-10-03
9
+ * VidaPeps (`testing.command` = `pnpm -r --no-bail --if-present run test`)
10
+ * ran its entire suite for T1955 and then again for T1956, back to back.
11
+ *
12
+ * For the commands whose workspace-wide form names the scope as one flag, the
13
+ * affected form is mechanical — the same command with that flag replaced by a
14
+ * per-package selection:
15
+ *
16
+ * | Workspace-wide test command | Affected template |
17
+ * |------------------------------------|---------------------------------------|
18
+ * | `pnpm -r [flags] [run] test` | `pnpm {filters} [flags] [run] test` |
19
+ * | `npm [run] test --workspaces` | `npm [run] test {workspaces}` |
20
+ * | `turbo run test` (no `--filter`) | `turbo run test {filters}` |
21
+ *
22
+ * It runs the same per-package `test` scripts the full command runs, on the
23
+ * subset; the affected planner still refuses the scope (a full run) when a
24
+ * change touches anything outside every package. A `<pm> run test` /
25
+ * `npm test` command that delegates to the root `test` script is read through
26
+ * that script once. Anything else derives nothing.
27
+ *
28
+ * A declared `testing.affectedCommand` always wins; a derived one is reported
29
+ * as derived, with the command it came from, so `cleo init`, `cleo detect`
30
+ * and `cleo doctor` can propose it and an evidence atom can say what it ran.
31
+ *
32
+ * @module
33
+ * @task T13125
34
+ */
35
+ /** Where an affected template came from. */
36
+ export type AffectedTemplateSource = 'declared' | 'derived';
37
+ /** An affected-scope test template and its provenance. */
38
+ export interface AffectedTemplate {
39
+ /** The template, e.g. `pnpm {filters} --no-bail --if-present run test`. */
40
+ readonly template: string;
41
+ /** `declared` in `.cleo/project-context.json`, or `derived` from `testing.command`. */
42
+ readonly source: AffectedTemplateSource;
43
+ /** For a derived template: the workspace-wide command it was derived from. */
44
+ readonly basis: string | null;
45
+ }
46
+ /**
47
+ * Whether `root` is a workspace root: a `pnpm-workspace.yaml`, or a
48
+ * `package.json` declaring `workspaces`.
49
+ *
50
+ * @param root - Directory to inspect.
51
+ * @returns `true` for a workspace root.
52
+ * @task T13125
53
+ */
54
+ export declare function isWorkspaceRoot(root: string): boolean;
55
+ /**
56
+ * Derive an affected-scope test template from a workspace's test command.
57
+ *
58
+ * @param root - The workspace root (its `package.json` and workspace file are read).
59
+ * @param testCommand - `testing.command`, as declared or detected; when absent,
60
+ * the root `test` script (what the language default runs) is read instead.
61
+ * @returns The template and the workspace-wide command it came from, or `null`
62
+ * when the command is not one whose affected form is mechanical, uses shell
63
+ * syntax, or `root` is not a workspace.
64
+ *
65
+ * @example
66
+ * ```ts
67
+ * proposeAffectedCommand(root, 'pnpm -r --no-bail --if-present run test');
68
+ * // → { template: 'pnpm {filters} --no-bail --if-present run test',
69
+ * // basis: 'pnpm -r --no-bail --if-present run test' }
70
+ * ```
71
+ *
72
+ * @task T13125
73
+ */
74
+ export declare function proposeAffectedCommand(root: string, testCommand: string | undefined): {
75
+ template: string;
76
+ basis: string;
77
+ } | null;
78
+ /**
79
+ * The affected template a project's evidence runs use: the declared
80
+ * `testing.affectedCommand`, else one derived from `testing.command`
81
+ * ({@link proposeAffectedCommand}), else `null`.
82
+ *
83
+ * @param testing - The raw `testing` block of `.cleo/project-context.json`.
84
+ * @param root - The workspace root the derivation inspects.
85
+ * @returns The template with its provenance, or `null`.
86
+ *
87
+ * @task T13125
88
+ */
89
+ export declare function resolveAffectedTemplate(testing: {
90
+ affectedCommand?: unknown;
91
+ command?: unknown;
92
+ } | undefined, root: string): AffectedTemplate | null;
93
+ //# sourceMappingURL=affected-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"affected-template.d.ts","sourceRoot":"","sources":["../../src/tasks/affected-template.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAMH,4CAA4C;AAC5C,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,SAAS,CAAC;AAE5D,0DAA0D;AAC1D,MAAM,WAAW,gBAAgB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uFAAuF;IACvF,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;IACxC,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAeD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAUrD;AA4DD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA2B5C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,EACrE,IAAI,EAAE,MAAM,GACX,gBAAgB,GAAG,IAAI,CAUzB"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * The affected-scope test template a project runs under, declared or derived
3
+ * (T13125).
4
+ *
5
+ * A scope-aware `tool:test` (T12959) runs only the packages a branch changed,
6
+ * plus their dependents, when the project declares `testing.affectedCommand`.
7
+ * Most workspaces never declared one, so every `cleo verify --evidence
8
+ * tool:test` ran the whole workspace suite, once per task: on 2026-10-03
9
+ * VidaPeps (`testing.command` = `pnpm -r --no-bail --if-present run test`)
10
+ * ran its entire suite for T1955 and then again for T1956, back to back.
11
+ *
12
+ * For the commands whose workspace-wide form names the scope as one flag, the
13
+ * affected form is mechanical — the same command with that flag replaced by a
14
+ * per-package selection:
15
+ *
16
+ * | Workspace-wide test command | Affected template |
17
+ * |------------------------------------|---------------------------------------|
18
+ * | `pnpm -r [flags] [run] test` | `pnpm {filters} [flags] [run] test` |
19
+ * | `npm [run] test --workspaces` | `npm [run] test {workspaces}` |
20
+ * | `turbo run test` (no `--filter`) | `turbo run test {filters}` |
21
+ *
22
+ * It runs the same per-package `test` scripts the full command runs, on the
23
+ * subset; the affected planner still refuses the scope (a full run) when a
24
+ * change touches anything outside every package. A `<pm> run test` /
25
+ * `npm test` command that delegates to the root `test` script is read through
26
+ * that script once. Anything else derives nothing.
27
+ *
28
+ * A declared `testing.affectedCommand` always wins; a derived one is reported
29
+ * as derived, with the command it came from, so `cleo init`, `cleo detect`
30
+ * and `cleo doctor` can propose it and an evidence atom can say what it ran.
31
+ *
32
+ * @module
33
+ * @task T13125
34
+ */
35
+ import { existsSync, readFileSync } from 'node:fs';
36
+ import { join } from 'node:path';
37
+ import { joinCommandLine, splitCommandLine } from './command-line.js';
38
+ /** Package-manager flags that select every workspace package. */
39
+ const PNPM_RECURSIVE = new Set(['-r', '--recursive']);
40
+ const NPM_ALL_WORKSPACES = new Set(['--workspaces', '-ws']);
41
+ /**
42
+ * Flags that change the selection: a command carrying one is not a plain
43
+ * workspace-wide run. `--include-workspace-root` would add the root package to
44
+ * every affected run — whose own `test` script is often `pnpm -r test`, the
45
+ * whole suite again (review of #1818).
46
+ */
47
+ const SELECTION_FLAGS = /^(--filter|-F|--workspace|-w|--scope|--affected|--include-workspace-root)(=|$)/;
48
+ /**
49
+ * Whether `root` is a workspace root: a `pnpm-workspace.yaml`, or a
50
+ * `package.json` declaring `workspaces`.
51
+ *
52
+ * @param root - Directory to inspect.
53
+ * @returns `true` for a workspace root.
54
+ * @task T13125
55
+ */
56
+ export function isWorkspaceRoot(root) {
57
+ if (existsSync(join(root, 'pnpm-workspace.yaml')))
58
+ return true;
59
+ try {
60
+ const pkg = JSON.parse(readFileSync(join(root, 'package.json'), 'utf-8'));
61
+ return pkg.workspaces !== undefined;
62
+ }
63
+ catch {
64
+ return false;
65
+ }
66
+ }
67
+ /** The root `package.json` `test` script, if any. */
68
+ function rootTestScript(root) {
69
+ try {
70
+ const pkg = JSON.parse(readFileSync(join(root, 'package.json'), 'utf-8'));
71
+ const script = pkg.scripts?.test;
72
+ return typeof script === 'string' && script.trim() !== '' ? script : null;
73
+ }
74
+ catch {
75
+ return null;
76
+ }
77
+ }
78
+ /**
79
+ * Whether `words` (after the runner) run the `test` script: `run test` anywhere
80
+ * (a flag value before it cannot be mistaken for the script), or `test` as the
81
+ * first non-flag word.
82
+ */
83
+ function runsTestScript(words) {
84
+ if (words.some((w, i) => w === 'test' && words[i - 1] === 'run'))
85
+ return true;
86
+ return words.find((w) => !w.startsWith('-')) === 'test';
87
+ }
88
+ /** Whether `words` delegate to the root `test` script: `<pm> test`, `<pm> run test`, `npm t`. */
89
+ function delegatesToRootScript(words) {
90
+ const [runner, ...rest] = words;
91
+ if (runner !== 'pnpm' && runner !== 'npm' && runner !== 'yarn' && runner !== 'bun')
92
+ return false;
93
+ if (rest.some((w) => w.startsWith('-')))
94
+ return false;
95
+ return ((rest.length === 1 && (rest[0] === 'test' || rest[0] === 't')) ||
96
+ (rest.length === 2 && rest[0] === 'run' && rest[1] === 'test'));
97
+ }
98
+ /** The affected form of one workspace-wide command, or `null`. */
99
+ function deriveFromWords(words) {
100
+ if (words.some((w) => SELECTION_FLAGS.test(w)))
101
+ return null;
102
+ const [runner, ...rest] = words;
103
+ if (runner === 'pnpm' && runsTestScript(rest)) {
104
+ const at = rest.findIndex((w) => PNPM_RECURSIVE.has(w));
105
+ if (at === -1)
106
+ return null;
107
+ return [runner, ...rest.slice(0, at), '{filters}', ...rest.slice(at + 1)];
108
+ }
109
+ if (runner === 'npm' && runsTestScript(rest)) {
110
+ const at = rest.findIndex((w) => NPM_ALL_WORKSPACES.has(w));
111
+ if (at === -1)
112
+ return null;
113
+ return [runner, ...rest.slice(0, at), '{workspaces}', ...rest.slice(at + 1)];
114
+ }
115
+ const turboAt = words.indexOf('turbo');
116
+ const isTurbo = turboAt === 0 || (turboAt === 1 && /^(pnpm|npx|yarn|bunx)$/.test(runner ?? ''));
117
+ if (isTurbo) {
118
+ const task = words.slice(turboAt + 1).filter((w) => !w.startsWith('-'));
119
+ const tasks = task[0] === 'run' ? task.slice(1) : task;
120
+ if (tasks.length === 1 && tasks[0] === 'test')
121
+ return [...words, '{filters}'];
122
+ }
123
+ return null;
124
+ }
125
+ /**
126
+ * Derive an affected-scope test template from a workspace's test command.
127
+ *
128
+ * @param root - The workspace root (its `package.json` and workspace file are read).
129
+ * @param testCommand - `testing.command`, as declared or detected; when absent,
130
+ * the root `test` script (what the language default runs) is read instead.
131
+ * @returns The template and the workspace-wide command it came from, or `null`
132
+ * when the command is not one whose affected form is mechanical, uses shell
133
+ * syntax, or `root` is not a workspace.
134
+ *
135
+ * @example
136
+ * ```ts
137
+ * proposeAffectedCommand(root, 'pnpm -r --no-bail --if-present run test');
138
+ * // → { template: 'pnpm {filters} --no-bail --if-present run test',
139
+ * // basis: 'pnpm -r --no-bail --if-present run test' }
140
+ * ```
141
+ *
142
+ * @task T13125
143
+ */
144
+ export function proposeAffectedCommand(root, testCommand) {
145
+ if (!isWorkspaceRoot(root))
146
+ return null;
147
+ const derive = (command) => {
148
+ let words;
149
+ try {
150
+ words = splitCommandLine(command, 'testing.command');
151
+ }
152
+ catch {
153
+ return null;
154
+ }
155
+ const affected = deriveFromWords(words);
156
+ return affected === null ? null : { template: joinCommandLine(affected), basis: command };
157
+ };
158
+ // No declared command: the language default runs the root `test` script.
159
+ if (testCommand === undefined || testCommand.trim() === '') {
160
+ const script = rootTestScript(root);
161
+ return script === null ? null : derive(script);
162
+ }
163
+ const direct = derive(testCommand);
164
+ if (direct !== null)
165
+ return direct;
166
+ let words;
167
+ try {
168
+ words = splitCommandLine(testCommand, 'testing.command');
169
+ }
170
+ catch {
171
+ return null;
172
+ }
173
+ const script = delegatesToRootScript(words) ? rootTestScript(root) : null;
174
+ return script === null ? null : derive(script);
175
+ }
176
+ /**
177
+ * The affected template a project's evidence runs use: the declared
178
+ * `testing.affectedCommand`, else one derived from `testing.command`
179
+ * ({@link proposeAffectedCommand}), else `null`.
180
+ *
181
+ * @param testing - The raw `testing` block of `.cleo/project-context.json`.
182
+ * @param root - The workspace root the derivation inspects.
183
+ * @returns The template with its provenance, or `null`.
184
+ *
185
+ * @task T13125
186
+ */
187
+ export function resolveAffectedTemplate(testing, root) {
188
+ const declared = testing?.affectedCommand;
189
+ if (typeof declared === 'string' && declared.trim() !== '') {
190
+ return { template: declared, source: 'declared', basis: null };
191
+ }
192
+ const command = typeof testing?.command === 'string' ? testing.command : undefined;
193
+ const proposal = proposeAffectedCommand(root, command);
194
+ return proposal === null
195
+ ? null
196
+ : { template: proposal.template, source: 'derived', basis: proposal.basis };
197
+ }
198
+ //# sourceMappingURL=affected-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"affected-template.js","sourceRoot":"","sources":["../../src/tasks/affected-template.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,10 @@ export declare function splitCommandLine(raw: string, label?: string): string[];
43
43
  *
44
44
  * @param words - The argv words, command first.
45
45
  * @returns The words joined by spaces, each single-quoted when it holds a
46
- * character `sh` would interpret.
46
+ * character `sh` would interpret. A bare placeholder word (`{filters}`,
47
+ * `{projects}`: braces around letters only, which no shell expands) stays bare
48
+ * so an affected-command template keeps it as one word (T13125); any other
49
+ * brace word (`src/{a,b}`, `{1..3}`) is quoted, since a shell would expand it.
47
50
  * @example
48
51
  * ```typescript
49
52
  * joinCommandLine(['vitest', 'run', '-t', 'my test']);
@@ -1 +1 @@
1
- {"version":3,"file":"command-line.d.ts","sourceRoot":"","sources":["../../src/tasks/command-line.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAWH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAiB,GAAG,MAAM,EAAE,CA4E9E;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAMhE"}
1
+ {"version":3,"file":"command-line.d.ts","sourceRoot":"","sources":["../../src/tasks/command-line.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAWH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,SAAiB,GAAG,MAAM,EAAE,CA4E9E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAQhE"}
@@ -136,7 +136,10 @@ export function splitCommandLine(raw, label = 'Gate command') {
136
136
  *
137
137
  * @param words - The argv words, command first.
138
138
  * @returns The words joined by spaces, each single-quoted when it holds a
139
- * character `sh` would interpret.
139
+ * character `sh` would interpret. A bare placeholder word (`{filters}`,
140
+ * `{projects}`: braces around letters only, which no shell expands) stays bare
141
+ * so an affected-command template keeps it as one word (T13125); any other
142
+ * brace word (`src/{a,b}`, `{1..3}`) is quoted, since a shell would expand it.
140
143
  * @example
141
144
  * ```typescript
142
145
  * joinCommandLine(['vitest', 'run', '-t', 'my test']);
@@ -145,7 +148,9 @@ export function splitCommandLine(raw, label = 'Gate command') {
145
148
  */
146
149
  export function joinCommandLine(words) {
147
150
  return words
148
- .map((word) => /^[A-Za-z0-9_@%+=:,./-]+$/.test(word) ? word : `'${word.replace(/'/g, `'\\''`)}'`)
151
+ .map((word) => /^[A-Za-z0-9_@%+=:,./-]+$/.test(word) || /^\{[a-z]+\}$/.test(word)
152
+ ? word
153
+ : `'${word.replace(/'/g, `'\\''`)}'`)
149
154
  .join(' ');
150
155
  }
151
156
  //# sourceMappingURL=command-line.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-line.js","sourceRoot":"","sources":["../../src/tasks/command-line.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-line.js","sourceRoot":"","sources":["../../src/tasks/command-line.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"done-plan.d.ts","sourceRoot":"","sources":["../../src/tasks/done-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAKH,OAAO,KAAK,EAGV,QAAQ,EASR,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AAcvE,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,iBAAiB,CAAC;AAkE1E,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wFAAwF;IACxF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,KAAK,CAAC;IACtC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,KAC/D,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AA8IxF;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAyUD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,yBAA8B,GACnC,OAAO,CAAC,QAAQ,CAAC,CA2LnB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,yBAA8B,GACnC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAMjC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,OAAO,EAClB,EAAE,EAAE,OAAO,GAET;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,WAAW,GAAG,UAAU,CAAC,CAAA;CAAE,GAChF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAajC"}
1
+ {"version":3,"file":"done-plan.d.ts","sourceRoot":"","sources":["../../src/tasks/done-plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAKH,OAAO,KAAK,EAGV,QAAQ,EASR,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,KAAK,YAAY,EAAiB,MAAM,qBAAqB,CAAC;AAcvE,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,iBAAiB,CAAC;AAkE1E,8CAA8C;AAC9C,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wFAAwF;IACxF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,KAAK,CAAC;IACtC,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,+EAA+E;IAC/E,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,KAC/D,OAAO,CAAC;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AA8IxF;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAyUD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,yBAA8B,GACnC,OAAO,CAAC,QAAQ,CAAC,CAuMnB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,yBAA8B,GACnC,OAAO,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAMjC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,OAAO,EAClB,EAAE,EAAE,OAAO,GAET;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,IAAI,CAAC,yBAAyB,EAAE,WAAW,GAAG,UAAU,CAAC,CAAA;CAAE,GAChF;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAajC"}
@@ -554,8 +554,9 @@ export async function deriveTaskEvidence(taskId, opts = {}) {
554
554
  // implementation (as `cleo complete` records it), never one that merely
555
555
  // cites the task. T12671: a component landed by an integration PR is judged
556
556
  // on the integration PR's CI, linked through the component (`<c>@<n>`).
557
- const ciPr = readCiSatisfies(storeRoot) &&
558
- ciPlannable(storeRoot, ![...changeSet.files, ...changeSet.deletedFiles].every(isCiDocumentPath), [...changeSet.files, ...changeSet.deletedFiles])
557
+ const ciUsable = readCiSatisfies(storeRoot) &&
558
+ ciPlannable(storeRoot, ![...changeSet.files, ...changeSet.deletedFiles].every(isCiDocumentPath), [...changeSet.files, ...changeSet.deletedFiles]);
559
+ const ciPr = ciUsable
559
560
  ? await mergeInfo().then((info) => (info.state === 'merged' ? info.prRef : null))
560
561
  : null;
561
562
  const toolRuns = [];
@@ -574,6 +575,15 @@ export async function deriveTaskEvidence(taskId, opts = {}) {
574
575
  mergeState: mergeInfo,
575
576
  })
576
577
  : null;
578
+ // T13125: a whole-suite local run where merged-PR CI would carry the
579
+ // gate is named as such, with ci:<pr> as the preferred evidence.
580
+ if (scoped?.scope === 'full' && ciUsable) {
581
+ const why = scoped.reason ?? 'the affected scope does not apply';
582
+ changeSet.warnings.push(`${gate}: this plans a whole-suite local tool:test (${why})` +
583
+ (why.includes('ci:<pr>')
584
+ ? ''
585
+ : '; evidence.ciSatisfies is set, so ci:<pr> once the PR merges is the preferred evidence and needs no local run'));
586
+ }
577
587
  toolRuns.push(scoped?.scope === 'affected'
578
588
  ? await planToolRun('test-affected', gate, storeRoot, root, scoped.run.command)
579
589
  : scoped?.scope === 'pending'