soloforge 1.1.45 → 1.1.46

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 (269) hide show
  1. package/README.md +3 -3
  2. package/dist/context/contracts/lifecycle_knowledge_contract.d.ts.map +1 -1
  3. package/dist/context/contracts/lifecycle_knowledge_contract.js +2 -2
  4. package/dist/context/contracts/lifecycle_knowledge_contract.js.map +1 -1
  5. package/dist/core/task_context/manager.d.ts +0 -8
  6. package/dist/core/task_context/manager.d.ts.map +1 -1
  7. package/dist/core/task_context/manager.js +1 -19
  8. package/dist/core/task_context/manager.js.map +1 -1
  9. package/dist/core/task_context/state_fact_classifier.d.ts +0 -8
  10. package/dist/core/task_context/state_fact_classifier.d.ts.map +1 -1
  11. package/dist/core/task_context/state_fact_classifier.js +0 -36
  12. package/dist/core/task_context/state_fact_classifier.js.map +1 -1
  13. package/dist/domain/contracts/design_artifact_pack.d.ts +0 -1
  14. package/dist/domain/contracts/design_artifact_pack.d.ts.map +1 -1
  15. package/dist/domain/contracts/design_artifact_pack.js +1 -4
  16. package/dist/domain/contracts/design_artifact_pack.js.map +1 -1
  17. package/dist/domain/index.d.ts +1 -1
  18. package/dist/domain/index.d.ts.map +1 -1
  19. package/dist/domain/registry.d.ts +2 -2
  20. package/dist/domain/registry.d.ts.map +1 -1
  21. package/dist/domain/types.d.ts +1 -12
  22. package/dist/domain/types.d.ts.map +1 -1
  23. package/dist/domain/types.js +3 -0
  24. package/dist/domain/types.js.map +1 -1
  25. package/dist/gate/contracts/capability_registry.d.ts.map +1 -1
  26. package/dist/gate/contracts/capability_registry.js +0 -26
  27. package/dist/gate/contracts/capability_registry.js.map +1 -1
  28. package/dist/gate/contracts/control_plane_contract.d.ts +1 -1
  29. package/dist/gate/contracts/control_plane_contract.d.ts.map +1 -1
  30. package/dist/gate/contracts/control_plane_contract.js +1 -10
  31. package/dist/gate/contracts/control_plane_contract.js.map +1 -1
  32. package/dist/gate/contracts/tool_invocation_contract_registry.d.ts +1 -0
  33. package/dist/gate/contracts/tool_invocation_contract_registry.d.ts.map +1 -1
  34. package/dist/gate/contracts/tool_invocation_contract_registry.js +1 -1
  35. package/dist/gate/contracts/tool_invocation_contract_registry.js.map +1 -1
  36. package/dist/gate/index.d.ts +0 -2
  37. package/dist/gate/index.d.ts.map +1 -1
  38. package/dist/gate/index.js +0 -1
  39. package/dist/gate/index.js.map +1 -1
  40. package/dist/server/tools/index.d.ts.map +1 -1
  41. package/dist/server/tools/index.js +1 -3
  42. package/dist/server/tools/index.js.map +1 -1
  43. package/dist/server/tools/lazy_loaders.d.ts +0 -23
  44. package/dist/server/tools/lazy_loaders.d.ts.map +1 -1
  45. package/dist/server/tools/lazy_loaders.js +2 -33
  46. package/dist/server/tools/lazy_loaders.js.map +1 -1
  47. package/dist/server/tools/middleware.d.ts +2 -5
  48. package/dist/server/tools/middleware.d.ts.map +1 -1
  49. package/dist/server/tools/middleware.js +3 -33
  50. package/dist/server/tools/middleware.js.map +1 -1
  51. package/dist/server/tools/sf_task.js +2 -7
  52. package/dist/server/tools/sf_task.js.map +1 -1
  53. package/dist/server/tools/types.d.ts +0 -2
  54. package/dist/server/tools/types.d.ts.map +1 -1
  55. package/dist/types/pipeline_types.d.ts +1 -9
  56. package/dist/types/pipeline_types.d.ts.map +1 -1
  57. package/dist/verify/audit/verifier.d.ts.map +1 -1
  58. package/dist/verify/audit/verifier.js +0 -33
  59. package/dist/verify/audit/verifier.js.map +1 -1
  60. package/dist/verify/index.d.ts +1 -4
  61. package/dist/verify/index.d.ts.map +1 -1
  62. package/dist/verify/index.js +0 -3
  63. package/dist/verify/index.js.map +1 -1
  64. package/dist/verify/types.d.ts +0 -21
  65. package/dist/verify/types.d.ts.map +1 -1
  66. package/package.json +1 -1
  67. package/templates/shared//345/206/263/347/255/226/347/275/221/345/205/263.md +7 -21
  68. package/dist/context/engine/dependency_scanner.d.ts +0 -23
  69. package/dist/context/engine/dependency_scanner.d.ts.map +0 -1
  70. package/dist/context/engine/dependency_scanner.js +0 -309
  71. package/dist/context/engine/dependency_scanner.js.map +0 -1
  72. package/dist/context/engine/exploration.d.ts +0 -194
  73. package/dist/context/engine/exploration.d.ts.map +0 -1
  74. package/dist/context/engine/exploration.js +0 -712
  75. package/dist/context/engine/exploration.js.map +0 -1
  76. package/dist/context/knowledge/knowledge_acceptance_registry.d.ts +0 -42
  77. package/dist/context/knowledge/knowledge_acceptance_registry.d.ts.map +0 -1
  78. package/dist/context/knowledge/knowledge_acceptance_registry.js +0 -249
  79. package/dist/context/knowledge/knowledge_acceptance_registry.js.map +0 -1
  80. package/dist/context/knowledge/knowledge_scenario_registry.d.ts +0 -26
  81. package/dist/context/knowledge/knowledge_scenario_registry.d.ts.map +0 -1
  82. package/dist/context/knowledge/knowledge_scenario_registry.js +0 -267
  83. package/dist/context/knowledge/knowledge_scenario_registry.js.map +0 -1
  84. package/dist/context/knowledge/knowledge_sovereignty.d.ts +0 -65
  85. package/dist/context/knowledge/knowledge_sovereignty.d.ts.map +0 -1
  86. package/dist/context/knowledge/knowledge_sovereignty.js +0 -199
  87. package/dist/context/knowledge/knowledge_sovereignty.js.map +0 -1
  88. package/dist/context/team_awareness.d.ts +0 -42
  89. package/dist/context/team_awareness.d.ts.map +0 -1
  90. package/dist/context/team_awareness.js +0 -154
  91. package/dist/context/team_awareness.js.map +0 -1
  92. package/dist/context/templates/template_asset_visibility.d.ts +0 -116
  93. package/dist/context/templates/template_asset_visibility.d.ts.map +0 -1
  94. package/dist/context/templates/template_asset_visibility.js +0 -310
  95. package/dist/context/templates/template_asset_visibility.js.map +0 -1
  96. package/dist/gate/conflict_gate.d.ts +0 -53
  97. package/dist/gate/conflict_gate.d.ts.map +0 -1
  98. package/dist/gate/conflict_gate.js +0 -96
  99. package/dist/gate/conflict_gate.js.map +0 -1
  100. package/dist/gate/contracts/capability_action_advisor.d.ts +0 -34
  101. package/dist/gate/contracts/capability_action_advisor.d.ts.map +0 -1
  102. package/dist/gate/contracts/capability_action_advisor.js +0 -165
  103. package/dist/gate/contracts/capability_action_advisor.js.map +0 -1
  104. package/dist/gate/contracts/capability_state_store.d.ts +0 -121
  105. package/dist/gate/contracts/capability_state_store.d.ts.map +0 -1
  106. package/dist/gate/contracts/capability_state_store.js +0 -188
  107. package/dist/gate/contracts/capability_state_store.js.map +0 -1
  108. package/dist/gate/contracts/contract_guard.d.ts +0 -50
  109. package/dist/gate/contracts/contract_guard.d.ts.map +0 -1
  110. package/dist/gate/contracts/contract_guard.js +0 -611
  111. package/dist/gate/contracts/contract_guard.js.map +0 -1
  112. package/dist/gate/contracts/escape_report.d.ts +0 -103
  113. package/dist/gate/contracts/escape_report.d.ts.map +0 -1
  114. package/dist/gate/contracts/escape_report.js +0 -145
  115. package/dist/gate/contracts/escape_report.js.map +0 -1
  116. package/dist/gate/feasibility_checker.d.ts +0 -27
  117. package/dist/gate/feasibility_checker.d.ts.map +0 -1
  118. package/dist/gate/feasibility_checker.js +0 -114
  119. package/dist/gate/feasibility_checker.js.map +0 -1
  120. package/dist/gate/migration_guard.d.ts +0 -22
  121. package/dist/gate/migration_guard.d.ts.map +0 -1
  122. package/dist/gate/migration_guard.js +0 -277
  123. package/dist/gate/migration_guard.js.map +0 -1
  124. package/dist/gate/scope_lease.d.ts +0 -94
  125. package/dist/gate/scope_lease.d.ts.map +0 -1
  126. package/dist/gate/scope_lease.js +0 -180
  127. package/dist/gate/scope_lease.js.map +0 -1
  128. package/dist/git/git_deps.d.ts +0 -85
  129. package/dist/git/git_deps.d.ts.map +0 -1
  130. package/dist/git/git_deps.js +0 -22
  131. package/dist/git/git_deps.js.map +0 -1
  132. package/dist/git/operations.d.ts +0 -173
  133. package/dist/git/operations.d.ts.map +0 -1
  134. package/dist/git/operations.js +0 -350
  135. package/dist/git/operations.js.map +0 -1
  136. package/dist/server/tools/gate_engine.d.ts +0 -17
  137. package/dist/server/tools/gate_engine.d.ts.map +0 -1
  138. package/dist/server/tools/gate_engine.js +0 -17
  139. package/dist/server/tools/gate_engine.js.map +0 -1
  140. package/dist/server/tools/middleware/budget_check.d.ts +0 -35
  141. package/dist/server/tools/middleware/budget_check.d.ts.map +0 -1
  142. package/dist/server/tools/middleware/budget_check.js +0 -69
  143. package/dist/server/tools/middleware/budget_check.js.map +0 -1
  144. package/dist/shared/contracts/contract_registry/builtin_contracts_core.d.ts +0 -16
  145. package/dist/shared/contracts/contract_registry/builtin_contracts_core.d.ts.map +0 -1
  146. package/dist/shared/contracts/contract_registry/builtin_contracts_core.js +0 -306
  147. package/dist/shared/contracts/contract_registry/builtin_contracts_core.js.map +0 -1
  148. package/dist/shared/contracts/contract_registry/builtin_contracts_core_2.d.ts +0 -16
  149. package/dist/shared/contracts/contract_registry/builtin_contracts_core_2.d.ts.map +0 -1
  150. package/dist/shared/contracts/contract_registry/builtin_contracts_core_2.js +0 -304
  151. package/dist/shared/contracts/contract_registry/builtin_contracts_core_2.js.map +0 -1
  152. package/dist/shared/contracts/contract_registry/builtin_contracts_extended.d.ts +0 -16
  153. package/dist/shared/contracts/contract_registry/builtin_contracts_extended.d.ts.map +0 -1
  154. package/dist/shared/contracts/contract_registry/builtin_contracts_extended.js +0 -434
  155. package/dist/shared/contracts/contract_registry/builtin_contracts_extended.js.map +0 -1
  156. package/dist/shared/contracts/contract_registry/index.d.ts +0 -8
  157. package/dist/shared/contracts/contract_registry/index.d.ts.map +0 -1
  158. package/dist/shared/contracts/contract_registry/index.js +0 -7
  159. package/dist/shared/contracts/contract_registry/index.js.map +0 -1
  160. package/dist/shared/contracts/contract_registry/registry.d.ts +0 -62
  161. package/dist/shared/contracts/contract_registry/registry.d.ts.map +0 -1
  162. package/dist/shared/contracts/contract_registry/registry.js +0 -191
  163. package/dist/shared/contracts/contract_registry/registry.js.map +0 -1
  164. package/dist/shared/contracts/contract_registry/registry_internal.d.ts +0 -19
  165. package/dist/shared/contracts/contract_registry/registry_internal.d.ts.map +0 -1
  166. package/dist/shared/contracts/contract_registry/registry_internal.js +0 -54
  167. package/dist/shared/contracts/contract_registry/registry_internal.js.map +0 -1
  168. package/dist/shared/contracts/contract_registry/types.d.ts +0 -47
  169. package/dist/shared/contracts/contract_registry/types.d.ts.map +0 -1
  170. package/dist/shared/contracts/contract_registry/types.js +0 -5
  171. package/dist/shared/contracts/contract_registry/types.js.map +0 -1
  172. package/dist/shared/contracts/contract_registry/validation.d.ts +0 -25
  173. package/dist/shared/contracts/contract_registry/validation.d.ts.map +0 -1
  174. package/dist/shared/contracts/contract_registry/validation.js +0 -363
  175. package/dist/shared/contracts/contract_registry/validation.js.map +0 -1
  176. package/dist/shared/llm_gateway.d.ts +0 -186
  177. package/dist/shared/llm_gateway.d.ts.map +0 -1
  178. package/dist/shared/llm_gateway.js +0 -393
  179. package/dist/shared/llm_gateway.js.map +0 -1
  180. package/dist/verify/audit/audit_sampler.d.ts +0 -29
  181. package/dist/verify/audit/audit_sampler.d.ts.map +0 -1
  182. package/dist/verify/audit/audit_sampler.js +0 -42
  183. package/dist/verify/audit/audit_sampler.js.map +0 -1
  184. package/dist/verify/audit/debt_reporter.d.ts +0 -22
  185. package/dist/verify/audit/debt_reporter.d.ts.map +0 -1
  186. package/dist/verify/audit/debt_reporter.js +0 -107
  187. package/dist/verify/audit/debt_reporter.js.map +0 -1
  188. package/dist/verify/audit/debugger.d.ts +0 -25
  189. package/dist/verify/audit/debugger.d.ts.map +0 -1
  190. package/dist/verify/audit/debugger.js +0 -429
  191. package/dist/verify/audit/debugger.js.map +0 -1
  192. package/dist/verify/audit/degradation.d.ts +0 -62
  193. package/dist/verify/audit/degradation.d.ts.map +0 -1
  194. package/dist/verify/audit/degradation.js +0 -78
  195. package/dist/verify/audit/degradation.js.map +0 -1
  196. package/dist/verify/audit/developer_sovereignty.d.ts +0 -29
  197. package/dist/verify/audit/developer_sovereignty.d.ts.map +0 -1
  198. package/dist/verify/audit/developer_sovereignty.js +0 -137
  199. package/dist/verify/audit/developer_sovereignty.js.map +0 -1
  200. package/dist/verify/audit/failure_report.d.ts +0 -76
  201. package/dist/verify/audit/failure_report.d.ts.map +0 -1
  202. package/dist/verify/audit/failure_report.js +0 -145
  203. package/dist/verify/audit/failure_report.js.map +0 -1
  204. package/dist/verify/audit/governance_report.d.ts +0 -110
  205. package/dist/verify/audit/governance_report.d.ts.map +0 -1
  206. package/dist/verify/audit/governance_report.js +0 -194
  207. package/dist/verify/audit/governance_report.js.map +0 -1
  208. package/dist/verify/audit/mutation_audit.d.ts +0 -40
  209. package/dist/verify/audit/mutation_audit.d.ts.map +0 -1
  210. package/dist/verify/audit/mutation_audit.js +0 -154
  211. package/dist/verify/audit/mutation_audit.js.map +0 -1
  212. package/dist/verify/audit/risk_sampler.d.ts +0 -44
  213. package/dist/verify/audit/risk_sampler.d.ts.map +0 -1
  214. package/dist/verify/audit/risk_sampler.js +0 -80
  215. package/dist/verify/audit/risk_sampler.js.map +0 -1
  216. package/dist/verify/audit/runtime_safety.d.ts +0 -89
  217. package/dist/verify/audit/runtime_safety.d.ts.map +0 -1
  218. package/dist/verify/audit/runtime_safety.js +0 -209
  219. package/dist/verify/audit/runtime_safety.js.map +0 -1
  220. package/dist/verify/audit/semantic_evidence.d.ts +0 -36
  221. package/dist/verify/audit/semantic_evidence.d.ts.map +0 -1
  222. package/dist/verify/audit/semantic_evidence.js +0 -90
  223. package/dist/verify/audit/semantic_evidence.js.map +0 -1
  224. package/dist/verify/audit/test_generator.d.ts +0 -23
  225. package/dist/verify/audit/test_generator.d.ts.map +0 -1
  226. package/dist/verify/audit/test_generator.js +0 -278
  227. package/dist/verify/audit/test_generator.js.map +0 -1
  228. package/dist/verify/audit/test_quality.d.ts +0 -49
  229. package/dist/verify/audit/test_quality.d.ts.map +0 -1
  230. package/dist/verify/audit/test_quality.js +0 -684
  231. package/dist/verify/audit/test_quality.js.map +0 -1
  232. package/dist/verify/change_coordinator.d.ts +0 -45
  233. package/dist/verify/change_coordinator.d.ts.map +0 -1
  234. package/dist/verify/change_coordinator.js +0 -168
  235. package/dist/verify/change_coordinator.js.map +0 -1
  236. package/dist/verify/contracts/decision_contract.d.ts +0 -51
  237. package/dist/verify/contracts/decision_contract.d.ts.map +0 -1
  238. package/dist/verify/contracts/decision_contract.js +0 -70
  239. package/dist/verify/contracts/decision_contract.js.map +0 -1
  240. package/dist/verify/contracts/mechanism_contract_registry/contracts-audit.d.ts +0 -17
  241. package/dist/verify/contracts/mechanism_contract_registry/contracts-audit.d.ts.map +0 -1
  242. package/dist/verify/contracts/mechanism_contract_registry/contracts-audit.js +0 -428
  243. package/dist/verify/contracts/mechanism_contract_registry/contracts-audit.js.map +0 -1
  244. package/dist/verify/contracts/mechanism_contract_registry/contracts-governance.d.ts +0 -17
  245. package/dist/verify/contracts/mechanism_contract_registry/contracts-governance.d.ts.map +0 -1
  246. package/dist/verify/contracts/mechanism_contract_registry/contracts-governance.js +0 -429
  247. package/dist/verify/contracts/mechanism_contract_registry/contracts-governance.js.map +0 -1
  248. package/dist/verify/contracts/mechanism_contract_registry/contracts-pipeline.d.ts +0 -17
  249. package/dist/verify/contracts/mechanism_contract_registry/contracts-pipeline.d.ts.map +0 -1
  250. package/dist/verify/contracts/mechanism_contract_registry/contracts-pipeline.js +0 -194
  251. package/dist/verify/contracts/mechanism_contract_registry/contracts-pipeline.js.map +0 -1
  252. package/dist/verify/contracts/mechanism_contract_registry/contracts-platform.d.ts +0 -17
  253. package/dist/verify/contracts/mechanism_contract_registry/contracts-platform.d.ts.map +0 -1
  254. package/dist/verify/contracts/mechanism_contract_registry/contracts-platform.js +0 -365
  255. package/dist/verify/contracts/mechanism_contract_registry/contracts-platform.js.map +0 -1
  256. package/dist/verify/contracts/mechanism_contract_registry/index.d.ts +0 -19
  257. package/dist/verify/contracts/mechanism_contract_registry/index.d.ts.map +0 -1
  258. package/dist/verify/contracts/mechanism_contract_registry/index.js +0 -21
  259. package/dist/verify/contracts/mechanism_contract_registry/index.js.map +0 -1
  260. package/dist/verify/contracts/mechanism_contract_registry/types.d.ts +0 -33
  261. package/dist/verify/contracts/mechanism_contract_registry/types.d.ts.map +0 -1
  262. package/dist/verify/contracts/mechanism_contract_registry/types.js +0 -5
  263. package/dist/verify/contracts/mechanism_contract_registry/types.js.map +0 -1
  264. package/dist/verify/contracts/mechanism_contract_registry/validation.d.ts +0 -38
  265. package/dist/verify/contracts/mechanism_contract_registry/validation.d.ts.map +0 -1
  266. package/dist/verify/contracts/mechanism_contract_registry/validation.js +0 -136
  267. package/dist/verify/contracts/mechanism_contract_registry/validation.js.map +0 -1
  268. package/templates/shared/LLM/351/242/204/347/256/227/347/275/221/345/205/263.md +0 -54
  269. package/templates/shared//346/265/201/345/274/217/345/277/203/350/267/263.md +0 -64
@@ -66,27 +66,6 @@ export interface EvidenceItem {
66
66
  /** 时间戳 */
67
67
  timestamp?: string;
68
68
  }
69
- /** 覆盖率矩阵,统计 API/页面/流程的测试覆盖情况 */
70
- export interface CoverageMatrix {
71
- /** API 覆盖率 */
72
- api_coverage: {
73
- total: number;
74
- tested: number;
75
- gaps: string[];
76
- };
77
- /** 页面覆盖率 */
78
- page_coverage: {
79
- total: number;
80
- tested: number;
81
- gaps: string[];
82
- };
83
- /** 流程覆盖率 */
84
- flow_coverage: {
85
- total: number;
86
- tested: number;
87
- gaps: string[];
88
- };
89
- }
90
69
  /** 双层机制状态 */
91
70
  export type DualLayerMechanismStatus = "template_only_advisory" | "code_only_enforced" | "dual_layer_enforced" | "experimental_dual_layer" | "deprecated";
92
71
  /** 模板层宿主目标 */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/verify/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/verify/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.1.45",
3
+ "version": "1.1.46",
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",
@@ -21,41 +21,27 @@ extra:
21
21
 
22
22
  ## 决策规则
23
23
 
24
- - LLM Gateway Token 全局预算上限 Budget_Total = 100000(advisory,不 hard block)
25
- - LLM Gateway 单任务预算上限 Task_Budget = 30000(advisory,预算耗尽返回 warning 不阻断)
26
- - H1 handler 返回 h1_advisory warning,任务仍继续进入 executing
27
- - 熔断触发比 Circuit_Breaker_Ratio = 0.9,超过即 advisory 告警并建议降级模型
28
- - 重型操作分级 tier=heavy 自动启动流式心跳(advisory)
29
- - 心跳间隔 Heartbeat_Interval = 5000 毫秒
30
24
  - 控制流操作(classify/scope_resolve/drift_detect 等)走本地,不消耗 Token
31
- - 决策流操作(intent_refinement/solution_brainstorm/code_generation 等)走 Gateway,消耗 Token
32
- - AI 操作分级: light(<2000)/ medium(2000-3000)/ heavy(>3000)
33
- - 信心门限 Confidence_Threshold = 0.95,低于此值触发头脑风暴流程补充
25
+ - 决策流操作(intent_refinement/solution_brainstorm/code_generation 等)由客户端 AI 执行(SoloForge 引擎本身不调 LLM)
26
+ - 信心门限 Confidence_Threshold = 0.95,低于此值禁止直接输出执行代码,必须触发头脑风暴流程(三轨方案)展示后再执行
34
27
 
35
28
  ## 验收项
36
29
 
37
- - [AC-01] Token 消耗监控按 operation_type 追踪
38
- - [AC-02] 预算超限返回 advisory warning,不阻断任务
39
- - [AC-03] 熔断后 AI 操作建议降级模型(advisory)
40
- - [AC-04] 心跳在重型操作期间每 Heartbeat_Interval 毫秒输出进度
41
- - [AC-05] 每次请求返回 remaining_budget 和 remaining_task_budget
30
+ - [AC-01] 信心门限由 gate/cep_assessment 独立实现(requiresBrainstorm / checkBrainstormGate),低置信度强制走头脑风暴流程
42
31
 
43
32
  ## 何时使用
44
33
 
45
- advisory: 预算耗尽是 warning 不是 hard fail,不应阻断任务
34
+ 信心门限:AI 决策置信度低于阈值时,禁止直接输出执行代码,必须先走头脑风暴流程展示多轨方案。
46
35
 
47
36
  ## 是否 hard block
48
37
 
49
- 否。此能力为 advisory 状态,违规仅产生 advisory 警告,不阻断流程。
38
+ 信心低于阈值时禁止直接执行(强制走头脑风暴流程),但不阻断整个任务。
50
39
 
51
40
  ## 证据要求
52
41
 
53
- - H1/H4 handler 测试通过
54
- - heartbeat 测试通过
55
- -
42
+ - cep_assessment 头脑风暴门禁测试通过
56
43
 
57
44
  ## 人工确认/降级边界
58
45
 
59
46
  - 此能力可被开发者决策覆盖
60
- - 升级到 enforced 需满足 promotion_conditions 并通过 lifecycle_test_files 测试
61
- - 降级/禁用需经 治理运行时 + 人工确认
47
+ - 历史记录:LLM Token 预算网关(LLMGateway,含预算/熔断/heartbeat/capability CAP-006)于 2026-06 移除——原因:影子记账不准、文案误导产出收缩(如 api_specification 被压缩);真预算管控交客户端 AI 侧
@@ -1,23 +0,0 @@
1
- /**
2
- * Dependency Scanner — 模块模块。
3
- *
4
- * 职责边界:
5
- * - 负责:scanDependencies 等 模块职责
6
- * - 不负责:不属于本模块的职责由对应模块承担
7
- *
8
- * 被谁调用:上层模块按需调用
9
- * 调用谁:index、logger、helpers
10
- *
11
- * 数据流:输入 → scanDependencies 处理 → 输出
12
- * 持久化:无持久化(纯计算/内存态)
13
- */
14
- import type { DependencyScanResult } from "../../types/index.js";
15
- /**
16
- * 扫描依赖文件中的已知漏洞 — 根据文件名自动选择解析器。
17
- * 支持格式: package.json (Node.js)、pom.xml (Java/Maven)、build.gradle (Java/Gradle)。
18
- * @param content - 依赖文件内容
19
- * @param filename - 文件名(用于判断解析器类型)
20
- * @returns 扫描结果,包含漏洞列表、未锁定版本和中文摘要
21
- */
22
- export declare function scanDependencies(content: string, filename: string): DependencyScanResult;
23
- //# sourceMappingURL=dependency_scanner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependency_scanner.d.ts","sourceRoot":"","sources":["../../../src/context/engine/dependency_scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAqB,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAuQpF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,oBAAoB,CA+FxF"}
@@ -1,309 +0,0 @@
1
- /**
2
- * Dependency Scanner — 模块模块。
3
- *
4
- * 职责边界:
5
- * - 负责:scanDependencies 等 模块职责
6
- * - 不负责:不属于本模块的职责由对应模块承担
7
- *
8
- * 被谁调用:上层模块按需调用
9
- * 调用谁:index、logger、helpers
10
- *
11
- * 数据流:输入 → scanDependencies 处理 → 输出
12
- * 持久化:无持久化(纯计算/内存态)
13
- */
14
- import { debug } from "../../shared/logger.js";
15
- import { safeJsonParse } from "../../shared/helpers.js";
16
- /**
17
- * 依赖漏洞扫描器 — 解析 package.json/pom.xml/build.gradle,基于内置漏洞规则库
18
- * 检测已知漏洞和未锁定版本。纯规则驱动,零 AI 依赖,不调用外部 API。
19
- */
20
- /** 内置漏洞规则库: 各语言生态的已知高风险依赖版本(包名 → 最低安全版本 → 漏洞描述) */
21
- // ── 漏洞数据库(硬编码规则库,零 AI 依赖) ──
22
- const VULN_DB = [
23
- // Java 生态
24
- { package: "log4j-core", minSafe: "2.17.0", severity: "critical", issue: "Log4Shell RCE (CVE-2021-44228)" },
25
- { package: "fastjson", minSafe: "1.2.83", severity: "critical", issue: "反序列化远程代码执行" },
26
- { package: "jackson-databind", minSafe: "2.13.0", severity: "critical", issue: "反序列化漏洞" },
27
- { package: "shiro-core", minSafe: "1.10.0", severity: "high", issue: "认证绕过漏洞" },
28
- // Node.js 生态
29
- { package: "lodash", minSafe: "4.17.21", severity: "high", issue: "原型污染 (CVE-2021-23337)" },
30
- { package: "express", minSafe: "4.18.0", severity: "medium", issue: "开放重定向" },
31
- { package: "axios", minSafe: "0.21.1", severity: "high", issue: "SSRF 漏洞" },
32
- { package: "node-fetch", minSafe: "2.6.7", severity: "medium", issue: "信息泄露" },
33
- { package: "jsonwebtoken", minSafe: "9.0.0", severity: "high", issue: "密钥验证绕过" },
34
- { package: "bcrypt", minSafe: "5.0.0", severity: "medium", issue: "轮次限制不足" },
35
- { package: "multer", minSafe: "1.4.4", severity: "medium", issue: "内存耗尽" },
36
- { package: "dompurify", minSafe: "2.3.3", severity: "high", issue: "XSS 绕过" },
37
- { package: "moment", minSafe: "2.29.4", severity: "low", issue: "ReDoS 拒绝服务" },
38
- { package: "yargs-parser", minSafe: "18.1.2", severity: "high", issue: "原型污染" },
39
- { package: "ua-parser-js", minSafe: "0.7.31", severity: "critical", issue: "供应链攻击" },
40
- { package: "event-source", minSafe: "2.0.1", severity: "high", issue: "CRLF 注入" },
41
- ];
42
- /** 未锁定版本的正则匹配模式 — 匹配 "*"、"x"、"X" 或空字符串等无精确版本号的情况 */
43
- // ── 未锁定版本标识 ──
44
- const UNSCOPED_PATTERN = /^\s*[*xX]?\s*$/;
45
- // ── 版本比较 ──
46
- /**
47
- * 比较两个 semver 风格的版本号,判断 a 是否大于 b。
48
- * - 按点号分隔,逐段数值比较
49
- * - 段数不足时以 0 补齐
50
- * - 预发布后缀(如 -beta.1、-rc.2)在比较前被剥离
51
- * @param a - 版本号 a
52
- * @param b - 版本号 b
53
- * @returns 当 a > b 时返回 true
54
- */
55
- function semverGt(a, b) {
56
- const normalize = (v) => v.replace(/-[\w.]+$/, "").split(".").map((seg) => {
57
- const n = parseInt(seg, 10);
58
- return Number.isNaN(n) ? 0 : n;
59
- });
60
- const segsA = normalize(a);
61
- const segsB = normalize(b);
62
- const maxLen = Math.max(segsA.length, segsB.length);
63
- for (let i = 0; i < maxLen; i++) {
64
- const pa = segsA[i] ?? 0;
65
- const pb = segsB[i] ?? 0;
66
- if (pa > pb)
67
- return true;
68
- if (pa < pb)
69
- return false;
70
- }
71
- return false;
72
- }
73
- /**
74
- * 检查版本字符串是否为未锁定版本(如 "*"、"latest"、"x"、空字符串)。
75
- * @param version - 版本字符串
76
- * @returns 未锁定时返回 true
77
- */
78
- function isUnscoped(version) {
79
- const trimmed = version.trim().toLowerCase();
80
- return trimmed === "" || trimmed === "latest" || UNSCOPED_PATTERN.test(trimmed);
81
- }
82
- // ── 版本提取 ──
83
- /**
84
- * 从常见版本说明符中提取版本号 — 支持 ^/~/>=/<=/ 前缀。
85
- * @param versionSpecifier - 版本说明符字符串
86
- * @returns 提取的纯版本号(如 "1.2.3"),URL/git 引用返回 null,无法解析时返回原始值
87
- */
88
- function extractVersion(versionSpecifier) {
89
- const v = versionSpecifier.trim();
90
- // 跳过 URL 引用和 git 引用 — 这些不参与版本扫描
91
- if (/^(https?:|git[:+]|github:|file:|git@|ssh:|\/)/i.test(v)) {
92
- return null;
93
- }
94
- // 跳过 workspace/file/link 等本地协议依赖 — 这些在本地解析,不可扫描
95
- if (/^(workspace|file|link|portal|npm):/i.test(v)) {
96
- return null;
97
- }
98
- // 提取纯数字版本: 剥离前缀修饰符 ^, ~, >=, <=, >, <, =
99
- const match = v.match(/^[\^~>=<\s]*([\d][\d.]*)/);
100
- return match ? match[1] : v;
101
- }
102
- // ── 漏洞匹配 ──
103
- /**
104
- * 检查指定包名和版本是否存在已知漏洞 — 遍历漏洞规则库进行匹配。
105
- * @param pkgName - 包名(如 "lodash")
106
- * @param version - 已安装版本号
107
- * @returns 存在漏洞时返回漏洞详情,否则返回 undefined
108
- */
109
- function checkVulnerability(pkgName, version) {
110
- for (const entry of VULN_DB) {
111
- if (pkgName === entry.package) {
112
- // 已安装版本低于最低安全版本时判定为漏洞
113
- if (!semverGt(version, entry.minSafe)) {
114
- // 预发布版本检查: 标准化版本等于 minSafe 但原始版本含预发布后缀时,
115
- // 按 semver 规范预发布版本 < 正式版本,因此仍视为漏洞
116
- const normalizedVersion = version.replace(/-[\w.]+$/, "");
117
- if (normalizedVersion === entry.minSafe && /-[\w.]+$/.test(version)) {
118
- return {
119
- package: pkgName,
120
- installed_version: version,
121
- severity: entry.severity,
122
- issue: entry.issue,
123
- fixed_in: entry.minSafe,
124
- };
125
- }
126
- return {
127
- package: pkgName,
128
- installed_version: version,
129
- severity: entry.severity,
130
- issue: entry.issue,
131
- fixed_in: entry.minSafe,
132
- };
133
- }
134
- }
135
- }
136
- return undefined;
137
- }
138
- /** 解析 package.json — 提取 dependencies 和 devDependencies 中的包名和版本 */
139
- function parsePackageJson(content) {
140
- const deps = [];
141
- const pkg = safeJsonParse(content);
142
- if (!pkg)
143
- return deps;
144
- const extract = (obj, isDev) => {
145
- if (!obj)
146
- return;
147
- for (const [name, ver] of Object.entries(obj)) {
148
- deps.push({ name, version: ver, isDev });
149
- }
150
- };
151
- extract(pkg.dependencies, false);
152
- extract(pkg.devDependencies, true);
153
- return deps;
154
- }
155
- /** 解析 pom.xml — 匹配 groupId/artifactId/version 三元组,支持多行格式 */
156
- function parsePomXml(content) {
157
- const deps = [];
158
- // 匹配 <groupId>...<artifactId>...<version> 代码块,支持多行内容中的非贪婪匹配
159
- const depPattern = /<groupId>\s*([\w.-]+)\s*<\/groupId>\s*<artifactId>\s*([\w.-]+)\s*<\/artifactId>\s*<version>\s*([\w.${}-]+)\s*<\/version>/g;
160
- let match;
161
- while ((match = depPattern.exec(content)) !== null) {
162
- deps.push({
163
- groupId: match[1],
164
- artifactId: match[2],
165
- version: match[3],
166
- });
167
- }
168
- return deps;
169
- }
170
- /** 解析 build.gradle — 匹配 group:artifact:version 格式(如 'org.apache:log4j-core:2.14.1') */
171
- function parseBuildGradle(content) {
172
- const deps = [];
173
- // 匹配 group:artifact:version 格式(如 'org.apache.logging.log4j:log4j-core:2.14.1')
174
- const depPattern = /['"]([\w.-]+):([\w.-]+):([\d.]+(?:-[a-zA-Z][\w.-]*)?)['"]/g;
175
- let match;
176
- while ((match = depPattern.exec(content)) !== null) {
177
- deps.push({
178
- group: match[1],
179
- artifact: match[2],
180
- version: match[3],
181
- });
182
- }
183
- return deps;
184
- }
185
- // ── 摘要生成 ──
186
- /**
187
- * 构建扫描结果摘要 — 统计漏洞数量和未锁定版本数量,生成中文摘要文本。
188
- * @param total - 扫描的依赖总数
189
- * @param vulnerabilities - 发现的漏洞列表
190
- * @param unscoped - 未锁定版本列表
191
- * @returns 中文格式的扫描摘要
192
- */
193
- function buildSummary(total, vulnerabilities, unscoped) {
194
- if (total === 0) {
195
- return "未发现可解析的依赖项";
196
- }
197
- const criticalCount = vulnerabilities.filter((v) => v.severity === "critical").length;
198
- const highCount = vulnerabilities.filter((v) => v.severity === "high").length;
199
- const vulnParts = [];
200
- if (vulnerabilities.length > 0) {
201
- vulnParts.push(`发现 ${vulnerabilities.length} 个漏洞`);
202
- const severityParts = [];
203
- if (criticalCount > 0)
204
- severityParts.push(`${criticalCount} critical`);
205
- if (highCount > 0)
206
- severityParts.push(`${highCount} high`);
207
- if (severityParts.length > 0) {
208
- vulnParts.push(`(${severityParts.join(", ")})`);
209
- }
210
- }
211
- const unscopedPart = unscoped.length > 0 ? `,${unscoped.length} 个未锁定版本` : "";
212
- if (vulnParts.length > 0) {
213
- return `扫描了 ${total} 个依赖,${vulnParts.join("")}${unscopedPart}`;
214
- }
215
- return `扫描了 ${total} 个依赖,未发现已知漏洞${unscopedPart}`;
216
- }
217
- // ── 主函数 ──
218
- /**
219
- * 扫描依赖文件中的已知漏洞 — 根据文件名自动选择解析器。
220
- * 支持格式: package.json (Node.js)、pom.xml (Java/Maven)、build.gradle (Java/Gradle)。
221
- * @param content - 依赖文件内容
222
- * @param filename - 文件名(用于判断解析器类型)
223
- * @returns 扫描结果,包含漏洞列表、未锁定版本和中文摘要
224
- */
225
- export function scanDependencies(content, filename) {
226
- debug("依赖扫描", `开始扫描 ${filename}`);
227
- const baseName = filename.split("/").pop()?.toLowerCase() ?? "";
228
- // ── 解析 package.json ──
229
- if (baseName === "package.json") {
230
- debug("依赖扫描", "检测到 package.json,使用 Node.js 解析器");
231
- const parsed = parsePackageJson(content);
232
- const vulnerabilities = [];
233
- const unscoped_versions = [];
234
- let scannedCount = 0;
235
- for (const dep of parsed) {
236
- const extracted = extractVersion(dep.version);
237
- if (extracted === null)
238
- continue; // URL / git 引用,跳过
239
- scannedCount++;
240
- if (isUnscoped(extracted)) {
241
- unscoped_versions.push(`${dep.name}: ${dep.version}`);
242
- continue;
243
- }
244
- const vuln = checkVulnerability(dep.name, extracted);
245
- if (vuln) {
246
- vulnerabilities.push(vuln);
247
- }
248
- }
249
- return {
250
- file: filename,
251
- dependencies_scanned: scannedCount,
252
- vulnerabilities,
253
- unscoped_versions,
254
- summary: buildSummary(scannedCount, vulnerabilities, unscoped_versions),
255
- };
256
- }
257
- // ── 解析 pom.xml ──
258
- if (baseName === "pom.xml") {
259
- debug("依赖扫描", "检测到 pom.xml,使用 Maven 解析器");
260
- const parsed = parsePomXml(content);
261
- const vulnerabilities = [];
262
- let scannedCount = 0;
263
- for (const dep of parsed) {
264
- scannedCount++;
265
- const vuln = checkVulnerability(dep.artifactId, dep.version);
266
- if (vuln) {
267
- vulnerabilities.push(vuln);
268
- }
269
- }
270
- return {
271
- file: filename,
272
- dependencies_scanned: scannedCount,
273
- vulnerabilities,
274
- unscoped_versions: [],
275
- summary: buildSummary(scannedCount, vulnerabilities, []),
276
- };
277
- }
278
- // ── 解析 build.gradle ──
279
- if (baseName === "build.gradle" || baseName === "build.gradle.kts") {
280
- debug("依赖扫描", "检测到 build.gradle,使用 Gradle 解析器");
281
- const parsed = parseBuildGradle(content);
282
- const vulnerabilities = [];
283
- let scannedCount = 0;
284
- for (const dep of parsed) {
285
- scannedCount++;
286
- const vuln = checkVulnerability(dep.artifact, dep.version);
287
- if (vuln) {
288
- vulnerabilities.push(vuln);
289
- }
290
- }
291
- return {
292
- file: filename,
293
- dependencies_scanned: scannedCount,
294
- vulnerabilities,
295
- unscoped_versions: [],
296
- summary: buildSummary(scannedCount, vulnerabilities, []),
297
- };
298
- }
299
- // ── 不支持的文件格式,返回空结果 ──
300
- debug("依赖扫描", `不支持的文件格式 ${filename}`);
301
- return {
302
- file: filename,
303
- dependencies_scanned: 0,
304
- vulnerabilities: [],
305
- unscoped_versions: [],
306
- summary: "不支持的依赖文件格式",
307
- };
308
- }
309
- //# sourceMappingURL=dependency_scanner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dependency_scanner.js","sourceRoot":"","sources":["../../../src/context/engine/dependency_scanner.ts"],"names":[],"mappings":"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"}