soloforge 1.4.10 → 1.4.12

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 (60) hide show
  1. package/dist/adapters/claude_code/tools.d.ts +3 -0
  2. package/dist/adapters/claude_code/tools.d.ts.map +1 -1
  3. package/dist/adapters/claude_code/tools.js +119 -182
  4. package/dist/adapters/claude_code/tools.js.map +1 -1
  5. package/dist/engine/brainstorm_contract.d.ts +2 -0
  6. package/dist/engine/brainstorm_contract.d.ts.map +1 -1
  7. package/dist/engine/brainstorm_contract.js +11 -1
  8. package/dist/engine/brainstorm_contract.js.map +1 -1
  9. package/dist/engine/expand_pipeline.d.ts +121 -0
  10. package/dist/engine/expand_pipeline.d.ts.map +1 -0
  11. package/dist/engine/expand_pipeline.js +141 -0
  12. package/dist/engine/expand_pipeline.js.map +1 -0
  13. package/dist/engine/first_principles.d.ts +2 -0
  14. package/dist/engine/first_principles.d.ts.map +1 -1
  15. package/dist/engine/first_principles.js +14 -1
  16. package/dist/engine/first_principles.js.map +1 -1
  17. package/dist/engine/intent_expander.d.ts +3 -0
  18. package/dist/engine/intent_expander.d.ts.map +1 -1
  19. package/dist/engine/intent_expander.js +252 -306
  20. package/dist/engine/intent_expander.js.map +1 -1
  21. package/dist/engine/intent_route_scorer.d.ts +1 -1
  22. package/dist/engine/intent_route_scorer.d.ts.map +1 -1
  23. package/dist/engine/intent_route_scorer.js +18 -3
  24. package/dist/engine/intent_route_scorer.js.map +1 -1
  25. package/dist/engine/intent_router.d.ts +2 -2
  26. package/dist/engine/intent_router.d.ts.map +1 -1
  27. package/dist/engine/intent_router.js +28 -6
  28. package/dist/engine/intent_router.js.map +1 -1
  29. package/dist/engine/intent_signal_extractor.d.ts +1 -1
  30. package/dist/engine/intent_signal_extractor.d.ts.map +1 -1
  31. package/dist/engine/intent_signal_extractor.js +12 -0
  32. package/dist/engine/intent_signal_extractor.js.map +1 -1
  33. package/dist/engine/release_readiness_gate.d.ts.map +1 -1
  34. package/dist/engine/release_readiness_gate.js +38 -37
  35. package/dist/engine/release_readiness_gate.js.map +1 -1
  36. package/dist/engine/source_code_matcher.d.ts +53 -0
  37. package/dist/engine/source_code_matcher.d.ts.map +1 -0
  38. package/dist/engine/source_code_matcher.js +165 -0
  39. package/dist/engine/source_code_matcher.js.map +1 -0
  40. package/dist/engine/task_context.d.ts +5 -0
  41. package/dist/engine/task_context.d.ts.map +1 -1
  42. package/dist/engine/task_context.js +37 -5
  43. package/dist/engine/task_context.js.map +1 -1
  44. package/dist/engine/technology_decision.d.ts +2 -0
  45. package/dist/engine/technology_decision.d.ts.map +1 -1
  46. package/dist/engine/technology_decision.js +18 -1
  47. package/dist/engine/technology_decision.js.map +1 -1
  48. package/dist/engine/traceability.d.ts.map +1 -1
  49. package/dist/engine/traceability.js +4 -0
  50. package/dist/engine/traceability.js.map +1 -1
  51. package/dist/engine/workflow_contract_registry.d.ts.map +1 -1
  52. package/dist/engine/workflow_contract_registry.js +24 -0
  53. package/dist/engine/workflow_contract_registry.js.map +1 -1
  54. package/dist/knowledge/index_manager.d.ts +1 -0
  55. package/dist/knowledge/index_manager.d.ts.map +1 -1
  56. package/dist/knowledge/index_manager.js +15 -0
  57. package/dist/knowledge/index_manager.js.map +1 -1
  58. package/dist/types.d.ts +2 -0
  59. package/dist/types.d.ts.map +1 -1
  60. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ /**
2
+ * 源码结构化匹配工具 — 替代 release_readiness_gate.ts 中的脆弱 .includes() 调用。
3
+ *
4
+ * 解决的问题:
5
+ * - .includes() 不区分生产代码和注释/测试代码
6
+ * - 空格或格式变更会破坏检查
7
+ * - 无法处理不同的引号风格和 import 写法
8
+ */
9
+ /**
10
+ * 剥离 TypeScript 源码中的注释(单行 + 多行 + JSDoc)。
11
+ * 保留字符串字面量内容不变。
12
+ */
13
+ export declare function stripComments(source: string): string;
14
+ /**
15
+ * 标准化源码用于匹配:移除多余空白,保留结构。
16
+ */
17
+ export declare function normalizeForMatch(source: string): string;
18
+ /**
19
+ * 检查源码是否包含指定标识符(单词边界匹配)。
20
+ * 自动剥离注释后匹配。
21
+ */
22
+ export declare function sourceContainsIdentifier(source: string, identifier: string): boolean;
23
+ /**
24
+ * 检查源码是否包含 import 语句引入指定模块。
25
+ * 处理静态 import 和 dynamic import,兼容不同引号风格。
26
+ */
27
+ export declare function sourceImportsModule(source: string, moduleName: string): boolean;
28
+ /**
29
+ * 检查源码是否包含指定函数调用模式(空白不敏感)。
30
+ * 例: sourceContainsCall(src, "validateStateFactPartition")
31
+ */
32
+ export declare function sourceContainsCall(source: string, functionName: string): boolean;
33
+ /**
34
+ * 检查源码是否包含 Zod schema 定义模式。
35
+ * 例: sourceContainsZodSchema(src, "decision_workshop", "z.unknown()")
36
+ * 空白不敏感。
37
+ */
38
+ export declare function sourceContainsZodSchema(source: string, fieldName: string, schemaPattern: string): boolean;
39
+ /**
40
+ * 检查源码是否包含任意一个给定的字符串模式(空白不敏感,注释安全)。
41
+ */
42
+ export declare function sourceContainsAny(source: string, patterns: string[]): boolean;
43
+ /**
44
+ * 检查源码是否包含指定字符串模式(空白不敏感,注释安全)。
45
+ */
46
+ export declare function sourceContainsPattern(source: string, pattern: string): boolean;
47
+ /**
48
+ * 检查源码是否包含属性赋值模式。
49
+ * 例: sourceContainsPropertyAccess(src, "ctx", "decision_workshop")
50
+ * 匹配: ctx.decision_workshop, (ctx as any).decision_workshop, (params.ctx as any).decision_workshop
51
+ */
52
+ export declare function sourceContainsPropertyAccess(source: string, objectName: string, propertyName: string): boolean;
53
+ //# sourceMappingURL=source_code_matcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source_code_matcher.d.ts","sourceRoot":"","sources":["../../src/engine/source_code_matcher.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA0DpD;AAID;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAIpF;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAU/E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAKhF;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CASzG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAE7E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAK9E;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAc9G"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * 源码结构化匹配工具 — 替代 release_readiness_gate.ts 中的脆弱 .includes() 调用。
3
+ *
4
+ * 解决的问题:
5
+ * - .includes() 不区分生产代码和注释/测试代码
6
+ * - 空格或格式变更会破坏检查
7
+ * - 无法处理不同的引号风格和 import 写法
8
+ */
9
+ // ── 注释剥离 ──
10
+ /**
11
+ * 剥离 TypeScript 源码中的注释(单行 + 多行 + JSDoc)。
12
+ * 保留字符串字面量内容不变。
13
+ */
14
+ export function stripComments(source) {
15
+ // 简单状态机:跟踪是否在字符串字面量中
16
+ let result = "";
17
+ let i = 0;
18
+ let inString = null;
19
+ let inTemplateExpr = 0;
20
+ while (i < source.length) {
21
+ const ch = source[i];
22
+ const next = source[i + 1];
23
+ // 字符串字面量内
24
+ if (inString) {
25
+ result += ch;
26
+ if (ch === "\\") {
27
+ // 转义字符,跳过下一个
28
+ result += source[++i] ?? "";
29
+ }
30
+ else if (inString === "`" && ch === "$" && next === "{") {
31
+ inTemplateExpr++;
32
+ result += next;
33
+ i += 2;
34
+ continue;
35
+ }
36
+ else if (inString === "`" && ch === "}" && inTemplateExpr > 0) {
37
+ inTemplateExpr--;
38
+ result += ch;
39
+ }
40
+ else if (ch === inString && inTemplateExpr === 0) {
41
+ inString = null;
42
+ }
43
+ i++;
44
+ continue;
45
+ }
46
+ // 进入字符串字面量
47
+ if (ch === "'" || ch === '"' || ch === "`") {
48
+ inString = ch;
49
+ result += ch;
50
+ i++;
51
+ continue;
52
+ }
53
+ // 单行注释
54
+ if (ch === "/" && next === "/") {
55
+ const eol = source.indexOf("\n", i);
56
+ i = eol === -1 ? source.length : eol;
57
+ continue;
58
+ }
59
+ // 多行/JSDoc 注释
60
+ if (ch === "/" && next === "*") {
61
+ const end = source.indexOf("*/", i + 2);
62
+ i = end === -1 ? source.length : end + 2;
63
+ continue;
64
+ }
65
+ result += ch;
66
+ i++;
67
+ }
68
+ return result;
69
+ }
70
+ // ── 标准化匹配 ──
71
+ /**
72
+ * 标准化源码用于匹配:移除多余空白,保留结构。
73
+ */
74
+ export function normalizeForMatch(source) {
75
+ return source.replace(/\s+/g, " ").trim();
76
+ }
77
+ /**
78
+ * 检查源码是否包含指定标识符(单词边界匹配)。
79
+ * 自动剥离注释后匹配。
80
+ */
81
+ export function sourceContainsIdentifier(source, identifier) {
82
+ const clean = stripComments(source);
83
+ const pattern = new RegExp(`\\b${escapeRegex(identifier)}\\b`);
84
+ return pattern.test(clean);
85
+ }
86
+ /**
87
+ * 检查源码是否包含 import 语句引入指定模块。
88
+ * 处理静态 import 和 dynamic import,兼容不同引号风格。
89
+ */
90
+ export function sourceImportsModule(source, moduleName) {
91
+ const clean = stripComments(source);
92
+ // import ... from "module" | import("module") | require("module")
93
+ const escaped = escapeRegex(moduleName);
94
+ const patterns = [
95
+ new RegExp(`import\\s+.*?from\\s+['"\`]${escaped}['"\`]`),
96
+ new RegExp(`import\\s*\\(\\s*['"\`]${escaped}['"\`]\\s*\\)`),
97
+ new RegExp(`require\\s*\\(\\s*['"\`]${escaped}['"\`]\\s*\\)`),
98
+ ];
99
+ return patterns.some((p) => p.test(clean));
100
+ }
101
+ /**
102
+ * 检查源码是否包含指定函数调用模式(空白不敏感)。
103
+ * 例: sourceContainsCall(src, "validateStateFactPartition")
104
+ */
105
+ export function sourceContainsCall(source, functionName) {
106
+ const clean = stripComments(source);
107
+ const normalized = normalizeForMatch(clean);
108
+ const escaped = escapeRegex(functionName);
109
+ return new RegExp(`${escaped}\\s*\\(`).test(normalized);
110
+ }
111
+ /**
112
+ * 检查源码是否包含 Zod schema 定义模式。
113
+ * 例: sourceContainsZodSchema(src, "decision_workshop", "z.unknown()")
114
+ * 空白不敏感。
115
+ */
116
+ export function sourceContainsZodSchema(source, fieldName, schemaPattern) {
117
+ const clean = stripComments(source);
118
+ const normalized = normalizeForMatch(clean);
119
+ const escapedField = escapeRegex(fieldName);
120
+ // 对 schema pattern:在每个字符间插入 \s* 以容忍任意空白
121
+ const nonSpaceChars = [...schemaPattern].filter((ch) => !/\s/.test(ch));
122
+ const escapedParts = nonSpaceChars.map((ch) => escapeRegex(ch));
123
+ const schemaRegex = escapedParts.join("\\s*");
124
+ return new RegExp(`${escapedField}\\s*:\\s*${schemaRegex}`).test(normalized);
125
+ }
126
+ /**
127
+ * 检查源码是否包含任意一个给定的字符串模式(空白不敏感,注释安全)。
128
+ */
129
+ export function sourceContainsAny(source, patterns) {
130
+ return patterns.some((p) => sourceContainsPattern(source, p));
131
+ }
132
+ /**
133
+ * 检查源码是否包含指定字符串模式(空白不敏感,注释安全)。
134
+ */
135
+ export function sourceContainsPattern(source, pattern) {
136
+ const clean = stripComments(source);
137
+ const normalized = normalizeForMatch(clean);
138
+ const escaped = escapeRegex(pattern).replace(/\s+/g, "\\s+");
139
+ return new RegExp(escaped).test(normalized);
140
+ }
141
+ /**
142
+ * 检查源码是否包含属性赋值模式。
143
+ * 例: sourceContainsPropertyAccess(src, "ctx", "decision_workshop")
144
+ * 匹配: ctx.decision_workshop, (ctx as any).decision_workshop, (params.ctx as any).decision_workshop
145
+ */
146
+ export function sourceContainsPropertyAccess(source, objectName, propertyName) {
147
+ const clean = stripComments(source);
148
+ const escapedObj = escapeRegex(objectName);
149
+ const escapedProp = escapeRegex(propertyName);
150
+ // 三种模式:obj.prop, (obj as X).prop, (Y.obj as X).prop
151
+ const patterns = [
152
+ // 直接访问: ctx.field
153
+ new RegExp(`\\b${escapedObj}\\s*\\.\\s*${escapedProp}\\b`),
154
+ // 带类型断言: (ctx as any).field 或 (ctx as Record<string, unknown>).field
155
+ new RegExp(`\\(\\s*${escapedObj}\\s+as\\s+\\w+(?:<[^>]+>)?\\s*\\)\\s*\\.\\s*${escapedProp}`),
156
+ // 带命名空间断言: (params.ctx as any).field
157
+ new RegExp(`\\(\\s*\\w+\\s*\\.\\s*${escapedObj}\\s+as\\s+\\w+(?:<[^>]+>)?\\s*\\)\\s*\\.\\s*${escapedProp}`),
158
+ ];
159
+ return patterns.some((p) => p.test(clean));
160
+ }
161
+ // ── 工具函数 ──
162
+ function escapeRegex(str) {
163
+ return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
164
+ }
165
+ //# sourceMappingURL=source_code_matcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source_code_matcher.js","sourceRoot":"","sources":["../../src/engine/source_code_matcher.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,11 @@ export declare class TaskContextManager {
95
95
  * @returns 是否取消/关闭成功
96
96
  */
97
97
  cancel(taskId: string): Promise<boolean>;
98
+ /**
99
+ * 将失败任务恢复到 expanding 状态以重试 sf_expand。
100
+ * 通过 updateStatus 走正式状态转换,确保事实前置条件和副作用被正确处理。
101
+ */
102
+ retryExpand(taskId: string): Promise<boolean>;
98
103
  /**
99
104
  * 判断任务是否可恢复(非 done / failed / classifying 状态均可恢复)。
100
105
  * @param ctx - 任务上下文
@@ -1 +1 @@
1
- {"version":3,"file":"task_context.d.ts","sourceRoot":"","sources":["../../src/engine/task_context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task_context.d.ts","sourceRoot":"","sources":["../../src/engine/task_context.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@ const VALID_TRANSITIONS = {
38
38
  reworking: ["expanding", "executing", "failed"],
39
39
  learning: ["done", "retrying", "reworking", "failed"],
40
40
  done: [],
41
- failed: [],
41
+ failed: ["expanding"],
42
42
  };
43
43
  /**
44
44
  * 任务上下文管理器 — 负责任务状态的创建、持久化、查询和生命周期管理。
@@ -201,6 +201,11 @@ export class TaskContextManager {
201
201
  throw new Error(`事实缺失: verifying → ${status} 需要 verification(或显式 skip_verification_reason)`);
202
202
  }
203
203
  }
204
+ if (ctx.status === "failed" && status === "expanding") {
205
+ if (!ctx.classification) {
206
+ throw new Error(`事实缺失: failed → expanding 需要 classification`);
207
+ }
208
+ }
204
209
  const prevStatus = ctx.status;
205
210
  ctx.status = status;
206
211
  await this.save(ctx);
@@ -458,6 +463,29 @@ export class TaskContextManager {
458
463
  debug("任务上下文", "已取消任务 " + taskId);
459
464
  return true;
460
465
  }
466
+ /**
467
+ * 将失败任务恢复到 expanding 状态以重试 sf_expand。
468
+ * 通过 updateStatus 走正式状态转换,确保事实前置条件和副作用被正确处理。
469
+ */
470
+ async retryExpand(taskId) {
471
+ const ctx = await this.load(taskId);
472
+ if (!ctx || ctx.status !== "failed")
473
+ return false;
474
+ if (!ctx.classification)
475
+ return false;
476
+ try {
477
+ const updated = await this.updateStatus(taskId, "expanding");
478
+ if (!updated)
479
+ return false;
480
+ await this.writeCurrentPointer(taskId);
481
+ debug("任务上下文", "已恢复任务到 expanding: " + taskId);
482
+ return true;
483
+ }
484
+ catch (e) {
485
+ debug("任务上下文", "恢复任务失败: " + (e instanceof Error ? e.message : String(e)));
486
+ return false;
487
+ }
488
+ }
461
489
  /**
462
490
  * 判断任务是否可恢复(非 done / failed / classifying 状态均可恢复)。
463
491
  * @param ctx - 任务上下文
@@ -531,10 +559,14 @@ export class TaskContextManager {
531
559
  : elapsed > STALE_MS_OTHER;
532
560
  if (isStale) {
533
561
  const prevStatus = ctx.status;
534
- ctx.status = "failed";
535
- await this.save(ctx);
536
- failed.push(ctx.task_id);
537
- debug("任务上下文", `自动终结陈旧任务 ${ctx.task_id} (${prevStatus}, ${Math.round(elapsed / 60000)}min)`);
562
+ try {
563
+ await this.updateStatus(ctx.task_id, "failed");
564
+ failed.push(ctx.task_id);
565
+ debug("任务上下文", `自动终结陈旧任务 ${ctx.task_id} (${prevStatus}, ${Math.round(elapsed / 60000)}min)`);
566
+ }
567
+ catch {
568
+ // 状态转换不合法时跳过(如已终态)
569
+ }
538
570
  }
539
571
  }
540
572
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"task_context.js","sourceRoot":"","sources":["../../src/engine/task_context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task_context.js","sourceRoot":"","sources":["../../src/engine/task_context.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export interface DecisionValidationResult {
16
16
  valid: boolean;
17
17
  violations: string[];
18
18
  warnings: string[];
19
+ /** 期望的 JSON 结构,供 AI 修正输入时参考 */
20
+ expected_schema?: Record<string, unknown>;
19
21
  }
20
22
  /**
21
23
  * 创建技术决策契约。
@@ -1 +1 @@
1
- {"version":3,"file":"technology_decision.d.ts","sourceRoot":"","sources":["../../src/engine/technology_decision.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAC1B,wBAAwB,EAGzB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,wBAAwB,EAAE,OAAO,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAUD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,0BAA0B,EAAE,aAAa,CAAC,GAC/F,0BAA0B,CAe5B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,0BAA0B,GACnC,wBAAwB,CAuC1B;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,0BAA0B,EACpC,MAAM,CAAC,EAAE,wBAAwB,GAChC,wBAAwB,CAqC1B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,GAC5C,wBAAwB,CAO1B"}
1
+ {"version":3,"file":"technology_decision.d.ts","sourceRoot":"","sources":["../../src/engine/technology_decision.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAC1B,wBAAwB,EAGzB,MAAM,mCAAmC,CAAC;AAE3C,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,wBAAwB,EAAE,OAAO,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3C;AAUD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,IAAI,CAAC,0BAA0B,EAAE,aAAa,CAAC,GAC/F,0BAA0B,CAe5B;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,0BAA0B,GACnC,wBAAwB,CAwD1B;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,0BAA0B,EACpC,MAAM,CAAC,EAAE,wBAAwB,GAChC,wBAAwB,CAqC1B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,OAAO,CAAC,wBAAwB,CAAC,GAC5C,wBAAwB,CAO1B"}
@@ -64,7 +64,24 @@ export function validateTechnologyDecision(contract) {
64
64
  violations.push(`${contract.decision_scope} 范围的决策不得标记为 executable_without_human`);
65
65
  }
66
66
  }
67
- return { valid: violations.length === 0, violations, warnings };
67
+ const result = { valid: violations.length === 0, violations, warnings };
68
+ if (!result.valid) {
69
+ result.expected_schema = {
70
+ decision_id: "string — 唯一标识,如 TECH-001",
71
+ decision_scope: "local_implementation | library_choice | architecture | infrastructure | data_store | external_service | security_or_compliance",
72
+ options: [{ option_id: "string", title: "string", description: "string" }],
73
+ recommended_option: "string — 必须匹配 options[].option_id",
74
+ rejected_options: [{ option: "string", reason: "string" }],
75
+ evidence: [{ claim: "string", supporting_facts: ["string"] }],
76
+ falsification: ["string — 可证伪的条件"],
77
+ failure_conditions: ["string — 失败条件"],
78
+ validation_plan: ["string — 验证步骤"],
79
+ rollback_or_exit_plan: ["string — 回滚方案"],
80
+ human_gate_required: "boolean — architecture/infrastructure/data_store/security_or_compliance 范围必须为 true",
81
+ executable_without_human: "boolean — 上述范围必须为 false",
82
+ };
83
+ }
84
+ return result;
68
85
  }
69
86
  /**
70
87
  * 评估决策是否可执行。
@@ -1 +1 @@
1
- {"version":3,"file":"technology_decision.js","sourceRoot":"","sources":["../../src/engine/technology_decision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"technology_decision.js","sourceRoot":"","sources":["../../src/engine/technology_decision.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAwBH,0BAA0B;AAC1B,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,wBAAwB;CACzB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,wBAAwB,CACtC,SAAgG;IAEhG,OAAO;QACL,cAAc,EAAE,sBAAsB;QACtC,OAAO,EAAE,EAAE;QACX,kBAAkB,EAAE,EAAE;QACtB,gBAAgB,EAAE,EAAE;QACpB,QAAQ,EAAE,EAAE;QACZ,aAAa,EAAE,EAAE;QACjB,kBAAkB,EAAE,EAAE;QACtB,eAAe,EAAE,EAAE;QACnB,qBAAqB,EAAE,EAAE;QACzB,mBAAmB,EAAE,KAAK;QAC1B,wBAAwB,EAAE,IAAI;QAC9B,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAoC;IAEpC,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QACjC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,QAAQ,CAAC,kBAAkB,IAAI,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAChI,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3C,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAChD,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9B,CAAC;IAED,oBAAoB;IACpB,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,cAAc,qBAAqB,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,QAAQ,CAAC,wBAAwB,EAAE,CAAC;YACtC,UAAU,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,cAAc,sCAAsC,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAA6B,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;IAClG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,CAAC,eAAe,GAAG;YACvB,WAAW,EAAE,0BAA0B;YACvC,cAAc,EAAE,gIAAgI;YAChJ,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;YAC1E,kBAAkB,EAAE,mCAAmC;YACvD,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC1D,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7D,aAAa,EAAE,CAAC,iBAAiB,CAAC;YAClC,kBAAkB,EAAE,CAAC,eAAe,CAAC;YACrC,eAAe,EAAE,CAAC,eAAe,CAAC;YAClC,qBAAqB,EAAE,CAAC,eAAe,CAAC;YACxC,mBAAmB,EAAE,oFAAoF;YACzG,wBAAwB,EAAE,yBAAyB;SACpD,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CACvC,QAAoC,EACpC,MAAiC;IAEjC,eAAe;IACf,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;QACxD,OAAO;YACL,OAAO,EAAE,KAAK;YACd,mBAAmB,EAAE,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC;YACnE,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,qBAAqB;SAC9B,CAAC;IACJ,CAAC;IAED,aAAa;IACb,IAAI,QAAQ,CAAC,mBAAmB,IAAI,MAAM,CAAC,eAAe,KAAK,UAAU,IAAI,MAAM,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;QACtH,OAAO;YACL,OAAO,EAAE,KAAK;YACd,mBAAmB,EAAE,IAAI;YACzB,wBAAwB,EAAE,KAAK;YAC/B,MAAM,EAAE,GAAG,QAAQ,CAAC,cAAc,qBAAqB,MAAM,CAAC,eAAe,EAAE;SAChF,CAAC;IACJ,CAAC;IAED,UAAU;IACV,IAAI,MAAM,CAAC,eAAe,KAAK,UAAU,IAAI,MAAM,CAAC,eAAe,KAAK,aAAa,EAAE,CAAC;QACtF,OAAO;YACL,OAAO,EAAE,IAAI;YACb,mBAAmB,EAAE,KAAK;YAC1B,wBAAwB,EAAE,QAAQ,CAAC,wBAAwB;YAC3D,MAAM,EAAE,WAAW;SACpB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;QACjD,wBAAwB,EAAE,KAAK;QAC/B,MAAM,EAAE,cAAc,MAAM,CAAC,eAAe,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAAkB,EAClB,SAA6C;IAE7C,OAAO;QACL,WAAW,EAAE,UAAU;QACvB,eAAe,EAAE,aAAa;QAC9B,YAAY,EAAE,EAAE;QAChB,GAAG,SAAS;KACb,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"traceability.d.ts","sourceRoot":"","sources":["../../src/engine/traceability.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAgB,MAAM,aAAa,CAAC;AAIhF,eAAO,MAAM,+CAA+C,qGACpB,CAAC;AACzC,eAAO,MAAM,gDAAgD,qIACC,CAAC;AAC/D,eAAO,MAAM,mDAAmD,qCAC5B,CAAC;AACrC,eAAO,MAAM,oDAAoD,ocACgK,CAAC;AAElO,MAAM,MAAM,0BAA0B,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC;AAEpG,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,0BAA0B,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sCAAsC;IACrD,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;IACrD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,yBAAyB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,qCAAqC;IACpD,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,yBAAyB,EAAE,CAAC;CACvC;AAgDD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CA8BhE;AAkGD,wBAAgB,qCAAqC,CACnD,OAAO,EAAE,MAAM,EACf,UAAU,SAAkD,GAC3D,sCAAsC,CAwIxC;AAOD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,CAkB5E;AAED,wBAAgB,2CAA2C,CACzD,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,EAAE,WAAW,GACnB,qCAAqC,CAuCvC;AAwCD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,iBAAiB,CA+H9E"}
1
+ {"version":3,"file":"traceability.d.ts","sourceRoot":"","sources":["../../src/engine/traceability.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAgB,MAAM,aAAa,CAAC;AAIhF,eAAO,MAAM,+CAA+C,qGACpB,CAAC;AACzC,eAAO,MAAM,gDAAgD,qIACC,CAAC;AAC/D,eAAO,MAAM,mDAAmD,qCAC5B,CAAC;AACrC,eAAO,MAAM,oDAAoD,ocACgK,CAAC;AAElO,MAAM,MAAM,0BAA0B,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC;AAEpG,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,0BAA0B,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sCAAsC;IACrD,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;IACrD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,yBAAyB,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,qCAAqC;IACpD,MAAM,EAAE,OAAO,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,yBAAyB,EAAE,CAAC;CACvC;AAgDD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CA8BhE;AAkGD,wBAAgB,qCAAqC,CACnD,OAAO,EAAE,MAAM,EACf,UAAU,SAAkD,GAC3D,sCAAsC,CAwIxC;AAOD,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,EAAE,CAkB5E;AAED,wBAAgB,2CAA2C,CACzD,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EAAE,EACtB,OAAO,EAAE,WAAW,GACnB,qCAAqC,CA0CvC;AAwCD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,WAAW,GAAG,iBAAiB,CA+H9E"}
@@ -301,7 +301,11 @@ export function verifyChangedFilesAgainstDesignTraceability(rootDir, changedFile
301
301
  }
302
302
  findings.push(...report.findings);
303
303
  const requiredPrefixes = ["PHASE", "SLICE", "DD", "AC"];
304
+ // 前置准备阶段(如 SLICE-00)在追踪矩阵中 DD/AC 标为"—",不强制要求
305
+ const isPreparatorySlice = bindingIds.some((id) => /^SLICE-0{1,2}0\b/.test(id));
304
306
  for (const prefix of requiredPrefixes) {
307
+ if (isPreparatorySlice && (prefix === "DD" || prefix === "AC"))
308
+ continue;
305
309
  if (!bindingIds.some((id) => id.startsWith(`${prefix}-`))) {
306
310
  addFinding(findings, "TRACEABILITY_CODE_BINDING_MISSING", `编码变更必须绑定 ${prefix}-* 追踪 ID,确保实现来自具体阶段、详细设计、切片和验收标准`);
307
311
  }