@rsaglobaltech/specgate 0.26.0 → 0.27.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +6 -0
  3. package/dist/packages/core/src/domain/ChangeMeasures.js +198 -0
  4. package/dist/packages/core/src/domain/ChangeMeasures.js.map +1 -0
  5. package/dist/packages/core/src/domain/ConventionalCommit.js +73 -0
  6. package/dist/packages/core/src/domain/ConventionalCommit.js.map +1 -0
  7. package/dist/packages/core/src/domain/HarnessConfig.js.map +1 -1
  8. package/dist/packages/core/src/domain/HarnessReport.js +2 -0
  9. package/dist/packages/core/src/domain/HarnessReport.js.map +1 -1
  10. package/dist/packages/core/src/domain/QualityChecks.js +241 -0
  11. package/dist/packages/core/src/domain/QualityChecks.js.map +1 -0
  12. package/dist/packages/core/src/domain/QualitySummary.js +58 -0
  13. package/dist/packages/core/src/domain/QualitySummary.js.map +1 -0
  14. package/dist/packages/core/src/domain/Sarif.js +121 -0
  15. package/dist/packages/core/src/domain/Sarif.js.map +1 -0
  16. package/dist/packages/core/src/infrastructure/GitContributionStager.js +1 -1
  17. package/dist/packages/core/src/infrastructure/GitContributionStager.js.map +1 -1
  18. package/dist/packages/core/src/infrastructure/HarnessConfigFile.js +21 -0
  19. package/dist/packages/core/src/infrastructure/HarnessConfigFile.js.map +1 -1
  20. package/dist/packages/core/src/infrastructure/QualityBaselineFile.js +67 -0
  21. package/dist/packages/core/src/infrastructure/QualityBaselineFile.js.map +1 -0
  22. package/dist/scripts/cli/commands/change/TicketCommand.js +1 -1
  23. package/dist/scripts/cli/commands/change/TicketCommand.js.map +1 -1
  24. package/dist/scripts/cli/commands/harness/RunCommand.js +212 -15
  25. package/dist/scripts/cli/commands/harness/RunCommand.js.map +1 -1
  26. package/dist/scripts/cli/commands/project/Forja.js +61 -5
  27. package/dist/scripts/cli/commands/project/Forja.js.map +1 -1
  28. package/dist/scripts/cli/commands/project/InitProjectCommand.js +7 -0
  29. package/dist/scripts/cli/commands/project/InitProjectCommand.js.map +1 -1
  30. package/dist/scripts/cli/commands/quality/CheckCommand.js +54 -3
  31. package/dist/scripts/cli/commands/quality/CheckCommand.js.map +1 -1
  32. package/dist/scripts/cli/commands/quality/QualityCommand.js +336 -0
  33. package/dist/scripts/cli/commands/quality/QualityCommand.js.map +1 -0
  34. package/dist/scripts/cli/commands/spec/DoneCommand.js +4 -1
  35. package/dist/scripts/cli/commands/spec/DoneCommand.js.map +1 -1
  36. package/dist/scripts/cli/commands/spec/StudioCommand.js +14 -0
  37. package/dist/scripts/cli/commands/spec/StudioCommand.js.map +1 -1
  38. package/dist/scripts/docs/nav.js +13 -2
  39. package/dist/scripts/docs/nav.js.map +1 -1
  40. package/dist/scripts/harness/prompt.js +4 -0
  41. package/dist/scripts/harness/prompt.js.map +1 -1
  42. package/dist/scripts/harness/report.js +13 -0
  43. package/dist/scripts/harness/report.js.map +1 -1
  44. package/dist/scripts/lib/quality-presets.js +458 -0
  45. package/dist/scripts/lib/quality-presets.js.map +1 -0
  46. package/dist/scripts/lib/quality-run.js +595 -0
  47. package/dist/scripts/lib/quality-run.js.map +1 -0
  48. package/dist/scripts/lib/sonar-local.js +308 -0
  49. package/dist/scripts/lib/sonar-local.js.map +1 -0
  50. package/dist/scripts/lib/studio-app-page.js +74 -11
  51. package/dist/scripts/lib/studio-app-page.js.map +1 -1
  52. package/dist/scripts/lib/studio-app.js +80 -0
  53. package/dist/scripts/lib/studio-app.js.map +1 -1
  54. package/dist/scripts/lib/studio-route.js +64 -1
  55. package/dist/scripts/lib/studio-route.js.map +1 -1
  56. package/dist/scripts/lib/surface.js +11 -0
  57. package/dist/scripts/lib/surface.js.map +1 -1
  58. package/dist/scripts/lib/ticket-keys.js +1 -1
  59. package/dist/scripts/lib/ticket-keys.js.map +1 -1
  60. package/dist/scripts/quality.js +10 -0
  61. package/dist/scripts/quality.js.map +1 -0
  62. package/package.json +1 -1
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.QUALITY_BASELINE_FILE = void 0;
37
+ exports.readBaseline = readBaseline;
38
+ exports.writeBaseline = writeBaseline;
39
+ const fs = __importStar(require("node:fs"));
40
+ const path = __importStar(require("node:path"));
41
+ const Sarif_1 = require("../domain/Sarif");
42
+ /** Committed with the project: the findings accepted as existing debt (ADR-0040). */
43
+ exports.QUALITY_BASELINE_FILE = path.join(".specgate", "quality-baseline.json");
44
+ function readBaseline(projectDir) {
45
+ try {
46
+ const doc = JSON.parse(fs.readFileSync(path.join(projectDir, exports.QUALITY_BASELINE_FILE), "utf8"));
47
+ if (doc && doc.version === 1 && doc.checks && typeof doc.checks === "object")
48
+ return doc;
49
+ }
50
+ catch {
51
+ /* none yet, or unreadable: nothing is accepted */
52
+ }
53
+ return Sarif_1.EMPTY_BASELINE;
54
+ }
55
+ function writeBaseline(projectDir, baseline) {
56
+ const file = path.join(projectDir, exports.QUALITY_BASELINE_FILE);
57
+ fs.mkdirSync(path.dirname(file), { recursive: true });
58
+ const sorted = {
59
+ version: 1,
60
+ checks: Object.fromEntries(Object.keys(baseline.checks)
61
+ .sort()
62
+ .map((k) => [k, [...baseline.checks[k]].sort()])),
63
+ };
64
+ fs.writeFileSync(file, JSON.stringify(sorted, null, 2) + "\n", "utf8");
65
+ return file;
66
+ }
67
+ //# sourceMappingURL=QualityBaselineFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QualityBaselineFile.js","sourceRoot":"","sources":["../../../../../packages/core/src/infrastructure/QualityBaselineFile.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,oCAQC;AAED,sCAaC;AA9BD,4CAA8B;AAC9B,gDAAkC;AAClC,2CAAgE;AAEhE,qFAAqF;AACxE,QAAA,qBAAqB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;AAErF,SAAgB,YAAY,CAAC,UAAkB;IAC7C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,6BAAqB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9F,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACP,kDAAkD;IACpD,CAAC;IACD,OAAO,sBAAc,CAAC;AACxB,CAAC;AAED,SAAgB,aAAa,CAAC,UAAkB,EAAE,QAAkB;IAClE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,6BAAqB,CAAC,CAAC;IAC1D,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,MAAM,GAAa;QACvB,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;aACzB,IAAI,EAAE;aACN,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CACnD;KACF,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IACvE,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -196,7 +196,7 @@ function ticketBranch(dir, t) {
196
196
  function commitOpening(dir, t, changeId) {
197
197
  const added = git(dir, ["add", "--", `${CHANGES}/${changeId}`]);
198
198
  const made = added.status === 0
199
- ? git(dir, ["commit", "-q", "-m", `${t.key} docs(spec): open the change from the ticket`])
199
+ ? git(dir, ["commit", "-q", "-m", `docs(spec): ${t.key} open the change from the ticket`])
200
200
  : added;
201
201
  if (made.status === 0)
202
202
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"TicketCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/change/TicketCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TicketCommand.js","sourceRoot":"","sources":["../../../../../scripts/cli/commands/change/TicketCommand.ts"],"names":[],"mappings":"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"}
@@ -84,6 +84,7 @@ const harness_events_1 = require("../../../lib/harness-events");
84
84
  const clarification_1 = require("../../../lib/clarification");
85
85
  const screen_requirements_1 = require("../../../lib/screen-requirements");
86
86
  const harness_guard_1 = require("../../../lib/harness-guard");
87
+ const quality_run_1 = require("../../../lib/quality-run");
87
88
  const HarnessEvents_1 = require("../../../../packages/core/src/domain/HarnessEvents");
88
89
  /**
89
90
  * `read` against the project as it will be after its open changes are
@@ -497,6 +498,7 @@ function runGate(worktreeDir, testCmd, timeoutMs, req = {}, settings = {}, repor
497
498
  // The agent's tests are new evidence for a generated matrix: refresh it so
498
499
  // the gate judges the attempt, not the matrix as it was before it.
499
500
  (0, MatrixCommand_1.refreshDerivedMatrix)(worktreeDir);
501
+ let passHint = "";
500
502
  const validate = judged(worktreeDir, (dir, toProject) => {
501
503
  const validateArgs = [VALIDATE_SCRIPT, dir, "--strict"];
502
504
  if (req.requirement)
@@ -537,13 +539,16 @@ function runGate(worktreeDir, testCmd, timeoutMs, req = {}, settings = {}, repor
537
539
  // and its failure goes back to the agent like any other gate failure.
538
540
  const archCmd = String(settings.archCmd || "").trim();
539
541
  if (archCmd) {
540
- const arch = (0, node_child_process_1.spawnSync)(archCmd, {
541
- shell: true,
542
- cwd: worktreeDir,
543
- encoding: "utf8",
544
- timeout: timeoutMs,
545
- maxBuffer: SUBPROCESS_MAX_BUFFER,
546
- });
542
+ // REQ-231: with arch_sarif, only a violation this attempt adds fails it.
543
+ const arch = settings.archSarif
544
+ ? (0, quality_run_1.archRun)(worktreeDir, archCmd, settings.archSarif, "", req.requirement || "")
545
+ : (0, node_child_process_1.spawnSync)(archCmd, {
546
+ shell: true,
547
+ cwd: worktreeDir,
548
+ encoding: "utf8",
549
+ timeout: timeoutMs,
550
+ maxBuffer: SUBPROCESS_MAX_BUFFER,
551
+ });
547
552
  report(`architecture check: ${archCmd}`, arch.status === 0 ? "pass" : "fail");
548
553
  if (arch.status !== 0) {
549
554
  return {
@@ -625,12 +630,52 @@ function runGate(worktreeDir, testCmd, timeoutMs, req = {}, settings = {}, repor
625
630
  errors.map((e) => ` ${e.message}\n fix: ${e.fix}`).join("\n\n"),
626
631
  };
627
632
  }
628
- if (warnings.length > 0) {
629
- return { ok: true, stage: "", output: "", hint: warnings[0].message };
633
+ if (warnings.length > 0)
634
+ passHint = warnings[0].message;
635
+ }
636
+ }
637
+ // REQ-220, REQ-221: the quality checks, after the tests — the attempt ones,
638
+ // then the end ones. A failure goes back to the agent like a failing test.
639
+ const quality = settings.quality;
640
+ if (quality && quality.checks.length > 0) {
641
+ const ctx = (0, quality_run_1.gateContext)(worktreeDir, req.requirement || "", "");
642
+ const outcomes = [];
643
+ for (const stage of ["attempt", "end"]) {
644
+ for (const o of (0, quality_run_1.runStages)(worktreeDir, quality, [stage], ctx, undefined, agentChecks(worktreeDir, req, settings, timeoutMs, testCmd))) {
645
+ outcomes.push(o);
646
+ // REQ-229: the step says what was measured, so /live shows it as it happens.
647
+ const said = o.skipped
648
+ ? " (not run)"
649
+ : o.measure && o.measure.value !== null
650
+ ? ` ${o.measure.value}%`
651
+ : o.findings
652
+ ? ` · ${o.findings.freshCount} new`
653
+ : "";
654
+ report(`quality: ${o.name}${said}`, o.ok || !!o.skipped || !o.gate ? "pass" : "fail", {
655
+ ms: o.ms,
656
+ ...(o.skipped ? { skipped: o.skipped } : {}),
657
+ ...(o.measure ? { value: o.measure.value } : {}),
658
+ });
659
+ if (o.gate && !o.ok && !o.skipped) {
660
+ return {
661
+ ok: false,
662
+ stage: `quality check: ${o.name}`,
663
+ output: o.output,
664
+ hint: o.measure && o.measure.kind === "coverage"
665
+ ? "Write the tests that run the lines named above; do not lower the threshold."
666
+ : o.measure && o.measure.kind === "mutation"
667
+ ? "Strengthen the tests so each surviving mutant named above would fail one."
668
+ : o.name === "commits"
669
+ ? "Reword the commits named above as Conventional Commits, or do not commit: the harness commits for you."
670
+ : "Fix what the check found. Do not silence it: no @SuppressWarnings, eslint-disable or baseline edit.",
671
+ checks: outcomes,
672
+ };
673
+ }
630
674
  }
631
675
  }
676
+ return { ok: true, stage: "", output: "", hint: passHint, checks: outcomes };
632
677
  }
633
- return { ok: true, stage: "", output: "", hint: "" };
678
+ return { ok: true, stage: "", output: "", hint: passHint };
634
679
  }
635
680
  /**
636
681
  * Undo whatever an advisory agent touched.
@@ -673,6 +718,151 @@ function discardWorktreeChanges(worktreeDir) {
673
718
  // reviewer's edits must not discard the evidence.
674
719
  git(worktreeDir, ["clean", "-fd", "-e", EmptyAttempt_1.PROMPT_ARCHIVE_DIR]);
675
720
  }
721
+ /**
722
+ * The worktree exactly as it is, to put back after an agent that must not
723
+ * change it: tracked files through `git stash create` (which touches
724
+ * nothing), untracked ones by content. An agent check runs before the commit,
725
+ * so the implementer's work is uncommitted — `discardWorktreeChanges` would
726
+ * throw it away (REQ-227).
727
+ */
728
+ function snapshotWorktree(worktreeDir) {
729
+ const stash = (git(worktreeDir, ["stash", "create"]).stdout || "").trim();
730
+ const untracked = (git(worktreeDir, ["ls-files", "--others", "--exclude-standard", "-z"]).stdout || "")
731
+ .split("\0")
732
+ .filter(Boolean);
733
+ const saved = new Map(untracked.map((rel) => [rel, fs.readFileSync(path.join(worktreeDir, rel))]));
734
+ return () => {
735
+ git(worktreeDir, ["checkout", stash || "HEAD", "--", "."]);
736
+ const now = (git(worktreeDir, ["ls-files", "--others", "--exclude-standard", "-z"]).stdout || "")
737
+ .split("\0")
738
+ .filter(Boolean);
739
+ for (const rel of now) {
740
+ if (!saved.has(rel) && !rel.startsWith(EmptyAttempt_1.PROMPT_ARCHIVE_DIR)) {
741
+ fs.rmSync(path.join(worktreeDir, rel), { force: true });
742
+ }
743
+ }
744
+ for (const [rel, content] of saved) {
745
+ fs.mkdirSync(path.dirname(path.join(worktreeDir, rel)), { recursive: true });
746
+ fs.writeFileSync(path.join(worktreeDir, rel), content);
747
+ }
748
+ };
749
+ }
750
+ /** Run an agent on an instruction built into the requirement's prompt; its output. */
751
+ function runAgentOnce(worktreeDir, command, prompt, timeoutMs, tag) {
752
+ const promptFile = path.join(os.tmpdir(), `specgate-${tag}-${crypto.randomBytes(4).toString("hex")}.md`);
753
+ try {
754
+ fs.writeFileSync(promptFile, prompt, "utf8");
755
+ const r = (0, node_child_process_1.spawnSync)((0, HarnessRun_1.substituteAgentCommand)(command, promptFile), {
756
+ shell: true,
757
+ cwd: worktreeDir,
758
+ encoding: "utf8",
759
+ timeout: timeoutMs,
760
+ maxBuffer: SUBPROCESS_MAX_BUFFER,
761
+ stdio: ["ignore", "pipe", "pipe"],
762
+ });
763
+ return `${r.stdout || ""}${r.stderr || ""}`.trim();
764
+ }
765
+ finally {
766
+ fs.rmSync(promptFile, { force: true });
767
+ }
768
+ }
769
+ /**
770
+ * The agent checks of REQ-227, lent to the quality stages of a harness gate:
771
+ * `builtin:review` — a second agent reads the change against the requirement
772
+ * and answers VERDICT: PASS or FAIL; `builtin:adversary` — one writes a test
773
+ * that tries to break it, which is run and then removed. Neither may change
774
+ * the work: the worktree is put back exactly as it was.
775
+ */
776
+ function agentChecks(worktreeDir, req, settings, timeoutMs, testCmd) {
777
+ const commandFor = (check, fallback) => {
778
+ const profile = check.profile || fallback;
779
+ if (!profile)
780
+ return settings.agent || "";
781
+ const known = (settings.profileAgents || {})[profile];
782
+ if (known)
783
+ return known;
784
+ try {
785
+ // A profile only a check names is not resolved with the others.
786
+ return (0, HarnessConfigFile_1.resolveProfileAgent)(worktreeDir, profile);
787
+ }
788
+ catch {
789
+ return settings.agent || "";
790
+ }
791
+ };
792
+ const promptFor = (instruction) => (0, prompt_1.buildPrompt)(req, worktreeDir, {
793
+ promptPrefix: settings.promptPrefix,
794
+ hint: instruction,
795
+ withPrecedents: settings.promptPrecedents === true,
796
+ });
797
+ return {
798
+ "builtin:review": (check) => {
799
+ const command = commandFor(check, settings.reviewProfile || "");
800
+ if (!command)
801
+ return { ok: true, output: "no agent configured to review" };
802
+ const diff = (git(worktreeDir, ["diff", "HEAD"]).stdout || "").slice(0, 60000);
803
+ const restore = snapshotWorktree(worktreeDir);
804
+ let said = "";
805
+ try {
806
+ said = runAgentOnce(worktreeDir, command, promptFor(`Review only; change no file. Compare the change below with ${req.requirement}, its ` +
807
+ "statement and every scenario. Answer with a first line `VERDICT: PASS` when the " +
808
+ "change does what the requirement says and nothing it forbids, or `VERDICT: FAIL` " +
809
+ "followed by each reason as `- path:line — what is wrong`.\n\n```diff\n" +
810
+ diff +
811
+ "\n```"), timeoutMs, "review");
812
+ }
813
+ finally {
814
+ restore();
815
+ }
816
+ const verdict = /VERDICT:\s*(PASS|FAIL)/i.exec(said);
817
+ if (!verdict) {
818
+ return {
819
+ ok: true,
820
+ output: `The reviewer gave no verdict:
821
+ ${said.slice(0, 2000)}`,
822
+ };
823
+ }
824
+ return { ok: verdict[1].toUpperCase() === "PASS", output: said.slice(0, 4000) };
825
+ },
826
+ "builtin:adversary": (check) => {
827
+ const command = commandFor(check, settings.adversaryProfile || "");
828
+ if (!command || !testCmd)
829
+ return { ok: true, output: "no agent or test command to probe with" };
830
+ const restore = snapshotWorktree(worktreeDir);
831
+ try {
832
+ const before = new Set((git(worktreeDir, ["status", "--porcelain"]).stdout || "").split("\n").filter(Boolean));
833
+ const said = runAgentOnce(worktreeDir, command, promptFor(`Try to **break** the implementation of ${req.requirement}: write one additional ` +
834
+ "test, in the project's test style, for a case it should handle and might not — an " +
835
+ "empty input, a boundary, a duplicate, a failure path. Write the test and nothing " +
836
+ "else; do not modify the implementation, the specification or any existing test."), timeoutMs, "adversary");
837
+ const wrote = (git(worktreeDir, ["status", "--porcelain"]).stdout || "")
838
+ .split("\n")
839
+ .filter((l) => l && !before.has(l) && !l.slice(3).startsWith(EmptyAttempt_1.PROMPT_ARCHIVE_DIR));
840
+ if (wrote.length === 0)
841
+ return { ok: true, output: "The adversary wrote no test." };
842
+ const test = (0, node_child_process_1.spawnSync)((0, HarnessRun_1.substituteGateCommand)(testCmd, req), {
843
+ shell: true,
844
+ cwd: worktreeDir,
845
+ encoding: "utf8",
846
+ timeout: timeoutMs,
847
+ maxBuffer: SUBPROCESS_MAX_BUFFER,
848
+ });
849
+ return {
850
+ ok: test.status === 0,
851
+ output: [
852
+ `The adversary wrote ${wrote.map((l) => l.slice(3)).join(", ")}; the tests ${test.status === 0 ? "still pass" : "fail"}.`,
853
+ said.slice(0, 1500),
854
+ test.status === 0 ? "" : `${test.stdout || ""}${test.stderr || ""}`.slice(-3000),
855
+ ]
856
+ .filter(Boolean)
857
+ .join("\n\n"),
858
+ };
859
+ }
860
+ finally {
861
+ restore();
862
+ }
863
+ },
864
+ };
865
+ }
676
866
  /**
677
867
  * Let an adversary try to break a green implementation (D3).
678
868
  *
@@ -716,7 +906,10 @@ function runAdversarialProbe(worktreeDir, req, settings, timeoutMs, promptFor) {
716
906
  // case is telling you something mildly reassuring.
717
907
  return { ran: true, broke: false, detail: "The adversary wrote no test.", wrote: [] };
718
908
  }
719
- const after = runGate(worktreeDir, settings.testCmd, timeoutMs, req, settings);
909
+ const after = runGate(worktreeDir, settings.testCmd, timeoutMs, req, {
910
+ ...settings,
911
+ quality: undefined,
912
+ });
720
913
  return {
721
914
  ran: true,
722
915
  broke: !after.ok,
@@ -1269,6 +1462,7 @@ function attemptRequirement(req, ctx) {
1269
1462
  // The probe never changes the verdict; it travels beside it so
1270
1463
  // `harness report` and the run record can show what it found.
1271
1464
  ...(probe.ran ? { adversarial: probe } : {}),
1465
+ ...(gate.checks ? { checks: gate.checks.map(({ output: _o, ...rest }) => rest) } : {}),
1272
1466
  };
1273
1467
  }
1274
1468
  // Every attempt is spent. Commit what the agent produced anyway, on the
@@ -1572,13 +1766,14 @@ function resumeFrom(worktreeDir, requirement) {
1572
1766
  return { attempt: 1, previousFailure: "" };
1573
1767
  }
1574
1768
  // Interrupted or exhausted? The two deserve different answers, and the branch
1575
- // says which: `preserveFailedAttempt` leaves a `wip(...): FAILED the gate`
1769
+ // says which: `preserveFailedAttempt` leaves a `chore(...): attempt FAILED the gate`
1576
1770
  // commit when the attempts run out, and an interruption leaves none.
1577
1771
  //
1578
1772
  // exhausted → the last attempt reached a verdict → resume at the next one
1579
1773
  // interrupted → it never did → re-run it, without charging the budget
1580
1774
  const head = git(worktreeDir, ["log", "-1", "--format=%s"]);
1581
- const lastCompleted = /^wip\([^)]*\): FAILED the gate/.test((head.stdout || "").trim());
1775
+ // `chore(…): attempt FAILED` since REQ-234; `wip(…): FAILED` on branches older versions left.
1776
+ const lastCompleted = /^(?:chore\([^)]*\): attempt|wip\([^)]*\):) FAILED the gate/.test((head.stdout || "").trim());
1582
1777
  const point = (0, ResumeState_1.resumePoint)(names, requirement, lastCompleted);
1583
1778
  if (!point.latest)
1584
1779
  return { attempt: 1, previousFailure: "" };
@@ -1599,7 +1794,7 @@ function preserveFailedAttempt(worktreeDir, req, failure) {
1599
1794
  const commit = git(worktreeDir, [
1600
1795
  "commit",
1601
1796
  "-m",
1602
- `wip(${req.requirement}): FAILED the gate — do not merge as is\n\n` +
1797
+ `chore(${req.requirement}): attempt FAILED the gate — do not merge as is\n\n` +
1603
1798
  `${firstLine}\n\n` +
1604
1799
  "Committed by `specgate harness run` so the attempt is reviewable rather than\n" +
1605
1800
  "discarded. The requirement is still Draft: `specgate apply` never ran.",
@@ -2184,7 +2379,9 @@ async function runChain(pending, ctx, hintByReq) {
2184
2379
  const eventsFile = (0, harness_events_1.eventsFileFor)(projectDir, req.requirement);
2185
2380
  const attempt = Number(result.attempts) || undefined;
2186
2381
  (0, harness_events_1.appendEvent)(eventsFile, { type: "merge", into: "HEAD", branch }, req.requirement, attempt);
2187
- const gate = runGate(projectDir, ctx.settings.testCmd, ctx.timeoutMs, req, ctx.settings, (stage, res, extra) => (0, harness_events_1.appendEvent)(eventsFile, { type: "gate", stage: `post-merge ${stage}`, result: res, ...(extra || {}) }, req.requirement, attempt));
2382
+ const gate = runGate(projectDir, ctx.settings.testCmd, ctx.timeoutMs, req,
2383
+ // The checks judged the branch already; the post-merge gate is the suite's.
2384
+ { ...ctx.settings, quality: undefined }, (stage, res, extra) => (0, harness_events_1.appendEvent)(eventsFile, { type: "gate", stage: `post-merge ${stage}`, result: res, ...(extra || {}) }, req.requirement, attempt));
2188
2385
  if (!gate.ok) {
2189
2386
  git(projectDir, ["reset", "-q", "--hard", "HEAD~1"]);
2190
2387
  Object.assign(result, {