ws-spec-kit 0.1.0-beta.12 → 0.1.0-beta.13

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 (48) hide show
  1. package/dist/adapters/skills/install.js +10 -4
  2. package/dist/adapters/skills/install.js.map +1 -1
  3. package/dist/application/acquire.js +1 -1
  4. package/dist/application/acquire.js.map +1 -1
  5. package/dist/application/application.js +27 -5
  6. package/dist/application/application.js.map +1 -1
  7. package/dist/application/artifact-writer.js +2 -2
  8. package/dist/application/artifact-writer.js.map +1 -1
  9. package/dist/application/artifact.js +10 -3
  10. package/dist/application/artifact.js.map +1 -1
  11. package/dist/application/documentation-gate.js +2 -1
  12. package/dist/application/documentation-gate.js.map +1 -1
  13. package/dist/application/start.js +6 -2
  14. package/dist/application/start.js.map +1 -1
  15. package/dist/application/submit.js +10 -8
  16. package/dist/application/submit.js.map +1 -1
  17. package/dist/application/task-navigation.d.ts +9 -0
  18. package/dist/application/task-navigation.js +155 -0
  19. package/dist/application/task-navigation.js.map +1 -0
  20. package/dist/application/testing-config.js +4 -3
  21. package/dist/application/testing-config.js.map +1 -1
  22. package/dist/domain/artifact-names.d.ts +6 -0
  23. package/dist/domain/artifact-names.js +25 -0
  24. package/dist/domain/artifact-names.js.map +1 -0
  25. package/dist/domain/digests.js +1 -1
  26. package/dist/domain/digests.js.map +1 -1
  27. package/dist/domain/work-item-paths.d.ts +10 -0
  28. package/dist/domain/work-item-paths.js +18 -0
  29. package/dist/domain/work-item-paths.js.map +1 -0
  30. package/dist/engine/approvals.js +6 -3
  31. package/dist/engine/approvals.js.map +1 -1
  32. package/dist/engine/archive.js +2 -2
  33. package/dist/engine/archive.js.map +1 -1
  34. package/dist/registry/connectors/requirement-source.d.ts +3 -2
  35. package/dist/registry/connectors/requirement-source.js +8 -7
  36. package/dist/registry/connectors/requirement-source.js.map +1 -1
  37. package/dist/schemas/definitions.js +1 -0
  38. package/dist/schemas/definitions.js.map +1 -1
  39. package/dist/storage/control-plane.d.ts +1 -0
  40. package/dist/storage/control-plane.js +20 -7
  41. package/dist/storage/control-plane.js.map +1 -1
  42. package/dist/storage/events.js +4 -4
  43. package/dist/storage/events.js.map +1 -1
  44. package/dist/storage/work-items.d.ts +2 -0
  45. package/dist/storage/work-items.js +15 -9
  46. package/dist/storage/work-items.js.map +1 -1
  47. package/package.json +1 -1
  48. package/schemas/builtin-work-item-v1.schema.json +4 -0
@@ -0,0 +1,155 @@
1
+ import { spawn } from "node:child_process";
2
+ import { lstat, realpath } from "node:fs/promises";
3
+ import path from "node:path";
4
+ import { workItemPrefix } from "../domain/work-item-paths.js";
5
+ import { redactText } from "../adapters/process/redaction.js";
6
+ import { verifySourceArtifact } from "../registry/connectors/requirement-source.js";
7
+ import { readEvents } from "../storage/events.js";
8
+ import { loadApplicationState } from "./state.js";
9
+ export const taskNavigationMarker = "<!-- wsspec:derived-task-navigation:v1 -->";
10
+ export const taskNavigationFiles = ["README.md", "01-原始需求.md"];
11
+ function label(value) {
12
+ return redactText(value).replace(/[\r\n]/gu, " ").replace(/[\\`*_[\]<>|]/gu, "\\$&");
13
+ }
14
+ function nextGuidance(state) {
15
+ const status = state.projection.workItem.status;
16
+ if (status === "closed" || status === "cancelled")
17
+ return "任务已结束,可查阅下方交付资料。";
18
+ if (status === "paused")
19
+ return "任务已暂停;先恢复任务,再继续执行。";
20
+ if (status === "reconciliation_required")
21
+ return "外部动作需要对账;请先检查动作状态。";
22
+ if (Object.values(state.projection.stages).some((stage) => stage.status === "awaiting_approval"))
23
+ return "请审核待确认的产物,再继续执行。";
24
+ if (status === "blocked" || Object.values(state.projection.stages).some((stage) => stage.status === "failed"))
25
+ return "请先查看任务诊断并处理阻塞。";
26
+ if (status === "pending_publish")
27
+ return "交付已验证,等待发布流程。";
28
+ if (status === "verified")
29
+ return "交付已验证,可按工作流完成收尾。";
30
+ return "运行 wspec inspect 查看当前执行指引;以引擎返回的状态为准。";
31
+ }
32
+ /** A disposable view of authoritative state; never an execution input. */
33
+ export function renderTaskNavigation(state, events = []) {
34
+ const lines = [taskNavigationMarker, `# ${label(state.item.title)}`, "", `- 任务 ID:${label(state.projection.workItemId)}`, `- 状态:${label(state.projection.workItem.status)}`, `- 工作流:${label(state.snapshot.workflowRef)}`, `- 下一步:${nextGuidance(state)}`, "", "## 阶段进度", ""];
35
+ const stageNames = { intake: "原始需求", explore: "现状分析", clarify: "需求规格", design: "技术方案", plan: "实施计划", "write-tests": "编写测试", "verify-red": "验证失败测试", implement: "实现", "verify-green": "验证实现", "review-fix": "评审与修复", "edit-document": "编写文档", "verify-document": "文档校验", close: "归档" };
36
+ const statusNames = { pending: "待开始", ready: "可执行", claimed: "已领取", running: "执行中", succeeded: "已完成", skipped: "已跳过", failed: "失败", awaiting_approval: "待确认" };
37
+ for (const [id, stage] of Object.entries(state.projection.stages))
38
+ lines.push(`- ${label(stageNames[id] ?? id)}:${label(statusNames[stage.status] ?? stage.status)}`);
39
+ lines.push("", "## 交付资料", "", "- [原始需求](01-%E5%8E%9F%E5%A7%8B%E9%9C%80%E6%B1%82.md)");
40
+ const seen = new Set();
41
+ for (const event of events) {
42
+ if (event.eventType !== "artifact.authored" || event.workItemId !== state.projection.workItemId)
43
+ continue;
44
+ const result = event.result;
45
+ const artifact = result?.value;
46
+ if (artifact === undefined)
47
+ continue;
48
+ const legacyPath = typeof artifact.artifactType === "string" && /^[a-z][a-z0-9-]*$/u.test(artifact.artifactType)
49
+ && typeof artifact.contentHash === "string" && /^sha256:[a-f0-9]{64}$/u.test(artifact.contentHash)
50
+ ? `${workItemPrefix(state.item)}/artifacts/${artifact.artifactType}/${artifact.contentHash.slice(7)}.md`
51
+ : undefined;
52
+ const artifactPath = typeof artifact.path === "string" ? artifact.path : legacyPath;
53
+ if (artifactPath === undefined)
54
+ continue;
55
+ // Historical and named task directories both use the canonical logical reference.
56
+ const prefix = `${workItemPrefix(state.item)}/`;
57
+ const relative = artifactPath.startsWith(prefix) ? artifactPath.slice(prefix.length) : undefined;
58
+ if (!relative || !relative.startsWith("artifacts/") || relative.split("/").some((part) => part === ".." || part === "." || part === "") || relative.includes("\\") || seen.has(relative))
59
+ continue;
60
+ seen.add(relative);
61
+ const names = { specification: "需求规格", design: "技术方案", tasks: "实施计划", "review-result": "评审结果", "exploration-report": "现状分析" };
62
+ const title = artifact.path === undefined && typeof artifact.artifactType === "string"
63
+ ? names[artifact.artifactType] ?? artifact.artifactType
64
+ : path.basename(relative, ".md").replace(/-[a-f0-9]{12}$/u, "");
65
+ lines.push(`- [${label(title)}](${relative.split("/").map(encodeURIComponent).join("/")})`);
66
+ }
67
+ lines.push("", "> 此页面由任务状态和事件派生,可重新生成;不作为执行合同或验收证据。", "");
68
+ return lines.join("\n");
69
+ }
70
+ // Match the artifact writer's pinned child cwd boundary. All writes use relative
71
+ // paths in that directory, so an ancestor rename cannot redirect the write.
72
+ const writer = String.raw `
73
+ const fs = require('node:fs/promises');
74
+ const { constants } = require('node:fs');
75
+ let input = '';
76
+ process.stdin.setEncoding('utf8');
77
+ process.stdin.on('data', chunk => input += chunk);
78
+ process.stdin.on('end', async () => {
79
+ let temporary;
80
+ try {
81
+ const request = JSON.parse(input);
82
+ const current = await fs.lstat('.');
83
+ const absolute = await fs.lstat(request.root);
84
+ if (!current.isDirectory() || current.uid !== process.getuid() || (current.mode & 0o022) !== 0 || absolute.isSymbolicLink() || current.dev !== request.dev || current.ino !== request.ino || absolute.dev !== current.dev || absolute.ino !== current.ino || await fs.realpath(request.root) !== request.root) throw Error('unsafe directory');
85
+ for (const [name, content] of Object.entries(request.files)) {
86
+ if (!['README.md', '01-原始需求.md'].includes(name)) throw Error('invalid filename');
87
+ let existing;
88
+ try { existing = await fs.lstat(name); } catch (error) { if (error.code !== 'ENOENT') throw error; }
89
+ if (existing) {
90
+ if (!existing.isFile() || existing.isSymbolicLink() || existing.nlink !== 1 || existing.uid !== process.getuid() || (existing.mode & 0o022) !== 0) throw Error('unsafe existing file');
91
+ const handle = await fs.open(name, constants.O_RDONLY | constants.O_NOFOLLOW);
92
+ try {
93
+ const stat = await handle.stat();
94
+ if (stat.ino !== existing.ino || stat.dev !== existing.dev || stat.size > 2 * 1024 * 1024 || !(await handle.readFile('utf8')).startsWith(request.marker + '\n')) throw Error('unmanaged file');
95
+ } finally { await handle.close(); }
96
+ }
97
+ temporary = '.' + name + '.' + require('node:crypto').randomUUID() + '.tmp';
98
+ const handle = await fs.open(temporary, 'wx', 0o600);
99
+ try { await handle.writeFile(content, 'utf8'); await handle.sync(); } finally { await handle.close(); }
100
+ if (existing) {
101
+ const latest = await fs.lstat(name);
102
+ if (latest.ino !== existing.ino || latest.dev !== existing.dev || latest.mtimeMs !== existing.mtimeMs || latest.ctimeMs !== existing.ctimeMs) throw Error('file changed');
103
+ await fs.rename(temporary, name);
104
+ } else {
105
+ await fs.link(temporary, name);
106
+ await fs.unlink(temporary);
107
+ }
108
+ temporary = undefined;
109
+ }
110
+ } catch {
111
+ if (temporary) await fs.unlink(temporary).catch(() => {});
112
+ process.exitCode = 1;
113
+ }
114
+ });
115
+ `;
116
+ export async function refreshTaskNavigation(state) {
117
+ const root = path.resolve(state.itemRoot);
118
+ const identity = await lstat(root);
119
+ if (!identity.isDirectory() || identity.isSymbolicLink() || await realpath(root) !== root)
120
+ throw new Error("WSSPEC_ARTIFACT_CONFLICT: 任务导航目录不安全。");
121
+ const events = await readEvents(state.projection.controlPlane);
122
+ const reference = {
123
+ artifactType: "requirement-source", schemaVersion: 1, artifactId: state.item.source.artifactId,
124
+ path: `${workItemPrefix(state.item)}/${state.item.source.snapshot}`, revision: 1, contentHash: state.item.source.artifactDigest, mediaType: "application/json",
125
+ };
126
+ const prefix = workItemPrefix(state.item);
127
+ const source = await verifySourceArtifact(root, state.projection.workItemId, reference, prefix, state.item.execution.directoryName);
128
+ const files = {
129
+ "README.md": renderTaskNavigation(state, events),
130
+ "01-原始需求.md": `${taskNavigationMarker}\n# ${label(source.title)}\n\n${redactText(source.body)}\n\n> 原始需求的阅读副本;权威内容保存在 Source Artifact 中。\n`,
131
+ };
132
+ const child = spawn(process.execPath, ["-e", writer], { cwd: root, env: {}, stdio: ["pipe", "ignore", "ignore"] });
133
+ await new Promise((resolve, reject) => {
134
+ child.once("error", reject);
135
+ child.once("close", (code) => code === 0 ? resolve() : reject(new Error("WSSPEC_ARTIFACT_CONFLICT: 导航文件已被用户占用或无法安全更新。")));
136
+ child.stdin.on("error", () => undefined);
137
+ child.stdin.end(JSON.stringify({ root, dev: identity.dev, ino: identity.ino, marker: taskNavigationMarker, files }));
138
+ });
139
+ }
140
+ /** Navigation failure must not undo or misreport a committed workflow action. */
141
+ export async function refreshTaskNavigationFor(root, workItemId) {
142
+ try {
143
+ const state = await loadApplicationState(root, workItemId);
144
+ await refreshTaskNavigation(state);
145
+ if (state.item.execution.materialized !== false) {
146
+ const mirror = path.join(state.worktree, workItemPrefix(state.item));
147
+ if (mirror !== state.itemRoot)
148
+ await refreshTaskNavigation({ ...state, itemRoot: mirror });
149
+ }
150
+ }
151
+ catch {
152
+ process.stderr.write("任务状态已保存;导航文档未刷新,可通过 inspect 重试。\n");
153
+ }
154
+ }
155
+ //# sourceMappingURL=task-navigation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-navigation.js","sourceRoot":"","sources":["../../src/application/task-navigation.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { workItemPrefix } from "../domain/work-item-paths.js";
1
2
  import { readTestingConfigMigration, testingConfigEvidenceKey } from "../storage/testing-config-migration.js";
2
3
  import * as canonicalizeModule from "canonicalize";
3
4
  import { parse } from "yaml";
@@ -62,9 +63,9 @@ export async function migrateTestingConfig(input) {
62
63
  for (const claim of Object.values(claims)) {
63
64
  if (claim.stageId !== "write-tests" || claim.actor !== input.actor)
64
65
  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));
66
+ const prefixes = [`${workItemPrefix(state.item)}/drafts/`, `.wsspec/work-items/${input.workItemId}/drafts/`];
67
+ const baseline = claim.workspaceSnapshot.filter(entry => !prefixes.some(prefix => entry.path.startsWith(prefix)));
68
+ const current = (await computeWorkspaceSnapshot(state.worktree)).filter(entry => !prefixes.some(prefix => entry.path.startsWith(prefix)));
68
69
  if (canonicalize(current) !== canonicalize(baseline))
69
70
  throw new VerificationError("WSSPEC_TDD_EVIDENCE_INVALIDATED", "活动 Attempt 已修改工作区,不能迁移并重置基线。");
70
71
  delete claims[claim.stageId];
@@ -1 +1 @@
1
- {"version":3,"file":"testing-config.js","sourceRoot":"","sources":["../../src/application/testing-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testing-config.js","sourceRoot":"","sources":["../../src/application/testing-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare function artifactFilename(input: {
2
+ artifactType: string;
3
+ stageId: string;
4
+ contentHash: string;
5
+ }): string;
6
+ export declare function isArtifactFilename(value: string): boolean;
@@ -0,0 +1,25 @@
1
+ /** Presentation names never replace the full content hash stored in Artifact metadata. */
2
+ const labels = {
3
+ "exploration-report": "02-现状分析",
4
+ specification: "03-需求规格",
5
+ design: "04-技术方案",
6
+ plan: "05-实施计划",
7
+ tasks: "05-实施计划",
8
+ "implementation-result": "实现结果",
9
+ "verification-result": "验证结果",
10
+ "knowledge-entry": "知识记录",
11
+ };
12
+ export function artifactFilename(input) {
13
+ if (!/^sha256:[a-f0-9]{64}$/u.test(input.contentHash))
14
+ throw new Error("Invalid Artifact content hash");
15
+ const iteration = /^[a-z][a-z0-9-]*:([1-9][0-9]*):[a-z][a-z0-9-]*$/u.exec(input.stageId)?.[1] ?? "1";
16
+ const fallback = input.artifactType.normalize("NFC").replace(/[^\p{L}\p{N}-]+/gu, "-").replace(/^-+|-+$/gu, "").slice(0, 48) || "文档";
17
+ const label = input.artifactType === "review-result" ? `第${iteration.padStart(2, "0")}轮-评审结果` : labels[input.artifactType] ?? fallback;
18
+ // The hash includes producer attempt and output identity, preserving every historical result.
19
+ return `${label}-${input.contentHash.slice(7, 19)}.md`;
20
+ }
21
+ export function isArtifactFilename(value) {
22
+ return /^[a-f0-9]{64}\.md$/u.test(value)
23
+ || (Buffer.byteLength(value, "utf8") <= 220 && /^[\p{L}\p{N}][\p{L}\p{N}-]*-[a-f0-9]{12}\.md$/u.test(value) && value.normalize("NFC") === value);
24
+ }
25
+ //# sourceMappingURL=artifact-names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact-names.js","sourceRoot":"","sources":["../../src/domain/artifact-names.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,MAAM,MAAM,GAAqC;IAC/C,oBAAoB,EAAE,SAAS;IAC/B,aAAa,EAAE,SAAS;IACxB,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,SAAS;IAChB,uBAAuB,EAAE,MAAM;IAC/B,qBAAqB,EAAE,MAAM;IAC7B,iBAAiB,EAAE,MAAM;CAC1B,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,KAAqE;IACpG,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACxG,MAAM,SAAS,GAAG,kDAAkD,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;IACrG,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;IACrI,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,KAAK,eAAe,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC;IACvI,8FAA8F;IAC9F,OAAO,GAAG,KAAK,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAa;IAC9C,OAAO,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC;WACnC,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG,IAAI,gDAAgD,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,CAAC;AACrJ,CAAC"}
@@ -113,7 +113,7 @@ async function authorityArtifactPaths(root) {
113
113
  export async function computeWorkspaceSnapshot(cwd) {
114
114
  const root = await repositoryRoot(cwd);
115
115
  const paths = (await listedPaths(root)).filter((candidate) => !artifactPath(candidate)
116
- && !volatileRuntimePath(candidate) && !candidate.startsWith(".wsspec/archive/"));
116
+ && !volatileRuntimePath(candidate) && !/^\.wsspec\/work-items\/[^/]+\/(?:README|01-原始需求)\.md$/u.test(candidate) && !candidate.startsWith(".wsspec/archive/"));
117
117
  return snapshotPaths(root, paths);
118
118
  }
119
119
  export async function computeWorkspaceTreeDigest(cwd) {
@@ -1 +1 @@
1
- {"version":3,"file":"digests.js","sourceRoot":"","sources":["../../src/domain/digests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"digests.js","sourceRoot":"","sources":["../../src/domain/digests.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ interface WorkItemLocation {
2
+ workItemId: string;
3
+ execution?: {
4
+ directoryName?: string;
5
+ };
6
+ }
7
+ export declare function readableWorkItemDirectory(title: string, workItemId: string): string;
8
+ export declare function workItemDirectory(item: WorkItemLocation): string;
9
+ export declare function workItemPrefix(item: WorkItemLocation): string;
10
+ export {};
@@ -0,0 +1,18 @@
1
+ import { createHash } from "node:crypto";
2
+ export function readableWorkItemDirectory(title, workItemId) {
3
+ const label = [...title.normalize("NFKC").replace(/[^\p{L}\p{N}]+/gu, "-").replace(/^-+|-+$/gu, "")]
4
+ .slice(0, 36).join("").replace(/-+$/u, "") || "任务";
5
+ return `${label}-${createHash("sha256").update(workItemId).digest("hex").slice(0, 12)}`;
6
+ }
7
+ export function workItemDirectory(item) {
8
+ const name = item.execution?.directoryName ?? item.workItemId;
9
+ if (item.execution?.directoryName === undefined && /^WSS-[A-Za-z0-9-]+$/u.test(name))
10
+ return name;
11
+ if (!/^[\p{L}\p{N}][\p{L}\p{N}-]{0,100}$/u.test(name))
12
+ throw new Error("Invalid Work Item directory name");
13
+ return name;
14
+ }
15
+ export function workItemPrefix(item) {
16
+ return `.wsspec/work-items/${workItemDirectory(item)}`;
17
+ }
18
+ //# sourceMappingURL=work-item-paths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"work-item-paths.js","sourceRoot":"","sources":["../../src/domain/work-item-paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,MAAM,UAAU,yBAAyB,CAAC,KAAa,EAAE,UAAkB;IACzE,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;SACjG,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;IACrD,OAAO,GAAG,KAAK,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAsB;IACtD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC;IAC9D,IAAI,IAAI,CAAC,SAAS,EAAE,aAAa,KAAK,SAAS,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAClG,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAC3G,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAsB;IACnD,OAAO,sBAAsB,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;AACzD,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { workItemPrefix } from "../domain/work-item-paths.js";
1
2
  import { readFile } from "node:fs/promises";
2
3
  import path from "node:path";
3
4
  import * as canonicalizeModule from "canonicalize";
@@ -107,7 +108,9 @@ async function approvalWorkspaceDigest(cwd, workItemId, version) {
107
108
  if (version !== 2)
108
109
  throw new ApprovalError("WSSPEC_APPROVAL_DIGEST_INVALID", "不支持此审批工作区摘要版本。");
109
110
  const draftPrefix = `.wsspec/work-items/${workItemId}/drafts/`;
110
- const entries = (await computeWorkspaceSnapshot(cwd)).filter((entry) => !entry.path.startsWith(draftPrefix));
111
+ const context = await resolveWorkItemContext(cwd, workItemId);
112
+ const readableDraftPrefix = `${workItemPrefix({ workItemId, execution: context })}/drafts/`;
113
+ const entries = (await computeWorkspaceSnapshot(cwd)).filter((entry) => !entry.path.startsWith(draftPrefix) && !entry.path.startsWith(readableDraftPrefix));
111
114
  return sha256(`${JSON.stringify({ version: 1, entries })}\n`);
112
115
  }
113
116
  export async function prepareArtifactApproval(input) {
@@ -116,7 +119,7 @@ export async function prepareArtifactApproval(input) {
116
119
  const artifactRoot = context.materialized ? worktree : context.authorityRoot;
117
120
  const physicalArtifactPath = (referencePath) => context.materialized
118
121
  ? path.join(artifactRoot, referencePath)
119
- : path.join(artifactRoot, referencePath.replace(`.wsspec/work-items/${input.workItemId}/`, ""));
122
+ : path.join(artifactRoot, referencePath.replace(`${workItemPrefix({ workItemId: input.workItemId, execution: context })}/`, ""));
120
123
  const artifacts = await Promise.all(input.artifacts.map(async (reference) => {
121
124
  if (reference.path === undefined)
122
125
  throw new ApprovalError("WSSPEC_ARTIFACT_REFERENCE_INVALID", `Artifact ${reference.artifactType} 缺少路径。`);
@@ -222,7 +225,7 @@ async function verifyApprovalArtifacts(cwd, workItemId, request) {
222
225
  const verifiedReferences = await Promise.all(references.map(async (reference) => {
223
226
  const physicalPath = context.materialized
224
227
  ? reference.path
225
- : reference.path.replace(`.wsspec/work-items/${workItemId}/`, "");
228
+ : reference.path.replace(`${workItemPrefix({ workItemId, execution: context })}/`, "");
226
229
  const verified = await verifyArtifact(path.join(artifactRoot, physicalPath), {
227
230
  repositoryRoot: artifactRoot,
228
231
  artifactType: reference.artifactType,
@@ -1 +1 @@
1
- {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/engine/approvals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/engine/approvals.ts"],"names":[],"mappings":"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"}
@@ -381,7 +381,7 @@ async function projectionWithVerifiedArtifacts(input) {
381
381
  || !sameValues(source, input.source) || !sameValues(source, authoritySource)) {
382
382
  throw new Error("Source Artifact reference mismatch");
383
383
  }
384
- await verifySourceArtifact(input.authorityRoot ?? input.worktree, input.projection.workItemId, source, input.authorityRoot === undefined ? undefined : `.wsspec/work-items/${input.projection.workItemId}`);
384
+ await verifySourceArtifact(input.authorityRoot ?? input.worktree, input.projection.workItemId, source, input.authorityRoot === undefined ? undefined : source.path.split("/source/")[0], source.path.split("/")[2]);
385
385
  verified.push(reference);
386
386
  }
387
387
  catch {
@@ -394,7 +394,7 @@ async function projectionWithVerifiedArtifacts(input) {
394
394
  const artifactRoot = input.authorityRoot ?? input.worktree;
395
395
  const physicalPath = input.authorityRoot === undefined
396
396
  ? reference.path
397
- : reference.path.replace(`.wsspec/work-items/${input.projection.workItemId}/`, "");
397
+ : reference.path.replace(/^\.wsspec\/work-items\/[^/]+\//u, "");
398
398
  const actual = await verifyArtifact(path.join(artifactRoot, physicalPath), {
399
399
  repositoryRoot: artifactRoot,
400
400
  artifactType: reference.artifactType,
@@ -1 +1 @@
1
- {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/engine/archive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/engine/archive.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ export interface CaptureRequirementInput {
35
35
  artifactRoot: string;
36
36
  artifactRootRepositoryRoot?: string;
37
37
  artifactPathPrefix?: string;
38
+ directoryName?: string;
38
39
  workItemId: string;
39
40
  source: CaptureRequirementSource;
40
41
  }
@@ -43,6 +44,6 @@ export declare class SourceArtifactError extends Error {
43
44
  constructor(code: `WSSPEC_${string}`, message: string);
44
45
  }
45
46
  export declare function requirementTitle(body: string): string;
46
- export declare function sourceArtifactReference(workItemId: string, artifact: SourceArtifact): SourceArtifactReference;
47
+ export declare function sourceArtifactReference(workItemId: string, artifact: SourceArtifact, directoryName?: string): SourceArtifactReference;
47
48
  export declare function captureRequirement(input: CaptureRequirementInput): Promise<SourceArtifact>;
48
- export declare function verifySourceArtifact(artifactRoot: string, workItemId: string, reference: SourceArtifactReference, artifactPathPrefix?: string): Promise<SourceArtifact>;
49
+ export declare function verifySourceArtifact(artifactRoot: string, workItemId: string, reference: SourceArtifactReference, artifactPathPrefix?: string, directoryName?: string): Promise<SourceArtifact>;