soloforge 1.1.46 → 1.1.47

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 (342) hide show
  1. package/README.md +12 -0
  2. package/dist/context/adapters/shared/integration_guide.js +3 -1
  3. package/dist/context/adapters/shared/integration_guide.js.map +1 -1
  4. package/dist/core/gate_record_store.d.ts +11 -7
  5. package/dist/core/gate_record_store.d.ts.map +1 -1
  6. package/dist/core/gate_record_store.js +31 -17
  7. package/dist/core/gate_record_store.js.map +1 -1
  8. package/dist/core/observer.d.ts.map +1 -1
  9. package/dist/core/observer.js +7 -4
  10. package/dist/core/observer.js.map +1 -1
  11. package/dist/domain/asset_registry/derived_registry.d.ts.map +1 -1
  12. package/dist/domain/asset_registry/derived_registry.js +20 -5
  13. package/dist/domain/asset_registry/derived_registry.js.map +1 -1
  14. package/dist/domain/asset_registry/derived_types.d.ts +5 -1
  15. package/dist/domain/asset_registry/derived_types.d.ts.map +1 -1
  16. package/dist/domain/build/contract.d.ts.map +1 -1
  17. package/dist/domain/build/contract.js +3 -8
  18. package/dist/domain/build/contract.js.map +1 -1
  19. package/dist/domain/build/engine.d.ts +3 -2
  20. package/dist/domain/build/engine.d.ts.map +1 -1
  21. package/dist/domain/build/engine.js +5 -2
  22. package/dist/domain/build/engine.js.map +1 -1
  23. package/dist/domain/design/contract.d.ts.map +1 -1
  24. package/dist/domain/design/contract.js +2 -31
  25. package/dist/domain/design/contract.js.map +1 -1
  26. package/dist/domain/design/engine.d.ts +3 -2
  27. package/dist/domain/design/engine.d.ts.map +1 -1
  28. package/dist/domain/design/engine.js +5 -2
  29. package/dist/domain/design/engine.js.map +1 -1
  30. package/dist/domain/engine_helpers.d.ts +18 -2
  31. package/dist/domain/engine_helpers.d.ts.map +1 -1
  32. package/dist/domain/engine_helpers.js +87 -8
  33. package/dist/domain/engine_helpers.js.map +1 -1
  34. package/dist/domain/operate/contract.js +1 -1
  35. package/dist/domain/operate/contract.js.map +1 -1
  36. package/dist/domain/operate/engine.d.ts +3 -2
  37. package/dist/domain/operate/engine.d.ts.map +1 -1
  38. package/dist/domain/operate/engine.js +5 -2
  39. package/dist/domain/operate/engine.js.map +1 -1
  40. package/dist/domain/verify/engine.d.ts +3 -2
  41. package/dist/domain/verify/engine.d.ts.map +1 -1
  42. package/dist/domain/verify/engine.js +5 -2
  43. package/dist/domain/verify/engine.js.map +1 -1
  44. package/dist/gate/executors/executors_artifact.d.ts.map +1 -1
  45. package/dist/gate/executors/executors_artifact.js +8 -5
  46. package/dist/gate/executors/executors_artifact.js.map +1 -1
  47. package/dist/gate/executors/executors_prerequisite.d.ts.map +1 -1
  48. package/dist/gate/executors/executors_prerequisite.js +26 -6
  49. package/dist/gate/executors/executors_prerequisite.js.map +1 -1
  50. package/dist/gate/executors/executors_regex_scan.js +2 -2
  51. package/dist/gate/executors/executors_regex_scan.js.map +1 -1
  52. package/dist/gate/executors/executors_trace.d.ts.map +1 -1
  53. package/dist/gate/executors/executors_trace.js +2 -0
  54. package/dist/gate/executors/executors_trace.js.map +1 -1
  55. package/dist/gate/gate_registry_bridge.d.ts +7 -6
  56. package/dist/gate/gate_registry_bridge.d.ts.map +1 -1
  57. package/dist/gate/gate_registry_bridge.js +51 -13
  58. package/dist/gate/gate_registry_bridge.js.map +1 -1
  59. package/dist/server/tools/sf_doctor.d.ts +1 -0
  60. package/dist/server/tools/sf_doctor.d.ts.map +1 -1
  61. package/dist/server/tools/sf_doctor.js +15 -1
  62. package/dist/server/tools/sf_doctor.js.map +1 -1
  63. package/dist/server/tools/sf_gate.d.ts +1 -1
  64. package/dist/server/tools/sf_gate.js +2 -2
  65. package/dist/server/tools/sf_gate.js.map +1 -1
  66. package/dist/server/tools/sf_work.d.ts.map +1 -1
  67. package/dist/server/tools/sf_work.js +18 -6
  68. package/dist/server/tools/sf_work.js.map +1 -1
  69. package/package.json +2 -1
  70. package/templates/build/enforced.md +73 -0
  71. package/templates/build//344/270/223/351/241/271/345/256/236/347/216/260.md +75 -0
  72. package/templates/build//345/256/211/345/205/250/345/212/240/345/233/272.md +75 -0
  73. package/templates/build//346/265/213/350/257/225/344/274/230/345/205/210/347/274/226/347/240/201.md +50 -79
  74. package/templates/build//346/265/213/350/257/225/350/256/241/345/210/222.md +26 -24
  75. package/templates/build//347/274/226/347/240/201/347/272/252/345/276/213.md +75 -0
  76. package/templates/build//350/260/203/350/257/225/346/216/222/346/237/245.md +44 -75
  77. package/templates/build//351/207/215/346/236/204/346/226/271/346/263/225.md +68 -0
  78. package/templates/design/API/346/216/245/345/217/243/350/247/204/346/240/274/346/226/207/346/241/243.md +31 -28
  79. package/templates/design/enforced.md +47 -77
  80. package/templates/design//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 +1 -0
  81. package/templates/design//345/205/274/345/256/271/346/200/247/344/270/216/350/277/201/347/247/273/350/257/204/344/274/260.md +71 -0
  82. package/templates/design//345/206/263/347/255/226/344/270/216/351/200/211/345/236/213.md +70 -0
  83. package/templates/design//345/210/207/347/211/207/350/247/204/345/210/222.md +49 -55
  84. package/templates/design//346/225/260/346/215/256/345/272/223/350/256/276/350/256/241/346/226/207/346/241/243.md +33 -47
  85. package/templates/design//346/236/266/346/236/204/350/256/276/350/256/241.md +41 -83
  86. package/templates/design//351/234/200/346/261/202/345/210/206/346/236/220.md +31 -59
  87. package/templates/operate/enforced.md +11 -0
  88. package/templates/operate//344/270/212/347/272/277/350/247/202/345/257/237.md +53 -32
  89. package/templates/operate//345/217/221/345/270/203/350/257/264/346/230/216.md +3 -0
  90. package/templates/operate//351/203/250/347/275/262/351/205/215/347/275/256.md +83 -0
  91. package/templates/shared/enforced.md +46 -5
  92. package/templates/shared//345/217/215/351/246/210/344/277/256/345/244/215/351/227/255/347/216/257.md +86 -0
  93. package/templates/shared//345/267/245/347/250/213/346/211/247/350/241/214/346/200/273/347/272/262.md +148 -0
  94. package/templates/shared//345/267/245/347/250/213/347/272/252/345/276/213.md +71 -0
  95. package/templates/shared//345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md +48 -43
  96. package/templates/shared//346/234/272/345/210/266/350/257/264/346/230/216.md +67 -0
  97. package/templates/shared//350/257/201/346/215/256/351/251/261/345/212/250/344/270/216/345/217/215/345/271/273/350/247/211.md +27 -17
  98. package/templates/shared//350/264/241/347/214/256/350/247/204/350/214/203.md +78 -0
  99. package/templates/verify/enforced.md +3 -0
  100. package/templates/verify//344/272/244/344/273/230/345/256/214/345/244/207/346/200/247/345/256/241/346/237/245.md +45 -87
  101. package/templates/verify//344/273/243/347/240/201/345/256/241/346/237/245/346/212/245/345/221/212.md +7 -0
  102. package/templates/verify//345/256/241/346/237/245/346/270/205/345/215/225.md +79 -0
  103. package/templates/verify//351/252/214/350/257/201/346/226/271/346/263/225.md +72 -0
  104. package/templates/build/Bug/345/210/206/346/236/220.md +0 -59
  105. package/templates/build/Git/346/223/215/344/275/234.md +0 -48
  106. package/templates/build/OOD/350/256/276/350/256/241/346/221/230/350/246/201.md +0 -46
  107. package/templates/build/React/346/216/245/345/217/243/351/233/206/346/210/220.md +0 -42
  108. package/templates/build/Schema/345/217/230/346/233/264/346/265/201/346/260/264/347/272/277.md +0 -52
  109. package/templates/build/TS/350/264/250/351/207/217/345/256/241/346/237/245.md +0 -78
  110. package/templates/build//344/270/212/346/270/270/344/272/244/345/217/211/351/252/214/350/257/201.md +0 -68
  111. package/templates/build//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245/351/252/214/350/257/201.md +0 -56
  112. package/templates/build//344/273/243/347/240/201/351/227/250/347/246/201.md +0 -58
  113. package/templates/build//345/205/250/346/240/210/346/265/201/347/250/213/344/277/256/345/244/215.md +0 -48
  114. package/templates/build//345/210/207/347/211/207/346/211/247/350/241/214/347/272/252/345/276/213.md +0 -108
  115. package/templates/build//345/210/207/347/211/207/347/253/257/345/210/260/347/253/257/351/252/214/350/257/201.md +0 -221
  116. package/templates/build//345/212/237/350/203/275/345/274/200/345/217/221.md +0 -66
  117. package/templates/build//345/220/216/347/253/257/345/256/236/347/216/260.md +0 -39
  118. package/templates/build//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213.md +0 -33
  119. package/templates/build//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/345/256/241/346/237/245.md +0 -70
  120. package/templates/build//345/220/216/347/253/257/346/216/245/345/217/243/345/256/236/347/216/260.md +0 -43
  121. package/templates/build//345/233/275/351/231/205/345/214/226.md +0 -45
  122. package/templates/build//345/256/211/345/205/250/345/212/240/345/233/272/346/265/201/346/260/264/347/272/277.md +0 -68
  123. package/templates/build//345/256/211/345/205/250/345/256/241/346/237/245.md +0 -154
  124. package/templates/build//345/256/211/345/205/250/345/256/241/350/256/241.md +0 -47
  125. package/templates/build//345/267/245/347/250/213/347/272/252/345/276/213.md +0 -56
  126. package/templates/build//346/200/247/350/203/275/345/210/206/346/236/220.md +0 -59
  127. package/templates/build//346/200/247/350/203/275/346/265/201/346/260/264/347/272/277.md +0 -53
  128. package/templates/build//346/216/245/345/217/243/351/233/206/346/210/220/346/265/201/346/260/264/347/272/277.md +0 -76
  129. package/templates/build//346/225/260/346/215/256/345/272/223/350/277/201/347/247/273.md +0 -63
  130. package/templates/build//346/226/260/350/200/201/351/200/273/350/276/221/346/257/224/345/257/271/346/227/245/345/277/227.md +0 -39
  131. package/templates/build//346/235/203/351/231/220/350/256/244/350/257/201.md +0 -49
  132. package/templates/build//346/265/213/350/257/225/350/264/250/351/207/217.md +0 -45
  133. package/templates/build//347/206/224/346/226/255/351/231/215/347/272/247.md +0 -49
  134. package/templates/build//347/212/266/346/200/201/346/265/201/350/275/254.md +0 -43
  135. package/templates/build//347/213/254/347/253/213/345/256/241/346/237/245.md +0 -45
  136. package/templates/build//347/272/246/346/235/237/345/256/236/347/216/260.md +0 -47
  137. package/templates/build//347/274/226/347/240/201/345/260/261/347/273/252/345/256/241/346/237/245.md +0 -60
  138. package/templates/build//347/274/226/347/240/201/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -22
  139. package/templates/build//347/274/226/347/240/201/350/264/250/351/207/217.md +0 -46
  140. package/templates/build//347/274/226/347/240/201/351/230/266/346/256/265/346/211/247/350/241/214.md +0 -105
  141. package/templates/build//347/274/272/351/231/267/347/256/241/347/220/206.md +0 -47
  142. package/templates/build//350/200/246/345/220/210/346/243/200/346/265/213.md +0 -86
  143. package/templates/build//350/246/206/347/233/226/347/216/207/346/240/207/345/207/206.md +0 -40
  144. package/templates/build//350/264/250/351/207/217/345/256/241/346/237/245.md +0 -111
  145. package/templates/build//350/277/201/347/247/273/346/265/201/346/260/264/347/272/277.md +0 -52
  146. package/templates/build//351/200/232/347/224/250/350/264/250/351/207/217.md +0 -176
  147. package/templates/build//351/207/215/346/236/204/346/226/271/346/241/210.md +0 -61
  148. package/templates/build//351/207/215/346/236/204/346/265/201/346/260/264/347/272/277.md +0 -53
  149. package/templates/build//351/230/262/345/276/241/346/200/247/347/274/226/347/240/201.md +0 -94
  150. package/templates/build//351/233/206/346/210/220/351/252/214/350/257/201.md +0 -67
  151. package/templates/build//351/233/267/345/214/272/345/217/215/346/250/241/345/274/217.md +0 -135
  152. package/templates/build//351/252/214/346/224/266/346/240/207/345/207/206/345/256/241/346/237/245.md +0 -64
  153. package/templates/build//351/252/214/346/224/266/346/265/213/350/257/225/350/247/204/345/210/222.md +0 -75
  154. package/templates/design/API/350/256/276/350/256/241.md +0 -47
  155. package/templates/design/N/345/212/2401/346/237/245/350/257/242.md +0 -48
  156. package/templates/design/OOD/350/256/276/350/256/241.md +0 -72
  157. package/templates/design//344/270/200/350/207/264/346/200/247/346/240/241/351/252/214.md +0 -109
  158. package/templates/design//344/270/215/347/241/256/345/256/232/346/227/266/345/244/264/350/204/221/351/243/216/346/232/264.md +0 -105
  159. package/templates/design//344/273/273/345/212/241/346/213/206/350/247/243.md +0 -61
  160. package/templates/design//344/273/273/345/212/241/350/247/204/345/210/222.md +0 -84
  161. package/templates/design//344/274/232/350/257/235/346/201/242/345/244/215-procedures.md +0 -78
  162. package/templates/design//345/205/274/345/256/271/346/200/247/346/243/200/346/237/245.md +0 -89
  163. package/templates/design//345/210/207/347/211/207/350/256/241/345/210/222.md +0 -149
  164. package/templates/design//345/211/215/347/253/257/346/200/247/350/203/275.md +0 -49
  165. package/templates/design//345/216/206/345/217/262/351/201/227/347/225/231/351/233/267/345/214/272/346/270/205/345/215/225.md +0 -50
  166. package/templates/design//345/216/237/345/236/213/346/272/220/347/240/201/346/217/220/345/217/226.md +0 -78
  167. package/templates/design//345/216/237/345/236/213/350/257/264/346/230/216.md +0 -200
  168. package/templates/design//345/216/237/345/236/213/350/257/264/346/230/216/345/256/241/346/237/245.md +0 -81
  169. package/templates/design//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.md +0 -52
  170. package/templates/design//345/221/275/344/273/244/346/211/247/350/241/214-procedures.md +0 -45
  171. package/templates/design//345/221/275/344/273/244/350/267/257/347/224/261-procedures.md +0 -46
  172. package/templates/design//345/221/275/345/220/215.md +0 -49
  173. package/templates/design//345/242/236/351/207/217/350/276/271/347/225/214/347/225/214/345/256/232/346/226/207/346/241/243.md +0 -48
  174. package/templates/design//345/267/245/345/205/267/350/260/203/347/224/250-procedures.md +0 -41
  175. package/templates/design//345/271/266/345/217/221/346/216/247/345/210/266.md +0 -50
  176. package/templates/design//346/212/200/346/234/257/351/200/211/345/236/213.md +0 -33
  177. package/templates/design//346/216/245/345/217/243/345/257/271/346/216/245/346/226/271/346/241/210.md +0 -97
  178. package/templates/design//346/224/271/351/200/240/345/275/261/345/223/215/350/214/203/345/233/264/350/257/204/344/274/260.md +0 -56
  179. package/templates/design//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264/346/226/271/346/241/210.md +0 -75
  180. package/templates/design//346/225/260/346/215/256/350/241/200/347/274/230/345/233/276.md +0 -49
  181. package/templates/design//346/227/240/351/232/234/347/242/215.md +0 -49
  182. package/templates/design//346/236/266/346/236/204/345/206/263/347/255/226/350/256/260/345/275/225.md +0 -53
  183. package/templates/design//346/236/266/346/236/204/345/256/241/346/237/245.md +0 -256
  184. package/templates/design//346/236/266/346/236/204/350/256/276/350/256/241-constraints.md +0 -177
  185. package/templates/design//346/236/266/346/236/204/350/256/276/350/256/241-procedures.md +0 -130
  186. package/templates/design//346/246/202/345/277/265/351/252/214/350/257/201/346/265/201/346/260/264/347/272/277.md +0 -47
  187. package/templates/design//346/272/220/347/240/201/345/216/237/345/236/213/344/272/244/344/273/230.md +0 -58
  188. package/templates/design//347/216/260/346/234/211/347/263/273/347/273/237/345/267/256/350/267/235/345/210/206/346/236/220.md +0 -114
  189. package/templates/design//347/237/245/350/257/206/347/273/264/346/212/244/346/265/201/346/260/264/347/272/277.md +0 -64
  190. package/templates/design//347/254/254/344/270/200/346/200/247/345/216/237/347/220/206/346/216/250/347/220/206.md +0 -182
  191. package/templates/design//347/264/247/346/200/245/345/233/236/346/273/232/346/211/213/345/206/214.md +0 -77
  192. package/templates/design//347/274/226/347/240/201/345/211/215/346/276/204/346/270/205.md +0 -85
  193. package/templates/design//350/200/201/347/263/273/347/273/237/345/210/207/347/211/207/350/247/204/345/210/222.md +0 -48
  194. package/templates/design//350/207/252/344/270/273/351/200/211/345/236/213.md +0 -57
  195. package/templates/design//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.md +0 -34
  196. package/templates/design//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.md +0 -60
  197. package/templates/design//350/256/276/350/256/241/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -21
  198. package/templates/design//350/257/246/347/273/206/350/256/276/350/256/241-procedures.md +0 -123
  199. package/templates/design//350/257/246/347/273/206/350/256/276/350/256/241.md +0 -109
  200. package/templates/design//350/257/246/347/273/206/350/256/276/350/256/241/345/256/241/346/237/245.md +0 -88
  201. package/templates/design//350/260/203/350/257/225/346/226/271/346/263/225/350/256/272.md +0 -43
  202. package/templates/design//350/277/201/347/247/273/350/257/204/344/274/260.md +0 -67
  203. package/templates/design//351/232/224/347/246/273/351/200/202/351/205/215/345/231/250/346/226/271/346/241/210.md +0 -44
  204. package/templates/design//351/234/200/346/261/202/346/276/204/346/270/205.md +0 -65
  205. package/templates/design//351/234/200/346/261/202/350/264/250/351/207/217/345/256/241/346/237/245.md +0 -88
  206. package/templates/design//351/242/206/345/237/237/351/251/261/345/212/250/350/256/276/350/256/241.md +0 -43
  207. package/templates/operate//345/217/221/345/270/203/350/257/264/346/230/216/345/256/241/346/237/245.md +0 -60
  208. package/templates/operate//350/277/220/347/273/264/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -22
  209. package/templates/operate//351/203/250/347/275/262/351/205/215/347/275/256/345/256/241/346/237/245.md +0 -59
  210. package/templates/shared/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md +0 -55
  211. package/templates/shared/Java/350/264/250/351/207/217/351/227/250/347/246/201.md +0 -54
  212. package/templates/shared/OOD/344/270/216SOLID/350/256/276/350/256/241.md +0 -48
  213. package/templates/shared//344/272/247/347/211/251Schema/346/263/250/345/206/214/344/270/255/345/277/203.md +0 -57
  214. package/templates/shared//344/272/247/347/211/251/345/245/221/347/272/246.md +0 -44
  215. package/templates/shared//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.md +0 -116
  216. package/templates/shared//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 +0 -45
  217. package/templates/shared//344/273/273/345/212/241/347/212/266/346/200/201/346/234/272.md +0 -55
  218. package/templates/shared//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md +0 -55
  219. package/templates/shared//344/274/230/351/233/205/345/201/234/346/234/272.md +0 -43
  220. package/templates/shared//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 +0 -54
  221. package/templates/shared//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md +0 -55
  222. package/templates/shared//345/206/262/347/252/201/351/227/250/347/246/201.md +0 -55
  223. package/templates/shared//345/206/263/347/255/226/347/275/221/345/205/263.md +0 -47
  224. package/templates/shared//345/210/207/347/211/207/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -72
  225. package/templates/shared//345/217/230/345/274/202/345/256/241/350/256/241.md +0 -58
  226. package/templates/shared//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213/345/245/221/347/272/246.md +0 -40
  227. package/templates/shared//345/221/275/344/273/244/346/211/247/350/241/214.md +0 -48
  228. package/templates/shared//345/221/275/344/273/244/350/267/257/347/224/261.md +0 -45
  229. package/templates/shared//345/233/236/345/275/222/347/237/251/351/230/265.md +0 -54
  230. package/templates/shared//345/244/232/347/247/237/346/210/267.md +0 -49
  231. package/templates/shared//345/256/241/350/256/241/346/227/245/345/277/227.md +0 -46
  232. package/templates/shared//345/257/274/345/205/245/345/257/274/345/207/272.md +0 -51
  233. package/templates/shared//345/267/245/344/275/234/345/214/272/344/272/222/346/226/245/351/224/201.md +0 -52
  234. package/templates/shared//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md +0 -54
  235. package/templates/shared//345/267/245/344/275/234/346/265/201/345/245/221/347/272/246.md +0 -42
  236. package/templates/shared//345/267/245/344/275/234/346/265/201/345/274/225/346/223/216.md +0 -50
  237. package/templates/shared//345/267/245/344/275/234/346/265/201/346/250/241/347/211/210/345/214/205.md +0 -34
  238. package/templates/shared//345/267/245/345/205/267/350/260/203/347/224/250.md +0 -48
  239. package/templates/shared//345/271/266/345/217/221/351/224/201.md +0 -57
  240. package/templates/shared//346/211/247/350/241/214/345/256/210/345/215/253/350/257/204/344/274/260.md +0 -47
  241. package/templates/shared//346/211/251/345/261/225/347/224/237/345/221/275/345/221/250/346/234/237.md +0 -34
  242. package/templates/shared//346/212/200/346/234/257/345/206/263/347/255/226/344/270/273/346/235/203.md +0 -50
  243. package/templates/shared//346/212/245/350/241/250/347/273/237/350/256/241.md +0 -50
  244. package/templates/shared//346/224/257/344/273/230.md +0 -51
  245. package/templates/shared//346/225/217/346/204/237/344/277/241/346/201/257/345/244/204/347/220/206.md +0 -77
  246. package/templates/shared//346/225/217/346/204/237/344/277/241/346/201/257/346/211/253/346/217/217.md +0 -53
  247. package/templates/shared//346/225/260/346/215/256/346/235/203/351/231/220.md +0 -47
  248. package/templates/shared//346/226/275/345/267/245/346/214/207/344/273/244/345/245/221/347/272/246.md +0 -69
  249. package/templates/shared//346/227/245/345/277/227/346/262/273/347/220/206.md +0 -31
  250. package/templates/shared//346/234/272/345/210/266/350/207/252/346/262/273/347/220/206.md +0 -31
  251. package/templates/shared//346/240/207/345/207/206/350/265/204/344/272/247/350/246/206/347/233/226.md +0 -50
  252. package/templates/shared//346/240/270/345/277/203/344/275/223/351/252/214/345/216/237/345/210/231.md +0 -38
  253. package/templates/shared//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 +0 -154
  254. package/templates/shared//346/250/241/347/211/210Frontmatter.md +0 -125
  255. package/templates/shared//346/250/241/347/211/210/350/264/241/347/214/256/346/214/207/345/215/227.md +0 -282
  256. package/templates/shared//346/250/241/347/211/210/350/265/204/344/272/247/345/217/257/350/247/201/346/200/247.md +0 -48
  257. package/templates/shared//346/262/273/347/220/206/350/277/220/350/241/214/346/227/266/345/276/252/347/216/257.md +0 -56
  258. package/templates/shared//346/263/250/345/206/214/350/241/250/345/237/272/347/241/200/350/256/276/346/226/275.md +0 -49
  259. package/templates/shared//346/274/224/350/277/233/345/233/236/345/275/222/351/227/250/346/216/247.md +0 -50
  260. package/templates/shared//347/224/250/346/210/267/345/217/215/351/246/210/345/245/221/347/272/246.md +0 -86
  261. package/templates/shared//347/237/245/350/257/206/344/270/273/346/235/203.md +0 -66
  262. package/templates/shared//347/237/245/350/257/206/346/262/273/347/220/206.md +0 -31
  263. package/templates/shared//347/237/245/350/257/206/346/263/250/345/205/245/350/276/271/347/225/214.md +0 -47
  264. package/templates/shared//347/273/206/350/212/202/347/272/252/345/276/213.md +0 -54
  265. package/templates/shared//350/204/221/346/232/264/344/270/216/346/226/271/346/241/210/346/216/242/347/264/242.md +0 -51
  266. package/templates/shared//350/256/241/345/210/222/345/211/215/347/275/256/351/227/250.md +0 -47
  267. package/templates/shared//350/256/276/350/256/241/344/272/247/347/211/251/345/214/205.md +0 -58
  268. package/templates/shared//350/257/255/344/271/211/350/257/201/346/215/256.md +0 -55
  269. package/templates/shared//350/267/250/345/271/263/345/217/260/350/267/257/345/276/204/345/256/211/345/205/250.md +0 -41
  270. package/templates/shared//350/276/223/345/205/245/346/235/220/346/226/231/345/245/221/347/272/246.md +0 -50
  271. package/templates/shared//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md +0 -58
  272. package/templates/shared//351/200/232/347/224/250/345/206/263/347/255/226/347/240/224/350/256/250.md +0 -62
  273. package/templates/shared//351/200/232/347/224/250/346/234/272/346/242/260/346/235/241/346/254/276.md +0 -47
  274. package/templates/shared//351/200/232/347/237/245.md +0 -50
  275. package/templates/shared//351/203/250/347/275/262/351/205/215/347/275/256.md +0 -14
  276. package/templates/shared//351/205/215/347/275/256/344/274/230/345/205/210/347/272/247.md +0 -67
  277. package/templates/shared//351/205/215/347/275/256/350/220/275/347/233/230/350/276/271/347/225/214.md +0 -32
  278. package/templates/shared//351/230/262/345/255/244/345/262/233/345/256/236/347/216/260.md +0 -51
  279. package/templates/shared//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226.md +0 -57
  280. package/templates/shared//351/252/214/346/224/266/346/250/241/347/211/210/350/276/223/345/207/272/345/245/221/347/272/246.md +0 -71
  281. package/templates/shared//351/252/214/350/257/201/345/221/275/344/273/244/347/224/237/346/210/220.md +0 -55
  282. package/templates/shared//351/252/214/350/257/201/345/245/221/347/272/246.md +0 -48
  283. package/templates/verify/Docker/351/203/250/347/275/262.md +0 -46
  284. package/templates/verify/POC/347/273/223/350/256/272.md +0 -53
  285. package/templates/verify/React/345/210/227/350/241/250/350/241/250/346/240/274.md +0 -43
  286. package/templates/verify/React/347/212/266/346/200/201/347/256/241/347/220/206.md +0 -42
  287. package/templates/verify/React/347/273/204/344/273/266.md +0 -42
  288. package/templates/verify/React/350/241/250/345/215/225.md +0 -43
  289. package/templates/verify/React/350/267/257/347/224/261.md +0 -43
  290. package/templates/verify/SOLID/344/273/243/347/240/201/345/256/241/346/237/245.md +0 -74
  291. package/templates/verify/SOLID/350/256/276/350/256/241.md +0 -31
  292. package/templates/verify/Schema/345/205/274/345/256/271.md +0 -42
  293. package/templates/verify/Vue/347/212/266/346/200/201/347/256/241/347/220/206.md +0 -42
  294. package/templates/verify/Vue/347/273/204/344/273/266.md +0 -42
  295. package/templates/verify/Vue/350/267/257/347/224/261.md +0 -43
  296. package/templates/verify//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.md +0 -76
  297. package/templates/verify//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245.md +0 -38
  298. package/templates/verify//344/272/213/344/273/266/351/251/261/345/212/250.md +0 -46
  299. package/templates/verify//344/272/213/345/212/241/346/250/241/345/274/217.md +0 -42
  300. package/templates/verify//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 +0 -92
  301. package/templates/verify//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.md +0 -64
  302. package/templates/verify//344/274/232/350/257/235/346/201/242/345/244/215.md +0 -46
  303. package/templates/verify//345/206/263/347/255/226/345/256/214/346/225/264/346/200/247/345/256/241/346/237/245.md +0 -71
  304. package/templates/verify//345/210/206/351/241/265/346/237/245/350/257/242.md +0 -41
  305. package/templates/verify//345/211/215/347/253/257/351/241/265/351/235/242.md +0 -40
  306. package/templates/verify//345/216/206/345/217/262/346/225/260/346/215/256/346/270/205/346/264/227/350/204/232/346/234/254.md +0 -55
  307. package/templates/verify//345/217/221/345/270/203/345/220/216/345/256/241/346/237/245.md +0 -73
  308. package/templates/verify//345/220/216/347/253/257API.md +0 -39
  309. package/templates/verify//345/242/236/345/210/240/346/224/271/346/237/245.md +0 -45
  310. package/templates/verify//345/244/226/351/203/250/344/276/235/350/265/226.md +0 -43
  311. package/templates/verify//345/245/221/347/272/246/345/205/274/345/256/271.md +0 -42
  312. package/templates/verify//345/256/232/346/227/266/344/273/273/345/212/241.md +0 -39
  313. package/templates/verify//345/256/236/346/227/266/346/216/250/351/200/201.md +0 -48
  314. package/templates/verify//345/256/241/346/237/245/346/221/230/350/246/201.md +0 -58
  315. package/templates/verify//345/267/245/344/275/234/346/265/201.md +0 -38
  316. package/templates/verify//345/271/266/345/217/221/345/256/241/346/237/245.md +0 -132
  317. package/templates/verify//345/274/202/346/255/245/345/257/274/345/207/272.md +0 -41
  318. package/templates/verify//346/200/247/350/203/275/345/256/241/346/237/245.md +0 -110
  319. package/templates/verify//346/216/245/345/217/243/345/245/221/347/272/246.md +0 -44
  320. package/templates/verify//346/216/245/345/217/243/345/245/221/347/272/246/345/256/241/346/237/245.md +0 -131
  321. package/templates/verify//346/220/234/347/264/242/346/250/241/345/274/217.md +0 -47
  322. package/templates/verify//346/225/205/351/232/234/345/244/215/347/233/230.md +0 -67
  323. package/templates/verify//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264.md +0 -37
  324. package/templates/verify//346/225/260/346/215/256/351/232/220/347/247/201.md +0 -46
  325. package/templates/verify//346/226/207/344/273/266/344/270/212/344/274/240.md +0 -45
  326. package/templates/verify//346/227/245/345/277/227.md +0 -45
  327. package/templates/verify//346/234/254/345/234/260/346/265/217/350/247/210/345/231/250/351/252/214/346/224/266.md +0 -94
  328. package/templates/verify//346/240/270/345/277/203/345/267/245/347/250/213/346/211/247/350/241/214.md +0 -65
  329. package/templates/verify//347/237/245/350/257/206/346/263/250/345/205/245.md +0 -38
  330. package/templates/verify//347/264/247/346/200/245/344/277/256/345/244/215/346/265/201/346/260/264/347/272/277.md +0 -76
  331. package/templates/verify//347/274/223/345/255/230/347/255/226/347/225/245.md +0 -45
  332. package/templates/verify//350/201/224/350/260/203/350/256/276/350/256/241/347/274/272/351/231/267/345/210/244/345/256/232.md +0 -67
  333. package/templates/verify//350/201/224/350/260/203/351/252/214/350/257/201.md +0 -87
  334. package/templates/verify//350/256/276/350/256/241/345/256/241/350/256/241.md +0 -184
  335. package/templates/verify//350/257/225/350/277/220/350/241/214/347/206/224/346/226/255.md +0 -74
  336. package/templates/verify//350/276/223/345/205/245/346/240/241/351/252/214.md +0 -44
  337. package/templates/verify//351/203/250/347/275/262/345/217/221/345/270/203.md +0 -101
  338. package/templates/verify//351/224/231/350/257/257/345/244/204/347/220/206.md +0 -46
  339. package/templates/verify//351/224/231/350/257/257/350/276/271/347/225/214.md +0 -38
  340. package/templates/verify//351/232/220/347/247/201/345/256/241/346/237/245.md +0 -37
  341. package/templates/verify//351/252/214/350/257/201.md +0 -38
  342. package/templates/verify//351/252/214/350/257/201/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -22
@@ -1,182 +0,0 @@
1
- ---
2
- id: ka-review-rule-第一性原理推理规则
3
- kind: guidance
4
- title: 第一性原理推理
5
- sync_policy: copy_to_project
6
- status: active
7
- triggers:
8
- - first_principles
9
- - 第一性原理
10
- - fundamental_need
11
- - 根因分析
12
- - 表面修复
13
- extra:
14
- name: 第一性原理推理规则
15
- type: constraint
16
- scope:
17
- - '*'
18
- domain: design
19
- lifecycle_status: active
20
- version: 1.0.0
21
- last_reviewed: '2026-06-04'
22
- verification_layer: L2
23
- stage: design
24
- owner_mechanism: mc-generic-review
25
- ---
26
-
27
- # 第一性原理推理规则
28
-
29
- ## FP-01: fundamental_need 声明
30
- id: FP-01
31
- name: fundamental_need 声明
32
- severity: error
33
- check_type: semantic
34
- evidence_required: 需求分析模版第 1 章 `fundamental_need` 字段存在且非空
35
- evidence_producer: AI Agent 推导 + 用户确认
36
- 首次触发点: 需求分析阶段
37
- rule: 需求描述不得以解决方案开头,必须以用户目标开头。需求分析模版 §1.3 的 fundamental_need 字段必须存在且非空,且不得包含技术方案描述(如"做一个XX页面"),必须描述用户目标(如"用户需要在一次会话中完成XX")。
38
-
39
- ## FP-02: 推理链完整性
40
- id: FP-02
41
- name: 推理链完整性
42
- severity: error
43
- check_type: semantic
44
- evidence_required: 原型说明模版第 1 章有推理依据字段,或架构决策研讨记录含推理链
45
- evidence_producer: AI Agent 逐步填写 + 用户确认
46
- rule: 从 fundamental_need 到最终方案的推理链至少 3 步(目标→约束→可选方案→选定方案),每步必须有明确依据。推理链断裂(跳跃式推导)即标记为 error。
47
-
48
- ## FP-03: 表面修复检测
49
- id: FP-03
50
- name: 表面修复检测
51
- severity: warning
52
- check_type: semantic
53
- evidence_required: 历史修复记录中同类问题出现次数 ≥ 3
54
- detection_source:
55
- 1. 当前会话中同一模块的修复次数
56
- 2. git log 中 fix 提交的同类问题计数
57
- 3. issue tracker 中同一模块的问题计数
58
- rule: 同一模块同类问题 ≥ 3 次 → 提示进行第一性原理推理,识别根因而非继续表面修复。检测到时建议触发 FP-01 重新审视 fundamental_need。
59
-
60
- ## FP-04: 关键词替代语义检测
61
- id: FP-04
62
- name: 关键词替代语义检测
63
- severity: warning
64
- check_type: semantic
65
- evidence_required: 新旧方案关键字段对比,语义对齐确认记录
66
- rule: 新旧方案对比——术语变更后逻辑是否与新术语语义一致。当方案中使用新术语替换旧术语时,须确认替换后的逻辑仍与新术语的语义一致,而非仅替换关键词但保留旧语义。
67
-
68
- ## 5. 高影响任务判定标准
69
-
70
- 以下情况属于高影响任务,须优先执行 FP-01~04 检查:
71
-
72
- 1. **涉及 3 个以上模块的变更**:跨模块变更影响面广,推理链断裂风险高
73
- 2. **涉及外部系统集成的变更**:外部接口的 fundamental_need 可能被忽视
74
- 3. **涉及数据模型变更**:数据模型变更的根因可能是需求理解偏差
75
- 4. **涉及安全/支付/金额相关逻辑**:高风险领域不容表面修复
76
- 5. **涉及状态机/流程引擎的变更**:状态变更的根因分析须从 fundamental_need 出发
77
-
78
- ## 6. 阻断恢复机制
79
-
80
- FP 规则检查失败时,最多重试 3 次:
81
- 1. 第 1 次:提示用户补充信息
82
- 2. 第 2 次:AI 尝试从上下文推断并呈现给用户确认
83
- 3. 第 3 次:列举已知约束请求用户决策
84
- 3 次重试仍失败 → 降级为 warning(非阻断),记录未确认项到产物中
85
- 降级后继续执行当前阶段,但未确认项须在下一阶段门禁前解决
86
-
87
- ## 7. 规则引擎接口
88
-
89
- ```typescript
90
- interface FPRuleResult {
91
- rule_id: "FP-01" | "FP-02" | "FP-03" | "FP-04";
92
- passed: boolean;
93
- severity: "error" | "warning";
94
- message: string;
95
- evidence: string;
96
- retry_count: number;
97
- degraded: boolean;
98
- }
99
-
100
- interface FPCheckContext {
101
- stage: string;
102
- fundamental_need?: string;
103
- reasoning_chain?: string[];
104
- fix_history?: Array<{ module: string; description: string; timestamp: string }>;
105
- old_terms?: Record<string, string>;
106
- new_terms?: Record<string, string>;
107
- }
108
-
109
- function checkFirstPrinciples(ctx: FPCheckContext): FPRuleResult[] {
110
- const results: FPRuleResult[] = [];
111
-
112
- // FP-01: fundamental_need 检查
113
- if (!ctx.fundamental_need || ctx.fundamental_need.trim() === "") {
114
- results.push({
115
- rule_id: "FP-01",
116
- passed: false,
117
- severity: "error",
118
- message: "fundamental_need 未声明或为空",
119
- evidence: "需求分析模版 §1.3",
120
- retry_count: 0,
121
- degraded: false,
122
- });
123
- }
124
-
125
- // FP-02: 推理链完整性
126
- if (!ctx.reasoning_chain || ctx.reasoning_chain.length < 3) {
127
- results.push({
128
- rule_id: "FP-02",
129
- passed: false,
130
- severity: "error",
131
- message: `推理链不足 3 步(当前 ${ctx.reasoning_chain?.length ?? 0} 步)`,
132
- evidence: "推理链步骤",
133
- retry_count: 0,
134
- degraded: false,
135
- });
136
- }
137
-
138
- // FP-03: 表面修复检测
139
- if (ctx.fix_history) {
140
- const moduleCounts: Record<string, number> = {};
141
- for (const fix of ctx.fix_history) {
142
- moduleCounts[fix.module] = (moduleCounts[fix.module] ?? 0) + 1;
143
- }
144
- for (const [module, count] of Object.entries(moduleCounts)) {
145
- if (count >= 3) {
146
- results.push({
147
- rule_id: "FP-03",
148
- passed: false,
149
- severity: "warning",
150
- message: `模块 ${module} 同类修复 ${count} 次,建议进行根因分析`,
151
- evidence: `修复记录: ${count} 次`,
152
- retry_count: 0,
153
- degraded: false,
154
- });
155
- }
156
- }
157
- }
158
-
159
- // FP-04: 关键词替代语义检测
160
- if (ctx.old_terms && ctx.new_terms) {
161
- const mismatched: string[] = [];
162
- for (const [key, oldTerm] of Object.entries(ctx.old_terms)) {
163
- if (ctx.new_terms[key] && ctx.new_terms[key] !== oldTerm) {
164
- mismatched.push(`${oldTerm} → ${ctx.new_terms[key]}`);
165
- }
166
- }
167
- if (mismatched.length > 0) {
168
- results.push({
169
- rule_id: "FP-04",
170
- passed: false,
171
- severity: "warning",
172
- message: `术语替换须确认语义一致: ${mismatched.join(", ")}`,
173
- evidence: `新旧术语对比`,
174
- retry_count: 0,
175
- degraded: false,
176
- });
177
- }
178
- }
179
-
180
- return results;
181
- }
182
- ```
@@ -1,77 +0,0 @@
1
- ---
2
- id: 紧急回滚手册
3
- kind: artifact
4
- title: 紧急回滚手册
5
- sync_policy: copy_to_project
6
- status: active
7
- extra:
8
- name: emergency-rollback-manual
9
- type: artifact
10
- scope:
11
- - '*'
12
- domain: design
13
- lifecycle_status: active
14
- stage: design
15
- owner_mechanism: mc-existing-system-artifact
16
- ---
17
-
18
- # 紧急回滚手册
19
-
20
- ## 1. 回滚触发条件
21
- - 小流量试运行监控指标超过阈值
22
- - 核心功能不可用
23
- - 数据一致性问题
24
-
25
- ## 2. 回滚步骤
26
-
27
- ### 2.1 触发一键开关
28
- | 步骤 | 操作 | 命令/操作描述 | 验证 | Evidence |
29
- |------|------|-------------|------|---------|
30
- | 1 | 读取一键开关配置 | <!-- 命令 --> | 配置已切换 | 截图/日志 |
31
- | 2 | 确认切换目标版本 | <!-- 命令 --> | 版本号正确 | 版本号输出 |
32
- | 3 | 刷新 CDN/缓存(如适用) | <!-- 命令 --> | 缓存已清除 | 缓存命中率 |
33
-
34
- ### 2.2 数据回滚
35
- | 步骤 | 操作 | 命令/操作描述 | 验证 | Evidence |
36
- |------|------|-------------|------|---------|
37
- | 1 | 执行回滚 SQL | <!-- U{version}__xxx.sql --> | 数据已恢复 | 数据行数校验 |
38
- | 2 | 验证数据一致性 | <!-- 校验查询 --> | 一致性通过 | 校验结果 |
39
-
40
- ### 2.3 服务回滚
41
- | 步骤 | 操作 | 命令/操作描述 | 验证 | Evidence |
42
- |------|------|-------------|------|---------|
43
- | 1 | 部署回滚版本 | <!-- 部署命令 --> | 健康检查通过 | 健康检查输出 |
44
- | 2 | 验证老逻辑功能 | <!-- 冒烟测试 --> | 核心功能正常 | 测试结果 |
45
-
46
- ## 2.4 回滚总时限
47
- - 全部回滚操作须在 5 分钟内完成
48
- - 超时时限未完成 → 执行升级步骤
49
-
50
- ## 2.5 升级与通知
51
- | 场景 | 处理方式 |
52
- |------|---------|
53
- | 回滚超时 | 停止所有变更操作,保留现场,人工介入 |
54
- | 数据回滚失败 | 停止回滚,执行数据备份后人工修复 |
55
- | 服务回滚失败 | 回退到更早的已知稳定版本 |
56
-
57
- ## 3. 回滚验证
58
-
59
- - [ ] 老逻辑功能正常 — Evidence: 冒烟测试结果
60
- - [ ] 数据一致性校验通过 — Evidence: 数据校验 SQL 结果
61
- - [ ] 监控指标恢复正常 — Evidence: 监控截图(错误率/P99 延迟)
62
- - [ ] 回滚总耗时 ≤ 5 分钟 — Evidence: 时间戳记录(开始→完成)
63
-
64
- ## 4. 回滚后处理
65
- - 数据清理(临时表/备份表处理策略)
66
- - 日志记录(回滚原因/触发指标/执行步骤/耗时)
67
- - 团队通知(相关团队同步回滚信息)
68
-
69
- ## 5. 回滚审计日志
70
-
71
- | 时间 | 操作 | 执行者 | 结果 | 备注 |
72
- |------|------|--------|------|------|
73
- | | 触发回滚 | AI建议/人工决定 | | |
74
- | | 执行步骤 2.1 | | | |
75
- | | 执行步骤 2.2 | | | |
76
- | | 执行步骤 2.3 | | | |
77
- | | 验证完成 | | | |
@@ -1,85 +0,0 @@
1
- ---
2
- id: ka-procedure-编码前澄清流程
3
- kind: guidance
4
- title: 编码前澄清
5
- sync_policy: copy_to_project
6
- status: active
7
- triggers:
8
- - 编码前澄清
9
- - 需求澄清
10
- - 编码前确认
11
- - 实现前确认
12
- extra:
13
- name: pre-coding-clarification
14
- scope:
15
- - '*'
16
- products:
17
- - '*'
18
- lifecycle_status: active
19
- version: 1.1.0
20
- last_reviewed: '2026-06-01'
21
- type: procedure
22
- domain: design
23
- verification_layer: L2
24
- stage: design
25
- owner_mechanism: mc-core-engineering-principles
26
- ---
27
-
28
- # 编码前澄清流程
29
-
30
- ## 适用场景
31
-
32
- - code_execution / multi_stage_plan / single_artifact 路由
33
- - 写入 scope 涉及业务源码
34
- - 存在外部副作用
35
-
36
- ## 流程
37
-
38
- ### 1. 输入完整性检查
39
-
40
- 执行前必须确认以下输入:
41
- - 用户目标是否明确(非模糊描述)
42
- - 写入 scope 是否确定
43
- - 是否涉及外部副作用(命令执行、网络请求、文件系统写入)
44
- - 是否涉及破坏性操作
45
-
46
- ### 2. 不确定性分级
47
-
48
- 对每个不确定项分级:
49
- - **blocking**: 不问不能继续 → 必须向用户提问
50
- - **material**: 可先推进但需记录假设 → 记录为 AssumptionRecord
51
- - **minor**: 可合理默认 → 在结果中说明
52
- - **non_blocking**: 不打断执行
53
-
54
- ### 3. 澄清问题最小化
55
-
56
- - 只问阻塞项,不把非阻塞细节抛给用户
57
- - 每个问题必须有明确的 blocking 理由
58
- - 不能把 blocking 不确定伪装成 assumption
59
-
60
- ### 4. 假设记录
61
-
62
- - material 级不确定必须记录为 AssumptionRecord
63
- - 记录内容: 假设内容、分级、依据、是否需要人工确认
64
- - blocking 级假设必须标记 needs_manual_confirm=true
65
-
66
- ### 5. 输入完备报告
67
-
68
- 完成澄清后生成 InputCompletenessReport:
69
- - 已明确的输入项
70
- - 已记录的假设
71
- - 剩余不确定项及其分级
72
- - 是否可以开始执行
73
-
74
- ## 硬阻断
75
-
76
- 以下情况必须阻断,不得继续:
77
- - 缺少必要输入
78
- - 写入 scope 不明确
79
- - 外部副作用未获授权
80
- - 存在未解决的 blocking 级不确定
81
-
82
- ### 2.5 Blocking 超时约束
83
- - 用户未响应 >30 分钟 → 降级为 material,记录为 assumption_record
84
- - 同一 blocking 问题第 2 次未响应 → 自动记录假设,needs_manual_confirm=true
85
- - 超时降级不等于放行:假设须在编码完成后由用户确认
@@ -1,48 +0,0 @@
1
- ---
2
- id: 老系统切片规划
3
- kind: guidance
4
- title: 老系统切片规划
5
- triggers:
6
- - 老系统
7
- - 遗留系统
8
- - 切片
9
- - 改造
10
- sync_policy: copy_to_project
11
- status: active
12
- extra:
13
- name: old-system-slice-planning
14
- type: constraint
15
- scope:
16
- - '*'
17
- domain: design
18
- lifecycle_status: active
19
- verification_layer: L2
20
- stage: design
21
- owner_mechanism: mc-existing-system-review
22
- ---
23
-
24
- # 老系统切片规划规则
25
-
26
- ## OLD-PLAN-01:涉及 DB 迁移的切片须有关联清洗脚本
27
- - **严重度**:error
28
- - **检查类型**:deterministic
29
- - **规则**:切片计划 §5 中,涉及数据库迁移的切片(缓冲比例 ≥ 35%)须至少关联一条清洗脚本记录
30
- - **所需证据**:切片计划 §5 中该切片行有非空的「脚本」和「回滚方案」字段
31
-
32
- ## OLD-PLAN-02:排查缓冲表格每项活动有预估时间
33
- - **严重度**:warning
34
- - **检查类型**:deterministic
35
- - **规则**:切片计划 §2 每切片的排查缓冲表格中,所有缓冲活动的「预估时间」字段非空
36
- - **所需证据**:排查缓冲表格中无空白行
37
-
38
- ## OLD-PLAN-03:阶段输入声明所有产物已读取
39
- - **严重度**:error
40
- - **检查类型**:deterministic
41
- - **规则**:切片计划 §1.5 阶段输入声明中,所有行的「检查」字段为 ☑ 已读取
42
- - **所需证据**:阶段输入声明表格无 □ 未勾选项
43
-
44
- ## OLD-PLAN-04:清洗脚本产出时机正确
45
- - **严重度**:error
46
- - **检查类型**:semantic
47
- - **规则**:历史数据清洗脚本须在任务规划阶段产出,不得延迟到联调阶段
48
- - **所需证据**:清洗脚本文件的 git 提交时间在任务规划阶段内
@@ -1,57 +0,0 @@
1
- ---
2
- id: ka-procedure-自主选型流程
3
- kind: guidance
4
- title: 自主选型
5
- sync_policy: copy_to_project
6
- status: active
7
- triggers:
8
- - 技术选型
9
- - 不知道用什么
10
- - 选型
11
- - 方案对比
12
- - 架构选型
13
- - 方案选择
14
- - 技术方案
15
- extra:
16
- name: autonomous-tech-selection
17
- type: procedure
18
- scope:
19
- - backend
20
- - frontend
21
- products:
22
- - '*'
23
- lifecycle_status: active
24
- version: 1.1.0
25
- last_reviewed: '2026-06-01'
26
- domain: design
27
- verification_layer: L2
28
- stage: design
29
- owner_mechanism: mc-decision-sovereignty
30
- ---
31
-
32
- ## 适用场景
33
- 当人类陷入"不知道用什么方案"的迷茫状态,或任务涉及需要技术选型的架构决策点。
34
-
35
- ## 步骤
36
- 1. 触发条件检测: 分类结果中 task_type 为 feature/refactor/optimize 且涉及架构级变更
37
- 2. 检索行业基准: 传入领域关键词(如: 分布式锁、缓存策略、认证鉴权)
38
- 3. 审查行业基准: 确认检索到至少 3 个有据可查的标准方案
39
- 4. 评估四维矩阵: 开发成本/运行性能/扩展上限/维护复杂度,排除总分 < 10/20 的方案
40
- 5. 执行方案证伪: 对每个方案提出"在什么极端场景下它会失效"
41
- 6. 输出方案边界声明: 如实告知推荐方案的天花板,不做糖衣炮弹
42
- 7. A/B 决策诱导: 输出两个精确选项,禁止提问"你想怎么做"
43
- 8. 等待人类决策: 输入"选 A"或"选 B"后进入自动编码模式
44
- 9. 基于选定方案继续 sf_work action=act 流程
45
-
46
- ## 检查点
47
- - [ ] 至少 3 个行业标准方案已检索
48
- - [ ] 四维权重矩阵已完成
49
- - [ ] 证伪报告已生成
50
- - [ ] 方案边界声明已输出
51
- - [ ] A/B 选项已呈现并等待决策
52
-
53
- ## 注意事项
54
- - 禁止凭空捏造方案,所有推荐必须有行业来源(内置基准库/知识库/明确标注启发式)
55
- - 禁止模糊脑暴,每个方案必须给出致命缺点和适用场景
56
- - 禁止回避缺陷,方案边界声明必须包含"天花板"描述
57
- - 决策后立即进入编码流程,不再二次犹豫
@@ -1,34 +0,0 @@
1
- ---
2
- id: ka-artifact_template-design-consistency-report
3
- kind: artifact
4
- title: 设计一致性验收报告
5
- sync_policy: copy_to_project
6
- status: active
7
- extra:
8
- name: design-consistency-report
9
- lifecycle_status: active
10
- scope:
11
- - '*'
12
- products:
13
- - '*'
14
- version: 1.1.0
15
- last_reviewed: '2026-06-01'
16
- type: artifact
17
- domain: design
18
- stage: design
19
- owner_mechanism: mc-design-artifact-pack
20
- ---
21
-
22
- # 设计一致性验收报告
23
-
24
- ## 产物清单与 Hash
25
-
26
- ## 用户确认与决策引用
27
-
28
- ## SQL / OpenAPI / 文档验证结果
29
-
30
- ## 跨产物追踪与冲突处理
31
-
32
- ## Implementation Readiness 结论
33
-
34
- ## 残余风险与返工要求
@@ -1,60 +0,0 @@
1
- ---
2
- id: ka-procedure-design-artifact-pack
3
- kind: guidance
4
- title: 设计产物生成与复验
5
- sync_policy: copy_to_project
6
- status: active
7
- triggers:
8
- - 架构设计文档
9
- - 数据库设计文档
10
- - API接口规格文档
11
- - 设计文档升级
12
- extra:
13
- name: design-artifact-pack-workflow
14
- type: procedure
15
- scope:
16
- - backend
17
- - frontend
18
- - infrastructure
19
- products:
20
- - '*'
21
- lifecycle_status: active
22
- version: 1.2.0
23
- last_reviewed: '2026-06-04'
24
- domain: design
25
- verification_layer: L2
26
- stage: design
27
- owner_mechanism: mc-design-artifact-pack
28
- ---
29
-
30
- # 设计产物生成与复验工作流
31
-
32
- ## 步骤
33
-
34
- 1. **确定产物清单**
35
- 输入:需求分析产出 + 任务上下文阶段信息(domain + task_stage)
36
- 判断哪些子产物需要生成:
37
- - 架构设计文档(必有)
38
- - 数据库变更方案(若有数据库变更)
39
- - 接口对接方案(若有第三方对接)
40
- - 改造影响评估(老系统专属,若有改造范围)
41
- - 隔离适配器方案(老系统专属,若有隔离需求)
42
- 输出:产物生成队列
43
-
44
- 2. **逐产物增量验证**
45
- 对队列中每个产物:
46
- - 生成产物
47
- - 运行对应 Gate 检查项
48
- - 通过 → 锁定产物,进入下一个
49
- - 不通过 → 修复 → 重新检查(最多 3 次)
50
- - 3 次不通过 → HOLD,通知用户决策
51
-
52
- 3. **交叉一致性验证**
53
- 所有产物通过后:
54
- - 数据库变更 ↔ 架构设计文档数据模型一致
55
- - 接口对接方案 ↔ 架构设计文档接口设计一致
56
- - 各子产物的设计决策交叉引用一致(由 cross_validation 校验)
57
-
58
- 4. **用户最终确认**
59
- - 展示产物清单 + Gate 结果 + 交叉验证结果
60
- - 用户确认 → 阶段推进
@@ -1,21 +0,0 @@
1
- ---
2
- id: design-aggregate-checks
3
- kind: guidance
4
- title: 设计聚合检查
5
- triggers:
6
- - 架构决策
7
- - ADR
8
- - 设计
9
- sync_policy: engine_only
10
- status: active
11
- extra:
12
- type: constraint
13
- scope:
14
- - '*'
15
- stage: design
16
- owner_mechanism: mc-stage-gate-engine
17
- ---
18
-
19
- # design 阶段聚合检查
20
-
21
- 收容无单一资产归属的 stage 级 check(如编译/测试/部署证据等)。
@@ -1,123 +0,0 @@
1
- ---
2
- id: ka-procedure-详细设计流程
3
- kind: guidance
4
- title: 详细设计
5
- sync_policy: copy_to_project
6
- status: active
7
- triggers:
8
- - design
9
- - 接口设计
10
- - 数据库设计
11
- - DDL设计
12
- - 类设计
13
- - 详细方案
14
- - detailed design
15
- extra:
16
- name: detailed-design
17
- type: procedure
18
- scope:
19
- - backend
20
- - frontend
21
- products:
22
- - '*'
23
- lifecycle_status: active
24
- version: 1.2.0
25
- last_reviewed: '2026-06-04'
26
- domain: design
27
- verification_layer: L2
28
- stage: design
29
- owner_mechanism: mc-architecture-design
30
- ---
31
-
32
- ## 适用场景
33
- 从架构设计产出实现锚点(数据结构、接口定义、状态机)、DDL 和映射矩阵。适用于编码前的设计阶段。
34
-
35
- 详细设计的正式必需产出不是固定的 `docs/design/03-详细设计文档.md` 单文件。默认产出为:
36
-
37
- - `docs/design/01-数据库设计文档.md`:承载 `DD-T*`、表字段、索引、审计、租户、安全和生命周期。
38
- - `docs/design/02-API接口规格文档.md`:承载 `DD-A*`、端点、字段、错误、副作用和验收场景。
39
- - `docs/api/openapi.yaml`:API 路径、操作和 schema 权威资产。
40
- - SQL/migration 文件:数据库物理结构权威资产。
41
-
42
- `docs/design/03-详细设计文档.md` 仅作为复杂模块或旧项目迁移的可选补充;如果数据库设计和 API 规格已完整承载详细设计,门禁不得强制要求该文件。
43
-
44
- ## 步骤
45
-
46
- ### Step 1: 确认架构设计冻结
47
- - **属性**: 确定性校验(纯函数,不经过 LLM 推理)
48
- - **输入**: 架构设计文档中所有 ARCH-* 编号
49
- - **输出**: 架构冻结确认 + ARCH-* 编号清单
50
- - **Agent 行为**: 校验是否有未决 ARCH-* 项,有则阻断回到架构阶段
51
-
52
- ### Step 2: 产出数据库详细设计
53
- - **属性**: LLM 推理
54
- - **输入**: ARCH-* 编号清单 + 架构设计文档
55
- - **输出**: design/01-数据库设计文档.md + SQL/migration 文件
56
- - **产出 ID**: DD-T*
57
- - **依赖**: Step 1
58
-
59
- 2a. **头脑风暴触发**:若数据模型方案存在多种设计选择且无明确最优,或 AI 自检不确定:
60
- → 进入「不确定时头脑风暴流程」(templates/procedures/不确定时头脑风暴.md)
61
- → 若 fundamental_need 为空 → 先触发 FP-01
62
- - **子流程**: 涉及复杂对象边界时先执行 OOD 工作流,获取摘要后再生成
63
-
64
- ### Step 3: 产出 API 详细设计
65
- - **属性**: LLM 推理
66
- - **输入**: ARCH-* 编号清单 + DD-T* 数据库设计(Step 2 产出)
67
- - **输出**: design/02-API接口规格文档.md + openapi.yaml
68
- - **产出 ID**: DD-A*
69
- - **依赖**: Step 2(API 字段需追溯到 DD-T* 数据库字段)
70
- - **子流程**: 涉及复杂业务逻辑/状态机时先执行 OOD 工作流
71
-
72
- ### Step 4: 编码准备确认
73
- - **属性**: 确定性校验(纯函数)
74
- - **输入**: 所有详细设计产出
75
- - **输出**: 编码准备就绪确认 + DD-* 编号索引
76
- - **依赖**: Step 3
77
-
78
- ## 验证闭环
79
-
80
- 1. **error 级失败**(DD-REV-01~07, CON-DD-01~03):
81
- 回到失败步骤重做,retry_hint 标注具体规则 ID
82
- 例:DD-REV-02(实体覆盖)失败 → 回到 Step 2 补充遗漏表
83
- 2. **warning 级失败**(DD-REV-08~09, CON-DD-04):
84
- 在未决项中标注,允许继续但编码前必须解决
85
- 3. **修正后重验**:最多 3 次,超过请求用户介入
86
-
87
- ## 检查点
88
-
89
- - [ ] [error] DDL 命名/注释/审计字段/主键完备
90
- - [ ] [error] DDL 有兼容窗口和回滚策略
91
- - [ ] [error] 数据库设计声明 DD-T* 并引用 ARCH-*
92
- - [ ] [error] API 规格声明 DD-A* 并引用 ARCH-*
93
- - [ ] [error] OpenAPI 与 API 文档路径和字段一致
94
- - [ ] [error] SQL/migration 权威资产存在
95
- - [ ] [warning] 页面映射/字段变更/菜单权限/状态机可追溯到 UI 交互设计
96
- - [ ] [warning] 新增/修改菜单的角色授权和权限标识已文档化
97
- - [ ] [error] 实现锚点可供任务拆解直接消费
98
-
99
- ## 注意事项
100
- - 禁止先写说明文字再补实现锚点(锚点优先)
101
- - 禁止只写 design/03-详细设计文档.md 而缺少数据库设计、API 规格、OpenAPI 或 SQL/migration
102
- - DDL 必须指定关联策略和审计策略
103
- - 复杂对象边界/变化点时必须先执行 OOD 工作流(Step 2/3 子流程)
104
- - 详细设计文档(design/03-详细设计文档.md)为条件产物,不强制生成
105
-
106
- ## Agent 完整执行工作流(E-03)
107
-
108
- 1. [读取] 加载上游产物(架构设计文档 + ADR + 数据库变更方案 + 接口对接方案)
109
- 老系统额外加载:隔离适配器方案 + 改造影响范围评估
110
- 2. [触发] 调用 sf_work action=act,获取 scope 和 forbidden_tools
111
- 3. [前置校验] Step 1: 确认架构设计冻结(确定性校验)
112
- 4. [OOD 判定] 判断是否需要执行 OOD 工作流(前置门控)
113
- - 需要 → 执行 E-02,获取 OOD 摘要
114
- - 不需要 → 记录不适用理由
115
- 5. [填充 DB] Step 2: 生成数据库详细设计(LLM 推理)
116
- 6. [填充 API] Step 3: 生成 API 详细设计(LLM 推理)
117
- - API 字段追溯到 DD-T* 数据库字段
118
- 7. [准备确认] Step 4: 编码准备确认(确定性校验)
119
- 8. [验证] 运行 Gate 检查(G-01 shared 15 项 + 老系统 G-02 3 项)
120
- - error 失败 → 回到对应步骤重做(验证闭环)
121
- - warning 失败 → 标注未决项
122
- 9. [老系统] 生成一键开关配置 + 紧急回滚手册(若为老系统管线)
123
- 10. [推进] 调用 sf_work action=verify