@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
@@ -45,22 +45,18 @@ const command_1 = require("../../../lib/command");
45
45
  const DoneVerification_1 = require("../../../../packages/core/src/domain/DoneVerification");
46
46
  const HarnessConfigFile_1 = require("../../../../packages/core/src/infrastructure/HarnessConfigFile");
47
47
  const MatrixCommand_1 = require("../spec/MatrixCommand");
48
- const COLOR_ENABLED = process.stdout.isTTY && process.env.NO_COLOR === undefined && process.env.TERM !== "dumb";
49
- const c = {
50
- reset: COLOR_ENABLED ? "\x1b[0m" : "",
51
- bold: COLOR_ENABLED ? "\x1b[1m" : "",
52
- dim: COLOR_ENABLED ? "\x1b[2m" : "",
53
- green: COLOR_ENABLED ? "\x1b[32m" : "",
54
- yellow: COLOR_ENABLED ? "\x1b[33m" : "",
55
- };
48
+ const ui_1 = require("../../../lib/ui");
49
+ const ui = __importStar(require("../../../lib/ui"));
50
+ const pet_1 = require("../../../pet/pet");
56
51
  const NULL_SHAPE = { check: null };
57
52
  function usage() {
58
53
  process.stdout.write(`
59
- ✅ ${c.bold}specgate check${c.reset} [dir] [--test-cmd "<command>"] [--json]
54
+ ✅ ${ui_1.c.bold}specgate check${ui_1.c.reset} [dir] [--test-cmd "<command>"] [--json]
60
55
 
61
56
  The gate — what to run before a pull request:
62
57
  1. validate --strict specs, scenarios, traceability, links and coverage
63
- 2. your tests from --test-cmd, or test_cmd: in harness.config.yaml
58
+ 2. your architecture arch_cmd: in harness.config.yaml (ArchUnit, …), if set
59
+ 3. your tests from --test-cmd, or test_cmd: in harness.config.yaml
64
60
 
65
61
  Without a test command it still passes, and says it checked the
66
62
  specification, not the code.
@@ -137,30 +133,53 @@ class CheckCommand extends command_1.BaseCommand {
137
133
  // A generated matrix is a cache of spec.md, the tags and the tests: bring
138
134
  // it up to date before the gate reads it, so nobody runs `matrix` by hand.
139
135
  // `validate` on its own — what CI runs — still fails when it is stale.
136
+ if (!json)
137
+ process.stdout.write(ui.header("check", path.basename(projectDir)));
140
138
  const refreshed = (0, MatrixCommand_1.refreshDerivedMatrix)(projectDir);
141
139
  if (refreshed && !json) {
142
- process.stdout.write(`${c.dim}↻ docs/specs/traceability.md regenerated from its sources${c.reset}\n`);
140
+ process.stdout.write(` ${ui.muted("↻ docs/specs/traceability.md regenerated from its sources")}\n`);
143
141
  }
144
142
  const harness = (0, HarnessConfigFile_1.readHarnessConfig)(projectDir) || {};
145
143
  const testCmd = testCmdFlag !== undefined ? testCmdFlag : harness.testCmd;
146
- const plan = (0, DoneVerification_1.planGateCheck)(projectDir, testCmd);
144
+ const archCmd = (harness.archCmd || "").trim();
145
+ const plan = (0, DoneVerification_1.planGateCheck)(projectDir, testCmd, archCmd);
147
146
  for (const step of plan.steps) {
148
- const run = step.stage === "validate"
147
+ const exec = () => step.stage === "validate"
149
148
  ? (0, node_child_process_1.spawnSync)(process.execPath, [path.join((0, project_root_1.findCliRoot)(__dirname), "bin", "specgate.js"), "validate", ...step.argv], { encoding: "utf8" })
150
149
  : (0, node_child_process_1.spawnSync)(step.argv[0], { cwd: projectDir, encoding: "utf8", shell: true });
150
+ // One line per stage, replaced by how it ended. What a stage printed is
151
+ // shown only when it failed: on a pass it was a screen of noise between
152
+ // the person and the verdict.
153
+ const label = step.stage === "validate"
154
+ ? `Specification ${ui.muted("validate --strict")}`
155
+ : step.stage === "arch"
156
+ ? `Architecture ${ui.muted(step.argv[0])}`
157
+ : `Tests ${ui.muted(step.argv[0])}`;
158
+ const run = json ? exec() : ui.task(label, exec, (r) => ({ ok: r.status === 0 }));
151
159
  const detail = `${run.stdout || ""}${run.stderr || ""}`.trim();
152
- if (!json && detail)
153
- process.stdout.write(`${detail}\n\n`);
160
+ if (!json && detail && run.status !== 0) {
161
+ process.stdout.write("\n" +
162
+ detail
163
+ .split("\n")
164
+ .map((l) => ` ${l}`)
165
+ .join("\n") +
166
+ "\n\n");
167
+ }
154
168
  if (run.status === 0)
155
169
  continue;
170
+ (0, pet_1.recordCheck)(projectDir, false);
156
171
  io.fail(NULL_SHAPE, [
157
172
  step.stage === "validate"
158
173
  ? (0, diagnostics_1.error)("check_validate_failed", "The gate failed: validate --strict.", {
159
174
  fix: "Fix what validate reports above, then run `specgate check` again.",
160
175
  })
161
- : (0, diagnostics_1.error)("check_tests_failed", `The gate failed: \`${step.argv[0]}\`.`, {
162
- fix: `Make \`${step.argv[0]}\` pass, then run \`specgate check\` again.`,
163
- }),
176
+ : step.stage === "arch"
177
+ ? (0, diagnostics_1.error)("check_arch_failed", `The gate failed: the architecture check \`${step.argv[0]}\`.`, {
178
+ fix: `Move the code where the architecture expects it, or change the rule on purpose; then run \`specgate check\` again.`,
179
+ })
180
+ : (0, diagnostics_1.error)("check_tests_failed", `The gate failed: \`${step.argv[0]}\`.`, {
181
+ fix: `Make \`${step.argv[0]}\` pass, then run \`specgate check\` again.`,
182
+ }),
164
183
  ]);
165
184
  }
166
185
  // Name the command the build files give away: adoption printed "Test
@@ -181,21 +200,30 @@ class CheckCommand extends command_1.BaseCommand {
181
200
  }),
182
201
  ]
183
202
  : [];
203
+ (0, pet_1.recordCheck)(projectDir, true);
184
204
  io.emit({
185
205
  check: {
186
206
  validate: "passed",
207
+ architecture: archCmd ? "passed" : "not_configured",
208
+ archCommand: archCmd || null,
187
209
  tests: plan.testsUnverified ? "not_configured" : "passed",
188
210
  testCommand: plan.testsUnverified ? null : testCmd,
189
211
  },
190
212
  status,
191
213
  }, () => {
214
+ // Not a warning: most projects have no architecture tool, and the gate
215
+ // is complete without one. It is said, so nobody reads the pass as one.
216
+ if (!archCmd) {
217
+ process.stdout.write(` ${ui.muted(`· Architecture not checked — specgate config set arch_cmd "<command>"`)}\n`);
218
+ }
192
219
  if (plan.testsUnverified) {
193
- process.stdout.write(`${c.yellow}⚠${c.reset} ${DoneVerification_1.NO_TEST_COMMAND_WARNING.message}\n` +
194
- fixLines.map((l) => ` ${c.dim}${l}${c.reset}\n`).join("") +
195
- `\n${c.green}✔${c.reset} ${c.bold}Gate passed${c.reset} ${c.dim}— the specification${c.reset}\n`);
220
+ process.stdout.write(ui.warn(`Tests ${ui.muted("not configured")}`) +
221
+ `\n ${ui_1.c.warn}${DoneVerification_1.NO_TEST_COMMAND_WARNING.message}${ui_1.c.reset}\n` +
222
+ fixLines.map((l) => ` ${ui.muted(l)}\n`).join("") +
223
+ `\n ${ui_1.c.ok}${ui.sym.ok} ${ui_1.c.bold}Gate passed${ui_1.c.reset} ${ui.muted(`— the specification${archCmd ? " and the architecture" : ""}`)}\n\n`);
196
224
  }
197
225
  else {
198
- process.stdout.write(`${c.green}✔${c.reset} ${c.bold}Gate passed${c.reset} ${c.dim}— the specification and \`${testCmd}\`${c.reset}\n`);
226
+ process.stdout.write(`\n ${ui_1.c.ok}${ui.sym.ok} ${ui_1.c.bold}Gate passed${ui_1.c.reset} ${ui.muted(`— the specification${archCmd ? ", the architecture" : ""} and \`${testCmd}\``)}\n\n`);
199
227
  }
200
228
  });
201
229
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CheckCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/CheckCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CheckCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/CheckCommand.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ const command_1 = require("../../../lib/command");
47
47
  const init_1 = require("../../../harness/init");
48
48
  const TestCommand_1 = require("../../../../packages/core/src/domain/TestCommand");
49
49
  const ChangeWorkspace_1 = require("../../../../packages/core/src/infrastructure/ChangeWorkspace");
50
+ const ui = __importStar(require("../../../lib/ui"));
50
51
  const RICH_HEADER = "| Requirement | Scenario ID | Feature file | Use Case | Command/Query | Aggregate | Event | Technical artifact | Test artifact | Status |";
51
52
  const LEGACY_HEADER = "| Feature | Scenario | Technical artifact | Status |";
52
53
  function nodeFloor(rootDir = (0, project_root_1.findCliRoot)(__dirname)) {
@@ -304,7 +305,7 @@ class DoctorCommand extends command_1.BaseCommand {
304
305
  /**
305
306
  * `.gitattributes` is committed; the merge driver it names is not.
306
307
  *
307
- * `merge.csda-matrix.driver` lives in each clone's git config, so a project
308
+ * `merge.specgate-matrix.driver` lives in each clone's git config, so a project
308
309
  * that set it up still merges by lines on every other machine and in CI —
309
310
  * and the symptom is a conflict in `traceability.md` during a merge, which is
310
311
  * a long way from the cause. Warn, never fail: without the driver git falls
@@ -331,7 +332,7 @@ class DoctorCommand extends command_1.BaseCommand {
331
332
  this.recordError("merge driver", `merge.${init_1.MERGE_DRIVER_NAME}.name is set but its driver command is missing — git will refuse to merge traceability.md`, `Either finish the registration with \`specgate harness init --project-dir .\`, or remove the half: git config --unset merge.${init_1.MERGE_DRIVER_NAME}.name`);
332
333
  return;
333
334
  }
334
- this.warn("merge driver", ".gitattributes routes traceability.md to the csda merge driver, but this clone has not registered it", "Run `specgate harness init --project-dir .` here. Until then git merges the matrix by lines, so two parallel harness branches collide on adjacent rows.");
335
+ this.warn("merge driver", ".gitattributes routes traceability.md to the specgate merge driver, but this clone has not registered it", "Run `specgate harness init --project-dir .` here. Until then git merges the matrix by lines, so two parallel harness branches collide on adjacent rows.");
335
336
  }
336
337
  /**
337
338
  * Does the declared architecture profile still describe this project?
@@ -528,8 +529,9 @@ class DoctorCommand extends command_1.BaseCommand {
528
529
  catch {
529
530
  dir = projectDir || ".";
530
531
  }
531
- if (!io.json)
532
- process.stdout.write(`\n🩺 Doctor report for: ${dir}\n\n`);
532
+ if (!io.json) {
533
+ process.stdout.write(ui.header("doctor", path.basename(path.resolve(dir))));
534
+ }
533
535
  if (!fs.existsSync(path.join(dir, "spec.md"))) {
534
536
  this.recordError("project", "spec.md not found — this directory is not spec-driven yet", "Run `specgate adopt` here (existing code) or `init` (new project).");
535
537
  }
@@ -563,14 +565,29 @@ class DoctorCommand extends command_1.BaseCommand {
563
565
  });
564
566
  process.exit(errors === 0 ? agent_1.EXIT.OK : agent_1.EXIT.FAILURE);
565
567
  }
566
- const icons = { ok: "✅", warn: "⚠️", error: "❌" };
568
+ const mark = {
569
+ ok: ui.state("done"),
570
+ warn: `${ui.c.warn}${ui.sym.warn}${ui.c.reset}`,
571
+ error: `${ui.c.bad}${ui.sym.fail}${ui.c.reset}`,
572
+ };
573
+ const width = Math.max(...this.findings.map((f) => String(f.check).length));
567
574
  for (const f of this.findings) {
568
- process.stdout.write(`${icons[f.level]} ${f.check}: ${f.detail}\n`);
575
+ // A detail may carry a second line (where specgate is installed): it
576
+ // continues under the first, in the detail column.
577
+ const [first, ...rest] = String(f.detail).split("\n");
578
+ process.stdout.write(` ${mark[f.level]} ${ui.pad(String(f.check), width)} ${f.level === "ok" ? ui.muted(first) : first}\n`);
579
+ for (const line of rest)
580
+ process.stdout.write(` ${" ".repeat(width)} ${ui.muted(line.trim())}\n`);
569
581
  if (f.fix)
570
- process.stdout.write(` 💡 Fix: ${f.fix}\n`);
571
- }
572
- process.stdout.write(`\n${errors === 0 ? "✅" : "❌"} ${errors} error(s), ${warns} warning(s), ` +
573
- `${this.findings.length - errors - warns} check(s) passed\n`);
582
+ process.stdout.write(` ${" ".repeat(width)} ${ui.muted("fix:")} ${f.fix}\n`);
583
+ }
584
+ const passed = this.findings.length - errors - warns;
585
+ process.stdout.write(`\n ${ui.progress(passed, this.findings.length, "checks passed")}` +
586
+ ui.muted(` ${errors} error(s) · ${warns} warning(s)`) +
587
+ "\n" +
588
+ (errors === 0
589
+ ? ui.next("specgate status", "what is left, and the command to run next")
590
+ : "\n"));
574
591
  process.exit(errors === 0 ? agent_1.EXIT.OK : agent_1.EXIT.FAILURE);
575
592
  }
576
593
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DoctorCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/DoctorCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DoctorCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/DoctorCommand.ts"],"names":[],"mappings":"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"}
@@ -48,26 +48,18 @@ const MatrixCommand_1 = require("../spec/MatrixCommand");
48
48
  const ReqCommand_1 = require("../spec/ReqCommand");
49
49
  const command_1 = require("../../../lib/command");
50
50
  const NULL_SHAPE = { projectDir: null, actions: [], applied: false, dryRun: false };
51
- const COLOR_ENABLED = process.stdout.isTTY && process.env.NO_COLOR === undefined && process.env.TERM !== "dumb";
52
- const c = {
53
- reset: COLOR_ENABLED ? "\x1b[0m" : "",
54
- bold: COLOR_ENABLED ? "\x1b[1m" : "",
55
- dim: COLOR_ENABLED ? "\x1b[2m" : "",
56
- red: COLOR_ENABLED ? "\x1b[31m" : "",
57
- green: COLOR_ENABLED ? "\x1b[32m" : "",
58
- yellow: COLOR_ENABLED ? "\x1b[33m" : "",
59
- cyan: COLOR_ENABLED ? "\x1b[36m" : "",
60
- };
51
+ const ui_1 = require("../../../lib/ui");
52
+ const ui = __importStar(require("../../../lib/ui"));
61
53
  function usage() {
62
- process.stdout.write(`\n ${c.bold}${c.cyan}🛠 fix${c.reset} ${c.dim}— auto-repair mechanical traceability violations${c.reset}\n\n` +
63
- ` ${c.bold}USAGE${c.reset}\n` +
64
- ` ${c.cyan}specgate fix${c.reset} [--yes] [--dry-run] [--json] [--project-dir <path>]\n\n` +
65
- ` ${c.bold}OPTIONS${c.reset}\n` +
66
- ` ${c.green}--yes${c.reset} ${c.dim}Apply without prompting (CI-friendly).${c.reset}\n` +
67
- ` ${c.green}--dry-run${c.reset} ${c.dim}Preview the changes; never write.${c.reset}\n` +
68
- ` ${c.green}--json${c.reset} ${c.dim}Machine-readable output. Needs --yes or --dry-run.${c.reset}\n` +
69
- ` ${c.green}--project-dir <path>${c.reset} ${c.dim}Project root (auto-detected from cwd if omitted).${c.reset}\n` +
70
- ` ${c.green}-h, --help${c.reset} ${c.dim}Show this help.${c.reset}\n\n`);
54
+ process.stdout.write(`\n ${ui_1.c.bold}${ui_1.c.cyan}🛠 fix${ui_1.c.reset} ${ui_1.c.dim}— auto-repair mechanical traceability violations${ui_1.c.reset}\n\n` +
55
+ ` ${ui_1.c.bold}USAGE${ui_1.c.reset}\n` +
56
+ ` ${ui_1.c.cyan}specgate fix${ui_1.c.reset} [--yes] [--dry-run] [--json] [--project-dir <path>]\n\n` +
57
+ ` ${ui_1.c.bold}OPTIONS${ui_1.c.reset}\n` +
58
+ ` ${ui_1.c.green}--yes${ui_1.c.reset} ${ui_1.c.dim}Apply without prompting (CI-friendly).${ui_1.c.reset}\n` +
59
+ ` ${ui_1.c.green}--dry-run${ui_1.c.reset} ${ui_1.c.dim}Preview the changes; never write.${ui_1.c.reset}\n` +
60
+ ` ${ui_1.c.green}--json${ui_1.c.reset} ${ui_1.c.dim}Machine-readable output. Needs --yes or --dry-run.${ui_1.c.reset}\n` +
61
+ ` ${ui_1.c.green}--project-dir <path>${ui_1.c.reset} ${ui_1.c.dim}Project root (auto-detected from cwd if omitted).${ui_1.c.reset}\n` +
62
+ ` ${ui_1.c.green}-h, --help${ui_1.c.reset} ${ui_1.c.dim}Show this help.${ui_1.c.reset}\n\n`);
71
63
  }
72
64
  function computeFixes(projectDir, traceContent, specContent) {
73
65
  const rows = (0, PlanCommand_1.parseTraceability)(traceContent);
@@ -168,24 +160,26 @@ class FixCommand extends command_1.BaseCommand {
168
160
  fix: "A feature without a row needs @REQ-NNN on its scenario, or `specgate new`.",
169
161
  }),
170
162
  ],
171
- }, () => process.stdout.write(`${regenerated ? "↻ Regenerated docs/specs/traceability.md. " : ""}` +
172
- "The matrix is generated: tag an orphan scenario @REQ-NNN, or add it with `specgate new`.\n"));
163
+ }, () => process.stdout.write(ui.header("fix") +
164
+ (regenerated ? ` ${ui.muted("↻ Regenerated docs/specs/traceability.md")}\n` : "") +
165
+ ui.info("The matrix is generated: tag an orphan scenario @REQ-NNN, or add it as a requirement.") +
166
+ ui.next('specgate new "<what it does>"')));
173
167
  return;
174
168
  }
175
169
  const { content, actions } = computeFixes(projectDir, traceContent, specContent);
176
170
  const base = { projectDir, actions, dryRun: Boolean(opts.dryRun) };
177
171
  if (actions.length === 0) {
178
- io.emit({ ...base, applied: false }, () => process.stdout.write(`${c.green}✔${c.reset} Nothing to fix — the matrix is already consistent.\n`));
172
+ io.emit({ ...base, applied: false }, () => process.stdout.write(ui.header("fix") + ui.ok("Nothing to fix — the matrix is already consistent.") + "\n"));
179
173
  process.exit(0);
180
174
  }
181
175
  if (!io.json) {
182
- process.stdout.write(`\n ${c.bold}Planned fixes${c.reset} ${c.dim}(${actions.length})${c.reset}\n`);
176
+ process.stdout.write(ui.header("fix") + ui.section(`Planned fixes (${actions.length})`));
183
177
  for (const a of actions)
184
- process.stdout.write(` ${c.green}${a}${c.reset}\n`);
178
+ process.stdout.write(` ${ui_1.c.ok}${ui.sym.added}${ui_1.c.reset} ${a}\n`);
185
179
  process.stdout.write("\n");
186
180
  }
187
181
  if (opts.dryRun) {
188
- io.emit({ ...base, applied: false }, () => process.stdout.write(`${c.dim}--dry-run: no changes written.${c.reset}\n`));
182
+ io.emit({ ...base, applied: false }, () => process.stdout.write(ui.info("Dry run — no changes written.") + "\n"));
189
183
  process.exit(0);
190
184
  }
191
185
  if (!opts.yes) {
@@ -198,7 +192,8 @@ class FixCommand extends command_1.BaseCommand {
198
192
  return;
199
193
  }
200
194
  if (!process.stdin.isTTY || !process.stdout.isTTY) {
201
- process.stderr.write(`${c.red}✖${c.reset} Refusing to write without confirmation. Re-run with --yes (or --dry-run to preview).\n`);
195
+ process.stderr.write(ui.fail("Refusing to write without confirmation.") +
196
+ ui.fix("Re-run with --yes, or --dry-run to preview."));
202
197
  process.exit(2);
203
198
  }
204
199
  const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
@@ -207,13 +202,13 @@ class FixCommand extends command_1.BaseCommand {
207
202
  .toLowerCase();
208
203
  rl.close();
209
204
  if (answer !== "y" && answer !== "yes") {
210
- process.stdout.write(`${c.dim}Aborted; no changes written.${c.reset}\n`);
205
+ process.stdout.write(ui.info("Aborted — no changes written.") + "\n");
211
206
  process.exit(1);
212
207
  }
213
208
  }
214
209
  fs.writeFileSync(tracePath, content, "utf8");
215
- io.emit({ ...base, applied: true }, () => process.stdout.write(`${c.green}✔${c.reset} Applied ${actions.length} fix(es) to docs/specs/traceability.md\n` +
216
- ` ${c.dim}Next: replace the TODO cells, then \`specgate validate --strict\`.${c.reset}\n`));
210
+ io.emit({ ...base, applied: true }, () => process.stdout.write(ui.ok(`Applied ${actions.length} fix(es) to docs/specs/traceability.md`) +
211
+ ui.next("specgate check", "after you replace the TODO cells")));
217
212
  process.exit(0);
218
213
  }
219
214
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FixCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/FixCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FixCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/quality/FixCommand.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ const capability_specs_1 = require("../../../lib/capability-specs");
50
50
  const DeclaredArtifacts_1 = require("../../../../packages/core/src/domain/DeclaredArtifacts");
51
51
  const src_1 = require("../../../../packages/core/src");
52
52
  const monorepo_fanout_1 = require("../../../lib/monorepo-fanout");
53
+ const ui = __importStar(require("../../../lib/ui"));
53
54
  const HISTORY_REL = "reports/spec-coverage-history.jsonl";
54
55
  const DONE_CATEGORY = "DONE";
55
56
  function buildReport(projectDir) {
@@ -85,7 +86,7 @@ function buildReport(projectDir) {
85
86
  }
86
87
  /**
87
88
  * The declared-value drift model (§8.6): for every capability-spec
88
- * requirement that declares a `value_<id>=` in its `csda:trace`, read the
89
+ * requirement that declares a `value_<id>=` in its `specgate:trace`, read the
89
90
  * code file(s) its matrix row already points at (the same Technical/Test
90
91
  * artifact `--strict-links` checks exist) and compare.
91
92
  *
@@ -317,7 +318,7 @@ function renderHtml(report, opts) {
317
318
  .join("")}</ul>`
318
319
  : "";
319
320
  // §8.6 — declared-value drift. Only rendered when there is something
320
- // annotated at all: a project with no `value_*`/`csda:value` pair has
321
+ // annotated at all: a project with no `value_*`/`specgate:value` pair has
321
322
  // nothing to show, the same restraint `orphanBlock` already applies.
322
323
  const dv = report.declaredValues || { total: 0, specOnly: 0, codeOnly: 0, items: [] };
323
324
  const dvSeen = dv.total + dv.specOnly + dv.codeOnly;
@@ -547,8 +548,11 @@ class ReportCommand extends command_1.BaseCommand {
547
548
  : path.join(projectDir, opts.out || defaultOut);
548
549
  fs.mkdirSync(path.dirname(outPath), { recursive: true });
549
550
  fs.writeFileSync(outPath, output);
550
- process.stdout.write(`📊 Wrote ${path.relative(projectDir, outPath) || outPath} — ` +
551
- `${report.implementedPct}% implemented (${report.implemented}/${report.total}).\n`);
551
+ process.stdout.write(ui.header("report") +
552
+ ui.ok(`Wrote ${ui.bold(path.relative(projectDir, outPath) || outPath)}`) +
553
+ `\n ${ui.progress(report.implemented, report.total, "implemented")}` +
554
+ ui.muted(` ${report.implementedPct}%`) +
555
+ "\n\n");
552
556
  }
553
557
  process.exit(0);
554
558
  }