soloforge 1.1.46 → 1.1.48

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 (451) hide show
  1. package/README.md +23 -7
  2. package/dist/cli/adapter_writers.d.ts +5 -0
  3. package/dist/cli/adapter_writers.d.ts.map +1 -1
  4. package/dist/cli/adapter_writers.js +25 -0
  5. package/dist/cli/adapter_writers.js.map +1 -1
  6. package/dist/cli/init.d.ts.map +1 -1
  7. package/dist/cli/init.js +3 -1
  8. package/dist/cli/init.js.map +1 -1
  9. package/dist/cli/scope_check.d.ts +4 -0
  10. package/dist/cli/scope_check.d.ts.map +1 -0
  11. package/dist/cli/scope_check.js +41 -0
  12. package/dist/cli/scope_check.js.map +1 -0
  13. package/dist/context/adapters/claude_code/hooks.d.ts +5 -7
  14. package/dist/context/adapters/claude_code/hooks.d.ts.map +1 -1
  15. package/dist/context/adapters/claude_code/hooks.js +11 -9
  16. package/dist/context/adapters/claude_code/hooks.js.map +1 -1
  17. package/dist/context/adapters/shared/integration_guide.js +18 -6
  18. package/dist/context/adapters/shared/integration_guide.js.map +1 -1
  19. package/dist/context/adapters/shared/workflow_template.js +1 -1
  20. package/dist/context/config/intent_schema.d.ts +793 -6
  21. package/dist/context/config/intent_schema.d.ts.map +1 -1
  22. package/dist/context/config/intent_schema.js +9 -0
  23. package/dist/context/config/intent_schema.js.map +1 -1
  24. package/dist/context/config/resolver.d.ts +9 -0
  25. package/dist/context/config/resolver.d.ts.map +1 -1
  26. package/dist/context/config/resolver.js +5 -0
  27. package/dist/context/config/resolver.js.map +1 -1
  28. package/dist/core/adversarial_review_store.d.ts +133 -0
  29. package/dist/core/adversarial_review_store.d.ts.map +1 -0
  30. package/dist/core/adversarial_review_store.js +161 -0
  31. package/dist/core/adversarial_review_store.js.map +1 -0
  32. package/dist/core/domain_transition.d.ts.map +1 -1
  33. package/dist/core/domain_transition.js +3 -0
  34. package/dist/core/domain_transition.js.map +1 -1
  35. package/dist/core/gate_record_store.d.ts +13 -7
  36. package/dist/core/gate_record_store.d.ts.map +1 -1
  37. package/dist/core/gate_record_store.js +39 -17
  38. package/dist/core/gate_record_store.js.map +1 -1
  39. package/dist/core/git_utils.d.ts +1 -1
  40. package/dist/core/git_utils.js +1 -1
  41. package/dist/core/observer.d.ts.map +1 -1
  42. package/dist/core/observer.js +33 -6
  43. package/dist/core/observer.js.map +1 -1
  44. package/dist/core/task_context/constants.js +1 -1
  45. package/dist/core/task_context/constants.js.map +1 -1
  46. package/dist/core/task_context/manager.d.ts +4 -0
  47. package/dist/core/task_context/manager.d.ts.map +1 -1
  48. package/dist/core/task_context/manager.js +48 -30
  49. package/dist/core/task_context/manager.js.map +1 -1
  50. package/dist/core/task_context/manager_setters.d.ts +2 -0
  51. package/dist/core/task_context/manager_setters.d.ts.map +1 -1
  52. package/dist/core/task_context/manager_setters.js +10 -0
  53. package/dist/core/task_context/manager_setters.js.map +1 -1
  54. package/dist/core/types.d.ts +19 -0
  55. package/dist/core/types.d.ts.map +1 -1
  56. package/dist/domain/asset_registry/derived_registry.d.ts.map +1 -1
  57. package/dist/domain/asset_registry/derived_registry.js +20 -5
  58. package/dist/domain/asset_registry/derived_registry.js.map +1 -1
  59. package/dist/domain/asset_registry/derived_types.d.ts +22 -1
  60. package/dist/domain/asset_registry/derived_types.d.ts.map +1 -1
  61. package/dist/domain/build/contract.d.ts.map +1 -1
  62. package/dist/domain/build/contract.js +3 -8
  63. package/dist/domain/build/contract.js.map +1 -1
  64. package/dist/domain/build/engine.d.ts +4 -2
  65. package/dist/domain/build/engine.d.ts.map +1 -1
  66. package/dist/domain/build/engine.js +38 -5
  67. package/dist/domain/build/engine.js.map +1 -1
  68. package/dist/domain/contracts/design_lifecycle_contract.d.ts.map +1 -1
  69. package/dist/domain/contracts/design_lifecycle_contract.js +11 -4
  70. package/dist/domain/contracts/design_lifecycle_contract.js.map +1 -1
  71. package/dist/domain/design/contract.d.ts.map +1 -1
  72. package/dist/domain/design/contract.js +13 -31
  73. package/dist/domain/design/contract.js.map +1 -1
  74. package/dist/domain/design/engine.d.ts +4 -2
  75. package/dist/domain/design/engine.d.ts.map +1 -1
  76. package/dist/domain/design/engine.js +39 -4
  77. package/dist/domain/design/engine.js.map +1 -1
  78. package/dist/domain/engine_helpers.d.ts +55 -2
  79. package/dist/domain/engine_helpers.d.ts.map +1 -1
  80. package/dist/domain/engine_helpers.js +173 -8
  81. package/dist/domain/engine_helpers.js.map +1 -1
  82. package/dist/domain/operate/contract.js +1 -1
  83. package/dist/domain/operate/contract.js.map +1 -1
  84. package/dist/domain/operate/engine.d.ts +4 -2
  85. package/dist/domain/operate/engine.d.ts.map +1 -1
  86. package/dist/domain/operate/engine.js +23 -3
  87. package/dist/domain/operate/engine.js.map +1 -1
  88. package/dist/domain/types.d.ts +6 -0
  89. package/dist/domain/types.d.ts.map +1 -1
  90. package/dist/domain/types.js.map +1 -1
  91. package/dist/domain/verify/engine.d.ts +4 -2
  92. package/dist/domain/verify/engine.d.ts.map +1 -1
  93. package/dist/domain/verify/engine.js +22 -2
  94. package/dist/domain/verify/engine.js.map +1 -1
  95. package/dist/gate/contracts/tool_actions.d.ts +2 -2
  96. package/dist/gate/contracts/tool_actions.d.ts.map +1 -1
  97. package/dist/gate/contracts/tool_actions.js +2 -2
  98. package/dist/gate/contracts/tool_actions.js.map +1 -1
  99. package/dist/gate/contracts/tool_invocation_contract_registry.js +1 -1
  100. package/dist/gate/contracts/tool_invocation_contract_registry.js.map +1 -1
  101. package/dist/gate/executors/executors_artifact.d.ts +19 -0
  102. package/dist/gate/executors/executors_artifact.d.ts.map +1 -1
  103. package/dist/gate/executors/executors_artifact.js +108 -8
  104. package/dist/gate/executors/executors_artifact.js.map +1 -1
  105. package/dist/gate/executors/executors_build.d.ts.map +1 -1
  106. package/dist/gate/executors/executors_build.js +17 -15
  107. package/dist/gate/executors/executors_build.js.map +1 -1
  108. package/dist/gate/executors/executors_external_command.d.ts.map +1 -1
  109. package/dist/gate/executors/executors_external_command.js +32 -0
  110. package/dist/gate/executors/executors_external_command.js.map +1 -1
  111. package/dist/gate/executors/executors_field_mapping.d.ts +7 -0
  112. package/dist/gate/executors/executors_field_mapping.d.ts.map +1 -0
  113. package/dist/gate/executors/executors_field_mapping.js +179 -0
  114. package/dist/gate/executors/executors_field_mapping.js.map +1 -0
  115. package/dist/gate/executors/executors_prerequisite.d.ts.map +1 -1
  116. package/dist/gate/executors/executors_prerequisite.js +27 -7
  117. package/dist/gate/executors/executors_prerequisite.js.map +1 -1
  118. package/dist/gate/executors/executors_regex_scan.d.ts.map +1 -1
  119. package/dist/gate/executors/executors_regex_scan.js +36 -15
  120. package/dist/gate/executors/executors_regex_scan.js.map +1 -1
  121. package/dist/gate/executors/executors_scope.js +4 -4
  122. package/dist/gate/executors/executors_scope.js.map +1 -1
  123. package/dist/gate/executors/executors_trace.d.ts +5 -0
  124. package/dist/gate/executors/executors_trace.d.ts.map +1 -1
  125. package/dist/gate/executors/executors_trace.js +186 -3
  126. package/dist/gate/executors/executors_trace.js.map +1 -1
  127. package/dist/gate/executors/index.d.ts.map +1 -1
  128. package/dist/gate/executors/index.js +2 -0
  129. package/dist/gate/executors/index.js.map +1 -1
  130. package/dist/gate/gate_engine.d.ts +9 -0
  131. package/dist/gate/gate_engine.d.ts.map +1 -1
  132. package/dist/gate/gate_engine.js +15 -0
  133. package/dist/gate/gate_engine.js.map +1 -1
  134. package/dist/gate/gate_registry_bridge.d.ts +9 -8
  135. package/dist/gate/gate_registry_bridge.d.ts.map +1 -1
  136. package/dist/gate/gate_registry_bridge.js +57 -16
  137. package/dist/gate/gate_registry_bridge.js.map +1 -1
  138. package/dist/gate/middleware_gates.js +1 -1
  139. package/dist/gate/middleware_gates.js.map +1 -1
  140. package/dist/gate/scope_resolver.d.ts +7 -0
  141. package/dist/gate/scope_resolver.d.ts.map +1 -1
  142. package/dist/gate/scope_resolver.js +1 -1
  143. package/dist/gate/scope_resolver.js.map +1 -1
  144. package/dist/index.js +5 -0
  145. package/dist/index.js.map +1 -1
  146. package/dist/server/tools/sf_doctor.d.ts +2 -0
  147. package/dist/server/tools/sf_doctor.d.ts.map +1 -1
  148. package/dist/server/tools/sf_doctor.js +35 -1
  149. package/dist/server/tools/sf_doctor.js.map +1 -1
  150. package/dist/server/tools/sf_gate.d.ts +1 -1
  151. package/dist/server/tools/sf_gate.js +2 -2
  152. package/dist/server/tools/sf_gate.js.map +1 -1
  153. package/dist/server/tools/sf_task.d.ts +83 -0
  154. package/dist/server/tools/sf_task.d.ts.map +1 -1
  155. package/dist/server/tools/sf_task.js +121 -4
  156. package/dist/server/tools/sf_task.js.map +1 -1
  157. package/dist/server/tools/sf_work.d.ts +203 -0
  158. package/dist/server/tools/sf_work.d.ts.map +1 -1
  159. package/dist/server/tools/sf_work.js +549 -46
  160. package/dist/server/tools/sf_work.js.map +1 -1
  161. package/dist/shared/traceability_id_utils.js +3 -3
  162. package/dist/shared/traceability_id_utils.js.map +1 -1
  163. package/dist/verify/contracts/decision_workshop.d.ts.map +1 -1
  164. package/dist/verify/contracts/decision_workshop.js +4 -3
  165. package/dist/verify/contracts/decision_workshop.js.map +1 -1
  166. package/package.json +2 -1
  167. package/templates/build/enforced.md +299 -39
  168. package/templates/build//344/270/223/351/241/271/345/256/236/347/216/260.md +75 -0
  169. package/templates/build//345/256/211/345/205/250/345/212/240/345/233/272.md +75 -0
  170. package/templates/build//346/263/250/351/207/212/347/272/252/345/276/213.md +48 -0
  171. package/templates/build//346/265/213/350/257/225/344/274/230/345/205/210/347/274/226/347/240/201.md +50 -79
  172. package/templates/build//346/265/213/350/257/225/350/256/241/345/210/222.md +31 -24
  173. package/templates/build//347/274/226/347/240/201/347/272/252/345/276/213.md +101 -0
  174. package/templates/build//350/260/203/350/257/225/346/216/222/346/237/245.md +44 -75
  175. package/templates/build//351/207/215/346/236/204/346/226/271/346/263/225.md +68 -0
  176. package/templates/design/API/346/216/245/345/217/243/350/247/204/346/240/274/346/226/207/346/241/243.md +38 -28
  177. package/templates/design/enforced.md +234 -74
  178. 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 +5 -2
  179. 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
  180. package/templates/design//345/206/263/347/255/226/344/270/216/351/200/211/345/236/213.md +70 -0
  181. package/templates/design//345/210/207/347/211/207/350/247/204/345/210/222.md +51 -55
  182. package/templates/design//345/274/200/345/217/221/345/210/207/347/211/207/350/256/241/345/210/222.md +75 -0
  183. 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 +35 -47
  184. package/templates/design//346/236/266/346/236/204/350/256/276/350/256/241.md +63 -81
  185. package/templates/design//350/256/276/350/256/241/345/206/263/347/255/226/347/272/252/345/276/213.md +58 -0
  186. package/templates/design//350/256/276/350/256/241/350/264/250/351/207/217/350/246/201/347/202/271.md +58 -0
  187. package/templates/design//351/234/200/346/261/202/345/210/206/346/236/220.md +49 -53
  188. package/templates/operate/UI/350/247/206/350/247/211/351/252/214/346/224/266/347/272/252/345/276/213.md +74 -0
  189. package/templates/operate/enforced.md +52 -5
  190. package/templates/operate//344/270/212/347/272/277/350/247/202/345/257/237.md +53 -32
  191. package/templates/operate//345/217/221/345/270/203/350/257/264/346/230/216.md +22 -1
  192. package/templates/operate//351/203/250/347/275/262/351/205/215/347/275/256.md +93 -0
  193. package/templates/shared/enforced.md +83 -5
  194. package/templates/shared//345/217/215/351/246/210/344/277/256/345/244/215/351/227/255/347/216/257.md +86 -0
  195. package/templates/shared//345/267/245/344/275/234/346/265/201/345/257/274/350/210/252/345/245/221/347/272/246.md +1 -1
  196. package/templates/shared//345/267/245/347/250/213/346/211/247/350/241/214/346/200/273/347/272/262.md +148 -0
  197. package/templates/shared//345/267/245/347/250/213/347/272/252/345/276/213.md +71 -0
  198. package/templates/shared//345/274/200/345/217/221/350/200/205/345/256/252/346/263/225.md +48 -43
  199. package/templates/shared//346/234/272/345/210/266/350/257/264/346/230/216.md +67 -0
  200. package/templates/shared//347/240/224/350/256/250/350/256/260/345/275/225.md +54 -0
  201. 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
  202. package/templates/shared//350/264/241/347/214/256/350/247/204/350/214/203.md +78 -0
  203. package/templates/verify/enforced.md +87 -263
  204. 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 +46 -87
  205. package/templates/verify//344/273/243/347/240/201/345/256/241/346/237/245/346/212/245/345/221/212.md +17 -0
  206. package/templates/verify//345/256/241/346/237/245/346/270/205/345/215/225.md +79 -0
  207. package/templates/verify//346/236/266/346/236/204/350/257/255/344/271/211/347/272/242/347/272/277.md +60 -0
  208. package/templates/verify//351/252/214/350/257/201/346/226/271/346/263/225.md +72 -0
  209. package/dist/core/scope_checker.d.ts +0 -29
  210. package/dist/core/scope_checker.d.ts.map +0 -1
  211. package/dist/core/scope_checker.js +0 -53
  212. package/dist/core/scope_checker.js.map +0 -1
  213. package/templates/build/Bug/345/210/206/346/236/220.md +0 -59
  214. package/templates/build/Git/346/223/215/344/275/234.md +0 -48
  215. package/templates/build/OOD/350/256/276/350/256/241/346/221/230/350/246/201.md +0 -46
  216. package/templates/build/React/346/216/245/345/217/243/351/233/206/346/210/220.md +0 -42
  217. package/templates/build/Schema/345/217/230/346/233/264/346/265/201/346/260/264/347/272/277.md +0 -52
  218. package/templates/build/TS/350/264/250/351/207/217/345/256/241/346/237/245.md +0 -78
  219. package/templates/build//344/270/212/346/270/270/344/272/244/345/217/211/351/252/214/350/257/201.md +0 -68
  220. 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
  221. package/templates/build//344/273/243/347/240/201/351/227/250/347/246/201.md +0 -58
  222. package/templates/build//345/205/250/346/240/210/346/265/201/347/250/213/344/277/256/345/244/215.md +0 -48
  223. package/templates/build//345/210/207/347/211/207/346/211/247/350/241/214/347/272/252/345/276/213.md +0 -108
  224. 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
  225. package/templates/build//345/212/237/350/203/275/345/274/200/345/217/221.md +0 -66
  226. package/templates/build//345/220/216/347/253/257/345/256/236/347/216/260.md +0 -39
  227. package/templates/build//345/220/216/347/253/257/345/256/236/347/216/260/345/267/245/347/250/213.md +0 -33
  228. 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
  229. package/templates/build//345/220/216/347/253/257/346/216/245/345/217/243/345/256/236/347/216/260.md +0 -43
  230. package/templates/build//345/233/275/351/231/205/345/214/226.md +0 -45
  231. 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
  232. package/templates/build//345/256/211/345/205/250/345/256/241/346/237/245.md +0 -154
  233. package/templates/build//345/256/211/345/205/250/345/256/241/350/256/241.md +0 -47
  234. package/templates/build//345/267/245/347/250/213/347/272/252/345/276/213.md +0 -56
  235. package/templates/build//346/200/247/350/203/275/345/210/206/346/236/220.md +0 -59
  236. package/templates/build//346/200/247/350/203/275/346/265/201/346/260/264/347/272/277.md +0 -53
  237. 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
  238. package/templates/build//346/225/260/346/215/256/345/272/223/350/277/201/347/247/273.md +0 -63
  239. 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
  240. package/templates/build//346/235/203/351/231/220/350/256/244/350/257/201.md +0 -49
  241. package/templates/build//346/265/213/350/257/225/350/264/250/351/207/217.md +0 -45
  242. package/templates/build//347/206/224/346/226/255/351/231/215/347/272/247.md +0 -49
  243. package/templates/build//347/212/266/346/200/201/346/265/201/350/275/254.md +0 -43
  244. package/templates/build//347/213/254/347/253/213/345/256/241/346/237/245.md +0 -45
  245. package/templates/build//347/272/246/346/235/237/345/256/236/347/216/260.md +0 -47
  246. package/templates/build//347/274/226/347/240/201/345/260/261/347/273/252/345/256/241/346/237/245.md +0 -60
  247. package/templates/build//347/274/226/347/240/201/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -22
  248. package/templates/build//347/274/226/347/240/201/350/264/250/351/207/217.md +0 -46
  249. package/templates/build//347/274/226/347/240/201/351/230/266/346/256/265/346/211/247/350/241/214.md +0 -105
  250. package/templates/build//347/274/272/351/231/267/347/256/241/347/220/206.md +0 -47
  251. package/templates/build//350/200/246/345/220/210/346/243/200/346/265/213.md +0 -86
  252. package/templates/build//350/246/206/347/233/226/347/216/207/346/240/207/345/207/206.md +0 -40
  253. package/templates/build//350/264/250/351/207/217/345/256/241/346/237/245.md +0 -111
  254. package/templates/build//350/277/201/347/247/273/346/265/201/346/260/264/347/272/277.md +0 -52
  255. package/templates/build//351/200/232/347/224/250/350/264/250/351/207/217.md +0 -176
  256. package/templates/build//351/207/215/346/236/204/346/226/271/346/241/210.md +0 -61
  257. package/templates/build//351/207/215/346/236/204/346/265/201/346/260/264/347/272/277.md +0 -53
  258. package/templates/build//351/230/262/345/276/241/346/200/247/347/274/226/347/240/201.md +0 -94
  259. package/templates/build//351/233/206/346/210/220/351/252/214/350/257/201.md +0 -67
  260. package/templates/build//351/233/267/345/214/272/345/217/215/346/250/241/345/274/217.md +0 -135
  261. package/templates/build//351/252/214/346/224/266/346/240/207/345/207/206/345/256/241/346/237/245.md +0 -64
  262. package/templates/build//351/252/214/346/224/266/346/265/213/350/257/225/350/247/204/345/210/222.md +0 -75
  263. package/templates/design/API/350/256/276/350/256/241.md +0 -47
  264. package/templates/design/N/345/212/2401/346/237/245/350/257/242.md +0 -48
  265. package/templates/design/OOD/350/256/276/350/256/241.md +0 -72
  266. package/templates/design//344/270/200/350/207/264/346/200/247/346/240/241/351/252/214.md +0 -109
  267. 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
  268. package/templates/design//344/273/273/345/212/241/346/213/206/350/247/243.md +0 -61
  269. package/templates/design//344/273/273/345/212/241/350/247/204/345/210/222.md +0 -84
  270. package/templates/design//344/274/232/350/257/235/346/201/242/345/244/215-procedures.md +0 -78
  271. package/templates/design//345/205/274/345/256/271/346/200/247/346/243/200/346/237/245.md +0 -89
  272. package/templates/design//345/210/207/347/211/207/350/256/241/345/210/222.md +0 -149
  273. package/templates/design//345/211/215/347/253/257/346/200/247/350/203/275.md +0 -49
  274. 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
  275. package/templates/design//345/216/237/345/236/213/346/272/220/347/240/201/346/217/220/345/217/226.md +0 -78
  276. package/templates/design//345/216/237/345/236/213/350/257/264/346/230/216.md +0 -200
  277. package/templates/design//345/216/237/345/236/213/350/257/264/346/230/216/345/256/241/346/237/245.md +0 -81
  278. 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
  279. package/templates/design//345/221/275/344/273/244/346/211/247/350/241/214-procedures.md +0 -45
  280. package/templates/design//345/221/275/344/273/244/350/267/257/347/224/261-procedures.md +0 -46
  281. package/templates/design//345/221/275/345/220/215.md +0 -49
  282. 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
  283. package/templates/design//345/267/245/345/205/267/350/260/203/347/224/250-procedures.md +0 -41
  284. package/templates/design//345/271/266/345/217/221/346/216/247/345/210/266.md +0 -50
  285. package/templates/design//346/212/200/346/234/257/351/200/211/345/236/213.md +0 -33
  286. package/templates/design//346/216/245/345/217/243/345/257/271/346/216/245/346/226/271/346/241/210.md +0 -97
  287. 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
  288. 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
  289. package/templates/design//346/225/260/346/215/256/350/241/200/347/274/230/345/233/276.md +0 -49
  290. package/templates/design//346/227/240/351/232/234/347/242/215.md +0 -49
  291. package/templates/design//346/236/266/346/236/204/345/206/263/347/255/226/350/256/260/345/275/225.md +0 -53
  292. package/templates/design//346/236/266/346/236/204/345/256/241/346/237/245.md +0 -256
  293. package/templates/design//346/236/266/346/236/204/350/256/276/350/256/241-constraints.md +0 -177
  294. package/templates/design//346/236/266/346/236/204/350/256/276/350/256/241-procedures.md +0 -130
  295. 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
  296. package/templates/design//346/272/220/347/240/201/345/216/237/345/236/213/344/272/244/344/273/230.md +0 -58
  297. 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
  298. 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
  299. 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
  300. package/templates/design//347/264/247/346/200/245/345/233/236/346/273/232/346/211/213/345/206/214.md +0 -77
  301. package/templates/design//347/274/226/347/240/201/345/211/215/346/276/204/346/270/205.md +0 -85
  302. 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
  303. package/templates/design//350/207/252/344/270/273/351/200/211/345/236/213.md +0 -57
  304. 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
  305. 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
  306. package/templates/design//350/256/276/350/256/241/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -21
  307. package/templates/design//350/257/246/347/273/206/350/256/276/350/256/241-procedures.md +0 -123
  308. package/templates/design//350/257/246/347/273/206/350/256/276/350/256/241.md +0 -109
  309. package/templates/design//350/257/246/347/273/206/350/256/276/350/256/241/345/256/241/346/237/245.md +0 -88
  310. package/templates/design//350/260/203/350/257/225/346/226/271/346/263/225/350/256/272.md +0 -43
  311. package/templates/design//350/277/201/347/247/273/350/257/204/344/274/260.md +0 -67
  312. 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
  313. package/templates/design//351/234/200/346/261/202/346/276/204/346/270/205.md +0 -65
  314. package/templates/design//351/234/200/346/261/202/350/264/250/351/207/217/345/256/241/346/237/245.md +0 -88
  315. package/templates/design//351/242/206/345/237/237/351/251/261/345/212/250/350/256/276/350/256/241.md +0 -43
  316. package/templates/operate//345/217/221/345/270/203/350/257/264/346/230/216/345/256/241/346/237/245.md +0 -60
  317. package/templates/operate//350/277/220/347/273/264/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -22
  318. package/templates/operate//351/203/250/347/275/262/351/205/215/347/275/256/345/256/241/346/237/245.md +0 -59
  319. package/templates/shared/Diff/345/275/222/345/261/236/350/277/275/350/270/252.md +0 -55
  320. package/templates/shared/Java/350/264/250/351/207/217/351/227/250/347/246/201.md +0 -54
  321. package/templates/shared/OOD/344/270/216SOLID/350/256/276/350/256/241.md +0 -48
  322. package/templates/shared//344/272/247/347/211/251Schema/346/263/250/345/206/214/344/270/255/345/277/203.md +0 -57
  323. package/templates/shared//344/272/247/347/211/251/345/245/221/347/272/246.md +0 -44
  324. 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
  325. 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
  326. package/templates/shared//344/273/273/345/212/241/347/212/266/346/200/201/346/234/272.md +0 -55
  327. package/templates/shared//344/273/273/345/212/241/347/256/241/347/220/206/345/231/250.md +0 -55
  328. package/templates/shared//344/274/230/351/233/205/345/201/234/346/234/272.md +0 -43
  329. 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
  330. package/templates/shared//344/275/234/347/224/250/345/237/237/347/247/237/347/272/246.md +0 -55
  331. package/templates/shared//345/206/262/347/252/201/351/227/250/347/246/201.md +0 -55
  332. package/templates/shared//345/206/263/347/255/226/347/275/221/345/205/263.md +0 -47
  333. package/templates/shared//345/210/207/347/211/207/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -72
  334. package/templates/shared//345/217/230/345/274/202/345/256/241/350/256/241.md +0 -58
  335. 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
  336. package/templates/shared//345/221/275/344/273/244/346/211/247/350/241/214.md +0 -48
  337. package/templates/shared//345/221/275/344/273/244/350/267/257/347/224/261.md +0 -45
  338. package/templates/shared//345/233/236/345/275/222/347/237/251/351/230/265.md +0 -54
  339. package/templates/shared//345/244/232/347/247/237/346/210/267.md +0 -49
  340. package/templates/shared//345/256/241/350/256/241/346/227/245/345/277/227.md +0 -46
  341. package/templates/shared//345/257/274/345/205/245/345/257/274/345/207/272.md +0 -51
  342. package/templates/shared//345/267/245/344/275/234/345/214/272/344/272/222/346/226/245/351/224/201.md +0 -52
  343. package/templates/shared//345/267/245/344/275/234/345/214/272/345/224/244/351/206/222.md +0 -54
  344. package/templates/shared//345/267/245/344/275/234/346/265/201/345/245/221/347/272/246.md +0 -42
  345. package/templates/shared//345/267/245/344/275/234/346/265/201/345/274/225/346/223/216.md +0 -50
  346. package/templates/shared//345/267/245/344/275/234/346/265/201/346/250/241/347/211/210/345/214/205.md +0 -34
  347. package/templates/shared//345/267/245/345/205/267/350/260/203/347/224/250.md +0 -48
  348. package/templates/shared//345/271/266/345/217/221/351/224/201.md +0 -57
  349. package/templates/shared//346/211/247/350/241/214/345/256/210/345/215/253/350/257/204/344/274/260.md +0 -47
  350. package/templates/shared//346/211/251/345/261/225/347/224/237/345/221/275/345/221/250/346/234/237.md +0 -34
  351. package/templates/shared//346/212/200/346/234/257/345/206/263/347/255/226/344/270/273/346/235/203.md +0 -50
  352. package/templates/shared//346/212/245/350/241/250/347/273/237/350/256/241.md +0 -50
  353. package/templates/shared//346/224/257/344/273/230.md +0 -51
  354. package/templates/shared//346/225/217/346/204/237/344/277/241/346/201/257/345/244/204/347/220/206.md +0 -77
  355. package/templates/shared//346/225/217/346/204/237/344/277/241/346/201/257/346/211/253/346/217/217.md +0 -53
  356. package/templates/shared//346/225/260/346/215/256/346/235/203/351/231/220.md +0 -47
  357. package/templates/shared//346/226/275/345/267/245/346/214/207/344/273/244/345/245/221/347/272/246.md +0 -69
  358. package/templates/shared//346/227/245/345/277/227/346/262/273/347/220/206.md +0 -31
  359. package/templates/shared//346/234/272/345/210/266/350/207/252/346/262/273/347/220/206.md +0 -31
  360. package/templates/shared//346/240/207/345/207/206/350/265/204/344/272/247/350/246/206/347/233/226.md +0 -50
  361. package/templates/shared//346/240/270/345/277/203/344/275/223/351/252/214/345/216/237/345/210/231.md +0 -38
  362. 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
  363. package/templates/shared//346/250/241/347/211/210Frontmatter.md +0 -125
  364. package/templates/shared//346/250/241/347/211/210/350/264/241/347/214/256/346/214/207/345/215/227.md +0 -282
  365. 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
  366. 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
  367. 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
  368. package/templates/shared//346/274/224/350/277/233/345/233/236/345/275/222/351/227/250/346/216/247.md +0 -50
  369. package/templates/shared//347/224/250/346/210/267/345/217/215/351/246/210/345/245/221/347/272/246.md +0 -86
  370. package/templates/shared//347/237/245/350/257/206/344/270/273/346/235/203.md +0 -66
  371. package/templates/shared//347/237/245/350/257/206/346/262/273/347/220/206.md +0 -31
  372. package/templates/shared//347/237/245/350/257/206/346/263/250/345/205/245/350/276/271/347/225/214.md +0 -47
  373. package/templates/shared//347/273/206/350/212/202/347/272/252/345/276/213.md +0 -54
  374. 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
  375. package/templates/shared//350/256/241/345/210/222/345/211/215/347/275/256/351/227/250.md +0 -47
  376. package/templates/shared//350/256/276/350/256/241/344/272/247/347/211/251/345/214/205.md +0 -58
  377. package/templates/shared//350/257/255/344/271/211/350/257/201/346/215/256.md +0 -55
  378. 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
  379. package/templates/shared//350/276/223/345/205/245/346/235/220/346/226/231/345/245/221/347/272/246.md +0 -50
  380. package/templates/shared//350/277/220/350/241/214/345/256/211/345/205/250/345/214/205.md +0 -58
  381. package/templates/shared//351/200/232/347/224/250/345/206/263/347/255/226/347/240/224/350/256/250.md +0 -62
  382. package/templates/shared//351/200/232/347/224/250/346/234/272/346/242/260/346/235/241/346/254/276.md +0 -47
  383. package/templates/shared//351/200/232/347/237/245.md +0 -50
  384. package/templates/shared//351/203/250/347/275/262/351/205/215/347/275/256.md +0 -14
  385. package/templates/shared//351/205/215/347/275/256/344/274/230/345/205/210/347/272/247.md +0 -67
  386. package/templates/shared//351/205/215/347/275/256/350/220/275/347/233/230/350/276/271/347/225/214.md +0 -32
  387. package/templates/shared//351/230/262/345/255/244/345/262/233/345/256/236/347/216/260.md +0 -51
  388. package/templates/shared//351/233/266/351/205/215/347/275/256/345/210/235/345/247/213/345/214/226.md +0 -57
  389. 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
  390. package/templates/shared//351/252/214/350/257/201/345/221/275/344/273/244/347/224/237/346/210/220.md +0 -55
  391. package/templates/shared//351/252/214/350/257/201/345/245/221/347/272/246.md +0 -48
  392. package/templates/verify/Docker/351/203/250/347/275/262.md +0 -46
  393. package/templates/verify/POC/347/273/223/350/256/272.md +0 -53
  394. package/templates/verify/React/345/210/227/350/241/250/350/241/250/346/240/274.md +0 -43
  395. package/templates/verify/React/347/212/266/346/200/201/347/256/241/347/220/206.md +0 -42
  396. package/templates/verify/React/347/273/204/344/273/266.md +0 -42
  397. package/templates/verify/React/350/241/250/345/215/225.md +0 -43
  398. package/templates/verify/React/350/267/257/347/224/261.md +0 -43
  399. package/templates/verify/SOLID/344/273/243/347/240/201/345/256/241/346/237/245.md +0 -74
  400. package/templates/verify/SOLID/350/256/276/350/256/241.md +0 -31
  401. package/templates/verify/Schema/345/205/274/345/256/271.md +0 -42
  402. package/templates/verify/Vue/347/212/266/346/200/201/347/256/241/347/220/206.md +0 -42
  403. package/templates/verify/Vue/347/273/204/344/273/266.md +0 -42
  404. package/templates/verify/Vue/350/267/257/347/224/261.md +0 -43
  405. 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
  406. package/templates/verify//344/270/273/351/223/276/350/267/257/346/216/245/345/205/245.md +0 -38
  407. package/templates/verify//344/272/213/344/273/266/351/251/261/345/212/250.md +0 -46
  408. package/templates/verify//344/272/213/345/212/241/346/250/241/345/274/217.md +0 -42
  409. 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
  410. 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
  411. package/templates/verify//344/274/232/350/257/235/346/201/242/345/244/215.md +0 -46
  412. 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
  413. package/templates/verify//345/210/206/351/241/265/346/237/245/350/257/242.md +0 -41
  414. package/templates/verify//345/211/215/347/253/257/351/241/265/351/235/242.md +0 -40
  415. 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
  416. package/templates/verify//345/217/221/345/270/203/345/220/216/345/256/241/346/237/245.md +0 -73
  417. package/templates/verify//345/220/216/347/253/257API.md +0 -39
  418. package/templates/verify//345/242/236/345/210/240/346/224/271/346/237/245.md +0 -45
  419. package/templates/verify//345/244/226/351/203/250/344/276/235/350/265/226.md +0 -43
  420. package/templates/verify//345/245/221/347/272/246/345/205/274/345/256/271.md +0 -42
  421. package/templates/verify//345/256/232/346/227/266/344/273/273/345/212/241.md +0 -39
  422. package/templates/verify//345/256/236/346/227/266/346/216/250/351/200/201.md +0 -48
  423. package/templates/verify//345/256/241/346/237/245/346/221/230/350/246/201.md +0 -58
  424. package/templates/verify//345/267/245/344/275/234/346/265/201.md +0 -38
  425. package/templates/verify//345/271/266/345/217/221/345/256/241/346/237/245.md +0 -132
  426. package/templates/verify//345/274/202/346/255/245/345/257/274/345/207/272.md +0 -41
  427. package/templates/verify//346/200/247/350/203/275/345/256/241/346/237/245.md +0 -110
  428. package/templates/verify//346/216/245/345/217/243/345/245/221/347/272/246.md +0 -44
  429. package/templates/verify//346/216/245/345/217/243/345/245/221/347/272/246/345/256/241/346/237/245.md +0 -131
  430. package/templates/verify//346/220/234/347/264/242/346/250/241/345/274/217.md +0 -47
  431. package/templates/verify//346/225/205/351/232/234/345/244/215/347/233/230.md +0 -67
  432. package/templates/verify//346/225/260/346/215/256/345/272/223/345/217/230/346/233/264.md +0 -37
  433. package/templates/verify//346/225/260/346/215/256/351/232/220/347/247/201.md +0 -46
  434. package/templates/verify//346/226/207/344/273/266/344/270/212/344/274/240.md +0 -45
  435. package/templates/verify//346/227/245/345/277/227.md +0 -45
  436. 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
  437. package/templates/verify//346/240/270/345/277/203/345/267/245/347/250/213/346/211/247/350/241/214.md +0 -65
  438. package/templates/verify//347/237/245/350/257/206/346/263/250/345/205/245.md +0 -38
  439. 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
  440. package/templates/verify//347/274/223/345/255/230/347/255/226/347/225/245.md +0 -45
  441. 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
  442. package/templates/verify//350/201/224/350/260/203/351/252/214/350/257/201.md +0 -87
  443. package/templates/verify//350/256/276/350/256/241/345/256/241/350/256/241.md +0 -184
  444. package/templates/verify//350/257/225/350/277/220/350/241/214/347/206/224/346/226/255.md +0 -74
  445. package/templates/verify//350/276/223/345/205/245/346/240/241/351/252/214.md +0 -44
  446. package/templates/verify//351/203/250/347/275/262/345/217/221/345/270/203.md +0 -101
  447. package/templates/verify//351/224/231/350/257/257/345/244/204/347/220/206.md +0 -46
  448. package/templates/verify//351/224/231/350/257/257/350/276/271/347/225/214.md +0 -38
  449. package/templates/verify//351/232/220/347/247/201/345/256/241/346/237/245.md +0 -37
  450. package/templates/verify//351/252/214/350/257/201.md +0 -38
  451. package/templates/verify//351/252/214/350/257/201/350/201/232/345/220/210/346/243/200/346/237/245.md +0 -22
@@ -8,19 +8,31 @@
8
8
  * 被谁调用:sf_work(verify 动作)、observer(派生状态)、sf_gate
9
9
  * 调用谁:Node.js fs(文件读写)
10
10
  *
11
- * 数据流:GateRecord JSON ↔ .soloforge/gates/{domain}-{gate}.json
12
- * 持久化:.soloforge/gates/{domain}-{gate}.json
11
+ * 数据流:GateRecord JSON ↔ .soloforge/gates/{domain}-{gate}-{artifact哈希}.json
12
+ * 持久化:.soloforge/gates/{domain}-{gate}-{artifact哈希}.json
13
+ *
14
+ * 主键说明:文件名含 artifact_path 哈希维度,同域同 gate_name 的不同产物各自独立文件、互不覆盖。
15
+ * 修复历史缺陷:此前主键仅 (domain, gate_name),design 域 8 个产物共用 design-gate 时全部写入
16
+ * 同一文件,后写覆盖前写,导致多产物无法各自 verified、retry_count 跨产物串台。
13
17
  */
14
18
  import { readFile, writeFile, mkdir, readdir } from "node:fs/promises";
15
19
  import { join } from "node:path";
20
+ import { createHash } from "node:crypto";
16
21
  // ═══════════════════════════════════════════
17
22
  // 路径常量与工具函数
18
23
  // ═══════════════════════════════════════════
19
24
  /** 门禁记录目录(相对于项目根) */
20
25
  const GATES_DIR = ".soloforge/gates";
21
- /** 门禁记录文件名格式:{domain}-{gate_name}.json */
22
- function gateFileName(domain, gateName) {
23
- return `${domain}-${gateName}.json`;
26
+ /** artifact_path → 12 位 sha256 短哈希。
27
+ * 哈希化原因:artifact_path 含中文与路径分隔符(如 "docs/context/需求分析.md"),
28
+ * 不能直接做文件名;哈希保证文件名安全且确定,碰撞概率可忽略。 */
29
+ function hashArtifactPath(artifactPath) {
30
+ return createHash("sha256").update(artifactPath).digest("hex").slice(0, 12);
31
+ }
32
+ /** 门禁记录文件名格式:{domain}-{gate_name}-{artifact_path哈希}.json
33
+ * 含 artifact_path 维度:同域同 gate 的不同产物各自独立文件,互不覆盖。 */
34
+ function gateFileName(domain, gateName, artifactPath) {
35
+ return `${domain}-${gateName}-${hashArtifactPath(artifactPath)}.json`;
24
36
  }
25
37
  /** 安全读取 JSON 文件,不存在返回 null */
26
38
  async function readJsonFile(filePath) {
@@ -51,16 +63,16 @@ export class GateRecordStore {
51
63
  this.projectRoot = projectRoot;
52
64
  }
53
65
  /** 门禁记录文件路径 */
54
- filePath(domain, gateName) {
55
- return join(this.projectRoot, GATES_DIR, gateFileName(domain, gateName));
66
+ filePath(domain, gateName, artifactPath) {
67
+ return join(this.projectRoot, GATES_DIR, gateFileName(domain, gateName, artifactPath));
56
68
  }
57
- /** 读取门禁记录(不存在返回 null */
58
- async read(domain, gateName) {
59
- return readJsonFile(this.filePath(domain, gateName));
69
+ /** 读取门禁记录(不存在返回 null)。artifactPath 定位到具体产物。 */
70
+ async read(domain, gateName, artifactPath) {
71
+ return readJsonFile(this.filePath(domain, gateName, artifactPath));
60
72
  }
61
- /** 写入门禁记录(覆盖已有) */
73
+ /** 写入门禁记录(按 domain+gate_name+artifact_path 三元主键覆盖同产物的旧记录) */
62
74
  async write(record) {
63
- await writeJsonFile(this.filePath(record.domain, record.gate_name), record);
75
+ await writeJsonFile(this.filePath(record.domain, record.gate_name, record.artifact_path), record);
64
76
  return record;
65
77
  }
66
78
  /** 列出指定域的所有门禁记录 */
@@ -73,7 +85,8 @@ export class GateRecordStore {
73
85
  for (const file of files) {
74
86
  if (file.startsWith(prefix) && file.endsWith(".json")) {
75
87
  const record = await readJsonFile(join(dir, file));
76
- if (record)
88
+ // 过滤无 artifact_path 的旧格式幽灵记录(升维前的 {domain}-{gate}.json,latest 覆盖的错误状态)
89
+ if (record && record.artifact_path)
77
90
  records.push(record);
78
91
  }
79
92
  }
@@ -111,12 +124,13 @@ export class GateRecordStore {
111
124
  * 筛选:task_id 匹配 + passed=false,按 evaluated_at 降序取最新。
112
125
  * 无匹配(任务首次执行 / 上次通过 / 旧记录无 task_id)返回 null。
113
126
  */
114
- async readLatestFailed(domain, taskId) {
127
+ async readLatestFailed(domain, taskId, artifactPath) {
115
128
  if (!taskId)
116
129
  return null;
117
130
  const records = await this.listByDomain(domain);
118
131
  const failed = records
119
- .filter((r) => r.task_id === taskId && r.passed === false)
132
+ .filter((r) => r.task_id === taskId && r.passed === false
133
+ && (!artifactPath || r.artifact_path === artifactPath))
120
134
  .sort((a, b) => b.evaluated_at - a.evaluated_at);
121
135
  return failed[0] ?? null;
122
136
  }
@@ -131,11 +145,19 @@ export class GateRecordStore {
131
145
  // 注意:只有 passed 的记录才有意义检查 stale
132
146
  // failed 的记录本来就要重新跑,不存在"漂移"问题
133
147
  }
148
+ /** 规则集漂移:record 验证时的 ruleset_hash ≠ 当前域规则集 hash → 门禁规则变了,需重验 */
149
+ isRulesetStale(record, currentRulesetHash) {
150
+ if (!record.passed)
151
+ return false;
152
+ if (!record.ruleset_hash)
153
+ return false; // 旧 record 无 ruleset_hash,不判(向后兼容)
154
+ return record.ruleset_hash !== currentRulesetHash;
155
+ }
134
156
  /** 删除门禁记录 */
135
- async delete(domain, gateName) {
157
+ async delete(domain, gateName, artifactPath) {
136
158
  const { rm } = await import("node:fs/promises");
137
159
  try {
138
- await rm(this.filePath(domain, gateName));
160
+ await rm(this.filePath(domain, gateName, artifactPath));
139
161
  }
140
162
  catch {
141
163
  // 文件不存在也视为成功
@@ -1 +1 @@
1
- {"version":3,"file":"gate_record_store.js","sourceRoot":"","sources":["../../src/core/gate_record_store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gate_record_store.js","sourceRoot":"","sources":["../../src/core/gate_record_store.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  * - 负责:获取文件/HEAD 的 git hash、检查文件是否有未提交变更
6
6
  * - 不负责:git commit/push/pull 等写操作、merge 冲突处理
7
7
  *
8
- * 被谁调用:gate_record_store(校验 stale)、observer(派生状态)、scope_checker
8
+ * 被谁调用:gate_record_store(校验 stale)、observer(派生状态)
9
9
  * 调用谁:git CLI(通过 child_process)
10
10
  *
11
11
  * 数据流:文件系统 → git CLI → hash 字符串
@@ -5,7 +5,7 @@
5
5
  * - 负责:获取文件/HEAD 的 git hash、检查文件是否有未提交变更
6
6
  * - 不负责:git commit/push/pull 等写操作、merge 冲突处理
7
7
  *
8
- * 被谁调用:gate_record_store(校验 stale)、observer(派生状态)、scope_checker
8
+ * 被谁调用:gate_record_store(校验 stale)、observer(派生状态)
9
9
  * 调用谁:git CLI(通过 child_process)
10
10
  *
11
11
  * 数据流:文件系统 → git CLI → hash 字符串
@@ -1 +1 @@
1
- {"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/core/observer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AA8C9D;;;GAGG;AACH,qBAAa,QAAQ;IAEjB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,cAAc,EAAE;IAG9C,eAAe;IACf,OAAO,CAAC,WAAW;IAInB,gBAAgB;YACF,gBAAgB;IAiB9B;;;OAGG;IACG,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;CAoE5D"}
1
+ {"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/core/observer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AA8C9D;;;GAGG;AACH,qBAAa,QAAQ;IAEjB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,eAAe,EAAE,eAAe,EAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,cAAc,EAAE;IAG9C,eAAe;IACf,OAAO,CAAC,WAAW;IAInB,gBAAgB;YACF,gBAAgB;IAiB9B;;;OAGG;IACG,WAAW,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;CA8F5D"}
@@ -72,7 +72,7 @@ export class Observer {
72
72
  async classifyArtifact(artifact, domain) {
73
73
  const fullPath = join(this.projectRoot, artifact.path_pattern);
74
74
  const exists = await fileExists(fullPath);
75
- const record = await this.gateRecordStore.read(domain, artifact.gate);
75
+ const record = await this.gateRecordStore.read(domain, artifact.gate, artifact.path_pattern);
76
76
  const currentHash = exists ? await getFileGitHash(fullPath, this.projectRoot) : "";
77
77
  const stale = record ? this.gateRecordStore.isStale(record, currentHash) : false;
78
78
  return {
@@ -110,11 +110,14 @@ export class Observer {
110
110
  const staleGates = [];
111
111
  for (const s of statuses) {
112
112
  if (!s.exists) {
113
- pending.push(s.artifact);
113
+ // required:false 的可选产物未产出不列 pending(不催产出,避免 observe 噪音);
114
+ // 产出后正常走 verified/unverified 分类
115
+ if (s.artifact.required)
116
+ pending.push(s.artifact);
114
117
  }
115
118
  else if (s.stale) {
116
119
  unverified.push(s.artifact);
117
- const rec = await this.gateRecordStore.read(domain, s.artifact.gate);
120
+ const rec = await this.gateRecordStore.read(domain, s.artifact.gate, s.artifact.path_pattern);
118
121
  if (rec)
119
122
  staleGates.push(rec);
120
123
  }
@@ -140,19 +143,43 @@ export class Observer {
140
143
  missingUpstream.push(req);
141
144
  continue;
142
145
  }
143
- const rec = await this.gateRecordStore.read(req.from_domain, upstreamArtifact.gate);
146
+ const rec = await this.gateRecordStore.read(req.from_domain, upstreamArtifact.gate, upstreamArtifact.path_pattern);
144
147
  if (!rec?.passed)
145
148
  missingUpstream.push(req);
146
149
  }
147
- // 步骤 3:组装结果
150
+ // 步骤 2.5:同域依赖检查(depends_on)— 依赖已产出但未 verified → 该产物阻塞,移出 pending
151
+ const blockedArtifacts = [];
152
+ const unverifiedKinds = new Set(unverified.map((a) => a.kind));
153
+ for (const p of pending) {
154
+ if (!p.depends_on?.length)
155
+ continue;
156
+ const blockers = p.depends_on.filter((d) => unverifiedKinds.has(d));
157
+ if (blockers.length)
158
+ blockedArtifacts.push({ artifact: p, blocked_by: blockers });
159
+ }
160
+ const blockedKinds = new Set(blockedArtifacts.map((b) => b.artifact.kind));
161
+ const actionablePending = pending.filter((p) => !blockedKinds.has(p.kind));
162
+ // 步骤 3:组装结果 + 有序推进计划(verify 先补欠验证不跳步 → act 新产物 → wait 被阻塞)
163
+ // 顺序治本「单产物推进纪律」:已 act 欠 verify 的产物必须先 verify(不跳步),再 act 新产物,阻塞最后
164
+ const ordered_plan = [
165
+ ...unverified.map((u) => ({ kind: u.kind, action: "verify" })),
166
+ ...actionablePending.map((p) => ({ kind: p.kind, action: "act" })),
167
+ ...blockedArtifacts.map((b) => ({
168
+ kind: b.artifact.kind,
169
+ action: "wait",
170
+ reason: `等 ${b.blocked_by.join(", ")} 验证`,
171
+ })),
172
+ ];
148
173
  return {
149
174
  current_domain: domain,
150
175
  missing_upstream: missingUpstream,
151
- pending_artifacts: pending,
176
+ pending_artifacts: actionablePending,
152
177
  unverified_artifacts: unverified,
153
178
  verified_artifacts: verified,
154
179
  stale_gates: staleGates,
155
180
  pending_return: task.pending_return,
181
+ blocked_artifacts: blockedArtifacts.length > 0 ? blockedArtifacts : undefined,
182
+ ordered_plan,
156
183
  };
157
184
  }
158
185
  }
@@ -1 +1 @@
1
- {"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/core/observer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/core/observer.ts"],"names":[],"mappings":"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"}
@@ -27,7 +27,7 @@ export const VALID_TRANSITIONS = {
27
27
  learning: ["done", "retrying", "reworking", "failed", "escalated", "cancelled"],
28
28
  done: ["cancelled"],
29
29
  failed: ["expanding", "classifying", "escalated", "cancelled"],
30
- escalated: ["cancelled", "failed"],
30
+ escalated: ["cancelled", "failed", "executing"], // reset 可恢复 executing(人工修复 retry 锁定后解锁;非常规推进,仅 sf_task reset 走)
31
31
  cancelled: [],
32
32
  };
33
33
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/core/task_context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAC7B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC;AAE5B,yBAAyB;AACzB,mFAAmF;AACnF,MAAM,CAAC,MAAM,iBAAiB,GAA2D;IACvF,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACtE,SAAS,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC1E,UAAU,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC7D,SAAS,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACrF,SAAS,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC5F,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACxE,SAAS,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACzE,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC/E,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,MAAM,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC;IAC9D,SAAS,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC;IAClC,SAAS,EAAE,EAAE;CACd,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/core/task_context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,MAAM,CAAC,MAAM,iBAAiB,GAAG,EAAE,CAAC;AACpC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAC7B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC;AAE5B,yBAAyB;AACzB,mFAAmF;AACnF,MAAM,CAAC,MAAM,iBAAiB,GAA2D;IACvF,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACtE,SAAS,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC1E,UAAU,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC7D,SAAS,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACrF,SAAS,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC5F,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACxE,SAAS,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IACzE,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;IAC/E,IAAI,EAAE,CAAC,WAAW,CAAC;IACnB,MAAM,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC;IAC9D,SAAS,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAG,gEAAgE;IAClH,SAAS,EAAE,EAAE;CACd,CAAC"}
@@ -94,6 +94,8 @@ export declare class TaskContextManager {
94
94
  * 原 TaskStore.update 自动追加审计的等价能力,统一存储后由管线 context 承载。
95
95
  */
96
96
  appendAuditLog(taskId: string, entry: AuditEntry): Promise<TaskContext | null>;
97
+ /** 清域间打转计数(audit_log 的 switch 记录归零)。reset 调用——否则 reset 后切域 detectLoop 还判历史打转 → 再 escalate(流程死结)。 */
98
+ clearDomainSwitchAudit(taskId: string): Promise<TaskContext | null>;
97
99
  /**
98
100
  * 治本:更新聚焦域(sf_work 域跳转时调用)。
99
101
  * 原 TaskStore.update({ domain_focus }) 的等价能力。
@@ -224,6 +226,8 @@ export declare class TaskContextManager {
224
226
  }): Promise<TaskContext | null>;
225
227
  /** 决策研讨合同写入(服务端逐域翻转回写;pipeline_id 为键,与证据写回同模式) */
226
228
  setDecisionWorkshop(taskId: string, contract: NonNullable<TaskContext["decision_workshop"]>): Promise<TaskContext | null>;
229
+ /** 架构决策研讨合同写入(confirm_decisions 逐域翻转后持久化) */
230
+ setArchitectureDecisionWorkshop(taskId: string, contract: NonNullable<TaskContext["architecture_decision_workshop"]>): Promise<TaskContext | null>;
227
231
  /** R-地基 2:reset-to-stage / rollback / 核弹reset 共用根因能力 — 清阶段归属字段+全局运行时态,保留基础设施 */
228
232
  resetConfirmationsFromStage(taskId: string, targetStage: string): Promise<{
229
233
  cleared: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/core/task_context/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/core/task_context/manager.ts"],"names":[],"mappings":"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"}
@@ -403,6 +403,17 @@ export class TaskContextManager {
403
403
  return ctx;
404
404
  });
405
405
  }
406
+ /** 清域间打转计数(audit_log 的 switch 记录归零)。reset 调用——否则 reset 后切域 detectLoop 还判历史打转 → 再 escalate(流程死结)。 */
407
+ async clearDomainSwitchAudit(taskId) {
408
+ return this.withTaskLock(taskId, async () => {
409
+ const ctx = await this.load(taskId);
410
+ if (!ctx)
411
+ return null;
412
+ ctx.audit_log = (ctx.audit_log ?? []).filter((e) => e.action !== "switch");
413
+ await this.save(ctx);
414
+ return ctx;
415
+ });
416
+ }
406
417
  /**
407
418
  * 治本:更新聚焦域(sf_work 域跳转时调用)。
408
419
  * 原 TaskStore.update({ domain_focus }) 的等价能力。
@@ -445,7 +456,7 @@ export class TaskContextManager {
445
456
  await this.clearCurrentPointerIfMatches(task_id);
446
457
  return null;
447
458
  }
448
- if (ctx.status === "done" || ctx.status === "failed") {
459
+ if (ctx.status === "done" || ctx.status === "failed" || ctx.status === "cancelled") {
449
460
  await this.clearCurrentPointerIfMatches(task_id);
450
461
  return null;
451
462
  }
@@ -460,37 +471,40 @@ export class TaskContextManager {
460
471
  * 取消/关闭任务。
461
472
  */
462
473
  async cancel(taskId) {
463
- const ctx = await this.load(taskId);
464
- if (!ctx)
465
- return false;
466
- if (ctx.status === "done" || ctx.status === "failed") {
474
+ // withTaskLock(与其他写入方法一致,避免与 updateStatus/setter 并发 TOCTOU 竞态——domain/core 审查发现)
475
+ return this.withTaskLock(taskId, async () => {
476
+ const ctx = await this.load(taskId);
477
+ if (!ctx)
478
+ return false;
479
+ if (ctx.status === "done" || ctx.status === "failed") {
480
+ this.diffOwnership.clearTask(taskId);
481
+ await this.clearCurrentPointerIfMatches(taskId);
482
+ debug("任务上下文", "已关闭终态任务 " + taskId);
483
+ return true;
484
+ }
485
+ const allowed = VALID_TRANSITIONS[ctx.status];
486
+ if (!allowed || !allowed.includes("failed")) {
487
+ debug("任务上下文", `无法从 ${ctx.status} 取消到 failed`);
488
+ return false;
489
+ }
490
+ // P1-B4: 记录已写入的产物文件清单到 ctx,便于后续选择性清理
491
+ const artifactPaths = [];
492
+ if (ctx.artifact_output?.path)
493
+ artifactPaths.push(ctx.artifact_output.path);
494
+ if (ctx.execution?.changed_files && ctx.execution.changed_files.length > 0) {
495
+ artifactPaths.push(...ctx.execution.changed_files);
496
+ }
497
+ if (artifactPaths.length > 0) {
498
+ ctx.cancelled_artifact_files = artifactPaths;
499
+ debug("任务上下文", `任务 ${taskId} 取消时记录 ${artifactPaths.length} 个产物文件待清理`);
500
+ }
501
+ ctx.status = "failed";
502
+ await this.save(ctx);
467
503
  this.diffOwnership.clearTask(taskId);
468
504
  await this.clearCurrentPointerIfMatches(taskId);
469
- debug("任务上下文", "已关闭终态任务 " + taskId);
505
+ debug("任务上下文", "已取消任务 " + taskId);
470
506
  return true;
471
- }
472
- const allowed = VALID_TRANSITIONS[ctx.status];
473
- if (!allowed || !allowed.includes("failed")) {
474
- debug("任务上下文", `无法从 ${ctx.status} 取消到 failed`);
475
- return false;
476
- }
477
- // P1-B4: 记录已写入的产物文件清单到 ctx,便于后续选择性清理
478
- const artifactPaths = [];
479
- if (ctx.artifact_output?.path)
480
- artifactPaths.push(ctx.artifact_output.path);
481
- if (ctx.execution?.changed_files && ctx.execution.changed_files.length > 0) {
482
- artifactPaths.push(...ctx.execution.changed_files);
483
- }
484
- if (artifactPaths.length > 0) {
485
- ctx.cancelled_artifact_files = artifactPaths;
486
- debug("任务上下文", `任务 ${taskId} 取消时记录 ${artifactPaths.length} 个产物文件待清理`);
487
- }
488
- ctx.status = "failed";
489
- await this.save(ctx);
490
- this.diffOwnership.clearTask(taskId);
491
- await this.clearCurrentPointerIfMatches(taskId);
492
- debug("任务上下文", "已取消任务 " + taskId);
493
- return true;
507
+ });
494
508
  }
495
509
  /**
496
510
  * P1-B4: 清理已取消任务的产物文件。
@@ -687,7 +701,7 @@ export class TaskContextManager {
687
701
  async autoFailStale() {
688
702
  const STALE_MS_EXECUTING = 30 * 60 * 1000;
689
703
  const STALE_MS_OTHER = 60 * 60 * 1000;
690
- const TERMINAL = new Set(["done", "failed"]);
704
+ const TERMINAL = new Set(["done", "failed", "escalated", "cancelled"]); // escalated/cancelled 亦是终态,跳过避免对其 updateStatus 触发无效转换报错(gate 审查)
691
705
  const now = Date.now();
692
706
  const failed = [];
693
707
  const files = await fs.readdir(this.stateDir);
@@ -797,6 +811,10 @@ export class TaskContextManager {
797
811
  async setDecisionWorkshop(taskId, contract) {
798
812
  return this._setters.setDecisionWorkshop(taskId, contract);
799
813
  }
814
+ /** 架构决策研讨合同写入(confirm_decisions 逐域翻转后持久化) */
815
+ async setArchitectureDecisionWorkshop(taskId, contract) {
816
+ return this._setters.setArchitectureDecisionWorkshop(taskId, contract);
817
+ }
800
818
  /** R-地基 2:reset-to-stage / rollback / 核弹reset 共用根因能力 — 清阶段归属字段+全局运行时态,保留基础设施 */
801
819
  async resetConfirmationsFromStage(taskId, targetStage) {
802
820
  return this._setters.resetConfirmationsFromStage(taskId, targetStage);
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/core/task_context/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/core/task_context/manager.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,8 @@ export interface SetterMethods {
52
52
  }): Promise<TaskContext | null>;
53
53
  /** 决策研讨合同写入(服务端逐域翻转回写;NonNullable 避免再引 DecisionWorkshopContract 类型) */
54
54
  setDecisionWorkshop(taskId: string, contract: NonNullable<TaskContext["decision_workshop"]>): Promise<TaskContext | null>;
55
+ /** 架构决策研讨合同写入(confirm_decisions 逐域翻转后持久化;架构门写 ctx.architecture_decision_workshop) */
56
+ setArchitectureDecisionWorkshop(taskId: string, contract: NonNullable<TaskContext["architecture_decision_workshop"]>): Promise<TaskContext | null>;
55
57
  recordRework(taskId: string, fromPhase: string, toPhase: string, reason: string): Promise<TaskContext | null>;
56
58
  /**
57
59
  * P1-B3: 扩展阶段事务化持久化。
@@ -1 +1 @@
1
- {"version":3,"file":"manager_setters.d.ts","sourceRoot":"","sources":["../../../src/core/task_context/manager_setters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager_setters.d.ts","sourceRoot":"","sources":["../../../src/core/task_context/manager_setters.ts"],"names":[],"mappings":"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"}