soloforge 1.2.18 → 1.2.20

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 (208) hide show
  1. package/dist/adapters/claude_code/pre_prompt_contract.js +2 -2
  2. package/dist/adapters/claude_code/pre_prompt_contract.js.map +1 -1
  3. package/dist/adapters/claude_code/server.d.ts.map +1 -1
  4. package/dist/adapters/claude_code/server.js +4 -2
  5. package/dist/adapters/claude_code/server.js.map +1 -1
  6. package/dist/adapters/claude_code/tools.d.ts +2 -2
  7. package/dist/adapters/claude_code/tools.d.ts.map +1 -1
  8. package/dist/adapters/claude_code/tools.js +348 -171
  9. package/dist/adapters/claude_code/tools.js.map +1 -1
  10. package/dist/adapters/codex/codex_config.d.ts.map +1 -1
  11. package/dist/adapters/codex/codex_config.js +16 -4
  12. package/dist/adapters/codex/codex_config.js.map +1 -1
  13. package/dist/adapters/trae/trae_config.d.ts +2 -1
  14. package/dist/adapters/trae/trae_config.d.ts.map +1 -1
  15. package/dist/adapters/trae/trae_config.js +4 -3
  16. package/dist/adapters/trae/trae_config.js.map +1 -1
  17. package/dist/bin/config_commands.d.ts +1 -1
  18. package/dist/bin/config_commands.js +4 -4
  19. package/dist/bin/config_commands.js.map +1 -1
  20. package/dist/bin/soloforge.d.ts.map +1 -1
  21. package/dist/bin/soloforge.js +85 -110
  22. package/dist/bin/soloforge.js.map +1 -1
  23. package/dist/engine/artifact_contract_registry.d.ts.map +1 -1
  24. package/dist/engine/artifact_contract_registry.js.map +1 -1
  25. package/dist/engine/audit_sampler.d.ts.map +1 -1
  26. package/dist/engine/audit_sampler.js +0 -4
  27. package/dist/engine/audit_sampler.js.map +1 -1
  28. package/dist/engine/batch1_manifest.d.ts.map +1 -1
  29. package/dist/engine/batch1_manifest.js +0 -7
  30. package/dist/engine/batch1_manifest.js.map +1 -1
  31. package/dist/engine/batch1_scenario_registry.js +7 -7
  32. package/dist/engine/batch1_scenario_registry.js.map +1 -1
  33. package/dist/engine/batch1_scenario_runners.js +32 -32
  34. package/dist/engine/batch1_scenario_runners.js.map +1 -1
  35. package/dist/engine/capability_action_advisor.js +16 -16
  36. package/dist/engine/capability_action_advisor.js.map +1 -1
  37. package/dist/engine/classifier.d.ts.map +1 -1
  38. package/dist/engine/classifier.js +4 -3
  39. package/dist/engine/classifier.js.map +1 -1
  40. package/dist/engine/code_reviewer.d.ts.map +1 -1
  41. package/dist/engine/code_reviewer.js +10 -9
  42. package/dist/engine/code_reviewer.js.map +1 -1
  43. package/dist/engine/command_execution_contract.js +14 -14
  44. package/dist/engine/command_execution_contract.js.map +1 -1
  45. package/dist/engine/contract_registry.d.ts +113 -0
  46. package/dist/engine/contract_registry.d.ts.map +1 -0
  47. package/dist/engine/contract_registry.js +1159 -0
  48. package/dist/engine/contract_registry.js.map +1 -0
  49. package/dist/engine/contract_state_store.d.ts +67 -0
  50. package/dist/engine/contract_state_store.d.ts.map +1 -0
  51. package/dist/engine/contract_state_store.js +167 -0
  52. package/dist/engine/contract_state_store.js.map +1 -0
  53. package/dist/engine/debug_log.d.ts +2 -0
  54. package/dist/engine/debug_log.d.ts.map +1 -0
  55. package/dist/engine/debug_log.js +7 -0
  56. package/dist/engine/debug_log.js.map +1 -0
  57. package/dist/engine/debugger.d.ts.map +1 -1
  58. package/dist/engine/debugger.js +30 -1
  59. package/dist/engine/debugger.js.map +1 -1
  60. package/dist/engine/degradation.d.ts +58 -0
  61. package/dist/engine/degradation.d.ts.map +1 -0
  62. package/dist/engine/degradation.js +74 -0
  63. package/dist/engine/degradation.js.map +1 -0
  64. package/dist/engine/delivery_readiness.d.ts +66 -0
  65. package/dist/engine/delivery_readiness.d.ts.map +1 -0
  66. package/dist/engine/delivery_readiness.js +176 -0
  67. package/dist/engine/delivery_readiness.js.map +1 -0
  68. package/dist/engine/deprecated_contract.d.ts +21 -0
  69. package/dist/engine/deprecated_contract.d.ts.map +1 -0
  70. package/dist/engine/deprecated_contract.js +14 -0
  71. package/dist/engine/deprecated_contract.js.map +1 -0
  72. package/dist/engine/developer_sovereignty.js +15 -15
  73. package/dist/engine/developer_sovereignty.js.map +1 -1
  74. package/dist/engine/diagnostic_registry.d.ts +64 -0
  75. package/dist/engine/diagnostic_registry.d.ts.map +1 -0
  76. package/dist/engine/diagnostic_registry.js +176 -0
  77. package/dist/engine/diagnostic_registry.js.map +1 -0
  78. package/dist/engine/diff_ownership_store.d.ts.map +1 -1
  79. package/dist/engine/diff_ownership_store.js +1 -2
  80. package/dist/engine/diff_ownership_store.js.map +1 -1
  81. package/dist/engine/dual_layer_mechanism_registry.js +1 -1
  82. package/dist/engine/dual_layer_mechanism_registry.js.map +1 -1
  83. package/dist/engine/enforcement_guard.d.ts +84 -0
  84. package/dist/engine/enforcement_guard.d.ts.map +1 -0
  85. package/dist/engine/enforcement_guard.js +305 -0
  86. package/dist/engine/enforcement_guard.js.map +1 -0
  87. package/dist/engine/evolver.d.ts.map +1 -1
  88. package/dist/engine/evolver.js +11 -10
  89. package/dist/engine/evolver.js.map +1 -1
  90. package/dist/engine/failure_report.d.ts +74 -0
  91. package/dist/engine/failure_report.d.ts.map +1 -0
  92. package/dist/engine/failure_report.js +143 -0
  93. package/dist/engine/failure_report.js.map +1 -0
  94. package/dist/engine/governance_report.d.ts +9 -1
  95. package/dist/engine/governance_report.d.ts.map +1 -1
  96. package/dist/engine/governance_report.js +24 -10
  97. package/dist/engine/governance_report.js.map +1 -1
  98. package/dist/engine/implementation_roadmap_registry.d.ts +1 -1
  99. package/dist/engine/implementation_roadmap_registry.d.ts.map +1 -1
  100. package/dist/engine/implementation_roadmap_registry.js +37 -29
  101. package/dist/engine/implementation_roadmap_registry.js.map +1 -1
  102. package/dist/engine/input_material_extractor.js +3 -3
  103. package/dist/engine/input_material_extractor.js.map +1 -1
  104. package/dist/engine/intent_expander.d.ts.map +1 -1
  105. package/dist/engine/intent_expander.js +15 -14
  106. package/dist/engine/intent_expander.js.map +1 -1
  107. package/dist/engine/intent_router.d.ts.map +1 -1
  108. package/dist/engine/intent_router.js +17 -16
  109. package/dist/engine/intent_router.js.map +1 -1
  110. package/dist/engine/java_quality_guard.js +10 -10
  111. package/dist/engine/java_quality_guard.js.map +1 -1
  112. package/dist/engine/knowledge_injection_boundary.d.ts +1 -1
  113. package/dist/engine/knowledge_injection_boundary.d.ts.map +1 -1
  114. package/dist/engine/knowledge_injection_boundary.js +61 -60
  115. package/dist/engine/knowledge_injection_boundary.js.map +1 -1
  116. package/dist/engine/knowledge_lifecycle.d.ts +23 -0
  117. package/dist/engine/knowledge_lifecycle.d.ts.map +1 -0
  118. package/dist/engine/knowledge_lifecycle.js +13 -0
  119. package/dist/engine/knowledge_lifecycle.js.map +1 -0
  120. package/dist/engine/language_policy.d.ts +21 -0
  121. package/dist/engine/language_policy.d.ts.map +1 -0
  122. package/dist/engine/language_policy.js +18 -0
  123. package/dist/engine/language_policy.js.map +1 -0
  124. package/dist/engine/language_policy_contract.d.ts +52 -0
  125. package/dist/engine/language_policy_contract.d.ts.map +1 -0
  126. package/dist/engine/language_policy_contract.js +78 -0
  127. package/dist/engine/language_policy_contract.js.map +1 -0
  128. package/dist/engine/main_path_integration_contract.js +16 -16
  129. package/dist/engine/main_path_integration_contract.js.map +1 -1
  130. package/dist/engine/mechanism_contract_registry.d.ts +3 -4
  131. package/dist/engine/mechanism_contract_registry.d.ts.map +1 -1
  132. package/dist/engine/mechanism_contract_registry.js +23 -24
  133. package/dist/engine/mechanism_contract_registry.js.map +1 -1
  134. package/dist/engine/mechanism_family_registry.d.ts +48 -0
  135. package/dist/engine/mechanism_family_registry.d.ts.map +1 -0
  136. package/dist/engine/mechanism_family_registry.js +197 -0
  137. package/dist/engine/mechanism_family_registry.js.map +1 -0
  138. package/dist/engine/onboarding.js +20 -20
  139. package/dist/engine/onboarding.js.map +1 -1
  140. package/dist/engine/policy_drift_detector.d.ts +20 -0
  141. package/dist/engine/policy_drift_detector.d.ts.map +1 -1
  142. package/dist/engine/policy_drift_detector.js +79 -0
  143. package/dist/engine/policy_drift_detector.js.map +1 -1
  144. package/dist/engine/privacy_secret_contract.d.ts.map +1 -1
  145. package/dist/engine/privacy_secret_contract.js +49 -48
  146. package/dist/engine/privacy_secret_contract.js.map +1 -1
  147. package/dist/engine/regression_matrix.js +21 -21
  148. package/dist/engine/regression_matrix.js.map +1 -1
  149. package/dist/engine/retention_policy.d.ts +46 -0
  150. package/dist/engine/retention_policy.d.ts.map +1 -0
  151. package/dist/engine/retention_policy.js +124 -0
  152. package/dist/engine/retention_policy.js.map +1 -0
  153. package/dist/engine/route_decision_contract_verifier.js +24 -24
  154. package/dist/engine/route_decision_contract_verifier.js.map +1 -1
  155. package/dist/engine/scope_controller.d.ts.map +1 -1
  156. package/dist/engine/scope_controller.js +4 -3
  157. package/dist/engine/scope_controller.js.map +1 -1
  158. package/dist/engine/scope_lease.d.ts.map +1 -1
  159. package/dist/engine/scope_lease.js +0 -1
  160. package/dist/engine/scope_lease.js.map +1 -1
  161. package/dist/engine/state_update_bypass.d.ts +19 -0
  162. package/dist/engine/state_update_bypass.d.ts.map +1 -0
  163. package/dist/engine/state_update_bypass.js +17 -0
  164. package/dist/engine/state_update_bypass.js.map +1 -0
  165. package/dist/engine/task_context.d.ts.map +1 -1
  166. package/dist/engine/task_context.js +11 -3
  167. package/dist/engine/task_context.js.map +1 -1
  168. package/dist/engine/test_generator.js +8 -8
  169. package/dist/engine/test_generator.js.map +1 -1
  170. package/dist/engine/test_strategy.d.ts +58 -0
  171. package/dist/engine/test_strategy.d.ts.map +1 -0
  172. package/dist/engine/test_strategy.js +93 -0
  173. package/dist/engine/test_strategy.js.map +1 -0
  174. package/dist/engine/tool_invocation_contract_registry.d.ts.map +1 -1
  175. package/dist/engine/tool_invocation_contract_registry.js +29 -19
  176. package/dist/engine/tool_invocation_contract_registry.js.map +1 -1
  177. package/dist/engine/traceability.js +6 -6
  178. package/dist/engine/traceability.js.map +1 -1
  179. package/dist/engine/user_feedback_contract.js +9 -9
  180. package/dist/engine/user_feedback_contract.js.map +1 -1
  181. package/dist/engine/verification_contract.d.ts +132 -0
  182. package/dist/engine/verification_contract.d.ts.map +1 -0
  183. package/dist/engine/verification_contract.js +296 -0
  184. package/dist/engine/verification_contract.js.map +1 -0
  185. package/dist/engine/verifier.d.ts.map +1 -1
  186. package/dist/engine/verifier.js +9 -8
  187. package/dist/engine/verifier.js.map +1 -1
  188. package/dist/engine/workspace_lease.d.ts +69 -0
  189. package/dist/engine/workspace_lease.d.ts.map +1 -0
  190. package/dist/engine/workspace_lease.js +153 -0
  191. package/dist/engine/workspace_lease.js.map +1 -0
  192. package/dist/engine/zero_config_init.d.ts.map +1 -1
  193. package/dist/engine/zero_config_init.js +84 -84
  194. package/dist/engine/zero_config_init.js.map +1 -1
  195. package/dist/git/operations.js +1 -1
  196. package/dist/git/operations.js.map +1 -1
  197. package/dist/index.d.ts +4 -3
  198. package/dist/index.d.ts.map +1 -1
  199. package/dist/index.js +16 -11
  200. package/dist/index.js.map +1 -1
  201. package/dist/knowledge/index_manager.d.ts.map +1 -1
  202. package/dist/knowledge/index_manager.js +18 -17
  203. package/dist/knowledge/index_manager.js.map +1 -1
  204. package/dist/knowledge/loader.js +2 -2
  205. package/dist/knowledge/loader.js.map +1 -1
  206. package/dist/types.d.ts +13 -1
  207. package/dist/types.d.ts.map +1 -1
  208. package/package.json +4 -2
@@ -1,5 +1,6 @@
1
1
  import { scoreConfidence } from "./confidence_scorer.js";
2
2
  import { KnowledgeWriter } from "../knowledge/writer.js";
3
+ import { debugLog } from "./debug_log.js";
3
4
  export { FailureClassifier } from "./failure_classifier.js";
4
5
  /**
5
6
  * 模式漂移检测 — 对比代码实现与知识库模式规则,检测偏离度。
@@ -9,7 +10,7 @@ export { FailureClassifier } from "./failure_classifier.js";
9
10
  * @returns 漂移检测结果
10
11
  */
11
12
  export function detectPatternDrift(patterns, codeFiles) {
12
- console.error("[soloForge] 漂移检测: 开始检测模式漂移");
13
+ debugLog("漂移检测: 开始检测模式漂移");
13
14
  const driftDetails = [];
14
15
  for (const pattern of patterns) {
15
16
  if (!pattern.body)
@@ -49,7 +50,7 @@ export function detectPatternDrift(patterns, codeFiles) {
49
50
  let rootCause;
50
51
  if (syncRequired && driftDetails.length > 0) {
51
52
  rootCause = analyzeDriftRootCause(driftDetails, codeFiles);
52
- console.error(`[soloForge] 漂移检测: 偏离率 ${(driftRatio * 100).toFixed(0)}%,触发同步任务,正在分析根因`);
53
+ debugLog(`漂移检测: 偏离率 ${(driftRatio * 100).toFixed(0)}%,触发同步任务,正在分析根因`);
53
54
  }
54
55
  let recommendation;
55
56
  if (syncRequired) {
@@ -63,7 +64,7 @@ export function detectPatternDrift(patterns, codeFiles) {
63
64
  else {
64
65
  recommendation = `⚠ 偏离率 ${(driftRatio * 100).toFixed(0)}% 超过阈值 30%。根因不确定。必须人工判定后再决定更新知识库还是重构代码`;
65
66
  }
66
- console.error(`[soloForge] 漂移检测: ${recommendation}`);
67
+ debugLog(`漂移检测: ${recommendation}`);
67
68
  }
68
69
  else if (driftRatio > 0) {
69
70
  recommendation = `偏离率 ${(driftRatio * 100).toFixed(0)}%,在可接受范围内。建议关注 ${driftDetails.filter((d) => d.severity === "critical").length} 个严重偏离`;
@@ -71,7 +72,7 @@ export function detectPatternDrift(patterns, codeFiles) {
71
72
  else {
72
73
  recommendation = "代码实现与知识库规范一致,无漂移";
73
74
  }
74
- console.error(`[soloForge] 漂移检测: 完成,检测 ${totalPatterns} 个模式,${driftedPatterns} 个偏离`);
75
+ debugLog(`漂移检测: 完成,检测 ${totalPatterns} 个模式,${driftedPatterns} 个偏离`);
75
76
  return {
76
77
  total_patterns: totalPatterns,
77
78
  drifted_patterns: driftedPatterns,
@@ -172,16 +173,16 @@ const patternLearnCount = new Map();
172
173
  */
173
174
  export async function evolve(input, projectPath) {
174
175
  const { taskContext, result, verifyOutput, failureType, retryCount } = input;
175
- console.error(`[soloForge] 演进器: 开始处理任务 ${taskContext.task_id},结果: ${result}`);
176
+ debugLog(`演进器: 开始处理任务 ${taskContext.task_id},结果: ${result}`);
176
177
  // 跳过 passthrough 任务的学习
177
178
  if (taskContext.classification?.strategy === "skip_soloForge") {
178
- console.error(`[soloForge] 演进器: 任务 ${taskContext.task_id} 为 passthrough 任务,跳过学习`);
179
+ debugLog(`演进器: 任务 ${taskContext.task_id} 为 passthrough 任务,跳过学习`);
179
180
  return { task_id: taskContext.task_id, learned: false, confidence: 0, status: "skipped" };
180
181
  }
181
182
  // 提取知识候选
182
183
  const candidate = extractKnowledge(input);
183
184
  if (!candidate) {
184
- console.error(`[soloForge] 演进器: 任务 ${taskContext.task_id} 无法提取知识候选,跳过`);
185
+ debugLog(`演进器: 任务 ${taskContext.task_id} 无法提取知识候选,跳过`);
185
186
  return { task_id: taskContext.task_id, learned: false, confidence: 0, status: "skipped" };
186
187
  }
187
188
  // 评估置信度
@@ -216,15 +217,15 @@ export async function evolve(input, projectPath) {
216
217
  }
217
218
  // 置信度决策: < 0.3 跳过,>= 0.8 直接采纳,其余暂存等待审核
218
219
  if (confidence < 0.3) {
219
- console.error(`[soloForge] 演进器: 任务 ${taskContext.task_id} 置信度 ${confidence.toFixed(2)} 不足,跳过`);
220
+ debugLog(`演进器: 任务 ${taskContext.task_id} 置信度 ${confidence.toFixed(2)} 不足,跳过`);
220
221
  return { task_id: taskContext.task_id, learned: false, new_knowledge: candidate, confidence, status: "skipped" };
221
222
  }
222
223
  if (confidence >= 0.8) {
223
- console.error(`[soloForge] 演进器: 任务 ${taskContext.task_id} 置信度 ${confidence.toFixed(2)},直接采纳知识 [${candidate.type}]`);
224
+ debugLog(`演进器: 任务 ${taskContext.task_id} 置信度 ${confidence.toFixed(2)},直接采纳知识 [${candidate.type}]`);
224
225
  return { task_id: taskContext.task_id, learned: true, new_knowledge: candidate, confidence, status: "accepted" };
225
226
  }
226
227
  // 暂存等待审核 — 写入文件
227
- console.error(`[soloForge] 演进器: 任务 ${taskContext.task_id} 置信度 ${confidence.toFixed(2)},暂存等待人工审核`);
228
+ debugLog(`演进器: 任务 ${taskContext.task_id} 置信度 ${confidence.toFixed(2)},暂存等待人工审核`);
228
229
  const writer = new KnowledgeWriter(projectPath);
229
230
  const entry = {
230
231
  id: `learned-${Date.now()}`,
@@ -1 +1 @@
1
- {"version":3,"file":"evolver.js","sourceRoot":"","sources":["../../src/engine/evolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evolver.js","sourceRoot":"","sources":["../../src/engine/evolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * 失败报告 — 问题十三 (Failure / Recovery Policy)。
3
+ *
4
+ * 核心规则:
5
+ * - 失败必须分类为明确 FailureClass
6
+ * - deterministic 不无限重试
7
+ * - scope_insufficient 不静默扩大
8
+ * - external_side_effect 部分成功必须记录已发生动作
9
+ * - retry 必须有预算、原因和新证据
10
+ * - unknown failure 不标记 completed
11
+ */
12
+ import { type DiagnosticEvent } from "./diagnostic_registry.js";
13
+ export type FailureClass = "deterministic" | "fixable" | "scope_insufficient" | "external_side_effect" | "state_inconsistent" | "human_required" | "unknown";
14
+ export type RecoveryAction = "retry" | "escalate" | "expand_scope" | "require_human" | "rollback" | "abort";
15
+ export interface FailureReport {
16
+ failure_id: string;
17
+ task_id: string;
18
+ contract_id?: string;
19
+ failure_class: FailureClass;
20
+ /** 脱敏后的摘要,不含 raw output */
21
+ redacted_summary: string;
22
+ /** 稳定内容哈希,用于去重和追溯 */
23
+ error_output_hash: string;
24
+ /** 原始输出不保留,只存 evidence ref */
25
+ evidence_ref?: string;
26
+ retry_count: number;
27
+ retry_budget: number;
28
+ retry_remaining: number;
29
+ occurred_at: string;
30
+ actions_taken: string[];
31
+ external_side_effects?: string[];
32
+ diagnostic_event: DiagnosticEvent | null;
33
+ }
34
+ export interface RecoveryPolicy {
35
+ policy_id: string;
36
+ failure_class: FailureClass;
37
+ max_retries: number;
38
+ action: RecoveryAction;
39
+ requires_new_evidence: boolean;
40
+ requires_human_confirmation: boolean;
41
+ diagnostic_code: string;
42
+ }
43
+ export interface RecoveryAttempt {
44
+ attempt_id: string;
45
+ failure_id: string;
46
+ policy_id: string;
47
+ action: RecoveryAction;
48
+ new_evidence_ids: string[];
49
+ result: "success" | "failure" | "in_progress";
50
+ attempted_at: string;
51
+ }
52
+ /** 按 FailureClass 获取恢复策略 */
53
+ export declare function getRecoveryPolicy(failureClass: FailureClass): RecoveryPolicy | undefined;
54
+ /** 列出所有恢复策略 */
55
+ export declare function listRecoveryPolicies(): RecoveryPolicy[];
56
+ /** 检查是否包含敏感内容 */
57
+ export declare function containsSensitiveContent(content: string): boolean;
58
+ /** 创建失败报告(含自检: 脱敏后仍含敏感内容时强制二次脱敏) */
59
+ export declare function createFailureReport(taskId: string, failureClass: FailureClass, errorOutput: string, retryCount: number, retryBudget: number, contractId?: string, externalSideEffects?: string[]): FailureReport;
60
+ /**
61
+ * 判断是否允许重试。
62
+ * - deterministic 不允许
63
+ * - 超预算不允许
64
+ * - human_required 不允许
65
+ */
66
+ export declare function canRetry(failureClass: FailureClass, retryCount: number, retryBudget: number): boolean;
67
+ /**
68
+ * 验证失败处理规则。
69
+ */
70
+ export declare function validateFailureHandling(report: FailureReport): Array<{
71
+ error: string;
72
+ severity: "hard_fail" | "warning";
73
+ }>;
74
+ //# sourceMappingURL=failure_report.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"failure_report.d.ts","sourceRoot":"","sources":["../../src/engine/failure_report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAyB,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAGvF,MAAM,MAAM,YAAY,GACpB,eAAe,GACf,SAAS,GACT,oBAAoB,GACpB,sBAAsB,GACtB,oBAAoB,GACpB,gBAAgB,GAChB,SAAS,CAAC;AAEd,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,UAAU,GAAG,cAAc,GAAG,eAAe,GAAG,UAAU,GAAG,OAAO,CAAC;AAE5G,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,YAAY,CAAC;IAC5B,2BAA2B;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,gBAAgB,EAAE,eAAe,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,YAAY,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC;IACvB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,2BAA2B,EAAE,OAAO,CAAC;IACrC,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,aAAa,CAAC;IAC9C,YAAY,EAAE,MAAM,CAAC;CACtB;AAoBD,4BAA4B;AAC5B,wBAAgB,iBAAiB,CAAC,YAAY,EAAE,YAAY,GAAG,cAAc,GAAG,SAAS,CAExF;AAED,eAAe;AACf,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAEvD;AAiCD,iBAAiB;AACjB,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,oCAAoC;AACpC,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,EACnB,mBAAmB,CAAC,EAAE,MAAM,EAAE,GAC7B,aAAa,CAkCf;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAKrG;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa,GAAG,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,WAAW,GAAG,SAAS,CAAA;CAAE,CAAC,CAiC1H"}
@@ -0,0 +1,143 @@
1
+ /**
2
+ * 失败报告 — 问题十三 (Failure / Recovery Policy)。
3
+ *
4
+ * 核心规则:
5
+ * - 失败必须分类为明确 FailureClass
6
+ * - deterministic 不无限重试
7
+ * - scope_insufficient 不静默扩大
8
+ * - external_side_effect 部分成功必须记录已发生动作
9
+ * - retry 必须有预算、原因和新证据
10
+ * - unknown failure 不标记 completed
11
+ */
12
+ import { createDiagnosticEvent } from "./diagnostic_registry.js";
13
+ import { createHash } from "node:crypto";
14
+ // 内置恢复策略
15
+ const BUILTIN_RECOVERY_POLICIES = [
16
+ { policy_id: "rp-deterministic", failure_class: "deterministic", max_retries: 0, action: "escalate",
17
+ requires_new_evidence: true, requires_human_confirmation: true, diagnostic_code: "SF-FAILURE-0001" },
18
+ { policy_id: "rp-fixable", failure_class: "fixable", max_retries: 3, action: "retry",
19
+ requires_new_evidence: true, requires_human_confirmation: false, diagnostic_code: "SF-FAILURE-0001" },
20
+ { policy_id: "rp-scope-insufficient", failure_class: "scope_insufficient", max_retries: 1, action: "require_human",
21
+ requires_new_evidence: true, requires_human_confirmation: true, diagnostic_code: "SF-FAILURE-0001" },
22
+ { policy_id: "rp-external-side-effect", failure_class: "external_side_effect", max_retries: 0, action: "rollback",
23
+ requires_new_evidence: true, requires_human_confirmation: true, diagnostic_code: "SF-FAILURE-0002" },
24
+ { policy_id: "rp-state-inconsistent", failure_class: "state_inconsistent", max_retries: 0, action: "abort",
25
+ requires_new_evidence: true, requires_human_confirmation: true, diagnostic_code: "SF-STATE-0001" },
26
+ { policy_id: "rp-human-required", failure_class: "human_required", max_retries: 0, action: "require_human",
27
+ requires_new_evidence: false, requires_human_confirmation: true, diagnostic_code: "SF-FAILURE-0001" },
28
+ { policy_id: "rp-unknown", failure_class: "unknown", max_retries: 0, action: "escalate",
29
+ requires_new_evidence: true, requires_human_confirmation: true, diagnostic_code: "SF-FAILURE-0001" },
30
+ ];
31
+ /** 按 FailureClass 获取恢复策略 */
32
+ export function getRecoveryPolicy(failureClass) {
33
+ return BUILTIN_RECOVERY_POLICIES.find((p) => p.failure_class === failureClass);
34
+ }
35
+ /** 列出所有恢复策略 */
36
+ export function listRecoveryPolicies() {
37
+ return [...BUILTIN_RECOVERY_POLICIES];
38
+ }
39
+ // 敏感内容模式 — raw output/secret/PII
40
+ const SENSITIVE_PATTERNS = [
41
+ /sk-[a-zA-Z0-9]{20,}/, // API key
42
+ /\b\d{11}\b/, // 手机号
43
+ /password\s*[:=]\s*\S+/i, // password=
44
+ /secret\s*[:=]\s*\S+/i, // secret=
45
+ /api_key\s*[:=]\s*\S+/i, // api_key=
46
+ /token\s*[:=]\s*\S+/i, // token=
47
+ /raw_stdout/i, // raw stdout 标记
48
+ /raw_stderr/i, // raw stderr 标记
49
+ ];
50
+ /** 脱敏: 全局替换所有敏感内容,返回 redacted summary */
51
+ function redactErrorOutput(raw) {
52
+ let result = raw;
53
+ // 全局替换所有敏感模式(使用 replaceAll 语义,确保多次出现都处理)
54
+ for (const pattern of SENSITIVE_PATTERNS) {
55
+ result = result.replace(new RegExp(pattern.source, pattern.flags.includes("g") ? pattern.flags : pattern.flags + "g"), "[REDACTED]");
56
+ }
57
+ // 截断防止大段输出
58
+ if (result.length > 200) {
59
+ result = result.substring(0, 200) + "...[truncated]";
60
+ }
61
+ return result;
62
+ }
63
+ /** 稳定内容哈希 */
64
+ function stableHash(content) {
65
+ return createHash("sha256").update(content).digest("hex").substring(0, 16);
66
+ }
67
+ /** 检查是否包含敏感内容 */
68
+ export function containsSensitiveContent(content) {
69
+ return SENSITIVE_PATTERNS.some((p) => p.test(content));
70
+ }
71
+ /** 创建失败报告(含自检: 脱敏后仍含敏感内容时强制二次脱敏) */
72
+ export function createFailureReport(taskId, failureClass, errorOutput, retryCount, retryBudget, contractId, externalSideEffects) {
73
+ const policy = getRecoveryPolicy(failureClass);
74
+ const diagCode = policy?.diagnostic_code ?? "SF-FAILURE-0001";
75
+ const diagEvent = createDiagnosticEvent(diagCode, { failure_class: failureClass, retry_count: retryCount }, contractId, taskId);
76
+ const hash = stableHash(errorOutput);
77
+ let redacted = redactErrorOutput(errorOutput);
78
+ // 自检: 脱敏后仍含敏感内容时强制替换为占位符
79
+ if (containsSensitiveContent(redacted)) {
80
+ redacted = "[内容已全部脱敏,原始输出不可展示]";
81
+ }
82
+ return {
83
+ failure_id: `fr-${taskId}-${hash}`,
84
+ task_id: taskId,
85
+ contract_id: contractId,
86
+ failure_class: failureClass,
87
+ redacted_summary: redacted,
88
+ error_output_hash: hash,
89
+ evidence_ref: undefined,
90
+ retry_count: retryCount,
91
+ retry_budget: retryBudget,
92
+ retry_remaining: Math.max(0, retryBudget - retryCount),
93
+ occurred_at: new Date().toISOString(),
94
+ actions_taken: [],
95
+ external_side_effects: externalSideEffects,
96
+ diagnostic_event: diagEvent,
97
+ };
98
+ }
99
+ /**
100
+ * 判断是否允许重试。
101
+ * - deterministic 不允许
102
+ * - 超预算不允许
103
+ * - human_required 不允许
104
+ */
105
+ export function canRetry(failureClass, retryCount, retryBudget) {
106
+ if (failureClass === "deterministic" || failureClass === "human_required" || failureClass === "unknown") {
107
+ return false;
108
+ }
109
+ return retryCount < retryBudget;
110
+ }
111
+ /**
112
+ * 验证失败处理规则。
113
+ */
114
+ export function validateFailureHandling(report) {
115
+ const errors = [];
116
+ if (report.failure_class === "deterministic" && report.retry_count > 0) {
117
+ errors.push({
118
+ error: `deterministic 失败不应重试,但已重试 ${report.retry_count} 次`,
119
+ severity: "hard_fail",
120
+ });
121
+ }
122
+ if (report.failure_class === "external_side_effect" && !report.external_side_effects) {
123
+ errors.push({
124
+ error: "external_side_effect 失败必须记录已发生动作",
125
+ severity: "hard_fail",
126
+ });
127
+ }
128
+ if (report.retry_remaining < 0) {
129
+ errors.push({
130
+ error: `重试次数超过预算: ${report.retry_count}/${report.retry_budget}`,
131
+ severity: "hard_fail",
132
+ });
133
+ }
134
+ // 红线: redacted_summary 不得包含敏感原文
135
+ if (containsSensitiveContent(report.redacted_summary)) {
136
+ errors.push({
137
+ error: "FailureReport redacted_summary 仍包含敏感内容(secret/PII/raw output)",
138
+ severity: "hard_fail",
139
+ });
140
+ }
141
+ return errors;
142
+ }
143
+ //# sourceMappingURL=failure_report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"failure_report.js","sourceRoot":"","sources":["../../src/engine/failure_report.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import type { DualLayerGovernanceFinding } from "../types.js";
10
10
  import { type OutputArtifact, type ArtifactGovernanceFinding } from "./artifact_contract_registry.js";
11
11
  import { type ConfigResolutionReport, type ConfigEvidenceEntry, type ConfigPrecedenceGovernanceFinding } from "./config_precedence_contract.js";
12
12
  import { type CorePrinciplesReport } from "./core_engineering_principles.js";
13
+ import { type ContractGovernanceFinding } from "./contract_registry.js";
13
14
  export interface PolicySummary {
14
15
  policy_id: string;
15
16
  escape_count: number;
@@ -63,6 +64,13 @@ export interface GovernanceReport {
63
64
  findings: string[];
64
65
  }>;
65
66
  };
67
+ contract_governance?: {
68
+ total_contracts: number;
69
+ hard_fail_count: number;
70
+ warning_count: number;
71
+ advisory_count: number;
72
+ findings: ContractGovernanceFinding[];
73
+ };
66
74
  }
67
75
  /**
68
76
  * 生成治理健康报告。
@@ -88,5 +96,5 @@ export interface GovernanceReport {
88
96
  * @param options - 报告选项,包含审计池和能力状态存储
89
97
  * @returns 治理报告,包含任务统计、逃逸分析和降级建议
90
98
  */
91
- export declare function generateReport(auditStats: AuditPoolStats, auditItems: AuditItem[], escapeReports: EscapeReport[], escapeStats: EscapeReportStats, decisions: ActionDecision[], now?: Date, sampleDecisions?: SamplingDecision[], dualLayerFindings?: DualLayerGovernanceFinding[], dualLayerMechanismCount?: number, artifacts?: OutputArtifact[], configReports?: ConfigResolutionReport[], configEntries?: ConfigEvidenceEntry[], corePrinciples?: CorePrinciplesReport[]): GovernanceReport;
99
+ export declare function generateReport(auditStats: AuditPoolStats, auditItems: AuditItem[], escapeReports: EscapeReport[], escapeStats: EscapeReportStats, decisions: ActionDecision[], now?: Date, sampleDecisions?: SamplingDecision[], dualLayerFindings?: DualLayerGovernanceFinding[], dualLayerMechanismCount?: number, artifacts?: OutputArtifact[], configReports?: ConfigResolutionReport[], configEntries?: ConfigEvidenceEntry[], corePrinciples?: CorePrinciplesReport[], contractFindings?: ContractGovernanceFinding[], totalRegistryContracts?: number): GovernanceReport;
92
100
  //# sourceMappingURL=governance_report.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"governance_report.d.ts","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"governance_report.d.ts","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"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"}
@@ -44,14 +44,14 @@ function deepCopySummary(summary) {
44
44
  * @param options - 报告选项,包含审计池和能力状态存储
45
45
  * @returns 治理报告,包含任务统计、逃逸分析和降级建议
46
46
  */
47
- export function generateReport(auditStats, auditItems, escapeReports, escapeStats, decisions, now, sampleDecisions, dualLayerFindings, dualLayerMechanismCount, artifacts, configReports, configEntries, corePrinciples) {
47
+ export function generateReport(auditStats, auditItems, escapeReports, escapeStats, decisions, now, sampleDecisions, dualLayerFindings, dualLayerMechanismCount, artifacts, configReports, configEntries, corePrinciples, contractFindings, totalRegistryContracts) {
48
48
  console.error("[soloForge] 治理报告: 生成治理健康报告");
49
49
  const nonFPReports = escapeReports.filter((r) => r.failure_type !== "false_positive");
50
50
  const fpReports = escapeReports.filter((r) => r.failure_type === "false_positive");
51
51
  const sampledCount = sampleDecisions
52
52
  ? sampleDecisions.filter((d) => d.should_sample).length
53
53
  : null;
54
- // Build per-policy summary from decisions
54
+ // 从决策构建每个策略的汇总
55
55
  const policyMap = new Map();
56
56
  for (const decision of decisions) {
57
57
  const pid = decision.policy_id;
@@ -64,13 +64,13 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
64
64
  action: deepCopyDecision(decision),
65
65
  });
66
66
  }
67
- // Danger policies: any policy with escapes and a non-keep action
67
+ // 危险策略: 有逃逸且非 keep 动作的策略
68
68
  console.error("[soloForge] 治理报告: 识别危险策略,总决策数=" + decisions.length);
69
69
  const dangerPolicies = [...policyMap.values()]
70
70
  .filter((p) => p.escape_count > 0 && p.action.recommended_action !== "keep")
71
71
  .sort((a, b) => b.escape_count - a.escape_count)
72
72
  .map(deepCopySummary);
73
- // Downgrade candidates: action is downgrade or disable
73
+ // 降级候选: 动作为 downgrade disable
74
74
  console.error("[soloForge] 治理报告: 识别降级候选策略");
75
75
  const downgradeCandidates = [...policyMap.values()]
76
76
  .filter((p) => p.action.recommended_action === "downgrade" || p.action.recommended_action === "disable")
@@ -79,7 +79,7 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
79
79
  return priority(a.action) - priority(b.action);
80
80
  })
81
81
  .map(deepCopySummary);
82
- // Top fixes: non-FP escape reports sorted by due_date, capped at 5
82
+ // Top fixes: FP 逃逸报告按 due_date 排序,最多 5
83
83
  console.error("[soloForge] 治理报告: 整理 top fixes,非误报逃逸数=" + nonFPReports.length);
84
84
  const topFixes = nonFPReports
85
85
  .slice()
@@ -93,7 +93,7 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
93
93
  owner: r.owner,
94
94
  due_date: r.due_date,
95
95
  }));
96
- // Dual-layer mechanism summary
96
+ // 双层机制汇总
97
97
  if (dualLayerFindings)
98
98
  console.error("[soloForge] 治理报告: 双层机制发现数=" + dualLayerFindings.length);
99
99
  const dlHardFails = (dualLayerFindings ?? []).filter((f) => f.severity === "hard_fail");
@@ -107,7 +107,7 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
107
107
  findings: [...dualLayerFindings],
108
108
  }
109
109
  : undefined;
110
- // Artifact governance
110
+ // 制品治理
111
111
  if (artifacts && artifacts.length > 0)
112
112
  console.error("[soloForge] 治理报告: 检查制品契约,制品数=" + artifacts.length);
113
113
  let artifactGovernance;
@@ -120,7 +120,7 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
120
120
  findings,
121
121
  };
122
122
  }
123
- // Config precedence governance
123
+ // 配置优先级治理
124
124
  if (configReports && configReports.length > 0)
125
125
  console.error("[soloForge] 治理报告: 检查配置优先级契约,报告数=" + configReports.length);
126
126
  let configPrecedenceGovernance;
@@ -132,12 +132,12 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
132
132
  findings: cpFindings,
133
133
  };
134
134
  }
135
- // Core principles governance
135
+ // 核心原则治理
136
136
  if (corePrinciples && corePrinciples.length > 0)
137
137
  console.error("[soloForge] 治理报告: 检查核心原则遵循性,报告数=" + corePrinciples.length);
138
138
  let corePrinciplesGovernance;
139
139
  if (corePrinciples && corePrinciples.length > 0) {
140
- // Merge all reports into a summary
140
+ // 合并所有报告为汇总
141
141
  const latestReport = corePrinciples[corePrinciples.length - 1];
142
142
  corePrinciplesGovernance = {
143
143
  task_level: latestReport.task_level,
@@ -149,6 +149,19 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
149
149
  })),
150
150
  };
151
151
  }
152
+ // 契约治理汇总
153
+ if (contractFindings && contractFindings.length > 0)
154
+ console.error("[soloForge] 治理报告: 检查契约治理,发现数=" + contractFindings.length);
155
+ let contractGovernance;
156
+ if (contractFindings) {
157
+ contractGovernance = {
158
+ total_contracts: totalRegistryContracts ?? new Set(contractFindings.map((f) => f.contract_id)).size,
159
+ hard_fail_count: contractFindings.filter((f) => f.severity === "hard_fail").length,
160
+ warning_count: contractFindings.filter((f) => f.severity === "warning").length,
161
+ advisory_count: contractFindings.filter((f) => f.severity === "advisory").length,
162
+ findings: [...contractFindings],
163
+ };
164
+ }
152
165
  return {
153
166
  generated_at: (now ?? new Date()).toISOString(),
154
167
  total_tasks: auditStats.total,
@@ -164,6 +177,7 @@ export function generateReport(auditStats, auditItems, escapeReports, escapeStat
164
177
  artifact_governance: artifactGovernance,
165
178
  config_precedence_governance: configPrecedenceGovernance,
166
179
  core_principles_governance: corePrinciplesGovernance,
180
+ contract_governance: contractGovernance,
167
181
  };
168
182
  }
169
183
  //# sourceMappingURL=governance_report.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"governance_report.js","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,yBAAyB,EAAuD,MAAM,iCAAiC,CAAC;AACjI,OAAO,EAAE,wBAAwB,EAAiG,MAAM,iCAAiC,CAAC;AA6D1K,SAAS,YAAY,CAAC,IAAgB;IACpC,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;AACrB,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAwB;IAChD,OAAO;QACL,GAAG,QAAQ;QACX,YAAY,EAAE,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC;QACxC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAsB;IAC7C,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC;KACzC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,UAA0B,EAC1B,UAAuB,EACvB,aAA6B,EAC7B,WAA8B,EAC9B,SAA2B,EAC3B,GAAU,EACV,eAAoC,EACpC,iBAAgD,EAChD,uBAAgC,EAChC,SAA4B,EAC5B,aAAwC,EACxC,aAAqC,EACrC,cAAuC;IAEvC,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAE5C,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,gBAAgB,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,gBAAgB,CAAC,CAAC;IAEnF,MAAM,YAAY,GAAG,eAAe;QAClC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,MAAM;QACvD,CAAC,CAAC,IAAI,CAAC;IAET,0CAA0C;IAC1C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAyB,CAAC;IAEnD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC;QAC/B,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,CAAC,CAAC;QAE9D,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE;YACjB,SAAS,EAAE,GAAG;YACd,YAAY,EAAE,aAAa,CAAC,MAAM;YAClC,oBAAoB,EAAE,QAAQ,CAAC,MAAM;YACrC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC;SACnC,CAAC,CAAC;IACL,CAAC;IAED,iEAAiE;IACjE,OAAO,CAAC,KAAK,CAAC,gCAAgC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,cAAc,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;SAC3C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,kBAAkB,KAAK,MAAM,CAAC;SAC3E,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;SAC/C,GAAG,CAAC,eAAe,CAAC,CAAC;IAExB,uDAAuD;IACvD,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC5C,MAAM,mBAAmB,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;SAChD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,KAAK,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC,kBAAkB,KAAK,SAAS,CAAC;SACvG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,MAAM,QAAQ,GAAG,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC,CAAC;SACD,GAAG,CAAC,eAAe,CAAC,CAAC;IAExB,mEAAmE;IACnE,OAAO,CAAC,KAAK,CAAC,wCAAwC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAa,YAAY;SACpC,KAAK,EAAE;SACP,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;SACpD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,CAAC,CAAC,CAAC;IAEN,+BAA+B;IAC/B,IAAI,iBAAiB;QAAE,OAAO,CAAC,KAAK,CAAC,4BAA4B,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC9F,MAAM,WAAW,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC;IACtF,MAAM,SAAS,GAAiC,iBAAiB;QAC/D,CAAC,CAAC;YACE,gBAAgB,EAAE,uBAAuB,IAAI,CAAC;YAC9C,yBAAyB,EAAE,CAAC,uBAAuB,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM;YAC9E,eAAe,EAAE,WAAW,CAAC,MAAM;YACnC,cAAc,EAAE,UAAU,CAAC,MAAM;YACjC,QAAQ,EAAE,CAAC,GAAG,iBAAiB,CAAC;SACjC;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,uBAAuB;IACvB,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,+BAA+B,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACzG,IAAI,kBAA2D,CAAC;IAChE,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACtD,kBAAkB,GAAG;YACnB,cAAc,EAAE,SAAS,CAAC,MAAM;YAChC,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,MAAM;YACxE,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,MAAM;YACtE,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,gCAAgC;IAChC,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,kCAAkC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACxH,IAAI,0BAA4E,CAAC;IACjF,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,wBAAwB,CAAC,aAAa,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;QAChF,0BAA0B,GAAG;YAC3B,eAAe,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,MAAM;YAC1E,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,MAAM;YACxE,QAAQ,EAAE,UAAU;SACrB,CAAC;IACJ,CAAC;IAED,8BAA8B;IAC9B,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,KAAK,CAAC,kCAAkC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3H,IAAI,wBAAwE,CAAC;IAC7E,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,mCAAmC;QACnC,MAAM,YAAY,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/D,wBAAwB,GAAG;YACzB,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,cAAc,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;YAC3D,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC5C,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY,EAAE,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE;QAC/C,WAAW,EAAE,UAAU,CAAC,KAAK;QAC7B,aAAa,EAAE,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE;QACxC,aAAa,EAAE,YAAY;QAC3B,aAAa,EAAE,YAAY,CAAC,MAAM;QAClC,qBAAqB,EAAE,SAAS,CAAC,MAAM;QACvC,cAAc,EAAE,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;QAC1C,eAAe,EAAE,cAAc;QAC/B,oBAAoB,EAAE,mBAAmB;QACzC,SAAS,EAAE,QAAQ;QACnB,kBAAkB,EAAE,SAAS;QAC7B,mBAAmB,EAAE,kBAAkB;QACvC,4BAA4B,EAAE,0BAA0B;QACxD,0BAA0B,EAAE,wBAAwB;KACrD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"governance_report.js","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * 将 42 个追踪问题映射到 4 个实施批次(P0-P3),
5
5
  * 提供查询、校验和跨注册表一致性检查能力。
6
6
  */
7
- export type ProblemStatus = "completed" | "in_progress" | "planned" | "not_started";
7
+ export type ProblemStatus = "completed" | "implemented_verified" | "implemented" | "in_progress" | "planned" | "not_started";
8
8
  export type ProblemPriority = "pre_completed" | "P0" | "P1" | "P2" | "P3";
9
9
  export interface ProblemEntry {
10
10
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"implementation_roadmap_registry.d.ts","sourceRoot":"","sources":["../../src/engine/implementation_roadmap_registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,aAAa,GACb,SAAS,GACT,aAAa,CAAC;AAElB,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE1E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AA+iBD;;;GAGG;AACH,wBAAgB,eAAe,IAAI,YAAY,EAAE,CAGhD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,EAAE,CAG1E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,CAGnE;AAID;;;GAGG;AACH,wBAAgB,WAAW,IAAI,mBAAmB,EAAE,CAGnD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAIzE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAc9D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQxD;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAKvE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAK3E;AAID;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,GAAE,SAAS,YAAY,EAAoB,EACnD,OAAO,GAAE,SAAS,mBAAmB,EAA2B,GAC/D,wBAAwB,EAAE,CA+I5B"}
1
+ {"version":3,"file":"implementation_roadmap_registry.d.ts","sourceRoot":"","sources":["../../src/engine/implementation_roadmap_registry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,aAAa,GACrB,WAAW,GACX,sBAAsB,GACtB,aAAa,GACb,aAAa,GACb,SAAS,GACT,aAAa,CAAC;AAElB,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE1E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,QAAQ,EAAE,eAAe,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,wBAAwB,EAAE,MAAM,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAujBD;;;GAGG;AACH,wBAAgB,eAAe,IAAI,YAAY,EAAE,CAGhD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAIpE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,aAAa,GAAG,YAAY,EAAE,CAG1E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE,CAGnE;AAID;;;GAGG;AACH,wBAAgB,WAAW,IAAI,mBAAmB,EAAE,CAGnD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAIzE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAc9D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAQxD;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAKvE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAK3E;AAID;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,GAAE,SAAS,YAAY,EAAoB,EACnD,OAAO,GAAE,SAAS,mBAAmB,EAA2B,GAC/D,wBAAwB,EAAE,CA+I5B"}