@lannguyensi/harness 0.56.0 → 0.58.0

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 (126) hide show
  1. package/CHANGELOG.md +186 -0
  2. package/README.md +1 -1
  3. package/dist/cli/apply/apply.js +4 -3
  4. package/dist/cli/apply/apply.js.map +1 -1
  5. package/dist/cli/apply/generate-codex-config.js +3 -3
  6. package/dist/cli/apply/generate-codex-config.js.map +1 -1
  7. package/dist/cli/apply/generate-memory-index.js +20 -10
  8. package/dist/cli/apply/generate-memory-index.js.map +1 -1
  9. package/dist/cli/apply/generate-settings.d.ts +7 -0
  10. package/dist/cli/apply/generate-settings.js +10 -1
  11. package/dist/cli/apply/generate-settings.js.map +1 -1
  12. package/dist/cli/approve/understanding.d.ts +4 -4
  13. package/dist/cli/doctor/format.js +68 -2
  14. package/dist/cli/doctor/format.js.map +1 -1
  15. package/dist/cli/doctor/index.d.ts +6 -0
  16. package/dist/cli/doctor/index.js +214 -28
  17. package/dist/cli/doctor/index.js.map +1 -1
  18. package/dist/cli/doctor/session-start-preflight-setup-version.d.ts +83 -0
  19. package/dist/cli/doctor/session-start-preflight-setup-version.js +114 -0
  20. package/dist/cli/doctor/session-start-preflight-setup-version.js.map +1 -0
  21. package/dist/cli/doctor/types.d.ts +35 -4
  22. package/dist/cli/doctor/types.js +2 -1
  23. package/dist/cli/doctor/types.js.map +1 -1
  24. package/dist/cli/doctor/ug-delegations.js +9 -0
  25. package/dist/cli/doctor/ug-delegations.js.map +1 -1
  26. package/dist/cli/explain-policy.d.ts +67 -0
  27. package/dist/cli/explain-policy.js +140 -3
  28. package/dist/cli/explain-policy.js.map +1 -1
  29. package/dist/cli/gc/index.js +28 -14
  30. package/dist/cli/gc/index.js.map +1 -1
  31. package/dist/cli/index.d.ts +1 -0
  32. package/dist/cli/index.js +10 -7
  33. package/dist/cli/index.js.map +1 -1
  34. package/dist/cli/init/composer.js +4 -3
  35. package/dist/cli/init/composer.js.map +1 -1
  36. package/dist/cli/init/dependencies.js +15 -9
  37. package/dist/cli/init/dependencies.js.map +1 -1
  38. package/dist/cli/init/templates.d.ts +1 -0
  39. package/dist/cli/init/templates.js +30 -4
  40. package/dist/cli/init/templates.js.map +1 -1
  41. package/dist/cli/list.js +19 -0
  42. package/dist/cli/list.js.map +1 -1
  43. package/dist/cli/loader.js +16 -1
  44. package/dist/cli/loader.js.map +1 -1
  45. package/dist/cli/pack/hook-bootstrap.js +2 -1
  46. package/dist/cli/pack/hook-bootstrap.js.map +1 -1
  47. package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +0 -32
  48. package/dist/cli/pack/hook-codex-user-prompt-submit.js +11 -118
  49. package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +1 -1
  50. package/dist/cli/pack/hook-pre-tool-use.js +34 -7
  51. package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
  52. package/dist/cli/pack/hook-solution-acceptance.d.ts +55 -0
  53. package/dist/cli/pack/hook-solution-acceptance.js +222 -16
  54. package/dist/cli/pack/hook-solution-acceptance.js.map +1 -1
  55. package/dist/cli/pack/hook-stay-in-scope.d.ts +5 -26
  56. package/dist/cli/pack/hook-stay-in-scope.js +62 -274
  57. package/dist/cli/pack/hook-stay-in-scope.js.map +1 -1
  58. package/dist/cli/pack/hook-track-active-claim.d.ts +1 -0
  59. package/dist/cli/pack/hook-track-active-claim.js +107 -43
  60. package/dist/cli/pack/hook-track-active-claim.js.map +1 -1
  61. package/dist/cli/session-start/index.d.ts +32 -1
  62. package/dist/cli/session-start/index.js +142 -12
  63. package/dist/cli/session-start/index.js.map +1 -1
  64. package/dist/cli/validate/checks.d.ts +0 -2
  65. package/dist/cli/validate/checks.js +30 -30
  66. package/dist/cli/validate/checks.js.map +1 -1
  67. package/dist/io/harness-lock.js +11 -1
  68. package/dist/io/harness-lock.js.map +1 -1
  69. package/dist/io/lock.d.ts +26 -0
  70. package/dist/io/lock.js +25 -0
  71. package/dist/io/lock.js.map +1 -1
  72. package/dist/io/project-name.d.ts +115 -0
  73. package/dist/io/project-name.js +158 -0
  74. package/dist/io/project-name.js.map +1 -0
  75. package/dist/io/read-json-dir-entries.js +10 -0
  76. package/dist/io/read-json-dir-entries.js.map +1 -1
  77. package/dist/io/version-compare.d.ts +59 -0
  78. package/dist/io/version-compare.js +67 -0
  79. package/dist/io/version-compare.js.map +1 -1
  80. package/dist/policy-packs/builtin/solution-acceptance-reconnect.d.ts +50 -0
  81. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js +151 -0
  82. package/dist/policy-packs/builtin/solution-acceptance-reconnect.js.map +1 -0
  83. package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +43 -4
  84. package/dist/policy-packs/builtin/solution-acceptance-runtime.js +43 -39
  85. package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
  86. package/dist/policy-packs/builtin/solution-acceptance.js +4 -2
  87. package/dist/policy-packs/builtin/solution-acceptance.js.map +1 -1
  88. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +15 -0
  89. package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -1
  90. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js +5 -7
  91. package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js.map +1 -1
  92. package/dist/policy-packs/builtin/understanding-before-execution/markers.js +23 -0
  93. package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +1 -1
  94. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +8 -17
  95. package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +1 -1
  96. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.d.ts +129 -0
  97. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js +166 -0
  98. package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js.map +1 -0
  99. package/dist/policy-packs/builtin/understanding-before-execution.d.ts +129 -0
  100. package/dist/policy-packs/builtin/understanding-before-execution.js +44 -57
  101. package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
  102. package/dist/policy-packs/version-check.d.ts +8 -1
  103. package/dist/policy-packs/version-check.js +10 -6
  104. package/dist/policy-packs/version-check.js.map +1 -1
  105. package/dist/probes/memory.d.ts +34 -0
  106. package/dist/probes/memory.js +87 -14
  107. package/dist/probes/memory.js.map +1 -1
  108. package/dist/runtime/git-context.d.ts +125 -0
  109. package/dist/runtime/git-context.js +164 -1
  110. package/dist/runtime/git-context.js.map +1 -1
  111. package/dist/runtime/index.d.ts +1 -1
  112. package/dist/runtime/index.js +1 -1
  113. package/dist/runtime/index.js.map +1 -1
  114. package/dist/runtime/task-providers/agent-tasks.d.ts +90 -0
  115. package/dist/runtime/task-providers/agent-tasks.js +231 -0
  116. package/dist/runtime/task-providers/agent-tasks.js.map +1 -0
  117. package/dist/runtime/workflow-policies.d.ts +1 -0
  118. package/dist/runtime/workflow-policies.js +8 -8
  119. package/dist/runtime/workflow-policies.js.map +1 -1
  120. package/dist/schema/index.d.ts +19 -0
  121. package/dist/schema/index.js +5 -0
  122. package/dist/schema/index.js.map +1 -1
  123. package/dist/schema/session-start-preflight.d.ts +10 -0
  124. package/dist/schema/session-start-preflight.js +106 -0
  125. package/dist/schema/session-start-preflight.js.map +1 -0
  126. package/package.json +7 -2
@@ -1,9 +1,9 @@
1
1
  import * as fs from "node:fs";
2
2
  import * as os from "node:os";
3
3
  import * as path from "node:path";
4
- import { compareNumericVersions } from "../../io/version-compare.js";
4
+ import { parseProbedVersion, compareVersionFloor } from "../../io/version-compare.js";
5
5
  import { resolveGeneratedDir } from "../../io/generated-dir.js";
6
- import { inspectMemory } from "../../probes/memory.js";
6
+ import { inspectMemory, projectRejectionWarns } from "../../probes/memory.js";
7
7
  import { RealMcpProbe, probeAll, } from "../../probes/mcp.js";
8
8
  import { EVIDENCE_LEDGER_DB_ENV, GROUNDING_MCP_SERVER_NAME, } from "../apply/generate-settings.js";
9
9
  import { parsePackSource } from "../../policy-packs/source.js";
@@ -15,7 +15,8 @@ import { checkPolicyPackUxDrift } from "../../policy-packs/ux-drift-check.js";
15
15
  import { DEFAULT_RUNTIME } from "../../policy-packs/runtime.js";
16
16
  import { checkHookBudgetLedgerMargin, checkPolicyRiskWithoutEnvScope, checkSolutionAcceptanceKnobIgnored, checkSolutionAcceptanceProducer, checkTemplatePolicyDrift, checkTriggerBoundaryDrift, checkWorkflows, createDefaultGitIgnoreProbe, } from "../validate/checks.js";
17
17
  import { isDerivedPolicy } from "../../runtime/workflow-policies.js";
18
- import { loadManifest } from "../loader.js";
18
+ import { resolveScopedProjectName } from "../../runtime/git-context.js";
19
+ import { loadManifest, resolvePaths } from "../loader.js";
19
20
  import { countCodexDiagnostics, findOnPath, runCodexTargetChecks, } from "./codex.js";
20
21
  import { countOpencodeDiagnostics, runOpencodeTargetChecks, } from "./opencode.js";
21
22
  import { checkNpmBinPath } from "./npm-bin-path.js";
@@ -24,6 +25,8 @@ import { buildClaudeMcpRegistration } from "./claude-mcp.js";
24
25
  import { checkUnderstandingModeEnvDivergence, isUnderstandingPackEnabled, } from "./understanding-mode-env.js";
25
26
  import { checkAutoApproveMode } from "./auto-approve-mode.js";
26
27
  import { checkBypassWithoutAutoApprove } from "./bypass-without-auto-approve.js";
28
+ import { checkSessionStartPreflightSetupVersion, } from "./session-start-preflight-setup-version.js";
29
+ import { SESSION_START_PREFLIGHT_SETUP_BUILD_MIN_VERSION } from "../../schema/session-start-preflight.js";
27
30
  import { runDoctorToolchainParity, } from "./toolchain-parity.js";
28
31
  import { buildUgAutoApprovals, DEFAULT_RECENT_SESSIONS } from "./ug-auto-approvals.js";
29
32
  import { buildUgDelegations } from "./ug-delegations.js";
@@ -104,8 +107,13 @@ function checkCli(manifest, opts, npmBinDir) {
104
107
  });
105
108
  continue;
106
109
  }
107
- const m = stdout.match(/(\d+(?:\.\d+){0,3})/);
108
- if (!m || !m[1]) {
110
+ // parseProbedVersion + compareVersionFloor (not the plain
111
+ // compareVersions/compareNumericVersions pair this check used
112
+ // before task db44ab46): a release candidate of the required
113
+ // binary (e.g. "1.2.3-rc.1") must not satisfy an equal-numeric
114
+ // min_version floor. See docs/decisions/2026-09-08-preflight-floors.md.
115
+ const parsed = parseProbedVersion(stdout);
116
+ if (!parsed) {
109
117
  out.push({
110
118
  name: cli.name,
111
119
  status: "warn",
@@ -113,20 +121,20 @@ function checkCli(manifest, opts, npmBinDir) {
113
121
  });
114
122
  continue;
115
123
  }
116
- const actual = m[1];
117
- const cmp = compareVersions(actual, cli.min_version);
124
+ const { version: actual, isPrerelease, token } = parsed;
125
+ const cmp = compareVersionFloor(actual, isPrerelease, cli.min_version);
118
126
  if (cmp < 0) {
119
127
  out.push({
120
128
  name: cli.name,
121
129
  status: "error",
122
- message: `installed v${actual} < required ${cli.min_version}`,
130
+ message: `installed v${token} < required ${cli.min_version}`,
123
131
  });
124
132
  }
125
133
  else {
126
134
  out.push({
127
135
  name: cli.name,
128
136
  status: "ok",
129
- message: `v${actual} ≥ ${cli.min_version}`,
137
+ message: `v${token} ≥ ${cli.min_version}`,
130
138
  });
131
139
  }
132
140
  }
@@ -176,8 +184,12 @@ function checkMcpVersions(manifest, opts) {
176
184
  });
177
185
  continue;
178
186
  }
179
- const m = stdout.match(/(\d+(?:\.\d+){0,3})/);
180
- if (!m || !m[1]) {
187
+ // parseProbedVersion + compareVersionFloor (task db44ab46, extending
188
+ // the hooks[] prerelease rule to tools.mcp[]): a release candidate of
189
+ // the MCP server binary must not satisfy an equal-numeric min_version
190
+ // floor. See docs/decisions/2026-09-08-preflight-floors.md.
191
+ const parsed = parseProbedVersion(stdout);
192
+ if (!parsed) {
181
193
  out.push({
182
194
  name: mcp.name,
183
195
  status: "warn",
@@ -185,28 +197,25 @@ function checkMcpVersions(manifest, opts) {
185
197
  });
186
198
  continue;
187
199
  }
188
- const actual = m[1];
189
- const cmp = compareVersions(actual, mcp.min_version);
200
+ const { version: actual, isPrerelease, token } = parsed;
201
+ const cmp = compareVersionFloor(actual, isPrerelease, mcp.min_version);
190
202
  if (cmp < 0) {
191
203
  out.push({
192
204
  name: mcp.name,
193
205
  status: "warn",
194
- message: `outdated: installed v${actual} < required ${mcp.min_version}`,
206
+ message: `outdated: installed v${token} < required ${mcp.min_version}`,
195
207
  });
196
208
  }
197
209
  else {
198
210
  out.push({
199
211
  name: mcp.name,
200
212
  status: "ok",
201
- message: `v${actual} ≥ ${mcp.min_version}`,
213
+ message: `v${token} ≥ ${mcp.min_version}`,
202
214
  });
203
215
  }
204
216
  }
205
217
  return out;
206
218
  }
207
- // `compareVersions` aliases the shared helper to avoid renaming every
208
- // existing call site in this file.
209
- const compareVersions = compareNumericVersions;
210
219
  /**
211
220
  * Lightweight, spawn-free bin-resolution check for `tools.mcp[]` /
212
221
  * `tools.cli[]` (task 7f8fb4bc). Resolves each declared, enabled MCP
@@ -304,8 +313,12 @@ function checkHookVersion(hook, versionProbe) {
304
313
  message: `version probe failed for ${hook.version_command.join(" ")}`,
305
314
  };
306
315
  }
307
- const m = stdout.match(/(\d+(?:\.\d+){0,3})/);
308
- if (!m || !m[1]) {
316
+ // parseProbedVersion + compareVersionFloor: a hook's own release
317
+ // candidate (e.g. "0.6.0-rc.1") must not satisfy an equal-numeric
318
+ // min_version floor. Since task db44ab46 the cli[]/mcp[] checks below
319
+ // use the same pair. See docs/decisions/2026-09-08-preflight-floors.md.
320
+ const parsed = parseProbedVersion(stdout);
321
+ if (!parsed) {
309
322
  return {
310
323
  status: "warn",
311
324
  kind: "parse_failed",
@@ -313,16 +326,16 @@ function checkHookVersion(hook, versionProbe) {
313
326
  message: `could not parse a version from "${stdout.trim()}"`,
314
327
  };
315
328
  }
316
- const actual = m[1];
317
- const cmp = compareVersions(actual, hook.min_version);
329
+ const { version: actual, isPrerelease, token } = parsed;
330
+ const cmp = compareVersionFloor(actual, isPrerelease, hook.min_version);
318
331
  return cmp < 0
319
332
  ? {
320
333
  status: "warn",
321
334
  kind: "below_floor",
322
335
  actualVersion: actual,
323
- message: `outdated: installed v${actual} < required ${hook.min_version}`,
336
+ message: `outdated: installed v${token} < required ${hook.min_version}`,
324
337
  }
325
- : { status: "ok", message: `v${actual} ≥ ${hook.min_version}` };
338
+ : { status: "ok", message: `v${token} ≥ ${hook.min_version}` };
326
339
  }
327
340
  /**
328
341
  * Wraps a version probe with a per-full-argv cache, keyed on
@@ -917,6 +930,11 @@ function countDiagnostics(report) {
917
930
  // bypass-without-auto-approve.ts.
918
931
  if (report.ugBypassWithoutAutoApprove)
919
932
  warningCount++;
933
+ // session_start_preflight.setup below the build-capable preflight
934
+ // floor (task 6993d9b5): always advisory, never an error, see
935
+ // session-start-preflight-setup-version.ts.
936
+ if (report.sessionStartPreflightSetupVersion)
937
+ warningCount++;
920
938
  // ugInflight is informational only (ℹ) and never contributes here: a
921
939
  // stale or skipped record is exactly what `harness gc` sweeps, not a
922
940
  // tampering signal (see ug-inflight.ts / types.ts). Placed after every
@@ -934,6 +952,8 @@ function countDiagnostics(report) {
934
952
  warningCount++;
935
953
  if (report.memory.routerVersion?.status === "warn")
936
954
  warningCount++;
955
+ if (projectRejectionWarns(report.memory))
956
+ warningCount++;
937
957
  for (const d of report.memory.directories) {
938
958
  if (!d.exists)
939
959
  warningCount++;
@@ -954,6 +974,21 @@ function countDiagnostics(report) {
954
974
  return { errorCount, warningCount };
955
975
  }
956
976
  export async function doctor(opts = {}) {
977
+ // PLAIN load (task c88461c1, review round 3, decision D-028): every
978
+ // check this report builds from `manifest` below -- MCP/CLI/hook
979
+ // probes, memory, policies, policy packs, workflows, the risk gate,
980
+ // template and trigger-boundary drift, grounding, and everything
981
+ // else -- reads the base/machine/explicit-`--project` manifest only,
982
+ // an explicit `opts.project` still wins outright but NOTHING is
983
+ // derived from cwd here. This mirrors `harness policy intercept`
984
+ // (src/cli/policy/intercept.ts) and `harness dry-run`
985
+ // (src/cli/dry-run.ts), which never consult a derived project layer
986
+ // either, so `doctor` never reports this repo healthier or unhealthier
987
+ // than what actually enforces. Only `checkSessionStartPreflightSetupVersion`
988
+ // further down gets a project-scoped SECOND load: routing a derived
989
+ // layer through THIS one, unrelated load would let it silently reach
990
+ // every other check in this report, for zero benefit to the one key
991
+ // that needs it.
957
992
  const { manifest, resolved } = loadManifest(opts);
958
993
  const home = opts.homeOverride ?? opts.homeDir ?? os.homedir();
959
994
  const probe = opts.mcpProbe ?? new RealMcpProbe();
@@ -1013,11 +1048,159 @@ export async function doctor(opts = {}) {
1013
1048
  ...(opts.pathEnv !== undefined ? { pathEnv: opts.pathEnv } : {}),
1014
1049
  ...(opts.versionProbe !== undefined ? { versionProbe: opts.versionProbe } : {}),
1015
1050
  });
1016
- const hooks = checkHooks(manifest, home, opts);
1051
+ // One memoized probe shared across every doctor check that spawns
1052
+ // `<binary> --version` (task 6993d9b5, round 2 F3/F4): `checkHooks`,
1053
+ // `buildPolicyPacks`, the policy-pack-expanded hook walk
1054
+ // (`checkPolicyPackHookVersions`, which already deduped internally but
1055
+ // started from its own fresh cache) and the new
1056
+ // session_start_preflight.setup check below all probe the same
1057
+ // `["preflight", "--version"]` argv on a `min_version: 0.6.0` manifest.
1058
+ // Without a shared cache that argv would spawn once per caller, per
1059
+ // `doctor` run. `memoizeVersionProbe` (above) already existed for
1060
+ // this; it just was not wired to the callers that predate the new
1061
+ // check.
1062
+ const dedupedVersionProbe = memoizeVersionProbe(opts.versionProbe ?? (() => null));
1063
+ const hooks = checkHooks(manifest, home, { versionProbe: dedupedVersionProbe });
1064
+ // task 6993d9b5: independent of the generic hooks[] min_version walk
1065
+ // above, see session-start-preflight-setup-version.ts for why.
1066
+ //
1067
+ // Per-repo scoping (task c88461c1, review round 2, decision D-021b;
1068
+ // scope narrowed to THIS check only, review round 3, decision D-028):
1069
+ // an explicit `opts.project` still wins outright; otherwise derive
1070
+ // the project name from `opts.cwd` (defaulting to `process.cwd()`)
1071
+ // via the SAME shared `deriveProjectName` helper `harness
1072
+ // session-start preflight` and `harness explain-policy` feed their
1073
+ // own SECOND load from. Without this, the check judged only the
1074
+ // base/machine-override value, so it could warn (or stay silent)
1075
+ // against the WRONG effective value for a repo whose cwd-derived
1076
+ // project layer flips `setup` the other way, the exact drift the
1077
+ // producer (src/cli/session-start/index.ts) and `explain-policy` do
1078
+ // not have, since both already derive from cwd for this same key.
1079
+ // Deliberately a SEPARATE load from `manifest` above, not a reuse:
1080
+ // that load feeds every OTHER check in this report and must stay
1081
+ // project-unaware (see the doctor() top comment); folding a derived
1082
+ // layer into it would let it silently reach checks it was never
1083
+ // meant to touch.
1084
+ //
1085
+ // `sessionStartPreflightProjectName` (task c88461c1, review round 3
1086
+ // residual; narrowed by task 1c4eb3ea's round 2, D-027 item 2) is
1087
+ // carried onto the finding ONLY when the scoped load below actually
1088
+ // RESOLVED a project layer file (`resolved.projectLayer !== null`,
1089
+ // the same signal `resolvePaths` already returns), not merely
1090
+ // whenever `deriveProjectName`/`opts.project` produced a name to
1091
+ // TRY. Round 1 set this to the attempted name unconditionally, so
1092
+ // the `(project: X)` suffix `format.ts` renders was byte-identical
1093
+ // whether or not a layer actually existed on disk: `projectName` is
1094
+ // present for every cwd inside any git work tree, layer or no
1095
+ // layer, which made docs/CLI.md's "distinguishable from a
1096
+ // base/machine-decided value" claim false. This version instead
1097
+ // only names the project when the base/machine value was genuinely
1098
+ // overridden by (or the failed load genuinely attempted) that
1099
+ // project's own layer file.
1100
+ //
1101
+ // Best-effort: a config/parse failure here degrades to `setup:
1102
+ // false` (review round 3 residual; task `1c4eb3ea`), matching the
1103
+ // producer's own `setupEnabled` catch (`src/cli/session-start/
1104
+ // index.ts`). Task 1c4eb3ea's round 2 (D-027 item 3) additionally
1105
+ // reports this failure as its own `layer_unresolvable` warning
1106
+ // (below) instead of going fully silent, but ONLY when a project
1107
+ // layer FILE actually exists to be unresolvable about; a failure
1108
+ // that instead comes from the base/machine layers (no project layer
1109
+ // on disk for this cwd at all) stays silent here exactly as before,
1110
+ // since attributing it to "the project layer" would be wrong and
1111
+ // `doctor()`'s own top-level `loadManifest(opts)` call above already
1112
+ // surfaces a genuine base/machine parse failure by throwing before
1113
+ // this point is ever reached.
1114
+ const attemptedSessionStartPreflightProjectName = resolveScopedProjectName({
1115
+ project: opts.project,
1116
+ cwd: opts.cwd ?? process.cwd(),
1117
+ fallback: null,
1118
+ });
1119
+ const scopedLoadOpts = {
1120
+ ...opts,
1121
+ project: attemptedSessionStartPreflightProjectName ?? undefined,
1122
+ };
1123
+ let sessionStartPreflightManifest = manifest;
1124
+ let sessionStartPreflightProjectName = null;
1125
+ let sessionStartPreflightLayerUnresolvable;
1126
+ try {
1127
+ const scopedLoad = loadManifest(scopedLoadOpts);
1128
+ sessionStartPreflightManifest = scopedLoad.manifest;
1129
+ if (scopedLoad.resolved.projectLayer !== null) {
1130
+ sessionStartPreflightProjectName = attemptedSessionStartPreflightProjectName;
1131
+ }
1132
+ }
1133
+ catch (err) {
1134
+ // This catch itself IS reached in every shipped run with a malformed
1135
+ // (or unreadable) project layer for the attempted name; what is
1136
+ // actually UNREACHABLE TODAY is only the `unresolvableLayerPath ===
1137
+ // null` sub-path below (task `1c4eb3ea`, round 2 mutation-probe
1138
+ // replay found the round-1 probe on that line now SURVIVES, traced
1139
+ // to this invariant): `doctor()`'s own PLAIN, unscoped
1140
+ // `loadManifest(opts)` call at the very top of this function already
1141
+ // reads the base manifest and every applicable machine-override
1142
+ // layer `scopedLoadOpts` below ALSO reads (`scopedLoadOpts` differs
1143
+ // from `opts` ONLY by adding `project`); that call has already
1144
+ // succeeded by the time this line runs (a base/machine parse failure
1145
+ // would have made `doctor()` itself reject before this point), so a
1146
+ // throw reaching this catch can only come from the project layer
1147
+ // `scopedLoadOpts.project` adds. `resolvePaths(scopedLoadOpts).projectLayer`
1148
+ // therefore always resolves non-null here in every real invocation;
1149
+ // the null-check below exists only so a FUTURE change to that "plain
1150
+ // load first" invariant fails safe (silent, matching the producer's
1151
+ // own `setupEnabled` catch) instead of leaking a stale pre-failure
1152
+ // value, not because any fixture in this task's own suite can
1153
+ // exercise it: constructing one would require the scoped load to
1154
+ // fail for a reason the already-successful plain load could not also
1155
+ // have hit, which is structurally impossible given the two calls
1156
+ // read the identical base/machine layers.
1157
+ //
1158
+ // The assignment right below is itself UNOBSERVABLE today, in BOTH
1159
+ // sub-paths: whenever `unresolvableLayerPath !== null` (every real
1160
+ // invocation, per the invariant above), this degraded value is
1161
+ // discarded outright by the `??` below, in favor of
1162
+ // `sessionStartPreflightLayerUnresolvable`; the currently-
1163
+ // unreachable `unresolvableLayerPath === null` sub-path never even
1164
+ // runs to consume it either. It stays as a best-effort fallback for
1165
+ // that future-invariant-change case, matching the producer's own
1166
+ // `setupEnabled` catch, not because any path today actually reads it.
1167
+ sessionStartPreflightManifest = {
1168
+ ...manifest,
1169
+ session_start_preflight: { ...manifest.session_start_preflight, setup: false },
1170
+ };
1171
+ // Same call the producer's own diagnostic makes
1172
+ // (src/cli/session-start/index.ts): only names/warns about the
1173
+ // project layer when `resolvePaths` itself can resolve one for
1174
+ // this attempted name; otherwise the thrown error came from the
1175
+ // base/machine layers, unrelated to project scoping, and this
1176
+ // scoped-load catch stays silent about it (see the comment above).
1177
+ // Deliberately unguarded, unlike the producer's copy: `resolvePaths`
1178
+ // throws only on the HARNESS_ALLOW_REAL_GENERATED_DIR test-safety
1179
+ // path, which the plain load at the top of doctor() has already
1180
+ // passed; if that plain-load-first invariant ever moves, this line
1181
+ // throws instead of degrading silently, and the producer's try/catch
1182
+ // is the shape to copy.
1183
+ const unresolvableLayerPath = resolvePaths(scopedLoadOpts).projectLayer;
1184
+ if (unresolvableLayerPath !== null) {
1185
+ sessionStartPreflightProjectName = attemptedSessionStartPreflightProjectName;
1186
+ const errMessage = err instanceof Error ? err.message : String(err);
1187
+ const errFirstLine = errMessage.split("\n")[0];
1188
+ sessionStartPreflightLayerUnresolvable = {
1189
+ kind: "layer_unresolvable",
1190
+ actualVersion: null,
1191
+ requiredVersion: SESSION_START_PREFLIGHT_SETUP_BUILD_MIN_VERSION,
1192
+ message: `session_start_preflight.setup: the project-scoped manifest load failed ` +
1193
+ `(${errFirstLine}); the effective setup value for this repo could not be ` +
1194
+ `determined (project layer: ${unresolvableLayerPath})`,
1195
+ projectName: sessionStartPreflightProjectName,
1196
+ };
1197
+ }
1198
+ }
1199
+ const sessionStartPreflightSetupVersion = sessionStartPreflightLayerUnresolvable ??
1200
+ checkSessionStartPreflightSetupVersion(sessionStartPreflightManifest, dedupedVersionProbe, sessionStartPreflightProjectName);
1017
1201
  const policies = buildPolicies(manifest);
1018
- const policyPacksVersionProbe = opts.versionProbe ?? (() => null);
1019
- const policyPacks = buildPolicyPacks(manifest, policyPacksVersionProbe, resolveGitIgnoreProbe(opts));
1020
- const policyPackHookVersions = checkPolicyPackHookVersions(manifest, policyPacksVersionProbe);
1202
+ const policyPacks = buildPolicyPacks(manifest, dedupedVersionProbe, resolveGitIgnoreProbe(opts));
1203
+ const policyPackHookVersions = checkPolicyPackHookVersions(manifest, dedupedVersionProbe);
1021
1204
  const workflows = buildWorkflows(manifest);
1022
1205
  const riskGate = buildRiskGate(manifest);
1023
1206
  const templateDrift = buildTemplateDrift(manifest);
@@ -1173,6 +1356,9 @@ export async function doctor(opts = {}) {
1173
1356
  ...(ugDelegations !== undefined ? { ugDelegations } : {}),
1174
1357
  ...(ugInflight !== undefined ? { ugInflight } : {}),
1175
1358
  ...(ugBypassWithoutAutoApprove !== undefined ? { ugBypassWithoutAutoApprove } : {}),
1359
+ ...(sessionStartPreflightSetupVersion !== undefined
1360
+ ? { sessionStartPreflightSetupVersion }
1361
+ : {}),
1176
1362
  ...(ugAutoApproveMode !== undefined ? { ugAutoApproveMode } : {}),
1177
1363
  ...(settingsDrift !== undefined ? { settingsDrift } : {}),
1178
1364
  ...(codexConfigDrift !== undefined ? { codexConfigDrift } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/doctor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/doctor/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,83 @@
1
+ import type { Manifest } from "../../schema/index.js";
2
+ /**
3
+ * The probe command run against the `preflight` binary on PATH. Matches
4
+ * the `version_command` the shipped `git-preflight` hook template
5
+ * declares (src/cli/init/templates.ts), same binary and `--version`
6
+ * flag, but is not read FROM the manifest's hook entry: an operator
7
+ * could rename/remove that hook while `session_start_preflight.setup`
8
+ * stays on, and the check should still probe the binary the producer
9
+ * (`harness session-start preflight`) actually spawns.
10
+ */
11
+ export declare const PREFLIGHT_SETUP_VERSION_COMMAND: readonly ["preflight", "--version"];
12
+ export interface SessionStartPreflightSetupVersionFinding {
13
+ /**
14
+ * `layer_unresolvable` (task `1c4eb3ea`, round 2, D-027 item 3):
15
+ * `doctor()`'s own project-scoped SECOND `loadManifest` call threw
16
+ * (a malformed or unreadable cwd-derived project layer), so this
17
+ * check could not even determine whether `setup` is on. Built
18
+ * directly by `doctor()` (`src/cli/doctor/index.ts`), never by this
19
+ * module's own `checkSessionStartPreflightSetupVersion`: that
20
+ * function only ever sees a manifest that already degraded to
21
+ * `setup: false` on such a failure, and bails out before producing
22
+ * ANY finding for a `setup: false` manifest, which is exactly the
23
+ * silence this kind replaces.
24
+ */
25
+ kind: "below_floor" | "probe_failed" | "parse_failed" | "layer_unresolvable";
26
+ /**
27
+ * Parsed installed version, when the probe succeeded and parsed.
28
+ * Null otherwise. Always the NUMERIC run (`parseProbedVersion`'s
29
+ * `version` field, e.g. "0.6.0"), never the probed prerelease/build
30
+ * suffix: for a `below_floor` finding caused by a prerelease of the
31
+ * floor (e.g. probed "0.6.0-rc.1" against a "0.6.0" `requiredVersion`),
32
+ * `actualVersion` therefore equals `requiredVersion` even though
33
+ * `kind` is `"below_floor"`: the numeric components tie, and
34
+ * `compareVersionFloor`'s prerelease tie-break is what actually
35
+ * failed the floor. `message` carries the full probed token
36
+ * (including the suffix) for the human-facing distinction; this
37
+ * field's JSON shape does not gain a new field for it. See
38
+ * docs/decisions/2026-09-08-preflight-floors.md.
39
+ */
40
+ actualVersion: string | null;
41
+ /** Always `SESSION_START_PREFLIGHT_SETUP_BUILD_MIN_VERSION` today; carried on the finding so format.ts never re-imports the constant. */
42
+ requiredVersion: string;
43
+ message: string;
44
+ /**
45
+ * The cwd-derived (or explicit `--project`) project name `doctor`
46
+ * fed its scoped, project-aware `loadManifest` call from when this
47
+ * finding's `manifest` was resolved (task c88461c1, review round 3
48
+ * residual). `null` when no project layer FILE actually decided the
49
+ * result: no project name was derivable for that cwd (not inside a
50
+ * git work tree, and no explicit `--project`), OR a name WAS
51
+ * derivable but no matching `<home>/projects/<name>/harness.overrides.yaml`
52
+ * exists on disk (task `1c4eb3ea`, round 2, D-027 item 1: `doctor()`
53
+ * only sets this to a non-null name when `resolvePaths(...).projectLayer`
54
+ * resolved, not merely whenever a name was attempted, so a
55
+ * base/machine-decided warning stays genuinely distinguishable from
56
+ * a project-decided one). Present only when the CALLER passes a
57
+ * `projectName` argument (see below); `checkSessionStartPreflightSetupVersion`'s
58
+ * own unit tests call it with just `manifest`/`versionProbe`, so
59
+ * their findings carry no `projectName` key at all, not an
60
+ * `undefined` value. The report's own top-level `project` field only
61
+ * ever reflects an EXPLICIT `--project` (`opts.project ?? null`,
62
+ * `doctor/index.ts`), never this derived name.
63
+ */
64
+ projectName?: string | null;
65
+ }
66
+ /**
67
+ * Pure: manifest + versionProbe in, a finding out (or `undefined` when
68
+ * there is nothing to flag). Mirrors `checkHookVersion`'s probe/parse
69
+ * idiom (src/cli/doctor/index.ts) so the warning vocabulary
70
+ * (`below_floor` / `probe_failed` / `parse_failed`) and version-regex
71
+ * parsing stay consistent across both checks, without importing from
72
+ * index.ts (which would create a cycle back into this module's own
73
+ * caller).
74
+ *
75
+ * `projectName` (task c88461c1, review round 3 residual; task
76
+ * `1c4eb3ea`): OPTIONAL third argument, carried onto every returned finding
77
+ * unchanged (see {@link SessionStartPreflightSetupVersionFinding.projectName}'s
78
+ * doc comment). `doctor()` always passes it (the SAME name it derived
79
+ * for its own scoped load, or `null`); every pre-existing direct call
80
+ * to this pure function in its own unit tests omits it, so those
81
+ * findings' shape is unchanged.
82
+ */
83
+ export declare function checkSessionStartPreflightSetupVersion(manifest: Manifest, versionProbe: (cmd: readonly string[]) => string | null, projectName?: string | null): SessionStartPreflightSetupVersionFinding | undefined;