soloforge 1.2.2 → 1.2.4
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/README.md +229 -28
- package/dist/adapters/claude_code/tools.d.ts.map +1 -1
- package/dist/adapters/claude_code/tools.js +319 -5
- package/dist/adapters/claude_code/tools.js.map +1 -1
- package/dist/adapters/shared/workflow_template.d.ts.map +1 -1
- package/dist/adapters/shared/workflow_template.js +26 -3
- package/dist/adapters/shared/workflow_template.js.map +1 -1
- package/dist/bin/soloforge.js +169 -13
- package/dist/bin/soloforge.js.map +1 -1
- package/dist/engine/audit_pool.d.ts +36 -0
- package/dist/engine/audit_pool.d.ts.map +1 -0
- package/dist/engine/audit_pool.js +83 -0
- package/dist/engine/audit_pool.js.map +1 -0
- package/dist/engine/audit_sampler.d.ts +15 -0
- package/dist/engine/audit_sampler.d.ts.map +1 -0
- package/dist/engine/audit_sampler.js +26 -0
- package/dist/engine/audit_sampler.js.map +1 -0
- package/dist/engine/capability_action_advisor.d.ts +24 -0
- package/dist/engine/capability_action_advisor.d.ts.map +1 -0
- package/dist/engine/capability_action_advisor.js +147 -0
- package/dist/engine/capability_action_advisor.js.map +1 -0
- package/dist/engine/capability_registry.d.ts +23 -1
- package/dist/engine/capability_registry.d.ts.map +1 -1
- package/dist/engine/capability_registry.js +511 -19
- package/dist/engine/capability_registry.js.map +1 -1
- package/dist/engine/capability_state_store.d.ts +50 -0
- package/dist/engine/capability_state_store.d.ts.map +1 -0
- package/dist/engine/capability_state_store.js +123 -0
- package/dist/engine/capability_state_store.js.map +1 -0
- package/dist/engine/cognitive_anchor.d.ts +59 -0
- package/dist/engine/cognitive_anchor.d.ts.map +1 -0
- package/dist/engine/cognitive_anchor.js +68 -0
- package/dist/engine/cognitive_anchor.js.map +1 -0
- package/dist/engine/conflict_gate.d.ts +36 -0
- package/dist/engine/conflict_gate.d.ts.map +1 -0
- package/dist/engine/conflict_gate.js +73 -0
- package/dist/engine/conflict_gate.js.map +1 -0
- package/dist/engine/decision_contract.d.ts +29 -0
- package/dist/engine/decision_contract.d.ts.map +1 -0
- package/dist/engine/decision_contract.js +41 -0
- package/dist/engine/decision_contract.js.map +1 -0
- package/dist/engine/delivery.d.ts.map +1 -1
- package/dist/engine/delivery.js +83 -0
- package/dist/engine/delivery.js.map +1 -1
- package/dist/engine/developer_sovereignty.d.ts +62 -0
- package/dist/engine/developer_sovereignty.d.ts.map +1 -0
- package/dist/engine/developer_sovereignty.js +134 -0
- package/dist/engine/developer_sovereignty.js.map +1 -0
- package/dist/engine/diff_ownership.d.ts +74 -0
- package/dist/engine/diff_ownership.d.ts.map +1 -0
- package/dist/engine/diff_ownership.js +143 -0
- package/dist/engine/diff_ownership.js.map +1 -0
- package/dist/engine/diff_ownership_store.d.ts +76 -0
- package/dist/engine/diff_ownership_store.d.ts.map +1 -0
- package/dist/engine/diff_ownership_store.js +264 -0
- package/dist/engine/diff_ownership_store.js.map +1 -0
- package/dist/engine/escape_report.d.ts +45 -0
- package/dist/engine/escape_report.d.ts.map +1 -0
- package/dist/engine/escape_report.js +97 -0
- package/dist/engine/escape_report.js.map +1 -0
- package/dist/engine/exploration.d.ts +54 -0
- package/dist/engine/exploration.d.ts.map +1 -1
- package/dist/engine/exploration.js +138 -0
- package/dist/engine/exploration.js.map +1 -1
- package/dist/engine/governance_report.d.ts +36 -0
- package/dist/engine/governance_report.d.ts.map +1 -0
- package/dist/engine/governance_report.js +79 -0
- package/dist/engine/governance_report.js.map +1 -0
- package/dist/engine/java_quality_guard.d.ts +52 -0
- package/dist/engine/java_quality_guard.d.ts.map +1 -0
- package/dist/engine/java_quality_guard.js +237 -0
- package/dist/engine/java_quality_guard.js.map +1 -0
- package/dist/engine/job_manager.d.ts +76 -0
- package/dist/engine/job_manager.d.ts.map +1 -0
- package/dist/engine/job_manager.js +225 -0
- package/dist/engine/job_manager.js.map +1 -0
- package/dist/engine/knowledge_sovereignty.d.ts +61 -0
- package/dist/engine/knowledge_sovereignty.d.ts.map +1 -0
- package/dist/engine/knowledge_sovereignty.js +190 -0
- package/dist/engine/knowledge_sovereignty.js.map +1 -0
- package/dist/engine/mutation_audit.d.ts +43 -0
- package/dist/engine/mutation_audit.d.ts.map +1 -0
- package/dist/engine/mutation_audit.js +118 -0
- package/dist/engine/mutation_audit.js.map +1 -0
- package/dist/engine/policy_drift_detector.d.ts +46 -0
- package/dist/engine/policy_drift_detector.d.ts.map +1 -0
- package/dist/engine/policy_drift_detector.js +181 -0
- package/dist/engine/policy_drift_detector.js.map +1 -0
- package/dist/engine/regression_matrix.d.ts +102 -0
- package/dist/engine/regression_matrix.d.ts.map +1 -0
- package/dist/engine/regression_matrix.js +380 -0
- package/dist/engine/regression_matrix.js.map +1 -0
- package/dist/engine/risk_sampler.d.ts +37 -0
- package/dist/engine/risk_sampler.d.ts.map +1 -0
- package/dist/engine/risk_sampler.js +69 -0
- package/dist/engine/risk_sampler.js.map +1 -0
- package/dist/engine/runtime_safety.d.ts +80 -0
- package/dist/engine/runtime_safety.d.ts.map +1 -0
- package/dist/engine/runtime_safety.js +195 -0
- package/dist/engine/runtime_safety.js.map +1 -0
- package/dist/engine/scope_lease.d.ts +45 -0
- package/dist/engine/scope_lease.d.ts.map +1 -0
- package/dist/engine/scope_lease.js +122 -0
- package/dist/engine/scope_lease.js.map +1 -0
- package/dist/engine/semantic_evidence.d.ts +23 -0
- package/dist/engine/semantic_evidence.d.ts.map +1 -0
- package/dist/engine/semantic_evidence.js +81 -0
- package/dist/engine/semantic_evidence.js.map +1 -0
- package/dist/engine/task_context.d.ts +16 -0
- package/dist/engine/task_context.d.ts.map +1 -1
- package/dist/engine/task_context.js +58 -0
- package/dist/engine/task_context.js.map +1 -1
- package/dist/engine/verifier.d.ts.map +1 -1
- package/dist/engine/verifier.js +22 -1
- package/dist/engine/verifier.js.map +1 -1
- package/dist/engine/workspace_resumer.d.ts +43 -0
- package/dist/engine/workspace_resumer.d.ts.map +1 -1
- package/dist/engine/workspace_resumer.js +119 -4
- package/dist/engine/workspace_resumer.js.map +1 -1
- package/dist/engine/zero_config_init.d.ts +87 -0
- package/dist/engine/zero_config_init.d.ts.map +1 -0
- package/dist/engine/zero_config_init.js +427 -0
- package/dist/engine/zero_config_init.js.map +1 -0
- package/dist/knowledge/index_manager.d.ts +19 -0
- package/dist/knowledge/index_manager.d.ts.map +1 -1
- package/dist/knowledge/index_manager.js +31 -0
- package/dist/knowledge/index_manager.js.map +1 -1
- package/dist/knowledge/writer.d.ts.map +1 -1
- package/dist/knowledge/writer.js +1 -0
- package/dist/knowledge/writer.js.map +1 -1
- package/dist/types.d.ts +61 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
- package/templates/knowledge/patterns/core/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md +47 -0
- package/templates/knowledge/patterns/core/Java/350/264/250/351/207/217/351/227/250/347/246/201.md +46 -0
- package/templates/knowledge/patterns/core/LLM/351/242/204/347/256/227/347/275/221/345/205/263.md +46 -0
- package/templates/knowledge/patterns/core//344/273/273/345/212/241/344/270/212/344/270/213/346/226/207/347/224/237/345/221/275/345/221/250/346/234/237.md +47 -0
- package/templates/knowledge/patterns/core//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md +47 -0
- package/templates/knowledge/patterns/core//344/275/234/347/224/250/345/237/237/344/270/216/345/257/206/351/222/245/346/213/246/346/210/252.md +46 -0
- package/templates/knowledge/patterns/core//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md +47 -0
- package/templates/knowledge/patterns/core//345/206/262/347/252/201/351/227/250/347/246/201.md +47 -0
- package/templates/knowledge/patterns/core//345/206/263/347/255/226/347/275/221/345/205/263.md +30 -11
- package/templates/knowledge/patterns/core//345/217/230/345/274/202/345/256/241/350/256/241.md +20 -0
- package/templates/knowledge/patterns/core//345/233/236/345/275/222/347/237/251/351/230/265.md +46 -0
- package/templates/knowledge/patterns/core//345/267/245/344/275/234/345/214/272/344/272/222/346/226/245/351/224/201.md +44 -0
- package/templates/knowledge/patterns/core//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md +46 -0
- package/templates/knowledge/patterns/core//345/271/266/345/217/221/351/224/201.md +29 -16
- package/templates/knowledge/patterns/core//345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md +20 -0
- package/templates/knowledge/patterns/core//346/225/217/346/204/237/344/277/241/346/201/257/346/211/253/346/217/217.md +45 -0
- package/templates/knowledge/patterns/core//346/262/273/347/220/206/350/277/220/350/241/214/346/227/266/345/276/252/347/216/257.md +48 -0
- package/templates/knowledge/patterns/core//346/265/201/345/274/217/345/277/203/350/267/263.md +20 -0
- package/templates/knowledge/patterns/core//347/237/245/350/257/206/344/270/273/346/235/203.md +20 -0
- package/templates/knowledge/patterns/core//350/257/255/344/271/211/350/257/201/346/215/256.md +47 -0
- package/templates/knowledge/patterns/core//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md +50 -0
- package/templates/knowledge/patterns/core//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226.md +47 -0
- package/templates/knowledge/patterns/core//351/252/214/350/257/201/345/221/275/344/273/244/347/224/237/346/210/220.md +46 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exploration.js","sourceRoot":"","sources":["../../src/engine/exploration.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"exploration.js","sourceRoot":"","sources":["../../src/engine/exploration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 治理健康报告 — 汇总 audit pool、escape reports、capability action decisions、sample decisions。
|
|
3
|
+
* P2-5+P2-6 范围: 只读报告,不改状态。
|
|
4
|
+
*/
|
|
5
|
+
import type { AuditItem, AuditPoolStats } from "./audit_pool.js";
|
|
6
|
+
import type { EscapeReport, EscapeReportStats } from "./escape_report.js";
|
|
7
|
+
import type { ActionDecision } from "./capability_action_advisor.js";
|
|
8
|
+
import type { SamplingDecision } from "./risk_sampler.js";
|
|
9
|
+
export interface PolicySummary {
|
|
10
|
+
policy_id: string;
|
|
11
|
+
escape_count: number;
|
|
12
|
+
false_positive_count: number;
|
|
13
|
+
action: ActionDecision;
|
|
14
|
+
}
|
|
15
|
+
export interface TopFix {
|
|
16
|
+
escape_id: string;
|
|
17
|
+
policy_id: string;
|
|
18
|
+
failure_type: string;
|
|
19
|
+
fix_required: string;
|
|
20
|
+
owner: string;
|
|
21
|
+
due_date: string;
|
|
22
|
+
}
|
|
23
|
+
export interface GovernanceReport {
|
|
24
|
+
generated_at: string;
|
|
25
|
+
total_tasks: number;
|
|
26
|
+
audit_by_risk: Record<string, number>;
|
|
27
|
+
sampled_count: number | null;
|
|
28
|
+
total_escapes: number;
|
|
29
|
+
total_false_positives: number;
|
|
30
|
+
escape_by_type: Record<string, number>;
|
|
31
|
+
danger_policies: PolicySummary[];
|
|
32
|
+
downgrade_candidates: PolicySummary[];
|
|
33
|
+
top_fixes: TopFix[];
|
|
34
|
+
}
|
|
35
|
+
export declare function generateReport(auditStats: AuditPoolStats, auditItems: AuditItem[], escapeReports: EscapeReport[], escapeStats: EscapeReportStats, decisions: ActionDecision[], now?: Date, sampleDecisions?: SamplingDecision[]): GovernanceReport;
|
|
36
|
+
//# sourceMappingURL=governance_report.d.ts.map
|
|
@@ -0,0 +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;AAE1D,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,MAAM,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,MAAM;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,oBAAoB,EAAE,aAAa,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAqBD,wBAAgB,cAAc,CAC5B,UAAU,EAAE,cAAc,EAC1B,UAAU,EAAE,SAAS,EAAE,EACvB,aAAa,EAAE,YAAY,EAAE,EAC7B,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,cAAc,EAAE,EAC3B,GAAG,CAAC,EAAE,IAAI,EACV,eAAe,CAAC,EAAE,gBAAgB,EAAE,GACnC,gBAAgB,CAiElB"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 治理健康报告 — 汇总 audit pool、escape reports、capability action decisions、sample decisions。
|
|
3
|
+
* P2-5+P2-6 范围: 只读报告,不改状态。
|
|
4
|
+
*/
|
|
5
|
+
function deepCopyRule(rule) {
|
|
6
|
+
return { ...rule };
|
|
7
|
+
}
|
|
8
|
+
function deepCopyDecision(decision) {
|
|
9
|
+
return {
|
|
10
|
+
...decision,
|
|
11
|
+
evidence_ids: [...decision.evidence_ids],
|
|
12
|
+
triggered_rules: decision.triggered_rules.map(deepCopyRule),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function deepCopySummary(summary) {
|
|
16
|
+
return {
|
|
17
|
+
...summary,
|
|
18
|
+
action: deepCopyDecision(summary.action),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
export function generateReport(auditStats, auditItems, escapeReports, escapeStats, decisions, now, sampleDecisions) {
|
|
22
|
+
const nonFPReports = escapeReports.filter((r) => r.failure_type !== "false_positive");
|
|
23
|
+
const fpReports = escapeReports.filter((r) => r.failure_type === "false_positive");
|
|
24
|
+
const sampledCount = sampleDecisions
|
|
25
|
+
? sampleDecisions.filter((d) => d.should_sample).length
|
|
26
|
+
: null;
|
|
27
|
+
// Build per-policy summary from decisions
|
|
28
|
+
const policyMap = new Map();
|
|
29
|
+
for (const decision of decisions) {
|
|
30
|
+
const pid = decision.policy_id;
|
|
31
|
+
const policyEscapes = nonFPReports.filter((r) => r.policy_id === pid);
|
|
32
|
+
const policyFP = fpReports.filter((r) => r.policy_id === pid);
|
|
33
|
+
policyMap.set(pid, {
|
|
34
|
+
policy_id: pid,
|
|
35
|
+
escape_count: policyEscapes.length,
|
|
36
|
+
false_positive_count: policyFP.length,
|
|
37
|
+
action: deepCopyDecision(decision),
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
// Danger policies: any policy with escapes and a non-keep action
|
|
41
|
+
const dangerPolicies = [...policyMap.values()]
|
|
42
|
+
.filter((p) => p.escape_count > 0 && p.action.recommended_action !== "keep")
|
|
43
|
+
.sort((a, b) => b.escape_count - a.escape_count)
|
|
44
|
+
.map(deepCopySummary);
|
|
45
|
+
// Downgrade candidates: action is downgrade or disable
|
|
46
|
+
const downgradeCandidates = [...policyMap.values()]
|
|
47
|
+
.filter((p) => p.action.recommended_action === "downgrade" || p.action.recommended_action === "disable")
|
|
48
|
+
.sort((a, b) => {
|
|
49
|
+
const priority = (d) => (d.recommended_action === "disable" ? 0 : 1);
|
|
50
|
+
return priority(a.action) - priority(b.action);
|
|
51
|
+
})
|
|
52
|
+
.map(deepCopySummary);
|
|
53
|
+
// Top fixes: non-FP escape reports sorted by due_date, capped at 5
|
|
54
|
+
const topFixes = nonFPReports
|
|
55
|
+
.slice()
|
|
56
|
+
.sort((a, b) => a.due_date.localeCompare(b.due_date))
|
|
57
|
+
.slice(0, 5)
|
|
58
|
+
.map((r) => ({
|
|
59
|
+
escape_id: r.escape_id,
|
|
60
|
+
policy_id: r.policy_id,
|
|
61
|
+
failure_type: r.failure_type,
|
|
62
|
+
fix_required: r.fix_required,
|
|
63
|
+
owner: r.owner,
|
|
64
|
+
due_date: r.due_date,
|
|
65
|
+
}));
|
|
66
|
+
return {
|
|
67
|
+
generated_at: (now ?? new Date()).toISOString(),
|
|
68
|
+
total_tasks: auditStats.total,
|
|
69
|
+
audit_by_risk: { ...auditStats.by_risk },
|
|
70
|
+
sampled_count: sampledCount,
|
|
71
|
+
total_escapes: nonFPReports.length,
|
|
72
|
+
total_false_positives: fpReports.length,
|
|
73
|
+
escape_by_type: { ...escapeStats.by_type },
|
|
74
|
+
danger_policies: dangerPolicies,
|
|
75
|
+
downgrade_candidates: downgradeCandidates,
|
|
76
|
+
top_fixes: topFixes,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=governance_report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"governance_report.js","sourceRoot":"","sources":["../../src/engine/governance_report.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Java Quality Guard — Java 代码质量检查。
|
|
3
|
+
* 原则: 项目约定优先,确定性规则才 hard gate,不确定的 advisory。
|
|
4
|
+
*
|
|
5
|
+
* 确定性规则(hard gate):
|
|
6
|
+
* - 编译错误(语法/类型)
|
|
7
|
+
* - 缺少必需注解(@Override 等)
|
|
8
|
+
* - public 方法缺少 Javadoc(项目约定启用时)
|
|
9
|
+
*
|
|
10
|
+
* 不确定性规则(advisory):
|
|
11
|
+
* - 代码风格(命名、格式)
|
|
12
|
+
* - 设计模式建议
|
|
13
|
+
* - 性能优化建议
|
|
14
|
+
*/
|
|
15
|
+
export interface QualityRule {
|
|
16
|
+
id: string;
|
|
17
|
+
severity: "hard_gate" | "advisory";
|
|
18
|
+
description: string;
|
|
19
|
+
pattern: RegExp;
|
|
20
|
+
message: string;
|
|
21
|
+
}
|
|
22
|
+
export interface QualityCheckResult {
|
|
23
|
+
rule_id: string;
|
|
24
|
+
severity: "hard_gate" | "advisory";
|
|
25
|
+
file_path: string;
|
|
26
|
+
line_number: number;
|
|
27
|
+
message: string;
|
|
28
|
+
detail: string;
|
|
29
|
+
}
|
|
30
|
+
export interface QualityGuardReport {
|
|
31
|
+
file_path: string;
|
|
32
|
+
total_checks: number;
|
|
33
|
+
hard_gate_failures: number;
|
|
34
|
+
advisory_warnings: number;
|
|
35
|
+
results: QualityCheckResult[];
|
|
36
|
+
can_proceed: boolean;
|
|
37
|
+
summary: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* 从项目约定文件加载自定义规则。
|
|
41
|
+
* 项目约定优先于内置规则。
|
|
42
|
+
*/
|
|
43
|
+
export declare function loadProjectRules(conventionsContent: string | null): QualityRule[];
|
|
44
|
+
/**
|
|
45
|
+
* 对 Java 源文件执行质量检查。
|
|
46
|
+
* @param filePath - 文件路径
|
|
47
|
+
* @param content - 文件内容
|
|
48
|
+
* @param projectRules - 项目自定义规则(优先于内置规则)
|
|
49
|
+
* @returns 质量检查报告
|
|
50
|
+
*/
|
|
51
|
+
export declare function checkJavaQuality(filePath: string, content: string, projectRules?: QualityRule[]): QualityGuardReport;
|
|
52
|
+
//# sourceMappingURL=java_quality_guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"java_quality_guard.d.ts","sourceRoot":"","sources":["../../src/engine/java_quality_guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,WAAW,GAAG,UAAU,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAiDD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,WAAW,EAAE,CAuBjF;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,WAAW,EAAO,GAC/B,kBAAkB,CA2DpB"}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Java Quality Guard — Java 代码质量检查。
|
|
3
|
+
* 原则: 项目约定优先,确定性规则才 hard gate,不确定的 advisory。
|
|
4
|
+
*
|
|
5
|
+
* 确定性规则(hard gate):
|
|
6
|
+
* - 编译错误(语法/类型)
|
|
7
|
+
* - 缺少必需注解(@Override 等)
|
|
8
|
+
* - public 方法缺少 Javadoc(项目约定启用时)
|
|
9
|
+
*
|
|
10
|
+
* 不确定性规则(advisory):
|
|
11
|
+
* - 代码风格(命名、格式)
|
|
12
|
+
* - 设计模式建议
|
|
13
|
+
* - 性能优化建议
|
|
14
|
+
*/
|
|
15
|
+
// ── Built-in rules ──
|
|
16
|
+
const BUILTIN_RULES = [
|
|
17
|
+
{
|
|
18
|
+
id: "JAVA-Q001",
|
|
19
|
+
severity: "hard_gate",
|
|
20
|
+
description: "catch 块不能为空",
|
|
21
|
+
pattern: null, // special multi-line handling
|
|
22
|
+
message: "空 catch 块会吞掉异常,导致调试困难",
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
id: "JAVA-Q002",
|
|
26
|
+
severity: "hard_gate",
|
|
27
|
+
description: "不能使用 raw type",
|
|
28
|
+
pattern: /^(?!.*import).*\b(ArrayList|HashMap|HashSet|LinkedList|LinkedHashMap|LinkedHashSet|TreeMap|TreeSet)\b[^<]/,
|
|
29
|
+
message: "应使用泛型参数化类型,避免类型安全问题",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
id: "JAVA-Q003",
|
|
33
|
+
severity: "hard_gate",
|
|
34
|
+
description: "System.out.println 不应出现在生产代码",
|
|
35
|
+
pattern: /System\.(out|err)\.(println|printf|print)\(/,
|
|
36
|
+
message: "应使用日志框架而非 System.out/err",
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
id: "JAVA-Q004",
|
|
40
|
+
severity: "advisory",
|
|
41
|
+
description: "方法过长(超过80行)",
|
|
42
|
+
pattern: null, // special handling
|
|
43
|
+
message: "方法过长,建议拆分",
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
id: "JAVA-Q005",
|
|
47
|
+
severity: "hard_gate",
|
|
48
|
+
description: "Thread.sleep 不应在生产代码中使用",
|
|
49
|
+
pattern: /Thread\.sleep\s*\(/,
|
|
50
|
+
message: "Thread.sleep 会阻塞线程,应使用异步等待机制",
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
id: "JAVA-Q006",
|
|
54
|
+
severity: "advisory",
|
|
55
|
+
description: "检查是否缺少 @Override 注解",
|
|
56
|
+
pattern: null, // special handling
|
|
57
|
+
message: "覆盖父类方法时应添加 @Override 注解",
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
/**
|
|
61
|
+
* 从项目约定文件加载自定义规则。
|
|
62
|
+
* 项目约定优先于内置规则。
|
|
63
|
+
*/
|
|
64
|
+
export function loadProjectRules(conventionsContent) {
|
|
65
|
+
if (!conventionsContent)
|
|
66
|
+
return [];
|
|
67
|
+
const rules = [];
|
|
68
|
+
const lines = conventionsContent.split("\n");
|
|
69
|
+
for (const line of lines) {
|
|
70
|
+
// Format: JAVA-C### | hard_gate|advisory | description | pattern
|
|
71
|
+
const match = line.match(/^(JAVA-[CQ]\d+)\s*\|\s*(hard_gate|advisory)\s*\|\s*(.+?)\s*\|\s*\/(.+)\/\s*$/);
|
|
72
|
+
if (match) {
|
|
73
|
+
rules.push({
|
|
74
|
+
id: match[1],
|
|
75
|
+
severity: match[2],
|
|
76
|
+
description: match[3],
|
|
77
|
+
pattern: new RegExp(match[4]),
|
|
78
|
+
message: match[3],
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return rules;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* 对 Java 源文件执行质量检查。
|
|
86
|
+
* @param filePath - 文件路径
|
|
87
|
+
* @param content - 文件内容
|
|
88
|
+
* @param projectRules - 项目自定义规则(优先于内置规则)
|
|
89
|
+
* @returns 质量检查报告
|
|
90
|
+
*/
|
|
91
|
+
export function checkJavaQuality(filePath, content, projectRules = []) {
|
|
92
|
+
const results = [];
|
|
93
|
+
const lines = content.split("\n");
|
|
94
|
+
// Merge rules: project rules first, then built-in (project takes precedence by ID)
|
|
95
|
+
const projectIds = new Set(projectRules.map((r) => r.id));
|
|
96
|
+
const allRules = [...projectRules, ...BUILTIN_RULES.filter((r) => !projectIds.has(r.id))];
|
|
97
|
+
for (const rule of allRules) {
|
|
98
|
+
if (rule.id === "JAVA-Q001") {
|
|
99
|
+
// Empty catch block (multi-line handling)
|
|
100
|
+
checkEmptyCatch(filePath, lines, rule, results);
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
if (rule.id === "JAVA-Q004") {
|
|
104
|
+
// Method length check (special handling)
|
|
105
|
+
checkMethodLength(filePath, lines, rule, results);
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
if (rule.id === "JAVA-Q006") {
|
|
109
|
+
// @Override check (special handling)
|
|
110
|
+
checkOverrideAnnotation(filePath, lines, rule, results);
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
if (!rule.pattern)
|
|
114
|
+
continue;
|
|
115
|
+
for (let i = 0; i < lines.length; i++) {
|
|
116
|
+
if (rule.pattern.test(lines[i])) {
|
|
117
|
+
results.push({
|
|
118
|
+
rule_id: rule.id,
|
|
119
|
+
severity: rule.severity,
|
|
120
|
+
file_path: filePath,
|
|
121
|
+
line_number: i + 1,
|
|
122
|
+
message: rule.message,
|
|
123
|
+
detail: lines[i].trim(),
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
const hardGateFailures = results.filter((r) => r.severity === "hard_gate").length;
|
|
129
|
+
const advisoryWarnings = results.filter((r) => r.severity === "advisory").length;
|
|
130
|
+
return {
|
|
131
|
+
file_path: filePath,
|
|
132
|
+
total_checks: allRules.length,
|
|
133
|
+
hard_gate_failures: hardGateFailures,
|
|
134
|
+
advisory_warnings: advisoryWarnings,
|
|
135
|
+
results,
|
|
136
|
+
can_proceed: hardGateFailures === 0,
|
|
137
|
+
summary: hardGateFailures > 0
|
|
138
|
+
? `hard gate: ${hardGateFailures} failure(s), ${advisoryWarnings} advisory warning(s) — must fix before proceeding`
|
|
139
|
+
: advisoryWarnings > 0
|
|
140
|
+
? `advisory: ${advisoryWarnings} warning(s) — review recommended but not required`
|
|
141
|
+
: "all checks passed",
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
function checkEmptyCatch(filePath, lines, rule, results) {
|
|
145
|
+
const fullContent = lines.join("\n");
|
|
146
|
+
const emptyCatchPat = /catch\s*\([^)]*\)\s*\{\s*\}/g;
|
|
147
|
+
let match;
|
|
148
|
+
while ((match = emptyCatchPat.exec(fullContent)) !== null) {
|
|
149
|
+
// Find line number from offset
|
|
150
|
+
const offset = match.index;
|
|
151
|
+
let lineNum = 1;
|
|
152
|
+
for (let i = 0; i < offset; i++) {
|
|
153
|
+
if (fullContent[i] === "\n")
|
|
154
|
+
lineNum++;
|
|
155
|
+
}
|
|
156
|
+
results.push({
|
|
157
|
+
rule_id: rule.id,
|
|
158
|
+
severity: rule.severity,
|
|
159
|
+
file_path: filePath,
|
|
160
|
+
line_number: lineNum,
|
|
161
|
+
message: rule.message,
|
|
162
|
+
detail: match[0].trim(),
|
|
163
|
+
});
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
function checkMethodLength(filePath, lines, rule, results) {
|
|
167
|
+
const MAX_METHOD_LINES = 80;
|
|
168
|
+
let methodStart = -1;
|
|
169
|
+
let braceDepth = 0;
|
|
170
|
+
let methodName = "";
|
|
171
|
+
for (let i = 0; i < lines.length; i++) {
|
|
172
|
+
const line = lines[i].trim();
|
|
173
|
+
// Detect method start
|
|
174
|
+
if (methodStart === -1) {
|
|
175
|
+
const methodMatch = line.match(/\b(public|private|protected|static|\s)+\s+\w+\s+\w+\s*\([^)]*\)\s*\{/);
|
|
176
|
+
if (methodMatch) {
|
|
177
|
+
methodStart = i;
|
|
178
|
+
braceDepth = 1;
|
|
179
|
+
const nameMatch = line.match(/(\w+)\s*\(/);
|
|
180
|
+
methodName = nameMatch ? nameMatch[1] : "unknown";
|
|
181
|
+
continue;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
if (methodStart >= 0) {
|
|
185
|
+
for (const ch of line) {
|
|
186
|
+
if (ch === "{")
|
|
187
|
+
braceDepth++;
|
|
188
|
+
if (ch === "}")
|
|
189
|
+
braceDepth--;
|
|
190
|
+
}
|
|
191
|
+
if (braceDepth <= 0) {
|
|
192
|
+
const methodLength = i - methodStart + 1;
|
|
193
|
+
if (methodLength > MAX_METHOD_LINES) {
|
|
194
|
+
results.push({
|
|
195
|
+
rule_id: rule.id,
|
|
196
|
+
severity: rule.severity,
|
|
197
|
+
file_path: filePath,
|
|
198
|
+
line_number: methodStart + 1,
|
|
199
|
+
message: `${rule.message} (${methodName}: ${methodLength} lines)`,
|
|
200
|
+
detail: `method '${methodName}' spans ${methodLength} lines (max: ${MAX_METHOD_LINES})`,
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
methodStart = -1;
|
|
204
|
+
braceDepth = 0;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
function checkOverrideAnnotation(filePath, lines, rule, results) {
|
|
210
|
+
for (let i = 0; i < lines.length; i++) {
|
|
211
|
+
const line = lines[i].trim();
|
|
212
|
+
// Check for method that looks like an override (public/protected, has super-type signature)
|
|
213
|
+
if (/\b(public|protected)\s+\w+\s+\w+\s*\([^)]*\)\s*\{/.test(line) &&
|
|
214
|
+
!lines[Math.max(0, i - 1)].trim().startsWith("@Override") &&
|
|
215
|
+
!lines[Math.max(0, i - 1)].trim().startsWith("@")) {
|
|
216
|
+
// Heuristic: if method name contains common override patterns
|
|
217
|
+
const nameMatch = line.match(/(\w+)\s*\(/);
|
|
218
|
+
const methodName = nameMatch ? nameMatch[1] : "";
|
|
219
|
+
const commonOverrides = [
|
|
220
|
+
"toString", "equals", "hashCode", "compareTo",
|
|
221
|
+
"run", "call", "execute",
|
|
222
|
+
"setUp", "tearDown", "beforeEach", "afterEach",
|
|
223
|
+
];
|
|
224
|
+
if (commonOverrides.includes(methodName)) {
|
|
225
|
+
results.push({
|
|
226
|
+
rule_id: rule.id,
|
|
227
|
+
severity: rule.severity,
|
|
228
|
+
file_path: filePath,
|
|
229
|
+
line_number: i + 1,
|
|
230
|
+
message: `${rule.message} (${methodName})`,
|
|
231
|
+
detail: line,
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
//# sourceMappingURL=java_quality_guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"java_quality_guard.js","sourceRoot":"","sources":["../../src/engine/java_quality_guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 长任务 Job 管理 — checkpoint、heartbeat、resume/cancel、认知锚点。
|
|
3
|
+
* advisory: 不 hard block,提供恢复和监控能力。
|
|
4
|
+
*
|
|
5
|
+
* 职责:
|
|
6
|
+
* - 创建/更新/查询 job checkpoint
|
|
7
|
+
* - heartbeat 检测活跃状态
|
|
8
|
+
* - 从 checkpoint 恢复任务
|
|
9
|
+
* - 认知锚点(上下文摘要)
|
|
10
|
+
*/
|
|
11
|
+
export interface CognitiveAnchor {
|
|
12
|
+
phase: string;
|
|
13
|
+
summary: string;
|
|
14
|
+
key_decisions: string[];
|
|
15
|
+
pending_actions: string[];
|
|
16
|
+
created_at: string;
|
|
17
|
+
}
|
|
18
|
+
export interface JobCheckpoint {
|
|
19
|
+
job_id: string;
|
|
20
|
+
task_id: string;
|
|
21
|
+
phase: string;
|
|
22
|
+
heartbeat_at: string;
|
|
23
|
+
checkpoint_number: number;
|
|
24
|
+
cognitive_anchor: CognitiveAnchor;
|
|
25
|
+
state_snapshot: Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
export interface JobStatus {
|
|
28
|
+
job_id: string;
|
|
29
|
+
task_id: string;
|
|
30
|
+
is_alive: boolean;
|
|
31
|
+
last_heartbeat_ms_ago: number;
|
|
32
|
+
current_phase: string;
|
|
33
|
+
checkpoint_count: number;
|
|
34
|
+
latest_anchor: CognitiveAnchor | null;
|
|
35
|
+
}
|
|
36
|
+
export declare class JobManager {
|
|
37
|
+
private stateDir;
|
|
38
|
+
constructor(stateDir: string);
|
|
39
|
+
/**
|
|
40
|
+
* 创建新 job,分配 job_id 并写入初始 checkpoint。
|
|
41
|
+
*/
|
|
42
|
+
createJob(taskId: string, phase: string, initialSummary: string): Promise<JobCheckpoint>;
|
|
43
|
+
/**
|
|
44
|
+
* 更新 checkpoint — 记录心跳和阶段进展。
|
|
45
|
+
*/
|
|
46
|
+
updateCheckpoint(jobId: string, taskId: string, phase: string, anchor: Partial<CognitiveAnchor>, stateSnapshot?: Record<string, unknown>): Promise<JobCheckpoint | null>;
|
|
47
|
+
/**
|
|
48
|
+
* 心跳 — 只更新 heartbeat_at 时间戳。
|
|
49
|
+
*/
|
|
50
|
+
heartbeat(jobId: string, taskId: string): Promise<boolean>;
|
|
51
|
+
/**
|
|
52
|
+
* 查询 job 状态 — 包括是否活跃、距上次心跳时间。
|
|
53
|
+
*/
|
|
54
|
+
getJobStatus(jobId: string, taskId: string, maxAgeMs?: number): Promise<JobStatus | null>;
|
|
55
|
+
/**
|
|
56
|
+
* 从最新 checkpoint 恢复 — 返回 checkpoint 数据供调用方恢复状态。
|
|
57
|
+
*/
|
|
58
|
+
resumeFromCheckpoint(jobId: string, taskId: string): Promise<JobCheckpoint | null>;
|
|
59
|
+
/**
|
|
60
|
+
* 取消 job — 删除所有 checkpoint 文件。
|
|
61
|
+
*/
|
|
62
|
+
cancelJob(jobId: string, taskId: string): Promise<boolean>;
|
|
63
|
+
/**
|
|
64
|
+
* 列出所有活跃 job。
|
|
65
|
+
*/
|
|
66
|
+
listActiveJobs(maxAgeMs?: number): Promise<JobStatus[]>;
|
|
67
|
+
/**
|
|
68
|
+
* 仅凭 job_id 反查 task_id — 扫描 checkpoint 文件,返回最新一条的 task_id。
|
|
69
|
+
* 用于 sf_status 在不传 task_id 时自动推导。
|
|
70
|
+
*/
|
|
71
|
+
resolveTaskId(jobId: string): Promise<string | null>;
|
|
72
|
+
private getJobsDir;
|
|
73
|
+
private writeCheckpoint;
|
|
74
|
+
private loadLatestCheckpoint;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=job_manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"job_manager.d.ts","sourceRoot":"","sources":["../../src/engine/job_manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAOH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,eAAe,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,eAAe,GAAG,IAAI,CAAC;CACvC;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM;IAK5B;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAwB9F;;OAEG;IACG,gBAAgB,CACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,EAChC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAyBhC;;OAEG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAShE;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAgB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAkBtG;;OAEG;IACG,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAIxF;;OAEG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBhE;;OAEG;IACG,cAAc,CAAC,QAAQ,SAAgB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IA2CpE;;;OAGG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAsB1D,OAAO,CAAC,UAAU;YAMJ,eAAe;YASf,oBAAoB;CAoBnC"}
|