@revisium/orchestrator 0.1.0-alpha.4 → 0.1.0-alpha.5

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 (337) hide show
  1. package/control-plane/bootstrap.config.json +1 -0
  2. package/control-plane/default-playbook/catalog/pipelines.json +289 -52
  3. package/control-plane/default-playbook/catalog/roles.json +9 -0
  4. package/control-plane/default-playbook/prompts/analyst.md +3 -1
  5. package/control-plane/default-playbook/prompts/reviewer.md +2 -2
  6. package/control-plane/default-playbook/prompts/triager.md +51 -0
  7. package/control-plane/default-playbook/prompts/watcher.md +2 -2
  8. package/dist/api/graphql-api/filters/graphql-validation-exception.filter.js +36 -0
  9. package/dist/api/graphql-api/filters/graphql-validation-exception.filter.js.map +1 -0
  10. package/dist/api/graphql-api/graphql-api.module.js +75 -0
  11. package/dist/api/graphql-api/graphql-api.module.js.map +1 -0
  12. package/dist/api/graphql-api/graphql-ws/constants.js +9 -0
  13. package/dist/api/graphql-api/graphql-ws/constants.js.map +1 -0
  14. package/dist/api/graphql-api/graphql-ws/pubsub.module.js +29 -0
  15. package/dist/api/graphql-api/graphql-ws/pubsub.module.js.map +1 -0
  16. package/dist/api/graphql-api/graphql-ws/run-progress-subscription-poller.service.js +101 -0
  17. package/dist/api/graphql-api/graphql-ws/run-progress-subscription-poller.service.js.map +1 -0
  18. package/dist/api/graphql-api/graphql-ws/subscription-bridge.service.js +115 -0
  19. package/dist/api/graphql-api/graphql-ws/subscription-bridge.service.js.map +1 -0
  20. package/dist/api/graphql-api/graphql-ws/subscription-mappers.js +85 -0
  21. package/dist/api/graphql-api/graphql-ws/subscription-mappers.js.map +1 -0
  22. package/dist/api/graphql-api/graphql-ws/ws.js +22 -0
  23. package/dist/api/graphql-api/graphql-ws/ws.js.map +1 -0
  24. package/dist/api/graphql-api/inbox/inbox-subscription.resolver.js +56 -0
  25. package/dist/api/graphql-api/inbox/inbox-subscription.resolver.js.map +1 -0
  26. package/dist/api/graphql-api/inbox/inbox.resolver.js +125 -0
  27. package/dist/api/graphql-api/inbox/inbox.resolver.js.map +1 -0
  28. package/dist/api/graphql-api/inbox/inputs/answer-question.input.js +33 -0
  29. package/dist/api/graphql-api/inbox/inputs/answer-question.input.js.map +1 -0
  30. package/dist/api/graphql-api/inbox/inputs/gate-decision.input.js +27 -0
  31. package/dist/api/graphql-api/inbox/inputs/gate-decision.input.js.map +1 -0
  32. package/dist/api/graphql-api/inbox/inputs/list-inbox.input.js +28 -0
  33. package/dist/api/graphql-api/inbox/inputs/list-inbox.input.js.map +1 -0
  34. package/dist/api/graphql-api/inbox/inputs/resolve-inbox-item.input.js +38 -0
  35. package/dist/api/graphql-api/inbox/inputs/resolve-inbox-item.input.js.map +1 -0
  36. package/dist/api/graphql-api/inbox/model/gate-risk.model.js +53 -0
  37. package/dist/api/graphql-api/inbox/model/gate-risk.model.js.map +1 -0
  38. package/dist/api/graphql-api/inbox/model/inbox-connection.model.js +16 -0
  39. package/dist/api/graphql-api/inbox/model/inbox-connection.model.js.map +1 -0
  40. package/dist/api/graphql-api/inbox/model/inbox-item.model.js +88 -0
  41. package/dist/api/graphql-api/inbox/model/inbox-item.model.js.map +1 -0
  42. package/dist/api/graphql-api/inbox/model/inbox-resolution.model.js +48 -0
  43. package/dist/api/graphql-api/inbox/model/inbox-resolution.model.js.map +1 -0
  44. package/dist/api/graphql-api/method/inputs/list-method.input.js +15 -0
  45. package/dist/api/graphql-api/method/inputs/list-method.input.js.map +1 -0
  46. package/dist/api/graphql-api/method/method.resolver.js +90 -0
  47. package/dist/api/graphql-api/method/method.resolver.js.map +1 -0
  48. package/dist/api/graphql-api/method/model/alternative-role-group.model.js +32 -0
  49. package/dist/api/graphql-api/method/model/alternative-role-group.model.js.map +1 -0
  50. package/dist/api/graphql-api/method/model/pipeline-connection.model.js +16 -0
  51. package/dist/api/graphql-api/method/model/pipeline-connection.model.js.map +1 -0
  52. package/dist/api/graphql-api/method/model/pipeline.model.js +69 -0
  53. package/dist/api/graphql-api/method/model/pipeline.model.js.map +1 -0
  54. package/dist/api/graphql-api/method/model/playbook-connection.model.js +16 -0
  55. package/dist/api/graphql-api/method/model/playbook-connection.model.js.map +1 -0
  56. package/dist/api/graphql-api/method/model/playbook.model.js +47 -0
  57. package/dist/api/graphql-api/method/model/playbook.model.js.map +1 -0
  58. package/dist/api/graphql-api/method/model/role-connection.model.js +16 -0
  59. package/dist/api/graphql-api/method/model/role-connection.model.js.map +1 -0
  60. package/dist/api/graphql-api/method/model/role.model.js +98 -0
  61. package/dist/api/graphql-api/method/model/role.model.js.map +1 -0
  62. package/dist/api/graphql-api/pr/inputs/pr-readiness.input.js +52 -0
  63. package/dist/api/graphql-api/pr/inputs/pr-readiness.input.js.map +1 -0
  64. package/dist/api/graphql-api/pr/model/pr-readiness.model.js +403 -0
  65. package/dist/api/graphql-api/pr/model/pr-readiness.model.js.map +1 -0
  66. package/dist/api/graphql-api/pr/pr.resolver.js +76 -0
  67. package/dist/api/graphql-api/pr/pr.resolver.js.map +1 -0
  68. package/dist/api/graphql-api/registerGraphqlEnums.js +4 -0
  69. package/dist/api/graphql-api/registerGraphqlEnums.js.map +1 -0
  70. package/dist/api/graphql-api/runs/inputs/create-run.input.js +63 -0
  71. package/dist/api/graphql-api/runs/inputs/create-run.input.js.map +1 -0
  72. package/dist/api/graphql-api/runs/inputs/get-run-attempts.input.js +32 -0
  73. package/dist/api/graphql-api/runs/inputs/get-run-attempts.input.js.map +1 -0
  74. package/dist/api/graphql-api/runs/inputs/get-run-events.input.js +28 -0
  75. package/dist/api/graphql-api/runs/inputs/get-run-events.input.js.map +1 -0
  76. package/dist/api/graphql-api/runs/inputs/list-runs.input.js +23 -0
  77. package/dist/api/graphql-api/runs/inputs/list-runs.input.js.map +1 -0
  78. package/dist/api/graphql-api/runs/inputs/simulate-route.input.js +43 -0
  79. package/dist/api/graphql-api/runs/inputs/simulate-route.input.js.map +1 -0
  80. package/dist/api/graphql-api/runs/model/create-run-result.model.js +53 -0
  81. package/dist/api/graphql-api/runs/model/create-run-result.model.js.map +1 -0
  82. package/dist/api/graphql-api/runs/model/run-attempt.model.js +114 -0
  83. package/dist/api/graphql-api/runs/model/run-attempt.model.js.map +1 -0
  84. package/dist/api/graphql-api/runs/model/run-connection.model.js +16 -0
  85. package/dist/api/graphql-api/runs/model/run-connection.model.js.map +1 -0
  86. package/dist/api/graphql-api/runs/model/run-cost.model.js +67 -0
  87. package/dist/api/graphql-api/runs/model/run-cost.model.js.map +1 -0
  88. package/dist/api/graphql-api/runs/model/run-digest.model.js +41 -0
  89. package/dist/api/graphql-api/runs/model/run-digest.model.js.map +1 -0
  90. package/dist/api/graphql-api/runs/model/run-event-connection.model.js +16 -0
  91. package/dist/api/graphql-api/runs/model/run-event-connection.model.js.map +1 -0
  92. package/dist/api/graphql-api/runs/model/run-event.model.js +58 -0
  93. package/dist/api/graphql-api/runs/model/run-event.model.js.map +1 -0
  94. package/dist/api/graphql-api/runs/model/run-progress.model.js +33 -0
  95. package/dist/api/graphql-api/runs/model/run-progress.model.js.map +1 -0
  96. package/dist/api/graphql-api/runs/model/run-workflow.model.js +287 -0
  97. package/dist/api/graphql-api/runs/model/run-workflow.model.js.map +1 -0
  98. package/dist/api/graphql-api/runs/model/run.model.js +57 -0
  99. package/dist/api/graphql-api/runs/model/run.model.js.map +1 -0
  100. package/dist/api/graphql-api/runs/model/usage.model.js +32 -0
  101. package/dist/api/graphql-api/runs/model/usage.model.js.map +1 -0
  102. package/dist/api/graphql-api/runs/run-digest.resolver.js +40 -0
  103. package/dist/api/graphql-api/runs/run-digest.resolver.js.map +1 -0
  104. package/dist/api/graphql-api/runs/run-events.resolver.js +45 -0
  105. package/dist/api/graphql-api/runs/run-events.resolver.js.map +1 -0
  106. package/dist/api/graphql-api/runs/run-progress.resolver.js +53 -0
  107. package/dist/api/graphql-api/runs/run-progress.resolver.js.map +1 -0
  108. package/dist/api/graphql-api/runs/runs-subscription.resolver.js +93 -0
  109. package/dist/api/graphql-api/runs/runs-subscription.resolver.js.map +1 -0
  110. package/dist/api/graphql-api/runs/runs.resolver.js +130 -0
  111. package/dist/api/graphql-api/runs/runs.resolver.js.map +1 -0
  112. package/dist/api/graphql-api/share/graphql-param-types.js +6 -0
  113. package/dist/api/graphql-api/share/graphql-param-types.js.map +1 -0
  114. package/dist/api/graphql-api/share/inputs/connection.input.js +27 -0
  115. package/dist/api/graphql-api/share/inputs/connection.input.js.map +1 -0
  116. package/dist/api/graphql-api/share/inputs/run-subscription.input.js +22 -0
  117. package/dist/api/graphql-api/share/inputs/run-subscription.input.js.map +1 -0
  118. package/dist/api/graphql-api/share/model/paginated.model.js +75 -0
  119. package/dist/api/graphql-api/share/model/paginated.model.js.map +1 -0
  120. package/dist/api/graphql-api/system/model/daemon-status.model.js +47 -0
  121. package/dist/api/graphql-api/system/model/daemon-status.model.js.map +1 -0
  122. package/dist/api/graphql-api/system/model/doctor-result.model.js +33 -0
  123. package/dist/api/graphql-api/system/model/doctor-result.model.js.map +1 -0
  124. package/dist/api/graphql-api/system/model/project.model.js +37 -0
  125. package/dist/api/graphql-api/system/model/project.model.js.map +1 -0
  126. package/dist/api/graphql-api/system/model/repository-context.model.js +70 -0
  127. package/dist/api/graphql-api/system/model/repository-context.model.js.map +1 -0
  128. package/dist/api/graphql-api/system/model/repository-validation.model.js +62 -0
  129. package/dist/api/graphql-api/system/model/repository-validation.model.js.map +1 -0
  130. package/dist/api/graphql-api/system/model/system-status.model.js +29 -0
  131. package/dist/api/graphql-api/system/model/system-status.model.js.map +1 -0
  132. package/dist/api/graphql-api/system/system.resolver.js +83 -0
  133. package/dist/api/graphql-api/system/system.resolver.js.map +1 -0
  134. package/dist/cli/commands/inbox.js +1 -1
  135. package/dist/cli/commands/inbox.js.map +1 -1
  136. package/dist/cli/commands/run.js +0 -2
  137. package/dist/cli/commands/run.js.map +1 -1
  138. package/dist/cli/commands/serve.js +26 -0
  139. package/dist/cli/commands/serve.js.map +1 -0
  140. package/dist/cli/program.js +2 -0
  141. package/dist/cli/program.js.map +1 -1
  142. package/dist/config.js +15 -0
  143. package/dist/config.js.map +1 -1
  144. package/dist/control-plane/change-notifications.js +35 -0
  145. package/dist/control-plane/change-notifications.js.map +1 -0
  146. package/dist/control-plane/data-access.js +10 -3
  147. package/dist/control-plane/data-access.js.map +1 -1
  148. package/dist/control-plane/inbox.js +5 -31
  149. package/dist/control-plane/inbox.js.map +1 -1
  150. package/dist/control-plane/index.js +1 -1
  151. package/dist/control-plane/index.js.map +1 -1
  152. package/dist/control-plane/resolve-cwd.js +76 -8
  153. package/dist/control-plane/resolve-cwd.js.map +1 -1
  154. package/dist/control-plane/steps.js +15 -349
  155. package/dist/control-plane/steps.js.map +1 -1
  156. package/dist/e2e/kit/agents.js +26 -3
  157. package/dist/e2e/kit/agents.js.map +1 -1
  158. package/dist/e2e/kit/assertions.js +37 -14
  159. package/dist/e2e/kit/assertions.js.map +1 -1
  160. package/dist/e2e/kit/drive.js +0 -4
  161. package/dist/e2e/kit/drive.js.map +1 -1
  162. package/dist/e2e/kit/fake-integrator.js +16 -1
  163. package/dist/e2e/kit/fake-integrator.js.map +1 -1
  164. package/dist/e2e/kit/gh-emulator.js +173 -10
  165. package/dist/e2e/kit/gh-emulator.js.map +1 -1
  166. package/dist/e2e/kit/git-target-repo.js +35 -3
  167. package/dist/e2e/kit/git-target-repo.js.map +1 -1
  168. package/dist/e2e/kit/harness.js +4 -2
  169. package/dist/e2e/kit/harness.js.map +1 -1
  170. package/dist/engine/dbos.module.js +2 -1
  171. package/dist/engine/dbos.module.js.map +1 -1
  172. package/dist/engine/dbos.service.js +69 -18
  173. package/dist/engine/dbos.service.js.map +1 -1
  174. package/dist/features/inbox/commands/handlers/inbox-command.handlers.js +80 -0
  175. package/dist/features/inbox/commands/handlers/inbox-command.handlers.js.map +1 -0
  176. package/dist/features/inbox/commands/impl/answer-question.command.js +7 -0
  177. package/dist/features/inbox/commands/impl/answer-question.command.js.map +1 -0
  178. package/dist/features/inbox/commands/impl/approve-gate.command.js +7 -0
  179. package/dist/features/inbox/commands/impl/approve-gate.command.js.map +1 -0
  180. package/dist/features/inbox/commands/impl/reject-gate.command.js +7 -0
  181. package/dist/features/inbox/commands/impl/reject-gate.command.js.map +1 -0
  182. package/dist/features/inbox/commands/impl/resolve-inbox-item.command.js +7 -0
  183. package/dist/features/inbox/commands/impl/resolve-inbox-item.command.js.map +1 -0
  184. package/dist/features/inbox/commands/index.js +8 -0
  185. package/dist/features/inbox/commands/index.js.map +1 -0
  186. package/dist/features/inbox/inbox-api.module.js +23 -0
  187. package/dist/features/inbox/inbox-api.module.js.map +1 -0
  188. package/dist/features/inbox/inbox-api.service.js +63 -0
  189. package/dist/features/inbox/inbox-api.service.js.map +1 -0
  190. package/dist/features/inbox/queries/handlers/inbox-query.handlers.js +111 -0
  191. package/dist/features/inbox/queries/handlers/inbox-query.handlers.js.map +1 -0
  192. package/dist/features/inbox/queries/impl/get-inbox-item.query.js +7 -0
  193. package/dist/features/inbox/queries/impl/get-inbox-item.query.js.map +1 -0
  194. package/dist/features/inbox/queries/impl/get-pending-decisions.query.js +7 -0
  195. package/dist/features/inbox/queries/impl/get-pending-decisions.query.js.map +1 -0
  196. package/dist/features/inbox/queries/impl/list-inbox.query.js +7 -0
  197. package/dist/features/inbox/queries/impl/list-inbox.query.js.map +1 -0
  198. package/dist/features/inbox/queries/impl/summarize-gate-risk.query.js +7 -0
  199. package/dist/features/inbox/queries/impl/summarize-gate-risk.query.js.map +1 -0
  200. package/dist/features/inbox/queries/index.js +8 -0
  201. package/dist/features/inbox/queries/index.js.map +1 -0
  202. package/dist/features/method/commands/index.js +2 -0
  203. package/dist/features/method/commands/index.js.map +1 -0
  204. package/dist/features/method/method-api.module.js +23 -0
  205. package/dist/features/method/method-api.module.js.map +1 -0
  206. package/dist/features/method/method-api.service.js +47 -0
  207. package/dist/features/method/method-api.service.js.map +1 -0
  208. package/dist/features/method/queries/handlers/method-query.handlers.js +115 -0
  209. package/dist/features/method/queries/handlers/method-query.handlers.js.map +1 -0
  210. package/dist/features/method/queries/impl/get-pipeline.query.js +7 -0
  211. package/dist/features/method/queries/impl/get-pipeline.query.js.map +1 -0
  212. package/dist/features/method/queries/impl/get-role.query.js +7 -0
  213. package/dist/features/method/queries/impl/get-role.query.js.map +1 -0
  214. package/dist/features/method/queries/impl/list-pipelines.query.js +7 -0
  215. package/dist/features/method/queries/impl/list-pipelines.query.js.map +1 -0
  216. package/dist/features/method/queries/impl/list-playbooks.query.js +7 -0
  217. package/dist/features/method/queries/impl/list-playbooks.query.js.map +1 -0
  218. package/dist/features/method/queries/impl/list-roles.query.js +7 -0
  219. package/dist/features/method/queries/impl/list-roles.query.js.map +1 -0
  220. package/dist/features/method/queries/index.js +9 -0
  221. package/dist/features/method/queries/index.js.map +1 -0
  222. package/dist/features/pr/commands/index.js +2 -0
  223. package/dist/features/pr/commands/index.js.map +1 -0
  224. package/dist/features/pr/pr-api.module.js +23 -0
  225. package/dist/features/pr/pr-api.module.js.map +1 -0
  226. package/dist/features/pr/pr-api.service.js +35 -0
  227. package/dist/features/pr/pr-api.service.js.map +1 -0
  228. package/dist/features/pr/queries/handlers/pr-query.handlers.js +48 -0
  229. package/dist/features/pr/queries/handlers/pr-query.handlers.js.map +1 -0
  230. package/dist/features/pr/queries/impl/get-pr-readiness.query.js +7 -0
  231. package/dist/features/pr/queries/impl/get-pr-readiness.query.js.map +1 -0
  232. package/dist/features/pr/queries/impl/list-pr-feedback.query.js +7 -0
  233. package/dist/features/pr/queries/impl/list-pr-feedback.query.js.map +1 -0
  234. package/dist/features/pr/queries/index.js +3 -0
  235. package/dist/features/pr/queries/index.js.map +1 -0
  236. package/dist/features/runs/commands/handlers/runs-command.handlers.js +32 -0
  237. package/dist/features/runs/commands/handlers/runs-command.handlers.js.map +1 -0
  238. package/dist/features/runs/commands/impl/create-run.command.js +7 -0
  239. package/dist/features/runs/commands/impl/create-run.command.js.map +1 -0
  240. package/dist/features/runs/commands/index.js +3 -0
  241. package/dist/features/runs/commands/index.js.map +1 -0
  242. package/dist/features/runs/queries/handlers/runs-query.handlers.js +224 -0
  243. package/dist/features/runs/queries/handlers/runs-query.handlers.js.map +1 -0
  244. package/dist/features/runs/queries/impl/get-run-attempts.query.js +7 -0
  245. package/dist/features/runs/queries/impl/get-run-attempts.query.js.map +1 -0
  246. package/dist/features/runs/queries/impl/get-run-digest.query.js +7 -0
  247. package/dist/features/runs/queries/impl/get-run-digest.query.js.map +1 -0
  248. package/dist/features/runs/queries/impl/get-run-events.query.js +7 -0
  249. package/dist/features/runs/queries/impl/get-run-events.query.js.map +1 -0
  250. package/dist/features/runs/queries/impl/get-run-progress.query.js +7 -0
  251. package/dist/features/runs/queries/impl/get-run-progress.query.js.map +1 -0
  252. package/dist/features/runs/queries/impl/get-run-workflow.query.js +7 -0
  253. package/dist/features/runs/queries/impl/get-run-workflow.query.js.map +1 -0
  254. package/dist/features/runs/queries/impl/get-run.query.js +7 -0
  255. package/dist/features/runs/queries/impl/get-run.query.js.map +1 -0
  256. package/dist/features/runs/queries/impl/list-runs.query.js +7 -0
  257. package/dist/features/runs/queries/impl/list-runs.query.js.map +1 -0
  258. package/dist/features/runs/queries/impl/simulate-route.query.js +7 -0
  259. package/dist/features/runs/queries/impl/simulate-route.query.js.map +1 -0
  260. package/dist/features/runs/queries/index.js +12 -0
  261. package/dist/features/runs/queries/index.js.map +1 -0
  262. package/dist/features/runs/runs-api.module.js +23 -0
  263. package/dist/features/runs/runs-api.module.js.map +1 -0
  264. package/dist/features/runs/runs-api.service.js +67 -0
  265. package/dist/features/runs/runs-api.service.js.map +1 -0
  266. package/dist/features/shared/connection.js +39 -0
  267. package/dist/features/shared/connection.js.map +1 -0
  268. package/dist/features/system/commands/index.js +2 -0
  269. package/dist/features/system/commands/index.js.map +1 -0
  270. package/dist/features/system/queries/handlers/system-query.handlers.js +96 -0
  271. package/dist/features/system/queries/handlers/system-query.handlers.js.map +1 -0
  272. package/dist/features/system/queries/impl/doctor.query.js +4 -0
  273. package/dist/features/system/queries/impl/doctor.query.js.map +1 -0
  274. package/dist/features/system/queries/impl/get-project.query.js +4 -0
  275. package/dist/features/system/queries/impl/get-project.query.js.map +1 -0
  276. package/dist/features/system/queries/impl/get-repository-context.query.js +7 -0
  277. package/dist/features/system/queries/impl/get-repository-context.query.js.map +1 -0
  278. package/dist/features/system/queries/impl/get-status.query.js +4 -0
  279. package/dist/features/system/queries/impl/get-status.query.js.map +1 -0
  280. package/dist/features/system/queries/impl/validate-repository.query.js +7 -0
  281. package/dist/features/system/queries/impl/validate-repository.query.js.map +1 -0
  282. package/dist/features/system/queries/index.js +9 -0
  283. package/dist/features/system/queries/index.js.map +1 -0
  284. package/dist/features/system/system-api.module.js +23 -0
  285. package/dist/features/system/system-api.module.js.map +1 -0
  286. package/dist/features/system/system-api.service.js +47 -0
  287. package/dist/features/system/system-api.service.js.map +1 -0
  288. package/dist/host/host.lifecycle.js +16 -3
  289. package/dist/host/host.lifecycle.js.map +1 -1
  290. package/dist/http/graphql-host.js +50 -0
  291. package/dist/http/graphql-host.js.map +1 -0
  292. package/dist/http/graphql-host.module.js +20 -0
  293. package/dist/http/graphql-host.module.js.map +1 -0
  294. package/dist/infrastructure/metrics/graphql/graphql-metrics.js +91 -0
  295. package/dist/infrastructure/metrics/graphql/graphql-metrics.js.map +1 -0
  296. package/dist/pipeline/await-human.js +8 -4
  297. package/dist/pipeline/await-human.js.map +1 -1
  298. package/dist/pipeline/data-driven-task.workflow.js +171 -22
  299. package/dist/pipeline/data-driven-task.workflow.js.map +1 -1
  300. package/dist/pipeline/data-driven-template.js +3 -3
  301. package/dist/pipeline/pipeline.module.js +1 -1
  302. package/dist/pipeline/pipeline.module.js.map +1 -1
  303. package/dist/pipeline/{develop-task.workflow.js → pipeline.service.js} +43 -11
  304. package/dist/pipeline/pipeline.service.js.map +1 -0
  305. package/dist/pipeline-core/kit/fixtures.js +94 -0
  306. package/dist/pipeline-core/kit/fixtures.js.map +1 -1
  307. package/dist/revisium/run.service.js +16 -7
  308. package/dist/revisium/run.service.js.map +1 -1
  309. package/dist/run/create-run.js +5 -31
  310. package/dist/run/create-run.js.map +1 -1
  311. package/dist/run/inspect-run.js +2 -29
  312. package/dist/run/inspect-run.js.map +1 -1
  313. package/dist/run/terminal-run-status.js +7 -30
  314. package/dist/run/terminal-run-status.js.map +1 -1
  315. package/dist/runners/claude-code.service.js +1 -0
  316. package/dist/runners/claude-code.service.js.map +1 -1
  317. package/dist/runners/integrator.js +241 -5
  318. package/dist/runners/integrator.js.map +1 -1
  319. package/dist/runners/runner.module.js +3 -1
  320. package/dist/runners/runner.module.js.map +1 -1
  321. package/dist/runners/worktree.service.js +63 -0
  322. package/dist/runners/worktree.service.js.map +1 -0
  323. package/dist/task-control-plane/task-control-plane-api.service.js +293 -3
  324. package/dist/task-control-plane/task-control-plane-api.service.js.map +1 -1
  325. package/dist/task-control-plane/task-control-plane.module.js +1 -2
  326. package/dist/task-control-plane/task-control-plane.module.js.map +1 -1
  327. package/dist/worker/claude-code-runner.js +13 -15
  328. package/dist/worker/claude-code-runner.js.map +1 -1
  329. package/dist/worker/git-worktree-manager.js +148 -0
  330. package/dist/worker/git-worktree-manager.js.map +1 -0
  331. package/dist/worker/result-envelope.js +41 -1
  332. package/dist/worker/result-envelope.js.map +1 -1
  333. package/dist/worker/runner.js.map +1 -1
  334. package/package.json +15 -7
  335. package/dist/pipeline/develop-task.workflow.js.map +0 -1
  336. package/dist/worker/worktree-manager.js +0 -7
  337. package/dist/worker/worktree-manager.js.map +0 -1
@@ -29,6 +29,7 @@
29
29
  */
30
30
  import { step as coreStep, initialState, validateTemplate, InterpretError, } from '../pipeline-core/index.js';
31
31
  import { runnerNeedsLivePreflight, runnerUsesRealIntegrator } from './route-contract.js';
32
+ export const RUN_PROGRESS_EVENT_KEY = 'run-progress';
32
33
  const MAX_STEPS = 1_000; // a VALID template terminates; guards a data/loop authoring mistake at runtime.
33
34
  /**
34
35
  * Reserved engine error codes (matched only by a node's `catch`, §3/§6).
@@ -70,11 +71,33 @@ function isRecord(value) {
70
71
  * The value is lowercased to match the spec's domain vocabulary (`approved|blocker|clean|…`).
71
72
  */
72
73
  function domainVerdictOf(result) {
74
+ // Preferred: the explicit top-level `verdict` (REVO_RESULT contract — a prominent required field the
75
+ // agent reliably fills, unlike a prose `output`).
76
+ if (typeof result.verdict === 'string' && result.verdict.length > 0)
77
+ return normalizeDomainLabel(result.verdict);
73
78
  const output = result.output;
74
- const raw = isRecord(output) ? output.verdict : output;
75
- if (typeof raw !== 'string')
76
- return undefined;
77
- return normalizeDomainLabel(raw);
79
+ // Then a structured `output: { verdict: "<label>" }` (back-compat with the older convention).
80
+ if (isRecord(output) && typeof output.verdict === 'string')
81
+ return normalizeDomainLabel(output.verdict);
82
+ // Fallback: the agent returned a free-text/summary string. The prompt still requires a verdict token,
83
+ // so scan the text for the LAST known domain label as a whole word. Without this a prose-shaped output
84
+ // yields no routable verdict and a `choice` router falls to its default → blocked (the planReviewRouter
85
+ // exposed exactly this in the alpha.4 dogfood: "Plan approved: …" produced no `approved` for routing).
86
+ if (typeof output === 'string')
87
+ return scanVerdict(output);
88
+ return undefined;
89
+ }
90
+ /** Exact domain-verdict words a free-text output may carry (NOT the PASS/MINOR structural aliases — those
91
+ * would false-positive on prose like "tests passed"). */
92
+ const DOMAIN_VERDICT_WORDS = new Set(['APPROVED', 'CLEAN', 'CHANGES_REQUESTED', 'BLOCKER', 'DIRTY']);
93
+ /** Last known domain-verdict word in free text → its lowercase label. Total + deterministic. */
94
+ function scanVerdict(text) {
95
+ let found;
96
+ for (const token of text.split(/[^A-Za-z_]+/)) {
97
+ if (token && DOMAIN_VERDICT_WORDS.has(token.toUpperCase()))
98
+ found = token.toLowerCase();
99
+ }
100
+ return found;
78
101
  }
79
102
  /**
80
103
  * Normalize an agent's free-text verdict token to a domain label. The seeded test/agent vocabulary
@@ -127,6 +150,14 @@ function resultSatisfiesSchema(node, result) {
127
150
  return true;
128
151
  return Array.isArray(output);
129
152
  }
153
+ function progressCursor(state, lastResult) {
154
+ return {
155
+ activeNodeIds: [...state.activeNodeIds],
156
+ scopedCounters: { ...state.scopedCounters },
157
+ status: state.status,
158
+ ...(lastResult ? { lastResult } : {}),
159
+ };
160
+ }
130
161
  /**
131
162
  * Map an approve/reject human decision onto a DOMAIN verdict the template's gate `outcomes` can route.
132
163
  * The core never sees approve/reject — it routes on a domain label (§8). Approve → the first declared
@@ -140,9 +171,21 @@ function gateVerdict(decision, outcomes) {
140
171
  // reject: prefer a declared "rework/changes" outcome; else let the default branch route (blocked).
141
172
  return outcomes.length > 1 ? outcomes.at(-1) : undefined;
142
173
  }
143
- /** Stable gate topic from a node's reason (plan-review → 'plan', merge-review → 'merge', else 'plan'). */
174
+ /**
175
+ * Stable gate topic from a node's reason. The topic is the DBOS recv channel AND part of the gate
176
+ * inbox id (`runId|topic`), so DISTINCT gates in one pipeline MUST map to DISTINCT topics — otherwise
177
+ * a second gate's `recv` collides with the first's already-consumed message and the run hangs (plan
178
+ * 0018: the `review-question` gate would otherwise reuse the `plan` topic of the plan gate).
179
+ * merge-review → 'merge'
180
+ * review-question→ 'question'
181
+ * (anything else)→ 'plan' (the plan-review gate)
182
+ */
144
183
  function gateTopicFor(reason) {
145
- return /merge/i.test(reason) ? 'merge' : 'plan';
184
+ if (/merge/i.test(reason))
185
+ return 'merge';
186
+ if (/question/i.test(reason))
187
+ return 'question';
188
+ return 'plan';
146
189
  }
147
190
  /**
148
191
  * makeDataDrivenTask — DBOS-free factory for the dataDrivenTask async function (C1).
@@ -151,7 +194,7 @@ function gateTopicFor(reason) {
151
194
  * production and tests. Returns a plain async function with the workflow signature.
152
195
  */
153
196
  export function makeDataDrivenTask(runStepFn, deps) {
154
- const { appendEvent, appendRunOutput, awaitHuman, completeRun, failRun, blockRun, loadRunTaskContext, integrateFn, runStub, preflightFn } = deps;
197
+ const { appendEvent, appendRunOutput, awaitHuman, completeRun, failRun, blockRun, loadRunTaskContext, integrateFn, runStub, confirmMergeFn, runConfirmStub, pollPrFn, runPollStub, respondThreadsFn, runRespondStub, preflightFn, createWorktreeFn, releaseWorktreeFn } = deps;
155
198
  /** Resolve a node's `consumes` from the workflow-local output accumulator — NOT live Revisium reads
156
199
  * (0016 §6 / consensus M4: a live read on replay can see rows written past the replay point). */
157
200
  function resolveConsumes(node, outputsByNode) {
@@ -234,12 +277,46 @@ export function makeDataDrivenTask(runStepFn, deps) {
234
277
  // engine's gate). A `needsHuman` preflight blocks the run (clean/base invariant unmet) and surfaces
235
278
  // the lesson — the run never enters the graph. This is an engine-level guard (infrastructure), not a
236
279
  // template node: it is cross-cutting and identical for every pinned pipeline (zero role-ids/shapes).
237
- if (route.roleBindings.some((b) => runnerNeedsLivePreflight(b.resolvedRunnerId))) {
280
+ const live = route.roleBindings.some((b) => runnerNeedsLivePreflight(b.resolvedRunnerId));
281
+ if (live) {
282
+ // Preflight runs against the BASE checkout (resolveTaskCwd), BEFORE the worktree exists — its
283
+ // fetch + clean/freshness checks protect the user's base repo. Ordering is load-bearing.
238
284
  const pf = await preflightFn(taskId, base);
239
285
  if ('needsHuman' in pf) {
240
286
  return await blockWithLesson(runId, taskId, 'preflight', pf.lesson, 0);
241
287
  }
242
288
  }
289
+ // Per-run worktree (plan 0017): create AFTER a passing preflight and BEFORE any live effect, so all
290
+ // repo-touching steps (developer/rework + integrator) resolve to the isolated worktree (keyed by
291
+ // runId) — never the shared base checkout. Skipped for non-live runs. The `finally` releases it at a
292
+ // SUCCEEDED terminal (the PR is merged via confirmMerge → branch is in base → worktree disposable) and
293
+ // on a throw (failure); it KEEPS the worktree on a `blocked` terminal (confirmMerge blocks when the PR
294
+ // isn't merged yet — the tree must survive for rework / a manual merge; reclaimed by cleanup_worktree
295
+ // + the host-start sweep). It does NOT run while parked at a gate (awaitHuman suspends the live
296
+ // workflow via `recv`, so runBody never returns there). Create is INSIDE the try so the release also
297
+ // cleans up a create that partially built the worktree before throwing (codex/CodeRabbit).
298
+ let result;
299
+ try {
300
+ if (live) {
301
+ await createWorktreeFn(runId, taskId, title, base);
302
+ }
303
+ result = await runGraph(runId, opts, taskId, title, base);
304
+ return result;
305
+ }
306
+ finally {
307
+ if (live && result?.status !== 'blocked') {
308
+ try {
309
+ await releaseWorktreeFn(runId, taskId);
310
+ }
311
+ catch (releaseErr) {
312
+ console.warn(`[data-driven] worktree release for ${runId} failed (orphan; pruned later): ${String(releaseErr)}`);
313
+ }
314
+ }
315
+ }
316
+ }
317
+ /** The pipeline-core interpretation loop, extracted so the worktree `finally` in runBody wraps it. */
318
+ async function runGraph(runId, opts, taskId, title, base) {
319
+ const { route, template } = opts;
243
320
  // Capability resolution map (GENERIC — no role-ids in the engine): roleRef/scriptRef → route binding.
244
321
  // The route's bindings are authoritative for runner dispatch (and durable on recovery via the DBOS
245
322
  // workflow input). A `role:<id>` handle resolves to the binding whose roleId matches `<id>`. A
@@ -268,6 +345,7 @@ export function makeDataDrivenTask(runStepFn, deps) {
268
345
  for (let i = 0; i < MAX_STEPS; i++) {
269
346
  const { state: nextState, decision } = coreStep(template, state, lastResult);
270
347
  state = nextState;
348
+ await deps.setProgress?.(runId, progressCursor(state, lastResult));
271
349
  if (decision.type === 'complete') {
272
350
  return await finish(runId, decision.status, lastVerdict, stepCount);
273
351
  }
@@ -320,7 +398,17 @@ export function makeDataDrivenTask(runStepFn, deps) {
320
398
  case 'invokeScript': {
321
399
  const node = resolveNode(template, decision.nodeId);
322
400
  const ordinal = nextOrdinal(ctx.effectOrdinalByNode, node.id);
323
- const scriptResult = await invokeScript(runId, decision, { taskId, title, base }, bindingByRef, stepKeyFor(node.id, ordinal));
401
+ // A script node may `consumes` upstream data (plan 0018: respondThreads triage). Hydrate it
402
+ // from the workflow-local accumulator (same seam as agents), fail-loud on a missing required input.
403
+ const resolved = resolveConsumes(node, ctx.outputsByNode);
404
+ if ('missing' in resolved) {
405
+ await appendEvent({
406
+ runId, taskId, stepId: '', stepKey: stepKeyFor(node.id, ordinal), type: 'step_failed',
407
+ payload: { nodeId: node.id, error: `${REVO_INPUT_MISSING}: required input ${resolved.missing} was not produced` },
408
+ });
409
+ return { lastResult: { outcome: 'failed', errorCode: REVO_INPUT_MISSING }, lastVerdict: 'failed', stepDelta: 1 };
410
+ }
411
+ const scriptResult = await invokeScript(runId, decision, { taskId, title, base }, bindingByRef, stepKeyFor(node.id, ordinal), resolved.inputs);
324
412
  // A blocked script (needsHuman) routes via revo.ScriptBlocked → a `blocked` terminal; a thrown
325
413
  // script routes via revo.ScriptFailed → a `failed` terminal (§6 catch). The lesson-bearing
326
414
  // pipeline_blocked is emitted inside invokeScript for the block path (parity with the old engine).
@@ -331,11 +419,17 @@ export function makeDataDrivenTask(runStepFn, deps) {
331
419
  return { lastResult: { outcome: 'failed', errorCode: REVO_SCRIPT_FAILED }, lastVerdict: 'failed', stepDelta: 1 };
332
420
  }
333
421
  await recordOutput(runId, node, ordinal, scriptResult.pointer, ctx.outputsByNode);
334
- return { lastResult: { outcome: 'succeeded' }, stepDelta: 1 };
422
+ // A classifying script (pollPr, plan 0018) surfaces a DOMAIN verdict so the next `choice` can
423
+ // route on it (§8). Scripts with a single fixed `next` (integrator/confirmMerge) carry none.
424
+ const sv = scriptResult.verdict;
425
+ return { lastResult: { outcome: 'succeeded', ...(sv ? { verdict: sv } : {}) }, ...(sv ? { lastVerdict: sv } : {}), stepDelta: 1 };
335
426
  }
336
427
  case 'awaitGate': {
337
428
  const topic = gateTopicFor(decision.reason);
338
- const human = await awaitHuman(runId, topic, `${decision.reason} approval`, {
429
+ // Per-entry gate key (nodeId#ordinal) so a re-entered gate (e.g. a question gate looped in the
430
+ // review phase) gets a DISTINCT inbox row instead of colliding on `runId|topic` (§3.2 audit).
431
+ const ordinal = nextOrdinal(ctx.effectOrdinalByNode, decision.nodeId);
432
+ const human = await awaitHuman(runId, topic, stepKeyFor(decision.nodeId, ordinal), `${decision.reason} approval`, {
339
433
  nodeId: decision.nodeId,
340
434
  outcomes: decision.outcomes,
341
435
  });
@@ -398,16 +492,31 @@ export function makeDataDrivenTask(runStepFn, deps) {
398
492
  * - `failed`: the integrator THREW (a gh/push error). `catch[revo.ScriptFailed]` routes to a `failed`
399
493
  * terminal; the run's top-level catch failRuns (the thrown reason is recorded, redacted).
400
494
  */
401
- async function invokeScript(runId, decision, ctx, bindingByRef, stepKey) {
495
+ async function invokeScript(runId, decision, ctx, bindingByRef, stepKey, inputs) {
496
+ const isConfirmMerge = decision.scriptRef === 'script:confirmMerge';
497
+ const isPollPr = decision.scriptRef === 'script:pollPr';
498
+ const isRespondThreads = decision.scriptRef === 'script:respondThreads';
402
499
  const binding = bindingByRef.get(decision.scriptRef) ?? bindingByRef.get('script:integrator');
403
- const integratorInput = { runId, taskId: ctx.taskId, title: ctx.title, base: ctx.base };
500
+ // respondThreads consumes `triage` (plan 0018) ride the hydrated input on the integrator input so
501
+ // the live script can reply/resolve the triaged threads without a live Revisium read.
502
+ const integratorInput = { runId, taskId: ctx.taskId, title: ctx.title, base: ctx.base, ...(inputs.triage !== undefined ? { triage: inputs.triage } : {}) };
503
+ // A script node whose resolved runner mechanically performs the merge uses the REAL script;
504
+ // otherwise the pure stub (zero git/gh). Absent a binding (template-only script), default to stub.
505
+ const useReal = !!binding && runnerUsesRealIntegrator(binding.resolvedRunnerId);
404
506
  let result;
405
507
  try {
406
- // A script node whose resolved runner mechanically performs the merge uses the real integrator;
407
- // otherwise the pure stub (zero git/gh). Absent a binding (template-only script), default to stub.
408
- result = binding && runnerUsesRealIntegrator(binding.resolvedRunnerId)
409
- ? await integrateFn(integratorInput)
410
- : runStub(integratorInput);
508
+ if (isConfirmMerge) {
509
+ result = useReal ? await confirmMergeFn(integratorInput) : runConfirmStub(integratorInput);
510
+ }
511
+ else if (isPollPr) {
512
+ result = useReal ? await pollPrFn(integratorInput) : runPollStub(integratorInput);
513
+ }
514
+ else if (isRespondThreads) {
515
+ result = useReal ? await respondThreadsFn(integratorInput) : runRespondStub(integratorInput);
516
+ }
517
+ else {
518
+ result = useReal ? await integrateFn(integratorInput) : runStub(integratorInput);
519
+ }
411
520
  }
412
521
  catch (err) {
413
522
  await appendEvent({
@@ -422,26 +531,66 @@ export function makeDataDrivenTask(runStepFn, deps) {
422
531
  }
423
532
  if ('needsHuman' in result) {
424
533
  // Surface the blocking reason as pipeline_blocked (the persist boundary redacts any token, D15) so
425
- // the human sees WHY the integrator could not proceed — exactly as the old engine's blockPipeline.
534
+ // the human sees WHY the script could not proceed — exactly as the old engine's blockPipeline.
535
+ const reason = isConfirmMerge ? 'confirm-merge' : isPollPr ? 'poll-pr' : isRespondThreads ? 'respond-threads' : 'integrate';
426
536
  await appendEvent({
427
537
  runId,
428
538
  taskId: ctx.taskId,
429
539
  stepId: '',
430
540
  stepKey: 'pipeline',
431
541
  type: 'pipeline_blocked',
432
- payload: { reason: 'integrate', lesson: result.lesson, nodeId: decision.nodeId },
542
+ payload: { reason, lesson: result.lesson, nodeId: decision.nodeId },
433
543
  });
434
544
  return { outcome: 'blocked' };
435
545
  }
546
+ if (isConfirmMerge) {
547
+ const merged = result;
548
+ await appendEvent({
549
+ runId,
550
+ taskId: ctx.taskId,
551
+ stepId: '',
552
+ stepKey,
553
+ type: 'merge_confirmed',
554
+ payload: { prNumber: merged.prNumber, prUrl: merged.prUrl },
555
+ });
556
+ return { outcome: 'ok', pointer: { merged: true, prNumber: merged.prNumber, prUrl: merged.prUrl } };
557
+ }
558
+ if (isPollPr) {
559
+ // pollPr CLASSIFIES the feedback: its verdict (review_changes/ci_changes/clean) routes the prRouter
560
+ // choice (§8 — a script may emit a domain verdict the routing data acts on, same as an agent).
561
+ const feedback = result;
562
+ await appendEvent({
563
+ runId,
564
+ taskId: ctx.taskId,
565
+ stepId: '',
566
+ stepKey,
567
+ type: 'pr_polled',
568
+ payload: { prNumber: feedback.prNumber, verdict: feedback.verdict, ciFailures: feedback.ciFailures.length, reviewThreads: feedback.reviewThreads.length },
569
+ });
570
+ return { outcome: 'ok', pointer: feedback, verdict: feedback.verdict };
571
+ }
572
+ if (isRespondThreads) {
573
+ const responded = result;
574
+ await appendEvent({
575
+ runId,
576
+ taskId: ctx.taskId,
577
+ stepId: '',
578
+ stepKey,
579
+ type: 'threads_responded',
580
+ payload: { replied: responded.replied, resolved: responded.resolved },
581
+ });
582
+ return { outcome: 'ok', pointer: responded };
583
+ }
584
+ const integrated = result;
436
585
  await appendEvent({
437
586
  runId,
438
587
  taskId: ctx.taskId,
439
588
  stepId: '',
440
589
  stepKey,
441
590
  type: 'integrate_succeeded',
442
- payload: { prUrl: result.prUrl, branch: result.branch, prNumber: result.prNumber },
591
+ payload: { prUrl: integrated.prUrl, branch: integrated.branch, prNumber: integrated.prNumber },
443
592
  });
444
- return { outcome: 'ok', pointer: { prUrl: result.prUrl, branch: result.branch, prNumber: result.prNumber } };
593
+ return { outcome: 'ok', pointer: { prUrl: integrated.prUrl, branch: integrated.branch, prNumber: integrated.prNumber } };
445
594
  }
446
595
  /** Terminal: finish the run in Revisium per the core's terminal status. */
447
596
  async function finish(runId, status, verdict, steps) {
@@ -1 +1 @@
1
- {"version":3,"file":"data-driven-task.workflow.js","sourceRoot":"","sources":["../../src/pipeline/data-driven-task.workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-driven-task.workflow.js","sourceRoot":"","sources":["../../src/pipeline/data-driven-task.workflow.ts"],"names":[],"mappings":"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"}
@@ -26,9 +26,9 @@ function looksLikeTemplate(value) {
26
26
  * Extract a data-driven template from a pipeline's executionPolicy, if present + valid.
27
27
  *
28
28
  * Returns the validated `Template` when the pipeline carries a clean state-machine spec, else `null`
29
- * (→ the run takes the existing hardcoded `develop-task` path). A present-but-INVALID template throws,
30
- * so a broken data-driven pipeline fails loudly at run start rather than silently degrading to the
31
- * hardcoded engine (which would mask the authoring bug).
29
+ * (→ the caller fails loud with `PIPELINE_NOT_DATA_DRIVEN`; the data-driven engine is the sole engine, so
30
+ * there is no legacy fallback path). A present-but-INVALID template throws, so a broken data-driven pipeline
31
+ * fails loudly at run start rather than silently degrading (which would mask the authoring bug).
32
32
  */
33
33
  export function templateFromExecutionPolicy(executionPolicy) {
34
34
  if (!isRecord(executionPolicy))
@@ -8,7 +8,7 @@ import { Module } from '@nestjs/common';
8
8
  import { EngineModule } from '../engine/dbos.module.js';
9
9
  import { RevisiumModule } from '../revisium/revisium.module.js';
10
10
  import { RunnerModule } from '../runners/runner.module.js';
11
- import { PipelineService } from './develop-task.workflow.js';
11
+ import { PipelineService } from './pipeline.service.js';
12
12
  /**
13
13
  * PipelineModule — registers PipelineService, which registers the data-driven pipeline
14
14
  * workflow + runStep step + dev-tasks queue with DBOS in its constructor.
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.module.js","sourceRoot":"","sources":["../../src/pipeline/pipeline.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D;;;;;;;;;;;GAWG;AAMI,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,cAAc;IAL1B,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,CAAC;QACrD,SAAS,EAAE,CAAC,eAAe,CAAC;QAC5B,OAAO,EAAE,CAAC,eAAe,CAAC;KAC3B,CAAC;GACW,cAAc,CAAG"}
1
+ {"version":3,"file":"pipeline.module.js","sourceRoot":"","sources":["../../src/pipeline/pipeline.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;;;;;;;;;;GAWG;AAMI,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,cAAc;IAL1B,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,CAAC;QACrD,SAAS,EAAE,CAAC,eAAe,CAAC;QAC5B,OAAO,EAAE,CAAC,eAAe,CAAC;KAC3B,CAAC;GACW,cAAc,CAAG"}
@@ -11,18 +11,20 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
11
11
  return function (target, key) { decorator(target, key, paramIndex); }
12
12
  };
13
13
  /**
14
- * PipelineService — DBOS registration hub for the data-driven pipeline engine (plan 0015).
14
+ * PipelineService — the DBOS registration hub for the data-driven pipeline engine (plan 0015 / ADR-0002).
15
+ *
16
+ * (Renamed from `develop-task.workflow.ts`: the hardcoded `developTask` workflow that file was named for was
17
+ * removed in the plan-0015 cutover, so the old name described code that no longer exists.)
15
18
  *
16
19
  * INVARIANT: `src/pipeline/*` imports NO `@dbos-inc/dbos-sdk` (M1 — DBOS sealed).
17
20
  * All DBOS interaction goes through the generic DbosService verbs.
18
21
  *
19
22
  * Registration happens in the constructor, BEFORE DBOS.launch() (mirroring dev:ping).
20
23
  *
21
- * CUTOVER (plan 0015 slice 3): the old hardcoded `developTask` workflow + its role→phase classifiers
22
- * (`planRouteExecution`, `isDeveloperRole`/…, `validatePostIntegratorBindings`, `beforeDeveloperPhase`)
23
- * have been REMOVED. The data-driven engine (`makeDataDrivenTask`, executing a `pipeline-core` graph) is
24
- * the SOLE pipeline engine; selection routes EVERY pipeline to it (TaskControlPlaneApiService.startRun),
25
- * and a pipeline lacking a valid data-driven template FAILS LOUD there (PIPELINE_NOT_DATA_DRIVEN).
24
+ * The data-driven engine (`makeDataDrivenTask`, executing a `pipeline-core` graph) is the SOLE pipeline engine:
25
+ * selection routes EVERY pipeline to it (TaskControlPlaneApiService.startRun), and a pipeline lacking a valid
26
+ * data-driven template FAILS LOUD there (PIPELINE_NOT_DATA_DRIVEN). The former hardcoded role→phase classifiers
27
+ * (`planRouteExecution`, `validatePostIntegratorBindings`, …) were removed in that cutover.
26
28
  *
27
29
  * KEPT here (the shared seams the data-driven adapter reuses):
28
30
  * - `makeRunStep` — the generic per-step runner (role→runner dispatch, attempt/cost/event bookkeeping).
@@ -39,13 +41,14 @@ import { RolesService } from '../revisium/roles.service.js';
39
41
  import { RunService } from '../revisium/run.service.js';
40
42
  import { InboxService } from '../revisium/inbox.service.js';
41
43
  import { IntegratorService } from '../runners/integrator.js';
44
+ import { WorktreeService } from '../runners/worktree.service.js';
42
45
  import { redactTokens } from '../runners/gh-identity.js';
43
46
  import { RUN_AGENT } from '../runners/tokens.js';
44
47
  import { buildContext } from '../worker/build-context.js';
45
48
  import { artifactsFromRunAgentError } from '../worker/runner.js';
46
49
  import { fnv1a64Hex } from '../control-plane/steps.js';
47
50
  import { makeAwaitHuman } from './await-human.js';
48
- import { makeDataDrivenTask, } from './data-driven-task.workflow.js';
51
+ import { makeDataDrivenTask, RUN_PROGRESS_EVENT_KEY, } from './data-driven-task.workflow.js';
49
52
  import { dispatchRunnerId, } from './route-contract.js';
50
53
  /** Queue name for the dev-tasks WorkflowQueue. */
51
54
  const DEV_TASKS_QUEUE = 'dev-tasks';
@@ -257,6 +260,7 @@ let PipelineService = class PipelineService {
257
260
  runService;
258
261
  inboxService;
259
262
  integratorService;
263
+ worktreeService;
260
264
  /** Registered DBOS-wrapped function types. */
261
265
  runStepFn;
262
266
  /**
@@ -267,12 +271,13 @@ let PipelineService = class PipelineService {
267
271
  dataDrivenTaskFn;
268
272
  /** The single run-agent used by all steps. */
269
273
  runAgent;
270
- constructor(dbos, rolesService, runService, inboxService, integratorService, runAgentToken) {
274
+ constructor(dbos, rolesService, runService, inboxService, integratorService, worktreeService, runAgentToken) {
271
275
  this.dbos = dbos;
272
276
  this.rolesService = rolesService;
273
277
  this.runService = runService;
274
278
  this.inboxService = inboxService;
275
279
  this.integratorService = integratorService;
280
+ this.worktreeService = worktreeService;
276
281
  this.runAgent = runAgentToken;
277
282
  // Capture bound dep methods (S7740: no `this`-aliasing in closures).
278
283
  const stepDeps = {
@@ -288,8 +293,19 @@ let PipelineService = class PipelineService {
288
293
  this.runStepFn = this.dbos.registerStep('PipelineService.runStep', makeRunStep(stepDeps));
289
294
  // Register the REAL integrator as a DBOS step (M6/B7: .bind so `this` survives registration).
290
295
  const integrateFn = this.dbos.registerStep('PipelineService.integrate', this.integratorService.runIntegrate.bind(this.integratorService));
296
+ // Register the REAL confirm-merge as a DBOS step (plan 0017 follow-up: gate worktree cleanup on a
297
+ // real merge). Idempotent (re-views before merging) → replay-safe.
298
+ const confirmMergeFn = this.dbos.registerStep('PipelineService.confirmMerge', this.integratorService.runConfirmMerge.bind(this.integratorService));
299
+ // Register the REAL pollPr + respondThreads as DBOS steps (plan 0018: the PR review-feedback loop).
300
+ // pollPr observes + classifies; respondThreads replies + resolves. Both gh-pinned + idempotent.
301
+ const pollPrFn = this.dbos.registerStep('PipelineService.pollPr', this.integratorService.runPollPr.bind(this.integratorService));
302
+ const respondThreadsFn = this.dbos.registerStep('PipelineService.respondThreads', this.integratorService.runRespondThreads.bind(this.integratorService));
291
303
  // Register the live preflight as a memoized DBOS step (B5/B7).
292
304
  const preflightFn = this.dbos.registerStep('PipelineService.preflightLive', this.integratorService.runPreflight.bind(this.integratorService));
305
+ // Register the per-run worktree lifecycle as memoized DBOS steps (plan 0017). `ensure` is
306
+ // create-if-absent (idempotent on replay); `release` is best-effort + idempotent.
307
+ const createWorktreeFn = this.dbos.registerStep('PipelineService.worktreeCreate', this.worktreeService.ensure);
308
+ const releaseWorktreeFn = this.dbos.registerStep('PipelineService.worktreeRelease', this.worktreeService.release);
293
309
  // Build the awaitHuman factory — DBOS-free, depends on injected service verbs.
294
310
  const awaitHuman = makeAwaitHuman({
295
311
  pushInbox: (item, id) => this.inboxService.pushInbox(item, { id }),
@@ -302,6 +318,7 @@ let PipelineService = class PipelineService {
302
318
  const dataDrivenDeps = {
303
319
  appendEvent: stepDeps.appendEvent,
304
320
  appendRunOutput: this.runService.appendRunOutput.bind(this.runService),
321
+ setProgress: (_runId, cursor) => this.dbos.setEvent(RUN_PROGRESS_EVENT_KEY, cursor),
305
322
  awaitHuman,
306
323
  completeRun: (runId, completeOpts) => this.runService.completeRun(runId, completeOpts),
307
324
  failRun: (runId, reason) => this.runService.failRun(runId, reason),
@@ -309,7 +326,15 @@ let PipelineService = class PipelineService {
309
326
  loadRunTaskContext: this.runService.loadRunTaskContext.bind(this.runService),
310
327
  integrateFn,
311
328
  runStub: this.integratorService.runStub,
329
+ confirmMergeFn,
330
+ runConfirmStub: this.integratorService.runConfirmStub,
331
+ pollPrFn,
332
+ runPollStub: this.integratorService.runPollStub,
333
+ respondThreadsFn,
334
+ runRespondStub: this.integratorService.runRespondStub,
312
335
  preflightFn,
336
+ createWorktreeFn,
337
+ releaseWorktreeFn,
313
338
  };
314
339
  this.dataDrivenTaskFn = this.dbos.registerWorkflow('PipelineService.dataDrivenTask', makeDataDrivenTask(this.runStepFn, dataDrivenDeps));
315
340
  // Register the WorkflowQueue (idempotent — Map-guarded in DbosService).
@@ -329,12 +354,19 @@ let PipelineService = class PipelineService {
329
354
  };
330
355
  PipelineService = __decorate([
331
356
  Injectable(),
332
- __param(5, Inject(RUN_AGENT)),
357
+ __param(0, Inject(DbosService)),
358
+ __param(1, Inject(RolesService)),
359
+ __param(2, Inject(RunService)),
360
+ __param(3, Inject(InboxService)),
361
+ __param(4, Inject(IntegratorService)),
362
+ __param(5, Inject(WorktreeService)),
363
+ __param(6, Inject(RUN_AGENT)),
333
364
  __metadata("design:paramtypes", [DbosService,
334
365
  RolesService,
335
366
  RunService,
336
367
  InboxService,
337
- IntegratorService, Function])
368
+ IntegratorService,
369
+ WorktreeService, Function])
338
370
  ], PipelineService);
339
371
  export { PipelineService };
340
- //# sourceMappingURL=develop-task.workflow.js.map
372
+ //# sourceMappingURL=pipeline.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.service.js","sourceRoot":"","sources":["../../src/pipeline/pipeline.service.ts"],"names":[],"mappings":"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"}