@emiliosp/pi-maestro 0.7.4 → 0.9.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 (431) hide show
  1. package/ADR.md +89 -0
  2. package/CHANGELOG.md +6 -0
  3. package/README.md +3 -2
  4. package/ROADMAP.md +115 -21
  5. package/agents/builder.md +2 -4
  6. package/docs/glossary.md +2 -1
  7. package/docs/workflow.md +25 -9
  8. package/node_modules/pi-subagents/CHANGELOG.md +140 -0
  9. package/node_modules/pi-subagents/README.md +1 -1
  10. package/node_modules/pi-subagents/agents/evidence-auditor.md +1 -0
  11. package/node_modules/pi-subagents/agents/oracle.md +9 -19
  12. package/node_modules/pi-subagents/agents/researcher.md +0 -3
  13. package/node_modules/pi-subagents/agents/reviewer.md +18 -61
  14. package/node_modules/pi-subagents/agents/scout.md +1 -4
  15. package/node_modules/pi-subagents/agents/worker.md +8 -25
  16. package/node_modules/pi-subagents/docs/agents.md +71 -4
  17. package/node_modules/pi-subagents/docs/configuration.md +75 -10
  18. package/node_modules/pi-subagents/docs/extension-api.md +40 -11
  19. package/node_modules/pi-subagents/docs/missions.md +24 -17
  20. package/node_modules/pi-subagents/docs/models.md +1 -1
  21. package/node_modules/pi-subagents/docs/observability.md +12 -5
  22. package/node_modules/pi-subagents/docs/tool-reference.md +103 -85
  23. package/node_modules/pi-subagents/docs/watchdog.md +8 -6
  24. package/node_modules/pi-subagents/docs/workflows.md +17 -8
  25. package/node_modules/pi-subagents/index.d.ts.map +1 -1
  26. package/node_modules/pi-subagents/index.js +5 -0
  27. package/node_modules/pi-subagents/index.js.map +1 -1
  28. package/node_modules/pi-subagents/package.json +2 -1
  29. package/node_modules/pi-subagents/prompts/council.md +1 -1
  30. package/node_modules/pi-subagents/skills/pi-subagents/SKILL.md +2 -2
  31. package/node_modules/pi-subagents/skills/pi-subagents/references/constraints-and-recipes.md +1 -1
  32. package/node_modules/pi-subagents/skills/pi-subagents/references/execution-controls.md +16 -16
  33. package/node_modules/pi-subagents/skills/pi-subagents/references/management-authoring-rpc.md +16 -12
  34. package/node_modules/pi-subagents/skills/pi-subagents/references/multi-lane-orchestration.md +1 -1
  35. package/node_modules/pi-subagents/skills/pi-subagents/references/prompting-and-roles.md +3 -3
  36. package/node_modules/pi-subagents/src/agents/advertised-agent-prompt.d.ts +5 -1
  37. package/node_modules/pi-subagents/src/agents/advertised-agent-prompt.d.ts.map +1 -1
  38. package/node_modules/pi-subagents/src/agents/advertised-agent-prompt.js +8 -2
  39. package/node_modules/pi-subagents/src/agents/advertised-agent-prompt.js.map +1 -1
  40. package/node_modules/pi-subagents/src/agents/agent-management.d.ts.map +1 -1
  41. package/node_modules/pi-subagents/src/agents/agent-management.js +5 -0
  42. package/node_modules/pi-subagents/src/agents/agent-management.js.map +1 -1
  43. package/node_modules/pi-subagents/src/agents/agent-scope.d.ts +1 -0
  44. package/node_modules/pi-subagents/src/agents/agent-scope.d.ts.map +1 -1
  45. package/node_modules/pi-subagents/src/agents/agent-scope.js +3 -0
  46. package/node_modules/pi-subagents/src/agents/agent-scope.js.map +1 -1
  47. package/node_modules/pi-subagents/src/agents/agent-serializer.d.ts.map +1 -1
  48. package/node_modules/pi-subagents/src/agents/agent-serializer.js +3 -0
  49. package/node_modules/pi-subagents/src/agents/agent-serializer.js.map +1 -1
  50. package/node_modules/pi-subagents/src/agents/agents.d.ts +14 -2
  51. package/node_modules/pi-subagents/src/agents/agents.d.ts.map +1 -1
  52. package/node_modules/pi-subagents/src/agents/agents.js +94 -36
  53. package/node_modules/pi-subagents/src/agents/agents.js.map +1 -1
  54. package/node_modules/pi-subagents/src/api/external-runs.d.ts.map +1 -1
  55. package/node_modules/pi-subagents/src/api/external-runs.js +5 -4
  56. package/node_modules/pi-subagents/src/api/external-runs.js.map +1 -1
  57. package/node_modules/pi-subagents/src/api/preflight.d.ts +2 -0
  58. package/node_modules/pi-subagents/src/api/preflight.d.ts.map +1 -1
  59. package/node_modules/pi-subagents/src/api/preflight.js +7 -3
  60. package/node_modules/pi-subagents/src/api/preflight.js.map +1 -1
  61. package/node_modules/pi-subagents/src/extension/active-runs-prompt.d.ts +8 -0
  62. package/node_modules/pi-subagents/src/extension/active-runs-prompt.d.ts.map +1 -0
  63. package/node_modules/pi-subagents/src/extension/active-runs-prompt.js +30 -0
  64. package/node_modules/pi-subagents/src/extension/active-runs-prompt.js.map +1 -0
  65. package/node_modules/pi-subagents/src/extension/config.d.ts.map +1 -1
  66. package/node_modules/pi-subagents/src/extension/config.js +29 -2
  67. package/node_modules/pi-subagents/src/extension/config.js.map +1 -1
  68. package/node_modules/pi-subagents/src/extension/control-notices.d.ts +0 -2
  69. package/node_modules/pi-subagents/src/extension/control-notices.d.ts.map +1 -1
  70. package/node_modules/pi-subagents/src/extension/control-notices.js +1 -7
  71. package/node_modules/pi-subagents/src/extension/control-notices.js.map +1 -1
  72. package/node_modules/pi-subagents/src/extension/declaration-pinning.d.ts +19 -0
  73. package/node_modules/pi-subagents/src/extension/declaration-pinning.d.ts.map +1 -0
  74. package/node_modules/pi-subagents/src/extension/declaration-pinning.js +154 -0
  75. package/node_modules/pi-subagents/src/extension/declaration-pinning.js.map +1 -0
  76. package/node_modules/pi-subagents/src/extension/doctor.d.ts +3 -1
  77. package/node_modules/pi-subagents/src/extension/doctor.d.ts.map +1 -1
  78. package/node_modules/pi-subagents/src/extension/doctor.js +3 -9
  79. package/node_modules/pi-subagents/src/extension/doctor.js.map +1 -1
  80. package/node_modules/pi-subagents/src/extension/fanout-child.d.ts.map +1 -1
  81. package/node_modules/pi-subagents/src/extension/fanout-child.js +6 -8
  82. package/node_modules/pi-subagents/src/extension/fanout-child.js.map +1 -1
  83. package/node_modules/pi-subagents/src/extension/index.d.ts +1 -2
  84. package/node_modules/pi-subagents/src/extension/index.d.ts.map +1 -1
  85. package/node_modules/pi-subagents/src/extension/index.js +121 -127
  86. package/node_modules/pi-subagents/src/extension/index.js.map +1 -1
  87. package/node_modules/pi-subagents/src/extension/rpc.d.ts.map +1 -1
  88. package/node_modules/pi-subagents/src/extension/rpc.js +12 -6
  89. package/node_modules/pi-subagents/src/extension/rpc.js.map +1 -1
  90. package/node_modules/pi-subagents/src/extension/schemas.d.ts +137 -1
  91. package/node_modules/pi-subagents/src/extension/schemas.d.ts.map +1 -1
  92. package/node_modules/pi-subagents/src/extension/schemas.js +22 -22
  93. package/node_modules/pi-subagents/src/extension/schemas.js.map +1 -1
  94. package/node_modules/pi-subagents/src/extension/subagent-guide.d.ts +1 -0
  95. package/node_modules/pi-subagents/src/extension/subagent-guide.d.ts.map +1 -1
  96. package/node_modules/pi-subagents/src/extension/subagent-guide.js +80 -6
  97. package/node_modules/pi-subagents/src/extension/subagent-guide.js.map +1 -1
  98. package/node_modules/pi-subagents/src/extension/subagent-options.d.ts +8 -0
  99. package/node_modules/pi-subagents/src/extension/subagent-options.d.ts.map +1 -0
  100. package/node_modules/pi-subagents/src/extension/subagent-options.js +52 -0
  101. package/node_modules/pi-subagents/src/extension/subagent-options.js.map +1 -0
  102. package/node_modules/pi-subagents/src/extension/tool-activation.d.ts.map +1 -1
  103. package/node_modules/pi-subagents/src/extension/tool-activation.js +7 -4
  104. package/node_modules/pi-subagents/src/extension/tool-activation.js.map +1 -1
  105. package/node_modules/pi-subagents/src/extension/tool-description.d.ts +4 -7
  106. package/node_modules/pi-subagents/src/extension/tool-description.d.ts.map +1 -1
  107. package/node_modules/pi-subagents/src/extension/tool-description.js +45 -59
  108. package/node_modules/pi-subagents/src/extension/tool-description.js.map +1 -1
  109. package/node_modules/pi-subagents/src/inspectors/actions.d.ts +2 -0
  110. package/node_modules/pi-subagents/src/inspectors/actions.d.ts.map +1 -1
  111. package/node_modules/pi-subagents/src/inspectors/actions.js +41 -13
  112. package/node_modules/pi-subagents/src/inspectors/actions.js.map +1 -1
  113. package/node_modules/pi-subagents/src/inspectors/plugins.d.ts.map +1 -1
  114. package/node_modules/pi-subagents/src/inspectors/plugins.js +3 -2
  115. package/node_modules/pi-subagents/src/inspectors/plugins.js.map +1 -1
  116. package/node_modules/pi-subagents/src/inspectors/tmux/actions.d.ts +26 -0
  117. package/node_modules/pi-subagents/src/inspectors/tmux/actions.d.ts.map +1 -0
  118. package/node_modules/pi-subagents/src/inspectors/tmux/actions.js +182 -0
  119. package/node_modules/pi-subagents/src/inspectors/tmux/actions.js.map +1 -0
  120. package/node_modules/pi-subagents/src/inspectors/tmux/client.d.ts +28 -0
  121. package/node_modules/pi-subagents/src/inspectors/tmux/client.d.ts.map +1 -0
  122. package/node_modules/pi-subagents/src/inspectors/tmux/client.js +65 -0
  123. package/node_modules/pi-subagents/src/inspectors/tmux/client.js.map +1 -0
  124. package/node_modules/pi-subagents/src/inspectors/tmux/plugin.d.ts +8 -0
  125. package/node_modules/pi-subagents/src/inspectors/tmux/plugin.d.ts.map +1 -0
  126. package/node_modules/pi-subagents/src/inspectors/tmux/plugin.js +15 -0
  127. package/node_modules/pi-subagents/src/inspectors/tmux/plugin.js.map +1 -0
  128. package/node_modules/pi-subagents/src/integrations/herdr-status.d.ts +0 -1
  129. package/node_modules/pi-subagents/src/integrations/herdr-status.d.ts.map +1 -1
  130. package/node_modules/pi-subagents/src/integrations/herdr-status.js +18 -52
  131. package/node_modules/pi-subagents/src/integrations/herdr-status.js.map +1 -1
  132. package/node_modules/pi-subagents/src/integrations/program-status.d.ts +31 -0
  133. package/node_modules/pi-subagents/src/integrations/program-status.d.ts.map +1 -0
  134. package/node_modules/pi-subagents/src/integrations/program-status.js +189 -0
  135. package/node_modules/pi-subagents/src/integrations/program-status.js.map +1 -0
  136. package/node_modules/pi-subagents/src/intercom/native-supervisor-channel.d.ts +17 -1
  137. package/node_modules/pi-subagents/src/intercom/native-supervisor-channel.d.ts.map +1 -1
  138. package/node_modules/pi-subagents/src/intercom/native-supervisor-channel.js +102 -9
  139. package/node_modules/pi-subagents/src/intercom/native-supervisor-channel.js.map +1 -1
  140. package/node_modules/pi-subagents/src/intercom/result-intercom.js +1 -1
  141. package/node_modules/pi-subagents/src/intercom/result-intercom.js.map +1 -1
  142. package/node_modules/pi-subagents/src/intercom/supervisor-ui.d.ts +2 -12
  143. package/node_modules/pi-subagents/src/intercom/supervisor-ui.d.ts.map +1 -1
  144. package/node_modules/pi-subagents/src/intercom/supervisor-ui.js +2 -154
  145. package/node_modules/pi-subagents/src/intercom/supervisor-ui.js.map +1 -1
  146. package/node_modules/pi-subagents/src/missions/store.d.ts.map +1 -1
  147. package/node_modules/pi-subagents/src/missions/store.js +27 -5
  148. package/node_modules/pi-subagents/src/missions/store.js.map +1 -1
  149. package/node_modules/pi-subagents/src/runs/background/active-async-capacity.d.ts +2 -1
  150. package/node_modules/pi-subagents/src/runs/background/active-async-capacity.d.ts.map +1 -1
  151. package/node_modules/pi-subagents/src/runs/background/active-async-capacity.js +10 -6
  152. package/node_modules/pi-subagents/src/runs/background/active-async-capacity.js.map +1 -1
  153. package/node_modules/pi-subagents/src/runs/background/async-execution.d.ts +9 -1
  154. package/node_modules/pi-subagents/src/runs/background/async-execution.d.ts.map +1 -1
  155. package/node_modules/pi-subagents/src/runs/background/async-execution.js +253 -144
  156. package/node_modules/pi-subagents/src/runs/background/async-execution.js.map +1 -1
  157. package/node_modules/pi-subagents/src/runs/background/async-job-tracker.d.ts +4 -1
  158. package/node_modules/pi-subagents/src/runs/background/async-job-tracker.d.ts.map +1 -1
  159. package/node_modules/pi-subagents/src/runs/background/async-job-tracker.js +3 -2
  160. package/node_modules/pi-subagents/src/runs/background/async-job-tracker.js.map +1 -1
  161. package/node_modules/pi-subagents/src/runs/background/async-resume.d.ts.map +1 -1
  162. package/node_modules/pi-subagents/src/runs/background/async-resume.js +9 -3
  163. package/node_modules/pi-subagents/src/runs/background/async-resume.js.map +1 -1
  164. package/node_modules/pi-subagents/src/runs/background/await-async-run.d.ts +8 -4
  165. package/node_modules/pi-subagents/src/runs/background/await-async-run.d.ts.map +1 -1
  166. package/node_modules/pi-subagents/src/runs/background/await-async-run.js +14 -8
  167. package/node_modules/pi-subagents/src/runs/background/await-async-run.js.map +1 -1
  168. package/node_modules/pi-subagents/src/runs/background/binary-bootstrap.d.ts.map +1 -1
  169. package/node_modules/pi-subagents/src/runs/background/binary-bootstrap.js +2 -1
  170. package/node_modules/pi-subagents/src/runs/background/binary-bootstrap.js.map +1 -1
  171. package/node_modules/pi-subagents/src/runs/background/chain-root-attachment.d.ts +2 -0
  172. package/node_modules/pi-subagents/src/runs/background/chain-root-attachment.d.ts.map +1 -1
  173. package/node_modules/pi-subagents/src/runs/background/chain-root-attachment.js +9 -6
  174. package/node_modules/pi-subagents/src/runs/background/chain-root-attachment.js.map +1 -1
  175. package/node_modules/pi-subagents/src/runs/background/control-channel.d.ts +1 -0
  176. package/node_modules/pi-subagents/src/runs/background/control-channel.d.ts.map +1 -1
  177. package/node_modules/pi-subagents/src/runs/background/control-channel.js +27 -3
  178. package/node_modules/pi-subagents/src/runs/background/control-channel.js.map +1 -1
  179. package/node_modules/pi-subagents/src/runs/background/fleet-view.js +5 -5
  180. package/node_modules/pi-subagents/src/runs/background/fleet-view.js.map +1 -1
  181. package/node_modules/pi-subagents/src/runs/background/notify.d.ts +12 -2
  182. package/node_modules/pi-subagents/src/runs/background/notify.d.ts.map +1 -1
  183. package/node_modules/pi-subagents/src/runs/background/notify.js +152 -13
  184. package/node_modules/pi-subagents/src/runs/background/notify.js.map +1 -1
  185. package/node_modules/pi-subagents/src/runs/background/result-files.d.ts +29 -0
  186. package/node_modules/pi-subagents/src/runs/background/result-files.d.ts.map +1 -1
  187. package/node_modules/pi-subagents/src/runs/background/result-files.js +104 -6
  188. package/node_modules/pi-subagents/src/runs/background/result-files.js.map +1 -1
  189. package/node_modules/pi-subagents/src/runs/background/result-watcher.d.ts.map +1 -1
  190. package/node_modules/pi-subagents/src/runs/background/result-watcher.js +60 -64
  191. package/node_modules/pi-subagents/src/runs/background/result-watcher.js.map +1 -1
  192. package/node_modules/pi-subagents/src/runs/background/resume-guidance.js +2 -2
  193. package/node_modules/pi-subagents/src/runs/background/resume-guidance.js.map +1 -1
  194. package/node_modules/pi-subagents/src/runs/background/run-child-session.d.ts.map +1 -1
  195. package/node_modules/pi-subagents/src/runs/background/run-child-session.js +9 -15
  196. package/node_modules/pi-subagents/src/runs/background/run-child-session.js.map +1 -1
  197. package/node_modules/pi-subagents/src/runs/background/run-id-resolver.d.ts.map +1 -1
  198. package/node_modules/pi-subagents/src/runs/background/run-id-resolver.js +9 -6
  199. package/node_modules/pi-subagents/src/runs/background/run-id-resolver.js.map +1 -1
  200. package/node_modules/pi-subagents/src/runs/background/run-status.d.ts.map +1 -1
  201. package/node_modules/pi-subagents/src/runs/background/run-status.js +19 -15
  202. package/node_modules/pi-subagents/src/runs/background/run-status.js.map +1 -1
  203. package/node_modules/pi-subagents/src/runs/background/runner-aliases.d.ts.map +1 -1
  204. package/node_modules/pi-subagents/src/runs/background/runner-aliases.js +11 -8
  205. package/node_modules/pi-subagents/src/runs/background/runner-aliases.js.map +1 -1
  206. package/node_modules/pi-subagents/src/runs/background/runner-child-launch.d.ts.map +1 -1
  207. package/node_modules/pi-subagents/src/runs/background/runner-child-launch.js +1 -0
  208. package/node_modules/pi-subagents/src/runs/background/runner-child-launch.js.map +1 -1
  209. package/node_modules/pi-subagents/src/runs/background/runner-http-dispatcher.d.ts +3 -0
  210. package/node_modules/pi-subagents/src/runs/background/runner-http-dispatcher.d.ts.map +1 -1
  211. package/node_modules/pi-subagents/src/runs/background/runner-http-dispatcher.js +2 -0
  212. package/node_modules/pi-subagents/src/runs/background/runner-http-dispatcher.js.map +1 -1
  213. package/node_modules/pi-subagents/src/runs/background/scheduled-runs.d.ts +9 -0
  214. package/node_modules/pi-subagents/src/runs/background/scheduled-runs.d.ts.map +1 -1
  215. package/node_modules/pi-subagents/src/runs/background/scheduled-runs.js +124 -36
  216. package/node_modules/pi-subagents/src/runs/background/scheduled-runs.js.map +1 -1
  217. package/node_modules/pi-subagents/src/runs/background/subagent-runner-bootstrap.d.ts.map +1 -1
  218. package/node_modules/pi-subagents/src/runs/background/subagent-runner-bootstrap.js +5 -1
  219. package/node_modules/pi-subagents/src/runs/background/subagent-runner-bootstrap.js.map +1 -1
  220. package/node_modules/pi-subagents/src/runs/background/subagent-runner.d.ts +3 -1
  221. package/node_modules/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
  222. package/node_modules/pi-subagents/src/runs/background/subagent-runner.js +211 -283
  223. package/node_modules/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
  224. package/node_modules/pi-subagents/src/runs/background/subagent-wait.d.ts +2 -0
  225. package/node_modules/pi-subagents/src/runs/background/subagent-wait.d.ts.map +1 -1
  226. package/node_modules/pi-subagents/src/runs/background/subagent-wait.js +34 -20
  227. package/node_modules/pi-subagents/src/runs/background/subagent-wait.js.map +1 -1
  228. package/node_modules/pi-subagents/src/runs/background/terminal-run-index.d.ts +1 -0
  229. package/node_modules/pi-subagents/src/runs/background/terminal-run-index.d.ts.map +1 -1
  230. package/node_modules/pi-subagents/src/runs/background/terminal-run-index.js +47 -1
  231. package/node_modules/pi-subagents/src/runs/background/terminal-run-index.js.map +1 -1
  232. package/node_modules/pi-subagents/src/runs/background/wait-tool.d.ts.map +1 -1
  233. package/node_modules/pi-subagents/src/runs/background/wait-tool.js +36 -23
  234. package/node_modules/pi-subagents/src/runs/background/wait-tool.js.map +1 -1
  235. package/node_modules/pi-subagents/src/runs/background/workflow-terminal-proof.d.ts +1 -1
  236. package/node_modules/pi-subagents/src/runs/background/workflow-terminal-proof.d.ts.map +1 -1
  237. package/node_modules/pi-subagents/src/runs/background/workflow-terminal-proof.js +12 -3
  238. package/node_modules/pi-subagents/src/runs/background/workflow-terminal-proof.js.map +1 -1
  239. package/node_modules/pi-subagents/src/runs/foreground/async-stop-action.d.ts +7 -1
  240. package/node_modules/pi-subagents/src/runs/foreground/async-stop-action.d.ts.map +1 -1
  241. package/node_modules/pi-subagents/src/runs/foreground/async-stop-action.js +55 -32
  242. package/node_modules/pi-subagents/src/runs/foreground/async-stop-action.js.map +1 -1
  243. package/node_modules/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
  244. package/node_modules/pi-subagents/src/runs/foreground/execution.js +101 -79
  245. package/node_modules/pi-subagents/src/runs/foreground/execution.js.map +1 -1
  246. package/node_modules/pi-subagents/src/runs/foreground/subagent-executor.d.ts +5 -1
  247. package/node_modules/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  248. package/node_modules/pi-subagents/src/runs/foreground/subagent-executor.js +184 -84
  249. package/node_modules/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
  250. package/node_modules/pi-subagents/src/runs/shared/child-hooks.js +6 -5
  251. package/node_modules/pi-subagents/src/runs/shared/child-hooks.js.map +1 -1
  252. package/node_modules/pi-subagents/src/runs/shared/child-launch.d.ts +2 -0
  253. package/node_modules/pi-subagents/src/runs/shared/child-launch.d.ts.map +1 -1
  254. package/node_modules/pi-subagents/src/runs/shared/child-launch.js +1 -0
  255. package/node_modules/pi-subagents/src/runs/shared/child-launch.js.map +1 -1
  256. package/node_modules/pi-subagents/src/runs/shared/child-session.d.ts +4 -0
  257. package/node_modules/pi-subagents/src/runs/shared/child-session.d.ts.map +1 -1
  258. package/node_modules/pi-subagents/src/runs/shared/child-session.js +28 -23
  259. package/node_modules/pi-subagents/src/runs/shared/child-session.js.map +1 -1
  260. package/node_modules/pi-subagents/src/runs/shared/child-tool-plan.d.ts.map +1 -1
  261. package/node_modules/pi-subagents/src/runs/shared/child-tool-plan.js +11 -10
  262. package/node_modules/pi-subagents/src/runs/shared/child-tool-plan.js.map +1 -1
  263. package/node_modules/pi-subagents/src/runs/shared/dynamic-fanout.js +1 -1
  264. package/node_modules/pi-subagents/src/runs/shared/dynamic-fanout.js.map +1 -1
  265. package/node_modules/pi-subagents/src/runs/shared/effective-system-prompt.d.ts +4 -4
  266. package/node_modules/pi-subagents/src/runs/shared/effective-system-prompt.d.ts.map +1 -1
  267. package/node_modules/pi-subagents/src/runs/shared/effective-system-prompt.js +5 -4
  268. package/node_modules/pi-subagents/src/runs/shared/effective-system-prompt.js.map +1 -1
  269. package/node_modules/pi-subagents/src/runs/shared/external-cli-runner.d.ts.map +1 -1
  270. package/node_modules/pi-subagents/src/runs/shared/external-cli-runner.js +3 -2
  271. package/node_modules/pi-subagents/src/runs/shared/external-cli-runner.js.map +1 -1
  272. package/node_modules/pi-subagents/src/runs/shared/herdr-placed-run.d.ts +1 -0
  273. package/node_modules/pi-subagents/src/runs/shared/herdr-placed-run.d.ts.map +1 -1
  274. package/node_modules/pi-subagents/src/runs/shared/herdr-placed-run.js +10 -6
  275. package/node_modules/pi-subagents/src/runs/shared/herdr-placed-run.js.map +1 -1
  276. package/node_modules/pi-subagents/src/runs/shared/model-resolution-diagnostic.d.ts +17 -5
  277. package/node_modules/pi-subagents/src/runs/shared/model-resolution-diagnostic.d.ts.map +1 -1
  278. package/node_modules/pi-subagents/src/runs/shared/model-resolution-diagnostic.js +37 -10
  279. package/node_modules/pi-subagents/src/runs/shared/model-resolution-diagnostic.js.map +1 -1
  280. package/node_modules/pi-subagents/src/runs/shared/model-resolution.d.ts.map +1 -1
  281. package/node_modules/pi-subagents/src/runs/shared/model-resolution.js +29 -1
  282. package/node_modules/pi-subagents/src/runs/shared/model-resolution.js.map +1 -1
  283. package/node_modules/pi-subagents/src/runs/shared/nested-events.d.ts +2 -0
  284. package/node_modules/pi-subagents/src/runs/shared/nested-events.d.ts.map +1 -1
  285. package/node_modules/pi-subagents/src/runs/shared/nested-events.js +4 -0
  286. package/node_modules/pi-subagents/src/runs/shared/nested-events.js.map +1 -1
  287. package/node_modules/pi-subagents/src/runs/shared/orca-progress-tabs.js +1 -1
  288. package/node_modules/pi-subagents/src/runs/shared/orca-progress-tabs.js.map +1 -1
  289. package/node_modules/pi-subagents/src/runs/shared/parallel-handoff.js +2 -2
  290. package/node_modules/pi-subagents/src/runs/shared/parallel-handoff.js.map +1 -1
  291. package/node_modules/pi-subagents/src/runs/shared/parallel-utils.d.ts +2 -0
  292. package/node_modules/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
  293. package/node_modules/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
  294. package/node_modules/pi-subagents/src/runs/shared/partial-output.d.ts +7 -0
  295. package/node_modules/pi-subagents/src/runs/shared/partial-output.d.ts.map +1 -1
  296. package/node_modules/pi-subagents/src/runs/shared/partial-output.js +7 -0
  297. package/node_modules/pi-subagents/src/runs/shared/partial-output.js.map +1 -1
  298. package/node_modules/pi-subagents/src/runs/shared/runner-launcher.d.ts +12 -0
  299. package/node_modules/pi-subagents/src/runs/shared/runner-launcher.d.ts.map +1 -0
  300. package/node_modules/pi-subagents/src/runs/shared/runner-launcher.js +25 -0
  301. package/node_modules/pi-subagents/src/runs/shared/runner-launcher.js.map +1 -0
  302. package/node_modules/pi-subagents/src/runs/shared/single-output.d.ts +31 -1
  303. package/node_modules/pi-subagents/src/runs/shared/single-output.d.ts.map +1 -1
  304. package/node_modules/pi-subagents/src/runs/shared/single-output.js +100 -21
  305. package/node_modules/pi-subagents/src/runs/shared/single-output.js.map +1 -1
  306. package/node_modules/pi-subagents/src/runs/shared/structured-output.d.ts +2 -0
  307. package/node_modules/pi-subagents/src/runs/shared/structured-output.d.ts.map +1 -1
  308. package/node_modules/pi-subagents/src/runs/shared/structured-output.js +26 -8
  309. package/node_modules/pi-subagents/src/runs/shared/structured-output.js.map +1 -1
  310. package/node_modules/pi-subagents/src/runs/shared/subagent-control.js +3 -3
  311. package/node_modules/pi-subagents/src/runs/shared/subagent-control.js.map +1 -1
  312. package/node_modules/pi-subagents/src/runs/shared/subagent-prompt-runtime.d.ts +37 -2
  313. package/node_modules/pi-subagents/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -1
  314. package/node_modules/pi-subagents/src/runs/shared/subagent-prompt-runtime.js +130 -22
  315. package/node_modules/pi-subagents/src/runs/shared/subagent-prompt-runtime.js.map +1 -1
  316. package/node_modules/pi-subagents/src/runs/shared/tool-budget.js +1 -1
  317. package/node_modules/pi-subagents/src/runs/shared/tool-budget.js.map +1 -1
  318. package/node_modules/pi-subagents/src/runs/shared/workflow-async-child-guidance.js +1 -1
  319. package/node_modules/pi-subagents/src/runs/shared/workflow-async-child-guidance.js.map +1 -1
  320. package/node_modules/pi-subagents/src/runs/shared/worktree-cleanup-plan.js +1 -1
  321. package/node_modules/pi-subagents/src/runs/shared/worktree-cleanup-plan.js.map +1 -1
  322. package/node_modules/pi-subagents/src/shared/atomic-json.d.ts +4 -3
  323. package/node_modules/pi-subagents/src/shared/atomic-json.d.ts.map +1 -1
  324. package/node_modules/pi-subagents/src/shared/atomic-json.js +3 -1
  325. package/node_modules/pi-subagents/src/shared/atomic-json.js.map +1 -1
  326. package/node_modules/pi-subagents/src/shared/child-transcript.js +1 -1
  327. package/node_modules/pi-subagents/src/shared/child-transcript.js.map +1 -1
  328. package/node_modules/pi-subagents/src/shared/edit-distance.d.ts +5 -0
  329. package/node_modules/pi-subagents/src/shared/edit-distance.d.ts.map +1 -0
  330. package/node_modules/pi-subagents/src/shared/edit-distance.js +33 -0
  331. package/node_modules/pi-subagents/src/shared/edit-distance.js.map +1 -0
  332. package/node_modules/pi-subagents/src/shared/extension-context.d.ts +5 -0
  333. package/node_modules/pi-subagents/src/shared/extension-context.d.ts.map +1 -1
  334. package/node_modules/pi-subagents/src/shared/extension-context.js +7 -0
  335. package/node_modules/pi-subagents/src/shared/extension-context.js.map +1 -1
  336. package/node_modules/pi-subagents/src/shared/formatters.d.ts.map +1 -1
  337. package/node_modules/pi-subagents/src/shared/formatters.js +1 -6
  338. package/node_modules/pi-subagents/src/shared/formatters.js.map +1 -1
  339. package/node_modules/pi-subagents/src/shared/model-info.d.ts +8 -0
  340. package/node_modules/pi-subagents/src/shared/model-info.d.ts.map +1 -1
  341. package/node_modules/pi-subagents/src/shared/model-info.js +22 -0
  342. package/node_modules/pi-subagents/src/shared/model-info.js.map +1 -1
  343. package/node_modules/pi-subagents/src/shared/package-version.d.ts +3 -0
  344. package/node_modules/pi-subagents/src/shared/package-version.d.ts.map +1 -0
  345. package/node_modules/pi-subagents/src/shared/package-version.js +15 -0
  346. package/node_modules/pi-subagents/src/shared/package-version.js.map +1 -0
  347. package/node_modules/pi-subagents/src/shared/parent-wake.d.ts +24 -0
  348. package/node_modules/pi-subagents/src/shared/parent-wake.d.ts.map +1 -0
  349. package/node_modules/pi-subagents/src/shared/parent-wake.js +71 -0
  350. package/node_modules/pi-subagents/src/shared/parent-wake.js.map +1 -0
  351. package/node_modules/pi-subagents/src/shared/pruned-fork.d.ts +1 -1
  352. package/node_modules/pi-subagents/src/shared/pruned-fork.d.ts.map +1 -1
  353. package/node_modules/pi-subagents/src/shared/pruned-fork.js +6 -0
  354. package/node_modules/pi-subagents/src/shared/pruned-fork.js.map +1 -1
  355. package/node_modules/pi-subagents/src/shared/runtime-module-path.d.ts +11 -0
  356. package/node_modules/pi-subagents/src/shared/runtime-module-path.d.ts.map +1 -0
  357. package/node_modules/pi-subagents/src/shared/runtime-module-path.js +17 -0
  358. package/node_modules/pi-subagents/src/shared/runtime-module-path.js.map +1 -0
  359. package/node_modules/pi-subagents/src/shared/types.d.ts +33 -10
  360. package/node_modules/pi-subagents/src/shared/types.d.ts.map +1 -1
  361. package/node_modules/pi-subagents/src/shared/types.js +7 -4
  362. package/node_modules/pi-subagents/src/shared/types.js.map +1 -1
  363. package/node_modules/pi-subagents/src/shared/utils.d.ts +2 -0
  364. package/node_modules/pi-subagents/src/shared/utils.d.ts.map +1 -1
  365. package/node_modules/pi-subagents/src/shared/utils.js +10 -7
  366. package/node_modules/pi-subagents/src/shared/utils.js.map +1 -1
  367. package/node_modules/pi-subagents/src/slash/slash-commands.d.ts.map +1 -1
  368. package/node_modules/pi-subagents/src/slash/slash-commands.js +21 -10
  369. package/node_modules/pi-subagents/src/slash/slash-commands.js.map +1 -1
  370. package/node_modules/pi-subagents/src/slash/subagents-admin.d.ts.map +1 -1
  371. package/node_modules/pi-subagents/src/slash/subagents-admin.js +3 -1
  372. package/node_modules/pi-subagents/src/slash/subagents-admin.js.map +1 -1
  373. package/node_modules/pi-subagents/src/tui/fleet-status.d.ts +5 -0
  374. package/node_modules/pi-subagents/src/tui/fleet-status.d.ts.map +1 -1
  375. package/node_modules/pi-subagents/src/tui/fleet-status.js +24 -3
  376. package/node_modules/pi-subagents/src/tui/fleet-status.js.map +1 -1
  377. package/node_modules/pi-subagents/src/tui/fleet-transcript.d.ts +2 -0
  378. package/node_modules/pi-subagents/src/tui/fleet-transcript.d.ts.map +1 -1
  379. package/node_modules/pi-subagents/src/tui/fleet-transcript.js +7 -2
  380. package/node_modules/pi-subagents/src/tui/fleet-transcript.js.map +1 -1
  381. package/node_modules/pi-subagents/src/tui/fleet.d.ts.map +1 -1
  382. package/node_modules/pi-subagents/src/tui/fleet.js +11 -6
  383. package/node_modules/pi-subagents/src/tui/fleet.js.map +1 -1
  384. package/node_modules/pi-subagents/src/tui/render.d.ts +2 -2
  385. package/node_modules/pi-subagents/src/tui/render.d.ts.map +1 -1
  386. package/node_modules/pi-subagents/src/tui/render.js +19 -17
  387. package/node_modules/pi-subagents/src/tui/render.js.map +1 -1
  388. package/node_modules/pi-subagents/src/tui/subagent-messages.d.ts +23 -0
  389. package/node_modules/pi-subagents/src/tui/subagent-messages.d.ts.map +1 -0
  390. package/node_modules/pi-subagents/src/tui/subagent-messages.js +270 -0
  391. package/node_modules/pi-subagents/src/tui/subagent-messages.js.map +1 -0
  392. package/node_modules/pi-subagents/src/watchdog/change-signature.d.ts.map +1 -1
  393. package/node_modules/pi-subagents/src/watchdog/change-signature.js +1 -3
  394. package/node_modules/pi-subagents/src/watchdog/change-signature.js.map +1 -1
  395. package/node_modules/pi-subagents/src/watchdog/register-main.d.ts.map +1 -1
  396. package/node_modules/pi-subagents/src/watchdog/register-main.js +1 -19
  397. package/node_modules/pi-subagents/src/watchdog/register-main.js.map +1 -1
  398. package/node_modules/pi-subagents/src/watchdog/render.d.ts +2 -10
  399. package/node_modules/pi-subagents/src/watchdog/render.d.ts.map +1 -1
  400. package/node_modules/pi-subagents/src/watchdog/render.js +1 -19
  401. package/node_modules/pi-subagents/src/watchdog/render.js.map +1 -1
  402. package/node_modules/pi-subagents/src/watchdog/tool-actions.js +2 -2
  403. package/node_modules/pi-subagents/src/watchdog/tool-actions.js.map +1 -1
  404. package/node_modules/pi-subagents/src/workflows/scripted-workflow.d.ts.map +1 -1
  405. package/node_modules/pi-subagents/src/workflows/scripted-workflow.js +33 -10
  406. package/node_modules/pi-subagents/src/workflows/scripted-workflow.js.map +1 -1
  407. package/node_modules/pi-subagents/src/workflows/workflow-resources.d.ts.map +1 -1
  408. package/node_modules/pi-subagents/src/workflows/workflow-resources.js +12 -0
  409. package/node_modules/pi-subagents/src/workflows/workflow-resources.js.map +1 -1
  410. package/package.json +3 -3
  411. package/src/artifacts/builder-handoff/assertBuilderHandoff.ts +0 -14
  412. package/src/artifacts/builder-handoff/schema.ts +0 -26
  413. package/src/maestro/instructions/getMaestroInstructions.ts +4 -2
  414. package/src/maestro/status/formatMaestroStatus.ts +0 -3
  415. package/src/tools/child/record-builder-handoff.ts +2 -10
  416. package/src/tools/main/resolve-escalations.ts +1 -1
  417. package/src/tools/main/resolve-findings.ts +1 -1
  418. package/src/tools/main/run-builder.ts +9 -49
  419. package/src/workflow/builder/completeBuilderPass.ts +4 -13
  420. package/src/workflow/builder/utils/getWorkflowEventByBuilderHandoff.ts +24 -0
  421. package/src/workflow/state/schema.ts +0 -3
  422. package/src/workflow/transitions.ts +0 -4
  423. package/src/workflow/verifier/completeVerifierPass.ts +3 -9
  424. package/src/workflow/{findings → verifier}/resolveFindings.ts +4 -12
  425. package/src/workflow/verifier/utils/getWorkflowEventByVerifierHandoff.ts +40 -0
  426. package/DESIGN_DECISIONS.md +0 -21
  427. package/node_modules/pi-subagents/src/runs/shared/run-history.d.ts +0 -67
  428. package/node_modules/pi-subagents/src/runs/shared/run-history.d.ts.map +0 -1
  429. package/node_modules/pi-subagents/src/runs/shared/run-history.js +0 -270
  430. package/node_modules/pi-subagents/src/runs/shared/run-history.js.map +0 -1
  431. /package/src/workflow/{escalation → builder}/resolveEscalations.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-resources.d.ts","sourceRoot":"","sources":["../../../src/workflows/workflow-resources.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC3B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAIrE,eAAO,MAAM,cAAc,QAAY,CAAC;AACxC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,cAAc,IAAI,CAAC;AAGhC,MAAM,WAAW,wBAAwB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,EAAE,0BAA0B,CAAC;CACvC;AAED,MAAM,MAAM,0BAA0B,GACnC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,wBAAwB,CAAA;CAAE,GAChD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhC,MAAM,WAAW,0BAA0B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,6FAA6F;IAC7F,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,SAAS,6BAA6B,EAAE,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACtJ;AAED,MAAM,WAAW,4BAA4B;IAC5C,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,6BAA6B;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,0BAA0B,CAAC;CACvC;AAoBD,8GAA8G;AAC9G,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG,4BAA4B,CA0B3G;AAqCD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAU3G;AAED,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAG9F;AAkDD;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAgBhJ;AAED,8IAA8I;AAC9I,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,0BAA0B,CAO/H"}
1
+ {"version":3,"file":"workflow-resources.d.ts","sourceRoot":"","sources":["../../../src/workflows/workflow-resources.ts"],"names":[],"mappings":"AAEA,OAAO,EAEN,KAAK,6BAA6B,EAClC,KAAK,sBAAsB,EAC3B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAIrE,eAAO,MAAM,cAAc,QAAY,CAAC;AACxC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,cAAc,KAAK,CAAC;AACjC,eAAO,MAAM,cAAc,IAAI,CAAC;AAGhC,MAAM,WAAW,wBAAwB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,sBAAsB,CAAC;IAC/B,UAAU,EAAE,0BAA0B,CAAC;CACvC;AAED,MAAM,MAAM,0BAA0B,GACnC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,wBAAwB,CAAA;CAAE,GAChD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhC,MAAM,WAAW,0BAA0B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,6FAA6F;IAC7F,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,SAAS,6BAA6B,EAAE,CAAA;KAAE,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACtJ;AAED,MAAM,WAAW,4BAA4B;IAC5C,OAAO,IAAI,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,6BAA6B;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,0BAA0B,CAAC;CACvC;AAoBD,8GAA8G;AAC9G,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,GAAG,4BAA4B,CA0B3G;AAqCD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAU3G;AAED,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAG9F;AA6DD;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAgBhJ;AAED,8IAA8I;AAC9I,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,0BAA0B,CAO/H"}
@@ -149,6 +149,17 @@ function resolveRunCi(args) {
149
149
  hostCommands: [{ key: "ci", command }],
150
150
  };
151
151
  }
152
+ function resolveParallel(args) {
153
+ const unsupported = Object.keys(args).filter((key) => key !== "tasks");
154
+ if (unsupported.length > 0)
155
+ return { error: `workflow 'parallel' args contain unsupported fields: ${unsupported.join(", ")}. Pass args.tasks: [{ agent, task }, ...].` };
156
+ try {
157
+ return { script: buildStructuredWorkflowScript("tasks", args.tasks, undefined) };
158
+ }
159
+ catch (error) {
160
+ return { error: `workflow 'parallel' args.${error instanceof Error ? error.message : String(error)}` };
161
+ }
162
+ }
152
163
  function resolveReview(args) {
153
164
  const unsupported = Object.keys(args).filter((key) => key !== "task");
154
165
  if (unsupported.length > 0)
@@ -163,6 +174,7 @@ function resolveReview(args) {
163
174
  const WORKFLOW_RESOURCES = [
164
175
  { name: "review", version: 1, resolve: resolveReview },
165
176
  { name: "run-ci", version: 1, resolve: resolveRunCi },
177
+ { name: "parallel", version: 1, resolve: resolveParallel },
166
178
  ];
167
179
  function findWorkflowResource(name) {
168
180
  return WORKFLOW_RESOURCES.find((resource) => resource.name === name);
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-resources.js","sourceRoot":"","sources":["../../../src/workflows/workflow-resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-resources.js","sourceRoot":"","sources":["../../../src/workflows/workflow-resources.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emiliosp/pi-maestro",
3
- "version": "0.7.4",
3
+ "version": "0.9.0",
4
4
  "description": "A spec-driven multiagent development workflow for Pi.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -37,7 +37,7 @@
37
37
  "TECH_STACK.md",
38
38
  "ROADMAP.md",
39
39
  "CHANGELOG.md",
40
- "DESIGN_DECISIONS.md",
40
+ "ADR.md",
41
41
  "README.md",
42
42
  "LICENSE"
43
43
  ],
@@ -64,7 +64,7 @@
64
64
  "lint:fix": "biome check --write . && npm run lint:anti-slop"
65
65
  },
66
66
  "dependencies": {
67
- "pi-subagents": "0.76.0"
67
+ "pi-subagents": "0.78.0"
68
68
  },
69
69
  "bundleDependencies": [
70
70
  "pi-subagents"
@@ -26,11 +26,6 @@ const hasOnlyPassedProbes = (
26
26
  (criterion) => criterion.probeStatus === PROBE_STATUSES.PASSED,
27
27
  );
28
28
 
29
- const hasValidFailedChecks = (
30
- acceptanceCriteria: BuilderAcceptanceCriterion[],
31
- ): boolean =>
32
- acceptanceCriteria.length === 0 || !hasOnlyPassedProbes(acceptanceCriteria);
33
-
34
29
  function assertBuilderHandoffSchema(
35
30
  input: unknown,
36
31
  ): asserts input is BuilderHandoff {
@@ -71,15 +66,6 @@ export function assertBuilderHandoff(
71
66
  throw new Error('Done builder handoff requires every probe to pass.');
72
67
  }
73
68
 
74
- if (
75
- handoff.status === BUILDER_HANDOFF_STATUSES.FAILED &&
76
- !hasValidFailedChecks(handoff.acceptanceCriteria)
77
- ) {
78
- throw new Error(
79
- 'Failed builder handoff cannot mark every acceptance check as completed.',
80
- );
81
- }
82
-
83
69
  if (handoff.status === BUILDER_HANDOFF_STATUSES.ESCALATION) {
84
70
  for (const [index, escalation] of handoff.escalations.entries()) {
85
71
  if (escalation.id !== `E${index + 1}`) {
@@ -11,7 +11,6 @@ export const BUILDER_HANDOFF_VERSION = '1.0.0';
11
11
 
12
12
  export const BUILDER_HANDOFF_STATUSES = {
13
13
  DONE: 'done',
14
- FAILED: 'failed',
15
14
  ESCALATION: 'escalation',
16
15
  } as const;
17
16
 
@@ -41,11 +40,6 @@ export type BuilderAcceptanceCriterion = Static<
41
40
  typeof BuilderAcceptanceCriterionSchema
42
41
  >;
43
42
 
44
- export const BuilderHandoffFailureSchema = Type.Object(
45
- { reason: Type.String({ minLength: 1 }) },
46
- { additionalProperties: false },
47
- );
48
-
49
43
  const BuilderHandoffContentFields = {
50
44
  summary: Type.String({ minLength: 1 }),
51
45
  acceptanceCriteria: Type.Array(BuilderAcceptanceCriterionSchema),
@@ -134,19 +128,9 @@ export const BuilderEscalationHandoffSchema = Type.Object(
134
128
  { additionalProperties: false },
135
129
  );
136
130
 
137
- export const BuilderFailedHandoffSchema = Type.Object(
138
- {
139
- ...BuilderHandoffFields,
140
- status: Type.Literal(BUILDER_HANDOFF_STATUSES.FAILED),
141
- failure: BuilderHandoffFailureSchema,
142
- },
143
- { additionalProperties: false },
144
- );
145
-
146
131
  export const BuilderHandoffSchema = Type.Union([
147
132
  BuilderDoneHandoffSchema,
148
133
  BuilderEscalationHandoffSchema,
149
- BuilderFailedHandoffSchema,
150
134
  ]);
151
135
 
152
136
  export type BuilderHandoff = Static<typeof BuilderHandoffSchema>;
@@ -169,19 +153,9 @@ export const BuilderEscalationHandoffSubmissionSchema = Type.Object(
169
153
  { additionalProperties: false },
170
154
  );
171
155
 
172
- export const BuilderFailedHandoffSubmissionSchema = Type.Object(
173
- {
174
- status: Type.Literal(BUILDER_HANDOFF_STATUSES.FAILED),
175
- ...BuilderHandoffContentFields,
176
- failure: BuilderHandoffFailureSchema,
177
- },
178
- { additionalProperties: false },
179
- );
180
-
181
156
  export const BuilderHandoffSubmissionSchema = Type.Union([
182
157
  BuilderDoneHandoffSubmissionSchema,
183
158
  BuilderEscalationHandoffSubmissionSchema,
184
- BuilderFailedHandoffSubmissionSchema,
185
159
  ]);
186
160
 
187
161
  export type BuilderHandoffSubmissionInput = Static<
@@ -83,8 +83,8 @@ Read the returned artifact and follow its outcome:
83
83
 
84
84
  1. done: The phase is ready-for-verifier. Call maestro_run_verifier with the active specId.
85
85
  2. escalation: The phase is escalation-decision. Present all questions from the active builder handoff, with evidence, options, consequences, and next steps.
86
- 3. failed: The phase is builder-failed. Report the failure and stop. There is no builder retry or spec revision from this phase.
87
86
 
87
+ Reportable technical problems that prevent builder completion use the existing escalation process. The owner decides how work continues.
88
88
  A significant discovery needs an escalation when the owner must choose between meaningful alternatives, even without a technical blocker.
89
89
  Do not invent an escalation for routine implementation details. Read significant discoveries without owner decisions from the builder handoff notes.
90
90
 
@@ -142,9 +142,11 @@ If a tool fails, inspect its error, workflow.json, and artifacts before taking a
142
142
  If the tool wrote no artifacts or transition, correct recoverable errors within your permissions before retrying.
143
143
  If it partially updated artifacts or workflow state, report that state and stop. Do not retry a partially completed transition.
144
144
  Do not repeat an unchanged failing call, edit protocol files, or fabricate evidence to bypass an error.
145
+ Launch errors, delegation failures, timeouts, interruptions, cancellations, and missing or invalid handoffs stop the workflow. Do not create synthetic escalations or recovery transitions.
145
146
  If a run ends without a valid saved result, report the error and stop. Do not repair product files or force a transition.
147
+ If a run saves no completed transition, its saved running phase remains unchanged.
146
148
  Disabling Maestro, restarting Pi, or using /resume clears live state. Do not reconstruct or resume an incomplete workflow.
147
- The owner handles failed or interrupted workflows manually.
149
+ The owner handles execution errors, protocol errors, and interrupted workflows manually.
148
150
 
149
151
  At candidate-ready, the workflow is complete. No final tool call is required.
150
152
  You own the final summary. Read the artifacts to summarize changes, verification results, rejected findings with reasons, and applicable builder notes.
@@ -15,7 +15,6 @@ export const WORKFLOW_PHASE_LABELS = {
15
15
  [WORKFLOW_PHASES.READY_FOR_BUILDER]: 'Ready for builder',
16
16
  [WORKFLOW_PHASES.BUILDER_RUNNING]: 'Builder running',
17
17
  [WORKFLOW_PHASES.ESCALATION_DECISION]: 'Owner decision needed: escalation',
18
- [WORKFLOW_PHASES.BUILDER_FAILED]: 'Builder failed',
19
18
  [WORKFLOW_PHASES.READY_FOR_VERIFIER]: 'Ready for verifier',
20
19
  [WORKFLOW_PHASES.VERIFIER_RUNNING]: 'Verifier running',
21
20
  [WORKFLOW_PHASES.FINDINGS_DECISION]: 'Owner decision needed: findings',
@@ -27,7 +26,6 @@ export const WORKFLOW_PHASE_ICONS = {
27
26
  [WORKFLOW_PHASES.READY_FOR_BUILDER]: '🚧',
28
27
  [WORKFLOW_PHASES.BUILDER_RUNNING]: '🛠️',
29
28
  [WORKFLOW_PHASES.ESCALATION_DECISION]: '✋',
30
- [WORKFLOW_PHASES.BUILDER_FAILED]: '❌',
31
29
  [WORKFLOW_PHASES.READY_FOR_VERIFIER]: '📋',
32
30
  [WORKFLOW_PHASES.VERIFIER_RUNNING]: '🔍',
33
31
  [WORKFLOW_PHASES.FINDINGS_DECISION]: '💬',
@@ -39,7 +37,6 @@ export const WORKFLOW_PHASE_COLORS = {
39
37
  [WORKFLOW_PHASES.READY_FOR_BUILDER]: 'accent',
40
38
  [WORKFLOW_PHASES.BUILDER_RUNNING]: 'accent',
41
39
  [WORKFLOW_PHASES.ESCALATION_DECISION]: 'warning',
42
- [WORKFLOW_PHASES.BUILDER_FAILED]: 'error',
43
40
  [WORKFLOW_PHASES.READY_FOR_VERIFIER]: 'accent',
44
41
  [WORKFLOW_PHASES.VERIFIER_RUNNING]: 'accent',
45
42
  [WORKFLOW_PHASES.FINDINGS_DECISION]: 'warning',
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Objective: Register the builder handoff tool for the current project.
3
- * Used: When the builder reports a done, escalation, or failed result.
3
+ * Used: When the builder reports a done or escalation result.
4
4
  */
5
5
 
6
6
  import type { ExtensionAPI } from '@earendil-works/pi-coding-agent';
@@ -8,7 +8,6 @@ import { Type } from 'typebox';
8
8
  import {
9
9
  BuilderDoneHandoffSubmissionSchema,
10
10
  BuilderEscalationHandoffSubmissionSchema,
11
- BuilderFailedHandoffSubmissionSchema,
12
11
  } from '#artifacts/builder-handoff/schema.ts';
13
12
  import { SPEC_ID_PATTERN } from '#ids/isValidSpecId.ts';
14
13
  import { resolveWorkflowContext } from '#tools/child/utils/resolveWorkflowContext.ts';
@@ -18,7 +17,7 @@ export const BUILDER_HANDOFF_TOOL = {
18
17
  NAME: 'maestro_record_builder_handoff',
19
18
  LABEL: 'Record Builder Handoff',
20
19
  DESCRIPTION:
21
- 'Record the builder pass as done, escalation, or failed. Put significant discoveries that do not require an owner decision in notes. After success, stop. The tool saves a numbered builder handoff and the workflow phase.',
20
+ 'Record the builder pass as done or escalation. Report technical problems that prevent completion as escalations for owner decisions. Put significant discoveries that do not require an owner decision in notes. After success, stop. The tool saves a numbered builder handoff and the workflow phase.',
22
21
  } as const;
23
22
 
24
23
  const BuilderHandoffToolParameters = Type.Union([
@@ -36,13 +35,6 @@ const BuilderHandoffToolParameters = Type.Union([
36
35
  },
37
36
  { additionalProperties: false },
38
37
  ),
39
- Type.Object(
40
- {
41
- specId: Type.String({ pattern: SPEC_ID_PATTERN.source }),
42
- ...BuilderFailedHandoffSubmissionSchema.properties,
43
- },
44
- { additionalProperties: false },
45
- ),
46
38
  ]);
47
39
 
48
40
  export const registerRecordBuilderHandoffTool = (pi: ExtensionAPI): void => {
@@ -11,7 +11,7 @@ import {
11
11
  } from '#artifacts/builder-handoff/schema.ts';
12
12
  import { SPEC_ID_PATTERN } from '#ids/isValidSpecId.ts';
13
13
  import { resolveToolRunContext } from '#tools/utils/resolveToolRunContext.ts';
14
- import { resolveEscalations } from '#workflow/escalation/resolveEscalations.ts';
14
+ import { resolveEscalations } from '#workflow/builder/resolveEscalations.ts';
15
15
 
16
16
  export const RESOLVE_ESCALATIONS_TOOL = {
17
17
  NAME: 'maestro_resolve_escalations',
@@ -9,8 +9,8 @@ import { Type } from 'typebox';
9
9
  import { FINDING_DECISIONS } from '#artifacts/verifier-handoff/schema.ts';
10
10
  import { SPEC_ID_PATTERN } from '#ids/isValidSpecId.ts';
11
11
  import { resolveToolRunContext } from '#tools/utils/resolveToolRunContext.ts';
12
- import { resolveFindings } from '#workflow/findings/resolveFindings.ts';
13
12
  import { WORKFLOW_PHASES } from '#workflow/state/schema.ts';
13
+ import { resolveFindings } from '#workflow/verifier/resolveFindings.ts';
14
14
 
15
15
  export const RESOLVE_FINDINGS_TOOL = {
16
16
  NAME: 'maestro_resolve_findings',
@@ -30,7 +30,7 @@ export const RUN_BUILDER_TOOL = {
30
30
  NAME: 'maestro_run_builder',
31
31
  LABEL: 'Run Builder',
32
32
  DESCRIPTION:
33
- 'Run the builder in the project directory for an owner-approved spec. The builder runs in the foreground and cannot be retried after a recorded failure.',
33
+ 'Run the builder in the project directory for an owner-approved spec. The builder runs in the foreground and returns done or escalation. Owner decisions or renewed spec approval permit another pass after an escalation.',
34
34
  } as const;
35
35
 
36
36
  const RunBuilderToolParameters = Type.Object(
@@ -49,12 +49,6 @@ type BuilderRunResult =
49
49
  phase: typeof WORKFLOW_PHASES.READY_FOR_VERIFIER;
50
50
  handoff: BuilderHandoff;
51
51
  }
52
- | {
53
- outcome: typeof BUILDER_HANDOFF_STATUSES.FAILED;
54
- specId: string;
55
- phase: typeof WORKFLOW_PHASES.BUILDER_FAILED;
56
- handoff: BuilderHandoff;
57
- }
58
52
  | {
59
53
  outcome: typeof BUILDER_HANDOFF_STATUSES.ESCALATION;
60
54
  specId: string;
@@ -88,48 +82,25 @@ const readBuilderResult = async ({
88
82
  }
89
83
  };
90
84
 
91
- type ReadTerminalBuilderResultInput = {
92
- paths: MaestroPaths;
93
- specId: string;
94
- phase:
95
- | typeof WORKFLOW_PHASES.READY_FOR_VERIFIER
96
- | typeof WORKFLOW_PHASES.BUILDER_FAILED;
97
- };
98
-
99
- const readTerminalBuilderResult = async ({
85
+ const readDoneBuilderResult = async ({
100
86
  paths,
101
87
  specId,
102
- phase,
103
- }: ReadTerminalBuilderResultInput): Promise<BuilderRunResult> => {
88
+ }: ReadBuilderResultInput): Promise<BuilderRunResult> => {
104
89
  const handoff = await readBuilderHandoff({
105
90
  path: await paths.getActiveBuilderHandoffPath(specId),
106
91
  specId,
107
92
  });
108
93
 
109
- const expectedStatus =
110
- phase === WORKFLOW_PHASES.READY_FOR_VERIFIER
111
- ? BUILDER_HANDOFF_STATUSES.DONE
112
- : BUILDER_HANDOFF_STATUSES.FAILED;
113
-
114
- if (handoff.status !== expectedStatus) {
94
+ if (handoff.status !== BUILDER_HANDOFF_STATUSES.DONE) {
115
95
  throw new Error(
116
- `Builder handoff status does not match workflow phase "${phase}".`,
96
+ `Builder handoff status does not match workflow phase "${WORKFLOW_PHASES.READY_FOR_VERIFIER}".`,
117
97
  );
118
98
  }
119
99
 
120
- if (phase === WORKFLOW_PHASES.READY_FOR_VERIFIER) {
121
- return {
122
- outcome: BUILDER_HANDOFF_STATUSES.DONE,
123
- specId,
124
- phase,
125
- handoff,
126
- };
127
- }
128
-
129
100
  return {
130
- outcome: BUILDER_HANDOFF_STATUSES.FAILED,
101
+ outcome: BUILDER_HANDOFF_STATUSES.DONE,
131
102
  specId,
132
- phase,
103
+ phase: WORKFLOW_PHASES.READY_FOR_VERIFIER,
133
104
  handoff,
134
105
  };
135
106
  };
@@ -145,15 +116,8 @@ const buildRunResult = async ({
145
116
  specId,
146
117
  state,
147
118
  }: BuildRunResultInput): Promise<BuilderRunResult> => {
148
- if (
149
- state.phase === WORKFLOW_PHASES.READY_FOR_VERIFIER ||
150
- state.phase === WORKFLOW_PHASES.BUILDER_FAILED
151
- ) {
152
- return await readTerminalBuilderResult({
153
- paths,
154
- specId,
155
- phase: state.phase,
156
- });
119
+ if (state.phase === WORKFLOW_PHASES.READY_FOR_VERIFIER) {
120
+ return await readDoneBuilderResult({ paths, specId });
157
121
  }
158
122
 
159
123
  if (state.phase === WORKFLOW_PHASES.ESCALATION_DECISION) {
@@ -192,10 +156,6 @@ const formatBuilderResult = (result: BuilderRunResult): string => {
192
156
  return `Builder completed spec ${result.specId}. The workflow is ready-for-verifier.`;
193
157
  }
194
158
 
195
- if (result.outcome === BUILDER_HANDOFF_STATUSES.FAILED) {
196
- return `Builder failed for spec ${result.specId}. The workflow is builder-failed and cannot be retried.`;
197
- }
198
-
199
159
  return `Builder submitted escalation questions for spec ${result.specId}. The workflow is waiting for an owner decision.`;
200
160
  };
201
161
 
@@ -1,13 +1,12 @@
1
1
  /**
2
2
  * Objective: Complete a builder pass with a validated terminal handoff.
3
- * Used: When the builder reports done, escalation, or failed through the child tool.
3
+ * Used: When the builder reports done or escalation through the child tool.
4
4
  */
5
5
 
6
6
  import { mkdir } from 'node:fs/promises';
7
7
  import { Value } from 'typebox/value';
8
8
  import { assertBuilderHandoff } from '#artifacts/builder-handoff/assertBuilderHandoff.ts';
9
9
  import {
10
- BUILDER_HANDOFF_STATUSES,
11
10
  BUILDER_HANDOFF_VERSION,
12
11
  type BuilderHandoff,
13
12
  type BuilderHandoffSubmissionInput,
@@ -15,12 +14,9 @@ import {
15
14
  } from '#artifacts/builder-handoff/schema.ts';
16
15
  import { writeBuilderHandoff } from '#artifacts/builder-handoff/writeBuilderHandoff.ts';
17
16
  import type { MaestroPaths } from '#MaestroPaths.ts';
17
+ import { getWorkflowEventByBuilderHandoff } from '#workflow/builder/utils/getWorkflowEventByBuilderHandoff.ts';
18
18
  import { readWorkflowState } from '#workflow/state/readWorkflowState.ts';
19
- import {
20
- WORKFLOW_EVENTS,
21
- WORKFLOW_PHASES,
22
- type WorkflowState,
23
- } from '#workflow/state/schema.ts';
19
+ import { WORKFLOW_PHASES, type WorkflowState } from '#workflow/state/schema.ts';
24
20
  import { writeWorkflowState } from '#workflow/state/writeWorkflowState.ts';
25
21
  import { transitionWorkflow } from '#workflow/transitions.ts';
26
22
 
@@ -82,12 +78,7 @@ export const completeBuilderPass = async ({
82
78
 
83
79
  const nextState = transitionWorkflow({
84
80
  state: currentState,
85
- event:
86
- draftHandoff.status === BUILDER_HANDOFF_STATUSES.DONE
87
- ? WORKFLOW_EVENTS.BUILDER_DONE
88
- : draftHandoff.status === BUILDER_HANDOFF_STATUSES.ESCALATION
89
- ? WORKFLOW_EVENTS.OPEN_ESCALATION
90
- : WORKFLOW_EVENTS.BUILDER_FAILED,
81
+ event: getWorkflowEventByBuilderHandoff(handoff),
91
82
  });
92
83
 
93
84
  await mkdir(paths.getBuilderHandoffsPath(specId), { recursive: true });
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Objective: Select the workflow event from a builder handoff.
3
+ * Used: When a builder completes a pass with done or escalation.
4
+ */
5
+
6
+ import {
7
+ BUILDER_HANDOFF_STATUSES,
8
+ type BuilderHandoff,
9
+ } from '#artifacts/builder-handoff/schema.ts';
10
+ import { WORKFLOW_EVENTS, type WorkflowEvent } from '#workflow/state/schema.ts';
11
+
12
+ export const getWorkflowEventByBuilderHandoff = ({
13
+ status,
14
+ }: BuilderHandoff): WorkflowEvent => {
15
+ if (status === BUILDER_HANDOFF_STATUSES.DONE) {
16
+ return WORKFLOW_EVENTS.BUILDER_DONE;
17
+ }
18
+
19
+ if (status === BUILDER_HANDOFF_STATUSES.ESCALATION) {
20
+ return WORKFLOW_EVENTS.OPEN_ESCALATION;
21
+ }
22
+
23
+ throw new Error(`Unexpected builder handoff status: "${status}".`);
24
+ };
@@ -14,7 +14,6 @@ export const WORKFLOW_PHASES = {
14
14
  READY_FOR_BUILDER: 'ready-for-builder',
15
15
  BUILDER_RUNNING: 'builder-running',
16
16
  ESCALATION_DECISION: 'escalation-decision',
17
- BUILDER_FAILED: 'builder-failed',
18
17
  READY_FOR_VERIFIER: 'ready-for-verifier',
19
18
  VERIFIER_RUNNING: 'verifier-running',
20
19
  FINDINGS_DECISION: 'findings-decision',
@@ -26,7 +25,6 @@ export const WORKFLOW_EVENTS = {
26
25
  RUN_BUILDER: 'run-builder',
27
26
  OPEN_ESCALATION: 'open-escalation',
28
27
  RESOLVE_ESCALATION: 'resolve-escalation',
29
- BUILDER_FAILED: 'builder-failed',
30
28
  BUILDER_DONE: 'builder-done',
31
29
  RUN_VERIFIER: 'run-verifier',
32
30
  VERIFIER_FOUND_FINDINGS: 'verifier-found-findings',
@@ -40,7 +38,6 @@ export const WorkflowPhaseSchema = Type.Union([
40
38
  Type.Literal(WORKFLOW_PHASES.READY_FOR_BUILDER),
41
39
  Type.Literal(WORKFLOW_PHASES.BUILDER_RUNNING),
42
40
  Type.Literal(WORKFLOW_PHASES.ESCALATION_DECISION),
43
- Type.Literal(WORKFLOW_PHASES.BUILDER_FAILED),
44
41
  Type.Literal(WORKFLOW_PHASES.READY_FOR_VERIFIER),
45
42
  Type.Literal(WORKFLOW_PHASES.VERIFIER_RUNNING),
46
43
  Type.Literal(WORKFLOW_PHASES.FINDINGS_DECISION),
@@ -38,10 +38,6 @@ export const WORKFLOW_TRANSITIONS: Record<WorkflowEvent, WorkflowTransition> = {
38
38
  from: [WORKFLOW_PHASES.ESCALATION_DECISION],
39
39
  to: WORKFLOW_PHASES.READY_FOR_BUILDER,
40
40
  },
41
- [WORKFLOW_EVENTS.BUILDER_FAILED]: {
42
- from: [WORKFLOW_PHASES.BUILDER_RUNNING],
43
- to: WORKFLOW_PHASES.BUILDER_FAILED,
44
- },
45
41
  [WORKFLOW_EVENTS.BUILDER_DONE]: {
46
42
  from: [WORKFLOW_PHASES.BUILDER_RUNNING],
47
43
  to: WORKFLOW_PHASES.READY_FOR_VERIFIER,
@@ -9,13 +9,10 @@ import type { VerifierHandoff } from '#artifacts/verifier-handoff/schema.ts';
9
9
  import { writeVerifierHandoff } from '#artifacts/verifier-handoff/writeVerifierHandoff.ts';
10
10
  import type { MaestroPaths } from '#MaestroPaths.ts';
11
11
  import { readWorkflowState } from '#workflow/state/readWorkflowState.ts';
12
- import {
13
- WORKFLOW_EVENTS,
14
- WORKFLOW_PHASES,
15
- type WorkflowState,
16
- } from '#workflow/state/schema.ts';
12
+ import { WORKFLOW_PHASES, type WorkflowState } from '#workflow/state/schema.ts';
17
13
  import { writeWorkflowState } from '#workflow/state/writeWorkflowState.ts';
18
14
  import { transitionWorkflow } from '#workflow/transitions.ts';
15
+ import { getWorkflowEventByVerifierHandoff } from '#workflow/verifier/utils/getWorkflowEventByVerifierHandoff.ts';
19
16
 
20
17
  export type CompletedVerifierPass = {
21
18
  handoff: VerifierHandoff;
@@ -61,10 +58,7 @@ export const completeVerifierPass = async ({
61
58
 
62
59
  const nextState = transitionWorkflow({
63
60
  state: currentState,
64
- event:
65
- handoff.findings.length > 0
66
- ? WORKFLOW_EVENTS.VERIFIER_FOUND_FINDINGS
67
- : WORKFLOW_EVENTS.VERIFIER_APPROVED,
61
+ event: getWorkflowEventByVerifierHandoff(handoff),
68
62
  });
69
63
 
70
64
  await mkdir(paths.getVerifierHandoffsPath(specId), { recursive: true });
@@ -13,13 +13,10 @@ import { FINDING_DECISIONS } from '#artifacts/verifier-handoff/schema.ts';
13
13
  import type { MaestroPaths } from '#MaestroPaths.ts';
14
14
  import { writeJson } from '#utils/write-json.ts';
15
15
  import { readWorkflowState } from '#workflow/state/readWorkflowState.ts';
16
- import {
17
- WORKFLOW_EVENTS,
18
- WORKFLOW_PHASES,
19
- type WorkflowState,
20
- } from '#workflow/state/schema.ts';
16
+ import { WORKFLOW_PHASES, type WorkflowState } from '#workflow/state/schema.ts';
21
17
  import { writeWorkflowState } from '#workflow/state/writeWorkflowState.ts';
22
18
  import { transitionWorkflow } from '#workflow/transitions.ts';
19
+ import { getWorkflowEventByVerifierHandoff } from '#workflow/verifier/utils/getWorkflowEventByVerifierHandoff.ts';
23
20
 
24
21
  type FindingDecisionRejected = {
25
22
  findingId: string;
@@ -159,18 +156,13 @@ const buildFindingWorkflow = ({
159
156
  return { ...finding, decision: { decision: FINDING_DECISIONS.FIX_CODE } };
160
157
  });
161
158
 
162
- const isFixCodeRequested = decisions.some(
163
- (decision) => decision.decision === FINDING_DECISIONS.FIX_CODE,
164
- );
159
+ const nextHandoff = { ...handoff, findings };
165
160
 
166
161
  const nextState = transitionWorkflow({
167
162
  state,
168
- event: isFixCodeRequested
169
- ? WORKFLOW_EVENTS.REQUEST_FIXES
170
- : WORKFLOW_EVENTS.REJECT_FINDINGS,
163
+ event: getWorkflowEventByVerifierHandoff(nextHandoff),
171
164
  });
172
165
 
173
- const nextHandoff = { ...handoff, findings };
174
166
  assertVerifierHandoff({
175
167
  handoff: nextHandoff,
176
168
  specId: state.specId,
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Objective: Select the workflow event from a verifier handoff.
3
+ * Used: When a verifier completes a pass or the owner resolves its findings.
4
+ */
5
+
6
+ import {
7
+ FINDING_DECISIONS,
8
+ type VerifierHandoff,
9
+ } from '#artifacts/verifier-handoff/schema.ts';
10
+ import { WORKFLOW_EVENTS, type WorkflowEvent } from '#workflow/state/schema.ts';
11
+
12
+ export const getWorkflowEventByVerifierHandoff = (
13
+ handoff: VerifierHandoff,
14
+ ): WorkflowEvent => {
15
+ if (handoff.findings.length === 0) {
16
+ return WORKFLOW_EVENTS.VERIFIER_APPROVED;
17
+ }
18
+
19
+ if (handoff.findings.every(({ decision }) => decision === null)) {
20
+ return WORKFLOW_EVENTS.VERIFIER_FOUND_FINDINGS;
21
+ }
22
+
23
+ if (
24
+ handoff.findings.some(
25
+ ({ decision }) => decision?.decision === FINDING_DECISIONS.FIX_CODE,
26
+ )
27
+ ) {
28
+ return WORKFLOW_EVENTS.REQUEST_FIXES;
29
+ }
30
+
31
+ if (
32
+ handoff.findings.every(
33
+ ({ decision }) => decision?.decision === FINDING_DECISIONS.REJECT,
34
+ )
35
+ ) {
36
+ return WORKFLOW_EVENTS.REJECT_FINDINGS;
37
+ }
38
+
39
+ throw new Error('Unexpected verifier finding decisions.');
40
+ };