@rsaglobaltech/specgate 0.18.0 → 0.20.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 (211) hide show
  1. package/CHANGELOG.md +122 -1
  2. package/bin/specgate.ts +47 -47
  3. package/dist/bin/specgate.js +47 -46
  4. package/dist/bin/specgate.js.map +1 -1
  5. package/dist/packages/core/src/application/ArchiveChangeUseCase.js +1 -1
  6. package/dist/packages/core/src/application/ArchiveChangeUseCase.js.map +1 -1
  7. package/dist/packages/core/src/application/ValidateProjectUseCase.js +1 -1
  8. package/dist/packages/core/src/application/ValidateProjectUseCase.js.map +1 -1
  9. package/dist/packages/core/src/domain/ChangeTemplates.js +1 -1
  10. package/dist/packages/core/src/domain/DeltaFeature.js +3 -3
  11. package/dist/packages/core/src/domain/DeltaFeature.js.map +1 -1
  12. package/dist/packages/core/src/domain/DerivedMatrix.js +9 -9
  13. package/dist/packages/core/src/domain/DerivedMatrix.js.map +1 -1
  14. package/dist/packages/core/src/domain/DoneVerification.js +10 -2
  15. package/dist/packages/core/src/domain/DoneVerification.js.map +1 -1
  16. package/dist/packages/core/src/domain/DraftChecklist.js +3 -3
  17. package/dist/packages/core/src/domain/DraftChecklist.js.map +1 -1
  18. package/dist/packages/core/src/domain/GherkinTags.js +12 -12
  19. package/dist/packages/core/src/domain/GherkinTags.js.map +1 -1
  20. package/dist/packages/core/src/domain/HarnessConfig.js +1 -0
  21. package/dist/packages/core/src/domain/HarnessConfig.js.map +1 -1
  22. package/dist/packages/core/src/domain/InboundChange.js +1 -1
  23. package/dist/packages/core/src/domain/InboundChange.js.map +1 -1
  24. package/dist/packages/core/src/domain/Language.js +2 -2
  25. package/dist/packages/core/src/domain/Language.js.map +1 -1
  26. package/dist/packages/core/src/domain/Lockfile.js +7 -7
  27. package/dist/packages/core/src/domain/Lockfile.js.map +1 -1
  28. package/dist/packages/core/src/domain/PackDelta.js +1 -1
  29. package/dist/packages/core/src/domain/PackDelta.js.map +1 -1
  30. package/dist/packages/core/src/domain/RequirementGraph.js +2 -2
  31. package/dist/packages/core/src/domain/SpecParser.js +6 -6
  32. package/dist/packages/core/src/domain/SpecParser.js.map +1 -1
  33. package/dist/packages/core/src/domain/TraceMerge.js +4 -4
  34. package/dist/packages/core/src/domain/TraceMerge.js.map +1 -1
  35. package/dist/packages/core/src/domain/TraceabilityFormat.js +4 -4
  36. package/dist/packages/core/src/domain/TraceabilityFormat.js.map +1 -1
  37. package/dist/packages/core/src/domain/ValueAnnotations.js +8 -8
  38. package/dist/packages/core/src/domain/ValueAnnotations.js.map +1 -1
  39. package/dist/packages/core/src/domain/WriteScope.js +3 -3
  40. package/dist/packages/core/src/domain/WriteScope.js.map +1 -1
  41. package/dist/packages/core/src/infrastructure/ChangeWorkspace.js +2 -2
  42. package/dist/packages/core/src/infrastructure/ChangeWorkspace.js.map +1 -1
  43. package/dist/packages/core/src/infrastructure/ConsoleReporter.js +2 -2
  44. package/dist/packages/core/src/infrastructure/ConsoleReporter.js.map +1 -1
  45. package/dist/packages/core/src/infrastructure/DerivedMatrixSources.js +2 -2
  46. package/dist/packages/core/src/infrastructure/DerivedMatrixSources.js.map +1 -1
  47. package/dist/packages/core/src/infrastructure/DiskLanguageRepository.js +4 -4
  48. package/dist/packages/core/src/infrastructure/DiskLanguageRepository.js.map +1 -1
  49. package/dist/packages/core/src/infrastructure/DiskPackDeltaRepository.js +1 -1
  50. package/dist/packages/core/src/infrastructure/DiskPackDeltaRepository.js.map +1 -1
  51. package/dist/packages/core/src/infrastructure/GitContributionStager.js +3 -3
  52. package/dist/packages/core/src/infrastructure/GitContributionStager.js.map +1 -1
  53. package/dist/packages/core/src/infrastructure/HarnessConfigFile.js +12 -3
  54. package/dist/packages/core/src/infrastructure/HarnessConfigFile.js.map +1 -1
  55. package/dist/packages/core/src/infrastructure/RemotePackResolver.js +5 -5
  56. package/dist/packages/core/src/infrastructure/RemotePackResolver.js.map +1 -1
  57. package/dist/packages/core/test/unit/delta-feature.test.js +3 -3
  58. package/dist/packages/core/test/unit/delta-feature.test.js.map +1 -1
  59. package/dist/packages/core/test/unit/derived-matrix.test.js +8 -8
  60. package/dist/packages/core/test/unit/derived-matrix.test.js.map +1 -1
  61. package/dist/packages/core/test/unit/gherkin-tags.test.js +8 -8
  62. package/dist/packages/core/test/unit/gherkin-tags.test.js.map +1 -1
  63. package/dist/packages/core/test/unit/inbound-change.test.js +1 -1
  64. package/dist/packages/core/test/unit/inbound-change.test.js.map +1 -1
  65. package/dist/packages/core/test/unit/matrix-dependencies.test.js +5 -5
  66. package/dist/packages/core/test/unit/matrix-dependencies.test.js.map +1 -1
  67. package/dist/packages/core/test/unit/new-requirement.test.js +1 -1
  68. package/dist/packages/core/test/unit/new-requirement.test.js.map +1 -1
  69. package/dist/packages/core/test/unit/value-annotations.test.js +5 -5
  70. package/dist/packages/core/test/unit/value-annotations.test.js.map +1 -1
  71. package/dist/packages/core/test/unit/write-scope-status.test.js +5 -5
  72. package/dist/packages/core/test/unit/write-scope-status.test.js.map +1 -1
  73. package/dist/packages/mcp-spec-driven/src/native-tools.js +3 -3
  74. package/dist/packages/mcp-spec-driven/src/native-tools.js.map +1 -1
  75. package/dist/packages/mcp-spec-driven/src/server.js +1 -7
  76. package/dist/packages/mcp-spec-driven/src/server.js.map +1 -1
  77. package/dist/packages/mcp-spec-driven/src/tools.js +4 -4
  78. package/dist/packages/mcp-spec-driven/src/tools.js.map +1 -1
  79. package/dist/scripts/add.js +10 -0
  80. package/dist/scripts/add.js.map +1 -0
  81. package/dist/scripts/agents/init.js +26 -47
  82. package/dist/scripts/agents/init.js.map +1 -1
  83. package/dist/scripts/alm/cli.js +37 -3
  84. package/dist/scripts/alm/cli.js.map +1 -1
  85. package/dist/scripts/alm/providers/index.js +1 -1
  86. package/dist/scripts/alm/providers/index.js.map +1 -1
  87. package/dist/scripts/change/instructions.js +2 -2
  88. package/dist/scripts/change/instructions.js.map +1 -1
  89. package/dist/scripts/cli/commands/alm/PullCommand.js +1 -1
  90. package/dist/scripts/cli/commands/alm/PullCommand.js.map +1 -1
  91. package/dist/scripts/cli/commands/change/ChangeCommand.js +99 -98
  92. package/dist/scripts/cli/commands/change/ChangeCommand.js.map +1 -1
  93. package/dist/scripts/cli/commands/config/CiInitCommand.js +6 -4
  94. package/dist/scripts/cli/commands/config/CiInitCommand.js.map +1 -1
  95. package/dist/scripts/cli/commands/config/CompletionCommand.js +10 -10
  96. package/dist/scripts/cli/commands/config/CompletionCommand.js.map +1 -1
  97. package/dist/scripts/cli/commands/config/ConfigInitCommand.js +11 -19
  98. package/dist/scripts/cli/commands/config/ConfigInitCommand.js.map +1 -1
  99. package/dist/scripts/cli/commands/config/ConfigSetCommand.js +24 -11
  100. package/dist/scripts/cli/commands/config/ConfigSetCommand.js.map +1 -1
  101. package/dist/scripts/cli/commands/harness/RunCommand.js +94 -38
  102. package/dist/scripts/cli/commands/harness/RunCommand.js.map +1 -1
  103. package/dist/scripts/cli/commands/pack/BundlePackCommand.js +36 -2
  104. package/dist/scripts/cli/commands/pack/BundlePackCommand.js.map +1 -1
  105. package/dist/scripts/cli/commands/pack/ExpandDomainPackCommand.js +2 -2
  106. package/dist/scripts/cli/commands/pack/ExpandDomainPackCommand.js.map +1 -1
  107. package/dist/scripts/cli/commands/pack/InferPackCommand.js +2 -1
  108. package/dist/scripts/cli/commands/pack/InferPackCommand.js.map +1 -1
  109. package/dist/scripts/cli/commands/pack/InitPackCommand.js +23 -32
  110. package/dist/scripts/cli/commands/pack/InitPackCommand.js.map +1 -1
  111. package/dist/scripts/cli/commands/pack/LintPackCommand.js +4 -3
  112. package/dist/scripts/cli/commands/pack/LintPackCommand.js.map +1 -1
  113. package/dist/scripts/cli/commands/project/AddCommand.js +75 -0
  114. package/dist/scripts/cli/commands/project/AddCommand.js.map +1 -0
  115. package/dist/scripts/cli/commands/project/AdoptCommand.js +9 -3
  116. package/dist/scripts/cli/commands/project/AdoptCommand.js.map +1 -1
  117. package/dist/scripts/cli/commands/project/Forja.js +104 -0
  118. package/dist/scripts/cli/commands/project/Forja.js.map +1 -0
  119. package/dist/scripts/cli/commands/project/InitProjectCommand.js +61 -6
  120. package/dist/scripts/cli/commands/project/InitProjectCommand.js.map +1 -1
  121. package/dist/scripts/cli/commands/project/OnboardCommand.js +17 -24
  122. package/dist/scripts/cli/commands/project/OnboardCommand.js.map +1 -1
  123. package/dist/scripts/cli/commands/project/UpdateCommand.js +23 -43
  124. package/dist/scripts/cli/commands/project/UpdateCommand.js.map +1 -1
  125. package/dist/scripts/cli/commands/quality/CheckCommand.js +50 -22
  126. package/dist/scripts/cli/commands/quality/CheckCommand.js.map +1 -1
  127. package/dist/scripts/cli/commands/quality/DoctorCommand.js +27 -10
  128. package/dist/scripts/cli/commands/quality/DoctorCommand.js.map +1 -1
  129. package/dist/scripts/cli/commands/quality/FixCommand.js +24 -29
  130. package/dist/scripts/cli/commands/quality/FixCommand.js.map +1 -1
  131. package/dist/scripts/cli/commands/quality/ReportCommand.js +8 -4
  132. package/dist/scripts/cli/commands/quality/ReportCommand.js.map +1 -1
  133. package/dist/scripts/cli/commands/quality/ValidateSpecsCommand.js +69 -16
  134. package/dist/scripts/cli/commands/quality/ValidateSpecsCommand.js.map +1 -1
  135. package/dist/scripts/cli/commands/spec/DoneCommand.js +69 -28
  136. package/dist/scripts/cli/commands/spec/DoneCommand.js.map +1 -1
  137. package/dist/scripts/cli/commands/spec/DraftCommand.js +166 -81
  138. package/dist/scripts/cli/commands/spec/DraftCommand.js.map +1 -1
  139. package/dist/scripts/cli/commands/spec/MatrixCommand.js +24 -27
  140. package/dist/scripts/cli/commands/spec/MatrixCommand.js.map +1 -1
  141. package/dist/scripts/cli/commands/spec/NewCommand.js +11 -14
  142. package/dist/scripts/cli/commands/spec/NewCommand.js.map +1 -1
  143. package/dist/scripts/cli/commands/spec/PetCommand.js +102 -0
  144. package/dist/scripts/cli/commands/spec/PetCommand.js.map +1 -0
  145. package/dist/scripts/cli/commands/spec/PlanCommand.js +34 -39
  146. package/dist/scripts/cli/commands/spec/PlanCommand.js.map +1 -1
  147. package/dist/scripts/cli/commands/spec/ReqCommand.js +51 -58
  148. package/dist/scripts/cli/commands/spec/ReqCommand.js.map +1 -1
  149. package/dist/scripts/cli/commands/spec/StatusCommand.js +93 -47
  150. package/dist/scripts/cli/commands/spec/StatusCommand.js.map +1 -1
  151. package/dist/scripts/cli/commands/spec/StudioCommand.js +16 -24
  152. package/dist/scripts/cli/commands/spec/StudioCommand.js.map +1 -1
  153. package/dist/scripts/cli/commands/specops/ContributeCommand.js +24 -32
  154. package/dist/scripts/cli/commands/specops/ContributeCommand.js.map +1 -1
  155. package/dist/scripts/cli/commands/specops/DiffCommand.js +3 -2
  156. package/dist/scripts/cli/commands/specops/DiffCommand.js.map +1 -1
  157. package/dist/scripts/cli/commands/specops/SyncCommand.js +4 -3
  158. package/dist/scripts/cli/commands/specops/SyncCommand.js.map +1 -1
  159. package/dist/scripts/docs/blocks.js +4 -4
  160. package/dist/scripts/docs/blocks.js.map +1 -1
  161. package/dist/scripts/docs/build-site.js +104 -9
  162. package/dist/scripts/docs/build-site.js.map +1 -1
  163. package/dist/scripts/docs/components.js +30 -25
  164. package/dist/scripts/docs/components.js.map +1 -1
  165. package/dist/scripts/docs/nav.js +144 -40
  166. package/dist/scripts/docs/nav.js.map +1 -1
  167. package/dist/scripts/docs/record-journey.js +2 -2
  168. package/dist/scripts/docs/record-journey.js.map +1 -1
  169. package/dist/scripts/docs/record-terminal.js +12 -12
  170. package/dist/scripts/docs/record-terminal.js.map +1 -1
  171. package/dist/scripts/draft/brief-setup.js +4 -0
  172. package/dist/scripts/draft/brief-setup.js.map +1 -1
  173. package/dist/scripts/draft/confined-agent.js +19 -0
  174. package/dist/scripts/draft/confined-agent.js.map +1 -1
  175. package/dist/scripts/draft/drafting-guide.js +3 -1
  176. package/dist/scripts/draft/drafting-guide.js.map +1 -1
  177. package/dist/scripts/gen_mcp_tools.js +4 -4
  178. package/dist/scripts/gen_mcp_tools.js.map +1 -1
  179. package/dist/scripts/harness/init.js +25 -16
  180. package/dist/scripts/harness/init.js.map +1 -1
  181. package/dist/scripts/harness/report.js +39 -40
  182. package/dist/scripts/harness/report.js.map +1 -1
  183. package/dist/scripts/harness/worktree-lock.js +2 -2
  184. package/dist/scripts/harness/worktree-lock.js.map +1 -1
  185. package/dist/scripts/lib/command.js +3 -2
  186. package/dist/scripts/lib/command.js.map +1 -1
  187. package/dist/scripts/lib/derived-writes.js +1 -1
  188. package/dist/scripts/lib/diagnostics.js +12 -16
  189. package/dist/scripts/lib/diagnostics.js.map +1 -1
  190. package/dist/scripts/lib/placeholders.js +4 -4
  191. package/dist/scripts/lib/placeholders.js.map +1 -1
  192. package/dist/scripts/lib/surface.js +45 -14
  193. package/dist/scripts/lib/surface.js.map +1 -1
  194. package/dist/scripts/lib/ui.js +356 -0
  195. package/dist/scripts/lib/ui.js.map +1 -0
  196. package/dist/scripts/merge-traceability.js +3 -3
  197. package/dist/scripts/pet/pet.js +331 -0
  198. package/dist/scripts/pet/pet.js.map +1 -0
  199. package/dist/scripts/pet.js +10 -0
  200. package/dist/scripts/pet.js.map +1 -0
  201. package/dist/scripts/plugin/gate-hook.js +1 -1
  202. package/dist/scripts/plugin/gate-hook.js.map +1 -1
  203. package/dist/scripts/schema/registry.js +2 -2
  204. package/dist/scripts/schema/registry.js.map +1 -1
  205. package/dist/scripts/specops/add.js +23 -32
  206. package/dist/scripts/specops/add.js.map +1 -1
  207. package/dist/scripts/specops/lock.js +4 -4
  208. package/dist/scripts/specops/lock.js.map +1 -1
  209. package/dist/scripts/specops/remove.js +15 -24
  210. package/dist/scripts/specops/remove.js.map +1 -1
  211. package/package.json +1 -2
@@ -66,6 +66,7 @@ exports.runLevels = runLevels;
66
66
  const run_with_deadline_1 = require("../../../lib/run-with-deadline");
67
67
  const MatrixCommand_1 = require("../spec/MatrixCommand");
68
68
  const derived_writes_1 = require("../../../lib/derived-writes");
69
+ const ui = __importStar(require("../../../lib/ui"));
69
70
  const fs = __importStar(require("node:fs"));
70
71
  const os = __importStar(require("node:os"));
71
72
  const path = __importStar(require("node:path"));
@@ -118,14 +119,27 @@ let jsonMode = false;
118
119
  function setJsonMode(on) {
119
120
  jsonMode = Boolean(on);
120
121
  }
122
+ /**
123
+ * A progress line. `REQ-001: attempt 1/3` is drawn with the requirement in its
124
+ * own column, so a run over many requirements reads down one edge; a line that
125
+ * starts with spaces continues the one above it.
126
+ */
127
+ function progressLine(mark, msg) {
128
+ const m = /^([A-Z][A-Z0-9]*-[\w.-]+): (.*)$/s.exec(msg);
129
+ if (m)
130
+ return ` ${mark} ${ui.c.accent}${ui.pad(m[1], 9)}${ui.c.reset} ${m[2]}\n`;
131
+ if (/^\s{2,}/.test(msg))
132
+ return ` ${ui.pad("", 9)} ${ui.muted(msg.trim())}\n`;
133
+ return ` ${mark} ${msg}\n`;
134
+ }
121
135
  function info(msg) {
122
- (jsonMode ? process.stderr : process.stdout).write(`ℹ️ [harness] ${msg}\n`);
136
+ (jsonMode ? process.stderr : process.stdout).write(progressLine(`${ui.c.brand}${ui.ASCII ? "*" : "◇"}${ui.c.reset}`, msg));
123
137
  }
124
138
  function warn(msg) {
125
- (jsonMode ? process.stderr : process.stdout).write(`⚠️ [harness] ${msg}\n`);
139
+ (jsonMode ? process.stderr : process.stdout).write(progressLine(`${ui.c.warn}${ui.sym.warn}${ui.c.reset}`, msg));
126
140
  }
127
141
  function error(msg) {
128
- process.stderr.write(`❌ [harness] ${msg}\n`);
142
+ process.stderr.write(ui.fail(msg));
129
143
  }
130
144
  function usage() {
131
145
  process.stdout.write("Usage:\n" +
@@ -397,6 +411,27 @@ function runGate(worktreeDir, testCmd, timeoutMs, req = {}, settings = {}) {
397
411
  hint: "",
398
412
  };
399
413
  }
414
+ // ADR-0028: the architecture check runs between validation and the tests,
415
+ // and its failure goes back to the agent like any other gate failure.
416
+ const archCmd = String(settings.archCmd || "").trim();
417
+ if (archCmd) {
418
+ const arch = (0, node_child_process_1.spawnSync)(archCmd, {
419
+ shell: true,
420
+ cwd: worktreeDir,
421
+ encoding: "utf8",
422
+ timeout: timeoutMs,
423
+ maxBuffer: SUBPROCESS_MAX_BUFFER,
424
+ });
425
+ if (arch.status !== 0) {
426
+ return {
427
+ ok: false,
428
+ stage: `architecture check: ${archCmd}`,
429
+ output: (arch.stdout || "") + (arch.stderr || ""),
430
+ hint: "The code is in a place the architecture does not allow. Move it to the layer the " +
431
+ "rule names; do not change the rule.",
432
+ };
433
+ }
434
+ }
400
435
  if (testCmd) {
401
436
  let resolved = (0, HarnessRun_1.substituteGateCommand)(testCmd, req);
402
437
  // Where the message stream will be, if there is one to have.
@@ -534,7 +569,7 @@ function runAdversarialProbe(worktreeDir, req, settings, timeoutMs, promptFor) {
534
569
  `empty input, a boundary, a duplicate, a failure path. Write the test and ` +
535
570
  `nothing else. Do not modify the implementation, the specification or any ` +
536
571
  `existing test.`;
537
- const promptFile = path.join(os.tmpdir(), `csda-probe-${req.requirement}-${crypto.randomBytes(4).toString("hex")}.md`);
572
+ const promptFile = path.join(os.tmpdir(), `specgate-probe-${req.requirement}-${crypto.randomBytes(4).toString("hex")}.md`);
538
573
  try {
539
574
  fs.writeFileSync(promptFile, promptFor(instruction), "utf8");
540
575
  const agent = (0, node_child_process_1.spawnSync)((0, HarnessRun_1.substituteAgentCommand)(command, promptFile), {
@@ -848,7 +883,7 @@ function attemptRequirement(req, ctx) {
848
883
  // sibling requirement this same run happens to be writing.
849
884
  withPrecedents: settings.promptPrecedents === true,
850
885
  });
851
- const promptFile = path.join(os.tmpdir(), `csda-harness-prompt-${req.requirement}-${crypto.randomBytes(4).toString("hex")}.md`);
886
+ const promptFile = path.join(os.tmpdir(), `specgate-harness-prompt-${req.requirement}-${crypto.randomBytes(4).toString("hex")}.md`);
852
887
  fs.writeFileSync(promptFile, prompt, "utf8");
853
888
  archivePrompt(worktreeDir, req.requirement, attempt, step, prompt);
854
889
  // D1: a profile chosen by matching this requirement, when one matches.
@@ -1242,7 +1277,7 @@ function deriveBase(projectDir, reqId, deps, passed, ctx) {
1242
1277
  if (cut.status !== 0) {
1243
1278
  return { error: `could not create ${integration}: ${cut.stderr || cut.stdout}` };
1244
1279
  }
1245
- const worktree = path.join(os.tmpdir(), `csda-harness-base-${reqId}-${crypto.randomBytes(4).toString("hex")}`);
1280
+ const worktree = path.join(os.tmpdir(), `specgate-harness-base-${reqId}-${crypto.randomBytes(4).toString("hex")}`);
1246
1281
  const add = git(projectDir, ["worktree", "add", worktree, integration]);
1247
1282
  if (add.status !== 0) {
1248
1283
  return { error: `could not check out ${integration}: ${add.stderr || add.stdout}` };
@@ -1521,7 +1556,7 @@ function processRequirement(req, ctx) {
1521
1556
  .join(", ")}. Fix the blockers above, or drop --skip-not-ready to run it anyway.`,
1522
1557
  };
1523
1558
  }
1524
- const worktreeDir = path.join(os.tmpdir(), `csda-harness-${req.requirement}-${crypto.randomBytes(4).toString("hex")}`);
1559
+ const worktreeDir = path.join(os.tmpdir(), `specgate-harness-${req.requirement}-${crypto.randomBytes(4).toString("hex")}`);
1525
1560
  // Three ways to meet an existing branch, and until C3 there were only two:
1526
1561
  // skip it, or delete it with --force. After an interruption — a crash, a
1527
1562
  // Ctrl-C, a spend limit — neither is what anyone wants.
@@ -1700,7 +1735,7 @@ function publishBranch(projectDir, branch, req, settings) {
1700
1735
  * enough that ten failed requirements do not bury the summary.
1701
1736
  */
1702
1737
  const FAILURE_TAIL_LINES = 20;
1703
- function printReport(results, format) {
1738
+ function printReport(results, format, recorded) {
1704
1739
  if (format === "json") {
1705
1740
  const summary = results.reduce((acc, r) => {
1706
1741
  acc[r.result] = (acc[r.result] || 0) + 1;
@@ -1709,19 +1744,24 @@ function printReport(results, format) {
1709
1744
  process.stdout.write(JSON.stringify({ schemaVersion: 1, total: results.length, summary, results }, null, 2) + "\n");
1710
1745
  return;
1711
1746
  }
1712
- process.stdout.write("\n── harness report ──\n");
1747
+ const MARK = {
1748
+ pass: `${ui.c.ok}${ui.sym.ok}${ui.c.reset}`,
1749
+ fail: `${ui.c.bad}${ui.sym.fail}${ui.c.reset}`,
1750
+ blocked: `${ui.c.warn}${ui.sym.warn}${ui.c.reset}`,
1751
+ skipped: `${ui.c.muted}${ui.sym.empty}${ui.c.reset}`,
1752
+ };
1753
+ const COLOR = { pass: ui.c.ok, fail: ui.c.bad, blocked: ui.c.warn, skipped: ui.c.muted };
1754
+ const idWidth = Math.max(9, ...results.map((r) => String(r.requirement).length));
1755
+ process.stdout.write("\n" + ui.section("Harness report"));
1713
1756
  for (const r of results) {
1714
- const icon = r.result === "pass"
1715
- ? "✅"
1716
- : r.result === "skipped"
1717
- ? "⏭️ "
1718
- : r.result === "blocked"
1719
- ? "⛔"
1720
- : "❌";
1721
- process.stdout.write(` ${icon} ${r.requirement} ${r.result} (${r.attempts} attempt${r.attempts === 1 ? "" : "s"}) → ${r.branch}\n`);
1757
+ process.stdout.write(` ${MARK[r.result] || MARK.fail} ${ui.c.bold}${ui.pad(String(r.requirement), idWidth)}${ui.c.reset} ` +
1758
+ `${COLOR[r.result] || ""}${ui.pad(r.result, 8)}${ui.c.reset}` +
1759
+ ui.muted(`${r.attempts} attempt${r.attempts === 1 ? "" : "s"}`) +
1760
+ ` ${ui.c.accent}${ui.sym.arrow} ${r.branch}${ui.c.reset}\n`);
1761
+ const sub = (t) => process.stdout.write(` ${t}\n`);
1722
1762
  if (r.result === "blocked") {
1723
1763
  // Nothing ran, so there is no gate output to show — only the reason.
1724
- process.stdout.write(` ${r.error}\n`);
1764
+ sub(r.error);
1725
1765
  continue;
1726
1766
  }
1727
1767
  if (r.result !== "pass" && r.error) {
@@ -1736,24 +1776,24 @@ function printReport(results, format) {
1736
1776
  .slice(1)
1737
1777
  .filter((l) => l.trim() !== "")
1738
1778
  .slice(-FAILURE_TAIL_LINES);
1739
- process.stdout.write(` ${head}\n`);
1779
+ sub(head);
1740
1780
  for (const line of tail)
1741
- process.stdout.write(` │ ${line}\n`);
1781
+ sub(`${ui.muted(ui.sym.pipe)} ${line}`);
1742
1782
  if (tail.length > 0) {
1743
- process.stdout.write(" └ full output: --format json · reproduce: --keep-worktrees\n");
1783
+ sub(ui.muted(`${ui.sym.corner} full output: --format json · reproduce: --keep-worktrees`));
1744
1784
  }
1745
1785
  if (r.workPreserved) {
1746
- process.stdout.write(` ↳ the attempt is committed on ${r.branch} — review it\n`);
1786
+ sub(ui.muted(`↳ the attempt is committed on ${r.branch} — review it`));
1747
1787
  }
1748
1788
  else if (r.result === "fail") {
1749
- process.stdout.write(" ↳ the agent produced no files\n");
1789
+ sub(ui.muted("↳ the agent produced no files"));
1750
1790
  }
1751
1791
  }
1752
1792
  if (r.pushed) {
1753
- process.stdout.write(` pushed${r.prCreated ? ` · PR created${r.prOutput ? `: ${r.prOutput}` : ""}` : ""}\n`);
1793
+ sub(ui.muted(`pushed${r.prCreated ? ` · PR created${r.prOutput ? `: ${r.prOutput}` : ""}` : ""}`));
1754
1794
  }
1755
1795
  if (r.publishError) {
1756
- process.stdout.write(` publish issue: ${String(r.publishError).split("\n")[0]}\n`);
1796
+ sub(`${ui.c.warn}publish issue:${ui.c.reset} ${String(r.publishError).split("\n")[0]}`);
1757
1797
  }
1758
1798
  }
1759
1799
  const pass = results.filter((r) => r.result === "pass").length;
@@ -1764,9 +1804,18 @@ function printReport(results, format) {
1764
1804
  // used to produce N failures and N wasted agent invocations, which said
1765
1805
  // nothing about the N-1 requirements that were never attempted.
1766
1806
  const blockedNote = blocked > 0 ? ` · ${blocked} blocked` : "";
1767
- process.stdout.write(`\n ${pass} passed · ${fail} failed · ${skip} skipped${blockedNote}\n`);
1807
+ process.stdout.write(`\n ${ui.progress(pass, results.length, "passed")}` +
1808
+ ui.muted(` ${pass} passed · ${fail} failed · ${skip} skipped${blockedNote}`) +
1809
+ "\n");
1810
+ if (recorded) {
1811
+ process.stdout.write(` ${ui.muted(`Run recorded in ${recorded} — specgate harness report sums them up`)}\n`);
1812
+ }
1768
1813
  if (pass > 0) {
1769
- process.stdout.write(` Review and merge the harness/* branches you trust.\n`);
1814
+ const first = results.find((r) => r.result === "pass");
1815
+ process.stdout.write(ui.next(`git diff HEAD...${first.branch}`, "review and merge the harness/* branches you trust"));
1816
+ }
1817
+ else {
1818
+ process.stdout.write("\n");
1770
1819
  }
1771
1820
  }
1772
1821
  /**
@@ -1839,7 +1888,7 @@ function runWorkers(runnable, byId, ctx, concurrency) {
1839
1888
  continue;
1840
1889
  }
1841
1890
  const child = (0, node_child_process_1.spawn)(process.execPath, [WORKER_ENTRY, ...workerArgs(id, ctx)], {
1842
- env: { ...process.env, CSDA_HARNESS_WORKER: "1" },
1891
+ env: { ...process.env, SPECGATE_HARNESS_WORKER: "1" },
1843
1892
  });
1844
1893
  let stdout = "";
1845
1894
  let stderr = "";
@@ -2131,19 +2180,24 @@ class RunCommand extends command_1.BaseCommand {
2131
2180
  }
2132
2181
  }
2133
2182
  if (pending.length === 0) {
2134
- info("No pending requirements. Nothing to do.");
2183
+ if (jsonMode)
2184
+ info("No pending requirements. Nothing to do.");
2185
+ else
2186
+ process.stdout.write(ui.header("harness run") + ui.ok("No pending requirements. Nothing to do.") + "\n");
2135
2187
  process.exit(0);
2136
2188
  }
2137
2189
  const hintByReq = new Map((plan.next_steps || []).map((s) => [s.requirement, s.hint]));
2138
2190
  if (args.dryRun) {
2139
- info(`Dry run — ${pending.length} requirement(s) would be processed:`);
2191
+ process.stdout.write(ui.header("harness run", `dry run · ${pending.length} requirement(s) would be processed`));
2140
2192
  for (const req of pending) {
2141
2193
  const prompt = (0, prompt_1.buildPrompt)(req, projectDir, {
2142
2194
  promptPrefix: settings.promptPrefix,
2143
2195
  hint: hintByReq.get(req.requirement),
2144
2196
  withPrecedents: settings.promptPrecedents === true,
2145
2197
  });
2146
- process.stdout.write(`\n${"═".repeat(72)}\n${req.requirement} (${req.category}) → branch harness/${req.requirement}\n${"═".repeat(72)}\n`);
2198
+ process.stdout.write("\n" +
2199
+ ui.section(`${req.requirement} · ${req.category} → branch harness/${req.requirement}`) +
2200
+ "\n");
2147
2201
  process.stdout.write(prompt + "\n");
2148
2202
  }
2149
2203
  process.exit(0);
@@ -2162,12 +2216,17 @@ class RunCommand extends command_1.BaseCommand {
2162
2216
  throw new Error(identity);
2163
2217
  const baseRef = args.baseBranch || "HEAD";
2164
2218
  const concurrencyNote = settings.concurrency > 1 ? `, up to ${settings.concurrency} at a time` : "";
2165
- info(`Processing ${pending.length} requirement(s) from base ${baseRef}${concurrencyNote}.`);
2219
+ if (jsonMode || process.env.SPECGATE_HARNESS_WORKER) {
2220
+ info(`Processing ${pending.length} requirement(s) from base ${baseRef}${concurrencyNote}.`);
2221
+ }
2222
+ else {
2223
+ process.stdout.write(ui.header("harness run", `${pending.length} requirement(s) from ${baseRef}${concurrencyNote}`));
2224
+ }
2166
2225
  // One prune, in the parent, before anything is created. It used to run per
2167
2226
  // requirement, which is harmless in series and a race in parallel:
2168
2227
  // `git worktree prune` running while a sibling is inside
2169
2228
  // `git worktree add` can remove the record of the worktree being created.
2170
- if (!process.env.CSDA_HARNESS_WORKER) {
2229
+ if (!process.env.SPECGATE_HARNESS_WORKER) {
2171
2230
  git(projectDir, ["worktree", "prune"]);
2172
2231
  }
2173
2232
  const ctx = {
@@ -2195,7 +2254,7 @@ class RunCommand extends command_1.BaseCommand {
2195
2254
  // slice of that run, and its own record would be a second copy of the
2196
2255
  // same requirement — `harness report` reads every file in the directory,
2197
2256
  // so duplicates land straight in "cost per delivered REQ".
2198
- const recordPath = process.env.CSDA_HARNESS_WORKER
2257
+ const recordPath = process.env.SPECGATE_HARNESS_WORKER
2199
2258
  ? null
2200
2259
  : writeRunRecord(projectDir, {
2201
2260
  schemaVersion: 1,
@@ -2212,10 +2271,7 @@ class RunCommand extends command_1.BaseCommand {
2212
2271
  }),
2213
2272
  results,
2214
2273
  });
2215
- printReport(results, args.format);
2216
- if (recordPath && args.format !== "json") {
2217
- info(`Run recorded in ${path.relative(projectDir, recordPath)} — \`specgate harness report\``);
2218
- }
2274
+ printReport(results, args.format, recordPath ? path.relative(projectDir, recordPath) : undefined);
2219
2275
  // A blocked requirement was never attempted, so it is not a pass — but it
2220
2276
  // is also not evidence that anything is broken beyond the failure that
2221
2277
  // caused it. It still fails the run, because work was left undone.
@@ -1 +1 @@
1
- {"version":3,"file":"RunCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/harness/RunCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RunCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/harness/RunCommand.ts"],"names":[],"mappings":"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"}