ws-spec-kit 0.1.0-beta.5 → 0.1.0-beta.6

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 (39) hide show
  1. package/dist/application/inspect.js +2 -0
  2. package/dist/application/inspect.js.map +1 -1
  3. package/dist/application/testing-config.d.ts +12 -0
  4. package/dist/application/testing-config.js +85 -0
  5. package/dist/application/testing-config.js.map +1 -0
  6. package/dist/cli/commands/core.js +16 -1
  7. package/dist/cli/commands/core.js.map +1 -1
  8. package/dist/cli/commands/public-contract.js +7 -2
  9. package/dist/cli/commands/public-contract.js.map +1 -1
  10. package/dist/engine/tdd/red-gate.js +45 -12
  11. package/dist/engine/tdd/red-gate.js.map +1 -1
  12. package/dist/engine/tdd/runner-digest.d.ts +1 -0
  13. package/dist/engine/tdd/runner-digest.js +64 -0
  14. package/dist/engine/tdd/runner-digest.js.map +1 -0
  15. package/dist/engine/tdd/types.d.ts +1 -1
  16. package/dist/engine/tdd/vitest-reporter.d.ts +1 -0
  17. package/dist/engine/tdd/vitest-reporter.js +50 -0
  18. package/dist/engine/tdd/vitest-reporter.js.map +1 -0
  19. package/dist/engine/verification.d.ts +1 -1
  20. package/dist/engine/verification.js +5 -3
  21. package/dist/engine/verification.js.map +1 -1
  22. package/dist/protocol/application.d.ts +1 -0
  23. package/dist/protocol/public-contract.d.ts +7 -4
  24. package/dist/protocol/public-contract.js +7 -4
  25. package/dist/protocol/public-contract.js.map +1 -1
  26. package/dist/schemas/definitions.js +1 -1
  27. package/dist/schemas/definitions.js.map +1 -1
  28. package/dist/storage/repository.d.ts +1 -1
  29. package/dist/storage/repository.js +13 -2
  30. package/dist/storage/repository.js.map +1 -1
  31. package/dist/storage/testing-config-migration.d.ts +8 -0
  32. package/dist/storage/testing-config-migration.js +19 -0
  33. package/dist/storage/testing-config-migration.js.map +1 -0
  34. package/dist/storage/testing-config.d.ts +1 -0
  35. package/dist/storage/testing-config.js +76 -0
  36. package/dist/storage/testing-config.js.map +1 -0
  37. package/package.json +3 -2
  38. package/schemas/builtin-application-project-config-snapshot-v1.schema.json +4 -1
  39. package/schemas/builtin-application-project-config-v1.schema.json +4 -1
@@ -1,3 +1,4 @@
1
+ import { readTestingConfigMigration, testingConfigEvidenceKey } from "../storage/testing-config-migration.js";
1
2
  import { validate } from "../schemas/index.js";
2
3
  import { recoverControlPlane } from "../storage/control-plane.js";
3
4
  import { loadApplicationState } from "./state.js";
@@ -21,6 +22,7 @@ export async function inspectApplication(input) {
21
22
  status: external.status,
22
23
  }));
23
24
  return {
25
+ testingConfigDigest: readTestingConfigMigration(state.projection.evidence[testingConfigEvidenceKey], state.item.execution.configDigest)?.configDigest ?? state.item.execution.configDigest,
24
26
  workItemId: state.item.workItemId,
25
27
  status: state.projection.workItem.status,
26
28
  workflowRef: state.snapshot.workflowRef,
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/application/inspect.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAmB;IAC1D,QAAQ,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;IACxD,MAAM,mBAAmB,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvE,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;SACpE,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACpF,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAClB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS;QACrC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;QAC/B,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS;QACrC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ;QACnC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;QAC/B,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE;QACtC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACzH,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACnF,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAC,CAAC;IACN,OAAO;QACL,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;QACjC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM;QACxC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;QACvC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,eAAe;QACvC,GAAG,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;KAC7D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/application/inspect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAE9G,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAmB;IAC1D,QAAQ,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;IACxD,MAAM,mBAAmB,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvE,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;SACpE,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACpF,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAClB,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS;QACrC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;QAC/B,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS;QACrC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,QAAQ;QACnC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM;QAC/B,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE;QACtC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACzH,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACnF,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAC,CAAC;IACN,OAAO;QACL,mBAAmB,EAAE,0BAA0B,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY;QAC1L,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,UAAU;QACjC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM;QACxC,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;QACvC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,eAAe;QACvC,GAAG,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC;KAC7D,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare function migrateTestingConfig(input: {
2
+ root: string;
3
+ workItemId: string;
4
+ config: unknown;
5
+ expectedDigest: string;
6
+ actor: string;
7
+ }): Promise<{
8
+ workItemId: string;
9
+ previousDigest: string;
10
+ configDigest: string;
11
+ action: string;
12
+ }>;
@@ -0,0 +1,85 @@
1
+ import { readTestingConfigMigration, testingConfigEvidenceKey } from "../storage/testing-config-migration.js";
2
+ import * as canonicalizeModule from "canonicalize";
3
+ import { parse } from "yaml";
4
+ import { readFile } from "node:fs/promises";
5
+ import path from "node:path";
6
+ import { computeWorkspaceSnapshot, sha256 } from "../domain/digests.js";
7
+ import { transitionStage } from "../domain/states.js";
8
+ import { fixedTestGateFromConfig } from "../engine/verification.js";
9
+ import { mutateControlPlane } from "../engine/scheduler.js";
10
+ import { validate } from "../schemas/index.js";
11
+ import { loadApplicationState } from "./state.js";
12
+ import { VerificationError } from "../engine/tdd/types.js";
13
+ const canonicalize = canonicalizeModule.default;
14
+ export async function migrateTestingConfig(input) {
15
+ if (!input.actor.trim())
16
+ throw new VerificationError("WSSPEC_TDD_GATE_CONFIGURATION_INVALID", "迁移必须记录 actor。");
17
+ validate("builtin.application-project-config.v1", input.config);
18
+ fixedTestGateFromConfig(input.config);
19
+ const configDigest = sha256(canonicalize(input.config));
20
+ return mutateControlPlane({
21
+ cwd: input.root, workItemId: input.workItemId, actor: input.actor,
22
+ eventType: "projection.invalidated", idempotencyKey: `testing-config:${input.expectedDigest}:${configDigest}`,
23
+ operationInput: { expectedDigest: input.expectedDigest, configDigest, actor: input.actor },
24
+ mutate: async (projection) => {
25
+ const state = await loadApplicationState(input.root, input.workItemId);
26
+ const baseDigest = state.item.execution.configDigest;
27
+ const previous = readTestingConfigMigration(projection.evidence[testingConfigEvidenceKey], baseDigest);
28
+ if ((previous?.configDigest ?? baseDigest) !== input.expectedDigest) {
29
+ throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "测试配置版本已变化,请 inspect 后重试。");
30
+ }
31
+ const original = parse(await readFile(path.join(state.itemRoot, "snapshot/config.yaml"), "utf8"));
32
+ const candidate = input.config;
33
+ // Migration changes only testing ownership and the fixed test gate, not policy or other gates.
34
+ const withoutTesting = (config) => {
35
+ const copy = structuredClone(config);
36
+ delete copy.testing;
37
+ delete copy.quality.gates.test;
38
+ return canonicalize(copy);
39
+ };
40
+ if (withoutTesting(original) !== withoutTesting(candidate)
41
+ || JSON.stringify(candidate.quality.gates.test.required) !== JSON.stringify(original.quality.gates.test.required)
42
+ || candidate.quality.gates.test.evidence !== original.quality.gates.test.evidence) {
43
+ throw new VerificationError("WSSPEC_TDD_GATE_CONFIGURATION_INVALID", "迁移只能修改固定测试命令、报告器和测试路径,不能修改门禁策略。");
44
+ }
45
+ const profile = state.snapshot.profiles[projection.profile.selected];
46
+ const index = profile.order.indexOf("write-tests");
47
+ if (projection.workItem.status !== "active" || index < 0
48
+ || Object.keys(projection.externalActions).length > 0
49
+ || Object.keys(projection.evidence).some(key => key.startsWith("tdd:"))
50
+ || Object.values(projection.approvals).some(approval => approval.status === "pending")
51
+ || profile.order.slice(index + 1).some(id => projection.stages[id]?.status !== "pending")
52
+ || !["pending", "ready", "claimed"].includes(projection.stages["write-tests"]?.status ?? "")) {
53
+ throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "仅允许测试提交前迁移;已有审批、测试证据或外部动作时必须重新建项。");
54
+ }
55
+ const context = projection.contexts["write-tests"];
56
+ if (context?.result !== undefined)
57
+ throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "测试步骤已有提交结果,不能迁移。");
58
+ const claims = { ...projection.claims };
59
+ const contexts = { ...projection.contexts };
60
+ const stages = { ...projection.stages };
61
+ const retries = { ...projection.retries };
62
+ for (const claim of Object.values(claims)) {
63
+ if (claim.stageId !== "write-tests" || claim.actor !== input.actor)
64
+ throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "其他步骤有活动 Claim,不能迁移。");
65
+ const prefix = `.wsspec/work-items/${input.workItemId}/drafts/`;
66
+ const baseline = claim.workspaceSnapshot.filter(entry => !entry.path.startsWith(prefix));
67
+ const current = (await computeWorkspaceSnapshot(state.worktree)).filter(entry => !entry.path.startsWith(prefix));
68
+ if (canonicalize(current) !== canonicalize(baseline))
69
+ throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "活动 Attempt 已修改工作区,不能迁移并重置基线。");
70
+ delete claims[claim.stageId];
71
+ delete contexts[claim.stageId];
72
+ delete retries[claim.stageId];
73
+ stages[claim.stageId] = transitionStage(stages[claim.stageId], { type: "transition", to: "ready" });
74
+ }
75
+ delete contexts["write-tests"];
76
+ delete retries["write-tests"];
77
+ const migration = { version: 1, baseDigest, configDigest, config: input.config };
78
+ return {
79
+ projection: { ...projection, claims, contexts, stages, retries, evidence: { ...projection.evidence, [testingConfigEvidenceKey]: migration } },
80
+ value: { workItemId: input.workItemId, previousDigest: input.expectedDigest, configDigest, action: "inspect_then_acquire" },
81
+ };
82
+ },
83
+ });
84
+ }
85
+ //# sourceMappingURL=testing-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testing-config.js","sourceRoot":"","sources":["../../src/application/testing-config.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ import { parse } from "yaml";
2
+ import { suggestTestingConfig } from "../../storage/testing-config.js";
3
+ import { migrateTestingConfig } from "../../application/testing-config.js";
1
4
  import { constants } from "node:fs";
2
5
  import { access, readFile, realpath } from "node:fs/promises";
3
6
  import os from "node:os";
@@ -190,7 +193,19 @@ export async function runCommand(cwd, argv) {
190
193
  throw new CliAdapterError("WSSPEC_COMMAND_UNKNOWN", `未知命令:${command ?? ""}`);
191
194
  }
192
195
  const routes = Object.freeze({
193
- init: async (cwd, args) => { parseArguments(args, 0, []); return initRepository(cwd); },
196
+ init: async (cwd, args) => { const parsed = parseArguments(args, 0, ["--test-root"]); return initRepository(cwd, parsed.values["--test-root"]); },
197
+ config: async (root, argv) => {
198
+ if (argv[0] === "suggest") {
199
+ const args = parseArguments(argv.slice(1), 0, ["--test-root"]);
200
+ return suggestTestingConfig(root, args.values["--test-root"]);
201
+ }
202
+ if (argv[0] !== "migrate")
203
+ throw new CliAdapterError("WSSPEC_ARGUMENT_INVALID", "config 支持 suggest 或 migrate。");
204
+ const args = parseArguments(argv.slice(1), 1, ["--file", "--expected-digest", "--actor"]);
205
+ return migrateTestingConfig({ root, workItemId: args.positional[0],
206
+ config: parse(await readFile(path.resolve(root, required(args.values["--file"], "--file")), "utf8")),
207
+ expectedDigest: required(args.values["--expected-digest"], "--expected-digest"), actor: required(args.values["--actor"], "--actor") });
208
+ },
194
209
  start,
195
210
  acquire,
196
211
  artifact,
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/cli/commands/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/cli/commands/core.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export const publicCommandDescriptors = Object.freeze([
2
- { command: "init", usage: "wspec init" },
2
+ { command: "init", usage: "wspec init [--test-root <path>]" },
3
+ { command: "config", usage: "wspec config suggest | migrate <workItemId> --file <configPath> --expected-digest <digest> --actor <actor>" },
3
4
  { command: "start", usage: "wspec start (--prompt <需求> | --file <路径> | --source-provider <github|gitlab|feishu> --source-id <稳定标识> [--source-url <规范 URL>]) [--workflow <引用>] [--profile <档位>]" },
4
5
  { command: "acquire", usage: "wspec acquire <workItemId> --actor <执行者>" },
5
6
  { command: "artifact", usage: "wspec artifact create --work-item <Work Item> --step <步骤> --attempt <尝试> --lease-token <令牌> --artifact-type <类型> [--output <输出 ID>] --content-file <.acceptance 内正文文件>" },
@@ -11,7 +12,9 @@ export const publicCommandDescriptors = Object.freeze([
11
12
  { command: "doctor", usage: "wspec doctor connectors" },
12
13
  ]);
13
14
  export const publicCliRouteDescriptors = Object.freeze([
14
- { route: "init", usage: "wspec init" },
15
+ { route: "config suggest", usage: "wspec config suggest [--test-root <path>]" },
16
+ { route: "config migrate", usage: "wspec config migrate <workItemId> --file <configPath> --expected-digest <digest> --actor <actor>" },
17
+ { route: "init", usage: "wspec init [--test-root <path>]" },
15
18
  { route: "start", usage: "wspec start (--prompt <需求> | --file <路径> | --source-provider <github|gitlab|feishu> --source-id <稳定标识> [--source-url <规范 URL>]) [--workflow <引用>] [--profile <档位>]" },
16
19
  { route: "acquire", usage: "wspec acquire <workItemId> --actor <执行者>" },
17
20
  { route: "artifact create", usage: "wspec artifact create --work-item <Work Item> --step <步骤> --attempt <尝试> --lease-token <令牌> --artifact-type <类型> [--output <输出 ID>] --content-file <.acceptance 内正文文件>" },
@@ -32,6 +35,8 @@ export function publicCliErrorRoute(argv) {
32
35
  const command = argv[0];
33
36
  if (command !== undefined && coreRoutes.has(command))
34
37
  return command;
38
+ if (command === "config")
39
+ return argv[1] === "suggest" ? "config suggest" : argv[1] === "migrate" ? "config migrate" : "config";
35
40
  if (command === "workflow") {
36
41
  const subcommand = argv[1];
37
42
  return subcommand !== undefined && workflowRoutes.has(subcommand) ? `workflow ${subcommand}` : "workflow";
@@ -1 +1 @@
1
- {"version":3,"file":"public-contract.js","sourceRoot":"","sources":["../../../src/cli/commands/public-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-contract.js","sourceRoot":"","sources":["../../../src/cli/commands/public-contract.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { runnerInstallationDigest } from "./runner-digest.js";
2
+ import { vitestReporterSource } from "./vitest-reporter.js";
1
3
  import { spawn } from "node:child_process";
2
4
  import { constants } from "node:fs";
3
5
  import { access, lstat, mkdtemp, readFile, readdir, realpath, rm, writeFile } from "node:fs/promises";
@@ -273,19 +275,43 @@ function gateConfiguration(gate) {
273
275
  return { commandId: gate.commandId, argv: [...gate.argv], cwd: gate.cwd, timeoutMs: gate.timeoutMs, inheritEnv: [...gate.inheritEnv], env: gate.env, testPathRules: [...gate.testPathRules], testAssetPaths: [...gate.testAssetPaths], testAssetRoots: [...gate.testAssetRoots], productPaths: [...gate.productPaths], reporter: gate.reporter };
274
276
  }
275
277
  async function resolveGate(gate, worktree) {
276
- if (gate.argv.length === 0 || gate.argv.some((part) => typeof part !== "string") || gate.timeoutMs < 1 || gate.reporter.type !== "node-test" || gate.reporter.version !== 1) {
278
+ if (gate.argv.length === 0 || gate.argv.some((part) => typeof part !== "string") || gate.timeoutMs < 1 || !["node-test", "vitest"].includes(gate.reporter.type) || gate.reporter.version !== 1) {
277
279
  throw new VerificationError("WSSPEC_TDD_GATE_CONFIGURATION_INVALID", `Test Gate ${gate.commandId} 配置无效。`);
278
280
  }
279
281
  assertRules(gate.testPathRules);
280
282
  const environment = effectiveEnvironment(gate);
281
283
  const executable = await resolveExecutable(gate.argv[0], environment, worktree);
282
284
  const executableDigest = sha256(await readFile(executable));
283
- if (executableDigest !== sha256(await readFile(process.execPath)) || !gate.argv.slice(1).includes("--test") || gate.argv.some((part) => part.startsWith("--test-reporter"))) {
284
- throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "首版 trusted TDD 仅支持由引擎注入 reporter 的当前 node:test runner ");
285
+ if (executableDigest !== sha256(await readFile(process.execPath))) {
286
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "trusted TDD 必须使用当前 Node。");
287
+ }
288
+ let runner;
289
+ if (gate.reporter.type === "vitest") {
290
+ if (gate.argv[2] !== "run" || gate.argv.some(part => /^--(?:reporter|outputFile|watch|mergeReports|passWithNoTests|update)/u.test(part))) {
291
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "Vitest 必须以 node <vitest.mjs> run 执行,报告由引擎注入。");
292
+ }
293
+ try {
294
+ const runnerPath = await realpath(path.resolve(worktree, gate.argv[1]));
295
+ const metadata = JSON.parse(await readFile(path.join(path.dirname(runnerPath), "package.json"), "utf8"));
296
+ const version = /^(3|4)\.(\d+)\.(\d+)(?:\+[^ ]+)?$/u.exec(metadata.version ?? "");
297
+ const supported = version !== null && (version[1] === "4" || Number(version[2]) > 2 || (Number(version[2]) === 2 && Number(version[3]) >= 4));
298
+ if (path.basename(runnerPath) !== "vitest.mjs" || metadata.name !== "vitest" || !supported) {
299
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "仅支持项目安装的 Vitest 3.2.4+(3.x)或 4.x 入口。");
300
+ }
301
+ runner = { path: runnerPath, digest: await runnerInstallationDigest(runnerPath) };
302
+ }
303
+ catch (error) {
304
+ if (error instanceof VerificationError)
305
+ throw error;
306
+ throw new VerificationError("WSSPEC_TDD_GATE_EXECUTION_FAILED", "无法读取项目 Vitest 安装,请安装依赖并核对 Test Gate 的 runner 路径。");
307
+ }
308
+ }
309
+ else if (!gate.argv.slice(1).includes("--test") || gate.argv.some(part => part.startsWith("--test-reporter"))) {
310
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "node:test 必须由引擎注入 reporter。");
285
311
  }
286
312
  const environmentDigest = sha256(`${JSON.stringify(Object.entries(environment).sort(([left], [right]) => left.localeCompare(right)))}\n`);
287
- const commandDigest = sha256(`${JSON.stringify({ version: 4, gate: gateConfiguration(gate), executablePathDigest: sha256(executable), executableDigest, environmentDigest, reporterDigest: sha256(nodeTestReporterSource) })}\n`);
288
- return { executable, executableDigest, environment, commandDigest };
313
+ const commandDigest = sha256(`${JSON.stringify({ version: 4, gate: gateConfiguration(gate), executablePathDigest: sha256(executable), executableDigest, environmentDigest, reporterDigest: sha256(gate.reporter.type === "vitest" ? vitestReporterSource : nodeTestReporterSource), ...(runner === undefined ? {} : { runner }) })}\n`);
314
+ return { executable, executableDigest, environment, commandDigest, ...(runner === undefined ? {} : { runner }) };
289
315
  }
290
316
  function boundedAppend(current, chunk) {
291
317
  const combined = Buffer.concat([Buffer.from(current), Buffer.from(chunk)]);
@@ -298,15 +324,17 @@ async function runFixedGate(gate, resolved, worktree) {
298
324
  const reportRoot = await mkdtemp(path.join(os.tmpdir(), "wsspec-tdd-report-"));
299
325
  const reporterPath = path.join(reportRoot, "reporter.mjs");
300
326
  const resultPath = path.join(reportRoot, "result.json");
301
- await writeFile(reporterPath, nodeTestReporterSource, { encoding: "utf8", mode: 0o600, flag: "wx" });
327
+ await writeFile(reporterPath, gate.reporter.type === "vitest" ? vitestReporterSource : nodeTestReporterSource, { encoding: "utf8", mode: 0o600, flag: "wx" });
302
328
  await writeFile(resultPath, "", { encoding: "utf8", mode: 0o600, flag: "wx" });
303
329
  const initialResultStat = await lstat(resultPath);
304
- const argv = [`--test-reporter=${pathToFileURL(reporterPath).href}`, `--test-reporter-destination=${resultPath}`, ...gate.argv.slice(1)];
330
+ const argv = gate.reporter.type === "vitest"
331
+ ? [resolved.runner.path, ...gate.argv.slice(2), "--reporter", reporterPath]
332
+ : [`--test-reporter=${pathToFileURL(reporterPath).href}`, `--test-reporter-destination=${resultPath}`, ...gate.argv.slice(1)];
305
333
  let output = "";
306
334
  try {
307
335
  const child = spawn(resolved.executable, argv, {
308
336
  cwd: worktree,
309
- env: resolved.environment,
337
+ env: { ...resolved.environment, ...(gate.reporter.type === "vitest" ? { WSPECKIT_VITEST_REPORT: resultPath } : {}) },
310
338
  shell: false,
311
339
  detached: process.platform !== "win32",
312
340
  stdio: ["ignore", "pipe", "pipe"],
@@ -353,6 +381,8 @@ async function runFixedGate(gate, resolved, worktree) {
353
381
  }
354
382
  if (sha256(await readFile(resolved.executable)) !== resolved.executableDigest)
355
383
  throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "Test Gate 可执行文件在运行期间发生变化。 ");
384
+ if (resolved.runner !== undefined && await runnerInstallationDigest(resolved.runner.path) !== resolved.runner.digest)
385
+ throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "Vitest runner 在执行中变化。");
356
386
  return { ...result, output, ...(report === undefined ? {} : { report }) };
357
387
  }
358
388
  finally {
@@ -384,11 +414,14 @@ function sanitizedOutput(output, secrets) {
384
414
  sanitized = sanitized.replaceAll(secret, "[REDACTED]");
385
415
  return sanitized.replace(/((?:authorization|token|password|secret|api[_-]?key)\s*[:=]\s*)([^\s]+)/giu, "$1[REDACTED]").replace(/Bearer\s+[^\s]+/giu, "Bearer [REDACTED]");
386
416
  }
387
- function parseNodeTestReport(value) {
417
+ function parseNodeTestReport(value, adapter) {
388
418
  if (value === undefined || Buffer.byteLength(value) > reportLimit)
389
419
  throw new VerificationError("WSSPEC_TDD_REPORT_INVALID", "node:test reporter 未产生受限结构化结果。 ");
390
420
  try {
391
- return validate("builtin.tdd-node-test-report.v1", JSON.parse(value));
421
+ const report = JSON.parse(value);
422
+ if (report.adapter !== adapter)
423
+ throw new Error("reporter mismatch");
424
+ return validate("builtin.tdd-node-test-report.v1", { ...report, adapter: "node-test" });
392
425
  }
393
426
  catch {
394
427
  throw new VerificationError("WSSPEC_TDD_REPORT_INVALID", "node:test reporter 结果不符合严格 Schema。 ");
@@ -460,7 +493,7 @@ export async function executeTrustedTestGate(input) {
460
493
  throw new VerificationError("WSSPEC_TDD_RED_TIMEOUT", "Test Gate 超时,不能形成可信 Evidence。 ");
461
494
  if (result.signal !== null || result.exitCode === null)
462
495
  throw new VerificationError("WSSPEC_TDD_RED_INFRASTRUCTURE_FAILURE", "Test Gate 被 signal 终止,不能形成可信 Evidence。 ");
463
- const report = parseNodeTestReport(result.report);
496
+ const report = parseNodeTestReport(result.report, input.gate.reporter.type);
464
497
  const [outputWorkspaceDigest, outputManifest, assetManifest] = await Promise.all([
465
498
  computeWorkspaceTreeDigest(input.worktree),
466
499
  testFileManifest(input.worktree, input.testPaths, input.gate.testPathRules),
@@ -492,7 +525,7 @@ export async function executeTrustedTestGate(input) {
492
525
  throw new VerificationError("WSSPEC_TDD_GREEN_NOT_OBSERVED", "同一 Test Gate 未形成结构化零失败 Green 结果。 ");
493
526
  }
494
527
  const failures = input.phase === "red" ? assertionFailures.map(({ name }) => sanitizedOutput(name, secrets)).slice(0, 100) : [];
495
- const summary = sanitizedOutput(input.phase === "red" ? failures.join("\n") : `node:test passed ${report.summary.passed}/${report.summary.tests}`, secrets).slice(0, summaryLimit);
528
+ const summary = sanitizedOutput(input.phase === "red" ? failures.join("\n") : `${input.gate.reporter.type} passed ${report.summary.passed}/${report.summary.tests}`, secrets).slice(0, summaryLimit);
496
529
  const unsigned = {
497
530
  level: "trusted",
498
531
  phase: input.phase,
@@ -1 +1 @@
1
- {"version":3,"file":"red-gate.js","sourceRoot":"","sources":["../../../src/engine/tdd/red-gate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"red-gate.js","sourceRoot":"","sources":["../../../src/engine/tdd/red-gate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function runnerInstallationDigest(entry: string): Promise<string>;
@@ -0,0 +1,64 @@
1
+ import { createRequire } from "node:module";
2
+ import { lstat, readFile, readdir, realpath } from "node:fs/promises";
3
+ import path from "node:path";
4
+ import { sha256 } from "../../domain/digests.js";
5
+ import { VerificationError } from "./types.js";
6
+ // Node resolves package directories before applying exports conditions. Read manifests
7
+ // directly so packages that hide package.json in exports are still included.
8
+ async function resolvePackage(from, name) {
9
+ if (!/^(?:@[a-z0-9._-]+\/)?[a-z0-9._-]+$/iu.test(name) || name === "." || name === "..") {
10
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "测试工具包含无效依赖名称。");
11
+ }
12
+ const search = createRequire(path.join(from, "package.json")).resolve.paths(name) ?? [];
13
+ for (const directory of search) {
14
+ try {
15
+ return path.dirname(await realpath(path.join(directory, name, "package.json")));
16
+ }
17
+ catch (error) {
18
+ if (error.code !== "ENOENT")
19
+ throw error;
20
+ }
21
+ }
22
+ return undefined;
23
+ }
24
+ export async function runnerInstallationDigest(entry) {
25
+ const packages = new Map();
26
+ async function visit(root) {
27
+ if (packages.has(root))
28
+ return;
29
+ if (packages.size >= 512)
30
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "测试工具依赖数量超出限制。");
31
+ const record = { files: [], dependencies: [] };
32
+ packages.set(root, record);
33
+ async function walk(directory) {
34
+ for (const name of (await readdir(directory)).sort()) {
35
+ if (name === "node_modules")
36
+ continue;
37
+ const file = path.join(directory, name);
38
+ const info = await lstat(file);
39
+ if (info.isDirectory())
40
+ await walk(file);
41
+ else if (info.isFile())
42
+ record.files.push([path.relative(root, file), sha256(await readFile(file))]);
43
+ else
44
+ throw new VerificationError("WSSPEC_TDD_REPORTER_UNSUPPORTED", "测试工具依赖包含非普通运行文件。");
45
+ }
46
+ }
47
+ await walk(root);
48
+ const metadata = JSON.parse(await readFile(path.join(root, "package.json"), "utf8"));
49
+ const names = [...new Set([...Object.keys(metadata.dependencies ?? {}), ...Object.keys(metadata.optionalDependencies ?? {}), ...Object.keys(metadata.peerDependencies ?? {})])].sort();
50
+ for (const name of names) {
51
+ const dependency = await resolvePackage(root, name);
52
+ // Missing optional/peer dependencies are bound too: installing one changes the digest.
53
+ record.dependencies.push([name, dependency ?? null]);
54
+ if (dependency !== undefined)
55
+ await visit(dependency);
56
+ else if (metadata.dependencies?.[name] !== undefined && metadata.optionalDependencies?.[name] === undefined) {
57
+ throw new VerificationError("WSSPEC_TDD_GATE_EXECUTION_FAILED", "测试工具的必需依赖未安装。");
58
+ }
59
+ }
60
+ }
61
+ await visit(path.dirname(await realpath(entry)));
62
+ return sha256(JSON.stringify([...packages].sort(([left], [right]) => left.localeCompare(right))));
63
+ }
64
+ //# sourceMappingURL=runner-digest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner-digest.js","sourceRoot":"","sources":["../../../src/engine/tdd/runner-digest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAQ/C,uFAAuF;AACvF,6EAA6E;AAC7E,KAAK,UAAU,cAAc,CAAC,IAAY,EAAE,IAAY;IACtD,IAAI,CAAC,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QACxF,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,EAAE,eAAe,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACxF,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;QAC/B,IAAI,CAAC;YAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;QAAC,CAAC;QACxF,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAAC,CAAC;IACxF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,KAAa;IAC1D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4F,CAAC;IACrH,KAAK,UAAU,KAAK,CAAC,IAAY;QAC/B,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO;QAC/B,IAAI,QAAQ,CAAC,IAAI,IAAI,GAAG;YAAE,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,EAAE,eAAe,CAAC,CAAC;QAC1G,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,EAA6B,EAAE,YAAY,EAAE,EAAoC,EAAE,CAAC;QAC5G,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC3B,KAAK,UAAU,IAAI,CAAC,SAAiB;YACnC,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACrD,IAAI,IAAI,KAAK,cAAc;oBAAE,SAAS;gBACtC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACxC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/B,IAAI,IAAI,CAAC,WAAW,EAAE;oBAAE,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;qBACpC,IAAI,IAAI,CAAC,MAAM,EAAE;oBAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;;oBAChG,MAAM,IAAI,iBAAiB,CAAC,iCAAiC,EAAE,kBAAkB,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAoB,CAAC;QACxG,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvL,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACpD,uFAAuF;YACvF,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC;YACrD,IAAI,UAAU,KAAK,SAAS;gBAAE,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC;iBACjD,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,QAAQ,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC5G,MAAM,IAAI,iBAAiB,CAAC,kCAAkC,EAAE,eAAe,CAAC,CAAC;YACnF,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjD,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACpG,CAAC"}