soloforge 1.1.38 → 1.1.40

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 (729) hide show
  1. package/CHANGELOG.md +149 -149
  2. package/README.md +73 -49
  3. package/dist/adapters/shared/workflow_template.js +1 -1
  4. package/dist/bin/commands/analyze.d.ts +7 -0
  5. package/dist/bin/commands/analyze.d.ts.map +1 -0
  6. package/dist/bin/commands/analyze.js +52 -0
  7. package/dist/bin/commands/analyze.js.map +1 -0
  8. package/dist/bin/commands/audit.d.ts.map +1 -1
  9. package/dist/bin/commands/audit.js +104 -83
  10. package/dist/bin/commands/audit.js.map +1 -1
  11. package/dist/bin/commands/check_bash.d.ts.map +1 -1
  12. package/dist/bin/commands/check_bash.js +38 -18
  13. package/dist/bin/commands/check_bash.js.map +1 -1
  14. package/dist/bin/commands/check_write.d.ts +9 -0
  15. package/dist/bin/commands/check_write.d.ts.map +1 -1
  16. package/dist/bin/commands/check_write.js +105 -61
  17. package/dist/bin/commands/check_write.js.map +1 -1
  18. package/dist/bin/commands/init.d.ts +2 -5
  19. package/dist/bin/commands/init.d.ts.map +1 -1
  20. package/dist/bin/commands/init.js +116 -137
  21. package/dist/bin/commands/init.js.map +1 -1
  22. package/dist/bin/commands/modify.d.ts +7 -0
  23. package/dist/bin/commands/modify.d.ts.map +1 -0
  24. package/dist/bin/commands/modify.js +74 -0
  25. package/dist/bin/commands/modify.js.map +1 -0
  26. package/dist/bin/commands/reasoning.d.ts +14 -0
  27. package/dist/bin/commands/reasoning.d.ts.map +1 -0
  28. package/dist/bin/commands/reasoning.js +158 -0
  29. package/dist/bin/commands/reasoning.js.map +1 -0
  30. package/dist/bin/commands/review.d.ts +7 -0
  31. package/dist/bin/commands/review.d.ts.map +1 -0
  32. package/dist/bin/commands/review.js +79 -0
  33. package/dist/bin/commands/review.js.map +1 -0
  34. package/dist/bin/commands/status.d.ts +6 -5
  35. package/dist/bin/commands/status.d.ts.map +1 -1
  36. package/dist/bin/commands/status.js +63 -120
  37. package/dist/bin/commands/status.js.map +1 -1
  38. package/dist/bin/commands/sync.d.ts +1 -1
  39. package/dist/bin/commands/sync.js +7 -7
  40. package/dist/bin/commands/sync.js.map +1 -1
  41. package/dist/bin/commands/validate.d.ts +4 -1
  42. package/dist/bin/commands/validate.d.ts.map +1 -1
  43. package/dist/bin/commands/validate.js +65 -95
  44. package/dist/bin/commands/validate.js.map +1 -1
  45. package/dist/bin/config_commands.d.ts +21 -20
  46. package/dist/bin/config_commands.d.ts.map +1 -1
  47. package/dist/bin/config_commands.js +209 -236
  48. package/dist/bin/config_commands.js.map +1 -1
  49. package/dist/bin/soloforge.js +60 -22
  50. package/dist/bin/soloforge.js.map +1 -1
  51. package/dist/engine/audit/evolver.d.ts.map +1 -1
  52. package/dist/engine/audit/evolver.js +0 -2
  53. package/dist/engine/audit/evolver.js.map +1 -1
  54. package/dist/engine/audit/governance_report.d.ts +9 -8
  55. package/dist/engine/audit/governance_report.d.ts.map +1 -1
  56. package/dist/engine/audit/governance_report.js +17 -16
  57. package/dist/engine/audit/governance_report.js.map +1 -1
  58. package/dist/engine/change_coordinator.d.ts.map +1 -1
  59. package/dist/engine/change_coordinator.js +1 -4
  60. package/dist/engine/change_coordinator.js.map +1 -1
  61. package/dist/engine/config/conflicts.d.ts +39 -0
  62. package/dist/engine/config/conflicts.d.ts.map +1 -0
  63. package/dist/engine/config/conflicts.js +79 -0
  64. package/dist/engine/config/conflicts.js.map +1 -0
  65. package/dist/engine/config/detector/blueprint.d.ts +25 -0
  66. package/dist/engine/config/detector/blueprint.d.ts.map +1 -0
  67. package/dist/engine/config/detector/blueprint.js +47 -0
  68. package/dist/engine/config/detector/blueprint.js.map +1 -0
  69. package/dist/engine/config/detector/fingerprint.d.ts +67 -0
  70. package/dist/engine/config/detector/fingerprint.d.ts.map +1 -0
  71. package/dist/engine/config/detector/fingerprint.js +160 -0
  72. package/dist/engine/config/detector/fingerprint.js.map +1 -0
  73. package/dist/engine/config/detector/framework_map.d.ts +89 -0
  74. package/dist/engine/config/detector/framework_map.d.ts.map +1 -0
  75. package/dist/engine/config/detector/framework_map.js +406 -0
  76. package/dist/engine/config/detector/framework_map.js.map +1 -0
  77. package/dist/engine/config/detector/index.d.ts +12 -0
  78. package/dist/engine/config/detector/index.d.ts.map +1 -0
  79. package/dist/engine/config/detector/index.js +12 -0
  80. package/dist/engine/config/detector/index.js.map +1 -0
  81. package/dist/engine/config/detector/verify.d.ts +32 -0
  82. package/dist/engine/config/detector/verify.d.ts.map +1 -0
  83. package/dist/engine/config/detector/verify.js +107 -0
  84. package/dist/engine/config/detector/verify.js.map +1 -0
  85. package/dist/engine/config/intent.d.ts +26 -0
  86. package/dist/engine/config/intent.d.ts.map +1 -0
  87. package/dist/engine/config/intent.js +81 -0
  88. package/dist/engine/config/intent.js.map +1 -0
  89. package/dist/engine/config/intent_schema.d.ts +873 -0
  90. package/dist/engine/config/intent_schema.d.ts.map +1 -0
  91. package/dist/engine/config/intent_schema.js +98 -0
  92. package/dist/engine/config/intent_schema.js.map +1 -0
  93. package/dist/engine/config/regression_matrix.d.ts.map +1 -1
  94. package/dist/engine/config/regression_matrix.js +19 -14
  95. package/dist/engine/config/regression_matrix.js.map +1 -1
  96. package/dist/engine/config/resolver.d.ts +136 -0
  97. package/dist/engine/config/resolver.d.ts.map +1 -0
  98. package/dist/engine/config/resolver.js +251 -0
  99. package/dist/engine/config/resolver.js.map +1 -0
  100. package/dist/engine/context_engine/bootstrap.d.ts +12 -0
  101. package/dist/engine/context_engine/bootstrap.d.ts.map +1 -0
  102. package/dist/engine/context_engine/bootstrap.js +28 -0
  103. package/dist/engine/context_engine/bootstrap.js.map +1 -0
  104. package/dist/engine/context_engine/companion_injector.d.ts +49 -0
  105. package/dist/engine/context_engine/companion_injector.d.ts.map +1 -0
  106. package/dist/engine/context_engine/companion_injector.js +157 -0
  107. package/dist/engine/context_engine/companion_injector.js.map +1 -0
  108. package/dist/engine/context_engine/context_resolver.d.ts +46 -0
  109. package/dist/engine/context_engine/context_resolver.d.ts.map +1 -0
  110. package/dist/engine/context_engine/context_resolver.js +139 -0
  111. package/dist/engine/context_engine/context_resolver.js.map +1 -0
  112. package/dist/engine/context_engine/index.d.ts +25 -0
  113. package/dist/engine/context_engine/index.d.ts.map +1 -0
  114. package/dist/engine/context_engine/index.js +25 -0
  115. package/dist/engine/context_engine/index.js.map +1 -0
  116. package/dist/engine/context_engine/view_registry.d.ts +45 -0
  117. package/dist/engine/context_engine/view_registry.d.ts.map +1 -0
  118. package/dist/engine/context_engine/view_registry.js +36 -0
  119. package/dist/engine/context_engine/view_registry.js.map +1 -0
  120. package/dist/engine/context_engine/views/change_impact.d.ts +34 -0
  121. package/dist/engine/context_engine/views/change_impact.d.ts.map +1 -0
  122. package/dist/engine/context_engine/views/change_impact.js +288 -0
  123. package/dist/engine/context_engine/views/change_impact.js.map +1 -0
  124. package/dist/engine/context_engine/views/coverage_gap.d.ts +45 -0
  125. package/dist/engine/context_engine/views/coverage_gap.d.ts.map +1 -0
  126. package/dist/engine/context_engine/views/coverage_gap.js +238 -0
  127. package/dist/engine/context_engine/views/coverage_gap.js.map +1 -0
  128. package/dist/engine/context_engine/views/dependency_graph.d.ts +45 -0
  129. package/dist/engine/context_engine/views/dependency_graph.d.ts.map +1 -0
  130. package/dist/engine/context_engine/views/dependency_graph.js +358 -0
  131. package/dist/engine/context_engine/views/dependency_graph.js.map +1 -0
  132. package/dist/engine/context_engine/views/file_impact.d.ts +46 -0
  133. package/dist/engine/context_engine/views/file_impact.d.ts.map +1 -0
  134. package/dist/engine/context_engine/views/file_impact.js +181 -0
  135. package/dist/engine/context_engine/views/file_impact.js.map +1 -0
  136. package/dist/engine/context_engine/views/knowledge_ref.d.ts +37 -0
  137. package/dist/engine/context_engine/views/knowledge_ref.d.ts.map +1 -0
  138. package/dist/engine/context_engine/views/knowledge_ref.js +264 -0
  139. package/dist/engine/context_engine/views/knowledge_ref.js.map +1 -0
  140. package/dist/engine/context_engine/views/reference_trace.d.ts +49 -0
  141. package/dist/engine/context_engine/views/reference_trace.d.ts.map +1 -0
  142. package/dist/engine/context_engine/views/reference_trace.js +227 -0
  143. package/dist/engine/context_engine/views/reference_trace.js.map +1 -0
  144. package/dist/engine/contracts/artifact_schema_registry.d.ts +2 -0
  145. package/dist/engine/contracts/artifact_schema_registry.d.ts.map +1 -1
  146. package/dist/engine/contracts/artifact_schema_registry.js +31 -1
  147. package/dist/engine/contracts/artifact_schema_registry.js.map +1 -1
  148. package/dist/engine/contracts/capability_registry.d.ts.map +1 -1
  149. package/dist/engine/contracts/capability_registry.js +2 -28
  150. package/dist/engine/contracts/capability_registry.js.map +1 -1
  151. package/dist/engine/contracts/contract_guard.js +8 -0
  152. package/dist/engine/contracts/contract_guard.js.map +1 -1
  153. package/dist/engine/contracts/contract_registry/builtin_contracts_core.d.ts.map +1 -1
  154. package/dist/engine/contracts/contract_registry/builtin_contracts_core.js +1 -19
  155. package/dist/engine/contracts/contract_registry/builtin_contracts_core.js.map +1 -1
  156. package/dist/engine/contracts/design_lifecycle_contract.d.ts.map +1 -1
  157. package/dist/engine/contracts/design_lifecycle_contract.js +14 -8
  158. package/dist/engine/contracts/design_lifecycle_contract.js.map +1 -1
  159. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_audit_tail.d.ts.map +1 -1
  160. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_audit_tail.js +0 -37
  161. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_audit_tail.js.map +1 -1
  162. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_infra.d.ts.map +1 -1
  163. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_infra.js +2 -78
  164. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_infra.js.map +1 -1
  165. package/dist/engine/contracts/dual_layer_mechanism_registry/shared.js +1 -1
  166. package/dist/engine/contracts/dual_layer_mechanism_registry/shared.js.map +1 -1
  167. package/dist/engine/contracts/error_path_verifier.js +2 -2
  168. package/dist/engine/contracts/error_path_verifier.js.map +1 -1
  169. package/dist/engine/contracts/first_principles.d.ts +47 -0
  170. package/dist/engine/contracts/first_principles.d.ts.map +1 -1
  171. package/dist/engine/contracts/first_principles.js +56 -0
  172. package/dist/engine/contracts/first_principles.js.map +1 -1
  173. package/dist/engine/contracts/mechanism_contract_registry/contracts-audit.d.ts +1 -1
  174. package/dist/engine/contracts/mechanism_contract_registry/contracts-audit.d.ts.map +1 -1
  175. package/dist/engine/contracts/mechanism_contract_registry/contracts-audit.js +2 -19
  176. package/dist/engine/contracts/mechanism_contract_registry/contracts-audit.js.map +1 -1
  177. package/dist/engine/contracts/mechanism_contract_registry/contracts-platform.d.ts +2 -2
  178. package/dist/engine/contracts/mechanism_contract_registry/contracts-platform.d.ts.map +1 -1
  179. package/dist/engine/contracts/mechanism_contract_registry/contracts-platform.js +4 -42
  180. package/dist/engine/contracts/mechanism_contract_registry/contracts-platform.js.map +1 -1
  181. package/dist/engine/contracts/project_knowledge_contract.d.ts +1 -0
  182. package/dist/engine/contracts/project_knowledge_contract.d.ts.map +1 -1
  183. package/dist/engine/contracts/project_knowledge_contract.js +5 -4
  184. package/dist/engine/contracts/project_knowledge_contract.js.map +1 -1
  185. package/dist/engine/contracts/slice_fix_loop.d.ts +86 -0
  186. package/dist/engine/contracts/slice_fix_loop.d.ts.map +1 -0
  187. package/dist/engine/contracts/slice_fix_loop.js +98 -0
  188. package/dist/engine/contracts/slice_fix_loop.js.map +1 -0
  189. package/dist/engine/contracts/state_machine_contracts.js +2 -2
  190. package/dist/engine/contracts/state_machine_contracts.js.map +1 -1
  191. package/dist/engine/contracts/tool_invocation_contract_registry.d.ts.map +1 -1
  192. package/dist/engine/contracts/tool_invocation_contract_registry.js +44 -2
  193. package/dist/engine/contracts/tool_invocation_contract_registry.js.map +1 -1
  194. package/dist/engine/contracts/user_promise.js +2 -2
  195. package/dist/engine/contracts/user_promise.js.map +1 -1
  196. package/dist/engine/core/errors.d.ts +1 -1
  197. package/dist/engine/core/errors.js +1 -1
  198. package/dist/engine/core/fail_closed.d.ts +39 -0
  199. package/dist/engine/core/fail_closed.d.ts.map +1 -0
  200. package/dist/engine/core/fail_closed.js +38 -0
  201. package/dist/engine/core/fail_closed.js.map +1 -0
  202. package/dist/engine/core/index.d.ts +3 -1
  203. package/dist/engine/core/index.d.ts.map +1 -1
  204. package/dist/engine/core/index.js +3 -1
  205. package/dist/engine/core/index.js.map +1 -1
  206. package/dist/engine/core/paths.d.ts +6 -2
  207. package/dist/engine/core/paths.d.ts.map +1 -1
  208. package/dist/engine/core/paths.js +8 -2
  209. package/dist/engine/core/paths.js.map +1 -1
  210. package/dist/engine/dependency_scanner.js +1 -1
  211. package/dist/engine/dependency_scanner.js.map +1 -1
  212. package/dist/engine/exploration.js +1 -1
  213. package/dist/engine/exploration.js.map +1 -1
  214. package/dist/engine/feasibility_checker.js +1 -1
  215. package/dist/engine/impact_analyzer.js +1 -1
  216. package/dist/engine/impact_analyzer.js.map +1 -1
  217. package/dist/engine/knowledge/knowledge_asset_audit.d.ts.map +1 -1
  218. package/dist/engine/knowledge/knowledge_asset_audit.js +1 -2
  219. package/dist/engine/knowledge/knowledge_asset_audit.js.map +1 -1
  220. package/dist/engine/knowledge/knowledge_asset_consumer.d.ts +8 -2
  221. package/dist/engine/knowledge/knowledge_asset_consumer.d.ts.map +1 -1
  222. package/dist/engine/knowledge/knowledge_asset_consumer.js +10 -7
  223. package/dist/engine/knowledge/knowledge_asset_consumer.js.map +1 -1
  224. package/dist/engine/knowledge/knowledge_asset_schema.d.ts +6 -2
  225. package/dist/engine/knowledge/knowledge_asset_schema.d.ts.map +1 -1
  226. package/dist/engine/knowledge/knowledge_asset_schema.js +3 -4
  227. package/dist/engine/knowledge/knowledge_asset_schema.js.map +1 -1
  228. package/dist/engine/knowledge/knowledge_consumption_snapshot.js +2 -2
  229. package/dist/engine/knowledge/knowledge_consumption_snapshot.js.map +1 -1
  230. package/dist/engine/knowledge/knowledge_health.d.ts.map +1 -1
  231. package/dist/engine/knowledge/knowledge_health.js +6 -4
  232. package/dist/engine/knowledge/knowledge_health.js.map +1 -1
  233. package/dist/engine/knowledge/knowledge_injection_boundary.d.ts +2 -1
  234. package/dist/engine/knowledge/knowledge_injection_boundary.d.ts.map +1 -1
  235. package/dist/engine/knowledge/knowledge_injection_boundary.js +35 -43
  236. package/dist/engine/knowledge/knowledge_injection_boundary.js.map +1 -1
  237. package/dist/engine/pipeline/intent_expander/knowledge.js +4 -2
  238. package/dist/engine/pipeline/intent_expander/knowledge.js.map +1 -1
  239. package/dist/engine/pipeline/intent_expander/knowledge_resolution.d.ts +2 -2
  240. package/dist/engine/pipeline/intent_expander/knowledge_resolution.d.ts.map +1 -1
  241. package/dist/engine/pipeline/intent_expander/knowledge_resolution.js +1 -0
  242. package/dist/engine/pipeline/intent_expander/knowledge_resolution.js.map +1 -1
  243. package/dist/engine/pipeline/intent_expander/scope_acceptance.d.ts +2 -0
  244. package/dist/engine/pipeline/intent_expander/scope_acceptance.d.ts.map +1 -1
  245. package/dist/engine/pipeline/intent_expander/scope_acceptance.js +5 -1
  246. package/dist/engine/pipeline/intent_expander/scope_acceptance.js.map +1 -1
  247. package/dist/engine/pipeline/intent_expander/types.d.ts +1 -1
  248. package/dist/engine/pipeline/intent_expander/types.d.ts.map +1 -1
  249. package/dist/engine/pipeline/scope_lease.d.ts.map +1 -1
  250. package/dist/engine/pipeline/scope_lease.js +1 -3
  251. package/dist/engine/pipeline/scope_lease.js.map +1 -1
  252. package/dist/engine/pipeline/scope_resolver.js +1 -1
  253. package/dist/engine/pipeline/scope_resolver.js.map +1 -1
  254. package/dist/engine/pipeline/state_machine/audit_logger.d.ts.map +1 -1
  255. package/dist/engine/pipeline/state_machine/audit_logger.js +7 -1
  256. package/dist/engine/pipeline/state_machine/audit_logger.js.map +1 -1
  257. package/dist/engine/pipeline/state_machine/certainty_gate.d.ts.map +1 -1
  258. package/dist/engine/pipeline/state_machine/certainty_gate.js +81 -7
  259. package/dist/engine/pipeline/state_machine/certainty_gate.js.map +1 -1
  260. package/dist/engine/pipeline/state_machine/command_state_verifier.js +1 -1
  261. package/dist/engine/pipeline/state_machine/command_state_verifier.js.map +1 -1
  262. package/dist/engine/pipeline/state_machine/hook_classifier.d.ts +14 -1
  263. package/dist/engine/pipeline/state_machine/hook_classifier.d.ts.map +1 -1
  264. package/dist/engine/pipeline/state_machine/hook_classifier.js +35 -12
  265. package/dist/engine/pipeline/state_machine/hook_classifier.js.map +1 -1
  266. package/dist/engine/pipeline/state_machine/pipeline_state_machine.d.ts +6 -2
  267. package/dist/engine/pipeline/state_machine/pipeline_state_machine.d.ts.map +1 -1
  268. package/dist/engine/pipeline/state_machine/pipeline_state_machine.js +158 -50
  269. package/dist/engine/pipeline/state_machine/pipeline_state_machine.js.map +1 -1
  270. package/dist/engine/pipeline/state_machine/sf_command_parser.d.ts.map +1 -1
  271. package/dist/engine/pipeline/state_machine/sf_command_parser.js +1 -0
  272. package/dist/engine/pipeline/state_machine/sf_command_parser.js.map +1 -1
  273. package/dist/engine/pipeline/state_machine/state_self_diagnostic.js +3 -3
  274. package/dist/engine/pipeline/state_machine/state_self_diagnostic.js.map +1 -1
  275. package/dist/engine/pipeline/task_context/manager.js.map +1 -1
  276. package/dist/engine/pipeline/task_context/manager_setters.js +1 -1
  277. package/dist/engine/pipeline/task_context/manager_setters.js.map +1 -1
  278. package/dist/engine/pipeline/task_planner.d.ts.map +1 -1
  279. package/dist/engine/pipeline/task_planner.js +1 -1
  280. package/dist/engine/pipeline/task_planner.js.map +1 -1
  281. package/dist/engine/release/foundation_scenario_registry.js +2 -2
  282. package/dist/engine/release/foundation_scenario_registry.js.map +1 -1
  283. package/dist/engine/release/gate_checks/checkControlPlaneTrust.d.ts.map +1 -1
  284. package/dist/engine/release/gate_checks/checkControlPlaneTrust.js +1 -0
  285. package/dist/engine/release/gate_checks/checkControlPlaneTrust.js.map +1 -1
  286. package/dist/engine/release/gate_checks/checkKnowledgeAssetSchemaP0.js +1 -1
  287. package/dist/engine/release/gate_checks/checkKnowledgeAssetSchemaP0.js.map +1 -1
  288. package/dist/engine/release/gate_checks/checkWorkflowNavigation.d.ts.map +1 -1
  289. package/dist/engine/release/gate_checks/checkWorkflowNavigation.js +27 -60
  290. package/dist/engine/release/gate_checks/checkWorkflowNavigation.js.map +1 -1
  291. package/dist/engine/release/release_gate_scenario_registry.js +9 -9
  292. package/dist/engine/release/release_gate_scenario_registry.js.map +1 -1
  293. package/dist/engine/release/release_issue_scenario_registry/scenarios_architecture_workshop.js +17 -17
  294. package/dist/engine/release/release_issue_scenario_registry/scenarios_architecture_workshop.js.map +1 -1
  295. package/dist/engine/release/release_issue_scenario_registry/scenarios_code_observability.js +3 -3
  296. package/dist/engine/release/release_issue_scenario_registry/scenarios_code_observability.js.map +1 -1
  297. package/dist/engine/release/release_issue_scenario_registry/scenarios_decision_workshop.js +18 -18
  298. package/dist/engine/release/release_issue_scenario_registry/scenarios_decision_workshop.js.map +1 -1
  299. package/dist/engine/release/release_issue_scenario_registry/scenarios_design_pack.js +10 -10
  300. package/dist/engine/release/release_issue_scenario_registry/scenarios_design_pack.js.map +1 -1
  301. package/dist/engine/release/release_issue_scenario_registry/scenarios_template_contract.js +3 -3
  302. package/dist/engine/release/release_issue_scenario_registry/scenarios_template_contract.js.map +1 -1
  303. package/dist/engine/release/release_issue_scenario_registry/scenarios_template_visibility.js +13 -13
  304. package/dist/engine/release/release_issue_scenario_registry/scenarios_template_visibility.js.map +1 -1
  305. package/dist/engine/release/release_issue_scenario_registry/workshop_helpers.d.ts +1 -1
  306. package/dist/engine/release/release_issue_scenario_registry/workshop_helpers.d.ts.map +1 -1
  307. package/dist/engine/release/release_issue_scenario_registry/workshop_helpers.js +14 -3
  308. package/dist/engine/release/release_issue_scenario_registry/workshop_helpers.js.map +1 -1
  309. package/dist/engine/retention_policy.js +1 -1
  310. package/dist/engine/retention_policy.js.map +1 -1
  311. package/dist/engine/templates/consumable_asset_registry/builtin_assets_core.js +2 -2
  312. package/dist/engine/templates/consumable_asset_registry/builtin_assets_core.js.map +1 -1
  313. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_core.d.ts.map +1 -1
  314. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_core.js +2 -22
  315. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_core.js.map +1 -1
  316. package/dist/engine/templates/consumption_trace_store.js +2 -2
  317. package/dist/engine/templates/consumption_trace_store.js.map +1 -1
  318. package/dist/engine/templates/explicit_asset_registry/artifacts_shared_part2.js +1 -1
  319. package/dist/engine/templates/explicit_asset_registry/artifacts_shared_part2.js.map +1 -1
  320. package/dist/engine/templates/explicit_asset_registry/gates.d.ts.map +1 -1
  321. package/dist/engine/templates/explicit_asset_registry/gates.js +50 -0
  322. package/dist/engine/templates/explicit_asset_registry/gates.js.map +1 -1
  323. package/dist/engine/templates/explicit_asset_registry/procedures_part1.d.ts.map +1 -1
  324. package/dist/engine/templates/explicit_asset_registry/procedures_part1.js +16 -0
  325. package/dist/engine/templates/explicit_asset_registry/procedures_part1.js.map +1 -1
  326. package/dist/engine/templates/explicit_asset_registry/procedures_part2.d.ts.map +1 -1
  327. package/dist/engine/templates/explicit_asset_registry/procedures_part2.js +35 -2
  328. package/dist/engine/templates/explicit_asset_registry/procedures_part2.js.map +1 -1
  329. package/dist/engine/templates/explicit_asset_registry/rules_pipeline.d.ts.map +1 -1
  330. package/dist/engine/templates/explicit_asset_registry/rules_pipeline.js +16 -0
  331. package/dist/engine/templates/explicit_asset_registry/rules_pipeline.js.map +1 -1
  332. package/dist/engine/templates/explicit_asset_registry/rules_shared.d.ts.map +1 -1
  333. package/dist/engine/templates/explicit_asset_registry/rules_shared.js +288 -0
  334. package/dist/engine/templates/explicit_asset_registry/rules_shared.js.map +1 -1
  335. package/dist/engine/templates/workflow_rule_generator.d.ts +1 -1
  336. package/dist/engine/templates/workflow_rule_generator.js +2 -2
  337. package/dist/engine/workflow/next_action_planner.d.ts.map +1 -1
  338. package/dist/engine/workflow/next_action_planner.js +21 -27
  339. package/dist/engine/workflow/next_action_planner.js.map +1 -1
  340. package/dist/engine/workflow/project_stage_detector.d.ts.map +1 -1
  341. package/dist/engine/workflow/project_stage_detector.js +6 -4
  342. package/dist/engine/workflow/project_stage_detector.js.map +1 -1
  343. package/dist/git/git_deps.d.ts +1 -0
  344. package/dist/git/git_deps.d.ts.map +1 -1
  345. package/dist/git/operations.d.ts +1 -0
  346. package/dist/git/operations.d.ts.map +1 -1
  347. package/dist/git/operations.js +2 -0
  348. package/dist/git/operations.js.map +1 -1
  349. package/dist/index.d.ts +1 -1
  350. package/dist/index.js +10 -1
  351. package/dist/index.js.map +1 -1
  352. package/dist/knowledge/conflict_detector.d.ts.map +1 -1
  353. package/dist/knowledge/conflict_detector.js +13 -2
  354. package/dist/knowledge/conflict_detector.js.map +1 -1
  355. package/dist/knowledge/health_checker.d.ts.map +1 -1
  356. package/dist/knowledge/health_checker.js +5 -3
  357. package/dist/knowledge/health_checker.js.map +1 -1
  358. package/dist/knowledge/index_manager.d.ts +15 -0
  359. package/dist/knowledge/index_manager.d.ts.map +1 -1
  360. package/dist/knowledge/index_manager.js +106 -6
  361. package/dist/knowledge/index_manager.js.map +1 -1
  362. package/dist/knowledge/loader.d.ts +8 -4
  363. package/dist/knowledge/loader.d.ts.map +1 -1
  364. package/dist/knowledge/loader.js +189 -34
  365. package/dist/knowledge/loader.js.map +1 -1
  366. package/dist/knowledge/writer.js +2 -2
  367. package/dist/knowledge/writer.js.map +1 -1
  368. package/dist/server/tools/index.d.ts.map +1 -1
  369. package/dist/server/tools/index.js +11 -9
  370. package/dist/server/tools/index.js.map +1 -1
  371. package/dist/server/tools/lazy_loaders.d.ts +1 -1
  372. package/dist/server/tools/lazy_loaders.d.ts.map +1 -1
  373. package/dist/server/tools/lazy_loaders.js +2 -1
  374. package/dist/server/tools/lazy_loaders.js.map +1 -1
  375. package/dist/server/tools/middleware.d.ts +2 -0
  376. package/dist/server/tools/middleware.d.ts.map +1 -1
  377. package/dist/server/tools/middleware.js +22 -6
  378. package/dist/server/tools/middleware.js.map +1 -1
  379. package/dist/server/tools/schemas.d.ts +4 -4
  380. package/dist/server/tools/tool_groups/admin.d.ts.map +1 -1
  381. package/dist/server/tools/tool_groups/admin.js +13 -16
  382. package/dist/server/tools/tool_groups/admin.js.map +1 -1
  383. package/dist/server/tools/tool_groups/knowledge.js +2 -2
  384. package/dist/server/tools/tool_groups/knowledge.js.map +1 -1
  385. package/dist/server/tools/tool_groups/product_operations.d.ts +9 -0
  386. package/dist/server/tools/tool_groups/product_operations.d.ts.map +1 -0
  387. package/dist/server/tools/tool_groups/product_operations.js +143 -0
  388. package/dist/server/tools/tool_groups/product_operations.js.map +1 -0
  389. package/dist/server/tools/tool_groups/state_machine.d.ts.map +1 -1
  390. package/dist/server/tools/tool_groups/state_machine.js +544 -6
  391. package/dist/server/tools/tool_groups/state_machine.js.map +1 -1
  392. package/dist/server/tools/tool_names.d.ts +4 -0
  393. package/dist/server/tools/tool_names.d.ts.map +1 -1
  394. package/dist/server/tools/tool_names.js +6 -0
  395. package/dist/server/tools/tool_names.js.map +1 -1
  396. package/dist/types/knowledge.d.ts +2 -4
  397. package/dist/types/knowledge.d.ts.map +1 -1
  398. package/dist/types/knowledge.js.map +1 -1
  399. package/dist/types/pipeline.d.ts +4 -3
  400. package/dist/types/pipeline.d.ts.map +1 -1
  401. package/dist/types/state_machine.d.ts +19 -4
  402. package/dist/types/state_machine.d.ts.map +1 -1
  403. package/dist/types/state_machine.js.map +1 -1
  404. package/package.json +14 -14
  405. package/templates/artifacts/existing-system//344/270/200/351/224/256/345/274/200/345/205/263/351/205/215/347/275/256/346/250/241/347/211/210.json +23 -2
  406. package/templates/artifacts/existing-system//345/216/206/345/217/262/346/225/260/346/215/256/346/270/205/346/264/227/350/204/232/346/234/254/346/250/241/347/211/210.md +11 -5
  407. package/templates/artifacts/existing-system//345/216/206/345/217/262/351/201/227/347/225/231/351/233/267/345/214/272/346/270/205/345/215/225/346/250/241/347/211/210.md +23 -21
  408. package/templates/artifacts/existing-system//345/220/221/345/220/216/345/205/274/345/256/271/346/200/247/345/220/210/350/247/204/346/212/245/345/221/212/346/250/241/347/211/210.md +25 -14
  409. package/templates/artifacts/existing-system//345/242/236/351/207/217/350/276/271/347/225/214/347/225/214/345/256/232/346/226/207/346/241/243/346/250/241/347/211/210.md +21 -14
  410. package/templates/artifacts/existing-system//346/224/271/351/200/240/345/275/261/345/223/215/350/214/203/345/233/264/350/257/204/344/274/260/346/250/241/347/211/210.md +18 -6
  411. package/templates/artifacts/existing-system//346/225/260/346/215/256/350/241/200/347/274/230/345/233/276/346/250/241/347/211/210.md +15 -6
  412. package/templates/artifacts/existing-system//346/226/260/350/200/201/351/200/273/350/276/221/346/257/224/345/257/271/346/227/245/345/277/227/346/250/241/347/211/210.md +9 -6
  413. package/templates/artifacts/existing-system//347/264/247/346/200/245/345/233/236/346/273/232/346/211/213/345/206/214/346/250/241/347/211/210.md +48 -13
  414. package/templates/artifacts/existing-system//351/232/224/347/246/273/351/200/202/351/205/215/345/231/250/346/226/271/346/241/210/346/250/241/347/211/210.md +13 -7
  415. package/templates/artifacts/shared/ADR/346/250/241/347/211/210.md +17 -5
  416. package/templates/artifacts/shared/API/346/216/245/345/217/243/350/247/204/346/240/274/346/226/207/346/241/243/346/250/241/347/211/210.md +31 -70
  417. package/templates/artifacts/shared/Bug/345/210/206/346/236/220/346/250/241/347/211/210.md +2 -10
  418. package/templates/artifacts/shared/OOD/350/256/276/350/256/241/346/221/230/350/246/201/346/250/241/347/211/210.md +2 -8
  419. package/templates/artifacts/shared/POC/347/273/223/350/256/272/346/250/241/347/211/210.md +2 -10
  420. package/templates/artifacts/shared//344/273/243/347/240/201/345/256/241/346/237/245/346/212/245/345/221/212/346/250/241/347/211/210.md +47 -10
  421. package/templates/artifacts/shared//344/273/243/347/240/201/346/263/250/351/207/212/344/270/216/346/227/245/345/277/227/351/252/214/346/224/266/346/250/241/347/211/210.md +2 -8
  422. package/templates/artifacts/shared//345/210/207/347/211/207/350/256/241/345/210/222/346/250/241/347/211/210.md +122 -17
  423. package/templates/artifacts/shared//345/211/215/347/253/257/351/241/265/351/235/242/351/252/214/346/224/266/346/270/205/345/215/225.md +2 -14
  424. package/templates/artifacts/shared//345/216/237/345/236/213/350/257/264/346/230/216/346/250/241/347/211/210.md +115 -225
  425. package/templates/artifacts/shared//345/220/216/347/253/257API/351/252/214/346/224/266/346/270/205/345/215/225.md +2 -13
  426. package/templates/artifacts/shared//345/220/216/347/253/257/345/256/236/347/216/260/351/252/214/346/224/266/346/270/205/345/215/225.md +11 -10
  427. package/templates/artifacts/shared//345/256/211/345/205/250/345/256/241/350/256/241/346/250/241/347/211/210.md +8 -33
  428. package/templates/artifacts/shared//345/256/241/346/237/245/346/221/230/350/246/201.md +10 -15
  429. package/templates/artifacts/shared//346/200/247/350/203/275/345/210/206/346/236/220/346/250/241/347/211/210.md +2 -10
  430. package/templates/artifacts/shared//346/212/200/346/234/257/351/200/211/345/236/213/351/252/214/346/224/266/346/270/205/345/215/225.md +2 -13
  431. package/templates/artifacts/shared//346/216/245/345/217/243/345/257/271/346/216/245/346/226/271/346/241/210/346/250/241/347/211/210.md +54 -20
  432. package/templates/artifacts/shared//346/225/205/351/232/234/345/244/215/347/233/230/346/250/241/347/211/210.md +2 -11
  433. package/templates/artifacts/shared//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264/346/226/271/346/241/210/346/250/241/347/211/210.md +43 -31
  434. package/templates/artifacts/shared//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264/351/252/214/346/224/266/346/270/205/345/215/225.md +2 -15
  435. package/templates/artifacts/shared//346/225/260/346/215/256/345/272/223/350/256/276/350/256/241/346/226/207/346/241/243/346/250/241/347/211/210.md +121 -42
  436. package/templates/artifacts/shared//346/236/266/346/236/204/350/256/276/350/256/241/346/250/241/347/211/210.md +110 -76
  437. package/templates/artifacts/shared//346/265/213/350/257/225/350/256/241/345/210/222/346/250/241/347/211/210.md +27 -18
  438. package/templates/artifacts/shared//350/256/276/350/256/241/344/270/200/350/207/264/346/200/247/351/252/214/346/224/266/346/212/245/345/221/212/346/250/241/347/211/210.md +2 -24
  439. package/templates/artifacts/shared//350/257/246/347/273/206/350/256/276/350/256/241/346/250/241/347/211/210.md +83 -30
  440. package/templates/artifacts/shared//350/277/201/347/247/273/350/257/204/344/274/260/346/250/241/347/211/210.md +15 -12
  441. package/templates/artifacts/shared//351/200/232/347/224/250/350/264/250/351/207/217/351/252/214/346/224/266/346/270/205/345/215/225.md +157 -36
  442. package/templates/artifacts/shared//351/207/215/346/236/204/346/226/271/346/241/210/346/250/241/347/211/210.md +2 -10
  443. package/templates/artifacts/shared//351/234/200/346/261/202/345/210/206/346/236/220/346/250/241/347/211/210.md +74 -15
  444. package/templates/artifacts/shared//351/234/200/346/261/202/345/216/237/345/236/213/350/256/276/350/256/241/345/256/236/347/216/260/350/277/275/350/270/252/347/237/251/351/230/265/346/250/241/347/211/210.md +38 -46
  445. package/templates/checklists//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245/351/252/214/346/224/266/346/270/205/345/215/225.md +1 -7
  446. package/templates/checklists//344/274/232/350/257/235/346/201/242/345/244/215.md +1 -11
  447. package/templates/checklists//345/267/245/344/275/234/346/265/201/351/252/214/346/224/266/346/270/205/345/215/225.md +1 -7
  448. package/templates/checklists//346/240/270/345/277/203/345/267/245/347/250/213/346/211/247/350/241/214/351/252/214/346/224/266/346/270/205/345/215/225.md +1 -7
  449. package/templates/checklists//347/237/245/350/257/206/346/263/250/345/205/245/351/252/214/346/224/266/346/270/205/345/215/225.md +1 -7
  450. package/templates/checklists//351/232/220/347/247/201/345/256/241/346/237/245/346/270/205/345/215/225.md +1 -7
  451. package/templates/checklists//351/252/214/350/257/201/351/252/214/346/224/266/346/270/205/345/215/225.md +1 -7
  452. package/templates/domain//345/244/232/347/247/237/346/210/267.md +1 -13
  453. package/templates/domain//345/256/241/350/256/241/346/227/245/345/277/227.md +1 -12
  454. package/templates/domain//345/257/274/345/205/245/345/257/274/345/207/272/350/247/204/345/210/231.md +1 -14
  455. package/templates/domain//345/267/245/344/275/234/346/265/201/345/274/225/346/223/216.md +1 -17
  456. package/templates/domain//346/212/245/350/241/250/347/273/237/350/256/241.md +1 -15
  457. package/templates/domain//346/224/257/344/273/230/350/247/204/345/210/231.md +1 -16
  458. package/templates/domain//346/225/260/346/215/256/346/235/203/351/231/220.md +1 -13
  459. package/templates/domain//351/200/232/347/224/250/346/234/272/346/242/260/346/235/241/346/254/276.md +1 -15
  460. package/templates/domain//351/200/232/347/237/245/350/247/204/345/210/231.md +1 -15
  461. package/templates/gates/existing-system/gate-/346/236/266/346/236/204/350/256/276/350/256/241.yaml +13 -14
  462. package/templates/gates/existing-system/gate-/347/216/260/346/234/211/347/263/273/347/273/237/345/210/206/346/236/220.yaml +48 -0
  463. package/templates/gates/existing-system/gate-/347/274/226/347/240/201/344/270/216/345/215/225/345/205/203/346/265/213/350/257/225.yaml +41 -8
  464. package/templates/gates/existing-system/gate-/350/257/225/350/277/220/350/241/214.yaml +30 -12
  465. package/templates/gates/existing-system/gate-/350/257/246/347/273/206/350/256/276/350/256/241.yaml +25 -15
  466. package/templates/gates/shared/gate-/344/272/244/344/273/230.yaml +26 -8
  467. package/templates/gates/shared/gate-/344/273/243/347/240/201/345/256/241/346/237/245.yaml +47 -8
  468. package/templates/gates/shared/gate-/344/273/273/345/212/241/350/247/204/345/210/222.yaml +131 -5
  469. package/templates/gates/shared/gate-/345/210/207/347/211/207/345/256/241/346/237/245.yaml +50 -0
  470. package/templates/gates/shared/gate-/345/210/207/347/211/207/346/211/247/350/241/214.yaml +51 -0
  471. package/templates/gates/shared/gate-/345/217/221/345/270/203/345/220/216/350/247/202/345/257/237.yaml +40 -8
  472. package/templates/gates/shared/gate-/345/256/211/345/205/250/345/256/241/350/256/241.yaml +77 -0
  473. package/templates/gates/shared/gate-/346/236/266/346/236/204/350/256/276/350/256/241.yaml +136 -9
  474. package/templates/gates/shared/gate-/347/274/226/347/240/201/344/270/216/345/215/225/345/205/203/346/265/213/350/257/225.yaml +30 -4
  475. package/templates/gates/shared/gate-/347/274/226/347/240/201/345/207/206/345/244/207.yaml +40 -4
  476. package/templates/gates/shared/gate-/347/274/226/347/240/201/345/256/236/347/216/260.yaml +42 -4
  477. package/templates/gates/shared/gate-/347/274/226/347/240/201/351/252/214/350/257/201.yaml +33 -4
  478. package/templates/gates/shared/gate-/350/201/224/350/260/203/351/252/214/350/257/201.yaml +47 -8
  479. package/templates/gates/shared/gate-/350/257/246/347/273/206/350/256/276/350/256/241.yaml +118 -9
  480. package/templates/gates/shared/gate-/351/234/200/346/261/202/345/210/206/346/236/220.yaml +154 -8
  481. package/templates/internal/patterns/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md +1 -10
  482. package/templates/internal/patterns/Hook/345/261/202/344/272/247/347/211/251/347/273/223/346/236/204/346/240/241/351/252/214.md +1 -5
  483. package/templates/internal/patterns/Java/350/264/250/351/207/217/351/227/250/347/246/201.md +1 -11
  484. package/templates/internal/patterns/LLM/351/242/204/347/256/227/347/275/221/345/205/263.md +1 -10
  485. package/templates/internal/patterns//344/272/247/347/211/251Schema/346/263/250/345/206/214/344/270/255/345/277/203.md +1 -5
  486. package/templates/internal/patterns//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 +1 -10
  487. package/templates/internal/patterns//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md +1 -11
  488. package/templates/internal/patterns//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 +1 -10
  489. package/templates/internal/patterns//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md +1 -11
  490. package/templates/internal/patterns//345/206/262/347/252/201/351/227/250/347/246/201.md +1 -10
  491. package/templates/internal/patterns//345/206/263/347/255/226/347/275/221/345/205/263.md +1 -12
  492. package/templates/internal/patterns//345/210/206/345/234/272/346/231/257/350/277/207/347/250/213/350/247/204/345/210/231.md +1 -5
  493. package/templates/internal/patterns//345/217/230/345/274/202/345/256/241/350/256/241.md +1 -11
  494. package/templates/internal/patterns//345/233/236/345/275/222/347/237/251/351/230/265.md +1 -10
  495. package/templates/internal/patterns//345/267/245/344/275/234/345/214/272/344/272/222/346/226/245/351/224/201.md +1 -10
  496. package/templates/internal/patterns//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md +1 -10
  497. package/templates/internal/patterns//345/271/266/345/217/221/351/224/201.md +1 -12
  498. package/templates/internal/patterns//345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md +1 -12
  499. package/templates/internal/patterns//346/225/217/346/204/237/344/277/241/346/201/257/346/211/253/346/217/217.md +1 -10
  500. package/templates/internal/patterns//346/250/241/347/211/210Frontmatter/350/247/243/346/236/220.md +1 -5
  501. package/templates/internal/patterns//346/262/273/347/220/206/350/277/220/350/241/214/346/227/266/345/276/252/347/216/257.md +1 -11
  502. package/templates/internal/patterns//346/265/201/345/274/217/345/277/203/350/267/263.md +2 -12
  503. package/templates/internal/patterns//347/237/245/350/257/206/344/270/273/346/235/203.md +1 -11
  504. package/templates/internal/patterns//350/257/255/344/271/211/350/257/201/346/215/256.md +1 -10
  505. package/templates/internal/patterns//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md +1 -11
  506. package/templates/internal/patterns//351/252/214/350/257/201/345/221/275/344/273/244/347/224/237/346/210/220.md +4 -12
  507. package/templates/internal/rules/OOD/344/270/216SOLID/350/256/276/350/256/241/350/247/204/345/210/231.md +0 -12
  508. package/templates/internal/rules//344/272/247/347/211/251/345/245/221/347/272/246/350/247/204/345/210/231.md +1 -7
  509. package/templates/internal/rules//344/273/243/347/240/201/346/263/250/351/207/212/344/270/216/346/227/245/345/277/227/345/245/221/347/272/246/350/247/204/345/210/231.md +3 -28
  510. package/templates/internal/rules//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/350/247/204/345/210/231.md +0 -9
  511. package/templates/internal/rules//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/345/245/221/347/272/246/350/247/204/345/210/231.md +0 -12
  512. package/templates/internal/rules//345/221/275/344/273/244/346/211/247/350/241/214/350/247/204/345/210/231.md +1 -7
  513. package/templates/internal/rules//345/221/275/344/273/244/350/267/257/347/224/261/350/247/204/345/210/231.md +0 -6
  514. package/templates/internal/rules//345/267/245/344/275/234/346/265/201/345/245/221/347/272/246/350/247/204/345/210/231.md +1 -7
  515. package/templates/internal/rules//345/267/245/344/275/234/346/265/201/345/257/274/350/210/252/345/245/221/347/272/246/350/247/204/345/210/231.md +9 -19
  516. package/templates/internal/rules//345/267/245/344/275/234/346/265/201/346/250/241/347/211/210/345/214/205/350/247/204/345/210/231.md +0 -7
  517. package/templates/internal/rules//345/267/245/345/205/267/350/260/203/347/224/250/350/247/204/345/210/231.md +1 -7
  518. package/templates/internal/rules//346/204/217/345/233/276/350/267/257/347/224/261/350/247/204/345/210/231.md +2 -8
  519. package/templates/internal/rules//346/211/247/350/241/214/345/256/210/345/215/253/350/257/204/344/274/260/350/247/204/345/210/231.md +1 -7
  520. package/templates/internal/rules//346/211/251/345/261/225/347/224/237/345/221/275/345/221/250/346/234/237/350/247/204/345/210/231.md +0 -7
  521. package/templates/internal/rules//346/212/200/346/234/257/345/206/263/347/255/226/344/270/273/346/235/203/350/247/204/345/210/231.md +0 -10
  522. package/templates/internal/rules//346/225/217/346/204/237/344/277/241/346/201/257/345/244/204/347/220/206/350/247/204/345/210/231.md +4 -18
  523. package/templates/internal/rules//346/226/275/345/267/245/346/214/207/344/273/244/345/245/221/347/272/246/350/247/204/345/210/231.md +0 -8
  524. package/templates/internal/rules//346/227/245/345/277/227/346/262/273/347/220/206/350/247/204/345/210/231.md +0 -11
  525. package/templates/internal/rules//346/234/272/345/210/266/350/207/252/346/262/273/347/220/206/350/247/204/345/210/231.md +0 -11
  526. package/templates/internal/rules//346/236/266/346/236/204/345/206/263/347/255/226/347/240/224/350/256/250/350/247/204/345/210/231.md +4 -6
  527. package/templates/internal/rules//346/240/207/345/207/206/350/265/204/344/272/247/350/246/206/347/233/226/350/247/204/345/210/231.md +0 -10
  528. package/templates/internal/rules//346/240/270/345/277/203/344/275/223/351/252/214/345/216/237/345/210/231.md +1 -8
  529. package/templates/internal/rules//346/240/270/345/277/203/345/267/245/347/250/213/346/211/247/350/241/214/345/216/237/345/210/231.md +2 -8
  530. package/templates/internal/rules//346/250/241/347/211/210Frontmatter/350/247/204/350/214/203.md +85 -64
  531. package/templates/internal/rules//346/250/241/347/211/210/350/265/204/344/272/247/345/217/257/350/247/201/346/200/247/350/247/204/345/210/231.md +0 -11
  532. package/templates/internal/rules//346/263/250/345/206/214/350/241/250/345/237/272/347/241/200/350/256/276/346/226/275/350/247/204/345/210/231.md +1 -7
  533. package/templates/internal/rules//346/274/224/350/277/233/345/233/236/345/275/222/351/227/250/346/216/247/350/247/204/345/210/231.md +0 -13
  534. package/templates/internal/rules//347/224/250/346/210/267/345/217/215/351/246/210/345/245/221/347/272/246/350/247/204/345/210/231.md +1 -17
  535. package/templates/internal/rules//347/237/245/350/257/206/346/262/273/347/220/206/350/247/204/345/210/231.md +0 -11
  536. package/templates/internal/rules//347/237/245/350/257/206/346/263/250/345/205/245/350/276/271/347/225/214/350/247/204/345/210/231.md +1 -7
  537. package/templates/internal/rules//347/237/245/350/257/206/350/265/204/344/272/247/346/262/273/347/220/206/350/247/204/345/210/231.md +1 -9
  538. package/templates/internal/rules//347/254/254/344/270/200/346/200/247/345/216/237/347/220/206/346/216/250/347/220/206/350/247/204/345/210/231.md +0 -10
  539. package/templates/internal/rules//347/273/206/350/212/202/347/272/252/345/276/213/350/247/204/345/210/231.md +0 -10
  540. package/templates/internal/rules//350/204/221/346/232/264/344/270/216/346/226/271/346/241/210/346/216/242/347/264/242/350/247/204/345/210/231.md +0 -10
  541. package/templates/internal/rules//350/256/241/345/210/222/345/211/215/347/275/256/351/227/250/350/247/204/345/210/231.md +1 -11
  542. package/templates/internal/rules//350/256/276/350/256/241/344/272/247/347/211/251/345/214/205/350/247/204/345/210/231.md +6 -7
  543. package/templates/internal/rules//350/257/201/346/215/256/351/251/261/345/212/250/344/270/216/345/217/215/345/271/273/350/247/211/350/247/204/345/210/231.md +0 -11
  544. package/templates/internal/rules//350/267/250/345/271/263/345/217/260/350/267/257/345/276/204/345/256/211/345/205/250/350/247/204/345/210/231.md +0 -7
  545. package/templates/internal/rules//350/276/223/345/205/245/346/235/220/346/226/231/345/245/221/347/272/246/350/247/204/345/210/231.md +1 -7
  546. package/templates/internal/rules//351/200/232/347/224/250/345/206/263/347/255/226/347/240/224/350/256/250/350/247/204/345/210/231.md +0 -15
  547. package/templates/internal/rules//351/205/215/347/275/256/344/274/230/345/205/210/347/272/247/350/247/204/345/210/231.md +38 -34
  548. package/templates/internal/rules//351/205/215/347/275/256/350/220/275/347/233/230/350/276/271/347/225/214/350/247/204/345/210/231.md +5 -14
  549. package/templates/internal/rules//351/230/262/345/255/244/345/262/233/345/256/236/347/216/260/350/247/204/345/210/231.md +1 -7
  550. package/templates/internal/rules//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226/350/247/204/345/210/231.md +31 -34
  551. package/templates/internal/rules//351/252/214/346/224/266/346/250/241/347/211/210/350/276/223/345/207/272/345/245/221/347/272/246/350/247/204/345/210/231.md +0 -13
  552. package/templates/internal/rules//351/252/214/350/257/201/345/245/221/347/272/246/350/247/204/345/210/231.md +1 -7
  553. package/templates/patterns/API/350/256/276/350/256/241/350/247/204/350/214/203.md +1 -15
  554. package/templates/patterns/Docker/351/203/250/347/275/262/350/247/204/350/214/203.md +1 -13
  555. package/templates/patterns/Git/346/223/215/344/275/234/350/247/204/350/214/203.md +1 -17
  556. package/templates/patterns/N/345/212/2401/346/237/245/350/257/242/350/247/204/350/214/203.md +1 -16
  557. package/templates/patterns/React/345/210/227/350/241/250/350/241/250/346/240/274/350/247/204/350/214/203.md +1 -15
  558. package/templates/patterns/React/346/216/245/345/217/243/351/233/206/346/210/220/350/247/204/350/214/203.md +1 -16
  559. package/templates/patterns/React/347/212/266/346/200/201/347/256/241/347/220/206/350/247/204/350/214/203.md +1 -16
  560. package/templates/patterns/React/347/273/204/344/273/266/350/247/204/350/214/203.md +1 -15
  561. package/templates/patterns/React/350/241/250/345/215/225/350/247/204/350/214/203.md +1 -15
  562. package/templates/patterns/React/350/267/257/347/224/261/350/247/204/350/214/203.md +1 -16
  563. package/templates/patterns/SOLID/350/256/276/350/256/241/350/247/204/350/214/203.md +1 -8
  564. package/templates/patterns/Schema/345/205/274/345/256/271/350/247/204/350/214/203.md +1 -15
  565. package/templates/patterns/Vue/347/212/266/346/200/201/347/256/241/347/220/206/350/247/204/350/214/203.md +1 -14
  566. package/templates/patterns/Vue/347/273/204/344/273/266/350/247/204/350/214/203.md +1 -18
  567. package/templates/patterns/Vue/350/267/257/347/224/261/350/247/204/350/214/203.md +1 -13
  568. package/templates/patterns//344/272/213/344/273/266/351/251/261/345/212/250/350/247/204/350/214/203.md +1 -17
  569. package/templates/patterns//344/272/213/345/212/241/346/250/241/345/274/217/350/247/204/350/214/203.md +1 -16
  570. package/templates/patterns//344/274/230/351/233/205/345/201/234/346/234/272/350/247/204/350/214/203.md +1 -16
  571. package/templates/patterns//345/205/250/346/240/210/346/265/201/347/250/213/344/277/256/345/244/215.md +1 -14
  572. package/templates/patterns//345/210/206/351/241/265/346/237/245/350/257/242/350/247/204/350/214/203.md +1 -19
  573. package/templates/patterns//345/211/215/347/253/257/346/200/247/350/203/275/350/247/204/350/214/203.md +1 -17
  574. package/templates/patterns//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/350/247/204/350/214/203.md +1 -8
  575. package/templates/patterns//345/221/275/345/220/215/350/247/204/350/214/203.md +1 -14
  576. package/templates/patterns//345/233/275/351/231/205/345/214/226/350/247/204/350/214/203.md +1 -16
  577. package/templates/patterns//345/242/236/345/210/240/346/224/271/346/237/245/350/247/204/350/214/203.md +1 -16
  578. package/templates/patterns//345/244/226/351/203/250/344/276/235/350/265/226/350/247/204/350/214/203.md +1 -16
  579. package/templates/patterns//345/245/221/347/272/246/345/205/274/345/256/271/350/247/204/350/214/203.md +1 -13
  580. package/templates/patterns//345/256/232/346/227/266/344/273/273/345/212/241/350/247/204/350/214/203.md +1 -17
  581. package/templates/patterns//345/256/236/346/227/266/346/216/250/351/200/201/350/247/204/350/214/203.md +1 -15
  582. package/templates/patterns//345/267/245/347/250/213/347/272/252/345/276/213.md +1 -14
  583. package/templates/patterns//345/271/266/345/217/221/346/216/247/345/210/266/350/247/204/350/214/203.md +1 -19
  584. package/templates/patterns//345/274/202/346/255/245/345/257/274/345/207/272/350/247/204/350/214/203.md +1 -16
  585. package/templates/patterns//346/216/245/345/217/243/345/245/221/347/272/246/350/247/204/350/214/203.md +1 -14
  586. package/templates/patterns//346/220/234/347/264/242/346/250/241/345/274/217/350/247/204/350/214/203.md +1 -17
  587. package/templates/patterns//346/225/260/346/215/256/351/232/220/347/247/201/350/247/204/350/214/203.md +2 -19
  588. package/templates/patterns//346/226/207/344/273/266/344/270/212/344/274/240/350/247/204/350/214/203.md +1 -15
  589. package/templates/patterns//346/227/240/351/232/234/347/242/215/350/247/204/350/214/203.md +1 -15
  590. package/templates/patterns//346/227/245/345/277/227/350/247/204/350/214/203.md +1 -16
  591. package/templates/patterns//346/235/203/351/231/220/350/256/244/350/257/201/350/247/204/350/214/203.md +1 -19
  592. package/templates/patterns//346/236/266/346/236/204/347/272/242/347/272/277.md +1 -13
  593. package/templates/patterns//346/265/213/350/257/225/350/264/250/351/207/217/350/247/204/350/214/203.md +1 -14
  594. package/templates/patterns//347/206/224/346/226/255/351/231/215/347/272/247/350/247/204/350/214/203.md +1 -17
  595. package/templates/patterns//347/212/266/346/200/201/346/265/201/350/275/254/350/247/204/350/214/203.md +1 -14
  596. package/templates/patterns//347/272/246/346/235/237/345/256/236/347/216/260/350/247/204/350/214/203.md +1 -16
  597. package/templates/patterns//347/274/223/345/255/230/347/255/226/347/225/245/350/247/204/350/214/203.md +1 -16
  598. package/templates/patterns//347/274/226/347/240/201/350/264/250/351/207/217/350/247/204/350/214/203.md +1 -14
  599. package/templates/patterns//347/274/272/351/231/267/347/256/241/347/220/206/350/247/204/350/214/203.md +1 -13
  600. package/templates/patterns//350/260/203/350/257/225/346/226/271/346/263/225/350/256/272.md +1 -14
  601. package/templates/patterns//350/276/223/345/205/245/346/240/241/351/252/214/350/247/204/350/214/203.md +1 -16
  602. package/templates/patterns//351/224/231/350/257/257/345/244/204/347/220/206/350/247/204/350/214/203.md +1 -16
  603. package/templates/patterns//351/224/231/350/257/257/350/276/271/347/225/214/350/247/204/350/214/203.md +1 -18
  604. package/templates/patterns//351/242/206/345/237/237/351/251/261/345/212/250/350/256/276/350/256/241/350/247/204/350/214/203.md +1 -15
  605. package/templates/procedures/OOD/350/256/276/350/256/241/345/267/245/344/275/234/346/265/201.md +41 -20
  606. package/templates/procedures/Schema/345/217/230/346/233/264/346/265/201/346/260/264/347/272/277.md +5 -11
  607. package/templates/procedures//344/270/215/347/241/256/345/256/232/346/227/266/345/244/264/350/204/221/351/243/216/346/232/264/346/265/201/347/250/213.md +92 -0
  608. package/templates/procedures//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245/351/252/214/350/257/201/346/265/201/347/250/213.md +8 -9
  609. package/templates/procedures//344/273/243/347/240/201/351/227/250/347/246/201/346/265/201/347/250/213.md +1 -7
  610. package/templates/procedures//344/273/273/345/212/241/346/213/206/350/247/243/346/265/201/347/250/213.md +10 -9
  611. package/templates/procedures//344/273/273/345/212/241/350/247/204/345/210/222/345/267/245/344/275/234/346/265/201.md +83 -0
  612. package/templates/procedures//344/274/232/350/257/235/346/201/242/345/244/215/346/265/201/347/250/213.md +2 -10
  613. package/templates/procedures//345/205/250/347/224/237/345/221/275/345/221/250/346/234/237/345/267/245/344/275/234/346/265/201/345/257/274/350/210/252.md +8 -16
  614. package/templates/procedures//345/212/237/350/203/275/345/274/200/345/217/221/346/265/201/347/250/213.md +11 -16
  615. package/templates/procedures//345/220/216/347/253/257/346/216/245/345/217/243/345/256/236/347/216/260/345/267/245/344/275/234/346/265/201.md +1 -8
  616. package/templates/procedures//345/221/275/344/273/244/346/211/247/350/241/214/346/265/201/347/250/213.md +2 -7
  617. package/templates/procedures//345/221/275/344/273/244/350/267/257/347/224/261/346/265/201/347/250/213.md +0 -6
  618. package/templates/procedures//345/256/211/345/205/250/345/212/240/345/233/272/346/265/201/346/260/264/347/272/277.md +6 -12
  619. package/templates/procedures//345/267/245/345/205/267/350/260/203/347/224/250/346/265/201/347/250/213.md +2 -7
  620. package/templates/procedures//346/200/247/350/203/275/346/265/201/346/260/264/347/272/277.md +5 -11
  621. package/templates/procedures//346/204/217/345/233/276/350/267/257/347/224/261/346/265/201/347/250/213.md +3 -8
  622. package/templates/procedures//346/216/245/345/217/243/351/233/206/346/210/220/346/265/201/346/260/264/347/272/277.md +14 -14
  623. package/templates/procedures//346/225/260/346/215/256/345/272/223/350/277/201/347/247/273/346/265/201/347/250/213.md +1 -7
  624. package/templates/procedures//346/234/254/345/234/260/346/265/217/350/247/210/345/231/250/351/252/214/346/224/266/345/267/245/344/275/234/346/265/201.md +1 -7
  625. package/templates/procedures//346/236/266/346/236/204/345/206/263/347/255/226/347/240/224/350/256/250/345/267/245/344/275/234/346/265/201.md +8 -7
  626. package/templates/procedures//346/236/266/346/236/204/350/256/276/350/256/241/345/267/245/344/275/234/346/265/201.md +22 -9
  627. package/templates/procedures//346/246/202/345/277/265/351/252/214/350/257/201/346/265/201/346/260/264/347/272/277.md +6 -10
  628. package/templates/procedures//346/265/213/350/257/225/344/274/230/345/205/210/347/274/226/347/240/201/345/267/245/344/275/234/346/265/201.md +18 -10
  629. package/templates/procedures//346/272/220/347/240/201/345/216/237/345/236/213/344/272/244/344/273/230/346/265/201/347/250/213.md +7 -13
  630. package/templates/procedures//347/216/260/346/234/211/347/263/273/347/273/237/345/267/256/350/267/235/345/210/206/346/236/220/345/267/245/344/275/234/346/265/201.md +29 -9
  631. package/templates/procedures//347/237/245/350/257/206/347/273/264/346/212/244/346/265/201/346/260/264/347/272/277.md +6 -12
  632. package/templates/procedures//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/346/260/264/347/272/277.md +6 -12
  633. package/templates/procedures//347/274/226/347/240/201/345/211/215/346/276/204/346/270/205/346/265/201/347/250/213.md +7 -7
  634. package/templates/procedures//347/274/226/347/240/201/351/230/266/346/256/265/346/211/247/350/241/214/345/267/245/344/275/234/346/265/201.md +101 -0
  635. package/templates/procedures//350/207/252/344/270/273/351/200/211/345/236/213/346/265/201/347/250/213.md +1 -7
  636. package/templates/procedures//350/256/276/350/256/241/344/272/247/347/211/251/347/224/237/346/210/220/344/270/216/345/244/215/351/252/214/345/267/245/344/275/234/346/265/201.md +32 -13
  637. package/templates/procedures//350/256/276/350/256/241/345/256/241/350/256/241/346/265/201/347/250/213.md +17 -21
  638. package/templates/procedures//350/257/246/347/273/206/350/256/276/350/256/241/346/265/201/347/250/213.md +91 -24
  639. package/templates/procedures//350/260/203/350/257/225/346/216/222/346/237/245/346/265/201/347/250/213.md +31 -9
  640. package/templates/procedures//350/277/201/347/247/273/346/265/201/346/260/264/347/272/277.md +5 -11
  641. package/templates/procedures//351/203/250/347/275/262/345/217/221/345/270/203/346/265/201/347/250/213.md +35 -9
  642. package/templates/procedures//351/207/215/346/236/204/346/265/201/346/260/264/347/272/277.md +5 -11
  643. package/templates/procedures//351/233/206/346/210/220/351/252/214/350/257/201/346/265/201/347/250/213.md +9 -9
  644. package/templates/procedures//351/234/200/346/261/202/346/276/204/346/270/205/346/265/201/347/250/213.md +23 -16
  645. package/templates/procedures//351/252/214/346/224/266/346/265/213/350/257/225/350/247/204/345/210/222.md +8 -9
  646. package/templates/rules/existing-system//345/205/274/345/256/271/346/200/247/346/243/200/346/237/245/350/247/204/345/210/231.md +66 -23
  647. package/templates/rules/existing-system//350/200/201/347/263/273/347/273/237/345/210/207/347/211/207/350/247/204/345/210/222/350/247/204/345/210/231.md +35 -0
  648. package/templates/rules/existing-system//350/200/246/345/220/210/346/243/200/346/265/213/350/247/204/345/210/231.md +57 -20
  649. package/templates/rules/existing-system//350/257/225/350/277/220/350/241/214/347/206/224/346/226/255/350/247/204/345/210/231.md +49 -25
  650. package/templates/rules/existing-system//351/230/262/345/276/241/346/200/247/347/274/226/347/240/201/350/247/204/345/210/231.md +69 -25
  651. package/templates/rules/existing-system//351/233/267/345/214/272/345/217/215/346/250/241/345/274/217/346/270/205/345/215/225.md +109 -23
  652. package/templates/rules/new-system//350/201/224/350/260/203/350/256/276/350/256/241/347/274/272/351/231/267/345/210/244/345/256/232/350/247/204/345/210/231.md +39 -19
  653. package/templates/rules/shared/SOLID/344/273/243/347/240/201/345/256/241/346/237/245/350/247/204/345/210/231.md +47 -20
  654. package/templates/rules/shared//344/270/200/350/207/264/346/200/247/346/240/241/351/252/214/350/247/204/345/210/231.md +84 -11
  655. package/templates/rules/shared//344/270/212/346/270/270/344/272/244/345/217/211/351/252/214/350/257/201/350/247/204/345/210/231.md +56 -0
  656. package/templates/rules/shared//344/270/212/346/270/270/350/256/276/350/256/241/344/272/244/345/217/211/351/252/214/350/257/201/345/256/241/346/237/245/350/247/204/345/210/231.md +67 -0
  657. package/templates/rules/shared//344/272/244/344/273/230/345/256/214/345/244/207/346/200/247/345/256/241/346/237/245/350/247/204/345/210/231.md +39 -16
  658. package/templates/rules/shared//344/273/243/347/240/201/345/217/257/347/273/264/346/212/244/346/200/247/344/270/216/345/217/257/350/247/202/346/265/213/346/200/247/345/256/241/346/237/245.md +45 -57
  659. package/templates/rules/shared//345/206/263/347/255/226/345/256/214/346/225/264/346/200/247/345/256/241/346/237/245/350/247/204/345/210/231.md +18 -11
  660. package/templates/rules/shared//345/210/207/347/211/207/346/211/247/350/241/214/347/272/252/345/276/213/350/247/204/345/210/231.md +96 -0
  661. package/templates/rules/shared//345/210/207/347/211/207/350/247/204/345/210/222/350/247/204/345/210/231.md +64 -0
  662. package/templates/rules/shared//345/216/237/345/236/213/346/272/220/347/240/201/346/217/220/345/217/226/350/247/204/345/210/231.md +67 -0
  663. package/templates/rules/shared//345/216/237/345/236/213/350/257/264/346/230/216/345/256/241/346/237/245/350/247/204/345/210/231.md +73 -0
  664. package/templates/rules/shared//345/217/221/345/270/203/345/220/216/345/256/241/346/237/245/350/247/204/345/210/231.md +22 -13
  665. package/templates/rules/shared//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/345/256/241/346/237/245/350/247/204/345/210/231.md +43 -18
  666. package/templates/rules/shared//345/256/211/345/205/250/345/256/241/346/237/245/350/247/204/345/210/231.md +53 -17
  667. package/templates/rules/shared//345/271/266/345/217/221/345/256/241/346/237/245/350/247/204/345/210/231.md +39 -10
  668. package/templates/rules/shared//346/200/247/350/203/275/345/256/241/346/237/245/350/247/204/345/210/231.md +32 -10
  669. package/templates/rules/shared//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 +40 -11
  670. package/templates/rules/shared//346/236/266/346/236/204/345/256/241/346/237/245/350/247/204/345/210/231.md +31 -11
  671. package/templates/rules/shared//346/236/266/346/236/204/350/256/276/350/256/241/345/256/241/346/237/245/350/247/204/345/210/231.md +102 -0
  672. package/templates/rules/shared//346/236/266/346/236/204/350/256/276/350/256/241/350/247/204/345/210/231.md +64 -0
  673. package/templates/rules/shared//347/213/254/347/253/213/345/256/241/346/237/245/350/247/204/345/210/231.md +33 -0
  674. package/templates/rules/shared//347/254/254/344/270/200/346/200/247/345/216/237/347/220/206/346/216/250/347/220/206/350/247/204/345/210/231.md +171 -0
  675. package/templates/rules/shared//347/274/226/347/240/201/345/260/261/347/273/252/345/256/241/346/237/245/350/247/204/345/210/231.md +9 -13
  676. package/templates/rules/shared//350/201/224/350/260/203/351/252/214/350/257/201/346/270/205/345/215/225.md +62 -16
  677. package/templates/rules/shared//350/246/206/347/233/226/347/216/207/346/240/207/345/207/206.md +2 -3
  678. package/templates/rules/shared//350/257/246/347/273/206/350/256/276/350/256/241/345/256/241/346/237/245/350/247/204/345/210/231.md +82 -0
  679. package/templates/rules/shared//350/264/250/351/207/217/345/256/241/346/237/245/350/247/204/345/210/231.md +17 -12
  680. package/templates/rules/shared//350/277/275/350/270/252/347/237/251/351/230/265ID/350/247/204/345/210/231.md +48 -0
  681. package/templates/rules/shared//350/277/275/350/270/252/347/237/251/351/230/265/345/256/241/346/237/245/350/247/204/345/210/231.md +51 -0
  682. package/templates/rules/shared//351/234/200/346/261/202/350/264/250/351/207/217/345/256/241/346/237/245/350/247/204/345/210/231.md +30 -13
  683. package/templates/rules/shared//351/252/214/346/224/266/346/240/207/345/207/206/345/256/241/346/237/245/350/247/204/345/210/231.md +15 -15
  684. package/templates//346/250/241/347/211/210/350/264/241/347/214/256/346/214/207/345/215/227.md +11 -8
  685. package/dist/engine/config/config_auto_repair.d.ts +0 -30
  686. package/dist/engine/config/config_auto_repair.d.ts.map +0 -1
  687. package/dist/engine/config/config_auto_repair.js +0 -261
  688. package/dist/engine/config/config_auto_repair.js.map +0 -1
  689. package/dist/engine/config/config_precedence_contract/constants.d.ts +0 -16
  690. package/dist/engine/config/config_precedence_contract/constants.d.ts.map +0 -1
  691. package/dist/engine/config/config_precedence_contract/constants.js +0 -166
  692. package/dist/engine/config/config_precedence_contract/constants.js.map +0 -1
  693. package/dist/engine/config/config_precedence_contract/evidence.d.ts +0 -38
  694. package/dist/engine/config/config_precedence_contract/evidence.d.ts.map +0 -1
  695. package/dist/engine/config/config_precedence_contract/evidence.js +0 -59
  696. package/dist/engine/config/config_precedence_contract/evidence.js.map +0 -1
  697. package/dist/engine/config/config_precedence_contract/field_class.d.ts +0 -11
  698. package/dist/engine/config/config_precedence_contract/field_class.d.ts.map +0 -1
  699. package/dist/engine/config/config_precedence_contract/field_class.js +0 -10
  700. package/dist/engine/config/config_precedence_contract/field_class.js.map +0 -1
  701. package/dist/engine/config/config_precedence_contract/governance.d.ts +0 -31
  702. package/dist/engine/config/config_precedence_contract/governance.d.ts.map +0 -1
  703. package/dist/engine/config/config_precedence_contract/governance.js +0 -232
  704. package/dist/engine/config/config_precedence_contract/governance.js.map +0 -1
  705. package/dist/engine/config/config_precedence_contract/index.d.ts +0 -21
  706. package/dist/engine/config/config_precedence_contract/index.d.ts.map +0 -1
  707. package/dist/engine/config/config_precedence_contract/index.js +0 -28
  708. package/dist/engine/config/config_precedence_contract/index.js.map +0 -1
  709. package/dist/engine/config/config_precedence_contract/project_config.d.ts +0 -20
  710. package/dist/engine/config/config_precedence_contract/project_config.d.ts.map +0 -1
  711. package/dist/engine/config/config_precedence_contract/project_config.js +0 -210
  712. package/dist/engine/config/config_precedence_contract/project_config.js.map +0 -1
  713. package/dist/engine/config/config_precedence_contract/resolution.d.ts +0 -93
  714. package/dist/engine/config/config_precedence_contract/resolution.d.ts.map +0 -1
  715. package/dist/engine/config/config_precedence_contract/resolution.js +0 -317
  716. package/dist/engine/config/config_precedence_contract/resolution.js.map +0 -1
  717. package/dist/engine/config/config_precedence_contract/types.d.ts +0 -92
  718. package/dist/engine/config/config_precedence_contract/types.d.ts.map +0 -1
  719. package/dist/engine/config/config_precedence_contract/types.js +0 -20
  720. package/dist/engine/config/config_precedence_contract/types.js.map +0 -1
  721. package/dist/engine/config/config_precedence_contract.d.ts +0 -22
  722. package/dist/engine/config/config_precedence_contract.d.ts.map +0 -1
  723. package/dist/engine/config/config_precedence_contract.js +0 -34
  724. package/dist/engine/config/config_precedence_contract.js.map +0 -1
  725. package/dist/engine/config/zero_config_init.d.ts +0 -177
  726. package/dist/engine/config/zero_config_init.d.ts.map +0 -1
  727. package/dist/engine/config/zero_config_init.js +0 -857
  728. package/dist/engine/config/zero_config_init.js.map +0 -1
  729. package/templates/internal/patterns//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226.md +0 -62
package/README.md CHANGED
@@ -55,17 +55,19 @@ soloforge init --interactive
55
55
  所有命令默认作用于当前目录。推荐先 `cd` 到项目根目录再执行。
56
56
 
57
57
  ```bash
58
- soloforge init --auto --dry-run # 只预览,不写入 config.yaml
59
- soloforge init --auto # 高置信度时生成项目配置和适配器文件
60
- soloforge init # 生成目录、知识模板和适配器文件,不写 config.yaml
58
+ soloforge init --auto --dry-run # 只预览,不写入 intent.yaml
59
+ soloforge init --auto # 高置信度时生成 intent.yaml 和适配器文件
60
+ soloforge init # 生成目录、知识模板和适配器文件,不写 intent.yaml
61
61
  soloforge init --interactive # 手动确认项目配置
62
- soloforge init --adapter claude # 只生成 Claude Code 配置
62
+ soloforge init --adapter claude-code # 只生成 Claude Code 配置
63
63
  soloforge init --adapter codex # 只生成 Codex App 配置
64
64
  soloforge init --adapter trae # 只生成 Trae IDE 配置
65
65
  soloforge init --adapter all # 同时生成所有适配器配置
66
+ soloforge init --blueprint "描述" # 从自然语言蓝图初始化项目
67
+ soloforge init --system-type 新系统 # 指定系统类型(新系统 / 老系统)
66
68
  ```
67
69
 
68
- `config.yaml` 是可选文件。没有它时,SoloForge 会根据 `package.json`、`pom.xml`、`go.mod` 等文件在运行时推断项目类型;只有高置信度或你手动确认时,才会把配置写入 `.soloforge/config.yaml`。
70
+ SoloForge 使用三层配置解析:从 `package.json`、`pom.xml`、`go.mod` 等项目文件自动探测技术栈和构建命令;用户偏好(如产品类型、交付设置)存储在可选的 `.soloforge/intent.yaml` 中。探测结果优先于 intent 声明——大多数项目无需手动配置。
69
71
 
70
72
  配置里的 scope、仓库路径和产物路径都按项目相对路径理解和存储,适配 Windows、macOS、Linux 时不要手写宿主机绝对路径。
71
73
 
@@ -75,7 +77,7 @@ soloforge init --adapter all # 同时生成所有适配器配置
75
77
  |------|------|
76
78
  | `.soloforge/knowledge/` | 公司全局知识库:项目规则和模板;内置同步资产受 manifest/hash 保护,用户自定义规则会被审计为 hard rule、injectable 或 index_only |
77
79
  | `.soloforge/templates/` | 管线阶段模板:artifacts(输出模板)、rules(规则)、gates(门禁配置),按系统类型同步,用户修改过的文件不会被覆盖 |
78
- | `.soloforge/config.yaml` | 可选项目配置,仅在高置信度或手动确认后生成 |
80
+ | `.soloforge/intent.yaml` | 可选用户偏好配置(产品类型、交付设置等不可探测字段) |
79
81
  | `~/.soloforge/patterns/` | 全局默认模板(所有项目共享),init 时自动同步、已有文件不覆盖 |
80
82
  | `.claude/settings.json` / `CLAUDE.md` / `.mcp.json` | Claude Code 配置 |
81
83
  | `.codex/config.toml` / `.codex/hooks.json` / `AGENTS.md` | Codex App 配置 |
@@ -98,7 +100,7 @@ SoloForge 在执行任务时会自动从 `.soloforge/knowledge/` 读取匹配的
98
100
  ```markdown
99
101
  ---
100
102
  name: 支付规则
101
- when: "支付, 结算, 退款, payment, refund"
103
+ triggers: ["支付", "结算", "退款", "payment", "refund"]
102
104
  scope: [backend]
103
105
  products: ["*"]
104
106
  ---
@@ -123,6 +125,10 @@ products: ["*"]
123
125
  checklists/ → 自定义验收清单
124
126
  acceptance_templates/ → 自定义产物模板
125
127
  review_rules/ → 自定义审查规则
128
+ patterns/ → 可复用模式(含 core/ 和 temp/ 子目录)
129
+ profiles/ → 产品线配置文件
130
+ rules/ → 阶段规则(shared / new-system / existing-system)
131
+ artifacts/ → 产物模板(shared / new-system / existing-system)
126
132
  drafts/ → sf_knowledge_add 的默认输出位置
127
133
  ```
128
134
 
@@ -133,26 +139,29 @@ products: ["*"]
133
139
  | 字段 | 必填 | 默认值 | 说明 |
134
140
  |---|---|---|---|
135
141
  | `name` | 否 | 文件名 | 注入 prompt 时显示的标题 |
136
- | `when` | **是** | `""` | 触发关键词,逗号分隔。AI 任务意图匹配到这些词时才会选中这条知识 |
142
+ | `triggers` | **是** | `[]` | 触发关键词字符串数组。AI 任务意图匹配到这些词时才会选中这条知识 |
137
143
  | `scope` | 否 | `["shared"]` | 作用域:`backend`、`frontend`、`shared`。`shared` 匹配所有 |
138
144
  | `products` | 否 | `["*"]` | 适用产品线,`*` 匹配所有 |
139
145
  | `stages` | 否 | `["*"]` | 适用阶段(`需求分析`、`编码与单元测试` 等),`*` 匹配所有 |
140
146
  | `status` | 否 | `"active"` | 只有不填或 `active` 才会被使用 |
141
147
  | `type` | 否 | 从目录名推断 | 用于分类过滤 |
148
+ | `tech_stack` | 否 | `[]` | 技术栈过滤,如 `["typescript", "react"]` |
149
+ | `confidence` | 否 | — | 置信度评分 |
150
+ | `id` | 否 | 自动生成 | 唯一标识 |
142
151
 
143
152
  ### SoloForge 如何使用你的知识
144
153
 
145
154
  1. **索引** — 运行任务时,SoloForge 扫描 `.soloforge/knowledge/` 下所有 `.md` 文件
146
- 2. **匹配** — 根据任务的意图关键词和 `when` 字段做匹配
155
+ 2. **匹配** — 根据任务的意图关键词和 `triggers` 数组元素做匹配
147
156
  3. **注入** — 匹配到的文件正文写入 AI prompt 的 `## 适用知识` 段落
148
157
 
149
- 知识注入有预算上限(默认 5 条),按优先级排序。你的项目知识优先级低于 SoloForge 内置核心规则,但高于全局 patterns。
158
+ 知识注入有预算上限(默认 15 条,索引查询默认返回 5 条),按优先级排序。你的项目知识优先级低于 SoloForge 内置核心规则,但高于全局 patterns。
150
159
 
151
160
  ### 注意事项
152
161
 
153
162
  - **不要和内置模板同名** — 比如 `.soloforge/knowledge/procedures/功能开发流程.md` 会被当作"被篡改的内置文件"而拒绝。用不同的文件名。
154
163
  - **已有文件不会被覆盖** — `sync-templates` 不会删除或覆盖你在 `.soloforge/knowledge/` 里创建的任何文件。
155
- - **`when` 决定命中率** — 不填 `when` 或写得太窄,知识文件不会被选中。写宽一些(包括中英文同义词)效果更好。
164
+ - **`triggers` 决定命中率** — 不填 `triggers` 或写得太窄,知识文件不会被选中。写宽一些(包括中英文同义词)效果更好。
156
165
  - **正文要精简** — 注入 prompt 有长度限制,正文控制在关键规则和约束,不要放长篇背景描述。
157
166
 
158
167
  ## 更新与旧项目同步
@@ -195,30 +204,42 @@ soloforge upgrade-design-artifacts --apply --confirm
195
204
 
196
205
  ## 日常命令
197
206
 
207
+ 大部分命令支持 `--json` 输出 JSON 格式,方便工具集成。
208
+
198
209
  ```bash
199
- soloforge validate # 检查项目配置和知识文件
200
- soloforge validate-knowledge # 验证知识规则完整性和消费链路
201
- soloforge validate-foundation # 验证基础场景矩阵
202
- soloforge validate-new-issue # 验证新 issue 注册和消费
203
- soloforge status # 查看当前项目状态和配置来源
204
- soloforge next # 查看当前阶段、阻断项和下一步可执行工作包
205
- soloforge stage # 查看项目阶段与当前任务阶段
206
- soloforge config resolve # 查看配置解析结果和来源
207
- soloforge config explain # 解释某项配置为什么是当前值
208
- soloforge config repair # 自动修复配置机械类型错误并重签 evidence
209
- soloforge audit-project-knowledge # 审计项目自定义知识规则是否可被稳定消费
210
- soloforge audit-template-visibility # 审计内部治理资产的可见性隔离
211
- soloforge doctor # 诊断 MCP 控制面、适配器 hook、状态可信和恢复路径
212
- soloforge version # 查看版本
210
+ soloforge validate [--json] # 检查项目配置和知识文件
211
+ soloforge validate-knowledge [--json] # 验证知识规则完整性和消费链路
212
+ soloforge validate-foundation [--json] # 验证基础场景矩阵
213
+ soloforge validate-new-issue --title="问题标题" [--json] # 验证新 issue 注册和消费
214
+ soloforge validate-mechanisms # 验证双层机制模型完整性
215
+ soloforge status # 查看当前项目状态和配置来源
216
+ soloforge next [--json] [--write-snapshot] # 查看当前阶段、阻断项和下一步可执行工作包
217
+ soloforge stage [--explain] # 查看项目阶段与当前任务阶段
218
+ soloforge config show # 查看配置解析结果(探测 + intent + 约定合并)
219
+ soloforge config explain <field> # 解释某项配置为什么是当前值
220
+ soloforge config set <field> <value> # 写入 intent.yaml 字段(产品类型、交付设置等)
221
+ soloforge config export # 导出 intent.yaml 原始内容
222
+ soloforge config unset <field> # 删除 intent.yaml 字段
223
+ soloforge config check # 运行探测 + 验证 + 冲突检测
224
+ soloforge audit-project-knowledge [--json] # 审计项目自定义知识规则是否可被稳定消费
225
+ soloforge audit-template-visibility [--json] # 审计内部治理资产的可见性隔离
226
+ soloforge doctor [--json] # 诊断 MCP 控制面、适配器 hook、状态可信和恢复路径
227
+ soloforge analyze --view <视图名> --targets [...] [--json] # 按需调用上下文引擎
228
+ soloforge modify <产物路径> [--stdin|--file <path>] [--json] # 脱离管线修改产物
229
+ soloforge review <产物路径> [--json] # 脱离管线审查产物
230
+ soloforge version # 查看版本
213
231
  ```
214
232
 
233
+ 多个命令支持 `--project-path <path>` 指定项目路径(非当前目录时使用)。
234
+
215
235
  ### 状态清理与审计
216
236
 
217
237
  ```bash
218
238
  soloforge cleanup --dry-run # 预览可清理的状态文件
219
- soloforge cleanup --apply # 执行清理(默认 dry-run,需显式 --apply)
220
- soloforge audit-template-mechanisms # 审计知识资产 schema 完整性
221
- soloforge audit-design-artifacts # 审计架构/数据库/API 设计产物包
239
+ soloforge cleanup --apply [--stale] # 执行清理(默认 dry-run,需显式 --apply)
240
+ soloforge cleanup --json # JSON 格式输出
241
+ soloforge audit-template-mechanisms [--json] # 审计知识资产 schema 完整性
242
+ soloforge audit-design-artifacts [--json] # 审计架构/数据库/API 设计产物包
222
243
  soloforge upgrade-design-artifacts # 预览设计产物升级计划(dry-run)
223
244
  soloforge upgrade-design-artifacts --apply --confirm # 确认后归档旧设计产物并写入升级契约
224
245
  ```
@@ -251,10 +272,10 @@ soloforge migrate --apply --confirm # 执行项目迁移
251
272
  - 你手动修改过的模板和适配器文件(如 `CLAUDE.md`)不会被静默覆盖——SoloForge 会检测文件是否被用户修改,修改过的文件在同步时自动跳过并报告。
252
273
  - 核心知识模板受保护,即使 apply 也不会被自动同步覆盖。
253
274
  - dry-run 中的“应用安全: 需确认”表示发现用户已有文件或需要人工确认;这不是命令失败,只有加 `--apply --confirm` 才会写入。
254
- - 用户自己新增到 `.soloforge/knowledge/**` 的规则不会被当成普通静态文件。带有 `asset_kind: hard_rule`、`stages`、`primary_triggers` 或 `enforcement.level` 的项目规则会进入审计和任务选择;缺少触发条件的 hard rule 会被 `audit-project-knowledge` 标为阻断。
275
+ - 用户自己新增到 `.soloforge/knowledge/**` 的规则不会被当成普通静态文件。带有 `type: hard_rule`、`stages`、`triggers` 或 `enforcement.level` 的项目规则会进入审计和任务选择;缺少触发条件的 hard rule 会被 `audit-project-knowledge` 标为阻断。
255
276
  - 项目规则在阶段执行时(`sf_stage_execute`)按 intent、stage、技术栈和触发词筛选,不会整库塞进 prompt;`sf_code_review`、`sf_gate_check`、`sf_stage_advance` 会在项目规则不可消费或冲突时阻断。
256
277
  - 项目规则可用 `conflict_group` + `rule_value` 或 `conflicts_with` 声明互斥口径,例如 API 响应格式、分页格式、日志字段、数据库命名和权限模型。冲突不会由 AI 直接拍板,必须先由用户确认。
257
- - 知识资产与项目规则消费体系受 19 项防回归矩阵约束:模板卫生、脚手架质量、项目知识承载、选择注入、冲突确认、`next` 消费、同步保护、技术栈过滤、设计产物消费、消费 trace 和用户可见解释都必须有真实入口和 release gate。
278
+ - 知识资产与项目规则消费体系受发布门禁矩阵约束:模板卫生、脚手架质量、项目知识承载、选择注入、冲突确认、`next` 消费、同步保护、技术栈过滤、设计产物消费、消费 trace 和用户可见解释都必须有真实入口和 release gate。
258
279
 
259
280
  **典型升级流程:**
260
281
 
@@ -369,9 +390,9 @@ soloforge init
369
390
 
370
391
  ## 常见问题
371
392
 
372
- ### `soloforge init --auto` 没有生成 config.yaml
393
+ ### `soloforge init --auto` 没有生成 intent.yaml
373
394
 
374
- 这是正常行为。SoloForge 只有在项目指纹足够明确时才会自动写配置。你可以继续使用运行时推断,也可以执行 `soloforge init --interactive` 手动确认。
395
+ 这是正常行为。SoloForge 只有在项目指纹足够明确时才会自动写 intent.yaml。大多数项目通过文件探测即可获得完整配置;你也可以执行 `soloforge init --interactive` 手动确认偏好设置。
375
396
 
376
397
  ### AI 工具没有调用 SoloForge
377
398
 
@@ -397,17 +418,17 @@ soloforge doctor
397
418
 
398
419
  先按 `doctor` 输出的恢复命令处理。旧项目需要补齐新增模板或适配器文件时,使用 `sync-templates` / `sync-adapters`;新项目首次接入时才运行 `soloforge init`。
399
420
 
400
- 如果 `status` 提示 `version` 数字/字符串、`scope` 字符串/数组或 `config.evidence.json` 过期,这属于机械配置问题,不需要逐字段人工确认:
421
+ 如果 `status` 提示配置不完整(缺少 tech_stack build_commands),可以通过配置命令补充:
401
422
 
402
423
  ```bash
403
- soloforge config repair --dry-run
404
- soloforge config repair
424
+ soloforge config check # 检查配置完整性和冲突
425
+ soloforge config set <field> # 写入缺失的 intent.yaml 字段
405
426
  soloforge validate
406
427
  soloforge status
407
428
  soloforge next
408
429
  ```
409
430
 
410
- `config repair` 会先备份旧配置,再修复可安全归一化的 YAML 类型并重签 evidence。业务口径变更仍由 `config confirm` 或人工决策处理。
431
+ `config set` 通过 AI 对话或 MCP 工具 `sf_config_update` 写入 intent.yaml 中的用户偏好字段(如 product_profile、delivery)。技术栈和构建命令由项目文件自动探测,无需手动配置。
411
432
 
412
433
  ### 想清理项目中的 SoloForge 文件
413
434
 
@@ -461,7 +482,7 @@ npm test
461
482
  # 3. 中文注释防回归
462
483
  npm run check:comments
463
484
 
464
- # 4. 发布门禁(文本输出,11 项 PASS / 0 hard_fail)
485
+ # 4. 发布门禁(文本输出,14 项 PASS / 0 hard_fail)
465
486
  npm run validate-release
466
487
 
467
488
  # 5. 发布门禁(JSON 输出,必须 passed=true、hard_fail_count=0)
@@ -480,26 +501,29 @@ node "$REPO_DIR/dist/bin/soloforge.js" status
480
501
  cd "$REPO_DIR"
481
502
  ```
482
503
 
483
- 当前代码质量基线:tsc 零错误 | 221 测试文件 / 4799 测试全部通过 | eslint 零警告 | 覆盖率 87/81/90/87(branches/functions/lines/statements)| 零循环依赖 | 中文注释零回归 | `noUnusedLocals` + `noUnusedParameters` 已启用。
504
+ 当前代码质量基线:tsc 零错误 | 293 测试文件 / 5305 测试全部通过 | eslint 零警告 | 零循环依赖 | 中文注释零回归 | `noUnusedLocals` + `noUnusedParameters` 已启用。
484
505
 
485
506
  <details>
486
507
  <summary>内部说明:validate-release 门禁检查项</summary>
487
508
 
488
- `npm run validate-release` 检查以下 11 项门禁:
509
+ `npm run validate-release` 检查以下 14 项门禁:
489
510
 
490
511
  1. dist 旧产物风险检查
491
- 2. TypeScript 编译检查
492
- 3. P0/P1 知识资产 schema
493
- 4. 主链路真实消费
494
- 5. 依赖漏洞扫描
495
- 6. npm pack 产物验证
496
- 7. MCP 控制面可信与受控生成链路
497
- 8. 工作流导航契约行为
498
- 9. 关键问题消费验证
499
- 10. 模板卫生与项目知识消费
512
+ 2. npm pack 产物验证
513
+ 3. 依赖漏洞扫描
514
+ 4. MCP 控制面可信与受控生成链路
515
+ 5. 关键问题消费验证
516
+ 6. 主链路真实消费
517
+ 7. P0/P1 知识资产 schema
518
+ 8. 模板卫生与项目知识消费
519
+ 9. 工作流导航契约行为
520
+ 10. TypeScript 编译检查
500
521
  11. 发布问题场景矩阵
522
+ 12. 代码质量门禁
523
+ 13. 架构边界回归
524
+ 14. 模板消费覆盖率
501
525
 
502
- 全部 11 项 PASS / 0 hard_fail 才能发布。
526
+ 全部 14 项 PASS / 0 hard_fail 才能发布。
503
527
 
504
528
  </details>
505
529
 
@@ -13,7 +13,7 @@ import { getWorkflowRuleMechanismIds as _getWorkflowRuleMechanismIds } from "../
13
13
  // 从 engine 层 re-export 以保持向后兼容
14
14
  export { generateWorkflowRules, getWorkflowRuleMechanismIds, EMBEDDED_CHECKSUM } from "../../engine/templates/workflow_rule_generator.js";
15
15
  /** 当前嵌入的权威规则校验和 — 由 `npm run update-workflow-checksum` 更新。 */
16
- const EMBEDDED_CHECKSUM = "d035c5dddc88fdd5";
16
+ const EMBEDDED_CHECKSUM = "4bdfdba3de678fbf";
17
17
  /**
18
18
  * 计算所有权威规则资产的第一行非注释内容组合的 SHA256 校验和。
19
19
  * 权威规则内容变化时校验和必然变化。
@@ -0,0 +1,7 @@
1
+ /**
2
+ * soloforge analyze --view <视图名> --targets [...] [--json]
3
+ *
4
+ * 按需调用上下文引擎指定视图,返回分析结果。
5
+ */
6
+ export declare function cmdAnalyze(): Promise<void>;
7
+ //# sourceMappingURL=analyze.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/analyze.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAiDhD"}
@@ -0,0 +1,52 @@
1
+ import { debug, userInfo, userError } from "../../engine/core/logger.js";
2
+ import { resolveProjectPath, args } from "../args.js";
3
+ /**
4
+ * soloforge analyze --view <视图名> --targets [...] [--json]
5
+ *
6
+ * 按需调用上下文引擎指定视图,返回分析结果。
7
+ */
8
+ export async function cmdAnalyze() {
9
+ debug("CLI", "执行 cmdAnalyze");
10
+ const projectPath = resolveProjectPath();
11
+ // 解析参数
12
+ const isJson = args.includes("--json");
13
+ const viewIdx = args.indexOf("--view");
14
+ const viewName = viewIdx >= 0 ? args[viewIdx + 1] : undefined;
15
+ if (!viewName) {
16
+ userError("用法: soloforge analyze --view <视图名> [--targets a.ts b.ts] [--json]");
17
+ userError("可用视图: file_impact, reference_trace, dependency_graph, change_impact, coverage_gap, knowledge_ref");
18
+ process.exit(1);
19
+ }
20
+ // 解析 targets
21
+ let targets = [];
22
+ const targetsIdx = args.indexOf("--targets");
23
+ if (targetsIdx >= 0) {
24
+ targets = args.slice(targetsIdx + 1).filter((a) => !a.startsWith("--"));
25
+ }
26
+ try {
27
+ // 引导上下文引擎(注册视图)
28
+ const { bootstrapContextEngine } = await import("../../engine/context_engine/bootstrap.js");
29
+ bootstrapContextEngine();
30
+ const { dispatchView, listRegisteredViews } = await import("../../engine/context_engine/view_registry.js");
31
+ const available = listRegisteredViews();
32
+ if (!available.includes(viewName)) {
33
+ userError(`视图 "${viewName}" 不存在。可用视图: ${available.join(", ")}`);
34
+ process.exit(1);
35
+ }
36
+ const result = await dispatchView(viewName, projectPath, { targets });
37
+ if (isJson) {
38
+ process.stdout.write(JSON.stringify(result, null, 2) + "\n");
39
+ }
40
+ else {
41
+ userInfo(`视图: ${result.view}`);
42
+ userInfo(`摘要: ${result.summary}`);
43
+ userInfo(`证据数: ${result.evidence.length}`);
44
+ userInfo(`数据: ${JSON.stringify(result.data, null, 2).slice(0, 500)}...`);
45
+ }
46
+ }
47
+ catch (err) {
48
+ userError(`分析失败: ${err instanceof Error ? err.message : String(err)}`);
49
+ process.exit(1);
50
+ }
51
+ }
52
+ //# sourceMappingURL=analyze.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../src/bin/commands/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEtD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,KAAK,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;IAEzC,OAAO;IACP,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,SAAS,CAAC,mEAAmE,CAAC,CAAC;QAC/E,SAAS,CAAC,kGAAkG,CAAC,CAAC;QAC9G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,aAAa;IACb,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7C,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACpB,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC;QACH,gBAAgB;QAChB,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;QAC5F,sBAAsB,EAAE,CAAC;QAEzB,MAAM,EAAE,YAAY,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,8CAA8C,CAAC,CAAC;QAE3G,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,SAAS,CAAC,OAAO,QAAQ,eAAe,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAEtE,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/B,QAAQ,CAAC,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAClC,QAAQ,CAAC,QAAQ,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3C,QAAQ,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,SAAS,CAAC,SAAS,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/audit.ts"],"names":[],"mappings":"AAOA,wBAAsB,0BAA0B,kBAsJ/C;AAED,wBAAsB,uBAAuB,kBAyB5C;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,kBA8D9C;AAED,wBAAsB,oBAAoB,kBA8FzC;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAmEhE;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkD9D"}
1
+ {"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/audit.ts"],"names":[],"mappings":"AAOA,wBAAsB,0BAA0B,kBA2K/C;AAED,wBAAsB,uBAAuB,kBAyB5C;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,kBA8D9C;AAED,wBAAsB,oBAAoB,kBA8FzC;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAmEhE;AAED,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkD9D"}
@@ -15,85 +15,85 @@ export async function cmdAuditTemplateMechanisms() {
15
15
  try {
16
16
  const { auditTemplateMechanisms } = await import("../../engine/templates/template_mechanism_auditor.js");
17
17
  const report = auditTemplateMechanisms(projectPath);
18
- if (asJson) {
19
- userInfo(JSON.stringify(report, null, 2));
20
- if (report.hard_fail_count > 0) {
21
- process.exit(1);
22
- }
23
- return;
24
- }
25
- // 人类可读输出
26
- userInfo(`模板-机制审计报告 (${report.generated_at})`);
27
- userInfo(` 模板文件: ${report.total_template_files}`);
28
- userInfo(` 注册资产: ${report.total_registered_assets}`);
29
- userInfo(` 机制总数: ${report.total_mechanisms}`);
30
- userInfo("");
31
- if (report.unmapped_template_assets.length > 0) {
32
- userInfo(`⚠️ 未注册模板 (${report.unmapped_template_assets.length}):`);
33
- for (const u of report.unmapped_template_assets) {
34
- userInfo(` - ${u.path}`);
35
- }
36
- }
37
- if (report.unconsumed_template_assets.length > 0) {
38
- userInfo(`⚠️ 未消费资产 (${report.unconsumed_template_assets.length}):`);
39
- for (const u of report.unconsumed_template_assets) {
40
- userInfo(` - ${u.path} (mode=${u.consumption_mode})`);
18
+ // 收集所有审计阶段的 hard_fail 计数,避免提前退出导致后续审计阶段被跳过
19
+ let totalHardFailCount = report.hard_fail_count;
20
+ let totalAdvisoryCount = report.advisory_count;
21
+ // 阶段 1: 模板机制审计 — 人类可读输出(JSON 模式延迟到最后统一输出)
22
+ if (!asJson) {
23
+ userInfo(`模板-机制审计报告 (${report.generated_at})`);
24
+ userInfo(` 模板文件: ${report.total_template_files}`);
25
+ userInfo(` 注册资产: ${report.total_registered_assets}`);
26
+ userInfo(` 机制总数: ${report.total_mechanisms}`);
27
+ userInfo("");
28
+ if (report.unmapped_template_assets.length > 0) {
29
+ userInfo(`⚠️ 未注册模板 (${report.unmapped_template_assets.length}):`);
30
+ for (const u of report.unmapped_template_assets) {
31
+ userInfo(` - ${u.path}`);
32
+ }
41
33
  }
42
- }
43
- if (report.code_only_mechanisms.length > 0) {
44
- userInfo(`⚠️ 仅代码机制 (无模板层):`);
45
- for (const m of report.code_only_mechanisms) {
46
- userInfo(` - ${m.mechanism_id} (${m.priority}, ${m.status})`);
34
+ if (report.unconsumed_template_assets.length > 0) {
35
+ userInfo(`⚠️ 未消费资产 (${report.unconsumed_template_assets.length}):`);
36
+ for (const u of report.unconsumed_template_assets) {
37
+ userInfo(` - ${u.path} (mode=${u.consumption_mode})`);
38
+ }
47
39
  }
48
- }
49
- if (report.template_only_mechanisms.length > 0) {
50
- userInfo(`⚠️ 仅模板机制 (无代码层):`);
51
- for (const m of report.template_only_mechanisms) {
52
- userInfo(` - ${m.mechanism_id} (${m.priority}, ${m.status})`);
40
+ if (report.code_only_mechanisms.length > 0) {
41
+ userInfo(`⚠️ 仅代码机制 (无模板层):`);
42
+ for (const m of report.code_only_mechanisms) {
43
+ userInfo(` - ${m.mechanism_id} (${m.priority}, ${m.status})`);
44
+ }
53
45
  }
54
- }
55
- if (report.required_assets_without_enforcer.length > 0) {
56
- userInfo(`❌ Required 资产无 enforcer (${report.required_assets_without_enforcer.length}):`);
57
- for (const r of report.required_assets_without_enforcer) {
58
- userInfo(` - ${r.path} (mechanism=${r.owner_mechanism_id})`);
46
+ if (report.template_only_mechanisms.length > 0) {
47
+ userInfo(`⚠️ 仅模板机制 (无代码层):`);
48
+ for (const m of report.template_only_mechanisms) {
49
+ userInfo(` - ${m.mechanism_id} (${m.priority}, ${m.status})`);
50
+ }
59
51
  }
60
- }
61
- if (report.overpromised_adapter_rules.length > 0) {
62
- userInfo(`❌ 适配器过度承诺 (${report.overpromised_adapter_rules.length}):`);
63
- for (const o of report.overpromised_adapter_rules) {
64
- userInfo(` - ${o.source_file}: ${o.promised_mechanism_id} (${o.promise_keywords.join(",")})`);
52
+ if (report.required_assets_without_enforcer.length > 0) {
53
+ userInfo(`❌ Required 资产无 enforcer (${report.required_assets_without_enforcer.length}):`);
54
+ for (const r of report.required_assets_without_enforcer) {
55
+ userInfo(` - ${r.path} (mechanism=${r.owner_mechanism_id})`);
56
+ }
65
57
  }
66
- }
67
- if (report.deprecated_assets_injected.length > 0) {
68
- userInfo(`⚠️ Deprecated 资产仍被注入:`);
69
- for (const d of report.deprecated_assets_injected) {
70
- userInfo(` - ${d.path}`);
58
+ if (report.overpromised_adapter_rules.length > 0) {
59
+ userInfo(`❌ 适配器过度承诺 (${report.overpromised_adapter_rules.length}):`);
60
+ for (const o of report.overpromised_adapter_rules) {
61
+ userInfo(` - ${o.source_file}: ${o.promised_mechanism_id} (${o.promise_keywords.join(",")})`);
62
+ }
71
63
  }
72
- }
73
- if (report.template_mechanism_drift.length > 0) {
74
- const driftHard = report.template_mechanism_drift.filter((f) => f.severity === "hard_fail");
75
- const driftAdvisory = report.template_mechanism_drift.filter((f) => f.severity === "advisory");
76
- if (driftAdvisory.length > 0) {
77
- userInfo(`⚠️ 漂移 advisory (${driftAdvisory.length}):`);
78
- for (const f of driftAdvisory) {
79
- userInfo(` - [${f.finding_type}] ${f.mechanism_id}: ${f.message}`);
64
+ if (report.deprecated_assets_injected.length > 0) {
65
+ userInfo(`⚠️ Deprecated 资产仍被注入:`);
66
+ for (const d of report.deprecated_assets_injected) {
67
+ userInfo(` - ${d.path}`);
80
68
  }
81
69
  }
82
- if (driftHard.length > 0) {
83
- userInfo(`❌ 漂移 hard_fail (${driftHard.length}):`);
84
- for (const f of driftHard) {
85
- userInfo(` - [${f.finding_type}] ${f.mechanism_id}: ${f.message}`);
70
+ if (report.template_mechanism_drift.length > 0) {
71
+ const driftHard = report.template_mechanism_drift.filter((f) => f.severity === "hard_fail");
72
+ const driftAdvisory = report.template_mechanism_drift.filter((f) => f.severity === "advisory");
73
+ if (driftAdvisory.length > 0) {
74
+ userInfo(`⚠️ 漂移 advisory (${driftAdvisory.length}):`);
75
+ for (const f of driftAdvisory) {
76
+ userInfo(` - [${f.finding_type}] ${f.mechanism_id}: ${f.message}`);
77
+ }
78
+ }
79
+ if (driftHard.length > 0) {
80
+ userInfo(`❌ 漂移 hard_fail (${driftHard.length}):`);
81
+ for (const f of driftHard) {
82
+ userInfo(` - [${f.finding_type}] ${f.mechanism_id}: ${f.message}`);
83
+ }
86
84
  }
87
85
  }
86
+ userInfo("");
87
+ if (report.hard_fail_count > 0) {
88
+ userInfo(`❌ 审计失败: ${report.hard_fail_count} hard_fail, ${report.advisory_count} advisory`);
89
+ }
90
+ else {
91
+ userInfo(`✅ 审计通过: 0 hard_fail, ${report.advisory_count} advisory`);
92
+ }
88
93
  }
89
- userInfo("");
90
- if (report.hard_fail_count > 0) {
91
- userInfo(`❌ 审计失败: ${report.hard_fail_count} hard_fail, ${report.advisory_count} advisory`);
92
- }
93
- else {
94
- userInfo(`✅ 审计通过: 0 hard_fail, ${report.advisory_count} advisory`);
95
- }
96
- // problem-57: 知识资产 schema 审计
94
+ // 阶段 2: 知识资产 schema 审计
95
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
+ let kaReport = null;
97
97
  try {
98
98
  const { auditKnowledgeAssets, parseAssetFile } = await import("../../engine/knowledge/knowledge_asset_audit.js");
99
99
  const knowledgeDirs = [
@@ -115,27 +115,48 @@ export async function cmdAuditTemplateMechanisms() {
115
115
  }
116
116
  }
117
117
  if (assets.length > 0) {
118
- const kaReport = auditKnowledgeAssets(assets);
119
- userInfo("");
120
- userInfo("知识资产审计:");
121
- userInfo(` 资产数: ${kaReport.total_assets}`);
122
- userInfo(` 通过: ${kaReport.passed ? "" : "✗"}`);
123
- userInfo(` hard_fail: ${kaReport.hard_fail_count}, warning: ${kaReport.warning_count}`);
124
- for (const f of kaReport.findings) {
125
- const icon = f.severity === "hard_fail" ? "" : "⚠️";
126
- userInfo(` ${icon} ${f.asset_id ?? f.file_path}: ${f.detail} (${f.kind})`);
127
- }
128
- if (kaReport.hard_fail_count > 0) {
129
- userInfo(`❌ 知识资产审计有 ${kaReport.hard_fail_count} hard_fail`);
130
- process.exit(1);
118
+ kaReport = auditKnowledgeAssets(assets);
119
+ totalHardFailCount += kaReport.hard_fail_count;
120
+ totalAdvisoryCount += kaReport.warning_count;
121
+ if (!asJson) {
122
+ userInfo("");
123
+ userInfo("知识资产审计:");
124
+ userInfo(` 资产数: ${kaReport.total_assets}`);
125
+ userInfo(` 通过: ${kaReport.passed ? "" : ""}`);
126
+ userInfo(` hard_fail: ${kaReport.hard_fail_count}, warning: ${kaReport.warning_count}`);
127
+ for (const f of kaReport.findings) {
128
+ const icon = f.severity === "hard_fail" ? "❌" : "⚠️";
129
+ userInfo(` ${icon} ${f.asset_id ?? f.file_path}: ${f.detail} (${f.kind})`);
130
+ }
131
131
  }
132
132
  }
133
133
  }
134
134
  catch (e) {
135
135
  userError(`❌ 知识资产审计异常: ${errorMessage(e)}`);
136
- process.exit(1);
136
+ totalHardFailCount += 1;
137
+ }
138
+ // 所有审计阶段完成后统一输出汇总并决定退出码
139
+ if (asJson) {
140
+ userInfo(JSON.stringify({
141
+ ...report,
142
+ knowledge_asset_audit: kaReport,
143
+ total_hard_fail_count: totalHardFailCount,
144
+ total_advisory_count: totalAdvisoryCount,
145
+ }, null, 2));
146
+ }
147
+ else {
148
+ userInfo("");
149
+ if (kaReport && kaReport.hard_fail_count > 0) {
150
+ userInfo(`❌ 知识资产审计有 ${kaReport.hard_fail_count} hard_fail`);
151
+ }
152
+ if (totalHardFailCount > 0) {
153
+ userInfo(`❌ 审计总失败: ${totalHardFailCount} hard_fail, ${totalAdvisoryCount} advisory`);
154
+ }
155
+ else {
156
+ userInfo(`✅ 全部审计通过: 0 hard_fail, ${totalAdvisoryCount} advisory`);
157
+ }
137
158
  }
138
- if (report.hard_fail_count > 0) {
159
+ if (totalHardFailCount > 0) {
139
160
  process.exit(1);
140
161
  }
141
162
  }