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,67 +1,72 @@
1
1
  ---
2
- id: ka-pattern-developer_constitution
3
- kind: knowledge
2
+ id: ka-guidance-开发者宪法
3
+ kind: guidance
4
4
  title: 开发者宪法
5
- sync_policy: internal
5
+ sync_policy: copy_to_project
6
6
  status: active
7
+ triggers:
8
+ - 架构
9
+ - 决策
10
+ - 审查
11
+ - 审计
12
+ - 签署
13
+ - 确认
14
+ - 变更
15
+ - 发布
16
+ - 上线
17
+ - 危险操作
18
+ - 删除
19
+ - 重构
20
+ - 迁移
21
+ - 灰度
7
22
  extra:
8
- name: developer_constitution
23
+ name: developer-constitution
9
24
  scope:
10
25
  - '*'
11
26
  products:
12
27
  - '*'
28
+ type: constraint
13
29
  lifecycle_status: active
14
- version: 1.1.0
15
- last_reviewed: '2026-06-01'
16
- type: knowledge
30
+ version: 2.0.0
31
+ last_reviewed: '2026-06-17'
17
32
  verification_layer: L2
18
33
  stage: _global
19
- owner_mechanism: mc-engine-runtime
34
+ owner_mechanism: mc-decision-sovereignty
20
35
  ---
21
36
 
22
- ## 决策规则
37
+ # 开发者宪法
23
38
 
24
- - 我是唯一的架构主权者,AI 的建议不代表最终正确
25
- - 严禁静默交付: 所有 GRAY_BOX BLACK_BOX 级代码审查变更禁止跳过人工确认
26
- - 人工签署格式: [Human-Audit: APPROVED] 或 [Human-Audit: REJECTED]
27
- - 未获得签署的 GRAY/BLACK 变更不得标记为"验证通过"
28
- - 系统随机抽检人类审计真实性: 基于任务摘要生成是/否问题
29
- - 抽检频率: 每 5 次交付至少抽检 1 次
30
- - 抽检问题格式: "任务 {task_id} 的变更中,{摘要细节} 是否为 [是/否]?"
31
- - 人类答错时标记该交付为"待重新审计"
39
+ > 用户是唯一的架构主权者。AI 的建议不代表最终正确。
40
+ > 注意:本宪法原为 knowledge 类(不注入),现改为 guidance 类以保证每次都注入。
32
41
 
33
- ## 逻辑奇点警告触发条件
42
+ ## 决策主权
34
43
 
35
- - LLM Gateway 返回 circuit_open = true
36
- - 单任务 Token 超过阈值,remaining_task_budget <= 0
37
- - 验证 3 次重试仍失败
38
- - 变异审计发现测试"自己证明自己"且覆盖率联动显示 0% 覆盖
39
- - 知识漂移 drift_ratio >= 0.5 且根因分析为 code_degradation
44
+ - 用户是唯一的架构主权者,AI 的建议不代表最终正确
45
+ - 重大技术决策须经用户确认,AI 不得自行拍板架构级选型
46
+ - 跳过决策研讨须用户明确声明,AI 不得自行跳过
47
+ - 每条架构决策须有对应记录,禁止口头决策不留痕
40
48
 
41
- ## 验收项
49
+ ## 禁止静默交付
42
50
 
43
- - [AC-01] GRAY/BLACK 变更展示后等待人类签署
44
- - [AC-02] 未签署的变更无法推进状态记录
45
- - [AC-03] 抽检问题基于实际任务摘要生成
46
- - [AC-04] 逻辑奇点警告以 ⚠ 符号开头并包含具体触发原因
47
- - [AC-05] core/ 目录下的规则修改需人工签署双重确认
51
+ - 所有 GRAY_BOX 和 BLACK_BOX 级代码审查变更禁止跳过人工确认
52
+ - 人工签署格式:`[Human-Audit: APPROVED]` 或 `[Human-Audit: REJECTED]`
53
+ - 未获签署的 GRAY/BLACK 变更不得标记为「验证通过」
48
54
 
49
- ## 何时使用
55
+ ## 抽检机制
50
56
 
51
- advisory: 开发者主权的审查建议不 hard block 交付
57
+ - 系统随机抽检人类审计真实性:基于任务摘要生成是/否问题
58
+ - 抽检频率:每 5 次交付至少抽检 1 次
59
+ - 抽检问题格式:`任务 {task_id} 的变更中,{摘要细节} 是否为 [是/否]?`
60
+ - 人类答错时标记该交付为「待重新审计」
52
61
 
53
- ## 是否 hard block
62
+ ## 敏感操作必须停下确认
54
63
 
55
- 否。此能力为 advisory 状态,违规仅产生 advisory 警告,不阻断流程。
64
+ 涉及以下时必须停下等用户确认,不得自作主张:
65
+ - 金额算法 / 状态流转 / 审批规则 / 跨系统同步
66
+ - 破坏性操作(删数据、改 schema、清表、删文件)
67
+ - 外部副作用(发请求、部署、付款、发通知)
68
+ - 权限变更、密钥操作
56
69
 
57
- ## 证据要求
70
+ ## 与其他规则的关系
58
71
 
59
- - preDeliveryReview 测试通过
60
- - veto 逻辑测试通过
61
- -
62
-
63
- ## 人工确认/降级边界
64
-
65
- - 此能力可被开发者决策覆盖
66
- - 升级到 enforced 需满足 promotion_conditions 并通过 lifecycle_test_files 测试
67
- - 降级/禁用需经 治理运行时 + 人工确认
72
+ 证据冲突时的处理见 [[证据驱动与反幻觉]]。门禁失败的人工介入见 [[反馈修复闭环]]。
@@ -0,0 +1,67 @@
1
+ ---
2
+ id: ka-knowledge-机制说明
3
+ kind: knowledge
4
+ title: 机制说明
5
+ sync_policy: copy_to_project
6
+ status: active
7
+ triggers:
8
+ - 机制
9
+ - 门禁
10
+ - gate
11
+ - artifact
12
+ - guidance
13
+ - 注入
14
+ - sf_work
15
+ - sf_knowledge
16
+ - 工具
17
+ - 阶段
18
+ extra:
19
+ name: mechanism-reference
20
+ scope:
21
+ - '*'
22
+ products:
23
+ - '*'
24
+ type: knowledge
25
+ lifecycle_status: active
26
+ version: 1.0.0
27
+ last_reviewed: '2026-06-17'
28
+ verification_layer: L2
29
+ stage: _global
30
+ owner_mechanism: mc-engine-runtime
31
+ ---
32
+
33
+ # SoloForge 机制说明
34
+
35
+ > 供查阅:SoloForge 怎么把知识/门禁/反馈给到 AI。
36
+ > 运行时核心用法已散在各 guidance([[工程执行总纲]]/[[反馈修复闭环]] 等)。
37
+ > 注意:knowledge 类**不注入运行时 prompt**,只供 sf_knowledge 搜索查阅。
38
+
39
+ ## 四类资产怎么被消费
40
+
41
+ | kind | 怎么被消费 | 触发条件 |
42
+ |------|-----------|---------|
43
+ | artifact | AI 按模板骨架产出对应文档 | 用户选 target(产物 kind)时必注入 |
44
+ | guidance | 按 triggers 关键词匹配,全文注入 prompt | intent 含 triggers 或 target_artifact 匹配 |
45
+ | enforced | 按 check.gate 聚合成门禁,确定性 executor 执行 | 该域 verify 时执行 |
46
+ | knowledge | sf_knowledge 索引搜索 | **不注入运行时 prompt**,仅搜索查阅 |
47
+
48
+ ## 四阶段流转
49
+
50
+ `design`(需求+设计)→ `build`(实现)→ `verify`(测试)→ `operate`(运维)
51
+
52
+ - 跳转受白名单约束(正向 design→build→verify→operate,合法回退 build→design 等)
53
+ - 跨两级非法(如 operate→design 被拒)
54
+ - 同对域来回打转 >3 次 → escalate
55
+
56
+ ## 门禁与反馈闭环
57
+
58
+ - 每域一个 `*-gate`,由该域 enforced.md 的 checks 聚合
59
+ - verify 失败 → 生成 findings + recovery_summary → 注入回 AI → 修后重验 → 重试 5 次 escalate
60
+ - 修复流程详见 [[反馈修复闭环]]
61
+
62
+ ## 当前限制(线 B 待办)
63
+
64
+ 用户自定义资产目前:
65
+ - sf_knowledge add 的知识 → 可被索引搜索 ✓
66
+ - 用户放的 enforced/guidance → **暂不进门禁/注入** ✗(下一步线 B 打通扫描范围)
67
+ - domain contract 的产物清单 → **不可由用户扩展** ✗(TS 硬编码)
@@ -1,10 +1,23 @@
1
1
  ---
2
- id: ka-hard-rule-证据驱动与反幻觉规则
2
+ id: ka-guidance-证据驱动与反幻觉
3
3
  kind: guidance
4
4
  title: 证据驱动与反幻觉
5
- owner_mechanism: mc-evidence-grounding
6
5
  sync_policy: copy_to_project
7
6
  status: active
7
+ triggers:
8
+ - 架构选型
9
+ - 技术决策
10
+ - 代码重构
11
+ - 方案评估
12
+ - 风险评估
13
+ - 事实核查
14
+ - 证据验证
15
+ - 验证
16
+ - 测试
17
+ - 发布
18
+ - 完成
19
+ - 通过
20
+ - 确认
8
21
  extra:
9
22
  name: evidence-driven-anti-hallucination
10
23
  scope:
@@ -13,21 +26,14 @@ extra:
13
26
  - '*'
14
27
  type: constraint
15
28
  lifecycle_status: active
16
- version: 1.1.0
17
- last_reviewed: '2026-06-01'
29
+ version: 2.0.0
30
+ last_reviewed: '2026-06-17'
18
31
  verification_layer: L2
19
32
  stage: _global
20
- triggers:
21
- - 架构选型
22
- - 技术决策
23
- - 代码重构
24
- - 方案评估
25
- - 风险评估
26
- - 事实核查
27
- - 证据验证
33
+ owner_mechanism: mc-evidence-grounding
28
34
  ---
29
35
 
30
- # 证据驱动与反幻觉规则
36
+ # 证据驱动与反幻觉
31
37
 
32
38
  ## 硬规则
33
39
 
@@ -44,10 +50,10 @@ triggers:
44
50
 
45
51
  ## 风险分级
46
52
 
47
- - **critical**: 发布门禁、生产环境、安全相关 → 任何证据缺失必须阻断
48
- - **high**: 架构、编码、迁移、验证 → 事实声明必须有权威证据
49
- - **medium**: 普通功能开发 → 关键声明需要证据
50
- - **low**: 通用问答、低风险操作 → 可标注为通用建议
53
+ - **critical**:发布门禁、生产环境、安全相关 → 任何证据缺失必须阻断
54
+ - **high**:架构、编码、迁移、验证 → 事实声明必须有权威证据
55
+ - **medium**:普通功能开发 → 关键声明需要证据
56
+ - **low**:通用问答、低风险操作 → 可标注为通用建议
51
57
 
52
58
  ## 检查项
53
59
 
@@ -58,3 +64,7 @@ triggers:
58
64
  - [ ] 高风险声明未用 stale/deprecated 证据
59
65
  - [ ] 验证结论基于真实执行结果
60
66
  - [ ] 生成的推理未单独支撑事实
67
+
68
+ ## 与其他规则的关系
69
+
70
+ 验证失败的修复流程见 [[反馈修复闭环]]。技术决策的确认要求见 [[开发者宪法]]。
@@ -0,0 +1,78 @@
1
+ ---
2
+ id: ka-knowledge-贡献规范
3
+ kind: knowledge
4
+ title: 模板贡献规范
5
+ sync_policy: copy_to_project
6
+ status: active
7
+ triggers:
8
+ - 贡献
9
+ - 新增模板
10
+ - frontmatter
11
+ - 新增规则
12
+ - 新增知识
13
+ - 软下限
14
+ - 硬下限
15
+ extra:
16
+ name: contribution-guide
17
+ scope:
18
+ - '*'
19
+ products:
20
+ - '*'
21
+ type: knowledge
22
+ lifecycle_status: active
23
+ version: 1.0.0
24
+ last_reviewed: '2026-06-17'
25
+ verification_layer: L2
26
+ stage: _global
27
+ owner_mechanism: mc-registry-infrastructure
28
+ ---
29
+
30
+ # 模板贡献规范
31
+
32
+ > 给未来维护者(含 AI 维护者):怎么新增/修改 md 资产。
33
+ > SoloForge 由 AI 维护,必须简单、数据驱动、配置扩展。参见 [[机制说明]]。
34
+
35
+ ## frontmatter 必填四件套
36
+
37
+ 每个 md 必须有:
38
+ - `id`(全局唯一)
39
+ - `kind`(artifact / guidance / enforced / knowledge)
40
+ - `sync_policy`(copy_to_project / engine_only / internal)
41
+ - `status`(active / retired)
42
+
43
+ ## 选 kind 的判断
44
+
45
+ | 想达到的效果 | 用什么 kind | 关键要求 |
46
+ |-------------|------------|---------|
47
+ | AI 产出某个文档的骨架 | artifact | 放对应域目录 |
48
+ | 注入 AI prompt 的方法论/纪律 | guidance | **必须有非空 triggers,否则永不注入=僵尸** |
49
+ | 确定性门禁检查 | enforced | **必须有 gate + 非空 checks** |
50
+ | 只供搜索查阅的参考 | knowledge | 注意:**不注入运行时 prompt** |
51
+
52
+ ## 软下限 vs 硬下限
53
+
54
+ - **软下限 = guidance**:注入指导,不阻断。靠 triggers 匹配 intent 注入。
55
+ - **硬下限 = enforced**:门禁检查,阻断。靠 check.gate 聚合到 *-gate 执行。
56
+
57
+ 新增硬下限注意:
58
+ - check 的 `executor` 必须是已注册的(`regex_pattern_scan` / `document_structure` / `semantic`)
59
+ - 未注册 executor → fail-closed 判失败
60
+ - `regex_pattern_scan` 按行扫、不区分注释,容易误报,先想好是否该 warning 级
61
+
62
+ ## 避坑清单
63
+
64
+ - guidance 没 triggers = 僵尸文件
65
+ - enforced 没 gate/checks = 僵尸文件
66
+ - knowledge 写成核心纪律 = 白写(不注入),核心纪律用 guidance
67
+ - 不要造同义字段,新增字段先查 frontmatter 字段字典
68
+ - artifact 改名要同步 domain contract 的 produces 和 CROSS_VALIDATION_ARTIFACT_PATHS 映射
69
+
70
+ ## 用户自定义资产(线B 已落地)
71
+
72
+ 用户在 `.soloforge/knowledge/`(项目级)或 `~/.soloforge/patterns/`(全局级)放 md(frontmatter 同内置格式),SoloForge 自动按 kind 分流:
73
+ - `kind: guidance` → loadGuidance 注入 prompt(软下限,按 triggers 匹配 intent)
74
+ - `kind: enforced` → gate 聚合执行(硬下限,按 `check.gate` 归属到对应 *-gate)
75
+ - `kind: knowledge` → sf_knowledge 索引搜索
76
+ - `kind: artifact` → 用户 artifact md 用 `artifact_contract` 块声明 `domain`/`artifact_kind`/`path_pattern`/`gate`/`required`,自动并入对应域 contract produces(AI 可选 target 产出,observer 列 pending);模板按文件名在 .soloforge/knowledge/ 加载
77
+
78
+ **内置优先**:同 id 用户资产不覆盖内置。规则文件 `rule_source` 用绝对路径定位(executor resolve 兼容用户目录)。
@@ -5,6 +5,8 @@ gate: verify-gate
5
5
  title: verify阶段强制检查清单
6
6
  sync_policy: engine_only
7
7
  status: active
8
+ extra:
9
+ owner_mechanism: mc-stage-gate-engine
8
10
  checks:
9
11
  - id: SOLID-DIP
10
12
  executor: regex_pattern_scan
@@ -343,6 +345,7 @@ checks:
343
345
  rule: "主链路集成检查:所有模块为 integrated 状态,无孤岛模块;部署决策必须经人类审批"
344
346
  severity: error
345
347
  check_type: deterministic
348
+ required_artifact: 代码审查报告模版
346
349
  evidence_required: ["0 implemented_not_integrated + 无孤岛模块","人类审批记录(审批人/时间/决策)"]
347
350
  gate: verify-gate
348
351
  target: "self"
@@ -1,5 +1,5 @@
1
1
  ---
2
- id: ka-review-rule-交付完备性审查规则
2
+ id: ka-guidance-交付完备性审查
3
3
  kind: guidance
4
4
  title: 交付完备性审查
5
5
  sync_policy: copy_to_project
@@ -9,109 +9,67 @@ triggers:
9
9
  - review
10
10
  - 交付检查
11
11
  - 上线前检查
12
- - 提交检查
12
+ - 提测
13
+ - 交付完备
13
14
  - 终局宣言
15
+ - 完成检查
16
+ - 交付
17
+ target_artifact:
18
+ - review_report
14
19
  extra:
15
20
  name: delivery-completeness
16
- type: constraint
17
21
  scope:
18
- - backend
19
- - frontend
22
+ - '*'
20
23
  products:
21
24
  - '*'
25
+ type: constraint
22
26
  lifecycle_status: active
23
- version: 1.2.0
24
- last_reviewed: '2026-06-04'
25
- domain: verify
27
+ version: 2.0.0
28
+ last_reviewed: '2026-06-17'
26
29
  verification_layer: L2
27
30
  stage: verify
31
+ domain: verify
28
32
  owner_mechanism: mc-generic-review
29
33
  ---
30
34
 
31
- ## DEL-01: 交付物缺少终局宣言签名
32
- pattern: /SoloForge Audit: PASS/
33
- severity: error
34
- check_type: deterministic
35
- scope: [backend, frontend]
36
- description: 所有交付物末尾必须包含 [SoloForge Audit: PASS - 已通过三重深度推演,确认无潜在隐患]。缺少此签名的交付视为无效
37
- evidence_required:
38
- - "交付物文件路径"
39
- - "终局宣言签名存在确认"
35
+ # 交付完备性审查:交付前必查清单
36
+
37
+ > 这是"最小交付偏差 + 逼证据"的总裁决。交付前逐项核对,缺一不算交付完成。
38
+ > 注入到代码审查报告(review_report)产出时。
39
+
40
+ ## 一、最小偏差(交付 = 需求)
41
+
42
+ - [ ] 每条需求 REQ 有对应实现,且实现行为符合需求
43
+ - [ ] 交付内容不超出需求范围(无多余功能,[[工程执行总纲]] 精准修改)
44
+ - [ ] 根本目标(fundamental_need)已达成,非只完成表面功能
45
+
46
+ ## 二、证据充分(逼证据)
47
+
48
+ - [ ] 验证基于真实执行(E1+ 运行时证据),非静态分析/AI 摘要([[证据驱动与反幻觉]] 第 5 条)
49
+ - [ ] 验收覆盖正常/异常/边界/权限四类(适用时含并发)
50
+ - [ ] 测试全绿,增量覆盖率达标
51
+ - [ ] 无"未验证项"被假装通过
40
52
 
41
- ## DEL-02: 验收项缺少边界值覆盖
42
- pattern: //
43
- severity: warning
44
- check_type: deterministic
45
- scope: [backend, frontend]
46
- description: 验收项应覆盖空值(null/undefined)、极端值(MAX_VALUE/空字符串)、异常输入场景,而非仅 happy path
47
- evidence_required:
48
- - "验收项列表"
49
- - "边界值覆盖统计"
53
+ ## 三、无半成品(逼质量)
50
54
 
51
- ## DEL-03: 涉及外部调用但无异常处理验收
52
- pattern: /(?:feign|http|restTemplate|webClient|fetch|axios)\s*\(/i
53
- severity: warning
54
- check_type: deterministic
55
- scope: [backend, frontend]
56
- description: 涉及外部 HTTP 调用的代码必须有超时、异常格式、降级场景的验收覆盖
57
- evidence_required:
58
- - "外部调用点列表"
59
- - "异常处理验收覆盖确认"
55
+ - [ ] 无 TODO 占位、空函数体、空 catch(build-gate BLD-G02)
56
+ - [ ] 无未接入主链路的孤岛代码(VRF-G06)
57
+ - [ ] 错误路径都有处理,非只 happy path
60
58
 
61
- ## DEL-04: 涉及状态变更但无事务/幂等验收
62
- pattern: /(?:@Transactional|save\(|insert\(|update\(|delete\()/i
63
- severity: warning
64
- check_type: deterministic
65
- scope: backend
66
- description: 涉及数据库状态变更的代码必须有事务一致性、幂等性验收覆盖
67
- evidence_required:
68
- - "状态变更操作列表"
69
- - "事务/幂等验收确认"
59
+ ## 四、人工审计(逼安全/质量)
70
60
 
71
- ## DEL-05: 测试断言精度不足(疑似自己证明自己)
72
- pattern: /(?:toBeTruthy|toBeFalsy|toBeDefined|toBeUndefined|toBeDefined)\s*\(/
73
- severity: info
74
- check_type: deterministic
75
- scope: [backend, frontend]
76
- description: 大量使用模糊断言(toBeTruthy等)视为测试有效性风险,必须补充精确断言(toBe/toEqual/toThrow)
77
- evidence_required:
78
- - "模糊断言使用统计"
61
+ - [ ] 黑盒信任级发现项已人类签署 `[Human-Audit: APPROVED]`([[开发者宪法]])
62
+ - [ ] 敏感操作(金额/状态/审批/跨系统)经用户确认
63
+ - [ ] 无静默变更(GRAY/BLACK 级变更未跳过确认)
79
64
 
80
- ## SEL-01: 技术选型无行业基准支撑
81
- pattern: //
82
- severity: error
83
- check_type: deterministic
84
- scope: [backend, frontend]
85
- description: 技术选型必须检索至少 3 个行业标准方案(结合通用知识 + sf_knowledge 项目沉淀)。禁止凭空推荐方案
86
- evidence_required:
87
- - "技术选型记录路径"
88
- - "行业基准检索结果路径"
89
- - "对比方案数(须≥3)"
65
+ ## 五、可回滚(逼安全)
90
66
 
91
- ## SEL-02: 推荐方案未说明致命缺点规避策略
92
- pattern: //
93
- severity: warning
94
- check_type: semantic
95
- scope: [backend, frontend]
96
- description: 最优解宣誓必须明确说明如何规避其他方案的致命缺点。无规避说明视为不完整选型
97
- evidence_required:
98
- - "推荐方案致命缺点列表"
99
- - "规避策略说明"
67
+ - [ ] 有回滚方案(DDL/配置/代码变更可回滚)
68
+ - [ ] 数据迁移有回滚脚本且验证过
100
69
 
101
- ## TRA-01: 审查发现未按信任分级路由
102
- pattern: //
103
- severity: info
104
- check_type: semantic
105
- scope: [backend, frontend]
106
- description: sf_work action=verify 结果应按白盒(可跳过)/灰盒(建议审查)/黑盒(强制审查)三级分类展示,禁止平铺所有发现
107
- evidence_required:
108
- - "信任分级统计(白盒/灰盒/黑盒项数)"
70
+ ## 禁止
109
71
 
110
- ## TRA-02: 审查报告缺少认知透明度标注
111
- pattern: //
112
- severity: info
113
- check_type: semantic
114
- scope: [backend, frontend]
115
- description: 审查结果应标注熔断触发状态、变异检测结果、漂移检测结果,确保人类能看到系统内部决策
116
- evidence_required:
117
- - "认知透明度标注内容"
72
+ - 没验证就说"通过"(违规)
73
+ - 隐藏未验证项(违规)
74
+ - 黑盒项跳过人工签署(违规)
75
+ - 无回滚方案就交付(违规)
@@ -13,8 +13,15 @@ extra:
13
13
  lifecycle_status: active
14
14
  stage: verify
15
15
  owner_mechanism: mc-generic-artifact
16
+ products:
17
+ - '*'
18
+ version: 2.0.0
19
+ last_reviewed: '2026-06-17'
16
20
  ---
17
21
 
22
+ > **产物定位**:verify 阶段必出。代码审查的最终裁决——发现项按严重度分级,黑盒项须人类签署。
23
+ > **核心纪律**:审查 Agent 与编码 Agent 须独立([[证据驱动与反幻觉]]);黑盒项未经 `[Human-Audit: APPROVED]` 不得判通过([[开发者宪法]])。
24
+
18
25
  # 代码审查报告
19
26
 
20
27
  ## 1. 审查信息
@@ -0,0 +1,79 @@
1
+ ---
2
+ id: ka-guidance-审查清单
3
+ kind: guidance
4
+ title: 审查清单
5
+ sync_policy: copy_to_project
6
+ status: active
7
+ triggers:
8
+ - 审查
9
+ - review
10
+ - 代码审查
11
+ - 质量
12
+ - 审查清单
13
+ - 检查清单
14
+ - code review
15
+ target_artifact:
16
+ - review_report
17
+ extra:
18
+ name: review-checklist
19
+ scope:
20
+ - '*'
21
+ products:
22
+ - '*'
23
+ type: constraint
24
+ lifecycle_status: active
25
+ version: 1.0.0
26
+ last_reviewed: '2026-06-17'
27
+ verification_layer: L2
28
+ stage: verify
29
+ domain: verify
30
+ owner_mechanism: mc-generic-review
31
+ ---
32
+
33
+ # 审查清单:代码审查查什么
34
+
35
+ > 合并旧的十几个审查碎拆(SOLID/性能/并发/错误处理/数据隐私/可维护性等)。
36
+ > verify-gate 的 SEC/PER/CON/API 是确定性正则门禁;本清单是审查者的维度指引。
37
+ > 注入到代码审查报告(review_report)产出时。
38
+
39
+ ## 审查维度(每类都要过一遍)
40
+
41
+ ### 正确性
42
+ - 逻辑是否实现需求(对照 REQ)
43
+ - 边界条件:空/null/极值/并发/重复提交
44
+ - 错误路径都有处理
45
+
46
+ ### 安全(对应 build-gate SEC-01~12)
47
+ - 输入校验、SQL 注入、XSS、权限、敏感信息、SSRF、反序列化
48
+ - 详见 [[安全加固]]
49
+
50
+ ### 性能(对应 PER-01~09)
51
+ - N+1 查询、SELECT *、全量返回、循环内建对象、大事务、连接池
52
+ - 前端:不必要重渲染、未记忆化、未优化资源
53
+
54
+ ### 并发(对应 CON-01~10)
55
+ - 共享可变状态保护、JVM 锁误用、先查后改原子性、事务自调用、ThreadLocal 清理
56
+
57
+ ### 架构(对应 ARC-*)
58
+ - 分层依赖、循环依赖、单一职责、Controller 不含业务逻辑
59
+
60
+ ### 接口契约(对应 API-01~10)
61
+ - DTO 不暴露 Entity、写操作事务、权限注解、参数校验、RESTful、统一响应、分页、版本号、文档
62
+
63
+ ### 可维护性(AI 盲区,重点人工复核)
64
+ - 命名清晰、单一职责、注释解释 why、无上帝对象
65
+ - 可观测:关键路径有日志,便于排查
66
+
67
+ ### 数据隐私
68
+ - 敏感数据加密/脱敏、日志不泄露、数据生命周期合规
69
+
70
+ ## 信任分级
71
+
72
+ - **白盒**:AI 可确定性判定(正则/类型/编译)→ 自动通过
73
+ - **灰盒**:AI 可判但需复核 → AI 判 + 标注
74
+ - **黑盒**:需业务/设计判断(设计意图/可维护性深层)→ **必须人类签署**([[开发者宪法]])
75
+
76
+ ## 输出
77
+
78
+ 每个发现项:维度 + 严重度(error/warning/info) + 信任分级 + 文件:行号 + 描述 + 建议。
79
+ 黑盒项未签署不得判通过。
@@ -0,0 +1,72 @@
1
+ ---
2
+ id: ka-guidance-验证方法
3
+ kind: guidance
4
+ title: 验证方法
5
+ sync_policy: copy_to_project
6
+ status: active
7
+ triggers:
8
+ - 验证
9
+ - verify
10
+ - 测试
11
+ - 端到端
12
+ - 集成测试
13
+ - 验收
14
+ - 执行验证
15
+ - 怎么验证
16
+ target_artifact:
17
+ - review_report
18
+ extra:
19
+ name: verification-method
20
+ scope:
21
+ - '*'
22
+ products:
23
+ - '*'
24
+ type: procedure
25
+ lifecycle_status: active
26
+ version: 1.0.0
27
+ last_reviewed: '2026-06-17'
28
+ verification_layer: L2
29
+ stage: verify
30
+ domain: verify
31
+ owner_mechanism: mc-verifier
32
+ ---
33
+
34
+ # 验证方法:怎么真实验证(禁止假验证)
35
+
36
+ > [[证据驱动与反幻觉]] 第 5/10 条:验证计划不是验证结果,失败必须修复复验。
37
+ > build-gate VRF-G03 守护:端到端核心流程须全过、证据 ≥ E1。
38
+
39
+ ## 分层验证
40
+
41
+ 1. **单元测试**:单个函数/模块逻辑,mock 外部依赖
42
+ 2. **集成测试**:模块组合,真实依赖(DB/缓存)
43
+ 3. **端到端测试**:完整业务流程,浏览器/API 真实跑通
44
+
45
+ 每层都要跑,不能只跑单元测试就交。
46
+
47
+ ## 证据收集
48
+
49
+ - 测试输出(pass/fail/total)
50
+ - 截图(端到端,证明真实跑过)
51
+ - API 响应日志
52
+ - 数据库状态验证(改完数据真的变了)
53
+
54
+ ## Evidence 级别(承接测试计划)
55
+
56
+ - **E0 不可接受**:无运行时证据(静态分析/AI 摘要/"我觉得对")
57
+ - **E1 最低**:运行时证据(测试输出/响应日志)
58
+ - **E2 推荐**:端到端浏览器验证 + API + DB 状态
59
+
60
+ P0 核心业务流程推荐 E2。
61
+
62
+ ## 禁止假验证
63
+
64
+ - 只跑 happy path(违规,必须覆盖异常/边界)
65
+ - mock 掉被测逻辑(违规,测试自己证明自己)
66
+ - 用"验证计划"冒充"验证结果"(违规)
67
+ - 未执行就说"全部通过"(违规)
68
+ - 失败不修复就说"建议验证"后标记完成(违规)
69
+
70
+ ## 失败处理
71
+
72
+ 验证失败 → 进入 [[反馈修复闭环]]:读 findings → 定位根因 → 修复 → 重验 → 重试 5 次 escalate。