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.
- package/dist/adapters/claude_code/pre_prompt_contract.js +2 -2
- package/dist/adapters/claude_code/pre_prompt_contract.js.map +1 -1
- package/dist/adapters/claude_code/server.d.ts.map +1 -1
- package/dist/adapters/claude_code/server.js +4 -2
- package/dist/adapters/claude_code/server.js.map +1 -1
- package/dist/adapters/claude_code/tools.d.ts +2 -2
- package/dist/adapters/claude_code/tools.d.ts.map +1 -1
- package/dist/adapters/claude_code/tools.js +348 -171
- package/dist/adapters/claude_code/tools.js.map +1 -1
- package/dist/adapters/codex/codex_config.d.ts.map +1 -1
- package/dist/adapters/codex/codex_config.js +16 -4
- package/dist/adapters/codex/codex_config.js.map +1 -1
- package/dist/adapters/trae/trae_config.d.ts +2 -1
- package/dist/adapters/trae/trae_config.d.ts.map +1 -1
- package/dist/adapters/trae/trae_config.js +4 -3
- package/dist/adapters/trae/trae_config.js.map +1 -1
- package/dist/bin/config_commands.d.ts +1 -1
- package/dist/bin/config_commands.js +4 -4
- package/dist/bin/config_commands.js.map +1 -1
- package/dist/bin/soloforge.d.ts.map +1 -1
- package/dist/bin/soloforge.js +85 -110
- package/dist/bin/soloforge.js.map +1 -1
- package/dist/engine/artifact_contract_registry.d.ts.map +1 -1
- package/dist/engine/artifact_contract_registry.js.map +1 -1
- package/dist/engine/audit_sampler.d.ts.map +1 -1
- package/dist/engine/audit_sampler.js +0 -4
- package/dist/engine/audit_sampler.js.map +1 -1
- package/dist/engine/batch1_manifest.d.ts.map +1 -1
- package/dist/engine/batch1_manifest.js +0 -7
- package/dist/engine/batch1_manifest.js.map +1 -1
- package/dist/engine/batch1_scenario_registry.js +7 -7
- package/dist/engine/batch1_scenario_registry.js.map +1 -1
- package/dist/engine/batch1_scenario_runners.js +32 -32
- package/dist/engine/batch1_scenario_runners.js.map +1 -1
- package/dist/engine/capability_action_advisor.js +16 -16
- package/dist/engine/capability_action_advisor.js.map +1 -1
- package/dist/engine/classifier.d.ts.map +1 -1
- package/dist/engine/classifier.js +4 -3
- package/dist/engine/classifier.js.map +1 -1
- package/dist/engine/code_reviewer.d.ts.map +1 -1
- package/dist/engine/code_reviewer.js +10 -9
- package/dist/engine/code_reviewer.js.map +1 -1
- package/dist/engine/command_execution_contract.js +14 -14
- package/dist/engine/command_execution_contract.js.map +1 -1
- package/dist/engine/contract_registry.d.ts +113 -0
- package/dist/engine/contract_registry.d.ts.map +1 -0
- package/dist/engine/contract_registry.js +1159 -0
- package/dist/engine/contract_registry.js.map +1 -0
- package/dist/engine/contract_state_store.d.ts +67 -0
- package/dist/engine/contract_state_store.d.ts.map +1 -0
- package/dist/engine/contract_state_store.js +167 -0
- package/dist/engine/contract_state_store.js.map +1 -0
- package/dist/engine/debug_log.d.ts +2 -0
- package/dist/engine/debug_log.d.ts.map +1 -0
- package/dist/engine/debug_log.js +7 -0
- package/dist/engine/debug_log.js.map +1 -0
- package/dist/engine/debugger.d.ts.map +1 -1
- package/dist/engine/debugger.js +30 -1
- package/dist/engine/debugger.js.map +1 -1
- package/dist/engine/degradation.d.ts +58 -0
- package/dist/engine/degradation.d.ts.map +1 -0
- package/dist/engine/degradation.js +74 -0
- package/dist/engine/degradation.js.map +1 -0
- package/dist/engine/delivery_readiness.d.ts +66 -0
- package/dist/engine/delivery_readiness.d.ts.map +1 -0
- package/dist/engine/delivery_readiness.js +176 -0
- package/dist/engine/delivery_readiness.js.map +1 -0
- package/dist/engine/deprecated_contract.d.ts +21 -0
- package/dist/engine/deprecated_contract.d.ts.map +1 -0
- package/dist/engine/deprecated_contract.js +14 -0
- package/dist/engine/deprecated_contract.js.map +1 -0
- package/dist/engine/developer_sovereignty.js +15 -15
- package/dist/engine/developer_sovereignty.js.map +1 -1
- package/dist/engine/diagnostic_registry.d.ts +64 -0
- package/dist/engine/diagnostic_registry.d.ts.map +1 -0
- package/dist/engine/diagnostic_registry.js +176 -0
- package/dist/engine/diagnostic_registry.js.map +1 -0
- package/dist/engine/diff_ownership_store.d.ts.map +1 -1
- package/dist/engine/diff_ownership_store.js +1 -2
- package/dist/engine/diff_ownership_store.js.map +1 -1
- package/dist/engine/dual_layer_mechanism_registry.js +1 -1
- package/dist/engine/dual_layer_mechanism_registry.js.map +1 -1
- package/dist/engine/enforcement_guard.d.ts +84 -0
- package/dist/engine/enforcement_guard.d.ts.map +1 -0
- package/dist/engine/enforcement_guard.js +305 -0
- package/dist/engine/enforcement_guard.js.map +1 -0
- package/dist/engine/evolver.d.ts.map +1 -1
- package/dist/engine/evolver.js +11 -10
- package/dist/engine/evolver.js.map +1 -1
- package/dist/engine/failure_report.d.ts +74 -0
- package/dist/engine/failure_report.d.ts.map +1 -0
- package/dist/engine/failure_report.js +143 -0
- package/dist/engine/failure_report.js.map +1 -0
- package/dist/engine/governance_report.d.ts +9 -1
- package/dist/engine/governance_report.d.ts.map +1 -1
- package/dist/engine/governance_report.js +24 -10
- package/dist/engine/governance_report.js.map +1 -1
- package/dist/engine/implementation_roadmap_registry.d.ts +1 -1
- package/dist/engine/implementation_roadmap_registry.d.ts.map +1 -1
- package/dist/engine/implementation_roadmap_registry.js +37 -29
- package/dist/engine/implementation_roadmap_registry.js.map +1 -1
- package/dist/engine/input_material_extractor.js +3 -3
- package/dist/engine/input_material_extractor.js.map +1 -1
- package/dist/engine/intent_expander.d.ts.map +1 -1
- package/dist/engine/intent_expander.js +15 -14
- package/dist/engine/intent_expander.js.map +1 -1
- package/dist/engine/intent_router.d.ts.map +1 -1
- package/dist/engine/intent_router.js +17 -16
- package/dist/engine/intent_router.js.map +1 -1
- package/dist/engine/java_quality_guard.js +10 -10
- package/dist/engine/java_quality_guard.js.map +1 -1
- package/dist/engine/knowledge_injection_boundary.d.ts +1 -1
- package/dist/engine/knowledge_injection_boundary.d.ts.map +1 -1
- package/dist/engine/knowledge_injection_boundary.js +61 -60
- package/dist/engine/knowledge_injection_boundary.js.map +1 -1
- package/dist/engine/knowledge_lifecycle.d.ts +23 -0
- package/dist/engine/knowledge_lifecycle.d.ts.map +1 -0
- package/dist/engine/knowledge_lifecycle.js +13 -0
- package/dist/engine/knowledge_lifecycle.js.map +1 -0
- package/dist/engine/language_policy.d.ts +21 -0
- package/dist/engine/language_policy.d.ts.map +1 -0
- package/dist/engine/language_policy.js +18 -0
- package/dist/engine/language_policy.js.map +1 -0
- package/dist/engine/language_policy_contract.d.ts +52 -0
- package/dist/engine/language_policy_contract.d.ts.map +1 -0
- package/dist/engine/language_policy_contract.js +78 -0
- package/dist/engine/language_policy_contract.js.map +1 -0
- package/dist/engine/main_path_integration_contract.js +16 -16
- package/dist/engine/main_path_integration_contract.js.map +1 -1
- package/dist/engine/mechanism_contract_registry.d.ts +3 -4
- package/dist/engine/mechanism_contract_registry.d.ts.map +1 -1
- package/dist/engine/mechanism_contract_registry.js +23 -24
- package/dist/engine/mechanism_contract_registry.js.map +1 -1
- package/dist/engine/mechanism_family_registry.d.ts +48 -0
- package/dist/engine/mechanism_family_registry.d.ts.map +1 -0
- package/dist/engine/mechanism_family_registry.js +197 -0
- package/dist/engine/mechanism_family_registry.js.map +1 -0
- package/dist/engine/onboarding.js +20 -20
- package/dist/engine/onboarding.js.map +1 -1
- package/dist/engine/policy_drift_detector.d.ts +20 -0
- package/dist/engine/policy_drift_detector.d.ts.map +1 -1
- package/dist/engine/policy_drift_detector.js +79 -0
- package/dist/engine/policy_drift_detector.js.map +1 -1
- package/dist/engine/privacy_secret_contract.d.ts.map +1 -1
- package/dist/engine/privacy_secret_contract.js +49 -48
- package/dist/engine/privacy_secret_contract.js.map +1 -1
- package/dist/engine/regression_matrix.js +21 -21
- package/dist/engine/regression_matrix.js.map +1 -1
- package/dist/engine/retention_policy.d.ts +46 -0
- package/dist/engine/retention_policy.d.ts.map +1 -0
- package/dist/engine/retention_policy.js +124 -0
- package/dist/engine/retention_policy.js.map +1 -0
- package/dist/engine/route_decision_contract_verifier.js +24 -24
- package/dist/engine/route_decision_contract_verifier.js.map +1 -1
- package/dist/engine/scope_controller.d.ts.map +1 -1
- package/dist/engine/scope_controller.js +4 -3
- package/dist/engine/scope_controller.js.map +1 -1
- package/dist/engine/scope_lease.d.ts.map +1 -1
- package/dist/engine/scope_lease.js +0 -1
- package/dist/engine/scope_lease.js.map +1 -1
- package/dist/engine/state_update_bypass.d.ts +19 -0
- package/dist/engine/state_update_bypass.d.ts.map +1 -0
- package/dist/engine/state_update_bypass.js +17 -0
- package/dist/engine/state_update_bypass.js.map +1 -0
- package/dist/engine/task_context.d.ts.map +1 -1
- package/dist/engine/task_context.js +11 -3
- package/dist/engine/task_context.js.map +1 -1
- package/dist/engine/test_generator.js +8 -8
- package/dist/engine/test_generator.js.map +1 -1
- package/dist/engine/test_strategy.d.ts +58 -0
- package/dist/engine/test_strategy.d.ts.map +1 -0
- package/dist/engine/test_strategy.js +93 -0
- package/dist/engine/test_strategy.js.map +1 -0
- package/dist/engine/tool_invocation_contract_registry.d.ts.map +1 -1
- package/dist/engine/tool_invocation_contract_registry.js +29 -19
- package/dist/engine/tool_invocation_contract_registry.js.map +1 -1
- package/dist/engine/traceability.js +6 -6
- package/dist/engine/traceability.js.map +1 -1
- package/dist/engine/user_feedback_contract.js +9 -9
- package/dist/engine/user_feedback_contract.js.map +1 -1
- package/dist/engine/verification_contract.d.ts +132 -0
- package/dist/engine/verification_contract.d.ts.map +1 -0
- package/dist/engine/verification_contract.js +296 -0
- package/dist/engine/verification_contract.js.map +1 -0
- package/dist/engine/verifier.d.ts.map +1 -1
- package/dist/engine/verifier.js +9 -8
- package/dist/engine/verifier.js.map +1 -1
- package/dist/engine/workspace_lease.d.ts +69 -0
- package/dist/engine/workspace_lease.d.ts.map +1 -0
- package/dist/engine/workspace_lease.js +153 -0
- package/dist/engine/workspace_lease.js.map +1 -0
- package/dist/engine/zero_config_init.d.ts.map +1 -1
- package/dist/engine/zero_config_init.js +84 -84
- package/dist/engine/zero_config_init.js.map +1 -1
- package/dist/git/operations.js +1 -1
- package/dist/git/operations.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -11
- package/dist/index.js.map +1 -1
- package/dist/knowledge/index_manager.d.ts.map +1 -1
- package/dist/knowledge/index_manager.js +18 -17
- package/dist/knowledge/index_manager.js.map +1 -1
- package/dist/knowledge/loader.js +2 -2
- package/dist/knowledge/loader.js.map +1 -1
- package/dist/types.d.ts +13 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -2
package/dist/engine/evolver.js
CHANGED
|
@@ -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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
176
|
+
debugLog(`演进器: 开始处理任务 ${taskContext.task_id},结果: ${result}`);
|
|
176
177
|
// 跳过 passthrough 任务的学习
|
|
177
178
|
if (taskContext.classification?.strategy === "skip_soloForge") {
|
|
178
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,gCAAgC,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAA6B,KAAK,cAAc,EAAE,KAAK,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjI,OAAO,EAA4B,KAAK,sBAAsB,EAAE,KAAK,mBAAmB,EAAE,KAAK,iCAAiC,EAAE,MAAM,iCAAiC,CAAC;AAC1K,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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:
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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
|
-
//
|
|
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;
|
|
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;
|
|
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"}
|