sdd-agent-platform 0.3.0 → 0.4.0

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 (1290) hide show
  1. package/README.md +239 -239
  2. package/{dist/packages/core/src → node_modules/@sdd-agent-platform/core/dist}/ai-tools.d.ts +3 -2
  3. package/{dist/packages/core/src → node_modules/@sdd-agent-platform/core/dist}/ai-tools.js +246 -100
  4. package/node_modules/@sdd-agent-platform/core/dist/ai-tools.js.map +1 -0
  5. package/node_modules/@sdd-agent-platform/core/dist/artifacts/ingestion.d.ts +24 -0
  6. package/node_modules/@sdd-agent-platform/core/dist/artifacts/ingestion.js +181 -0
  7. package/node_modules/@sdd-agent-platform/core/dist/artifacts/ingestion.js.map +1 -0
  8. package/node_modules/@sdd-agent-platform/core/dist/artifacts/sdd-evidence.d.ts +47 -0
  9. package/node_modules/@sdd-agent-platform/core/dist/artifacts/sdd-evidence.js +241 -0
  10. package/node_modules/@sdd-agent-platform/core/dist/artifacts/sdd-evidence.js.map +1 -0
  11. package/node_modules/@sdd-agent-platform/core/dist/artifacts/sdd-result.d.ts +29 -0
  12. package/node_modules/@sdd-agent-platform/core/dist/artifacts/sdd-result.js +198 -0
  13. package/node_modules/@sdd-agent-platform/core/dist/artifacts/sdd-result.js.map +1 -0
  14. package/node_modules/@sdd-agent-platform/core/dist/artifacts/templates.d.ts +10 -0
  15. package/node_modules/@sdd-agent-platform/core/dist/artifacts/templates.js +79 -0
  16. package/node_modules/@sdd-agent-platform/core/dist/artifacts/templates.js.map +1 -0
  17. package/node_modules/@sdd-agent-platform/core/dist/artifacts.d.ts +4 -0
  18. package/node_modules/@sdd-agent-platform/core/dist/artifacts.js +5 -0
  19. package/node_modules/@sdd-agent-platform/core/dist/artifacts.js.map +1 -0
  20. package/node_modules/@sdd-agent-platform/core/dist/coding-facts/contracts.d.ts +71 -0
  21. package/node_modules/@sdd-agent-platform/core/dist/coding-facts/contracts.js +2 -0
  22. package/node_modules/@sdd-agent-platform/core/dist/coding-facts/contracts.js.map +1 -0
  23. package/node_modules/@sdd-agent-platform/core/dist/coding-facts.d.ts +1 -0
  24. package/node_modules/@sdd-agent-platform/core/dist/coding-facts.js +2 -0
  25. package/node_modules/@sdd-agent-platform/core/dist/coding-facts.js.map +1 -0
  26. package/node_modules/@sdd-agent-platform/core/dist/config/init-project.d.ts +31 -0
  27. package/node_modules/@sdd-agent-platform/core/dist/config/init-project.js +88 -0
  28. package/node_modules/@sdd-agent-platform/core/dist/config/init-project.js.map +1 -0
  29. package/node_modules/@sdd-agent-platform/core/dist/config/project-config.d.ts +49 -0
  30. package/node_modules/@sdd-agent-platform/core/dist/config/project-config.js +202 -0
  31. package/node_modules/@sdd-agent-platform/core/dist/config/project-config.js.map +1 -0
  32. package/node_modules/@sdd-agent-platform/core/dist/config/project-detection.d.ts +21 -0
  33. package/node_modules/@sdd-agent-platform/core/dist/config/project-detection.js +111 -0
  34. package/node_modules/@sdd-agent-platform/core/dist/config/project-detection.js.map +1 -0
  35. package/node_modules/@sdd-agent-platform/core/dist/config/project-status.d.ts +1 -0
  36. package/node_modules/@sdd-agent-platform/core/dist/config/project-status.js +2 -0
  37. package/node_modules/@sdd-agent-platform/core/dist/config/project-status.js.map +1 -0
  38. package/node_modules/@sdd-agent-platform/core/dist/config/starter-documents.d.ts +4 -0
  39. package/node_modules/@sdd-agent-platform/core/dist/config/starter-documents.js +432 -0
  40. package/node_modules/@sdd-agent-platform/core/dist/config/starter-documents.js.map +1 -0
  41. package/node_modules/@sdd-agent-platform/core/dist/context/budget.d.ts +10 -0
  42. package/node_modules/@sdd-agent-platform/core/dist/context/budget.js +20 -0
  43. package/node_modules/@sdd-agent-platform/core/dist/context/budget.js.map +1 -0
  44. package/node_modules/@sdd-agent-platform/core/dist/context/build-package.d.ts +46 -0
  45. package/node_modules/@sdd-agent-platform/core/dist/context/build-package.js +244 -0
  46. package/node_modules/@sdd-agent-platform/core/dist/context/build-package.js.map +1 -0
  47. package/node_modules/@sdd-agent-platform/core/dist/context/command-summary.d.ts +14 -0
  48. package/node_modules/@sdd-agent-platform/core/dist/context/command-summary.js +34 -0
  49. package/node_modules/@sdd-agent-platform/core/dist/context/command-summary.js.map +1 -0
  50. package/node_modules/@sdd-agent-platform/core/dist/context/evidence-summary.d.ts +50 -0
  51. package/node_modules/@sdd-agent-platform/core/dist/context/evidence-summary.js +86 -0
  52. package/node_modules/@sdd-agent-platform/core/dist/context/evidence-summary.js.map +1 -0
  53. package/node_modules/@sdd-agent-platform/core/dist/context/log-worker.d.ts +19 -0
  54. package/node_modules/@sdd-agent-platform/core/dist/context/log-worker.js +28 -0
  55. package/node_modules/@sdd-agent-platform/core/dist/context/log-worker.js.map +1 -0
  56. package/node_modules/@sdd-agent-platform/core/dist/context/source-refs.d.ts +9 -0
  57. package/node_modules/@sdd-agent-platform/core/dist/context/source-refs.js +30 -0
  58. package/node_modules/@sdd-agent-platform/core/dist/context/source-refs.js.map +1 -0
  59. package/node_modules/@sdd-agent-platform/core/dist/context-offload/contracts.d.ts +43 -0
  60. package/node_modules/@sdd-agent-platform/core/dist/context-offload/contracts.js +2 -0
  61. package/node_modules/@sdd-agent-platform/core/dist/context-offload/contracts.js.map +1 -0
  62. package/node_modules/@sdd-agent-platform/core/dist/context-offload/runtime.d.ts +36 -0
  63. package/node_modules/@sdd-agent-platform/core/dist/context-offload/runtime.js +142 -0
  64. package/node_modules/@sdd-agent-platform/core/dist/context-offload/runtime.js.map +1 -0
  65. package/node_modules/@sdd-agent-platform/core/dist/context-offload.d.ts +2 -0
  66. package/node_modules/@sdd-agent-platform/core/dist/context-offload.js +3 -0
  67. package/node_modules/@sdd-agent-platform/core/dist/context-offload.js.map +1 -0
  68. package/node_modules/@sdd-agent-platform/core/dist/context.d.ts +6 -0
  69. package/node_modules/@sdd-agent-platform/core/dist/context.js +7 -0
  70. package/node_modules/@sdd-agent-platform/core/dist/context.js.map +1 -0
  71. package/node_modules/@sdd-agent-platform/core/dist/contracts/issues.d.ts +7 -0
  72. package/node_modules/@sdd-agent-platform/core/dist/contracts/issues.js +7 -0
  73. package/node_modules/@sdd-agent-platform/core/dist/contracts/issues.js.map +1 -0
  74. package/node_modules/@sdd-agent-platform/core/dist/contracts.d.ts +108 -0
  75. package/node_modules/@sdd-agent-platform/core/dist/contracts.js +73 -0
  76. package/node_modules/@sdd-agent-platform/core/dist/contracts.js.map +1 -0
  77. package/node_modules/@sdd-agent-platform/core/dist/delegation/model.d.ts +21 -0
  78. package/node_modules/@sdd-agent-platform/core/dist/delegation/model.js +2 -0
  79. package/node_modules/@sdd-agent-platform/core/dist/delegation/model.js.map +1 -0
  80. package/node_modules/@sdd-agent-platform/core/dist/delegation/queue.d.ts +10 -0
  81. package/node_modules/@sdd-agent-platform/core/dist/delegation/queue.js +47 -0
  82. package/node_modules/@sdd-agent-platform/core/dist/delegation/queue.js.map +1 -0
  83. package/node_modules/@sdd-agent-platform/core/dist/delegation/run-state.d.ts +2 -0
  84. package/node_modules/@sdd-agent-platform/core/dist/delegation/run-state.js +13 -0
  85. package/node_modules/@sdd-agent-platform/core/dist/delegation/run-state.js.map +1 -0
  86. package/node_modules/@sdd-agent-platform/core/dist/delegation/state-machine.d.ts +30 -0
  87. package/node_modules/@sdd-agent-platform/core/dist/delegation/state-machine.js +56 -0
  88. package/node_modules/@sdd-agent-platform/core/dist/delegation/state-machine.js.map +1 -0
  89. package/node_modules/@sdd-agent-platform/core/dist/delegation/validation.d.ts +28 -0
  90. package/node_modules/@sdd-agent-platform/core/dist/delegation/validation.js +100 -0
  91. package/node_modules/@sdd-agent-platform/core/dist/delegation/validation.js.map +1 -0
  92. package/node_modules/@sdd-agent-platform/core/dist/delegation.d.ts +7 -0
  93. package/node_modules/@sdd-agent-platform/core/dist/delegation.js +6 -0
  94. package/node_modules/@sdd-agent-platform/core/dist/delegation.js.map +1 -0
  95. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/ai-entries.d.ts +2 -0
  96. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/ai-entries.js +26 -0
  97. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/ai-entries.js.map +1 -0
  98. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/document-chain.d.ts +2 -0
  99. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/document-chain.js +104 -0
  100. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/document-chain.js.map +1 -0
  101. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/local-run-index.d.ts +2 -0
  102. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/local-run-index.js +26 -0
  103. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/local-run-index.js.map +1 -0
  104. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/project.d.ts +11 -0
  105. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/project.js +78 -0
  106. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/project.js.map +1 -0
  107. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/registries.d.ts +11 -0
  108. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/registries.js +247 -0
  109. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/registries.js.map +1 -0
  110. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-evidence.d.ts +6 -0
  111. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-evidence.js +313 -0
  112. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-evidence.js.map +1 -0
  113. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-records.d.ts +4 -0
  114. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-records.js +68 -0
  115. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-records.js.map +1 -0
  116. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-trust.d.ts +3 -0
  117. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-trust.js +121 -0
  118. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/run-trust.js.map +1 -0
  119. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/runtime-contracts.d.ts +11 -0
  120. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/runtime-contracts.js +279 -0
  121. package/node_modules/@sdd-agent-platform/core/dist/doctor/checks/runtime-contracts.js.map +1 -0
  122. package/node_modules/@sdd-agent-platform/core/dist/doctor/doctor.d.ts +6 -0
  123. package/node_modules/@sdd-agent-platform/core/dist/doctor/doctor.js +138 -0
  124. package/node_modules/@sdd-agent-platform/core/dist/doctor/doctor.js.map +1 -0
  125. package/node_modules/@sdd-agent-platform/core/dist/doctor/model.d.ts +11 -0
  126. package/node_modules/@sdd-agent-platform/core/dist/doctor/model.js +2 -0
  127. package/node_modules/@sdd-agent-platform/core/dist/doctor/model.js.map +1 -0
  128. package/node_modules/@sdd-agent-platform/core/dist/doctor/render.d.ts +2 -0
  129. package/node_modules/@sdd-agent-platform/core/dist/doctor/render.js +44 -0
  130. package/node_modules/@sdd-agent-platform/core/dist/doctor/render.js.map +1 -0
  131. package/node_modules/@sdd-agent-platform/core/dist/doctor/summary.d.ts +2 -0
  132. package/node_modules/@sdd-agent-platform/core/dist/doctor/summary.js +10 -0
  133. package/node_modules/@sdd-agent-platform/core/dist/doctor/summary.js.map +1 -0
  134. package/node_modules/@sdd-agent-platform/core/dist/doctor.d.ts +2 -0
  135. package/node_modules/@sdd-agent-platform/core/dist/doctor.js +3 -0
  136. package/node_modules/@sdd-agent-platform/core/dist/doctor.js.map +1 -0
  137. package/node_modules/@sdd-agent-platform/core/dist/evidence-runtime/contracts.d.ts +33 -0
  138. package/node_modules/@sdd-agent-platform/core/dist/evidence-runtime/contracts.js +2 -0
  139. package/node_modules/@sdd-agent-platform/core/dist/evidence-runtime/contracts.js.map +1 -0
  140. package/node_modules/@sdd-agent-platform/core/dist/evidence-runtime.d.ts +1 -0
  141. package/node_modules/@sdd-agent-platform/core/dist/evidence-runtime.js +2 -0
  142. package/node_modules/@sdd-agent-platform/core/dist/evidence-runtime.js.map +1 -0
  143. package/node_modules/@sdd-agent-platform/core/dist/execution/agent-execution-records.d.ts +31 -0
  144. package/node_modules/@sdd-agent-platform/core/dist/execution/agent-execution-records.js +163 -0
  145. package/node_modules/@sdd-agent-platform/core/dist/execution/agent-execution-records.js.map +1 -0
  146. package/node_modules/@sdd-agent-platform/core/dist/execution/background-executor.d.ts +44 -0
  147. package/node_modules/@sdd-agent-platform/core/dist/execution/background-executor.js +249 -0
  148. package/node_modules/@sdd-agent-platform/core/dist/execution/background-executor.js.map +1 -0
  149. package/node_modules/@sdd-agent-platform/core/dist/execution/foreground-subagents.d.ts +55 -0
  150. package/node_modules/@sdd-agent-platform/core/dist/execution/foreground-subagents.js +363 -0
  151. package/node_modules/@sdd-agent-platform/core/dist/execution/foreground-subagents.js.map +1 -0
  152. package/node_modules/@sdd-agent-platform/core/dist/execution/host-invocation.d.ts +27 -0
  153. package/node_modules/@sdd-agent-platform/core/dist/execution/host-invocation.js +185 -0
  154. package/node_modules/@sdd-agent-platform/core/dist/execution/host-invocation.js.map +1 -0
  155. package/node_modules/@sdd-agent-platform/core/dist/execution/resident-worker.d.ts +100 -0
  156. package/node_modules/@sdd-agent-platform/core/dist/execution/resident-worker.js +319 -0
  157. package/node_modules/@sdd-agent-platform/core/dist/execution/resident-worker.js.map +1 -0
  158. package/node_modules/@sdd-agent-platform/core/dist/execution/wave-executor.d.ts +45 -0
  159. package/node_modules/@sdd-agent-platform/core/dist/execution/wave-executor.js +178 -0
  160. package/node_modules/@sdd-agent-platform/core/dist/execution/wave-executor.js.map +1 -0
  161. package/node_modules/@sdd-agent-platform/core/dist/execution.d.ts +5 -0
  162. package/node_modules/@sdd-agent-platform/core/dist/execution.js +6 -0
  163. package/node_modules/@sdd-agent-platform/core/dist/execution.js.map +1 -0
  164. package/node_modules/@sdd-agent-platform/core/dist/governance/policy.d.ts +53 -0
  165. package/node_modules/@sdd-agent-platform/core/dist/governance/policy.js +111 -0
  166. package/node_modules/@sdd-agent-platform/core/dist/governance/policy.js.map +1 -0
  167. package/node_modules/@sdd-agent-platform/core/dist/governance.d.ts +1 -0
  168. package/node_modules/@sdd-agent-platform/core/dist/governance.js +2 -0
  169. package/node_modules/@sdd-agent-platform/core/dist/governance.js.map +1 -0
  170. package/node_modules/@sdd-agent-platform/core/dist/index.d.ts +1 -0
  171. package/node_modules/@sdd-agent-platform/core/dist/index.js +2 -0
  172. package/node_modules/@sdd-agent-platform/core/dist/index.js.map +1 -0
  173. package/{dist/packages/core/src → node_modules/@sdd-agent-platform/core/dist}/instructions.d.ts +1 -1
  174. package/{dist/packages/core/src → node_modules/@sdd-agent-platform/core/dist}/instructions.js +48 -19
  175. package/node_modules/@sdd-agent-platform/core/dist/instructions.js.map +1 -0
  176. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/decision-gate.d.ts +39 -0
  177. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/decision-gate.js +319 -0
  178. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/decision-gate.js.map +1 -0
  179. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/rendering.d.ts +2 -0
  180. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/rendering.js +27 -0
  181. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/rendering.js.map +1 -0
  182. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/risk-signals.d.ts +57 -0
  183. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/risk-signals.js +80 -0
  184. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/risk-signals.js.map +1 -0
  185. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/ship.d.ts +42 -0
  186. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/ship.js +187 -0
  187. package/node_modules/@sdd-agent-platform/core/dist/lifecycle/ship.js.map +1 -0
  188. package/node_modules/@sdd-agent-platform/core/dist/lifecycle.d.ts +4 -0
  189. package/node_modules/@sdd-agent-platform/core/dist/lifecycle.js +5 -0
  190. package/node_modules/@sdd-agent-platform/core/dist/lifecycle.js.map +1 -0
  191. package/node_modules/@sdd-agent-platform/core/dist/orchestration/contracts.d.ts +45 -0
  192. package/node_modules/@sdd-agent-platform/core/dist/orchestration/contracts.js +2 -0
  193. package/node_modules/@sdd-agent-platform/core/dist/orchestration/contracts.js.map +1 -0
  194. package/node_modules/@sdd-agent-platform/core/dist/orchestration/index.d.ts +2 -0
  195. package/node_modules/@sdd-agent-platform/core/dist/orchestration/index.js +3 -0
  196. package/node_modules/@sdd-agent-platform/core/dist/orchestration/index.js.map +1 -0
  197. package/node_modules/@sdd-agent-platform/core/dist/orchestration/runtime.d.ts +55 -0
  198. package/node_modules/@sdd-agent-platform/core/dist/orchestration/runtime.js +314 -0
  199. package/node_modules/@sdd-agent-platform/core/dist/orchestration/runtime.js.map +1 -0
  200. package/node_modules/@sdd-agent-platform/core/dist/path-safety.js.map +1 -0
  201. package/node_modules/@sdd-agent-platform/core/dist/planning/task-graph.d.ts +57 -0
  202. package/node_modules/@sdd-agent-platform/core/dist/planning/task-graph.js +157 -0
  203. package/node_modules/@sdd-agent-platform/core/dist/planning/task-graph.js.map +1 -0
  204. package/node_modules/@sdd-agent-platform/core/dist/planning/wave-plan.d.ts +37 -0
  205. package/node_modules/@sdd-agent-platform/core/dist/planning/wave-plan.js +119 -0
  206. package/node_modules/@sdd-agent-platform/core/dist/planning/wave-plan.js.map +1 -0
  207. package/node_modules/@sdd-agent-platform/core/dist/planning.d.ts +2 -0
  208. package/node_modules/@sdd-agent-platform/core/dist/planning.js +3 -0
  209. package/node_modules/@sdd-agent-platform/core/dist/planning.js.map +1 -0
  210. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-capability-catalog.d.ts +55 -0
  211. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-capability-catalog.js +109 -0
  212. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-capability-catalog.js.map +1 -0
  213. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-registry.d.ts +22 -0
  214. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-registry.js +121 -0
  215. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-registry.js.map +1 -0
  216. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-runtime-static.d.ts +51 -0
  217. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-runtime-static.js +39 -0
  218. package/node_modules/@sdd-agent-platform/core/dist/registries/agent-runtime-static.js.map +1 -0
  219. package/node_modules/@sdd-agent-platform/core/dist/registries/capability-sources.d.ts +17 -0
  220. package/node_modules/@sdd-agent-platform/core/dist/registries/capability-sources.js +14 -0
  221. package/node_modules/@sdd-agent-platform/core/dist/registries/capability-sources.js.map +1 -0
  222. package/node_modules/@sdd-agent-platform/core/dist/registries/command-team-runtime.d.ts +70 -0
  223. package/node_modules/@sdd-agent-platform/core/dist/registries/command-team-runtime.js +220 -0
  224. package/node_modules/@sdd-agent-platform/core/dist/registries/command-team-runtime.js.map +1 -0
  225. package/node_modules/@sdd-agent-platform/core/dist/registries/eval-learning-context.d.ts +64 -0
  226. package/node_modules/@sdd-agent-platform/core/dist/registries/eval-learning-context.js +161 -0
  227. package/node_modules/@sdd-agent-platform/core/dist/registries/eval-learning-context.js.map +1 -0
  228. package/node_modules/@sdd-agent-platform/core/dist/registries/query-status.d.ts +28 -0
  229. package/node_modules/@sdd-agent-platform/core/dist/registries/query-status.js +84 -0
  230. package/node_modules/@sdd-agent-platform/core/dist/registries/query-status.js.map +1 -0
  231. package/node_modules/@sdd-agent-platform/core/dist/registries/skill-capabilities.d.ts +22 -0
  232. package/node_modules/@sdd-agent-platform/core/dist/registries/skill-capabilities.js +16 -0
  233. package/node_modules/@sdd-agent-platform/core/dist/registries/skill-capabilities.js.map +1 -0
  234. package/node_modules/@sdd-agent-platform/core/dist/registries/tool-capabilities.d.ts +20 -0
  235. package/node_modules/@sdd-agent-platform/core/dist/registries/tool-capabilities.js +111 -0
  236. package/node_modules/@sdd-agent-platform/core/dist/registries/tool-capabilities.js.map +1 -0
  237. package/node_modules/@sdd-agent-platform/core/dist/registries/tool-plugins.d.ts +21 -0
  238. package/node_modules/@sdd-agent-platform/core/dist/registries/tool-plugins.js +107 -0
  239. package/node_modules/@sdd-agent-platform/core/dist/registries/tool-plugins.js.map +1 -0
  240. package/node_modules/@sdd-agent-platform/core/dist/registries/worker-adapters.d.ts +38 -0
  241. package/node_modules/@sdd-agent-platform/core/dist/registries/worker-adapters.js +99 -0
  242. package/node_modules/@sdd-agent-platform/core/dist/registries/worker-adapters.js.map +1 -0
  243. package/node_modules/@sdd-agent-platform/core/dist/registries/workflow-gates.d.ts +19 -0
  244. package/node_modules/@sdd-agent-platform/core/dist/registries/workflow-gates.js +89 -0
  245. package/node_modules/@sdd-agent-platform/core/dist/registries/workflow-gates.js.map +1 -0
  246. package/node_modules/@sdd-agent-platform/core/dist/registries.d.ts +14 -0
  247. package/node_modules/@sdd-agent-platform/core/dist/registries.js +13 -0
  248. package/node_modules/@sdd-agent-platform/core/dist/registries.js.map +1 -0
  249. package/node_modules/@sdd-agent-platform/core/dist/risk/consumer-diagnostics.d.ts +18 -0
  250. package/node_modules/@sdd-agent-platform/core/dist/risk/consumer-diagnostics.js +77 -0
  251. package/node_modules/@sdd-agent-platform/core/dist/risk/consumer-diagnostics.js.map +1 -0
  252. package/node_modules/@sdd-agent-platform/core/dist/risk/contracts.d.ts +57 -0
  253. package/node_modules/@sdd-agent-platform/core/dist/risk/contracts.js +2 -0
  254. package/node_modules/@sdd-agent-platform/core/dist/risk/contracts.js.map +1 -0
  255. package/node_modules/@sdd-agent-platform/core/dist/risk/kernel.d.ts +20 -0
  256. package/node_modules/@sdd-agent-platform/core/dist/risk/kernel.js +195 -0
  257. package/node_modules/@sdd-agent-platform/core/dist/risk/kernel.js.map +1 -0
  258. package/node_modules/@sdd-agent-platform/core/dist/risk/legacy-adapters.d.ts +33 -0
  259. package/node_modules/@sdd-agent-platform/core/dist/risk/legacy-adapters.js +215 -0
  260. package/node_modules/@sdd-agent-platform/core/dist/risk/legacy-adapters.js.map +1 -0
  261. package/node_modules/@sdd-agent-platform/core/dist/risk/workflow-gates.d.ts +24 -0
  262. package/node_modules/@sdd-agent-platform/core/dist/risk/workflow-gates.js +160 -0
  263. package/node_modules/@sdd-agent-platform/core/dist/risk/workflow-gates.js.map +1 -0
  264. package/node_modules/@sdd-agent-platform/core/dist/risk.d.ts +5 -0
  265. package/node_modules/@sdd-agent-platform/core/dist/risk.js +6 -0
  266. package/node_modules/@sdd-agent-platform/core/dist/risk.js.map +1 -0
  267. package/node_modules/@sdd-agent-platform/core/dist/router/agent-runtime-config.d.ts +4 -0
  268. package/node_modules/@sdd-agent-platform/core/dist/router/agent-runtime-config.js +263 -0
  269. package/node_modules/@sdd-agent-platform/core/dist/router/agent-runtime-config.js.map +1 -0
  270. package/node_modules/@sdd-agent-platform/core/dist/router/agent-runtime.d.ts +285 -0
  271. package/node_modules/@sdd-agent-platform/core/dist/router/agent-runtime.js +2 -0
  272. package/node_modules/@sdd-agent-platform/core/dist/router/agent-runtime.js.map +1 -0
  273. package/node_modules/@sdd-agent-platform/core/dist/router/profile-resolution.d.ts +18 -0
  274. package/node_modules/@sdd-agent-platform/core/dist/router/profile-resolution.js +127 -0
  275. package/node_modules/@sdd-agent-platform/core/dist/router/profile-resolution.js.map +1 -0
  276. package/node_modules/@sdd-agent-platform/core/dist/router/risk-policy.d.ts +6 -0
  277. package/node_modules/@sdd-agent-platform/core/dist/router/risk-policy.js +28 -0
  278. package/node_modules/@sdd-agent-platform/core/dist/router/risk-policy.js.map +1 -0
  279. package/node_modules/@sdd-agent-platform/core/dist/router/route-cache.d.ts +39 -0
  280. package/node_modules/@sdd-agent-platform/core/dist/router/route-cache.js +59 -0
  281. package/node_modules/@sdd-agent-platform/core/dist/router/route-cache.js.map +1 -0
  282. package/node_modules/@sdd-agent-platform/core/dist/router/route-projection.d.ts +12 -0
  283. package/node_modules/@sdd-agent-platform/core/dist/router/route-projection.js +127 -0
  284. package/node_modules/@sdd-agent-platform/core/dist/router/route-projection.js.map +1 -0
  285. package/node_modules/@sdd-agent-platform/core/dist/router/route-sdd-task.d.ts +3 -0
  286. package/node_modules/@sdd-agent-platform/core/dist/router/route-sdd-task.js +4 -0
  287. package/node_modules/@sdd-agent-platform/core/dist/router/route-sdd-task.js.map +1 -0
  288. package/node_modules/@sdd-agent-platform/core/dist/router/routing-rules.d.ts +4 -0
  289. package/node_modules/@sdd-agent-platform/core/dist/router/routing-rules.js +68 -0
  290. package/node_modules/@sdd-agent-platform/core/dist/router/routing-rules.js.map +1 -0
  291. package/node_modules/@sdd-agent-platform/core/dist/router/routing.d.ts +18 -0
  292. package/node_modules/@sdd-agent-platform/core/dist/router/routing.js +143 -0
  293. package/node_modules/@sdd-agent-platform/core/dist/router/routing.js.map +1 -0
  294. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-inspection.d.ts +7 -0
  295. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-inspection.js +95 -0
  296. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-inspection.js.map +1 -0
  297. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-registry.d.ts +17 -0
  298. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-registry.js +82 -0
  299. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-registry.js.map +1 -0
  300. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-validation.d.ts +26 -0
  301. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-validation.js +207 -0
  302. package/node_modules/@sdd-agent-platform/core/dist/router/runtime-validation.js.map +1 -0
  303. package/node_modules/@sdd-agent-platform/core/dist/router/team-mode.d.ts +16 -0
  304. package/node_modules/@sdd-agent-platform/core/dist/router/team-mode.js +134 -0
  305. package/node_modules/@sdd-agent-platform/core/dist/router/team-mode.js.map +1 -0
  306. package/node_modules/@sdd-agent-platform/core/dist/router.d.ts +4 -0
  307. package/node_modules/@sdd-agent-platform/core/dist/router.js +5 -0
  308. package/node_modules/@sdd-agent-platform/core/dist/router.js.map +1 -0
  309. package/node_modules/@sdd-agent-platform/core/dist/run-state/artifacts.d.ts +6 -0
  310. package/node_modules/@sdd-agent-platform/core/dist/run-state/artifacts.js +80 -0
  311. package/node_modules/@sdd-agent-platform/core/dist/run-state/artifacts.js.map +1 -0
  312. package/node_modules/@sdd-agent-platform/core/dist/run-state/events.d.ts +3 -0
  313. package/node_modules/@sdd-agent-platform/core/dist/run-state/events.js +23 -0
  314. package/node_modules/@sdd-agent-platform/core/dist/run-state/events.js.map +1 -0
  315. package/node_modules/@sdd-agent-platform/core/dist/run-state/inspect-run.d.ts +100 -0
  316. package/node_modules/@sdd-agent-platform/core/dist/run-state/inspect-run.js +117 -0
  317. package/node_modules/@sdd-agent-platform/core/dist/run-state/inspect-run.js.map +1 -0
  318. package/node_modules/@sdd-agent-platform/core/dist/run-state/invocation-ledger.d.ts +18 -0
  319. package/node_modules/@sdd-agent-platform/core/dist/run-state/invocation-ledger.js +99 -0
  320. package/node_modules/@sdd-agent-platform/core/dist/run-state/invocation-ledger.js.map +1 -0
  321. package/node_modules/@sdd-agent-platform/core/dist/run-state/model.d.ts +179 -0
  322. package/node_modules/@sdd-agent-platform/core/dist/run-state/model.js +2 -0
  323. package/node_modules/@sdd-agent-platform/core/dist/run-state/model.js.map +1 -0
  324. package/node_modules/@sdd-agent-platform/core/dist/run-state/run-index.d.ts +97 -0
  325. package/node_modules/@sdd-agent-platform/core/dist/run-state/run-index.js +238 -0
  326. package/node_modules/@sdd-agent-platform/core/dist/run-state/run-index.js.map +1 -0
  327. package/node_modules/@sdd-agent-platform/core/dist/run-state/run-state.d.ts +20 -0
  328. package/node_modules/@sdd-agent-platform/core/dist/run-state/run-state.js +359 -0
  329. package/node_modules/@sdd-agent-platform/core/dist/run-state/run-state.js.map +1 -0
  330. package/node_modules/@sdd-agent-platform/core/dist/run-state.d.ts +7 -0
  331. package/node_modules/@sdd-agent-platform/core/dist/run-state.js +8 -0
  332. package/node_modules/@sdd-agent-platform/core/dist/run-state.js.map +1 -0
  333. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/build.d.ts +2 -0
  334. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/build.js +61 -0
  335. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/build.js.map +1 -0
  336. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/findings.d.ts +4 -0
  337. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/findings.js +274 -0
  338. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/findings.js.map +1 -0
  339. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/model.d.ts +175 -0
  340. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/model.js +2 -0
  341. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis/model.js.map +1 -0
  342. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis.d.ts +3 -0
  343. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis.js +4 -0
  344. package/node_modules/@sdd-agent-platform/core/dist/runtime-analysis.js.map +1 -0
  345. package/node_modules/@sdd-agent-platform/core/dist/runtime-paths.d.ts +25 -0
  346. package/node_modules/@sdd-agent-platform/core/dist/runtime-paths.js +112 -0
  347. package/node_modules/@sdd-agent-platform/core/dist/runtime-paths.js.map +1 -0
  348. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/context.d.ts +18 -0
  349. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/context.js +89 -0
  350. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/context.js.map +1 -0
  351. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/run-binding.d.ts +6 -0
  352. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/run-binding.js +79 -0
  353. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/run-binding.js.map +1 -0
  354. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-inspection.d.ts +6 -0
  355. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-inspection.js +31 -0
  356. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-inspection.js.map +1 -0
  357. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-parser.d.ts +78 -0
  358. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-parser.js +458 -0
  359. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-parser.js.map +1 -0
  360. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-rendering.d.ts +5 -0
  361. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-rendering.js +77 -0
  362. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs/task-rendering.js.map +1 -0
  363. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs.d.ts +5 -0
  364. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs.js +6 -0
  365. package/node_modules/@sdd-agent-platform/core/dist/sdd-docs.js.map +1 -0
  366. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime/contracts.d.ts +37 -0
  367. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime/contracts.js +2 -0
  368. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime/contracts.js.map +1 -0
  369. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime/runtime.d.ts +71 -0
  370. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime/runtime.js +275 -0
  371. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime/runtime.js.map +1 -0
  372. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime.d.ts +2 -0
  373. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime.js +3 -0
  374. package/node_modules/@sdd-agent-platform/core/dist/stage-runtime.js.map +1 -0
  375. package/node_modules/@sdd-agent-platform/core/dist/status/project-status.d.ts +105 -0
  376. package/node_modules/@sdd-agent-platform/core/dist/status/project-status.js +251 -0
  377. package/node_modules/@sdd-agent-platform/core/dist/status/project-status.js.map +1 -0
  378. package/node_modules/@sdd-agent-platform/core/dist/status.d.ts +2 -0
  379. package/node_modules/@sdd-agent-platform/core/dist/status.js +3 -0
  380. package/node_modules/@sdd-agent-platform/core/dist/status.js.map +1 -0
  381. package/node_modules/@sdd-agent-platform/core/dist/storage/json-io.d.ts +1 -0
  382. package/node_modules/@sdd-agent-platform/core/dist/storage/json-io.js +11 -0
  383. package/node_modules/@sdd-agent-platform/core/dist/storage/json-io.js.map +1 -0
  384. package/node_modules/@sdd-agent-platform/core/dist/storage/runtime-store.d.ts +112 -0
  385. package/node_modules/@sdd-agent-platform/core/dist/storage/runtime-store.js +362 -0
  386. package/node_modules/@sdd-agent-platform/core/dist/storage/runtime-store.js.map +1 -0
  387. package/node_modules/@sdd-agent-platform/core/dist/subagents/contracts.d.ts +41 -0
  388. package/node_modules/@sdd-agent-platform/core/dist/subagents/contracts.js +2 -0
  389. package/node_modules/@sdd-agent-platform/core/dist/subagents/contracts.js.map +1 -0
  390. package/node_modules/@sdd-agent-platform/core/dist/subagents/runtime.d.ts +43 -0
  391. package/node_modules/@sdd-agent-platform/core/dist/subagents/runtime.js +262 -0
  392. package/node_modules/@sdd-agent-platform/core/dist/subagents/runtime.js.map +1 -0
  393. package/node_modules/@sdd-agent-platform/core/dist/subagents.d.ts +2 -0
  394. package/node_modules/@sdd-agent-platform/core/dist/subagents.js +3 -0
  395. package/node_modules/@sdd-agent-platform/core/dist/subagents.js.map +1 -0
  396. package/node_modules/@sdd-agent-platform/core/dist/sync-back/apply.d.ts +17 -0
  397. package/node_modules/@sdd-agent-platform/core/dist/sync-back/apply.js +221 -0
  398. package/node_modules/@sdd-agent-platform/core/dist/sync-back/apply.js.map +1 -0
  399. package/node_modules/@sdd-agent-platform/core/dist/sync-back/inspect.d.ts +91 -0
  400. package/node_modules/@sdd-agent-platform/core/dist/sync-back/inspect.js +395 -0
  401. package/node_modules/@sdd-agent-platform/core/dist/sync-back/inspect.js.map +1 -0
  402. package/node_modules/@sdd-agent-platform/core/dist/sync-back.d.ts +2 -0
  403. package/node_modules/@sdd-agent-platform/core/dist/sync-back.js +3 -0
  404. package/node_modules/@sdd-agent-platform/core/dist/sync-back.js.map +1 -0
  405. package/node_modules/@sdd-agent-platform/core/dist/task-risk-profile.d.ts +33 -0
  406. package/node_modules/@sdd-agent-platform/core/dist/task-risk-profile.js +153 -0
  407. package/node_modules/@sdd-agent-platform/core/dist/task-risk-profile.js.map +1 -0
  408. package/node_modules/@sdd-agent-platform/core/dist/test-support/fixtures.d.ts +21 -0
  409. package/node_modules/@sdd-agent-platform/core/dist/test-support/fixtures.js +363 -0
  410. package/node_modules/@sdd-agent-platform/core/dist/test-support/fixtures.js.map +1 -0
  411. package/node_modules/@sdd-agent-platform/core/dist/test-support/run-state.d.ts +2 -0
  412. package/node_modules/@sdd-agent-platform/core/dist/test-support/run-state.js +55 -0
  413. package/node_modules/@sdd-agent-platform/core/dist/test-support/run-state.js.map +1 -0
  414. package/node_modules/@sdd-agent-platform/core/dist/test-support.d.ts +2 -0
  415. package/node_modules/@sdd-agent-platform/core/dist/test-support.js +3 -0
  416. package/node_modules/@sdd-agent-platform/core/dist/test-support.js.map +1 -0
  417. package/node_modules/@sdd-agent-platform/core/dist/tsconfig.tsbuildinfo +1 -0
  418. package/node_modules/@sdd-agent-platform/core/dist/verification/goal-verify.d.ts +50 -0
  419. package/node_modules/@sdd-agent-platform/core/dist/verification/goal-verify.js +514 -0
  420. package/node_modules/@sdd-agent-platform/core/dist/verification/goal-verify.js.map +1 -0
  421. package/node_modules/@sdd-agent-platform/core/dist/verification/rendering.d.ts +51 -0
  422. package/node_modules/@sdd-agent-platform/core/dist/verification/rendering.js +119 -0
  423. package/node_modules/@sdd-agent-platform/core/dist/verification/rendering.js.map +1 -0
  424. package/node_modules/@sdd-agent-platform/core/dist/verification/single-task-loop.d.ts +29 -0
  425. package/node_modules/@sdd-agent-platform/core/dist/verification/single-task-loop.js +332 -0
  426. package/node_modules/@sdd-agent-platform/core/dist/verification/single-task-loop.js.map +1 -0
  427. package/node_modules/@sdd-agent-platform/core/dist/verification/test-runtime.d.ts +62 -0
  428. package/node_modules/@sdd-agent-platform/core/dist/verification/test-runtime.js +591 -0
  429. package/node_modules/@sdd-agent-platform/core/dist/verification/test-runtime.js.map +1 -0
  430. package/node_modules/@sdd-agent-platform/core/dist/verification/verify-contract.d.ts +42 -0
  431. package/node_modules/@sdd-agent-platform/core/dist/verification/verify-contract.js +201 -0
  432. package/node_modules/@sdd-agent-platform/core/dist/verification/verify-contract.js.map +1 -0
  433. package/node_modules/@sdd-agent-platform/core/dist/verification.d.ts +6 -0
  434. package/node_modules/@sdd-agent-platform/core/dist/verification.js +6 -0
  435. package/node_modules/@sdd-agent-platform/core/dist/verification.js.map +1 -0
  436. package/node_modules/@sdd-agent-platform/core/dist/work-units/contracts.d.ts +24 -0
  437. package/node_modules/@sdd-agent-platform/core/dist/work-units/contracts.js +2 -0
  438. package/node_modules/@sdd-agent-platform/core/dist/work-units/contracts.js.map +1 -0
  439. package/node_modules/@sdd-agent-platform/core/dist/work-units/runtime.d.ts +21 -0
  440. package/node_modules/@sdd-agent-platform/core/dist/work-units/runtime.js +90 -0
  441. package/node_modules/@sdd-agent-platform/core/dist/work-units/runtime.js.map +1 -0
  442. package/node_modules/@sdd-agent-platform/core/dist/work-units.d.ts +2 -0
  443. package/node_modules/@sdd-agent-platform/core/dist/work-units.js +3 -0
  444. package/node_modules/@sdd-agent-platform/core/dist/work-units.js.map +1 -0
  445. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/affected-file-conflicts.d.ts +12 -0
  446. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/affected-file-conflicts.js +60 -0
  447. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/affected-file-conflicts.js.map +1 -0
  448. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/dependencies.d.ts +25 -0
  449. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/dependencies.js +64 -0
  450. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/dependencies.js.map +1 -0
  451. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/resolve.d.ts +50 -0
  452. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/resolve.js +124 -0
  453. package/node_modules/@sdd-agent-platform/core/dist/workflow-state/resolve.js.map +1 -0
  454. package/node_modules/@sdd-agent-platform/core/dist/workflow-state.d.ts +1 -0
  455. package/node_modules/@sdd-agent-platform/core/dist/workflow-state.js +2 -0
  456. package/node_modules/@sdd-agent-platform/core/dist/workflow-state.js.map +1 -0
  457. package/node_modules/@sdd-agent-platform/core/dist/worktree/isolation.d.ts +40 -0
  458. package/node_modules/@sdd-agent-platform/core/dist/worktree/isolation.js +89 -0
  459. package/node_modules/@sdd-agent-platform/core/dist/worktree/isolation.js.map +1 -0
  460. package/node_modules/@sdd-agent-platform/core/dist/worktree/lifecycle.d.ts +39 -0
  461. package/node_modules/@sdd-agent-platform/core/dist/worktree/lifecycle.js +221 -0
  462. package/node_modules/@sdd-agent-platform/core/dist/worktree/lifecycle.js.map +1 -0
  463. package/node_modules/@sdd-agent-platform/core/dist/worktree.d.ts +2 -0
  464. package/node_modules/@sdd-agent-platform/core/dist/worktree.js +3 -0
  465. package/node_modules/@sdd-agent-platform/core/dist/worktree.js.map +1 -0
  466. package/node_modules/@sdd-agent-platform/core/package.json +40 -0
  467. package/node_modules/@sdd-agent-platform/core/src/ai-tools.test.ts +138 -0
  468. package/node_modules/@sdd-agent-platform/core/src/ai-tools.ts +574 -0
  469. package/node_modules/@sdd-agent-platform/core/src/artifacts/ingestion.test.ts +189 -0
  470. package/node_modules/@sdd-agent-platform/core/src/artifacts/ingestion.ts +222 -0
  471. package/node_modules/@sdd-agent-platform/core/src/artifacts/sdd-evidence.test.ts +28 -0
  472. package/node_modules/@sdd-agent-platform/core/src/artifacts/sdd-evidence.ts +302 -0
  473. package/node_modules/@sdd-agent-platform/core/src/artifacts/sdd-result.test.ts +135 -0
  474. package/node_modules/@sdd-agent-platform/core/src/artifacts/sdd-result.ts +231 -0
  475. package/node_modules/@sdd-agent-platform/core/src/artifacts/templates.ts +99 -0
  476. package/node_modules/@sdd-agent-platform/core/src/artifacts.ts +4 -0
  477. package/node_modules/@sdd-agent-platform/core/src/coding-facts/contracts.ts +79 -0
  478. package/node_modules/@sdd-agent-platform/core/src/coding-facts.ts +1 -0
  479. package/node_modules/@sdd-agent-platform/core/src/config/init-project.test.ts +303 -0
  480. package/node_modules/@sdd-agent-platform/core/src/config/init-project.ts +119 -0
  481. package/node_modules/@sdd-agent-platform/core/src/config/project-config.ts +259 -0
  482. package/node_modules/@sdd-agent-platform/core/src/config/project-detection.ts +147 -0
  483. package/node_modules/@sdd-agent-platform/core/src/config/project-status.ts +1 -0
  484. package/node_modules/@sdd-agent-platform/core/src/config/starter-documents.ts +435 -0
  485. package/node_modules/@sdd-agent-platform/core/src/context/budget.ts +30 -0
  486. package/node_modules/@sdd-agent-platform/core/src/context/build-package.ts +317 -0
  487. package/node_modules/@sdd-agent-platform/core/src/context/command-summary.ts +45 -0
  488. package/node_modules/@sdd-agent-platform/core/src/context/context-build.test.ts +188 -0
  489. package/node_modules/@sdd-agent-platform/core/src/context/evidence-summary.ts +144 -0
  490. package/node_modules/@sdd-agent-platform/core/src/context/log-worker.ts +48 -0
  491. package/node_modules/@sdd-agent-platform/core/src/context/source-refs.ts +41 -0
  492. package/node_modules/@sdd-agent-platform/core/src/context-offload/contracts.ts +47 -0
  493. package/node_modules/@sdd-agent-platform/core/src/context-offload/runtime.test.ts +71 -0
  494. package/node_modules/@sdd-agent-platform/core/src/context-offload/runtime.ts +178 -0
  495. package/node_modules/@sdd-agent-platform/core/src/context-offload.ts +2 -0
  496. package/node_modules/@sdd-agent-platform/core/src/context.ts +6 -0
  497. package/node_modules/@sdd-agent-platform/core/src/contracts/issues.ts +13 -0
  498. package/node_modules/@sdd-agent-platform/core/src/contracts.test.ts +9 -0
  499. package/node_modules/@sdd-agent-platform/core/src/contracts.ts +114 -0
  500. package/node_modules/@sdd-agent-platform/core/src/delegation/delegation.test.ts +183 -0
  501. package/node_modules/@sdd-agent-platform/core/src/delegation/model.ts +23 -0
  502. package/node_modules/@sdd-agent-platform/core/src/delegation/queue.ts +58 -0
  503. package/node_modules/@sdd-agent-platform/core/src/delegation/run-state.ts +14 -0
  504. package/node_modules/@sdd-agent-platform/core/src/delegation/state-machine.ts +90 -0
  505. package/node_modules/@sdd-agent-platform/core/src/delegation/validation.ts +124 -0
  506. package/node_modules/@sdd-agent-platform/core/src/delegation.ts +26 -0
  507. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/ai-entries.ts +28 -0
  508. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/document-chain.ts +112 -0
  509. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/local-run-index.ts +27 -0
  510. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/project.ts +84 -0
  511. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/registries.ts +252 -0
  512. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/run-evidence.ts +330 -0
  513. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/run-records.ts +79 -0
  514. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/run-trust.ts +128 -0
  515. package/node_modules/@sdd-agent-platform/core/src/doctor/checks/runtime-contracts.ts +300 -0
  516. package/node_modules/@sdd-agent-platform/core/src/doctor/doctor.test.ts +545 -0
  517. package/node_modules/@sdd-agent-platform/core/src/doctor/doctor.ts +156 -0
  518. package/node_modules/@sdd-agent-platform/core/src/doctor/model.ts +13 -0
  519. package/node_modules/@sdd-agent-platform/core/src/doctor/summary.ts +11 -0
  520. package/node_modules/@sdd-agent-platform/core/src/doctor.ts +2 -0
  521. package/node_modules/@sdd-agent-platform/core/src/evidence-runtime/contracts.ts +37 -0
  522. package/node_modules/@sdd-agent-platform/core/src/evidence-runtime.ts +1 -0
  523. package/node_modules/@sdd-agent-platform/core/src/execution/agent-execution-records.ts +190 -0
  524. package/node_modules/@sdd-agent-platform/core/src/execution/background-executor.test.ts +180 -0
  525. package/node_modules/@sdd-agent-platform/core/src/execution/background-executor.ts +305 -0
  526. package/node_modules/@sdd-agent-platform/core/src/execution/foreground-subagents.test.ts +97 -0
  527. package/node_modules/@sdd-agent-platform/core/src/execution/foreground-subagents.ts +453 -0
  528. package/node_modules/@sdd-agent-platform/core/src/execution/host-invocation.ts +225 -0
  529. package/node_modules/@sdd-agent-platform/core/src/execution/resident-worker.test.ts +127 -0
  530. package/node_modules/@sdd-agent-platform/core/src/execution/resident-worker.ts +428 -0
  531. package/node_modules/@sdd-agent-platform/core/src/execution/wave-executor.test.ts +107 -0
  532. package/node_modules/@sdd-agent-platform/core/src/execution/wave-executor.ts +231 -0
  533. package/node_modules/@sdd-agent-platform/core/src/execution.ts +5 -0
  534. package/node_modules/@sdd-agent-platform/core/src/governance/policy.test.ts +55 -0
  535. package/node_modules/@sdd-agent-platform/core/src/governance/policy.ts +175 -0
  536. package/node_modules/@sdd-agent-platform/core/src/governance.ts +1 -0
  537. package/node_modules/@sdd-agent-platform/core/src/index.test.ts +25 -0
  538. package/node_modules/@sdd-agent-platform/core/src/index.ts +1 -0
  539. package/node_modules/@sdd-agent-platform/core/src/instructions.test.ts +43 -0
  540. package/node_modules/@sdd-agent-platform/core/src/instructions.ts +165 -0
  541. package/node_modules/@sdd-agent-platform/core/src/lifecycle/decision-gate.test.ts +174 -0
  542. package/node_modules/@sdd-agent-platform/core/src/lifecycle/decision-gate.ts +373 -0
  543. package/node_modules/@sdd-agent-platform/core/src/lifecycle/rendering.ts +29 -0
  544. package/node_modules/@sdd-agent-platform/core/src/lifecycle/risk-signals.ts +146 -0
  545. package/node_modules/@sdd-agent-platform/core/src/lifecycle/ship.ts +241 -0
  546. package/node_modules/@sdd-agent-platform/core/src/lifecycle.ts +4 -0
  547. package/node_modules/@sdd-agent-platform/core/src/orchestration/contracts.ts +50 -0
  548. package/node_modules/@sdd-agent-platform/core/src/orchestration/index.ts +2 -0
  549. package/node_modules/@sdd-agent-platform/core/src/orchestration/runtime.ts +342 -0
  550. package/node_modules/@sdd-agent-platform/core/src/path-safety.test.ts +22 -0
  551. package/node_modules/@sdd-agent-platform/core/src/path-safety.ts +37 -0
  552. package/node_modules/@sdd-agent-platform/core/src/phase8-contracts.test.ts +242 -0
  553. package/node_modules/@sdd-agent-platform/core/src/phase8-projection-compat.test.ts +153 -0
  554. package/node_modules/@sdd-agent-platform/core/src/phase8-risk-kernel.test.ts +272 -0
  555. package/node_modules/@sdd-agent-platform/core/src/planning/task-graph.test.ts +86 -0
  556. package/node_modules/@sdd-agent-platform/core/src/planning/task-graph.ts +222 -0
  557. package/node_modules/@sdd-agent-platform/core/src/planning/wave-plan.test.ts +76 -0
  558. package/node_modules/@sdd-agent-platform/core/src/planning/wave-plan.ts +160 -0
  559. package/node_modules/@sdd-agent-platform/core/src/planning.ts +2 -0
  560. package/node_modules/@sdd-agent-platform/core/src/registries/agent-capability-catalog.ts +174 -0
  561. package/node_modules/@sdd-agent-platform/core/src/registries/agent-registry.ts +146 -0
  562. package/node_modules/@sdd-agent-platform/core/src/registries/agent-runtime-static.ts +102 -0
  563. package/node_modules/@sdd-agent-platform/core/src/registries/capability-sources.ts +30 -0
  564. package/node_modules/@sdd-agent-platform/core/src/registries/command-team-runtime.ts +309 -0
  565. package/node_modules/@sdd-agent-platform/core/src/registries/eval-learning-context.ts +246 -0
  566. package/node_modules/@sdd-agent-platform/core/src/registries/query-status.ts +119 -0
  567. package/node_modules/@sdd-agent-platform/core/src/registries/registries.test.ts +404 -0
  568. package/node_modules/@sdd-agent-platform/core/src/registries/skill-capabilities.ts +37 -0
  569. package/node_modules/@sdd-agent-platform/core/src/registries/tool-capabilities.ts +135 -0
  570. package/node_modules/@sdd-agent-platform/core/src/registries/tool-plugins.ts +132 -0
  571. package/node_modules/@sdd-agent-platform/core/src/registries/worker-adapters.ts +144 -0
  572. package/node_modules/@sdd-agent-platform/core/src/registries/workflow-gates.ts +111 -0
  573. package/node_modules/@sdd-agent-platform/core/src/registries.ts +42 -0
  574. package/node_modules/@sdd-agent-platform/core/src/risk/consumer-diagnostics.ts +97 -0
  575. package/node_modules/@sdd-agent-platform/core/src/risk/contracts.ts +63 -0
  576. package/node_modules/@sdd-agent-platform/core/src/risk/kernel.ts +233 -0
  577. package/node_modules/@sdd-agent-platform/core/src/risk/legacy-adapters.ts +266 -0
  578. package/node_modules/@sdd-agent-platform/core/src/risk/workflow-gates.ts +203 -0
  579. package/node_modules/@sdd-agent-platform/core/src/risk.ts +5 -0
  580. package/node_modules/@sdd-agent-platform/core/src/router/agent-runtime-config.ts +308 -0
  581. package/node_modules/@sdd-agent-platform/core/src/router/agent-runtime.ts +323 -0
  582. package/node_modules/@sdd-agent-platform/core/src/router/profile-resolution.ts +154 -0
  583. package/node_modules/@sdd-agent-platform/core/src/router/risk-policy.ts +33 -0
  584. package/node_modules/@sdd-agent-platform/core/src/router/route-cache.ts +100 -0
  585. package/node_modules/@sdd-agent-platform/core/src/router/route-projection.ts +146 -0
  586. package/node_modules/@sdd-agent-platform/core/src/router/route-sdd-task.test.ts +281 -0
  587. package/node_modules/@sdd-agent-platform/core/src/router/route-sdd-task.ts +3 -0
  588. package/node_modules/@sdd-agent-platform/core/src/router/routing-rules.ts +73 -0
  589. package/node_modules/@sdd-agent-platform/core/src/router/routing.ts +163 -0
  590. package/node_modules/@sdd-agent-platform/core/src/router/runtime-inspection.ts +117 -0
  591. package/node_modules/@sdd-agent-platform/core/src/router/runtime-registry.ts +123 -0
  592. package/node_modules/@sdd-agent-platform/core/src/router/runtime-validation.ts +248 -0
  593. package/node_modules/@sdd-agent-platform/core/src/router/team-mode.ts +170 -0
  594. package/node_modules/@sdd-agent-platform/core/src/router.ts +4 -0
  595. package/node_modules/@sdd-agent-platform/core/src/run-state/artifacts.ts +85 -0
  596. package/node_modules/@sdd-agent-platform/core/src/run-state/events.ts +27 -0
  597. package/node_modules/@sdd-agent-platform/core/src/run-state/inspect-run.ts +207 -0
  598. package/node_modules/@sdd-agent-platform/core/src/run-state/invocation-ledger.ts +109 -0
  599. package/node_modules/@sdd-agent-platform/core/src/run-state/model.ts +204 -0
  600. package/node_modules/@sdd-agent-platform/core/src/run-state/run-index.test.ts +52 -0
  601. package/node_modules/@sdd-agent-platform/core/src/run-state/run-index.ts +356 -0
  602. package/node_modules/@sdd-agent-platform/core/src/run-state/run-state.test.ts +67 -0
  603. package/node_modules/@sdd-agent-platform/core/src/run-state/run-state.ts +402 -0
  604. package/node_modules/@sdd-agent-platform/core/src/run-state.ts +7 -0
  605. package/node_modules/@sdd-agent-platform/core/src/runtime-analysis/build.ts +63 -0
  606. package/node_modules/@sdd-agent-platform/core/src/runtime-analysis/findings.ts +296 -0
  607. package/node_modules/@sdd-agent-platform/core/src/runtime-analysis/model.ts +152 -0
  608. package/node_modules/@sdd-agent-platform/core/src/runtime-analysis.test.ts +68 -0
  609. package/node_modules/@sdd-agent-platform/core/src/runtime-analysis.ts +3 -0
  610. package/node_modules/@sdd-agent-platform/core/src/runtime-paths.ts +136 -0
  611. package/node_modules/@sdd-agent-platform/core/src/sdd-docs/context.ts +111 -0
  612. package/node_modules/@sdd-agent-platform/core/src/sdd-docs/run-binding.ts +86 -0
  613. package/node_modules/@sdd-agent-platform/core/src/sdd-docs/task-inspection.ts +39 -0
  614. package/node_modules/@sdd-agent-platform/core/src/sdd-docs/task-parser.test.ts +262 -0
  615. package/node_modules/@sdd-agent-platform/core/src/sdd-docs/task-parser.ts +581 -0
  616. package/node_modules/@sdd-agent-platform/core/src/sdd-docs/task-rendering.ts +81 -0
  617. package/node_modules/@sdd-agent-platform/core/src/sdd-docs.ts +5 -0
  618. package/node_modules/@sdd-agent-platform/core/src/stage-runtime/contracts.ts +40 -0
  619. package/node_modules/@sdd-agent-platform/core/src/stage-runtime/runtime.test.ts +209 -0
  620. package/node_modules/@sdd-agent-platform/core/src/stage-runtime/runtime.ts +352 -0
  621. package/node_modules/@sdd-agent-platform/core/src/stage-runtime.ts +2 -0
  622. package/node_modules/@sdd-agent-platform/core/src/status/project-status.test.ts +288 -0
  623. package/node_modules/@sdd-agent-platform/core/src/status/project-status.ts +362 -0
  624. package/node_modules/@sdd-agent-platform/core/src/status.ts +2 -0
  625. package/node_modules/@sdd-agent-platform/core/src/storage/json-io.ts +10 -0
  626. package/node_modules/@sdd-agent-platform/core/src/storage/runtime-store.test.ts +125 -0
  627. package/node_modules/@sdd-agent-platform/core/src/storage/runtime-store.ts +480 -0
  628. package/node_modules/@sdd-agent-platform/core/src/subagents/contracts.ts +45 -0
  629. package/node_modules/@sdd-agent-platform/core/src/subagents/runtime.test.ts +232 -0
  630. package/node_modules/@sdd-agent-platform/core/src/subagents/runtime.ts +307 -0
  631. package/node_modules/@sdd-agent-platform/core/src/subagents.ts +2 -0
  632. package/node_modules/@sdd-agent-platform/core/src/sync-back/apply.ts +248 -0
  633. package/node_modules/@sdd-agent-platform/core/src/sync-back/inspect.ts +522 -0
  634. package/node_modules/@sdd-agent-platform/core/src/sync-back/sync-back.test.ts +446 -0
  635. package/node_modules/@sdd-agent-platform/core/src/sync-back.ts +2 -0
  636. package/node_modules/@sdd-agent-platform/core/src/task-risk-profile.ts +193 -0
  637. package/node_modules/@sdd-agent-platform/core/src/test-support/fixtures.ts +377 -0
  638. package/node_modules/@sdd-agent-platform/core/src/test-support/run-state.ts +56 -0
  639. package/node_modules/@sdd-agent-platform/core/src/test-support.ts +2 -0
  640. package/node_modules/@sdd-agent-platform/core/src/verification/goal-verify.test.ts +335 -0
  641. package/node_modules/@sdd-agent-platform/core/src/verification/goal-verify.ts +615 -0
  642. package/node_modules/@sdd-agent-platform/core/src/verification/rendering.ts +171 -0
  643. package/node_modules/@sdd-agent-platform/core/src/verification/single-task-loop.test.ts +195 -0
  644. package/node_modules/@sdd-agent-platform/core/src/verification/single-task-loop.ts +396 -0
  645. package/node_modules/@sdd-agent-platform/core/src/verification/test-runtime.test.ts +392 -0
  646. package/node_modules/@sdd-agent-platform/core/src/verification/test-runtime.ts +707 -0
  647. package/node_modules/@sdd-agent-platform/core/src/verification/verify-contract.test.ts +65 -0
  648. package/node_modules/@sdd-agent-platform/core/src/verification/verify-contract.ts +247 -0
  649. package/node_modules/@sdd-agent-platform/core/src/verification.ts +6 -0
  650. package/node_modules/@sdd-agent-platform/core/src/work-units/contracts.ts +26 -0
  651. package/node_modules/@sdd-agent-platform/core/src/work-units/runtime.test.ts +88 -0
  652. package/node_modules/@sdd-agent-platform/core/src/work-units/runtime.ts +112 -0
  653. package/node_modules/@sdd-agent-platform/core/src/work-units.ts +2 -0
  654. package/node_modules/@sdd-agent-platform/core/src/workflow-state/affected-file-conflicts.ts +79 -0
  655. package/node_modules/@sdd-agent-platform/core/src/workflow-state/dependencies.test.ts +32 -0
  656. package/node_modules/@sdd-agent-platform/core/src/workflow-state/dependencies.ts +92 -0
  657. package/node_modules/@sdd-agent-platform/core/src/workflow-state/resolve.test.ts +115 -0
  658. package/node_modules/@sdd-agent-platform/core/src/workflow-state/resolve.ts +175 -0
  659. package/node_modules/@sdd-agent-platform/core/src/workflow-state.ts +1 -0
  660. package/node_modules/@sdd-agent-platform/core/src/worktree/isolation.ts +130 -0
  661. package/node_modules/@sdd-agent-platform/core/src/worktree/lifecycle.ts +269 -0
  662. package/node_modules/@sdd-agent-platform/core/src/worktree/worktree.test.ts +150 -0
  663. package/node_modules/@sdd-agent-platform/core/src/worktree.ts +2 -0
  664. package/node_modules/@sdd-agent-platform/core/tsconfig.json +15 -0
  665. package/package.json +67 -52
  666. package/packages/cli/dist/args.d.ts +23 -0
  667. package/packages/cli/dist/args.js +89 -0
  668. package/packages/cli/dist/args.js.map +1 -0
  669. package/packages/cli/dist/commands/ai-tools.d.ts +6 -0
  670. package/packages/cli/dist/commands/ai-tools.js +18 -0
  671. package/packages/cli/dist/commands/ai-tools.js.map +1 -0
  672. package/packages/cli/dist/commands/artifact.d.ts +6 -0
  673. package/packages/cli/dist/commands/artifact.js +168 -0
  674. package/packages/cli/dist/commands/artifact.js.map +1 -0
  675. package/packages/cli/dist/commands/context.d.ts +6 -0
  676. package/packages/cli/dist/commands/context.js +51 -0
  677. package/packages/cli/dist/commands/context.js.map +1 -0
  678. package/packages/cli/dist/commands/doctor.d.ts +6 -0
  679. package/packages/cli/dist/commands/doctor.js +29 -0
  680. package/packages/cli/dist/commands/doctor.js.map +1 -0
  681. package/packages/cli/dist/commands/execution.d.ts +6 -0
  682. package/packages/cli/dist/commands/execution.js +284 -0
  683. package/packages/cli/dist/commands/execution.js.map +1 -0
  684. package/packages/cli/dist/commands/governance.d.ts +6 -0
  685. package/packages/cli/dist/commands/governance.js +37 -0
  686. package/packages/cli/dist/commands/governance.js.map +1 -0
  687. package/packages/cli/dist/commands/init.d.ts +6 -0
  688. package/packages/cli/dist/commands/init.js +22 -0
  689. package/packages/cli/dist/commands/init.js.map +1 -0
  690. package/packages/cli/dist/commands/instructions.d.ts +6 -0
  691. package/packages/cli/dist/commands/instructions.js +15 -0
  692. package/packages/cli/dist/commands/instructions.js.map +1 -0
  693. package/packages/cli/dist/commands/lifecycle.d.ts +6 -0
  694. package/packages/cli/dist/commands/lifecycle.js +112 -0
  695. package/packages/cli/dist/commands/lifecycle.js.map +1 -0
  696. package/packages/cli/dist/commands/registry/contracts.d.ts +2 -0
  697. package/packages/cli/dist/commands/registry/contracts.js +62 -0
  698. package/packages/cli/dist/commands/registry/contracts.js.map +1 -0
  699. package/packages/cli/dist/commands/registry/core.d.ts +2 -0
  700. package/packages/cli/dist/commands/registry/core.js +75 -0
  701. package/packages/cli/dist/commands/registry/core.js.map +1 -0
  702. package/packages/cli/dist/commands/registry/platform.d.ts +2 -0
  703. package/packages/cli/dist/commands/registry/platform.js +123 -0
  704. package/packages/cli/dist/commands/registry/platform.js.map +1 -0
  705. package/packages/cli/dist/commands/registry/runtime.d.ts +2 -0
  706. package/packages/cli/dist/commands/registry/runtime.js +142 -0
  707. package/packages/cli/dist/commands/registry/runtime.js.map +1 -0
  708. package/packages/cli/dist/commands/registry/types.d.ts +5 -0
  709. package/packages/cli/dist/commands/registry/types.js +2 -0
  710. package/packages/cli/dist/commands/registry/types.js.map +1 -0
  711. package/packages/cli/dist/commands/registry.d.ts +3 -0
  712. package/packages/cli/dist/commands/registry.js +11 -0
  713. package/packages/cli/dist/commands/registry.js.map +1 -0
  714. package/packages/cli/dist/commands/run.d.ts +6 -0
  715. package/packages/cli/dist/commands/run.js +173 -0
  716. package/packages/cli/dist/commands/run.js.map +1 -0
  717. package/packages/cli/dist/commands/ship.d.ts +6 -0
  718. package/packages/cli/dist/commands/ship.js +33 -0
  719. package/packages/cli/dist/commands/ship.js.map +1 -0
  720. package/packages/cli/dist/commands/status.d.ts +6 -0
  721. package/packages/cli/dist/commands/status.js +25 -0
  722. package/packages/cli/dist/commands/status.js.map +1 -0
  723. package/packages/cli/dist/commands/sync-back.d.ts +6 -0
  724. package/packages/cli/dist/commands/sync-back.js +82 -0
  725. package/packages/cli/dist/commands/sync-back.js.map +1 -0
  726. package/packages/cli/dist/commands/tasks.d.ts +6 -0
  727. package/packages/cli/dist/commands/tasks.js +78 -0
  728. package/packages/cli/dist/commands/tasks.js.map +1 -0
  729. package/packages/cli/dist/commands/test.d.ts +6 -0
  730. package/packages/cli/dist/commands/test.js +106 -0
  731. package/packages/cli/dist/commands/test.js.map +1 -0
  732. package/packages/cli/dist/commands/verifies.d.ts +6 -0
  733. package/packages/cli/dist/commands/verifies.js +83 -0
  734. package/packages/cli/dist/commands/verifies.js.map +1 -0
  735. package/packages/cli/dist/commands/verify.d.ts +6 -0
  736. package/packages/cli/dist/commands/verify.js +93 -0
  737. package/packages/cli/dist/commands/verify.js.map +1 -0
  738. package/packages/cli/dist/dispatch.d.ts +7 -0
  739. package/packages/cli/dist/dispatch.js +121 -0
  740. package/packages/cli/dist/dispatch.js.map +1 -0
  741. package/packages/cli/dist/help.d.ts +4 -0
  742. package/packages/cli/dist/help.js +163 -0
  743. package/packages/cli/dist/help.js.map +1 -0
  744. package/packages/cli/dist/identity.d.ts +7 -0
  745. package/packages/cli/dist/identity.js +51 -0
  746. package/packages/cli/dist/identity.js.map +1 -0
  747. package/packages/cli/dist/main.js +17 -0
  748. package/packages/cli/dist/main.js.map +1 -0
  749. package/{dist/packages/cli/src → packages/cli/dist}/options.d.ts +2 -0
  750. package/{dist/packages/cli/src → packages/cli/dist}/options.js +6 -0
  751. package/packages/cli/dist/options.js.map +1 -0
  752. package/packages/cli/dist/renderers/artifacts.d.ts +5 -0
  753. package/packages/cli/dist/renderers/artifacts.js +43 -0
  754. package/packages/cli/dist/renderers/artifacts.js.map +1 -0
  755. package/packages/cli/dist/renderers/context.d.ts +4 -0
  756. package/packages/cli/dist/renderers/context.js +47 -0
  757. package/packages/cli/dist/renderers/context.js.map +1 -0
  758. package/packages/cli/dist/renderers/doctor.d.ts +5 -0
  759. package/packages/cli/dist/renderers/doctor.js +31 -0
  760. package/packages/cli/dist/renderers/doctor.js.map +1 -0
  761. package/packages/cli/dist/renderers/execution.d.ts +13 -0
  762. package/packages/cli/dist/renderers/execution.js +133 -0
  763. package/packages/cli/dist/renderers/execution.js.map +1 -0
  764. package/packages/cli/dist/renderers/governance.d.ts +3 -0
  765. package/packages/cli/dist/renderers/governance.js +23 -0
  766. package/packages/cli/dist/renderers/governance.js.map +1 -0
  767. package/packages/cli/dist/renderers/issues.d.ts +24 -0
  768. package/packages/cli/dist/renderers/issues.js +37 -0
  769. package/packages/cli/dist/renderers/issues.js.map +1 -0
  770. package/packages/cli/dist/renderers/json.d.ts +3 -0
  771. package/packages/cli/dist/renderers/json.js +10 -0
  772. package/packages/cli/dist/renderers/json.js.map +1 -0
  773. package/packages/cli/dist/renderers/lifecycle.d.ts +2 -0
  774. package/packages/cli/dist/renderers/lifecycle.js +30 -0
  775. package/packages/cli/dist/renderers/lifecycle.js.map +1 -0
  776. package/packages/cli/dist/renderers/planning.d.ts +4 -0
  777. package/packages/cli/dist/renderers/planning.js +66 -0
  778. package/packages/cli/dist/renderers/planning.js.map +1 -0
  779. package/packages/cli/dist/renderers/registry-contracts.d.ts +10 -0
  780. package/packages/cli/dist/renderers/registry-contracts.js +128 -0
  781. package/packages/cli/dist/renderers/registry-contracts.js.map +1 -0
  782. package/packages/cli/dist/renderers/registry-core.d.ts +8 -0
  783. package/packages/cli/dist/renderers/registry-core.js +93 -0
  784. package/packages/cli/dist/renderers/registry-core.js.map +1 -0
  785. package/packages/cli/dist/renderers/registry-platform.d.ts +12 -0
  786. package/packages/cli/dist/renderers/registry-platform.js +112 -0
  787. package/packages/cli/dist/renderers/registry-platform.js.map +1 -0
  788. package/packages/cli/dist/renderers/registry-runtime.d.ts +16 -0
  789. package/packages/cli/dist/renderers/registry-runtime.js +201 -0
  790. package/packages/cli/dist/renderers/registry-runtime.js.map +1 -0
  791. package/packages/cli/dist/renderers/registry-shared.d.ts +3 -0
  792. package/packages/cli/dist/renderers/registry-shared.js +15 -0
  793. package/packages/cli/dist/renderers/registry-shared.js.map +1 -0
  794. package/packages/cli/dist/renderers/registry.d.ts +5 -0
  795. package/packages/cli/dist/renderers/registry.js +6 -0
  796. package/packages/cli/dist/renderers/registry.js.map +1 -0
  797. package/packages/cli/dist/renderers/router.d.ts +2 -0
  798. package/packages/cli/dist/renderers/router.js +32 -0
  799. package/packages/cli/dist/renderers/router.js.map +1 -0
  800. package/packages/cli/dist/renderers/workflow.d.ts +19 -0
  801. package/packages/cli/dist/renderers/workflow.js +253 -0
  802. package/packages/cli/dist/renderers/workflow.js.map +1 -0
  803. package/packages/cli/dist/renderers/worktree.d.ts +5 -0
  804. package/packages/cli/dist/renderers/worktree.js +41 -0
  805. package/packages/cli/dist/renderers/worktree.js.map +1 -0
  806. package/packages/cli/dist/test-support/run-cli.d.ts +6 -0
  807. package/packages/cli/dist/test-support/run-cli.js +15 -0
  808. package/packages/cli/dist/test-support/run-cli.js.map +1 -0
  809. package/packages/cli/dist/tsconfig.tsbuildinfo +1 -0
  810. package/packages/cli/package.json +15 -0
  811. package/packages/core/dist/ai-tools.d.ts +68 -0
  812. package/packages/core/dist/ai-tools.js +461 -0
  813. package/packages/core/dist/ai-tools.js.map +1 -0
  814. package/packages/core/dist/artifacts/ingestion.d.ts +24 -0
  815. package/packages/core/dist/artifacts/ingestion.js +181 -0
  816. package/packages/core/dist/artifacts/ingestion.js.map +1 -0
  817. package/packages/core/dist/artifacts/sdd-evidence.d.ts +47 -0
  818. package/packages/core/dist/artifacts/sdd-evidence.js +241 -0
  819. package/packages/core/dist/artifacts/sdd-evidence.js.map +1 -0
  820. package/packages/core/dist/artifacts/sdd-result.d.ts +29 -0
  821. package/packages/core/dist/artifacts/sdd-result.js +198 -0
  822. package/packages/core/dist/artifacts/sdd-result.js.map +1 -0
  823. package/packages/core/dist/artifacts/templates.d.ts +10 -0
  824. package/packages/core/dist/artifacts/templates.js +79 -0
  825. package/packages/core/dist/artifacts/templates.js.map +1 -0
  826. package/packages/core/dist/artifacts.d.ts +4 -0
  827. package/packages/core/dist/artifacts.js +5 -0
  828. package/packages/core/dist/artifacts.js.map +1 -0
  829. package/packages/core/dist/coding-facts/contracts.d.ts +71 -0
  830. package/packages/core/dist/coding-facts/contracts.js +2 -0
  831. package/packages/core/dist/coding-facts/contracts.js.map +1 -0
  832. package/packages/core/dist/coding-facts.d.ts +1 -0
  833. package/packages/core/dist/coding-facts.js +2 -0
  834. package/packages/core/dist/coding-facts.js.map +1 -0
  835. package/packages/core/dist/config/init-project.d.ts +31 -0
  836. package/packages/core/dist/config/init-project.js +88 -0
  837. package/packages/core/dist/config/init-project.js.map +1 -0
  838. package/packages/core/dist/config/project-config.d.ts +49 -0
  839. package/packages/core/dist/config/project-config.js +202 -0
  840. package/packages/core/dist/config/project-config.js.map +1 -0
  841. package/packages/core/dist/config/project-detection.d.ts +21 -0
  842. package/packages/core/dist/config/project-detection.js +111 -0
  843. package/packages/core/dist/config/project-detection.js.map +1 -0
  844. package/packages/core/dist/config/project-status.d.ts +1 -0
  845. package/packages/core/dist/config/project-status.js +2 -0
  846. package/packages/core/dist/config/project-status.js.map +1 -0
  847. package/packages/core/dist/config/starter-documents.d.ts +4 -0
  848. package/packages/core/dist/config/starter-documents.js +432 -0
  849. package/packages/core/dist/config/starter-documents.js.map +1 -0
  850. package/packages/core/dist/context/budget.d.ts +10 -0
  851. package/packages/core/dist/context/budget.js +20 -0
  852. package/packages/core/dist/context/budget.js.map +1 -0
  853. package/packages/core/dist/context/build-package.d.ts +46 -0
  854. package/packages/core/dist/context/build-package.js +244 -0
  855. package/packages/core/dist/context/build-package.js.map +1 -0
  856. package/packages/core/dist/context/command-summary.d.ts +14 -0
  857. package/packages/core/dist/context/command-summary.js +34 -0
  858. package/packages/core/dist/context/command-summary.js.map +1 -0
  859. package/packages/core/dist/context/evidence-summary.d.ts +50 -0
  860. package/packages/core/dist/context/evidence-summary.js +86 -0
  861. package/packages/core/dist/context/evidence-summary.js.map +1 -0
  862. package/packages/core/dist/context/log-worker.d.ts +19 -0
  863. package/packages/core/dist/context/log-worker.js +28 -0
  864. package/packages/core/dist/context/log-worker.js.map +1 -0
  865. package/packages/core/dist/context/source-refs.d.ts +9 -0
  866. package/packages/core/dist/context/source-refs.js +30 -0
  867. package/packages/core/dist/context/source-refs.js.map +1 -0
  868. package/packages/core/dist/context-offload/contracts.d.ts +43 -0
  869. package/packages/core/dist/context-offload/contracts.js +2 -0
  870. package/packages/core/dist/context-offload/contracts.js.map +1 -0
  871. package/packages/core/dist/context-offload/runtime.d.ts +36 -0
  872. package/packages/core/dist/context-offload/runtime.js +142 -0
  873. package/packages/core/dist/context-offload/runtime.js.map +1 -0
  874. package/packages/core/dist/context-offload.d.ts +2 -0
  875. package/packages/core/dist/context-offload.js +3 -0
  876. package/packages/core/dist/context-offload.js.map +1 -0
  877. package/packages/core/dist/context.d.ts +6 -0
  878. package/packages/core/dist/context.js +7 -0
  879. package/packages/core/dist/context.js.map +1 -0
  880. package/packages/core/dist/contracts/issues.d.ts +7 -0
  881. package/packages/core/dist/contracts/issues.js +7 -0
  882. package/packages/core/dist/contracts/issues.js.map +1 -0
  883. package/packages/core/dist/contracts.d.ts +108 -0
  884. package/packages/core/dist/contracts.js +73 -0
  885. package/packages/core/dist/contracts.js.map +1 -0
  886. package/packages/core/dist/delegation/model.d.ts +21 -0
  887. package/packages/core/dist/delegation/model.js +2 -0
  888. package/packages/core/dist/delegation/model.js.map +1 -0
  889. package/packages/core/dist/delegation/queue.d.ts +10 -0
  890. package/packages/core/dist/delegation/queue.js +47 -0
  891. package/packages/core/dist/delegation/queue.js.map +1 -0
  892. package/packages/core/dist/delegation/run-state.d.ts +2 -0
  893. package/packages/core/dist/delegation/run-state.js +13 -0
  894. package/packages/core/dist/delegation/run-state.js.map +1 -0
  895. package/packages/core/dist/delegation/state-machine.d.ts +30 -0
  896. package/packages/core/dist/delegation/state-machine.js +56 -0
  897. package/packages/core/dist/delegation/state-machine.js.map +1 -0
  898. package/packages/core/dist/delegation/validation.d.ts +28 -0
  899. package/packages/core/dist/delegation/validation.js +100 -0
  900. package/packages/core/dist/delegation/validation.js.map +1 -0
  901. package/packages/core/dist/delegation.d.ts +7 -0
  902. package/packages/core/dist/delegation.js +6 -0
  903. package/packages/core/dist/delegation.js.map +1 -0
  904. package/packages/core/dist/doctor/checks/ai-entries.d.ts +2 -0
  905. package/packages/core/dist/doctor/checks/ai-entries.js +26 -0
  906. package/packages/core/dist/doctor/checks/ai-entries.js.map +1 -0
  907. package/packages/core/dist/doctor/checks/document-chain.d.ts +2 -0
  908. package/packages/core/dist/doctor/checks/document-chain.js +104 -0
  909. package/packages/core/dist/doctor/checks/document-chain.js.map +1 -0
  910. package/packages/core/dist/doctor/checks/local-run-index.d.ts +2 -0
  911. package/packages/core/dist/doctor/checks/local-run-index.js +26 -0
  912. package/packages/core/dist/doctor/checks/local-run-index.js.map +1 -0
  913. package/packages/core/dist/doctor/checks/project.d.ts +11 -0
  914. package/packages/core/dist/doctor/checks/project.js +78 -0
  915. package/packages/core/dist/doctor/checks/project.js.map +1 -0
  916. package/packages/core/dist/doctor/checks/registries.d.ts +11 -0
  917. package/packages/core/dist/doctor/checks/registries.js +247 -0
  918. package/packages/core/dist/doctor/checks/registries.js.map +1 -0
  919. package/packages/core/dist/doctor/checks/run-evidence.d.ts +6 -0
  920. package/packages/core/dist/doctor/checks/run-evidence.js +313 -0
  921. package/packages/core/dist/doctor/checks/run-evidence.js.map +1 -0
  922. package/packages/core/dist/doctor/checks/run-records.d.ts +4 -0
  923. package/packages/core/dist/doctor/checks/run-records.js +68 -0
  924. package/packages/core/dist/doctor/checks/run-records.js.map +1 -0
  925. package/packages/core/dist/doctor/checks/run-trust.d.ts +3 -0
  926. package/packages/core/dist/doctor/checks/run-trust.js +121 -0
  927. package/packages/core/dist/doctor/checks/run-trust.js.map +1 -0
  928. package/packages/core/dist/doctor/checks/runtime-contracts.d.ts +11 -0
  929. package/packages/core/dist/doctor/checks/runtime-contracts.js +279 -0
  930. package/packages/core/dist/doctor/checks/runtime-contracts.js.map +1 -0
  931. package/packages/core/dist/doctor/doctor.d.ts +6 -0
  932. package/packages/core/dist/doctor/doctor.js +138 -0
  933. package/packages/core/dist/doctor/doctor.js.map +1 -0
  934. package/packages/core/dist/doctor/model.d.ts +11 -0
  935. package/packages/core/dist/doctor/model.js +2 -0
  936. package/packages/core/dist/doctor/model.js.map +1 -0
  937. package/packages/core/dist/doctor/render.d.ts +2 -0
  938. package/packages/core/dist/doctor/render.js +44 -0
  939. package/packages/core/dist/doctor/render.js.map +1 -0
  940. package/packages/core/dist/doctor/summary.d.ts +2 -0
  941. package/packages/core/dist/doctor/summary.js +10 -0
  942. package/packages/core/dist/doctor/summary.js.map +1 -0
  943. package/packages/core/dist/doctor.d.ts +2 -0
  944. package/packages/core/dist/doctor.js +3 -0
  945. package/packages/core/dist/doctor.js.map +1 -0
  946. package/packages/core/dist/evidence-runtime/contracts.d.ts +33 -0
  947. package/packages/core/dist/evidence-runtime/contracts.js +2 -0
  948. package/packages/core/dist/evidence-runtime/contracts.js.map +1 -0
  949. package/packages/core/dist/evidence-runtime.d.ts +1 -0
  950. package/packages/core/dist/evidence-runtime.js +2 -0
  951. package/packages/core/dist/evidence-runtime.js.map +1 -0
  952. package/packages/core/dist/execution/agent-execution-records.d.ts +31 -0
  953. package/packages/core/dist/execution/agent-execution-records.js +163 -0
  954. package/packages/core/dist/execution/agent-execution-records.js.map +1 -0
  955. package/packages/core/dist/execution/background-executor.d.ts +44 -0
  956. package/packages/core/dist/execution/background-executor.js +249 -0
  957. package/packages/core/dist/execution/background-executor.js.map +1 -0
  958. package/packages/core/dist/execution/foreground-subagents.d.ts +55 -0
  959. package/packages/core/dist/execution/foreground-subagents.js +363 -0
  960. package/packages/core/dist/execution/foreground-subagents.js.map +1 -0
  961. package/packages/core/dist/execution/host-invocation.d.ts +27 -0
  962. package/packages/core/dist/execution/host-invocation.js +185 -0
  963. package/packages/core/dist/execution/host-invocation.js.map +1 -0
  964. package/packages/core/dist/execution/resident-worker.d.ts +100 -0
  965. package/packages/core/dist/execution/resident-worker.js +319 -0
  966. package/packages/core/dist/execution/resident-worker.js.map +1 -0
  967. package/packages/core/dist/execution/wave-executor.d.ts +45 -0
  968. package/packages/core/dist/execution/wave-executor.js +178 -0
  969. package/packages/core/dist/execution/wave-executor.js.map +1 -0
  970. package/packages/core/dist/execution.d.ts +5 -0
  971. package/packages/core/dist/execution.js +6 -0
  972. package/packages/core/dist/execution.js.map +1 -0
  973. package/packages/core/dist/governance/policy.d.ts +53 -0
  974. package/packages/core/dist/governance/policy.js +111 -0
  975. package/packages/core/dist/governance/policy.js.map +1 -0
  976. package/packages/core/dist/governance.d.ts +1 -0
  977. package/packages/core/dist/governance.js +2 -0
  978. package/packages/core/dist/governance.js.map +1 -0
  979. package/packages/core/dist/index.d.ts +1 -0
  980. package/packages/core/dist/index.js +2 -0
  981. package/packages/core/dist/index.js.map +1 -0
  982. package/packages/core/dist/instructions.d.ts +14 -0
  983. package/packages/core/dist/instructions.js +147 -0
  984. package/packages/core/dist/instructions.js.map +1 -0
  985. package/packages/core/dist/lifecycle/decision-gate.d.ts +39 -0
  986. package/packages/core/dist/lifecycle/decision-gate.js +319 -0
  987. package/packages/core/dist/lifecycle/decision-gate.js.map +1 -0
  988. package/packages/core/dist/lifecycle/rendering.d.ts +2 -0
  989. package/packages/core/dist/lifecycle/rendering.js +27 -0
  990. package/packages/core/dist/lifecycle/rendering.js.map +1 -0
  991. package/packages/core/dist/lifecycle/risk-signals.d.ts +57 -0
  992. package/packages/core/dist/lifecycle/risk-signals.js +80 -0
  993. package/packages/core/dist/lifecycle/risk-signals.js.map +1 -0
  994. package/packages/core/dist/lifecycle/ship.d.ts +42 -0
  995. package/packages/core/dist/lifecycle/ship.js +187 -0
  996. package/packages/core/dist/lifecycle/ship.js.map +1 -0
  997. package/packages/core/dist/lifecycle.d.ts +4 -0
  998. package/packages/core/dist/lifecycle.js +5 -0
  999. package/packages/core/dist/lifecycle.js.map +1 -0
  1000. package/packages/core/dist/orchestration/contracts.d.ts +45 -0
  1001. package/packages/core/dist/orchestration/contracts.js +2 -0
  1002. package/packages/core/dist/orchestration/contracts.js.map +1 -0
  1003. package/packages/core/dist/orchestration/index.d.ts +2 -0
  1004. package/packages/core/dist/orchestration/index.js +3 -0
  1005. package/packages/core/dist/orchestration/index.js.map +1 -0
  1006. package/packages/core/dist/orchestration/runtime.d.ts +55 -0
  1007. package/packages/core/dist/orchestration/runtime.js +314 -0
  1008. package/packages/core/dist/orchestration/runtime.js.map +1 -0
  1009. package/packages/core/dist/path-safety.d.ts +4 -0
  1010. package/packages/core/dist/path-safety.js +35 -0
  1011. package/packages/core/dist/path-safety.js.map +1 -0
  1012. package/packages/core/dist/planning/task-graph.d.ts +57 -0
  1013. package/packages/core/dist/planning/task-graph.js +157 -0
  1014. package/packages/core/dist/planning/task-graph.js.map +1 -0
  1015. package/packages/core/dist/planning/wave-plan.d.ts +37 -0
  1016. package/packages/core/dist/planning/wave-plan.js +119 -0
  1017. package/packages/core/dist/planning/wave-plan.js.map +1 -0
  1018. package/packages/core/dist/planning.d.ts +2 -0
  1019. package/packages/core/dist/planning.js +3 -0
  1020. package/packages/core/dist/planning.js.map +1 -0
  1021. package/packages/core/dist/registries/agent-capability-catalog.d.ts +55 -0
  1022. package/packages/core/dist/registries/agent-capability-catalog.js +109 -0
  1023. package/packages/core/dist/registries/agent-capability-catalog.js.map +1 -0
  1024. package/packages/core/dist/registries/agent-registry.d.ts +22 -0
  1025. package/packages/core/dist/registries/agent-registry.js +121 -0
  1026. package/packages/core/dist/registries/agent-registry.js.map +1 -0
  1027. package/packages/core/dist/registries/agent-runtime-static.d.ts +51 -0
  1028. package/packages/core/dist/registries/agent-runtime-static.js +39 -0
  1029. package/packages/core/dist/registries/agent-runtime-static.js.map +1 -0
  1030. package/packages/core/dist/registries/capability-sources.d.ts +17 -0
  1031. package/packages/core/dist/registries/capability-sources.js +14 -0
  1032. package/packages/core/dist/registries/capability-sources.js.map +1 -0
  1033. package/packages/core/dist/registries/command-team-runtime.d.ts +70 -0
  1034. package/packages/core/dist/registries/command-team-runtime.js +220 -0
  1035. package/packages/core/dist/registries/command-team-runtime.js.map +1 -0
  1036. package/packages/core/dist/registries/eval-learning-context.d.ts +64 -0
  1037. package/packages/core/dist/registries/eval-learning-context.js +161 -0
  1038. package/packages/core/dist/registries/eval-learning-context.js.map +1 -0
  1039. package/packages/core/dist/registries/query-status.d.ts +28 -0
  1040. package/packages/core/dist/registries/query-status.js +84 -0
  1041. package/packages/core/dist/registries/query-status.js.map +1 -0
  1042. package/packages/core/dist/registries/skill-capabilities.d.ts +22 -0
  1043. package/packages/core/dist/registries/skill-capabilities.js +16 -0
  1044. package/packages/core/dist/registries/skill-capabilities.js.map +1 -0
  1045. package/packages/core/dist/registries/tool-capabilities.d.ts +20 -0
  1046. package/packages/core/dist/registries/tool-capabilities.js +111 -0
  1047. package/packages/core/dist/registries/tool-capabilities.js.map +1 -0
  1048. package/packages/core/dist/registries/tool-plugins.d.ts +21 -0
  1049. package/packages/core/dist/registries/tool-plugins.js +107 -0
  1050. package/packages/core/dist/registries/tool-plugins.js.map +1 -0
  1051. package/packages/core/dist/registries/worker-adapters.d.ts +38 -0
  1052. package/packages/core/dist/registries/worker-adapters.js +99 -0
  1053. package/packages/core/dist/registries/worker-adapters.js.map +1 -0
  1054. package/packages/core/dist/registries/workflow-gates.d.ts +19 -0
  1055. package/packages/core/dist/registries/workflow-gates.js +89 -0
  1056. package/packages/core/dist/registries/workflow-gates.js.map +1 -0
  1057. package/packages/core/dist/registries.d.ts +14 -0
  1058. package/packages/core/dist/registries.js +13 -0
  1059. package/packages/core/dist/registries.js.map +1 -0
  1060. package/packages/core/dist/risk/consumer-diagnostics.d.ts +18 -0
  1061. package/packages/core/dist/risk/consumer-diagnostics.js +77 -0
  1062. package/packages/core/dist/risk/consumer-diagnostics.js.map +1 -0
  1063. package/packages/core/dist/risk/contracts.d.ts +57 -0
  1064. package/packages/core/dist/risk/contracts.js +2 -0
  1065. package/packages/core/dist/risk/contracts.js.map +1 -0
  1066. package/packages/core/dist/risk/kernel.d.ts +20 -0
  1067. package/packages/core/dist/risk/kernel.js +195 -0
  1068. package/packages/core/dist/risk/kernel.js.map +1 -0
  1069. package/packages/core/dist/risk/legacy-adapters.d.ts +33 -0
  1070. package/packages/core/dist/risk/legacy-adapters.js +215 -0
  1071. package/packages/core/dist/risk/legacy-adapters.js.map +1 -0
  1072. package/packages/core/dist/risk/workflow-gates.d.ts +24 -0
  1073. package/packages/core/dist/risk/workflow-gates.js +160 -0
  1074. package/packages/core/dist/risk/workflow-gates.js.map +1 -0
  1075. package/packages/core/dist/risk.d.ts +5 -0
  1076. package/packages/core/dist/risk.js +6 -0
  1077. package/packages/core/dist/risk.js.map +1 -0
  1078. package/packages/core/dist/router/agent-runtime-config.d.ts +4 -0
  1079. package/packages/core/dist/router/agent-runtime-config.js +263 -0
  1080. package/packages/core/dist/router/agent-runtime-config.js.map +1 -0
  1081. package/packages/core/dist/router/agent-runtime.d.ts +285 -0
  1082. package/packages/core/dist/router/agent-runtime.js +2 -0
  1083. package/packages/core/dist/router/agent-runtime.js.map +1 -0
  1084. package/packages/core/dist/router/profile-resolution.d.ts +18 -0
  1085. package/packages/core/dist/router/profile-resolution.js +127 -0
  1086. package/packages/core/dist/router/profile-resolution.js.map +1 -0
  1087. package/packages/core/dist/router/risk-policy.d.ts +6 -0
  1088. package/packages/core/dist/router/risk-policy.js +28 -0
  1089. package/packages/core/dist/router/risk-policy.js.map +1 -0
  1090. package/packages/core/dist/router/route-cache.d.ts +39 -0
  1091. package/packages/core/dist/router/route-cache.js +59 -0
  1092. package/packages/core/dist/router/route-cache.js.map +1 -0
  1093. package/packages/core/dist/router/route-projection.d.ts +12 -0
  1094. package/packages/core/dist/router/route-projection.js +127 -0
  1095. package/packages/core/dist/router/route-projection.js.map +1 -0
  1096. package/packages/core/dist/router/route-sdd-task.d.ts +3 -0
  1097. package/packages/core/dist/router/route-sdd-task.js +4 -0
  1098. package/packages/core/dist/router/route-sdd-task.js.map +1 -0
  1099. package/packages/core/dist/router/routing-rules.d.ts +4 -0
  1100. package/packages/core/dist/router/routing-rules.js +68 -0
  1101. package/packages/core/dist/router/routing-rules.js.map +1 -0
  1102. package/packages/core/dist/router/routing.d.ts +18 -0
  1103. package/packages/core/dist/router/routing.js +143 -0
  1104. package/packages/core/dist/router/routing.js.map +1 -0
  1105. package/packages/core/dist/router/runtime-inspection.d.ts +7 -0
  1106. package/packages/core/dist/router/runtime-inspection.js +95 -0
  1107. package/packages/core/dist/router/runtime-inspection.js.map +1 -0
  1108. package/packages/core/dist/router/runtime-registry.d.ts +17 -0
  1109. package/packages/core/dist/router/runtime-registry.js +82 -0
  1110. package/packages/core/dist/router/runtime-registry.js.map +1 -0
  1111. package/packages/core/dist/router/runtime-validation.d.ts +26 -0
  1112. package/packages/core/dist/router/runtime-validation.js +207 -0
  1113. package/packages/core/dist/router/runtime-validation.js.map +1 -0
  1114. package/packages/core/dist/router/team-mode.d.ts +16 -0
  1115. package/packages/core/dist/router/team-mode.js +134 -0
  1116. package/packages/core/dist/router/team-mode.js.map +1 -0
  1117. package/packages/core/dist/router.d.ts +4 -0
  1118. package/packages/core/dist/router.js +5 -0
  1119. package/packages/core/dist/router.js.map +1 -0
  1120. package/packages/core/dist/run-state/artifacts.d.ts +6 -0
  1121. package/packages/core/dist/run-state/artifacts.js +80 -0
  1122. package/packages/core/dist/run-state/artifacts.js.map +1 -0
  1123. package/packages/core/dist/run-state/events.d.ts +3 -0
  1124. package/packages/core/dist/run-state/events.js +23 -0
  1125. package/packages/core/dist/run-state/events.js.map +1 -0
  1126. package/packages/core/dist/run-state/inspect-run.d.ts +100 -0
  1127. package/packages/core/dist/run-state/inspect-run.js +117 -0
  1128. package/packages/core/dist/run-state/inspect-run.js.map +1 -0
  1129. package/packages/core/dist/run-state/invocation-ledger.d.ts +18 -0
  1130. package/packages/core/dist/run-state/invocation-ledger.js +99 -0
  1131. package/packages/core/dist/run-state/invocation-ledger.js.map +1 -0
  1132. package/packages/core/dist/run-state/model.d.ts +179 -0
  1133. package/packages/core/dist/run-state/model.js +2 -0
  1134. package/packages/core/dist/run-state/model.js.map +1 -0
  1135. package/packages/core/dist/run-state/run-index.d.ts +97 -0
  1136. package/packages/core/dist/run-state/run-index.js +238 -0
  1137. package/packages/core/dist/run-state/run-index.js.map +1 -0
  1138. package/packages/core/dist/run-state/run-state.d.ts +20 -0
  1139. package/packages/core/dist/run-state/run-state.js +359 -0
  1140. package/packages/core/dist/run-state/run-state.js.map +1 -0
  1141. package/packages/core/dist/run-state.d.ts +7 -0
  1142. package/packages/core/dist/run-state.js +8 -0
  1143. package/packages/core/dist/run-state.js.map +1 -0
  1144. package/packages/core/dist/runtime-analysis/build.d.ts +2 -0
  1145. package/packages/core/dist/runtime-analysis/build.js +61 -0
  1146. package/packages/core/dist/runtime-analysis/build.js.map +1 -0
  1147. package/packages/core/dist/runtime-analysis/findings.d.ts +4 -0
  1148. package/packages/core/dist/runtime-analysis/findings.js +274 -0
  1149. package/packages/core/dist/runtime-analysis/findings.js.map +1 -0
  1150. package/packages/core/dist/runtime-analysis/model.d.ts +175 -0
  1151. package/packages/core/dist/runtime-analysis/model.js +2 -0
  1152. package/packages/core/dist/runtime-analysis/model.js.map +1 -0
  1153. package/packages/core/dist/runtime-analysis.d.ts +3 -0
  1154. package/packages/core/dist/runtime-analysis.js +4 -0
  1155. package/packages/core/dist/runtime-analysis.js.map +1 -0
  1156. package/packages/core/dist/runtime-paths.d.ts +25 -0
  1157. package/packages/core/dist/runtime-paths.js +112 -0
  1158. package/packages/core/dist/runtime-paths.js.map +1 -0
  1159. package/packages/core/dist/sdd-docs/context.d.ts +18 -0
  1160. package/packages/core/dist/sdd-docs/context.js +89 -0
  1161. package/packages/core/dist/sdd-docs/context.js.map +1 -0
  1162. package/packages/core/dist/sdd-docs/run-binding.d.ts +6 -0
  1163. package/packages/core/dist/sdd-docs/run-binding.js +79 -0
  1164. package/packages/core/dist/sdd-docs/run-binding.js.map +1 -0
  1165. package/packages/core/dist/sdd-docs/task-inspection.d.ts +6 -0
  1166. package/packages/core/dist/sdd-docs/task-inspection.js +31 -0
  1167. package/packages/core/dist/sdd-docs/task-inspection.js.map +1 -0
  1168. package/packages/core/dist/sdd-docs/task-parser.d.ts +78 -0
  1169. package/packages/core/dist/sdd-docs/task-parser.js +458 -0
  1170. package/packages/core/dist/sdd-docs/task-parser.js.map +1 -0
  1171. package/packages/core/dist/sdd-docs/task-rendering.d.ts +5 -0
  1172. package/packages/core/dist/sdd-docs/task-rendering.js +77 -0
  1173. package/packages/core/dist/sdd-docs/task-rendering.js.map +1 -0
  1174. package/packages/core/dist/sdd-docs.d.ts +5 -0
  1175. package/packages/core/dist/sdd-docs.js +6 -0
  1176. package/packages/core/dist/sdd-docs.js.map +1 -0
  1177. package/packages/core/dist/stage-runtime/contracts.d.ts +37 -0
  1178. package/packages/core/dist/stage-runtime/contracts.js +2 -0
  1179. package/packages/core/dist/stage-runtime/contracts.js.map +1 -0
  1180. package/packages/core/dist/stage-runtime/runtime.d.ts +71 -0
  1181. package/packages/core/dist/stage-runtime/runtime.js +275 -0
  1182. package/packages/core/dist/stage-runtime/runtime.js.map +1 -0
  1183. package/packages/core/dist/stage-runtime.d.ts +2 -0
  1184. package/packages/core/dist/stage-runtime.js +3 -0
  1185. package/packages/core/dist/stage-runtime.js.map +1 -0
  1186. package/packages/core/dist/status/project-status.d.ts +105 -0
  1187. package/packages/core/dist/status/project-status.js +251 -0
  1188. package/packages/core/dist/status/project-status.js.map +1 -0
  1189. package/packages/core/dist/status.d.ts +2 -0
  1190. package/packages/core/dist/status.js +3 -0
  1191. package/packages/core/dist/status.js.map +1 -0
  1192. package/packages/core/dist/storage/json-io.d.ts +1 -0
  1193. package/packages/core/dist/storage/json-io.js +11 -0
  1194. package/packages/core/dist/storage/json-io.js.map +1 -0
  1195. package/packages/core/dist/storage/runtime-store.d.ts +112 -0
  1196. package/packages/core/dist/storage/runtime-store.js +362 -0
  1197. package/packages/core/dist/storage/runtime-store.js.map +1 -0
  1198. package/packages/core/dist/subagents/contracts.d.ts +41 -0
  1199. package/packages/core/dist/subagents/contracts.js +2 -0
  1200. package/packages/core/dist/subagents/contracts.js.map +1 -0
  1201. package/packages/core/dist/subagents/runtime.d.ts +43 -0
  1202. package/packages/core/dist/subagents/runtime.js +262 -0
  1203. package/packages/core/dist/subagents/runtime.js.map +1 -0
  1204. package/packages/core/dist/subagents.d.ts +2 -0
  1205. package/packages/core/dist/subagents.js +3 -0
  1206. package/packages/core/dist/subagents.js.map +1 -0
  1207. package/packages/core/dist/sync-back/apply.d.ts +17 -0
  1208. package/packages/core/dist/sync-back/apply.js +221 -0
  1209. package/packages/core/dist/sync-back/apply.js.map +1 -0
  1210. package/packages/core/dist/sync-back/inspect.d.ts +91 -0
  1211. package/packages/core/dist/sync-back/inspect.js +395 -0
  1212. package/packages/core/dist/sync-back/inspect.js.map +1 -0
  1213. package/packages/core/dist/sync-back.d.ts +2 -0
  1214. package/packages/core/dist/sync-back.js +3 -0
  1215. package/packages/core/dist/sync-back.js.map +1 -0
  1216. package/packages/core/dist/task-risk-profile.d.ts +33 -0
  1217. package/packages/core/dist/task-risk-profile.js +153 -0
  1218. package/packages/core/dist/task-risk-profile.js.map +1 -0
  1219. package/packages/core/dist/test-support/fixtures.d.ts +21 -0
  1220. package/packages/core/dist/test-support/fixtures.js +363 -0
  1221. package/packages/core/dist/test-support/fixtures.js.map +1 -0
  1222. package/packages/core/dist/test-support/run-state.d.ts +2 -0
  1223. package/packages/core/dist/test-support/run-state.js +55 -0
  1224. package/packages/core/dist/test-support/run-state.js.map +1 -0
  1225. package/packages/core/dist/test-support.d.ts +2 -0
  1226. package/packages/core/dist/test-support.js +3 -0
  1227. package/packages/core/dist/test-support.js.map +1 -0
  1228. package/packages/core/dist/tsconfig.tsbuildinfo +1 -0
  1229. package/packages/core/dist/verification/goal-verify.d.ts +50 -0
  1230. package/packages/core/dist/verification/goal-verify.js +514 -0
  1231. package/packages/core/dist/verification/goal-verify.js.map +1 -0
  1232. package/packages/core/dist/verification/rendering.d.ts +51 -0
  1233. package/packages/core/dist/verification/rendering.js +119 -0
  1234. package/packages/core/dist/verification/rendering.js.map +1 -0
  1235. package/packages/core/dist/verification/single-task-loop.d.ts +29 -0
  1236. package/packages/core/dist/verification/single-task-loop.js +332 -0
  1237. package/packages/core/dist/verification/single-task-loop.js.map +1 -0
  1238. package/packages/core/dist/verification/test-runtime.d.ts +62 -0
  1239. package/packages/core/dist/verification/test-runtime.js +591 -0
  1240. package/packages/core/dist/verification/test-runtime.js.map +1 -0
  1241. package/packages/core/dist/verification/verify-contract.d.ts +42 -0
  1242. package/packages/core/dist/verification/verify-contract.js +201 -0
  1243. package/packages/core/dist/verification/verify-contract.js.map +1 -0
  1244. package/packages/core/dist/verification.d.ts +6 -0
  1245. package/packages/core/dist/verification.js +6 -0
  1246. package/packages/core/dist/verification.js.map +1 -0
  1247. package/packages/core/dist/work-units/contracts.d.ts +24 -0
  1248. package/packages/core/dist/work-units/contracts.js +2 -0
  1249. package/packages/core/dist/work-units/contracts.js.map +1 -0
  1250. package/packages/core/dist/work-units/runtime.d.ts +21 -0
  1251. package/packages/core/dist/work-units/runtime.js +90 -0
  1252. package/packages/core/dist/work-units/runtime.js.map +1 -0
  1253. package/packages/core/dist/work-units.d.ts +2 -0
  1254. package/packages/core/dist/work-units.js +3 -0
  1255. package/packages/core/dist/work-units.js.map +1 -0
  1256. package/packages/core/dist/workflow-state/affected-file-conflicts.d.ts +12 -0
  1257. package/packages/core/dist/workflow-state/affected-file-conflicts.js +60 -0
  1258. package/packages/core/dist/workflow-state/affected-file-conflicts.js.map +1 -0
  1259. package/packages/core/dist/workflow-state/dependencies.d.ts +25 -0
  1260. package/packages/core/dist/workflow-state/dependencies.js +64 -0
  1261. package/packages/core/dist/workflow-state/dependencies.js.map +1 -0
  1262. package/packages/core/dist/workflow-state/resolve.d.ts +50 -0
  1263. package/packages/core/dist/workflow-state/resolve.js +124 -0
  1264. package/packages/core/dist/workflow-state/resolve.js.map +1 -0
  1265. package/packages/core/dist/workflow-state.d.ts +1 -0
  1266. package/packages/core/dist/workflow-state.js +2 -0
  1267. package/packages/core/dist/workflow-state.js.map +1 -0
  1268. package/packages/core/dist/worktree/isolation.d.ts +40 -0
  1269. package/packages/core/dist/worktree/isolation.js +89 -0
  1270. package/packages/core/dist/worktree/isolation.js.map +1 -0
  1271. package/packages/core/dist/worktree/lifecycle.d.ts +39 -0
  1272. package/packages/core/dist/worktree/lifecycle.js +221 -0
  1273. package/packages/core/dist/worktree/lifecycle.js.map +1 -0
  1274. package/packages/core/dist/worktree.d.ts +2 -0
  1275. package/packages/core/dist/worktree.js +3 -0
  1276. package/packages/core/dist/worktree.js.map +1 -0
  1277. package/packages/core/package.json +40 -0
  1278. package/tsconfig.build.json +4 -3
  1279. package/dist/packages/cli/src/main.js +0 -2522
  1280. package/dist/packages/cli/src/main.js.map +0 -1
  1281. package/dist/packages/cli/src/options.js.map +0 -1
  1282. package/dist/packages/core/src/ai-tools.js.map +0 -1
  1283. package/dist/packages/core/src/index.d.ts +0 -1986
  1284. package/dist/packages/core/src/index.js +0 -9722
  1285. package/dist/packages/core/src/index.js.map +0 -1
  1286. package/dist/packages/core/src/instructions.js.map +0 -1
  1287. package/dist/packages/core/src/path-safety.js.map +0 -1
  1288. /package/{dist/packages/core/src → node_modules/@sdd-agent-platform/core/dist}/path-safety.d.ts +0 -0
  1289. /package/{dist/packages/core/src → node_modules/@sdd-agent-platform/core/dist}/path-safety.js +0 -0
  1290. /package/{dist/packages/cli/src → packages/cli/dist}/main.d.ts +0 -0
@@ -0,0 +1,446 @@
1
+ import test from 'node:test';
2
+ import assert from 'node:assert/strict';
3
+ import { execFile } from 'node:child_process';
4
+ import { mkdtemp, readFile, rm, writeFile } from 'node:fs/promises';
5
+ import { tmpdir } from 'node:os';
6
+ import path from 'node:path';
7
+ import { promisify } from 'node:util';
8
+
9
+ import { initProject } from '../config/init-project.js';
10
+ import { getProjectStatus } from '../status/project-status.js';
11
+ import { writeArtifact } from '../run-state/artifacts.js';
12
+ import { queryLocalRunIndex, rebuildLocalRunIndex } from '../run-state/run-index.js';
13
+ import { createRun, readRunState, writeRunState } from '../run-state/run-state.js';
14
+ import { evaluateLifecycleRiskDecisionForModel, recordLifecycleRiskDecisionProjection } from '../risk.js';
15
+ import { graphTaskMarkdown, taskMarkdownWithFiles, validResultArtifact, validTaskMarkdown, validTrustEvidence, writeBranchDocs } from '../test-support/fixtures.js';
16
+ import { parseSddBranch } from '../sdd-docs/task-parser.js';
17
+ import { bindTestRunState, markTestRunReadyForSyncBack } from '../test-support/run-state.js';
18
+ import { runGoalVerify } from '../verification/goal-verify.js';
19
+ import { inspectVerifyContract, writeVerifyContract } from '../verification/verify-contract.js';
20
+ import { runSingleTaskLoop } from '../verification/single-task-loop.js';
21
+ import { createDelegationRecord } from '../delegation/validation.js';
22
+ import { applySyncBack } from './apply.js';
23
+ import { inspectSyncBack } from './inspect.js';
24
+
25
+ const execFileAsync = promisify(execFile);
26
+
27
+ test('sync-back inspect blocks modified proposal digest', async () => {
28
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-digest-'));
29
+ try {
30
+ await initProject(root);
31
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
32
+ const state = await createRun(root, { runId: 'run-1' });
33
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
34
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
35
+ await writeArtifact(root, state.runId, 'sync-back-proposal.md', 'status: verified\nmodified: true\n');
36
+
37
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' });
38
+
39
+ assert.equal(syncBack.status, 'blocked');
40
+ assert.equal(syncBack.proposalDigestValid, false);
41
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('digest changed')), true);
42
+ await assert.rejects(
43
+ () => applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' }),
44
+ /digest changed/
45
+ );
46
+ } finally {
47
+ await rm(root, { recursive: true, force: true });
48
+ }
49
+ });
50
+
51
+ test('sync-back apply requires approval for risky complex tasks', async () => {
52
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-approval-'));
53
+ try {
54
+ await initProject(root);
55
+ await writeBranchDocs(root, 'feature', `# Tasks\n\n${graphTaskMarkdown('T1', [], ['packages/core/src/index.ts'], ['database'])}`);
56
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
57
+ const state = await createRun(root, { runId: 'run-1' });
58
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
59
+ await writeArtifact(root, state.runId, 'review-T1.md', validResultArtifact('reviewer', 'T1', 'PASS', 'artifacts/review-T1.md'));
60
+ await writeArtifact(root, state.runId, 'validation-T1.md', `${validResultArtifact('validator', 'T1', 'PASS', 'artifacts/validation-T1.md')}${validTrustEvidence('T1', 'Graph output is inspectable.', 'artifacts/validation-T1.md')}`);
61
+
62
+ await runGoalVerify(root, {
63
+ runId: state.runId,
64
+ branch: 'feature',
65
+ taskId: 'T1',
66
+ reviewArtifact: 'artifacts/review-T1.md',
67
+ validationArtifact: 'artifacts/validation-T1.md'
68
+ });
69
+
70
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' });
71
+
72
+ assert.equal(syncBack.status, 'ready');
73
+ assert.equal(syncBack.applyPolicy.mode, 'confirm');
74
+ assert.equal(syncBack.applyPolicy.requiresApproval, true);
75
+ assert.equal(syncBack.applyPolicy.reasons.some((reason) => reason.includes('risk tags')), true);
76
+ assert.equal(syncBack.approvalCard.contract, 'sdd-sync-back-approval-card-v1');
77
+ assert.equal(syncBack.approvalCard.status, 'ready');
78
+ assert.equal(syncBack.approvalCard.risk, 'review');
79
+ assert.equal(syncBack.approvalCard.approval.requiresApproval, true);
80
+ assert.equal(syncBack.approvalCard.proposal.digestValid, true);
81
+ assert.match(syncBack.approvalCard.nextAction, /--approved/);
82
+ assert.match(syncBack.approvalCard.nextAction, /Review artifacts\/sync-back-proposal\.md and apply policy/);
83
+ assert.match(syncBack.approvalCard.nextAction, /sdd sync-back apply run-1 --branch feature --task T1 --approved/);
84
+ await assert.rejects(
85
+ () => applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' }),
86
+ /--approved/
87
+ );
88
+
89
+ const applied = await applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1', approved: true });
90
+ const tasksAfterSyncBack = await readFile(path.join(root, 'specs', 'feature', 'tasks.md'), 'utf8');
91
+
92
+ assert.equal(applied.applied, true);
93
+ assert.match(tasksAfterSyncBack, /status: completed/);
94
+ } finally {
95
+ await rm(root, { recursive: true, force: true });
96
+ }
97
+ });
98
+
99
+ test('sync-back gates direct-safe task by task scope instead of branch lifecycle risk', async () => {
100
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-task-scope-'));
101
+ try {
102
+ await initProject(root);
103
+ const directTask = validTaskMarkdown('T1', []).replace('packages/core/src/index.ts', 'docs/t1.md');
104
+ const securityTask = validTaskMarkdown('SECURITY', [])
105
+ .replace('packages/core/src/index.ts', 'packages/core/src/security.ts')
106
+ .replace('risk: []', 'risk:\n - security');
107
+ await writeBranchDocs(root, 'feature', `${directTask}\n${securityTask}`);
108
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
109
+ const model = await parseSddBranch(root, 'feature');
110
+ await recordLifecycleRiskDecisionProjection(root, evaluateLifecycleRiskDecisionForModel('feature', model));
111
+ const state = await createRun(root, { runId: 'run-1' });
112
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
113
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
114
+
115
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' });
116
+
117
+ assert.equal(syncBack.lifecycleRisk.scopeKey, 'feature:all:none:none');
118
+ assert.notEqual(syncBack.lifecycleRisk.approvalPolicy, 'auto-allow');
119
+ assert.equal(syncBack.status, 'ready');
120
+ assert.equal(syncBack.applyPolicy.mode, 'direct');
121
+ assert.equal(syncBack.applyPolicy.requiresApproval, false);
122
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('Lifecycle risk requires human approval before sync-back')), false);
123
+ } finally {
124
+ await rm(root, { recursive: true, force: true });
125
+ }
126
+ });
127
+
128
+ test('sync-back apply rejects blocked runs and reports inspect reasons', async () => {
129
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-blocked-'));
130
+ try {
131
+ await initProject(root);
132
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
133
+ const state = await createRun(root, { runId: 'run-1' });
134
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
135
+ await writeArtifact(root, state.runId, 'review-T1.md', validResultArtifact('reviewer', 'T1', 'PASS', 'artifacts/review-T1.md'));
136
+ await writeArtifact(root, state.runId, 'validation-T1.md', `${validResultArtifact('validator', 'T1', 'PASS_WITH_GAPS', 'artifacts/validation-T1.md')}${validTrustEvidence('T1', 'AC-1', 'artifacts/validation-T1.md')}`);
137
+
138
+ await runSingleTaskLoop(root, {
139
+ runId: state.runId,
140
+ branch: 'feature',
141
+ taskId: 'T1',
142
+ reviewArtifact: 'artifacts/review-T1.md',
143
+ validationArtifact: 'artifacts/validation-T1.md'
144
+ });
145
+
146
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' });
147
+
148
+ assert.equal(syncBack.status, 'blocked');
149
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('Run status is blocked')), true);
150
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('validation status is pass_with_gaps')), true);
151
+ await assert.rejects(
152
+ () => applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' }),
153
+ /Cannot apply sync-back for run-1/
154
+ );
155
+ } finally {
156
+ await rm(root, { recursive: true, force: true });
157
+ }
158
+ });
159
+
160
+ test('Phase 6.5 resolves latest eligible run by partition and task without run id', async () => {
161
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-phase65-resolver-'));
162
+ try {
163
+ await initProject(root);
164
+ await writeBranchDocs(root, 'feature-a', validTaskMarkdown('T1', []).replace('packages/core/src/index.ts', 'packages/core/src/a.ts'));
165
+ await writeBranchDocs(root, 'feature-b', validTaskMarkdown('T1', []).replace('packages/core/src/index.ts', 'packages/core/src/b.ts'));
166
+ await writeVerifyContract(root, { branch: 'feature-a', branchSource: 'cli_option' });
167
+ await writeVerifyContract(root, { branch: 'feature-b', branchSource: 'cli_option' });
168
+ const runA = await createRun(root, { runId: 'run-a' });
169
+ await bindTestRunState(root, runA.runId, 'feature-a', 'T1');
170
+ await markTestRunReadyForSyncBack(root, runA.runId, 'T1');
171
+ const runB = await createRun(root, { runId: 'run-b' });
172
+ await bindTestRunState(root, runB.runId, 'feature-b', 'T1');
173
+ await markTestRunReadyForSyncBack(root, runB.runId, 'T1');
174
+
175
+ const index = await rebuildLocalRunIndex(root);
176
+ const featureA = await inspectSyncBack(root, { branch: 'feature-a', taskId: 'T1' });
177
+ const featureB = await inspectSyncBack(root, { branch: 'feature-b', taskId: 'T1' });
178
+ const queried = await queryLocalRunIndex(root, { partition: 'feature-a', taskId: 'T1' });
179
+
180
+ assert.deepEqual(index.latestByPartitionTask.map((entry) => `${entry.partition}:${entry.taskId}:${entry.runId}`).sort(), ['feature-a:T1:run-a', 'feature-b:T1:run-b']);
181
+ assert.equal(featureA.runId, 'run-a');
182
+ assert.equal(featureA.status, 'ready');
183
+ assert.equal(featureB.runId, 'run-b');
184
+ assert.equal(featureB.status, 'ready');
185
+ assert.deepEqual(queried.latestByPartitionTask.map((entry) => entry.runId), ['run-a']);
186
+ } finally {
187
+ await rm(root, { recursive: true, force: true });
188
+ }
189
+ });
190
+
191
+ test('Phase 6.5 marks changed documents as stale and blocks sync-back apply', async () => {
192
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-phase65-stale-'));
193
+ try {
194
+ await initProject(root);
195
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
196
+ const state = await createRun(root, { runId: 'run-1' });
197
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
198
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
199
+ await writeFile(path.join(root, 'specs', 'feature', 'tasks.md'), `${validTaskMarkdown('T1', [])}\n<!-- changed after run -->\n`, 'utf8');
200
+
201
+ const syncBack = await inspectSyncBack(root, { branch: 'feature', taskId: 'T1' });
202
+
203
+ assert.equal(syncBack.runId, state.runId);
204
+ assert.equal(syncBack.status, 'blocked');
205
+ assert.equal(syncBack.staleReasons.some((reason) => reason.includes('tasks.md')), true);
206
+ await assert.rejects(
207
+ () => applySyncBack(root, { branch: 'feature', taskId: 'T1' }),
208
+ /Run snapshot/
209
+ );
210
+ } finally {
211
+ await rm(root, { recursive: true, force: true });
212
+ }
213
+ });
214
+
215
+ test('sync-back inspect reports stale verify contract as diagnostic without blocking ready task', async () => {
216
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-stale-verify-'));
217
+ try {
218
+ await initProject(root);
219
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
220
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
221
+ await writeFile(path.join(root, 'specs', 'feature', 'tasks.md'), validTaskMarkdown('T1', []).replace('validation:\n - npm test', 'validation:\n - npm test\n - npm run extra'), 'utf8');
222
+ const state = await createRun(root, { runId: 'run-1' });
223
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
224
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
225
+
226
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' });
227
+
228
+ assert.equal(syncBack.status, 'ready');
229
+ assert.equal(syncBack.verifyContractStatus, 'WARN');
230
+ assert.match(syncBack.staleVerifyRecoveryCommand ?? '', /sdd verifies write --branch feature --force/);
231
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('Verify contract is WARN')), false);
232
+ } finally {
233
+ await rm(root, { recursive: true, force: true });
234
+ }
235
+ });
236
+
237
+ test('sync-back inspect reports missing verify contract as diagnostic without blocking ready task', async () => {
238
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-missing-verify-'));
239
+ try {
240
+ await initProject(root);
241
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
242
+ const state = await createRun(root, { runId: 'run-1' });
243
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
244
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
245
+
246
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1' });
247
+
248
+ assert.equal(syncBack.status, 'ready');
249
+ assert.equal(syncBack.verifyContractStatus, 'WARN');
250
+ assert.equal(syncBack.verifyContractIssues.some((issue) => issue.field === 'verify.md'), true);
251
+ assert.match(syncBack.staleVerifyRecoveryCommand ?? '', /sdd verifies write --branch feature --force/);
252
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('Verification contract document is missing.')), false);
253
+ } finally {
254
+ await rm(root, { recursive: true, force: true });
255
+ }
256
+ });
257
+
258
+ test('sync-back apply refreshes stale verify contract when explicitly requested', async () => {
259
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-refresh-verify-'));
260
+ try {
261
+ await initProject(root);
262
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
263
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
264
+ await writeFile(path.join(root, 'specs', 'feature', 'tasks.md'), validTaskMarkdown('T1', []).replace('validation:\n - npm test', 'validation:\n - npm test\n - npm run extra'), 'utf8');
265
+ const state = await createRun(root, { runId: 'run-1' });
266
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
267
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
268
+
269
+ const applied = await applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1', refreshVerify: true, approved: true });
270
+ const verify = await readFile(path.join(root, 'specs', 'feature', 'verify.md'), 'utf8');
271
+
272
+ assert.equal(applied.applied, true);
273
+ assert.equal(applied.verifyRefreshed, true);
274
+ assert.equal(applied.inspection.status, 'applied');
275
+ assert.match(verify, /npm run extra/);
276
+ } finally {
277
+ await rm(root, { recursive: true, force: true });
278
+ }
279
+ });
280
+
281
+ test('sync-back apply refreshes verify contract after tasks writeback', async () => {
282
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-post-apply-refresh-'));
283
+ try {
284
+ await initProject(root);
285
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []).replace('packages/core/src/index.ts', 'docs/T1.md'));
286
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
287
+ const state = await createRun(root, { runId: 'run-1' });
288
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
289
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
290
+
291
+ const applied = await applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'T1', refreshVerify: true });
292
+ const verify = await inspectVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
293
+ const status = await getProjectStatus(root, { branch: 'feature' });
294
+
295
+ assert.equal(applied.applied, true);
296
+ assert.equal(applied.verifyRefreshed, true);
297
+ assert.equal(applied.inspection.status, 'applied');
298
+ assert.equal(verify.status, 'PASS');
299
+ assert.equal(status.gaps.length, 0);
300
+ } finally {
301
+ await rm(root, { recursive: true, force: true });
302
+ }
303
+ });
304
+
305
+ test('Phase 6.5 requires approval before sync-back apply on the wrong Git branch', async () => {
306
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-phase65-wrong-branch-'));
307
+ try {
308
+ await initProject(root);
309
+ await execFileAsync('git', ['init'], { cwd: root });
310
+ await execFileAsync('git', ['checkout', '-b', 'other'], { cwd: root });
311
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []));
312
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
313
+ const state = await createRun(root, { runId: 'run-1' });
314
+ await bindTestRunState(root, state.runId, 'feature', 'T1');
315
+ await markTestRunReadyForSyncBack(root, state.runId, 'T1');
316
+
317
+ const syncBack = await inspectSyncBack(root, { branch: 'feature', taskId: 'T1' });
318
+
319
+ assert.equal(syncBack.status, 'ready');
320
+ assert.equal(syncBack.applyPolicy.requiresApproval, true);
321
+ assert.equal(syncBack.applyPolicy.reasons.some((reason) => reason.includes('Current Git branch is other')), true);
322
+ await assert.rejects(
323
+ () => applySyncBack(root, { branch: 'feature', taskId: 'T1' }),
324
+ /--approved/
325
+ );
326
+ const applied = await applySyncBack(root, { branch: 'feature', taskId: 'T1', approved: true });
327
+ assert.equal(applied.applied, true);
328
+ } finally {
329
+ await rm(root, { recursive: true, force: true });
330
+ }
331
+ });
332
+
333
+ test('Phase 6.5 reports active affected file conflicts', async () => {
334
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-phase65-affected-'));
335
+ try {
336
+ await initProject(root);
337
+ await writeBranchDocs(root, 'feature', `# Tasks\n\n${taskMarkdownWithFiles('T1', ['packages/core/src/index.ts'], [])}\n${taskMarkdownWithFiles('T2', ['packages/core/src/index.ts'], [])}`);
338
+ const runA = await createRun(root, { runId: 'run-a' });
339
+ await bindTestRunState(root, runA.runId, 'feature', 'T1');
340
+ await markTestRunReadyForSyncBack(root, runA.runId, 'T1');
341
+ const runB = await createRun(root, { runId: 'run-b' });
342
+ await bindTestRunState(root, runB.runId, 'feature', 'T2');
343
+ await markTestRunReadyForSyncBack(root, runB.runId, 'T2');
344
+
345
+ const syncBack = await inspectSyncBack(root, { runId: runA.runId, branch: 'feature', taskId: 'T1' });
346
+ const status = await getProjectStatus(root, { branch: 'feature' });
347
+
348
+ assert.equal(syncBack.status, 'blocked');
349
+ assert.deepEqual(syncBack.affectedFileConflicts.map((entry) => entry.runId), ['run-b']);
350
+ assert.equal(syncBack.approvalCard.status, 'blocked');
351
+ assert.equal(syncBack.approvalCard.risk, 'blocked');
352
+ assert.deepEqual(syncBack.approvalCard.affectedFileConflicts.map((entry) => entry.runId), ['run-b']);
353
+ assert.equal(syncBack.approvalCard.blockers.some((reason) => reason.includes('Affected file packages/core/src/index.ts')), true);
354
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('Affected file packages/core/src/index.ts')), true);
355
+ assert.equal(status.affectedFileConflicts.length > 0, true);
356
+ } finally {
357
+ await rm(root, { recursive: true, force: true });
358
+ }
359
+ });
360
+
361
+ test('sync-back ignores superseded failed retry runs for the same task and file', async () => {
362
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-retry-conflict-'));
363
+ try {
364
+ await initProject(root);
365
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []).replace('packages/core/src/index.ts', 'docs/retry.md'));
366
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
367
+ const failed = await createRun(root, { runId: 'run-failed' });
368
+ await bindTestRunState(root, failed.runId, 'feature', 'T1');
369
+ await writeRunState(root, {
370
+ ...await readRunState(root, failed.runId),
371
+ status: 'failed',
372
+ validation: { status: 'fail', commands: ['npm test'], evidence: [] }
373
+ });
374
+ const retry = await createRun(root, { runId: 'run-retry' });
375
+ await bindTestRunState(root, retry.runId, 'feature', 'T1');
376
+ await markTestRunReadyForSyncBack(root, retry.runId, 'T1');
377
+
378
+ const syncBack = await inspectSyncBack(root, { runId: retry.runId, branch: 'feature', taskId: 'T1' });
379
+ const applied = await applySyncBack(root, { runId: retry.runId, branch: 'feature', taskId: 'T1' });
380
+
381
+ assert.equal(syncBack.status, 'ready');
382
+ assert.deepEqual(syncBack.affectedFileConflicts, []);
383
+ assert.equal(applied.applied, true);
384
+ } finally {
385
+ await rm(root, { recursive: true, force: true });
386
+ }
387
+ });
388
+
389
+ test('sync-back ignores foreground non-authoritative observer runs as affected-file conflicts', async () => {
390
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-foreground-conflict-'));
391
+ try {
392
+ await initProject(root);
393
+ await writeBranchDocs(root, 'feature', validTaskMarkdown('T1', []).replace('packages/core/src/index.ts', 'docs/observer.md'));
394
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
395
+ const observer = await createRun(root, { runId: 'run-observer' });
396
+ await bindTestRunState(root, observer.runId, 'feature', 'T1');
397
+ const delegation = createDelegationRecord({
398
+ delegationId: 'F-T1-observer-001',
399
+ task: 'T1',
400
+ agent: 'observer',
401
+ runMode: 'foreground',
402
+ blocking: false,
403
+ requiredForPhaseExit: false,
404
+ expectedArtifact: 'artifacts/observer-T1.md'
405
+ });
406
+ await writeRunState(root, {
407
+ ...await readRunState(root, observer.runId),
408
+ status: 'completed',
409
+ phase: 'foreground-subagents',
410
+ delegations: { [delegation.delegationId]: { ...delegation, status: 'COMPLETED', terminalEventAt: new Date().toISOString() } }
411
+ });
412
+ const main = await createRun(root, { runId: 'run-main' });
413
+ await bindTestRunState(root, main.runId, 'feature', 'T1');
414
+ await markTestRunReadyForSyncBack(root, main.runId, 'T1');
415
+
416
+ const syncBack = await inspectSyncBack(root, { runId: main.runId, branch: 'feature', taskId: 'T1' });
417
+
418
+ assert.equal(syncBack.status, 'ready');
419
+ assert.deepEqual(syncBack.affectedFileConflicts, []);
420
+ } finally {
421
+ await rm(root, { recursive: true, force: true });
422
+ }
423
+ });
424
+
425
+ test('sync-back blocks downstream apply until dependencies are completed', async () => {
426
+ const root = await mkdtemp(path.join(tmpdir(), 'sdd-syncback-dependencies-'));
427
+ try {
428
+ await initProject(root);
429
+ await writeBranchDocs(root, 'feature', `# Tasks\n\n${validTaskMarkdown('DEP1', [])}\n${validTaskMarkdown('DEP2', ['DEP1']).replace('packages/core/src/index.ts', 'docs/dep2.md')}`);
430
+ await writeVerifyContract(root, { branch: 'feature', branchSource: 'cli_option' });
431
+ const state = await createRun(root, { runId: 'run-dep2' });
432
+ await bindTestRunState(root, state.runId, 'feature', 'DEP2');
433
+ await markTestRunReadyForSyncBack(root, state.runId, 'DEP2');
434
+
435
+ const syncBack = await inspectSyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'DEP2' });
436
+
437
+ assert.equal(syncBack.status, 'blocked');
438
+ assert.equal(syncBack.reasons.some((reason) => reason.includes('DEP2 depends on DEP1, but DEP1 status is pending')), true);
439
+ await assert.rejects(
440
+ () => applySyncBack(root, { runId: state.runId, branch: 'feature', taskId: 'DEP2', approved: true }),
441
+ /DEP2 depends on DEP1/
442
+ );
443
+ } finally {
444
+ await rm(root, { recursive: true, force: true });
445
+ }
446
+ });
@@ -0,0 +1,2 @@
1
+ export * from './sync-back/apply.js';
2
+ export * from './sync-back/inspect.js';
@@ -0,0 +1,193 @@
1
+ export type TaskRiskLevel = 'low' | 'medium' | 'high';
2
+
3
+ export type TaskFileClass = 'spec-doc' | 'runtime-state' | 'cli-source' | 'core-source' | 'test-source' | 'api-schema' | 'generated-ai-entry' | 'release-doc' | 'unknown';
4
+
5
+ export interface TaskRiskProfile {
6
+ contract: 'sdd-task-risk-profile-v1';
7
+ taskId: string | null;
8
+ riskLevel: TaskRiskLevel;
9
+ rawTags: string[];
10
+ normalizedTags: string[];
11
+ fileClasses: TaskFileClass[];
12
+ sourceBoundary: boolean;
13
+ runtimeStateBoundary: boolean;
14
+ docsOnly: boolean;
15
+ validationOnly: boolean;
16
+ securitySensitive: boolean;
17
+ externalUnknown: boolean;
18
+ externalKnown: boolean;
19
+ contextRisk: boolean;
20
+ tokenRisk: boolean;
21
+ performanceRisk: boolean;
22
+ teamRecommendation: 'none' | 'review-lite' | 'team-required';
23
+ approvalRecommendation: 'direct' | 'review' | 'human-checkpoint';
24
+ reasons: string[];
25
+ }
26
+
27
+ export interface TaskRiskProfileInput {
28
+ id?: string | null;
29
+ risk?: string[];
30
+ affectedFiles?: string[];
31
+ validation?: string[];
32
+ requiredArtifacts?: string[];
33
+ }
34
+
35
+ export function buildTaskRiskProfile(task: TaskRiskProfileInput | null | undefined): TaskRiskProfile {
36
+ const rawTags = task?.risk ?? [];
37
+ const fileClasses = [...new Set((task?.affectedFiles ?? []).map(classifyTaskFile))].sort();
38
+ const fileDerivedTags = fileClasses.includes('api-schema') ? ['api-schema'] : [];
39
+ const normalizedTags = [...new Set([...rawTags.map(normalizeRiskTag).filter(Boolean), ...fileDerivedTags])].sort();
40
+ const sourceBoundary = fileClasses.includes('cli-source') || fileClasses.includes('core-source');
41
+ const runtimeStateBoundary = fileClasses.includes('runtime-state');
42
+ const docsOnly = fileClasses.length > 0 && fileClasses.every((fileClass) => fileClass === 'spec-doc' || fileClass === 'release-doc');
43
+ const validationOnly = normalizedTags.includes('validation-only') || (task?.validation?.length ?? 0) > 0 && !sourceBoundary && docsOnly;
44
+ const securitySensitive = normalizedTags.some((tag) => ['security', 'auth', 'token', 'secret', 'token-secret', 'credential', 'credentials', 'permission', 'sql-injection'].includes(tag));
45
+ const externalUnknown = normalizedTags.includes('external-unknown');
46
+ const externalKnown = normalizedTags.includes('external');
47
+ const contextRisk = normalizedTags.includes('context-risk') || normalizedTags.includes('context-budget');
48
+ const tokenRisk = normalizedTags.includes('token-risk');
49
+ const performanceRisk = normalizedTags.includes('performance') || normalizedTags.includes('latency') || normalizedTags.includes('cost');
50
+ const highRiskTag = normalizedTags.some((tag) => HIGH_RISK_TAGS.has(tag));
51
+ const mediumRiskTag = normalizedTags.length > 0;
52
+ const reasons: string[] = [];
53
+
54
+ if (sourceBoundary) {
55
+ reasons.push('Task touches CLI/core source boundary files.');
56
+ }
57
+ if (runtimeStateBoundary) {
58
+ reasons.push('Task touches runtime state or artifact storage paths.');
59
+ }
60
+ if (highRiskTag) {
61
+ reasons.push(`Task declares high-risk tags: ${normalizedTags.filter((tag) => HIGH_RISK_TAGS.has(tag)).join(', ')}.`);
62
+ }
63
+ if (securitySensitive) {
64
+ reasons.push('Task is security-sensitive.');
65
+ }
66
+ if (externalUnknown) {
67
+ reasons.push('Task depends on external behavior with unknown impact.');
68
+ }
69
+ if (externalKnown) {
70
+ reasons.push('Task depends on known external or third-party behavior.');
71
+ }
72
+ if (contextRisk || tokenRisk || performanceRisk) {
73
+ reasons.push('Task declares context, token, or performance risk signals.');
74
+ }
75
+
76
+ const riskLevel: TaskRiskLevel = sourceBoundary || highRiskTag || securitySensitive || externalUnknown ? 'high' : runtimeStateBoundary || mediumRiskTag || externalKnown || (task?.affectedFiles?.length ?? 0) > 3 ? 'medium' : 'low';
77
+ const teamRecommendation = riskLevel === 'high' ? 'team-required' : riskLevel === 'medium' || hasReviewArtifactRequirement(task) ? 'review-lite' : 'none';
78
+ const approvalRecommendation = riskLevel === 'high' ? 'human-checkpoint' : riskLevel === 'medium' ? 'review' : 'direct';
79
+
80
+ return {
81
+ contract: 'sdd-task-risk-profile-v1',
82
+ taskId: task?.id ?? null,
83
+ riskLevel,
84
+ rawTags: [...rawTags],
85
+ normalizedTags,
86
+ fileClasses,
87
+ sourceBoundary,
88
+ runtimeStateBoundary,
89
+ docsOnly,
90
+ validationOnly,
91
+ securitySensitive,
92
+ externalUnknown,
93
+ externalKnown,
94
+ contextRisk,
95
+ tokenRisk,
96
+ performanceRisk,
97
+ teamRecommendation,
98
+ approvalRecommendation,
99
+ reasons: reasons.length > 0 ? reasons : ['No source-boundary, runtime-state, security, external, context, token, performance, or high-risk tag signals were detected.']
100
+ };
101
+ }
102
+
103
+ export function normalizeRiskTag(value: string): string {
104
+ const normalized = value.trim().toLowerCase().replace(/[\s_]+/g, '-');
105
+ if (!normalized) {
106
+ return '';
107
+ }
108
+ if (normalized === 'highrisk') {
109
+ return 'high-risk';
110
+ }
111
+ if (normalized === 'state-machine' || normalized === 'state-machines') {
112
+ return 'state-machine';
113
+ }
114
+ if (normalized === 'api' || normalized === 'api-contract') {
115
+ return 'api-schema';
116
+ }
117
+ if (normalized === 'build' || normalized === 'ci') {
118
+ return 'ci-build';
119
+ }
120
+ if (normalized === 'data-loss' || normalized === 'database-data-loss') {
121
+ return 'data-loss';
122
+ }
123
+ if (normalized === 'external' || normalized === 'third-party') {
124
+ return 'external';
125
+ }
126
+ if (normalized === 'external-unknown' || normalized === 'unknown-external') {
127
+ return 'external-unknown';
128
+ }
129
+ if (normalized === 'unknown' || normalized === 'blocked-unknown') {
130
+ return 'unknown';
131
+ }
132
+ if (normalized === 'context') {
133
+ return 'context-risk';
134
+ }
135
+ if (normalized === 'tokens' || normalized === 'token-budget') {
136
+ return 'token-risk';
137
+ }
138
+ return normalized;
139
+ }
140
+
141
+ export function classifyTaskFile(filePath: string): TaskFileClass {
142
+ const normalized = filePath.replace(/\\/g, '/').replace(/^\.\//, '');
143
+ if (/^packages\/cli\/src\//.test(normalized)) {
144
+ return normalized.endsWith('.test.ts') ? 'test-source' : 'cli-source';
145
+ }
146
+ if (/^packages\/core\/src\//.test(normalized)) {
147
+ return normalized.endsWith('.test.ts') ? 'test-source' : 'core-source';
148
+ }
149
+ if (/^packages\/.+\.test\.ts$/.test(normalized) || /(^|\/)test-support\//.test(normalized)) {
150
+ return 'test-source';
151
+ }
152
+ if (/^\.sdd\//.test(normalized) || /^runs\//.test(normalized) || /^artifacts\//.test(normalized)) {
153
+ return 'runtime-state';
154
+ }
155
+ if (/^\.claude\//.test(normalized) || /^commands\//.test(normalized) || /^agents\//.test(normalized) || /^workflows\//.test(normalized)) {
156
+ return 'generated-ai-entry';
157
+ }
158
+ if (/^api\/.*\.(ya?ml|json)$/i.test(normalized) || /(^|\/)(openapi|swagger)\.(ya?ml|json)$/i.test(normalized)) {
159
+ return 'api-schema';
160
+ }
161
+ if (/release\.md$/.test(normalized)) {
162
+ return 'release-doc';
163
+ }
164
+ if (/^(specs|docs|context)\//.test(normalized) || /(^|\/)(README|CHANGELOG)\.md$/i.test(normalized)) {
165
+ return 'spec-doc';
166
+ }
167
+ return 'unknown';
168
+ }
169
+
170
+ function hasReviewArtifactRequirement(task: Pick<TaskRiskProfileInput, 'requiredArtifacts'> | null | undefined): boolean {
171
+ return Boolean(task?.requiredArtifacts?.some((artifact) => /review|validation|security|验证|评审|安全/i.test(artifact)));
172
+ }
173
+
174
+ const HIGH_RISK_TAGS = new Set([
175
+ 'high-risk',
176
+ 'source-boundary',
177
+ 'platform-runtime',
178
+ 'state-machine',
179
+ 'concurrency',
180
+ 'database',
181
+ 'data-loss',
182
+ 'sql',
183
+ 'security',
184
+ 'api-schema',
185
+ 'ci-build',
186
+ 'external-unknown',
187
+ 'token',
188
+ 'secret',
189
+ 'token-secret',
190
+ 'unknown',
191
+ 'multi-agent-review',
192
+ 'evidence-semantics'
193
+ ]);