soloforge 1.1.33 → 1.1.34

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 (469) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/adapters/shared/workflow_template.js +1 -1
  3. package/dist/bin/commands/check_bash.d.ts +6 -0
  4. package/dist/bin/commands/check_bash.d.ts.map +1 -1
  5. package/dist/bin/commands/check_bash.js +68 -1
  6. package/dist/bin/commands/check_bash.js.map +1 -1
  7. package/dist/bin/commands/check_write.d.ts +23 -0
  8. package/dist/bin/commands/check_write.d.ts.map +1 -1
  9. package/dist/bin/commands/check_write.js +110 -0
  10. package/dist/bin/commands/check_write.js.map +1 -1
  11. package/dist/bin/commands/init.d.ts.map +1 -1
  12. package/dist/bin/commands/init.js +7 -1
  13. package/dist/bin/commands/init.js.map +1 -1
  14. package/dist/engine/audit/code_reviewer.d.ts +2 -0
  15. package/dist/engine/audit/code_reviewer.d.ts.map +1 -1
  16. package/dist/engine/audit/code_reviewer.js +4 -3
  17. package/dist/engine/audit/code_reviewer.js.map +1 -1
  18. package/dist/engine/audit/mutation_audit.d.ts +5 -1
  19. package/dist/engine/audit/mutation_audit.d.ts.map +1 -1
  20. package/dist/engine/audit/mutation_audit.js +18 -1
  21. package/dist/engine/audit/mutation_audit.js.map +1 -1
  22. package/dist/engine/audit/test_quality.d.ts.map +1 -1
  23. package/dist/engine/audit/test_quality.js +9 -0
  24. package/dist/engine/audit/test_quality.js.map +1 -1
  25. package/dist/engine/contracts/artifact_process_rules.d.ts +46 -0
  26. package/dist/engine/contracts/artifact_process_rules.d.ts.map +1 -0
  27. package/dist/engine/contracts/artifact_process_rules.js +396 -0
  28. package/dist/engine/contracts/artifact_process_rules.js.map +1 -0
  29. package/dist/engine/contracts/artifact_schema_registry.d.ts +137 -0
  30. package/dist/engine/contracts/artifact_schema_registry.d.ts.map +1 -0
  31. package/dist/engine/contracts/artifact_schema_registry.js +773 -0
  32. package/dist/engine/contracts/artifact_schema_registry.js.map +1 -0
  33. package/dist/engine/contracts/behavior_coverage_verifier.d.ts +35 -0
  34. package/dist/engine/contracts/behavior_coverage_verifier.d.ts.map +1 -0
  35. package/dist/engine/contracts/behavior_coverage_verifier.js +220 -0
  36. package/dist/engine/contracts/behavior_coverage_verifier.js.map +1 -0
  37. package/dist/engine/contracts/capability_registry.d.ts.map +1 -1
  38. package/dist/engine/contracts/capability_registry.js +74 -0
  39. package/dist/engine/contracts/capability_registry.js.map +1 -1
  40. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_extension.js +2 -2
  41. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_platform.d.ts.map +1 -1
  42. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_platform.js +61 -2
  43. package/dist/engine/contracts/dual_layer_mechanism_registry/mechanisms_platform.js.map +1 -1
  44. package/dist/engine/contracts/error_path_verifier.d.ts +36 -0
  45. package/dist/engine/contracts/error_path_verifier.d.ts.map +1 -0
  46. package/dist/engine/contracts/error_path_verifier.js +131 -0
  47. package/dist/engine/contracts/error_path_verifier.js.map +1 -0
  48. package/dist/engine/contracts/lazy_pattern_detector.d.ts +43 -0
  49. package/dist/engine/contracts/lazy_pattern_detector.d.ts.map +1 -0
  50. package/dist/engine/contracts/lazy_pattern_detector.js +164 -0
  51. package/dist/engine/contracts/lazy_pattern_detector.js.map +1 -0
  52. package/dist/engine/contracts/mechanism_contract_registry/contracts-governance.d.ts.map +1 -1
  53. package/dist/engine/contracts/mechanism_contract_registry/contracts-governance.js +29 -0
  54. package/dist/engine/contracts/mechanism_contract_registry/contracts-governance.js.map +1 -1
  55. package/dist/engine/contracts/omission_scanner.d.ts +83 -0
  56. package/dist/engine/contracts/omission_scanner.d.ts.map +1 -0
  57. package/dist/engine/contracts/omission_scanner.js +191 -0
  58. package/dist/engine/contracts/omission_scanner.js.map +1 -0
  59. package/dist/engine/contracts/template_schema_loader.d.ts +79 -0
  60. package/dist/engine/contracts/template_schema_loader.d.ts.map +1 -0
  61. package/dist/engine/contracts/template_schema_loader.js +301 -0
  62. package/dist/engine/contracts/template_schema_loader.js.map +1 -0
  63. package/dist/engine/knowledge/knowledge_injection_boundary.d.ts +21 -4
  64. package/dist/engine/knowledge/knowledge_injection_boundary.d.ts.map +1 -1
  65. package/dist/engine/knowledge/knowledge_injection_boundary.js +96 -22
  66. package/dist/engine/knowledge/knowledge_injection_boundary.js.map +1 -1
  67. package/dist/engine/pipeline/intent_expander/expand.d.ts.map +1 -1
  68. package/dist/engine/pipeline/intent_expander/expand.js +2 -2
  69. package/dist/engine/pipeline/intent_expander/expand.js.map +1 -1
  70. package/dist/engine/pipeline/intent_expander/knowledge.d.ts +2 -1
  71. package/dist/engine/pipeline/intent_expander/knowledge.d.ts.map +1 -1
  72. package/dist/engine/pipeline/intent_expander/knowledge.js +34 -1
  73. package/dist/engine/pipeline/intent_expander/knowledge.js.map +1 -1
  74. package/dist/engine/pipeline/intent_expander/knowledge_resolution.d.ts +2 -1
  75. package/dist/engine/pipeline/intent_expander/knowledge_resolution.d.ts.map +1 -1
  76. package/dist/engine/pipeline/intent_expander/knowledge_resolution.js +16 -5
  77. package/dist/engine/pipeline/intent_expander/knowledge_resolution.js.map +1 -1
  78. package/dist/engine/pipeline/intent_expander/scope_acceptance.d.ts +6 -2
  79. package/dist/engine/pipeline/intent_expander/scope_acceptance.d.ts.map +1 -1
  80. package/dist/engine/pipeline/intent_expander/scope_acceptance.js +6 -1
  81. package/dist/engine/pipeline/intent_expander/scope_acceptance.js.map +1 -1
  82. package/dist/engine/pipeline/intent_expander/templates.d.ts.map +1 -1
  83. package/dist/engine/pipeline/intent_expander/templates.js +99 -0
  84. package/dist/engine/pipeline/intent_expander/templates.js.map +1 -1
  85. package/dist/engine/pipeline/intent_expander/types.d.ts +3 -0
  86. package/dist/engine/pipeline/intent_expander/types.d.ts.map +1 -1
  87. package/dist/engine/pipeline/intent_router.d.ts +3 -0
  88. package/dist/engine/pipeline/intent_router.d.ts.map +1 -1
  89. package/dist/engine/pipeline/intent_router.js +34 -6
  90. package/dist/engine/pipeline/intent_router.js.map +1 -1
  91. package/dist/engine/pipeline/intent_signal_extractor.js +11 -11
  92. package/dist/engine/pipeline/intent_signal_extractor.js.map +1 -1
  93. package/dist/engine/pipeline/stage_prechecks.d.ts +83 -0
  94. package/dist/engine/pipeline/stage_prechecks.d.ts.map +1 -0
  95. package/dist/engine/pipeline/stage_prechecks.js +199 -0
  96. package/dist/engine/pipeline/stage_prechecks.js.map +1 -0
  97. package/dist/engine/pipeline/task_planner.d.ts +2 -0
  98. package/dist/engine/pipeline/task_planner.d.ts.map +1 -1
  99. package/dist/engine/pipeline/task_planner.js +4 -0
  100. package/dist/engine/pipeline/task_planner.js.map +1 -1
  101. package/dist/engine/release/release_issue_scenario_registry/scenarios_template_visibility.js +3 -3
  102. package/dist/engine/release/release_issue_scenario_registry/scenarios_template_visibility.js.map +1 -1
  103. package/dist/engine/release/release_readiness_gate.d.ts +4 -1
  104. package/dist/engine/release/release_readiness_gate.d.ts.map +1 -1
  105. package/dist/engine/release/release_readiness_gate.js +57 -1
  106. package/dist/engine/release/release_readiness_gate.js.map +1 -1
  107. package/dist/engine/templates/asset_manifest.d.ts.map +1 -1
  108. package/dist/engine/templates/asset_manifest.js +107 -91
  109. package/dist/engine/templates/asset_manifest.js.map +1 -1
  110. package/dist/engine/templates/consumable_asset_registry/builtin_assets_core.d.ts.map +1 -1
  111. package/dist/engine/templates/consumable_asset_registry/builtin_assets_core.js +30 -14
  112. package/dist/engine/templates/consumable_asset_registry/builtin_assets_core.js.map +1 -1
  113. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_core.js +21 -21
  114. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_core.js.map +1 -1
  115. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_ext.js +20 -20
  116. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_ext.js.map +1 -1
  117. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_ext2.d.ts.map +1 -1
  118. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_ext2.js +22 -21
  119. package/dist/engine/templates/consumable_asset_registry/builtin_assets_dual_layer_ext2.js.map +1 -1
  120. package/dist/engine/templates/consumable_asset_registry/builtin_assets_pipeline.d.ts.map +1 -1
  121. package/dist/engine/templates/consumable_asset_registry/builtin_assets_pipeline.js +10 -1
  122. package/dist/engine/templates/consumable_asset_registry/builtin_assets_pipeline.js.map +1 -1
  123. package/dist/engine/templates/consumable_asset_registry/types.d.ts +3 -1
  124. package/dist/engine/templates/consumable_asset_registry/types.d.ts.map +1 -1
  125. package/dist/engine/templates/consumable_asset_registry/types.js +1 -1
  126. package/dist/engine/templates/consumable_asset_registry/types.js.map +1 -1
  127. package/dist/engine/templates/explicit_asset_registry/adapters.js +1 -1
  128. package/dist/engine/templates/explicit_asset_registry/adapters.js.map +1 -1
  129. package/dist/engine/templates/explicit_asset_registry/artifacts_existing_system.js +29 -29
  130. package/dist/engine/templates/explicit_asset_registry/artifacts_existing_system.js.map +1 -1
  131. package/dist/engine/templates/explicit_asset_registry/artifacts_shared_part1.js +47 -47
  132. package/dist/engine/templates/explicit_asset_registry/artifacts_shared_part1.js.map +1 -1
  133. package/dist/engine/templates/explicit_asset_registry/artifacts_shared_part2.js +9 -9
  134. package/dist/engine/templates/explicit_asset_registry/artifacts_shared_part2.js.map +1 -1
  135. package/dist/engine/templates/explicit_asset_registry/checklists.js +13 -13
  136. package/dist/engine/templates/explicit_asset_registry/checklists.js.map +1 -1
  137. package/dist/engine/templates/explicit_asset_registry/contributing.d.ts +3 -0
  138. package/dist/engine/templates/explicit_asset_registry/contributing.d.ts.map +1 -0
  139. package/dist/engine/templates/explicit_asset_registry/contributing.js +19 -0
  140. package/dist/engine/templates/explicit_asset_registry/contributing.js.map +1 -0
  141. package/dist/engine/templates/explicit_asset_registry/domain.js +18 -18
  142. package/dist/engine/templates/explicit_asset_registry/domain.js.map +1 -1
  143. package/dist/engine/templates/explicit_asset_registry/gates.d.ts.map +1 -1
  144. package/dist/engine/templates/explicit_asset_registry/gates.js +140 -11
  145. package/dist/engine/templates/explicit_asset_registry/gates.js.map +1 -1
  146. package/dist/engine/templates/explicit_asset_registry/index.d.ts.map +1 -1
  147. package/dist/engine/templates/explicit_asset_registry/index.js +3 -0
  148. package/dist/engine/templates/explicit_asset_registry/index.js.map +1 -1
  149. package/dist/engine/templates/explicit_asset_registry/internal_patterns.d.ts.map +1 -1
  150. package/dist/engine/templates/explicit_asset_registry/internal_patterns.js +110 -46
  151. package/dist/engine/templates/explicit_asset_registry/internal_patterns.js.map +1 -1
  152. package/dist/engine/templates/explicit_asset_registry/internal_rules_part1.js +52 -52
  153. package/dist/engine/templates/explicit_asset_registry/internal_rules_part1.js.map +1 -1
  154. package/dist/engine/templates/explicit_asset_registry/internal_rules_part2.d.ts.map +1 -1
  155. package/dist/engine/templates/explicit_asset_registry/internal_rules_part2.js +55 -39
  156. package/dist/engine/templates/explicit_asset_registry/internal_rules_part2.js.map +1 -1
  157. package/dist/engine/templates/explicit_asset_registry/patterns_part1.js +50 -50
  158. package/dist/engine/templates/explicit_asset_registry/patterns_part1.js.map +1 -1
  159. package/dist/engine/templates/explicit_asset_registry/patterns_part2.js +50 -50
  160. package/dist/engine/templates/explicit_asset_registry/patterns_part2.js.map +1 -1
  161. package/dist/engine/templates/explicit_asset_registry/patterns_part3.js +2 -2
  162. package/dist/engine/templates/explicit_asset_registry/patterns_part3.js.map +1 -1
  163. package/dist/engine/templates/explicit_asset_registry/procedures_part1.js +66 -66
  164. package/dist/engine/templates/explicit_asset_registry/procedures_part1.js.map +1 -1
  165. package/dist/engine/templates/explicit_asset_registry/procedures_part2.d.ts.map +1 -1
  166. package/dist/engine/templates/explicit_asset_registry/procedures_part2.js +43 -26
  167. package/dist/engine/templates/explicit_asset_registry/procedures_part2.js.map +1 -1
  168. package/dist/engine/templates/explicit_asset_registry/profiles.js +3 -3
  169. package/dist/engine/templates/explicit_asset_registry/profiles.js.map +1 -1
  170. package/dist/engine/templates/explicit_asset_registry/rules_pipeline.js +18 -18
  171. package/dist/engine/templates/explicit_asset_registry/rules_pipeline.js.map +1 -1
  172. package/dist/engine/templates/explicit_asset_registry/rules_shared.d.ts.map +1 -1
  173. package/dist/engine/templates/explicit_asset_registry/rules_shared.js +128 -17
  174. package/dist/engine/templates/explicit_asset_registry/rules_shared.js.map +1 -1
  175. package/dist/engine/templates/explicit_asset_registry/scaffolds.d.ts.map +1 -1
  176. package/dist/engine/templates/explicit_asset_registry/scaffolds.js +87 -18
  177. package/dist/engine/templates/explicit_asset_registry/scaffolds.js.map +1 -1
  178. package/dist/engine/templates/standard_asset_contract.d.ts +30 -0
  179. package/dist/engine/templates/standard_asset_contract.d.ts.map +1 -1
  180. package/dist/engine/templates/standard_asset_contract.js +152 -0
  181. package/dist/engine/templates/standard_asset_contract.js.map +1 -1
  182. package/dist/engine/templates/template_asset_contract_registry.d.ts +1 -1
  183. package/dist/engine/templates/template_asset_contract_registry.d.ts.map +1 -1
  184. package/dist/engine/templates/template_asset_contract_registry.js +44 -7
  185. package/dist/engine/templates/template_asset_contract_registry.js.map +1 -1
  186. package/dist/engine/templates/template_init_sync.d.ts +7 -1
  187. package/dist/engine/templates/template_init_sync.d.ts.map +1 -1
  188. package/dist/engine/templates/template_init_sync.js +72 -19
  189. package/dist/engine/templates/template_init_sync.js.map +1 -1
  190. package/dist/engine/templates/workflow_rule_generator.d.ts +1 -1
  191. package/dist/engine/templates/workflow_rule_generator.js +2 -2
  192. package/dist/engine/templates/workflow_rule_generator.js.map +1 -1
  193. package/dist/knowledge/index_manager.d.ts +1 -0
  194. package/dist/knowledge/index_manager.d.ts.map +1 -1
  195. package/dist/knowledge/index_manager.js +23 -1
  196. package/dist/knowledge/index_manager.js.map +1 -1
  197. package/dist/server/tools/tool_groups/expand_handler.d.ts.map +1 -1
  198. package/dist/server/tools/tool_groups/expand_handler.js +4 -0
  199. package/dist/server/tools/tool_groups/expand_handler.js.map +1 -1
  200. package/dist/server/tools/tool_groups/verify_learn.d.ts.map +1 -1
  201. package/dist/server/tools/tool_groups/verify_learn.js +209 -58
  202. package/dist/server/tools/tool_groups/verify_learn.js.map +1 -1
  203. package/dist/types/analysis.d.ts +5 -0
  204. package/dist/types/analysis.d.ts.map +1 -1
  205. package/dist/types/knowledge.d.ts +13 -2
  206. package/dist/types/knowledge.d.ts.map +1 -1
  207. package/dist/types/knowledge.js.map +1 -1
  208. package/dist/types/pipeline.d.ts +35 -0
  209. package/dist/types/pipeline.d.ts.map +1 -1
  210. package/dist/types/task.d.ts +19 -0
  211. package/dist/types/task.d.ts.map +1 -1
  212. package/package.json +4 -2
  213. 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 +8 -4
  214. 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 +8 -4
  215. 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 +8 -4
  216. 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 +8 -4
  217. 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 +8 -4
  218. 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 +8 -4
  219. 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 +8 -4
  220. 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 +8 -4
  221. 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 +8 -4
  222. package/templates/artifacts/shared/ADR/346/250/241/347/211/210.md +5 -2
  223. 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 +52 -5
  224. package/templates/artifacts/shared/Bug/345/210/206/346/236/220/346/250/241/347/211/210.md +6 -5
  225. package/templates/artifacts/shared/OOD/350/256/276/350/256/241/346/221/230/350/246/201/346/250/241/347/211/210.md +5 -5
  226. package/templates/artifacts/shared/POC/347/273/223/350/256/272/346/250/241/347/211/210.md +6 -5
  227. 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 +6 -3
  228. 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/{346/235/277.md → 347/211/210.md} +11 -14
  229. package/templates/artifacts/shared//345/210/207/347/211/207/350/256/241/345/210/222/346/250/241/347/211/210.md +5 -2
  230. 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 +5 -4
  231. package/templates/artifacts/shared//345/216/237/345/236/213/350/257/264/346/230/216/346/250/241/347/211/210.md +81 -4
  232. package/templates/artifacts/shared//345/220/216/347/253/257API/351/252/214/346/224/266/346/270/205/345/215/225.md +5 -4
  233. 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 +6 -8
  234. package/templates/artifacts/shared//345/256/211/345/205/250/345/256/241/350/256/241/346/250/241/347/211/210.md +6 -5
  235. package/templates/artifacts/shared//345/256/241/346/237/245/346/221/230/350/246/201.md +7 -7
  236. package/templates/artifacts/shared//346/200/247/350/203/275/345/210/206/346/236/220/346/250/241/347/211/210.md +6 -5
  237. 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 +5 -4
  238. 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 +6 -5
  239. package/templates/artifacts/shared//346/225/205/351/232/234/345/244/215/347/233/230/346/250/241/347/211/210.md +6 -5
  240. 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 +6 -5
  241. 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 +5 -4
  242. 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 +33 -5
  243. package/templates/artifacts/shared//346/236/266/346/236/204/350/256/276/350/256/241/346/250/241/347/211/210.md +57 -5
  244. package/templates/artifacts/shared//346/265/213/350/257/225/350/256/241/345/210/222/346/250/241/347/211/210.md +6 -5
  245. 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 +27 -9
  246. package/templates/artifacts/shared//350/257/246/347/273/206/350/256/276/350/256/241/346/250/241/347/211/210.md +6 -5
  247. package/templates/artifacts/shared//350/277/201/347/247/273/350/257/204/344/274/260/346/250/241/347/211/210.md +6 -5
  248. 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 +5 -4
  249. package/templates/artifacts/shared//351/207/215/346/236/204/346/226/271/346/241/210/346/250/241/347/211/210.md +6 -5
  250. package/templates/artifacts/shared//351/234/200/346/261/202/345/210/206/346/236/220/346/250/241/347/211/210.md +6 -5
  251. 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 +7 -10
  252. 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 +6 -9
  253. package/templates/checklists//344/274/232/350/257/235/346/201/242/345/244/215.md +8 -14
  254. 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 +6 -10
  255. 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 +6 -9
  256. 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 +7 -11
  257. package/templates/checklists//351/232/220/347/247/201/345/256/241/346/237/245/346/270/205/345/215/225.md +6 -9
  258. package/templates/checklists//351/252/214/350/257/201/351/252/214/346/224/266/346/270/205/345/215/225.md +6 -9
  259. package/templates/domain//345/244/232/347/247/237/346/210/267.md +5 -4
  260. package/templates/domain//345/256/241/350/256/241/346/227/245/345/277/227.md +5 -4
  261. package/templates/domain//345/257/274/345/205/245/345/257/274/345/207/272/350/247/204/345/210/231.md +10 -9
  262. package/templates/domain//345/267/245/344/275/234/346/265/201/345/274/225/346/223/216.md +5 -4
  263. package/templates/domain//346/212/245/350/241/250/347/273/237/350/256/241.md +5 -4
  264. package/templates/domain//346/224/257/344/273/230/350/247/204/345/210/231.md +5 -4
  265. package/templates/domain//346/225/260/346/215/256/346/235/203/351/231/220.md +5 -4
  266. package/templates/domain//351/200/232/347/224/250/346/234/272/346/242/260/346/235/241/346/254/276.md +5 -4
  267. package/templates/domain//351/200/232/347/237/245/350/247/204/345/210/231.md +10 -9
  268. package/templates/gates/existing-system/gate-/346/236/266/346/236/204/350/256/276/350/256/241.yaml +1 -0
  269. 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 +2 -2
  270. 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 +2 -1
  271. package/templates/gates/existing-system/gate-/350/257/246/347/273/206/350/256/276/350/256/241.yaml +1 -0
  272. package/templates/gates/shared/gate-/344/272/244/344/273/230.yaml +14 -0
  273. package/templates/gates/shared/gate-/344/273/273/345/212/241/350/247/204/345/210/222.yaml +3 -3
  274. package/templates/gates/shared/gate-/344/274/232/350/257/235/345/220/257/345/212/250.yaml +14 -0
  275. package/templates/gates/shared/gate-/345/206/263/347/255/226/347/240/224/350/256/250.yaml +14 -0
  276. package/templates/gates/shared/gate-/345/217/221/345/270/203/345/220/216/350/247/202/345/257/237.yaml +14 -0
  277. package/templates/gates/shared/gate-/346/234/254/345/234/260/351/252/214/346/224/266.yaml +14 -0
  278. package/templates/gates/shared/gate-/347/274/226/347/240/201/345/207/206/345/244/207.yaml +14 -0
  279. package/templates/gates/shared/gate-/347/274/226/347/240/201/345/256/236/347/216/260.yaml +14 -0
  280. package/templates/gates/shared/gate-/347/274/226/347/240/201/351/252/214/350/257/201.yaml +18 -0
  281. package/templates/internal/patterns/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md +5 -5
  282. 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 +61 -0
  283. package/templates/internal/patterns/Java/350/264/250/351/207/217/351/227/250/347/246/201.md +5 -5
  284. package/templates/internal/patterns/LLM/351/242/204/347/256/227/347/275/221/345/205/263.md +5 -5
  285. package/templates/internal/patterns//344/272/247/347/211/251Schema/346/263/250/345/206/214/344/270/255/345/277/203.md +61 -0
  286. 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 +5 -5
  287. package/templates/internal/patterns//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md +5 -5
  288. 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 +5 -5
  289. package/templates/internal/patterns//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md +5 -5
  290. package/templates/internal/patterns//345/206/262/347/252/201/351/227/250/347/246/201.md +5 -5
  291. package/templates/internal/patterns//345/206/263/347/255/226/347/275/221/345/205/263.md +5 -5
  292. 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 +61 -0
  293. package/templates/internal/patterns//345/217/230/345/274/202/345/256/241/350/256/241.md +5 -5
  294. package/templates/internal/patterns//345/233/236/345/275/222/347/237/251/351/230/265.md +6 -6
  295. package/templates/internal/patterns//345/267/245/344/275/234/345/214/272/344/272/222/346/226/245/351/224/201.md +5 -5
  296. package/templates/internal/patterns//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md +5 -5
  297. package/templates/internal/patterns//345/271/266/345/217/221/351/224/201.md +5 -5
  298. package/templates/internal/patterns//345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md +5 -5
  299. package/templates/internal/patterns//346/225/217/346/204/237/344/277/241/346/201/257/346/211/253/346/217/217.md +5 -5
  300. package/templates/internal/patterns//346/250/241/347/211/210Frontmatter/350/247/243/346/236/220.md +61 -0
  301. 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 +5 -5
  302. package/templates/internal/patterns//346/265/201/345/274/217/345/277/203/350/267/263.md +5 -5
  303. package/templates/internal/patterns//347/237/245/350/257/206/344/270/273/346/235/203.md +6 -6
  304. package/templates/internal/patterns//350/257/255/344/271/211/350/257/201/346/215/256.md +5 -5
  305. package/templates/internal/patterns//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md +5 -5
  306. package/templates/internal/patterns//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226.md +5 -5
  307. package/templates/internal/patterns//351/252/214/350/257/201/345/221/275/344/273/244/347/224/237/346/210/220.md +6 -6
  308. package/templates/internal/rules/OOD/344/270/216SOLID/350/256/276/350/256/241/350/247/204/345/210/231.md +7 -9
  309. package/templates/internal/rules//344/272/247/347/211/251/345/245/221/347/272/246/350/247/204/345/210/231.md +7 -9
  310. 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 +7 -9
  311. 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 +7 -6
  312. 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 +7 -9
  313. package/templates/internal/rules//345/221/275/344/273/244/346/211/247/350/241/214/350/247/204/345/210/231.md +7 -9
  314. 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 +8 -10
  315. 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 +8 -10
  316. package/templates/internal/rules//345/267/245/344/275/234/346/265/201/346/250/241/{346/235/277 → 347/211/210}/345/214/205/350/247/204/345/210/231.md +15 -15
  317. package/templates/internal/rules//345/267/245/345/205/267/350/260/203/347/224/250/350/247/204/345/210/231.md +7 -9
  318. package/templates/internal/rules//346/204/217/345/233/276/350/267/257/347/224/261/350/247/204/345/210/231.md +7 -9
  319. 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 +7 -9
  320. 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 +7 -7
  321. 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 +7 -6
  322. 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 +8 -10
  323. 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 +7 -7
  324. package/templates/internal/rules//346/227/245/345/277/227/346/262/273/347/220/206/350/247/204/345/210/231.md +7 -8
  325. 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 +7 -8
  326. 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 +7 -8
  327. 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 +8 -7
  328. package/templates/internal/rules//346/240/270/345/277/203/344/275/223/351/252/214/345/216/237/345/210/231.md +9 -13
  329. 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 +7 -9
  330. package/templates/internal/rules//346/250/241/347/211/210Frontmatter/350/247/204/350/214/203.md +281 -0
  331. package/templates/internal/rules//346/250/241/{346/235/277 → 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 +10 -9
  332. 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 +10 -12
  333. 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 +14 -13
  334. 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 +12 -14
  335. package/templates/internal/rules//347/237/245/350/257/206/346/262/273/347/220/206/350/247/204/345/210/231.md +8 -10
  336. 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 +9 -11
  337. 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 +10 -17
  338. 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 +10 -9
  339. package/templates/internal/rules//347/273/206/350/212/202/347/272/252/345/276/213/350/247/204/345/210/231.md +7 -6
  340. 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 +7 -6
  341. 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 +8 -11
  342. 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 +7 -8
  343. 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 +7 -7
  344. 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 +7 -7
  345. 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 +8 -10
  346. 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 +6 -5
  347. 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 +8 -10
  348. 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 +7 -6
  349. 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 +7 -9
  350. 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 +9 -11
  351. package/templates/internal/rules//351/252/214/346/224/266/346/250/241/{346/235/277 → 347/211/210}/350/276/223/345/207/272/345/245/221/347/272/246/350/247/204/345/210/231.md +14 -16
  352. package/templates/internal/rules//351/252/214/350/257/201/345/245/221/347/272/246/350/247/204/345/210/231.md +7 -9
  353. package/templates/patterns/API/350/256/276/350/256/241/350/247/204/350/214/203.md +4 -3
  354. package/templates/patterns/Docker/351/203/250/347/275/262/350/247/204/350/214/203.md +4 -3
  355. package/templates/patterns/Git/346/223/215/344/275/234/350/247/204/350/214/203.md +4 -3
  356. package/templates/patterns/N/345/212/2401/346/237/245/350/257/242/350/247/204/350/214/203.md +4 -3
  357. package/templates/patterns/React/345/210/227/350/241/250/350/241/250/346/240/274/350/247/204/350/214/203.md +5 -4
  358. package/templates/patterns/React/346/216/245/345/217/243/351/233/206/346/210/220/350/247/204/350/214/203.md +4 -3
  359. package/templates/patterns/React/347/212/266/346/200/201/347/256/241/347/220/206/350/247/204/350/214/203.md +4 -3
  360. package/templates/patterns/React/347/273/204/344/273/266/350/247/204/350/214/203.md +4 -3
  361. package/templates/patterns/React/350/241/250/345/215/225/350/247/204/350/214/203.md +4 -3
  362. package/templates/patterns/React/350/267/257/347/224/261/350/247/204/350/214/203.md +4 -3
  363. package/templates/patterns/SOLID/350/256/276/350/256/241/350/247/204/350/214/203.md +3 -3
  364. package/templates/patterns/Schema/345/205/274/345/256/271/350/247/204/350/214/203.md +4 -3
  365. package/templates/patterns/Vue/347/212/266/346/200/201/347/256/241/347/220/206/350/247/204/350/214/203.md +4 -3
  366. package/templates/patterns/Vue/347/273/204/344/273/266/350/247/204/350/214/203.md +4 -3
  367. package/templates/patterns/Vue/350/267/257/347/224/261/350/247/204/350/214/203.md +4 -3
  368. package/templates/patterns//344/272/213/344/273/266/351/251/261/345/212/250/350/247/204/350/214/203.md +4 -3
  369. package/templates/patterns//344/272/213/345/212/241/346/250/241/345/274/217/350/247/204/350/214/203.md +4 -3
  370. package/templates/patterns//344/274/230/351/233/205/345/201/234/346/234/272/350/247/204/350/214/203.md +4 -3
  371. package/templates/patterns//345/205/250/346/240/210/346/265/201/347/250/213/344/277/256/345/244/215.md +4 -3
  372. package/templates/patterns//345/210/206/351/241/265/346/237/245/350/257/242/350/247/204/350/214/203.md +4 -3
  373. package/templates/patterns//345/211/215/347/253/257/346/200/247/350/203/275/350/247/204/350/214/203.md +4 -3
  374. 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 +3 -3
  375. package/templates/patterns//345/221/275/345/220/215/350/247/204/350/214/203.md +4 -3
  376. package/templates/patterns//345/233/275/351/231/205/345/214/226/350/247/204/350/214/203.md +5 -4
  377. package/templates/patterns//345/242/236/345/210/240/346/224/271/346/237/245/350/247/204/350/214/203.md +4 -3
  378. package/templates/patterns//345/244/226/351/203/250/344/276/235/350/265/226/350/247/204/350/214/203.md +4 -3
  379. package/templates/patterns//345/245/221/347/272/246/345/205/274/345/256/271/350/247/204/350/214/203.md +4 -3
  380. package/templates/patterns//345/256/232/346/227/266/344/273/273/345/212/241/350/247/204/350/214/203.md +4 -3
  381. package/templates/patterns//345/256/236/346/227/266/346/216/250/351/200/201/350/247/204/350/214/203.md +4 -3
  382. package/templates/patterns//345/267/245/347/250/213/347/272/252/345/276/213.md +4 -3
  383. package/templates/patterns//345/271/266/345/217/221/346/216/247/345/210/266/350/247/204/350/214/203.md +4 -3
  384. package/templates/patterns//345/274/202/346/255/245/345/257/274/345/207/272/350/247/204/350/214/203.md +4 -3
  385. package/templates/patterns//346/216/245/345/217/243/345/245/221/347/272/246/350/247/204/350/214/203.md +4 -3
  386. package/templates/patterns//346/220/234/347/264/242/346/250/241/345/274/217/350/247/204/350/214/203.md +4 -3
  387. package/templates/patterns//346/225/260/346/215/256/351/232/220/347/247/201/350/247/204/350/214/203.md +4 -3
  388. package/templates/patterns//346/226/207/344/273/266/344/270/212/344/274/240/350/247/204/350/214/203.md +4 -3
  389. package/templates/patterns//346/227/240/351/232/234/347/242/215/350/247/204/350/214/203.md +4 -3
  390. package/templates/patterns//346/227/245/345/277/227/350/247/204/350/214/203.md +4 -3
  391. package/templates/patterns//346/235/203/351/231/220/350/256/244/350/257/201/350/247/204/350/214/203.md +4 -3
  392. package/templates/patterns//346/236/266/346/236/204/347/272/242/347/272/277.md +4 -3
  393. package/templates/patterns//346/265/213/350/257/225/350/264/250/351/207/217/350/247/204/350/214/203.md +4 -3
  394. package/templates/patterns//347/206/224/346/226/255/351/231/215/347/272/247/350/247/204/350/214/203.md +4 -3
  395. package/templates/patterns//347/212/266/346/200/201/346/265/201/350/275/254/350/247/204/350/214/203.md +4 -3
  396. package/templates/patterns//347/272/246/346/235/237/345/256/236/347/216/260/350/247/204/350/214/203.md +4 -3
  397. package/templates/patterns//347/274/223/345/255/230/347/255/226/347/225/245/350/247/204/350/214/203.md +4 -3
  398. package/templates/patterns//347/274/226/347/240/201/350/264/250/351/207/217/350/247/204/350/214/203.md +4 -3
  399. package/templates/patterns//347/274/272/351/231/267/347/256/241/347/220/206/350/247/204/350/214/203.md +5 -4
  400. package/templates/patterns//350/260/203/350/257/225/346/226/271/346/263/225/350/256/272.md +4 -3
  401. package/templates/patterns//350/276/223/345/205/245/346/240/241/351/252/214/350/247/204/350/214/203.md +4 -3
  402. package/templates/patterns//351/224/231/350/257/257/345/244/204/347/220/206/350/247/204/350/214/203.md +4 -3
  403. package/templates/patterns//351/224/231/350/257/257/350/276/271/347/225/214/350/247/204/350/214/203.md +4 -3
  404. 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 +4 -3
  405. package/templates/procedures/OOD/350/256/276/350/256/241/345/267/245/344/275/234/346/265/201.md +7 -4
  406. package/templates/procedures/Schema/345/217/230/346/233/264/346/265/201/346/260/264/347/272/277.md +9 -9
  407. 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
  408. package/templates/procedures//344/273/243/347/240/201/351/227/250/347/246/201/346/265/201/347/250/213.md +6 -7
  409. package/templates/procedures//344/273/273/345/212/241/346/213/206/350/247/243/346/265/201/347/250/213.md +6 -7
  410. package/templates/procedures//344/274/232/350/257/235/346/201/242/345/244/215/346/265/201/347/250/213.md +85 -0
  411. 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 +6 -9
  412. package/templates/procedures//345/212/237/350/203/275/345/274/200/345/217/221/346/265/201/347/250/213.md +6 -7
  413. 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 +4 -4
  414. package/templates/procedures//345/221/275/344/273/244/346/211/247/350/241/214/346/265/201/347/250/213.md +7 -8
  415. 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 +9 -9
  416. package/templates/procedures//345/267/245/345/205/267/350/260/203/347/224/250/346/265/201/347/250/213.md +7 -8
  417. package/templates/procedures//346/200/247/350/203/275/346/265/201/346/260/264/347/272/277.md +9 -9
  418. package/templates/procedures//346/204/217/345/233/276/350/267/257/347/224/261/346/265/201/347/250/213.md +6 -8
  419. 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 +10 -10
  420. 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 +7 -7
  421. 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 +6 -7
  422. 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 +5 -5
  423. 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 +8 -8
  424. 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 +9 -9
  425. 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 +6 -7
  426. 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 +8 -9
  427. 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 +8 -7
  428. 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 +7 -8
  429. 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 +9 -9
  430. 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 +9 -10
  431. package/templates/procedures//350/207/252/344/270/273/351/200/211/345/236/213/346/265/201/347/250/213.md +7 -7
  432. 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 +4 -4
  433. package/templates/procedures//350/257/246/347/273/206/350/256/276/350/256/241/346/265/201/347/250/213.md +8 -7
  434. package/templates/procedures//350/260/203/350/257/225/346/216/222/346/237/245/346/265/201/347/250/213.md +7 -7
  435. package/templates/procedures//350/277/201/347/247/273/346/265/201/346/260/264/347/272/277.md +9 -9
  436. package/templates/procedures//351/203/250/347/275/262/345/217/221/345/270/203/346/265/201/347/250/213.md +6 -7
  437. package/templates/procedures//351/207/215/346/236/204/346/265/201/346/260/264/347/272/277.md +9 -9
  438. package/templates/procedures//351/233/206/346/210/220/351/252/214/350/257/201/346/265/201/347/250/213.md +6 -7
  439. package/templates/procedures//351/234/200/346/261/202/346/276/204/346/270/205/346/265/201/347/250/213.md +5 -6
  440. package/templates/procedures//351/252/214/346/224/266/346/265/213/350/257/225/350/247/204/345/210/222.md +7 -8
  441. 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 +7 -3
  442. package/templates/rules/existing-system//350/200/246/345/220/210/346/243/200/346/265/213/350/247/204/345/210/231.md +7 -3
  443. 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 +7 -3
  444. 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 +7 -3
  445. 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 +7 -3
  446. 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 +7 -3
  447. package/templates/rules/shared/SOLID/344/273/243/347/240/201/345/256/241/346/237/245/350/247/204/345/210/231.md +6 -4
  448. 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 +6 -3
  449. 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 +4 -6
  450. 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 +5 -5
  451. 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 +57 -0
  452. 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 +58 -0
  453. 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 +6 -4
  454. package/templates/rules/shared//345/256/211/345/205/250/345/256/241/346/237/245/350/247/204/345/210/231.md +4 -6
  455. package/templates/rules/shared//345/271/266/345/217/221/345/256/241/346/237/245/350/247/204/345/210/231.md +4 -6
  456. package/templates/rules/shared//346/200/247/350/203/275/345/256/241/346/237/245/350/247/204/345/210/231.md +4 -6
  457. 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 +4 -6
  458. package/templates/rules/shared//346/236/266/346/236/204/345/256/241/346/237/245/350/247/204/345/210/231.md +4 -6
  459. 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 +58 -0
  460. package/templates/rules/shared//350/201/224/350/260/203/351/252/214/350/257/201/346/270/205/345/215/225.md +6 -3
  461. package/templates/rules/shared//350/246/206/347/233/226/347/216/207/346/240/207/345/207/206.md +7 -4
  462. package/templates/rules/shared//350/264/250/351/207/217/345/256/241/346/237/245/350/247/204/345/210/231.md +4 -6
  463. 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 +64 -0
  464. 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 +58 -0
  465. package/templates/scaffolds/react/ErrorBoundary.tsx.hbs +49 -0
  466. package/templates/scaffolds/react/Layout.tsx.hbs +20 -0
  467. package/templates/scaffolds/spring-boot/ControllerTest.java.hbs +36 -0
  468. package/templates/scaffolds/spring-boot/Mapper.xml.hbs +29 -0
  469. package/templates//346/250/241/347/211/210/350/264/241/347/214/256/346/214/207/345/215/227.md +147 -0
@@ -0,0 +1,396 @@
1
+ /**
2
+ * 产物过程规则 — 为每种产物类型定义按操作类型区分的执行规则。
3
+ *
4
+ * 四种操作类型:
5
+ * - extract — 首次提取/生成(从源材料创建产物)
6
+ * - review — 审查/分析(对比源材料与产物,标记偏差)
7
+ * - fix — 修复(修正偏差项,保持正确内容不变)
8
+ * - iterate — 迭代(增量修改,保持结构)
9
+ *
10
+ * 设计决策:
11
+ * - ProcessRules 是"护栏"(按场景选择),不是"契约"(强制)
12
+ * - 与 Schema 解耦:Schema 定义"是什么",ProcessRules 定义"怎么做"
13
+ * - 按 OperationType 选择规则,注入到 prompt 中指导 AI 行为
14
+ */
15
+ // ── 通用规则模板 ──
16
+ /** 通用提取规则 — 适用于大多数产物类型 */
17
+ function genericExtractRules(sourceName) {
18
+ return {
19
+ instructions: [
20
+ `从${sourceName}中提取信息,按 Schema 定义的章节结构组织输出`,
21
+ "每个章节必须有实质性内容,不得留空或使用占位符",
22
+ "表格数据必须与源材料对应,不得编造",
23
+ ],
24
+ constraints: [
25
+ "不得删除 Schema 要求的任何章节",
26
+ "所有数据必须有源材料依据",
27
+ ],
28
+ input_materials: [sourceName],
29
+ };
30
+ }
31
+ /** 通用审查规则 */
32
+ function genericReviewRules(sourceName) {
33
+ return {
34
+ instructions: [
35
+ `逐章节与${sourceName}对比,标记偏差项(❌)和遗漏项(⚠️)`,
36
+ "偏差判定依据:章节缺失、数据不一致、流程不符",
37
+ "输出必须保持 Schema 定义的章节结构,仅标注问题",
38
+ ],
39
+ constraints: [
40
+ "不得删除 Schema 要求的任何章节",
41
+ "审查时不得修改正确内容",
42
+ "每个偏差项必须给出具体位置和原因",
43
+ ],
44
+ input_materials: [sourceName, "当前产物文档"],
45
+ };
46
+ }
47
+ /** 通用修复规则 */
48
+ function genericFixRules(sourceName) {
49
+ return {
50
+ instructions: [
51
+ "仅修改已标注的偏差项,保持已正确内容不变",
52
+ "修复后每个章节必须与源材料内容对应",
53
+ "修复处标记 [已修复] 便于追踪",
54
+ ],
55
+ constraints: [
56
+ "不得删除 Schema 要求的任何章节",
57
+ "不得引入与源材料无关的新内容",
58
+ "已正确的章节不得被修改",
59
+ ],
60
+ input_materials: [sourceName, "偏差项清单", "当前产物文档"],
61
+ };
62
+ }
63
+ /** 通用迭代规则 */
64
+ function genericIterateRules() {
65
+ return {
66
+ instructions: [
67
+ "在现有产物基础上增量修改",
68
+ "保持 Schema 定义的章节结构不变",
69
+ "新增或修改的内容必须标注变更原因",
70
+ ],
71
+ constraints: [
72
+ "不得删除 Schema 要求的任何章节",
73
+ "变更后的内容必须保持一致性",
74
+ ],
75
+ input_materials: ["当前产物文档", "变更需求"],
76
+ };
77
+ }
78
+ // ── 过程规则注册表 ──
79
+ const PROCESS_RULES = new Map();
80
+ /** 注册过程规则(内部函数) */
81
+ function registerRules(kind, extract, review, fix, iterate) {
82
+ PROCESS_RULES.set(kind, { kind, extract, review, fix, iterate });
83
+ }
84
+ // ── P0 产物类型的定制规则 ──
85
+ registerRules("prototype_spec", {
86
+ instructions: [
87
+ "从原型源码包(Figma Make 导出)中提取页面结构、设计令牌、交互逻辑",
88
+ "按 Schema 定义的 10 个章节组织输出",
89
+ "设计令牌(色彩/间距/字体)必须从源码 CSS 变量中提取",
90
+ "组件数据绑定必须映射到源码中的实际字段名",
91
+ "交互流转必须反映源码中的事件处理器逻辑",
92
+ ],
93
+ constraints: [
94
+ "只能从源码包提取,不得凭空编造",
95
+ "每个组件必须有源码文件对应",
96
+ "色彩值必须为实际 hex/hsl 值,不得用'主色'等模糊描述",
97
+ ],
98
+ input_materials: ["原型源码包(Figma Make 导出)"],
99
+ }, {
100
+ instructions: [
101
+ "逐章节与原型源码包对比,标记偏差项(❌)和遗漏项(⚠️)",
102
+ "偏差判定依据:章节缺失、表格数据与源码不一致、交互流程与源码行为不符",
103
+ "输出必须保持 Schema 定义的 10 个章节结构,仅标注问题",
104
+ ],
105
+ constraints: [
106
+ "不得删除 Schema 要求的任何章节",
107
+ "审查时不得修改正确内容",
108
+ "每个偏差项必须指出具体位置和源码参照",
109
+ ],
110
+ input_materials: ["原型源码包", "当前原型说明文档"],
111
+ }, {
112
+ instructions: [
113
+ "仅修改已标注的偏差项,保持已正确内容不变",
114
+ "修复后每个章节必须与源码包内容对应",
115
+ "修复处标记 [已修复] 便于追踪",
116
+ ],
117
+ constraints: [
118
+ "不得删除 Schema 要求的任何章节",
119
+ "不得引入源码包中不存在的内容",
120
+ ],
121
+ input_materials: ["原型源码包", "偏差项清单", "当前原型说明文档"],
122
+ }, {
123
+ instructions: [
124
+ "在现有原型说明基础上增量修改",
125
+ "保持 Schema 定义的 10 个章节结构",
126
+ "新增或修改的内容必须标注变更原因",
127
+ ],
128
+ constraints: [
129
+ "不得删除 Schema 要求的任何章节",
130
+ "变更后的内容必须与最新源码保持一致",
131
+ ],
132
+ input_materials: ["当前原型说明文档", "变更需求"],
133
+ });
134
+ registerRules("design_doc", {
135
+ instructions: [
136
+ "从架构决策记录和需求文档中提取信息,按 Schema 定义的 12 个章节组织",
137
+ "架构决策状态总表必须包含所有已确认决策",
138
+ "技术选型表必须列出候选方案和选择理由",
139
+ "Mermaid 图必须反映实际的模块关系和数据流向",
140
+ ],
141
+ constraints: [
142
+ "所有架构决策必须有决策记录引用",
143
+ "技术选型必须有对比依据",
144
+ "模块划分不得遗漏需求中的功能点",
145
+ ],
146
+ input_materials: ["决策记录", "需求文档", "架构决策研讨闭合确认"],
147
+ }, {
148
+ instructions: [
149
+ "逐章节与决策记录和需求对比,标记偏差项和遗漏项",
150
+ "重点检查:架构决策是否全部落实、技术选型是否与实际一致",
151
+ "Mermaid 图是否与文字描述一致",
152
+ ],
153
+ constraints: [
154
+ "不得删除 Schema 要求的任何章节",
155
+ "每个偏差项必须指出与哪个决策/需求矛盾",
156
+ ],
157
+ input_materials: ["决策记录", "需求文档", "当前架构设计文档"],
158
+ }, genericFixRules("决策记录"), genericIterateRules());
159
+ registerRules("api_spec", {
160
+ instructions: [
161
+ "从后端架构决策和需求文档中提取 API 接口信息",
162
+ "每个 Endpoint 必须包含完整的请求/响应字段表",
163
+ "字段表必须包含 Schema 要求的所有列(类型、必填、格式、映射等)",
164
+ "错误码必须覆盖所有业务异常场景",
165
+ ],
166
+ constraints: [
167
+ "每个 Endpoint 必须有验收场景",
168
+ "字段类型必须与后端实际 DTO 一致",
169
+ "OpenAPI 文件必须同步生成",
170
+ ],
171
+ input_materials: ["后端架构决策", "需求文档", "OpenAPI 规范"],
172
+ }, {
173
+ instructions: [
174
+ "逐 Endpoint 与后端实现对比,标记偏差项",
175
+ "重点检查:字段是否遗漏、类型是否一致、错误码是否完整",
176
+ "页面交互映射是否与前端实际调用一致",
177
+ ],
178
+ constraints: [
179
+ "不得删除 Schema 要求的任何章节",
180
+ "每个偏差项必须指出与哪个接口/字段矛盾",
181
+ ],
182
+ input_materials: ["后端架构决策", "OpenAPI 规范", "当前 API 接口规格文档"],
183
+ }, genericFixRules("后端架构决策"), genericIterateRules());
184
+ registerRules("verification_report", {
185
+ instructions: [
186
+ "收集所有设计产物的 Hash 和验证结果",
187
+ "跨产物追踪矩阵必须覆盖所有引用关系",
188
+ "Implementation Readiness 结论必须基于证据",
189
+ ],
190
+ constraints: [
191
+ "每个产物的 Hash 必须可验证",
192
+ "冲突清单不得遗漏已知冲突",
193
+ ],
194
+ input_materials: ["架构设计文档", "数据库设计文档", "API 接口规格", "OpenAPI", "SQL/migration"],
195
+ }, {
196
+ instructions: [
197
+ "验证设计产物是否与当前代码一致",
198
+ "跨产物追踪矩阵是否完整",
199
+ "残余风险是否已被评估",
200
+ ],
201
+ constraints: [
202
+ "验证结论必须有证据支撑",
203
+ "不得跳过任何产物类型",
204
+ ],
205
+ input_materials: ["所有设计产物", "当前代码实现"],
206
+ }, genericFixRules("设计产物"), genericIterateRules());
207
+ // ── P1 产物类型的规则 ──
208
+ registerRules("detailed_design", genericExtractRules("架构设计文档和需求"), genericReviewRules("架构设计文档"), genericFixRules("架构设计文档"), genericIterateRules());
209
+ registerRules("api_design", {
210
+ instructions: [
211
+ "从第三方服务文档中提取接口信息",
212
+ "数据映射表必须覆盖所有字段转换",
213
+ "容错策略必须包含超时、重试、降级方案",
214
+ ],
215
+ constraints: [
216
+ "接口清单必须完整",
217
+ "错误码映射必须双向覆盖",
218
+ ],
219
+ input_materials: ["第三方服务文档", "后端架构设计"],
220
+ }, genericReviewRules("第三方服务文档"), genericFixRules("第三方服务文档"), genericIterateRules());
221
+ registerRules("requirement_analysis", {
222
+ instructions: [
223
+ "从需求来源中提取功能点,按 Schema 定义的章节组织",
224
+ "功能点清单必须包含验收标准",
225
+ "写操作失败反馈必须覆盖所有用户可触发的失败场景",
226
+ "冲突与越界项必须标注处理方式",
227
+ ],
228
+ constraints: [
229
+ "每个功能点必须有明确的验收标准",
230
+ "未确认项必须标注阻塞程度",
231
+ ],
232
+ input_materials: ["需求来源文档", "原型材料"],
233
+ }, genericReviewRules("需求来源"), genericFixRules("需求来源"), genericIterateRules());
234
+ registerRules("test_plan", genericExtractRules("需求文档和功能点清单"), genericReviewRules("需求文档"), genericFixRules("需求文档"), genericIterateRules());
235
+ registerRules("task_breakdown", {
236
+ instructions: [
237
+ "根据架构设计和需求文档拆分开发切片",
238
+ "每个切片必须可独立验证",
239
+ "执行顺序必须考虑依赖关系",
240
+ ],
241
+ constraints: [
242
+ "切片粒度不宜过大(单切片不超过 3 天工作量)",
243
+ "缓冲安排必须标注",
244
+ ],
245
+ input_materials: ["架构设计文档", "需求文档"],
246
+ }, genericReviewRules("架构设计文档"), genericFixRules("架构设计文档"), genericIterateRules());
247
+ registerRules("task_plan", {
248
+ instructions: [
249
+ "根据切片计划安排执行时间线",
250
+ "标注里程碑和关键路径",
251
+ "预留缓冲时间",
252
+ ],
253
+ constraints: [
254
+ "时间线必须与切片依赖关系一致",
255
+ ],
256
+ input_materials: ["切片计划", "资源信息"],
257
+ }, genericReviewRules("切片计划"), genericFixRules("切片计划"), genericIterateRules());
258
+ registerRules("root_cause", {
259
+ instructions: [
260
+ "按时间线复现问题,记录复现步骤",
261
+ "使用假设-验证法逐步排除",
262
+ "根因分析必须定位到代码级原因",
263
+ "修复方案必须包含预防措施",
264
+ ],
265
+ constraints: [
266
+ "每个假设必须有验证结果",
267
+ "根因不得使用模糊描述(如'系统不稳定')",
268
+ ],
269
+ input_materials: ["报错日志", "相关代码", "复现环境"],
270
+ }, genericReviewRules("报错日志"), genericFixRules("报错日志"), genericIterateRules());
271
+ registerRules("incident_review", {
272
+ instructions: [
273
+ "按时间线记录故障全过程",
274
+ "根因分析必须定位到代码/配置/流程层面",
275
+ "后续改进项必须指定责任人和计划时间",
276
+ ],
277
+ constraints: [
278
+ "时间线不得有空白时段",
279
+ "监控盲区必须标注改进方案",
280
+ ],
281
+ input_materials: ["故障日志", "监控数据", "处理记录"],
282
+ }, genericReviewRules("故障日志"), genericFixRules("故障日志"), genericIterateRules());
283
+ registerRules("review_report", {
284
+ instructions: [
285
+ "按维度(功能、性能、安全、可维护性)逐项审查",
286
+ "发现项必须标注严重程度和具体文件位置",
287
+ "审查清单必须全部校验",
288
+ ],
289
+ constraints: [
290
+ "每个发现项必须有具体建议",
291
+ "严重程度不得降级",
292
+ ],
293
+ input_materials: ["待审查代码", "需求文档", "架构设计文档"],
294
+ }, genericReviewRules("待审查代码"), genericFixRules("待审查代码"), genericIterateRules());
295
+ registerRules("tech_decision_record", {
296
+ instructions: [
297
+ "记录决策背景、候选选项和选择理由",
298
+ "结论必须明确,不得模棱两可",
299
+ "原因必须包含定量依据",
300
+ ],
301
+ constraints: [
302
+ "每个选项必须有优劣分析",
303
+ "结论不得与已有决策矛盾",
304
+ ],
305
+ input_materials: ["技术调研资料", "项目约束"],
306
+ }, genericReviewRules("技术调研资料"), genericFixRules("技术调研资料"), genericIterateRules());
307
+ registerRules("migration_plan", {
308
+ instructions: [
309
+ "评估迁移范围和兼容性影响",
310
+ "迁移阶段必须包含回滚方案",
311
+ "风险评估必须覆盖数据丢失和业务中断",
312
+ ],
313
+ constraints: [
314
+ "每个迁移阶段必须有回滚方案",
315
+ "兼容性分析必须覆盖前后端",
316
+ ],
317
+ input_materials: ["当前系统文档", "目标系统文档"],
318
+ }, genericReviewRules("系统文档"), genericFixRules("系统文档"), genericIterateRules());
319
+ // ── P2 产物类型的规则 ──
320
+ registerRules("acceptance_checklist", genericExtractRules("验收标准"), {
321
+ instructions: [
322
+ "逐项检查验收标准是否满足",
323
+ "每项必须给出通过/不通过结论",
324
+ ],
325
+ constraints: [
326
+ "不得跳过任何验收项",
327
+ ],
328
+ input_materials: ["验收标准", "当前实现"],
329
+ }, genericFixRules("验收标准"), genericIterateRules());
330
+ registerRules("interaction_spec", {
331
+ instructions: [
332
+ "从原型源码包中提取交互逻辑",
333
+ "交互流转必须反映完整的状态机",
334
+ "动效规范必须包含时长和缓动函数",
335
+ ],
336
+ constraints: [
337
+ "交互流转不得遗漏异常分支",
338
+ "响应式断点必须覆盖主流设备",
339
+ ],
340
+ input_materials: ["原型源码包"],
341
+ }, genericReviewRules("原型源码包"), genericFixRules("原型源码包"), genericIterateRules());
342
+ registerRules("domain_model", {
343
+ instructions: [
344
+ "识别核心业务对象及其职责",
345
+ "按 SOLID 原则验证对象划分合理性",
346
+ "接口与依赖方向必须符合 DIP",
347
+ ],
348
+ constraints: [
349
+ "每个对象必须有单一职责",
350
+ "变化点分析必须覆盖已知扩展需求",
351
+ ],
352
+ input_materials: ["需求文档", "架构设计文档"],
353
+ }, genericReviewRules("架构设计文档"), genericFixRules("架构设计文档"), genericIterateRules());
354
+ // ── 查询函数 ──
355
+ /**
356
+ * 获取指定产物类型的过程规则。
357
+ */
358
+ export function getProcessRules(kind) {
359
+ return PROCESS_RULES.get(kind);
360
+ }
361
+ /**
362
+ * 获取指定产物类型在特定操作类型下的规则。
363
+ */
364
+ export function getOperationRules(kind, operationType) {
365
+ const ruleSet = PROCESS_RULES.get(kind);
366
+ if (!ruleSet)
367
+ return undefined;
368
+ return ruleSet[operationType];
369
+ }
370
+ /**
371
+ * 将过程规则格式化为可注入 prompt 的文本。
372
+ */
373
+ export function formatProcessRulesForPrompt(ruleSet, operationType) {
374
+ const rules = ruleSet[operationType];
375
+ if (!rules)
376
+ return "";
377
+ const lines = [];
378
+ lines.push(`## 执行规则(${ruleSet.kind} / ${operationType})`);
379
+ if (rules.instructions.length > 0) {
380
+ lines.push("执行指令:");
381
+ for (const inst of rules.instructions) {
382
+ lines.push(`- ${inst}`);
383
+ }
384
+ }
385
+ if (rules.constraints.length > 0) {
386
+ lines.push("约束:");
387
+ for (const c of rules.constraints) {
388
+ lines.push(`- ${c}`);
389
+ }
390
+ }
391
+ if (rules.input_materials.length > 0) {
392
+ lines.push(`参考材料:${rules.input_materials.join("、")}`);
393
+ }
394
+ return lines.join("\n");
395
+ }
396
+ //# sourceMappingURL=artifact_process_rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact_process_rules.js","sourceRoot":"","sources":["../../../src/engine/contracts/artifact_process_rules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ /**
2
+ * 产物 Schema 注册中心 — 集中管理所有 19 种产物类型的结构定义。
3
+ *
4
+ * 职责:
5
+ * 1. 定义 ArtifactSchema 接口(必填章节、表格、字段、附属产物)
6
+ * 2. 注册所有 19 种 ArtifactKind 的完整 schema
7
+ * 3. 提供按 kind 查询、格式化为 prompt 注入文本的能力
8
+ *
9
+ * 设计决策:
10
+ * - Schema 是结构契约(强制),与模板正文(参考范例)解耦
11
+ * - Section 名称取自模板 ## 标题的关键文本,匹配时容许编号前缀
12
+ * - P0 契约(standard_asset_contract.ts)中不完整的 sections 已从此处补齐
13
+ */
14
+ import type { ArtifactKind } from "./artifact_contract_registry.js";
15
+ /** 产物结构 Schema — 定义输出文档必须满足的结构约束 */
16
+ export interface ArtifactSchema {
17
+ /** 产物类型 */
18
+ kind: ArtifactKind;
19
+ /** 必填章节标题(关键文本,用于 markdown heading 匹配) */
20
+ required_sections: string[];
21
+ /** 必填表格关键词(用于 markdown table 匹配) */
22
+ required_tables: string[];
23
+ /** 表格内必填列名(tableName → columnName[]) */
24
+ required_fields?: Record<string, string[]>;
25
+ /** 必填附属产物(文件路径模式或关键词描述) */
26
+ required_artifacts?: string[];
27
+ /** 禁止出现的空白/占位标记 */
28
+ forbidden_gaps?: string[];
29
+ /** 对应的模板文件名(在 templates/artifacts/shared/ 目录下) */
30
+ template_file?: string;
31
+ }
32
+ /**
33
+ * 获取指定产物类型的 Schema。
34
+ * @returns Schema 或 undefined(未知类型)
35
+ */
36
+ export declare function getArtifactSchema(kind: ArtifactKind): ArtifactSchema | undefined;
37
+ /**
38
+ * 检查指定产物类型是否有已注册的 Schema。
39
+ */
40
+ export declare function hasArtifactSchema(kind: string): boolean;
41
+ /**
42
+ * 获取所有已注册的 Schema(不含 custom 和 knowledge_rule)。
43
+ */
44
+ export declare function getAllArtifactSchemas(): ArtifactSchema[];
45
+ /**
46
+ * 获取所有已注册 Schema 的 kind 列表。
47
+ */
48
+ export declare function getRegisteredSchemaKinds(): ArtifactKind[];
49
+ /**
50
+ * 获取有实质结构约束的 Schema 列表(required_sections 或 required_tables 非空)。
51
+ */
52
+ export declare function getStructuralSchemas(): ArtifactSchema[];
53
+ /**
54
+ * 灵活的章节标题匹配 — 容许编号前缀(如 "1. "、"2.1 ")。
55
+ *
56
+ * 匹配规则:
57
+ * - `## 页面元数据` → 匹配 section "页面元数据"
58
+ * - `## 1. 页面元数据` → 匹配 section "页面元数据"
59
+ * - `### 2.1 色彩` → 匹配 section "色彩"
60
+ */
61
+ export declare function matchSection(content: string, sectionName: string): boolean;
62
+ /**
63
+ * 在内容中查找所有缺失的必填章节。
64
+ * @returns 缺失的章节名称列表
65
+ */
66
+ export declare function findMissingSections(content: string, schema: ArtifactSchema): string[];
67
+ /**
68
+ * 在内容中查找所有缺失的必填表格。
69
+ * @returns 缺失的表格名称列表
70
+ */
71
+ export declare function findMissingTables(content: string, schema: ArtifactSchema): string[];
72
+ /**
73
+ * 将 ArtifactSchema 格式化为可注入 prompt 的结构约束文本。
74
+ *
75
+ * 输出格式:
76
+ * ```
77
+ * ## 产物结构约束:prototype_spec
78
+ * 必填章节:页面元数据、设计令牌、页面布局树...
79
+ * 必填表格:色彩令牌表、间距与圆角表...
80
+ * 表格必填列:
81
+ * 色彩令牌表 → 令牌名、色值、用途
82
+ * ...
83
+ * ```
84
+ */
85
+ export declare function formatSchemaForPrompt(schema: ArtifactSchema): string;
86
+ /** 空洞章节 — 标题存在但正文内容 < threshold 字符 */
87
+ export interface HollowSection {
88
+ /** 章节名(与 schema.required_sections 中的名称一致) */
89
+ section_name: string;
90
+ /** 标题所在行号(1-based) */
91
+ line_number: number;
92
+ /** 章节正文(去除标题行和空行后) */
93
+ body_chars: number;
94
+ }
95
+ /** 占位符发现 */
96
+ export interface PlaceholderFinding {
97
+ /** 占位符文本 */
98
+ placeholder: string;
99
+ /** 所在行号(1-based) */
100
+ line_number: number;
101
+ /** 上下文片段(前 80 字符) */
102
+ context: string;
103
+ }
104
+ /** 空表格发现 */
105
+ export interface EmptyTableFinding {
106
+ /** 表格 header 关键词 */
107
+ table_keyword: string;
108
+ /** 表格起始行号(1-based) */
109
+ line_number: number;
110
+ /** 是否为必填表格 */
111
+ is_required: boolean;
112
+ }
113
+ /**
114
+ * 检测空洞章节 — 标题存在但正文内容不足阈值。
115
+ *
116
+ * 算法:
117
+ * 1. 按行提取所有 ## 级别的标题
118
+ * 2. 对每个标题,取其到下一个同级标题之间的正文
119
+ * 3. 正文预处理:去掉 markdown 格式标记、代码块行、表格行、空行
120
+ * 4. 用 matchSection() 与 schema.required_sections 匹配
121
+ * 5. 匹配成功的章节,正文长度 < threshold → 空洞
122
+ */
123
+ export declare function findHollowSections(content: string, schema: ArtifactSchema, threshold?: number): HollowSection[];
124
+ /**
125
+ * 检测占位符 — 正文中的"待补充"、"TODO"等空洞标记。
126
+ *
127
+ * 维护代码围栏状态机,跳过代码块内行,避免误报。
128
+ * 可追加自定义占位符模式。
129
+ */
130
+ export declare function findPlaceholders(content: string, extraPatterns?: RegExp[]): PlaceholderFinding[];
131
+ /**
132
+ * 检测空表格 — 表格有 header 和 separator 但无数据行。
133
+ *
134
+ * 与 schema.required_tables 做关键词匹配,必填表格空 → is_required=true。
135
+ */
136
+ export declare function findEmptyTables(content: string, schema: ArtifactSchema): EmptyTableFinding[];
137
+ //# sourceMappingURL=artifact_schema_registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifact_schema_registry.d.ts","sourceRoot":"","sources":["../../../src/engine/contracts/artifact_schema_registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAIpE,oCAAoC;AACpC,MAAM,WAAW,cAAc;IAC7B,WAAW;IACX,IAAI,EAAE,YAAY,CAAC;IACnB,0CAA0C;IAC1C,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,oCAAoC;IACpC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3C,2BAA2B;IAC3B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,mBAAmB;IACnB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,kDAAkD;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAqdD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,cAAc,GAAG,SAAS,CAEhF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,cAAc,EAAE,CAGxD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,YAAY,EAAE,CAEzD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,cAAc,EAAE,CAGvD;AAID;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAK1E;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CAIrF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,MAAM,EAAE,CASnF;AAID;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CA8BpE;AAID,sCAAsC;AACtC,MAAM,WAAW,aAAa;IAC5B,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,YAAY;AACZ,MAAM,WAAW,kBAAkB;IACjC,YAAY;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,YAAY;AACZ,MAAM,WAAW,iBAAiB;IAChC,oBAAoB;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,sBAAsB;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc;IACd,WAAW,EAAE,OAAO,CAAC;CACtB;AAYD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,EACtB,SAAS,GAAE,MAAW,GACrB,aAAa,EAAE,CAsEjB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,kBAAkB,EAAE,CAkCtB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,cAAc,GACrB,iBAAiB,EAAE,CA8ErB"}