soloforge 1.2.1 → 1.2.3

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 (185) hide show
  1. package/README.md +78 -18
  2. package/dist/adapters/claude_code/server.d.ts.map +1 -1
  3. package/dist/adapters/claude_code/server.js +2 -25
  4. package/dist/adapters/claude_code/server.js.map +1 -1
  5. package/dist/adapters/claude_code/tools.d.ts +8 -13
  6. package/dist/adapters/claude_code/tools.d.ts.map +1 -1
  7. package/dist/adapters/claude_code/tools.js +508 -87
  8. package/dist/adapters/claude_code/tools.js.map +1 -1
  9. package/dist/adapters/codex/codex_rules.d.ts.map +1 -1
  10. package/dist/adapters/codex/codex_rules.js +23 -1
  11. package/dist/adapters/codex/codex_rules.js.map +1 -1
  12. package/dist/adapters/shared/workflow_template.d.ts.map +1 -1
  13. package/dist/adapters/shared/workflow_template.js +25 -0
  14. package/dist/adapters/shared/workflow_template.js.map +1 -1
  15. package/dist/bin/soloforge.js +169 -18
  16. package/dist/bin/soloforge.js.map +1 -1
  17. package/dist/engine/audit_pool.d.ts +36 -0
  18. package/dist/engine/audit_pool.d.ts.map +1 -0
  19. package/dist/engine/audit_pool.js +83 -0
  20. package/dist/engine/audit_pool.js.map +1 -0
  21. package/dist/engine/audit_sampler.d.ts +15 -0
  22. package/dist/engine/audit_sampler.d.ts.map +1 -0
  23. package/dist/engine/audit_sampler.js +26 -0
  24. package/dist/engine/audit_sampler.js.map +1 -0
  25. package/dist/engine/audit_verifier.d.ts +1 -1
  26. package/dist/engine/audit_verifier.js +1 -1
  27. package/dist/engine/audit_verifier.js.map +1 -1
  28. package/dist/engine/capability_action_advisor.d.ts +24 -0
  29. package/dist/engine/capability_action_advisor.d.ts.map +1 -0
  30. package/dist/engine/capability_action_advisor.js +147 -0
  31. package/dist/engine/capability_action_advisor.js.map +1 -0
  32. package/dist/engine/capability_registry.d.ts +58 -0
  33. package/dist/engine/capability_registry.d.ts.map +1 -0
  34. package/dist/engine/capability_registry.js +625 -0
  35. package/dist/engine/capability_registry.js.map +1 -0
  36. package/dist/engine/capability_state_store.d.ts +50 -0
  37. package/dist/engine/capability_state_store.d.ts.map +1 -0
  38. package/dist/engine/capability_state_store.js +123 -0
  39. package/dist/engine/capability_state_store.js.map +1 -0
  40. package/dist/engine/cognitive_anchor.d.ts +59 -0
  41. package/dist/engine/cognitive_anchor.d.ts.map +1 -0
  42. package/dist/engine/cognitive_anchor.js +68 -0
  43. package/dist/engine/cognitive_anchor.js.map +1 -0
  44. package/dist/engine/conflict_gate.d.ts +36 -0
  45. package/dist/engine/conflict_gate.d.ts.map +1 -0
  46. package/dist/engine/conflict_gate.js +73 -0
  47. package/dist/engine/conflict_gate.js.map +1 -0
  48. package/dist/engine/decision_contract.d.ts +29 -0
  49. package/dist/engine/decision_contract.d.ts.map +1 -0
  50. package/dist/engine/decision_contract.js +41 -0
  51. package/dist/engine/decision_contract.js.map +1 -0
  52. package/dist/engine/delivery.d.ts.map +1 -1
  53. package/dist/engine/delivery.js +83 -0
  54. package/dist/engine/delivery.js.map +1 -1
  55. package/dist/engine/developer_sovereignty.d.ts +62 -0
  56. package/dist/engine/developer_sovereignty.d.ts.map +1 -0
  57. package/dist/engine/developer_sovereignty.js +134 -0
  58. package/dist/engine/developer_sovereignty.js.map +1 -0
  59. package/dist/engine/diff_ownership.d.ts +74 -0
  60. package/dist/engine/diff_ownership.d.ts.map +1 -0
  61. package/dist/engine/diff_ownership.js +143 -0
  62. package/dist/engine/diff_ownership.js.map +1 -0
  63. package/dist/engine/diff_ownership_store.d.ts +76 -0
  64. package/dist/engine/diff_ownership_store.d.ts.map +1 -0
  65. package/dist/engine/diff_ownership_store.js +264 -0
  66. package/dist/engine/diff_ownership_store.js.map +1 -0
  67. package/dist/engine/escape_report.d.ts +45 -0
  68. package/dist/engine/escape_report.d.ts.map +1 -0
  69. package/dist/engine/escape_report.js +97 -0
  70. package/dist/engine/escape_report.js.map +1 -0
  71. package/dist/engine/exploration.d.ts +54 -0
  72. package/dist/engine/exploration.d.ts.map +1 -1
  73. package/dist/engine/exploration.js +138 -0
  74. package/dist/engine/exploration.js.map +1 -1
  75. package/dist/engine/governance_report.d.ts +36 -0
  76. package/dist/engine/governance_report.d.ts.map +1 -0
  77. package/dist/engine/governance_report.js +79 -0
  78. package/dist/engine/governance_report.js.map +1 -0
  79. package/dist/engine/java_quality_guard.d.ts +52 -0
  80. package/dist/engine/java_quality_guard.d.ts.map +1 -0
  81. package/dist/engine/java_quality_guard.js +237 -0
  82. package/dist/engine/java_quality_guard.js.map +1 -0
  83. package/dist/engine/job_manager.d.ts +76 -0
  84. package/dist/engine/job_manager.d.ts.map +1 -0
  85. package/dist/engine/job_manager.js +225 -0
  86. package/dist/engine/job_manager.js.map +1 -0
  87. package/dist/engine/knowledge_config_loader.d.ts +1 -1
  88. package/dist/engine/knowledge_config_loader.js +1 -1
  89. package/dist/engine/knowledge_sovereignty.d.ts +61 -0
  90. package/dist/engine/knowledge_sovereignty.d.ts.map +1 -0
  91. package/dist/engine/knowledge_sovereignty.js +190 -0
  92. package/dist/engine/knowledge_sovereignty.js.map +1 -0
  93. package/dist/engine/llm_gateway.js +2 -2
  94. package/dist/engine/llm_gateway.js.map +1 -1
  95. package/dist/engine/mutation_audit.d.ts +43 -0
  96. package/dist/engine/mutation_audit.d.ts.map +1 -0
  97. package/dist/engine/mutation_audit.js +118 -0
  98. package/dist/engine/mutation_audit.js.map +1 -0
  99. package/dist/engine/policy_drift_detector.d.ts +46 -0
  100. package/dist/engine/policy_drift_detector.d.ts.map +1 -0
  101. package/dist/engine/policy_drift_detector.js +181 -0
  102. package/dist/engine/policy_drift_detector.js.map +1 -0
  103. package/dist/engine/regression_matrix.d.ts +102 -0
  104. package/dist/engine/regression_matrix.d.ts.map +1 -0
  105. package/dist/engine/regression_matrix.js +380 -0
  106. package/dist/engine/regression_matrix.js.map +1 -0
  107. package/dist/engine/risk_sampler.d.ts +37 -0
  108. package/dist/engine/risk_sampler.d.ts.map +1 -0
  109. package/dist/engine/risk_sampler.js +69 -0
  110. package/dist/engine/risk_sampler.js.map +1 -0
  111. package/dist/engine/runtime_safety.d.ts +80 -0
  112. package/dist/engine/runtime_safety.d.ts.map +1 -0
  113. package/dist/engine/runtime_safety.js +195 -0
  114. package/dist/engine/runtime_safety.js.map +1 -0
  115. package/dist/engine/scope_lease.d.ts +45 -0
  116. package/dist/engine/scope_lease.d.ts.map +1 -0
  117. package/dist/engine/scope_lease.js +122 -0
  118. package/dist/engine/scope_lease.js.map +1 -0
  119. package/dist/engine/semantic_evidence.d.ts +23 -0
  120. package/dist/engine/semantic_evidence.d.ts.map +1 -0
  121. package/dist/engine/semantic_evidence.js +81 -0
  122. package/dist/engine/semantic_evidence.js.map +1 -0
  123. package/dist/engine/task_context.d.ts +16 -0
  124. package/dist/engine/task_context.d.ts.map +1 -1
  125. package/dist/engine/task_context.js +59 -1
  126. package/dist/engine/task_context.js.map +1 -1
  127. package/dist/engine/test_quality.js +2 -2
  128. package/dist/engine/test_quality.js.map +1 -1
  129. package/dist/engine/verifier.d.ts.map +1 -1
  130. package/dist/engine/verifier.js +113 -20
  131. package/dist/engine/verifier.js.map +1 -1
  132. package/dist/engine/workspace_resumer.d.ts +43 -0
  133. package/dist/engine/workspace_resumer.d.ts.map +1 -1
  134. package/dist/engine/workspace_resumer.js +119 -4
  135. package/dist/engine/workspace_resumer.js.map +1 -1
  136. package/dist/engine/zero_config_init.d.ts +87 -0
  137. package/dist/engine/zero_config_init.d.ts.map +1 -0
  138. package/dist/engine/zero_config_init.js +427 -0
  139. package/dist/engine/zero_config_init.js.map +1 -0
  140. package/dist/knowledge/index_manager.d.ts +19 -0
  141. package/dist/knowledge/index_manager.d.ts.map +1 -1
  142. package/dist/knowledge/index_manager.js +31 -0
  143. package/dist/knowledge/index_manager.js.map +1 -1
  144. package/dist/knowledge/writer.d.ts.map +1 -1
  145. package/dist/knowledge/writer.js +1 -0
  146. package/dist/knowledge/writer.js.map +1 -1
  147. package/dist/types.d.ts +61 -85
  148. package/dist/types.d.ts.map +1 -1
  149. package/package.json +2 -2
  150. package/templates/knowledge/domain//345/256/241/350/256/241/346/227/245/345/277/227.md +6 -7
  151. package/templates/knowledge/domain//345/257/274/345/205/245/345/257/274/345/207/272/350/247/204/345/210/231.md +3 -3
  152. package/templates/knowledge/domain//351/200/232/347/224/250/346/234/272/346/242/260/346/235/241/346/254/276.md +24 -14
  153. package/templates/knowledge/patterns/core/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md +47 -0
  154. package/templates/knowledge/patterns/core/Java/350/264/250/351/207/217/351/227/250/347/246/201.md +46 -0
  155. package/templates/knowledge/patterns/core/LLM/351/242/204/347/256/227/347/275/221/345/205/263.md +46 -0
  156. 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
  157. package/templates/knowledge/patterns/core//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md +47 -0
  158. 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
  159. package/templates/knowledge/patterns/core//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md +47 -0
  160. package/templates/knowledge/patterns/core//345/206/262/347/252/201/351/227/250/347/246/201.md +47 -0
  161. package/templates/knowledge/patterns/core//345/206/263/347/255/226/347/275/221/345/205/263.md +52 -0
  162. package/templates/knowledge/patterns/core/{mutation_audit.md → /345/217/230/345/274/202/345/256/241/350/256/241.md} +20 -0
  163. package/templates/knowledge/patterns/core//345/233/236/345/275/222/347/237/251/351/230/265.md +46 -0
  164. 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
  165. package/templates/knowledge/patterns/core//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md +46 -0
  166. package/templates/knowledge/patterns/core//345/271/266/345/217/221/351/224/201.md +49 -0
  167. package/templates/knowledge/patterns/core/{developer_constitution.md → /345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md} +20 -0
  168. 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
  169. 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
  170. package/templates/knowledge/patterns/core/{streaming_protocol.md → /346/265/201/345/274/217/345/277/203/350/267/263.md} +20 -0
  171. package/templates/knowledge/patterns/core/{authority.md → /347/237/245/350/257/206/344/270/273/346/235/203.md} +20 -0
  172. package/templates/knowledge/patterns/core//350/257/255/344/271/211/350/257/201/346/215/256.md +47 -0
  173. package/templates/knowledge/patterns/core//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md +50 -0
  174. 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
  175. 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
  176. package/templates/knowledge/procedures//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/346/260/264/347/272/277.md +1 -1
  177. package/templates/knowledge/procedures//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/347/250/213.md +1 -1
  178. package/templates/knowledge/review_rules//345/271/266/345/217/221/345/256/241/346/237/245/350/247/204/345/210/231.md +1 -1
  179. package/templates/knowledge/review_rules//346/200/247/350/203/275/345/256/241/346/237/245/350/247/204/345/210/231.md +1 -1
  180. package/templates/knowledge/review_rules//346/216/245/345/217/243/345/245/221/347/272/246/345/256/241/346/237/245/350/247/204/345/210/231.md +1 -1
  181. package/templates/knowledge/review_rules//346/236/266/346/236/204/345/256/241/346/237/245/350/247/204/345/210/231.md +1 -1
  182. package/templates/knowledge/review_rules//350/264/250/351/207/217/345/256/241/346/237/245/350/247/204/345/210/231.md +1 -1
  183. package/templates/knowledge/patterns/core/concurrency_lock.md +0 -36
  184. package/templates/knowledge/patterns/core/decision_gateway.md +0 -33
  185. /package/templates/knowledge/checklists/{session_recovery.md → /344/274/232/350/257/235/346/201/242/345/244/215.md"} +0 -0
package/dist/types.d.ts CHANGED
@@ -327,6 +327,8 @@ export interface ExpandResult {
327
327
  }>;
328
328
  };
329
329
  };
330
+ /** 需求点列表(R9 语义交付证据) */
331
+ requirement_points?: RequirementPoint[];
330
332
  }
331
333
  /** 作用域结果 */
332
334
  export interface ScopeResult {
@@ -350,6 +352,36 @@ export interface AcceptanceItem {
350
352
  /** 自动化检查命令 */
351
353
  check_command?: string;
352
354
  }
355
+ /** 需求点(R9 语义交付证据) */
356
+ export interface RequirementPoint {
357
+ /** 需求点 ID */
358
+ id: string;
359
+ /** 需求描述 */
360
+ description: string;
361
+ /** 关联的验收测试 ID 列表 */
362
+ acceptance_test_ids?: string[];
363
+ }
364
+ /** 语义证据(R9 验证时产出) */
365
+ export interface SemanticEvidence {
366
+ /** 变更行为列表 */
367
+ changed_behaviors: Array<{
368
+ file_path: string;
369
+ description: string;
370
+ requirement_point_id?: string;
371
+ }>;
372
+ /** 未变更断言列表 */
373
+ unchanged_assertions: Array<{
374
+ file_path: string;
375
+ assertion_description: string;
376
+ still_valid: boolean;
377
+ }>;
378
+ /** 需求点覆盖状态 */
379
+ requirement_coverage: Array<{
380
+ requirement_point_id: string;
381
+ covered: boolean;
382
+ evidence: string;
383
+ }>;
384
+ }
353
385
  /** 作用域检查结果 */
354
386
  export interface ScopeCheckResult {
355
387
  /** 是否允许通过 */
@@ -398,6 +430,10 @@ export interface VerifyResult {
398
430
  audit_declaration: string;
399
431
  passed: boolean;
400
432
  };
433
+ /** 语义证据(R9 语义交付证据) */
434
+ semantic_evidence?: SemanticEvidence;
435
+ /** 变异审计证据(R9 需求绑定变异点) */
436
+ mutation_evidence?: import("./engine/mutation_audit.js").MutationAuditEvidence;
401
437
  }
402
438
  /** 验证命令 */
403
439
  export interface VerifyCommand {
@@ -475,7 +511,7 @@ export interface KnowledgeEntry {
475
511
  /** 知识名称 */
476
512
  name: string;
477
513
  /** 知识类型 */
478
- type: "pattern" | "procedure" | "domain" | "acceptance_template" | "review_rule" | "pipeline_procedure";
514
+ type: "pattern" | "procedure" | "domain" | "acceptance_template" | "review_rule" | "governance_rule" | "pipeline_procedure";
479
515
  /** 触发条件 */
480
516
  when: string;
481
517
  /** 知识正文 */
@@ -720,6 +756,24 @@ export interface DeliveryConfig {
720
756
  /** 是否需要审批 */
721
757
  require_approval: boolean;
722
758
  }
759
+ /** 交付证据链(R9 语义交付证据) */
760
+ export interface DeliveryEvidenceChain {
761
+ /** 需求点列表(来自 expand) */
762
+ requirement_points: RequirementPoint[];
763
+ /** 语义证据(来自 verify) */
764
+ semantic_evidence?: SemanticEvidence;
765
+ /** 变更文件到需求点的映射 */
766
+ file_to_requirements: Array<{
767
+ file_path: string;
768
+ requirement_point_ids: string[];
769
+ }>;
770
+ /** 证据完整性评估 */
771
+ completeness: {
772
+ all_requirements_covered: boolean;
773
+ uncovered_points: string[];
774
+ advisory: string;
775
+ };
776
+ }
723
777
  /** 交付结果 */
724
778
  export interface DeliveryResult {
725
779
  /** 任务 ID */
@@ -743,6 +797,12 @@ export interface DeliveryResult {
743
797
  }>;
744
798
  /** 错误信息列表 */
745
799
  errors: string[];
800
+ /** 证据链(R9 语义交付证据) */
801
+ evidence_chain?: DeliveryEvidenceChain;
802
+ /** 运行安全包 advisory 警告(R12 命令分级 + 供应链) */
803
+ safety_advisories?: string[];
804
+ /** 交付前审查结果(R11 Developer Sovereignty,advisory 不 hard block) */
805
+ pre_delivery_review?: import("./engine/developer_sovereignty.js").PreDeliveryReview;
746
806
  }
747
807
  /** 变更日志条目 */
748
808
  export interface ChangelogEntry {
@@ -1069,19 +1129,6 @@ export interface ObservabilityReport {
1069
1129
  /** 报告摘要 */
1070
1130
  summary: string;
1071
1131
  }
1072
- /** 降级级别: full=完整功能, partial=部分降级, minimal=最小可用 */
1073
- export type DegradationLevel = "full" | "partial" | "minimal";
1074
- /** 降级状态 */
1075
- export interface DegradationStatus {
1076
- /** 组件名称 */
1077
- component: string;
1078
- /** 降级级别 */
1079
- level: DegradationLevel;
1080
- /** 降级原因 */
1081
- reason: string;
1082
- /** 降级起始时间 */
1083
- since: string;
1084
- }
1085
1132
  /** 追溯子任务 */
1086
1133
  export interface TraceSubTask {
1087
1134
  /** 子任务 ID */
@@ -1117,27 +1164,6 @@ export interface TraceabilityChain {
1117
1164
  /** 追溯摘要 */
1118
1165
  summary: string;
1119
1166
  }
1120
- /** 架构决策记录草稿 */
1121
- export interface ADRDraft {
1122
- /** ADR ID */
1123
- id: string;
1124
- /** 标题 */
1125
- title: string;
1126
- /** 状态(始终为 draft) */
1127
- status: "draft";
1128
- /** 背景上下文 */
1129
- context: string;
1130
- /** 决策内容 */
1131
- decision: string;
1132
- /** 决策后果 */
1133
- consequences: string;
1134
- /** 关联任务 */
1135
- related_task: string;
1136
- /** 检测到的变更 */
1137
- detected_changes: string[];
1138
- /** 创建时间 */
1139
- created_at: string;
1140
- }
1141
1167
  /** 迁移语句 */
1142
1168
  export interface MigrationStatement {
1143
1169
  /** 行号 */
@@ -1259,24 +1285,6 @@ export interface DebtReport {
1259
1285
  /** 报告摘要 */
1260
1286
  summary: string;
1261
1287
  }
1262
- /** 工作区产品 */
1263
- export interface WorkspaceProduct {
1264
- /** 产品名称 */
1265
- name: string;
1266
- /** 产品画像 */
1267
- profile: string;
1268
- /** 关联路径 */
1269
- paths: string[];
1270
- /** 知识作用域: isolated=隔离, shared=共享 */
1271
- knowledge_scope: "isolated" | "shared";
1272
- }
1273
- /** 工作区配置 */
1274
- export interface WorkspaceConfig {
1275
- /** 产品列表 */
1276
- products: WorkspaceProduct[];
1277
- /** 共享知识列表 */
1278
- shared_knowledge: string[];
1279
- }
1280
1288
  /** 成本预算 */
1281
1289
  export interface CostBudget {
1282
1290
  /** 每日 token 限制 */
@@ -1299,36 +1307,4 @@ export interface CostAlert {
1299
1307
  /** 告警信息 */
1300
1308
  message: string;
1301
1309
  }
1302
- /** Prompt 实验配置 */
1303
- export interface PromptExperiment {
1304
- /** 实验 ID */
1305
- id: string;
1306
- /** 关联的知识条目 */
1307
- knowledge_entry: string;
1308
- /** 变体 A (原始 prompt) */
1309
- variant_a: string;
1310
- /** 变体 B (优化 prompt) */
1311
- variant_b: string;
1312
- /** 评估指标列表 */
1313
- metrics: string[];
1314
- /** 实验状态: draft=草稿, running=运行中, completed=已完成 */
1315
- status: "draft" | "running" | "completed";
1316
- /** 创建时间 */
1317
- created_at: string;
1318
- }
1319
- /** 实验结果 */
1320
- export interface ExperimentResult {
1321
- /** 实验 ID */
1322
- experiment_id: string;
1323
- /** 变体 A 指标 */
1324
- variant_a_metrics: Record<string, number>;
1325
- /** 变体 B 指标 */
1326
- variant_b_metrics: Record<string, number>;
1327
- /** 获胜方: a=A 胜, b=B 胜, inconclusive=无定论 */
1328
- winner: "a" | "b" | "inconclusive";
1329
- /** 置信度 (0-1) */
1330
- confidence: number;
1331
- /** 结果摘要 */
1332
- summary: string;
1333
- }
1334
1310
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "soloforge",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "AI-driven development workflow system - one person does the work of a five-person team",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -14,7 +14,7 @@
14
14
  "scripts": {
15
15
  "build": "tsc",
16
16
  "dev": "tsc --watch",
17
- "test": "vitest run",
17
+ "test": "vitest run --reporter=verbose --reporter=json --outputFile=.vitest-results.json && node scripts/verify-test-counts.mjs",
18
18
  "test:watch": "vitest",
19
19
  "lint": "tsc --noEmit",
20
20
  "start": "node dist/index.js"
@@ -8,25 +8,24 @@ products: ["*"]
8
8
 
9
9
  ## 业务规则
10
10
  1. 所有关键业务操作(创建、修改、删除、导出、权限变更)必须记录审计日志
11
- 2. 审计日志不可修改和删除,至少保留 3 年
12
- 3. 每条审计日志包含:操作人、操作时间、操作类型、操作对象、变更前后数据
11
+ 2. 审计日志不可修改和删除(append-only),至少保留 3 年
12
+ 3. 每条审计日志必须包含:操作人、操作时间、操作类型、操作对象、变更前后数据
13
13
  4. 敏感操作(删除、权限变更、导出)需额外通知管理员
14
- 5. 审计日志必须记录:操作人、操作时间、操作类型、目标对象、变更前后值
15
- 6. 审计日志禁止被修改或删除(append-only),保证审计链完整性
16
- 7. 审计日志查询必须支持按时间范围、操作人、操作类型、目标对象筛选
14
+ 5. 审计日志查询必须支持按时间范围、操作人、操作类型、目标对象筛选
15
+ 6. 审计日志必须记录操作来源(Web/API/定时任务/系统),便于问题追溯
16
+ 7. 批量操作必须合并为一条审计记录,包含操作数量和关键参数
17
17
 
18
18
  ## 约束条件
19
19
  - 审计日志存储在独立表中(audit_log),不与业务数据混存
20
20
  - 通过 AOP 切面自动记录,减少开发人员手动埋点
21
21
  - 变更前后数据使用 JSON 格式存储(before/after 字段)
22
22
  - 审计日志表不支持 UPDATE 和 DELETE(数据库层权限控制)
23
- - 审计日志必须独立存储,不能与业务数据混用同一张表
24
23
  - 审计日志保留期限必须符合合规要求(如 ≥ 180 天)
25
24
 
26
25
  ## 例外情况
27
26
  - 查询操作(GET)一般不记录审计日志(除导出操作)
27
+ - 系统内部自动任务的操作记录标注为"系统"操作人
28
28
  - 批量操作合并为一条审计记录(含数量信息)
29
- - 查询类操作(GET)通常不记录审计日志,除非有特殊合规要求
30
29
 
31
30
  ## 关联模式
32
31
  参见 logging 模式(日志记录规范)、error-handling 模式(异常处理与审计)
@@ -9,7 +9,7 @@ products: ["*"]
9
9
  ## 业务规则
10
10
  - 导入必须提供标准模板下载功能,模板字段与校验规则一一对应
11
11
  - 导入数据必须全量校验后再入库,禁止边校验边入库(部分成功部分失败难以处理)
12
- - 校验失败必须返回完整錙误报告(行号 + 字段名 + 錙误原因),禁止只返回"导入失败"
12
+ - 校验失败必须返回完整错误报告(行号 + 字段名 + 错误原因),禁止只返回"导入失败"
13
13
  - 超过 1000 条的导入必须走异步处理,返回任务 ID 和进度查询接口
14
14
  - 导入更新模式必须明确:新增/覆盖/跳过已存在记录
15
15
  - 导出字段必须与导入模板字段对齐,导入的数据可通过导出还原
@@ -17,7 +17,7 @@ products: ["*"]
17
17
  - 导入模板必须与当前系统版本一致,字段变更时同步更新模板
18
18
  - 导出数据必须遵循数据权限规则,用户只能导出权限范围内的数据
19
19
 
20
- ## 约束
20
+ ## 约束条件
21
21
  - 导入文件大小限制(建议 10MB),超过限制前端拦截不提交
22
22
  - 导入文件类型限制(仅允许 .xlsx/.xls/.csv),禁止 .exe/.sh 等可执行文件
23
23
  - 导入操作必须有审计日志(操作人、时间、记录数、成功/失败数)
@@ -25,7 +25,7 @@ products: ["*"]
25
25
  - 导入文件大小必须限制(如 ≤ 20MB),超过限制拒绝处理
26
26
  - 导入操作必须有操作日志,记录导入人、时间、记录数、成功/失败数
27
27
 
28
- ## 例外
28
+ ## 例外情况
29
29
  - 小数据量(< 100 条)可同步导入,直接返回结果
30
30
  - 参考数据(字典、配置)导入可简化校验
31
31
  - 系统管理员导出数据可以绕过数据权限,但必须有审批流程
@@ -6,19 +6,29 @@ scope: [backend]
6
6
  products: ["*"]
7
7
  ---
8
8
 
9
- ## 常见机械条款
9
+ ## 业务规则
10
+ 1. 幂等:同一请求多次执行结果必须一致,适用于 PUT/DELETE 接口、支付回调、消息消费等场景
11
+ 2. 乐观锁:基于版本号(version 字段)的并发控制,更新时必须校验版本号,冲突时抛出业务异常而非静默覆盖
12
+ 3. 软删除:标记删除(is_deleted / deleted_at)而非物理删除,适用于有审计要求或可恢复需求的数据
13
+ 4. 硬删除:物理移除数据,仅适用于临时数据、可重建数据、日志明细等无审计要求的场景
14
+ 5. 级联:主记录变更自动传递到子记录(如主表状态变更联动子表),必须明确级联范围,禁止无限制级联
15
+ 6. 可恢复删除:删除后可在一定窗口内恢复(如回收站机制),窗口期到期后自动物理删除或归档
16
+ 7. 补偿:正向操作失败时执行反向操作,用于分布式事务 saga 模式,补偿操作本身也必须幂等
10
17
 
11
- | 条款 | 含义 | 适用场景 |
12
- |------|------|---------|
13
- | 幂等 | 同一请求多次执行结果一致 | PUT/DELETE 接口、支付回调 |
14
- | 乐观锁 | 基于版本号的并发控制 | 编辑保存、状态流转 |
15
- | 软删除 | 标记删除而非物理删除 | 有审计要求的数据 |
16
- | 硬删除 | 物理移除数据,不再保留主记录 | 临时数据、可重建数据 |
17
- | 级联 | 主记录变更自动传递到子记录 | 主从表同步、状态联动 |
18
- | 可恢复删除 | 删除后可在一定窗口内恢复 | 回收站、误删保护 |
19
- | 补偿 | 正向操作失败时执行反向操作 | 分布式事务、saga 模式 |
18
+ ## 约束条件
19
+ - 需求中出现上述条款时必须明确其在本项目中的具体实现语义,不得假设"大家都懂"
20
+ - 机械条款的选择属于裁决(团队决策),不属于需求事实,必须在需求澄清阶段确认
21
+ - 幂等字段必须建立唯一索引(如支付流水号、消息 ID),依赖数据库约束保证幂等性
22
+ - 乐观锁 version 字段禁止在 DTO 中暴露给前端,仅服务端内部使用
23
+ - 软删除的查询必须全局过滤已删除记录(MyBatis 拦截器或全局 scope),禁止每条 SQL 手动加条件
24
+ - 级联删除必须在 Entity 层配置(如 @OneToMany(cascade = CascadeType.REMOVE)),禁止在 Service 层手动循环删除
20
25
 
21
- ## 使用规则
22
- - 需求中出现上述条款时必须明确其在本项目中的具体实现语义
23
- - 不得假设"大家都懂",必须在需求澄清阶段确认
24
- - 机械条款的选择属于裁决(团队决策),不属于需求事实
26
+ ## 例外情况
27
+ - 日志明细、临时文件等可重建数据允许硬删除
28
+ - 数据迁移期间可临时绕过乐观锁,但必须记录变更并事后审计
29
+ - 性能敏感的批量操作(如定时任务清理)可绕过软删除全局过滤,但须显式声明
30
+
31
+ ## 关联模式
32
+ - [[concurrency-control]] 并发控制实现模式
33
+ - [[transaction-pattern]] 事务与补偿模式
34
+ - crud-operation
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: diff_ownership
3
+ type: pattern
4
+ when: "Diff 归属, 变更追踪, CAS 校验, 代码变更"
5
+ scope: [shared]
6
+ products: ["*"]
7
+ status: active
8
+ confidence: 1.0
9
+ created_at: 2026-05-18
10
+ updated_at: 2026-05-18
11
+ usage_count: 0
12
+ ---
13
+
14
+ ## 决策规则
15
+
16
+ - diff_ownership 追踪代码变更归属:owned / inherited / external
17
+ - CAS 校验确保 diff 与源文件一致
18
+ - scope 目录展开排除外部目录的 diff
19
+ - experimental: 只做状态模型和 CAS 校验,不替换现有写入流程
20
+
21
+ ## 验收项
22
+
23
+ - [AC-01] Diff 归属分类正确
24
+ - [AC-02] CAS 校验通过
25
+ - [AC-03] scope 排除外部 diff
26
+ - [AC-04] 冲突检测正常
27
+
28
+ ## 何时使用
29
+
30
+ experimental: 只做状态模型和 CAS 校验,不替换现有写入流程,不新增 hard block
31
+
32
+ ## 是否 hard block
33
+
34
+ 否。此能力为 advisory 状态,违规仅产生 advisory 警告,不阻断流程。
35
+
36
+ ## 证据要求
37
+
38
+ - Diff 归属分类测试通过
39
+ - CAS 校验生命周期测试通过
40
+ - 冲突检测测试通过
41
+ -
42
+
43
+ ## 人工确认/降级边界
44
+
45
+ - 此能力可被开发者决策覆盖
46
+ - 升级到 enforced 需满足 promotion_conditions 并通过 lifecycle_test_files 测试
47
+ - 降级/禁用需经 sf_capability_update + 人工确认
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: java_quality_guard
3
+ type: pattern
4
+ when: "Java 代码质量, 代码审查, 质量门禁, 空catch, raw type"
5
+ scope: [shared]
6
+ products: ["*"]
7
+ status: active
8
+ confidence: 1.0
9
+ created_at: 2026-05-18
10
+ updated_at: 2026-05-18
11
+ usage_count: 0
12
+ ---
13
+
14
+ ## 决策规则
15
+
16
+ - hard gate: 空 catch、raw type(ArrayList 无泛型)、System.out、Thread.sleep
17
+ - advisory: 方法长度 >80 行、缺少 @Override
18
+ - 项目规则通过 loadProjectRules 加载,可覆盖内置规则
19
+ - 规则 ID 格式: JAVA-C###(hard gate)、JAVA-Q###(advisory)
20
+
21
+ ## 验收项
22
+
23
+ - [AC-01] 空 catch 被检测
24
+ - [AC-02] raw type 被检测
25
+ - [AC-03] 项目规则覆盖内置规则
26
+ - [AC-04] advisory 规则不阻断
27
+
28
+ ## 何时使用
29
+
30
+ advisory: Java 质量门禁中只有 hard gate 阻断,其余为建议
31
+
32
+ ## 是否 hard block
33
+
34
+ 否。此能力为 advisory 状态,违规仅产生 advisory 警告,不阻断流程。
35
+
36
+ ## 证据要求
37
+
38
+ - hard gate 测试通过
39
+ - 项目规则覆盖测试通过
40
+ -
41
+
42
+ ## 人工确认/降级边界
43
+
44
+ - 此能力可被开发者决策覆盖
45
+ - 升级到 enforced 需满足 promotion_conditions 并通过 lifecycle_test_files 测试
46
+ - 降级/禁用需经 sf_capability_update + 人工确认
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: llm_gateway
3
+ type: pattern
4
+ when: "Token 预算, LLM 调用, 成本控制, 降级"
5
+ scope: [shared]
6
+ products: ["*"]
7
+ status: active
8
+ confidence: 1.0
9
+ created_at: 2026-05-18
10
+ updated_at: 2026-05-18
11
+ usage_count: 0
12
+ ---
13
+
14
+ ## 决策规则
15
+
16
+ - H1 handler 返回 h1_advisory warning,任务仍继续进入 executing
17
+ - 预算耗尽是 warning 不是 hard fail,不应阻断任务
18
+ - heartbeat 机制定期检查预算使用率
19
+ - 预算耗尽时建议降级到更便宜的模型(advisory 报告)
20
+
21
+ ## 验收项
22
+
23
+ - [AC-01] H1 handler 返回 advisory 不阻断
24
+ - [AC-02] heartbeat 正常触发
25
+ - [AC-03] 预算超限产生 warning
26
+ - [AC-04] 预算使用率可观测
27
+
28
+ ## 何时使用
29
+
30
+ advisory: 预算耗尽是 warning 不是 hard fail,不应阻断任务
31
+
32
+ ## 是否 hard block
33
+
34
+ 否。此能力为 advisory 状态,违规仅产生 advisory 警告,不阻断流程。
35
+
36
+ ## 证据要求
37
+
38
+ - H1/H4 handler 测试通过
39
+ - heartbeat 测试通过
40
+ -
41
+
42
+ ## 人工确认/降级边界
43
+
44
+ - 此能力可被开发者决策覆盖
45
+ - 升级到 enforced 需满足 promotion_conditions 并通过 lifecycle_test_files 测试
46
+ - 降级/禁用需经 sf_capability_update + 人工确认
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: task_context_lifecycle
3
+ type: pattern
4
+ when: "任务创建, 状态转移, 生命周期, 任务管理"
5
+ scope: [shared]
6
+ products: ["*"]
7
+ status: active
8
+ confidence: 1.0
9
+ created_at: 2026-05-18
10
+ updated_at: 2026-05-18
11
+ usage_count: 0
12
+ ---
13
+
14
+ ## 决策规则
15
+
16
+ - 任务状态机强制执行 VALID_TRANSITIONS,非法转移抛出错误
17
+ - 合法状态: classifying → planning → expanding → executing → verifying → learning → delivering → completed
18
+ - 可从 executing/verifying/learning 回到 classifying(重新分类)
19
+ - 可从任何非 terminal 状态进入 failed/cancelled
20
+ - 所有 handler 依赖此状态机约束,违反即 hard fail
21
+
22
+ ## 验收项
23
+
24
+ - [AC-01] 合法状态转移成功执行
25
+ - [AC-02] 非法状态转移抛出错误
26
+ - [AC-03] handler 生命周期测试覆盖所有转移路径
27
+ - [AC-04] 并发场景下无竞态条件
28
+
29
+ ## 何时使用
30
+
31
+ 核心状态机,所有 handler 依赖此约束
32
+
33
+ ## 是否 hard block
34
+
35
+ 是。此能力为 enforced 状态,违规即 hard fail 阻断流程。
36
+
37
+ ## 证据要求
38
+
39
+ - 全量状态转移测试通过
40
+ - handler 生命周期测试通过
41
+ - 无已知逃逸缺陷
42
+ -
43
+
44
+ ## 人工确认/降级边界
45
+
46
+ - enforced 能力不可跳过,违反即阻断
47
+ - 降级需经 sf_capability_update + 人工确认,提供 escape report 证据