@bastani/atomic 0.9.16-alpha.2 → 0.9.16-alpha.4

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 (648) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/builtin/intercom/broker/spawn.ts +22 -2
  3. package/dist/builtin/intercom/index.bundle.mjs +61756 -0
  4. package/dist/builtin/intercom/package.json +3 -3
  5. package/dist/builtin/mcp/index.bundle.mjs +64963 -0
  6. package/dist/builtin/mcp/package.json +2 -2
  7. package/dist/builtin/subagents/package.json +2 -2
  8. package/dist/builtin/subagents/src/extension/index.bundle.mjs +85733 -0
  9. package/dist/builtin/web-access/index.bundle.mjs +67475 -0
  10. package/dist/builtin/web-access/package.json +2 -2
  11. package/dist/builtin/workflows/package.json +3 -3
  12. package/dist/builtin/workflows/src/extension/index.bundle.mjs +76480 -96363
  13. package/dist/builtin/workflows/src/index.bundle.mjs +73306 -0
  14. package/dist/config-package-identity.d.ts +22 -0
  15. package/dist/config-package-identity.d.ts.map +1 -0
  16. package/dist/config-package-identity.js +73 -0
  17. package/dist/config-package-identity.js.map +1 -0
  18. package/dist/config.d.ts.map +1 -1
  19. package/dist/config.js +5 -10
  20. package/dist/config.js.map +1 -1
  21. package/dist/core/builtin-install-layout.d.ts +22 -0
  22. package/dist/core/builtin-install-layout.d.ts.map +1 -0
  23. package/dist/core/builtin-install-layout.js +23 -0
  24. package/dist/core/builtin-install-layout.js.map +1 -0
  25. package/dist/core/builtin-packages.d.ts.map +1 -1
  26. package/dist/core/builtin-packages.js +8 -32
  27. package/dist/core/builtin-packages.js.map +1 -1
  28. package/npm-shrinkwrap.json +32 -32
  29. package/package.json +3 -3
  30. package/dist/builtin/intercom/closed-workflow-stage-message.ts +0 -66
  31. package/dist/builtin/intercom/config.ts +0 -121
  32. package/dist/builtin/intercom/contact-supervisor-tool.ts +0 -328
  33. package/dist/builtin/intercom/foreground-detach-handoff.ts +0 -164
  34. package/dist/builtin/intercom/group.ts +0 -85
  35. package/dist/builtin/intercom/inbound-idle-queue.ts +0 -82
  36. package/dist/builtin/intercom/inbound-message-admission.ts +0 -79
  37. package/dist/builtin/intercom/incoming-message-delivery.ts +0 -49
  38. package/dist/builtin/intercom/index-heavy.ts +0 -539
  39. package/dist/builtin/intercom/index.ts +0 -503
  40. package/dist/builtin/intercom/intercom-test-seams.ts +0 -6
  41. package/dist/builtin/intercom/intercom-tool.ts +0 -602
  42. package/dist/builtin/intercom/intercom-utils.ts +0 -427
  43. package/dist/builtin/intercom/late-stage-message-router.ts +0 -148
  44. package/dist/builtin/intercom/lazy-heavy-proxy.ts +0 -108
  45. package/dist/builtin/intercom/lazy-subagent-ack.ts +0 -25
  46. package/dist/builtin/intercom/lazy-tool-execution.ts +0 -39
  47. package/dist/builtin/intercom/lifecycle-lease.ts +0 -51
  48. package/dist/builtin/intercom/lifecycle.ts +0 -144
  49. package/dist/builtin/intercom/overlay.ts +0 -96
  50. package/dist/builtin/intercom/parent-ask-handoff.ts +0 -72
  51. package/dist/builtin/intercom/reconnect-backoff.ts +0 -6
  52. package/dist/builtin/intercom/reply-routing.ts +0 -17
  53. package/dist/builtin/intercom/reply-tracker.ts +0 -110
  54. package/dist/builtin/intercom/reply-waiter.ts +0 -115
  55. package/dist/builtin/intercom/result-renderers.ts +0 -77
  56. package/dist/builtin/intercom/runtime-group.ts +0 -13
  57. package/dist/builtin/intercom/session-target.ts +0 -54
  58. package/dist/builtin/intercom/source-ownership.ts +0 -31
  59. package/dist/builtin/intercom/stable-delivery-retry.ts +0 -32
  60. package/dist/builtin/intercom/subagent-relay.ts +0 -290
  61. package/dist/builtin/intercom/supervisor-authorization-registry.ts +0 -22
  62. package/dist/builtin/intercom/terminal-ordering-barrier.ts +0 -247
  63. package/dist/builtin/intercom/types.ts +0 -66
  64. package/dist/builtin/intercom/ui/compose.ts +0 -159
  65. package/dist/builtin/intercom/ui/inline-message.ts +0 -78
  66. package/dist/builtin/intercom/ui/session-list.ts +0 -195
  67. package/dist/builtin/intercom/workflow-reply-tracker.ts +0 -19
  68. package/dist/builtin/intercom/workflow-stage-admission.ts +0 -43
  69. package/dist/builtin/intercom/workflow-stage-delivery-failure.ts +0 -77
  70. package/dist/builtin/mcp/agent-dir.ts +0 -30
  71. package/dist/builtin/mcp/apps-cancellation.ts +0 -32
  72. package/dist/builtin/mcp/call-tool-result.ts +0 -9
  73. package/dist/builtin/mcp/caller-wait.ts +0 -50
  74. package/dist/builtin/mcp/cli.js +0 -191
  75. package/dist/builtin/mcp/command-registration.ts +0 -82
  76. package/dist/builtin/mcp/commands.ts +0 -424
  77. package/dist/builtin/mcp/config-write-utils.ts +0 -104
  78. package/dist/builtin/mcp/config.ts +0 -498
  79. package/dist/builtin/mcp/consent-manager.ts +0 -64
  80. package/dist/builtin/mcp/direct-tool-executor.ts +0 -280
  81. package/dist/builtin/mcp/direct-tools.ts +0 -216
  82. package/dist/builtin/mcp/errors.ts +0 -219
  83. package/dist/builtin/mcp/glimpse-ui.ts +0 -81
  84. package/dist/builtin/mcp/host-html-template.ts +0 -426
  85. package/dist/builtin/mcp/index.ts +0 -443
  86. package/dist/builtin/mcp/init.ts +0 -319
  87. package/dist/builtin/mcp/lifecycle.ts +0 -93
  88. package/dist/builtin/mcp/logger.ts +0 -169
  89. package/dist/builtin/mcp/mcp-auth-flow.ts +0 -372
  90. package/dist/builtin/mcp/mcp-auth.ts +0 -297
  91. package/dist/builtin/mcp/mcp-callback-server.ts +0 -306
  92. package/dist/builtin/mcp/mcp-oauth-provider.ts +0 -324
  93. package/dist/builtin/mcp/mcp-panel-renderer.ts +0 -243
  94. package/dist/builtin/mcp/mcp-panel-state.ts +0 -227
  95. package/dist/builtin/mcp/mcp-panel-types.ts +0 -86
  96. package/dist/builtin/mcp/mcp-panel.ts +0 -393
  97. package/dist/builtin/mcp/mcp-setup-panel.ts +0 -502
  98. package/dist/builtin/mcp/metadata-cache.ts +0 -201
  99. package/dist/builtin/mcp/metadata-hydration.ts +0 -52
  100. package/dist/builtin/mcp/npx-resolver.ts +0 -425
  101. package/dist/builtin/mcp/oauth-handler.ts +0 -60
  102. package/dist/builtin/mcp/onboarding-state.ts +0 -68
  103. package/dist/builtin/mcp/proxy-auth.ts +0 -61
  104. package/dist/builtin/mcp/proxy-call.ts +0 -447
  105. package/dist/builtin/mcp/proxy-connect.ts +0 -78
  106. package/dist/builtin/mcp/proxy-info-modes.ts +0 -409
  107. package/dist/builtin/mcp/proxy-modes.ts +0 -3
  108. package/dist/builtin/mcp/proxy-types.ts +0 -3
  109. package/dist/builtin/mcp/resource-tools.ts +0 -17
  110. package/dist/builtin/mcp/sampling-handler.ts +0 -273
  111. package/dist/builtin/mcp/server-manager.ts +0 -372
  112. package/dist/builtin/mcp/session-cleanup-barrier.ts +0 -43
  113. package/dist/builtin/mcp/startup-warmup.ts +0 -110
  114. package/dist/builtin/mcp/state-lease.ts +0 -12
  115. package/dist/builtin/mcp/state.ts +0 -41
  116. package/dist/builtin/mcp/tool-call-timeout.ts +0 -101
  117. package/dist/builtin/mcp/tool-metadata.ts +0 -152
  118. package/dist/builtin/mcp/tool-registrar.ts +0 -46
  119. package/dist/builtin/mcp/tool-result-renderer.ts +0 -66
  120. package/dist/builtin/mcp/types.ts +0 -445
  121. package/dist/builtin/mcp/ui-resource-handler.ts +0 -145
  122. package/dist/builtin/mcp/ui-server-http.ts +0 -81
  123. package/dist/builtin/mcp/ui-server.ts +0 -499
  124. package/dist/builtin/mcp/ui-session.ts +0 -378
  125. package/dist/builtin/mcp/ui-stream-types.ts +0 -89
  126. package/dist/builtin/mcp/utils.ts +0 -165
  127. package/dist/builtin/subagents/src/agents/agent-discovery.ts +0 -116
  128. package/dist/builtin/subagents/src/agents/agent-loaders.ts +0 -216
  129. package/dist/builtin/subagents/src/agents/agent-management-helpers.ts +0 -221
  130. package/dist/builtin/subagents/src/agents/agent-management.ts +0 -315
  131. package/dist/builtin/subagents/src/agents/agent-overrides.ts +0 -450
  132. package/dist/builtin/subagents/src/agents/agent-paths.ts +0 -69
  133. package/dist/builtin/subagents/src/agents/agent-scope.ts +0 -6
  134. package/dist/builtin/subagents/src/agents/agent-selection.ts +0 -23
  135. package/dist/builtin/subagents/src/agents/agent-serializer.ts +0 -113
  136. package/dist/builtin/subagents/src/agents/agent-types.ts +0 -97
  137. package/dist/builtin/subagents/src/agents/agents.ts +0 -25
  138. package/dist/builtin/subagents/src/agents/frontmatter.ts +0 -74
  139. package/dist/builtin/subagents/src/agents/identity.ts +0 -37
  140. package/dist/builtin/subagents/src/agents/skills-paths.ts +0 -380
  141. package/dist/builtin/subagents/src/agents/skills.ts +0 -398
  142. package/dist/builtin/subagents/src/extension/api-lifecycle.ts +0 -64
  143. package/dist/builtin/subagents/src/extension/config.ts +0 -16
  144. package/dist/builtin/subagents/src/extension/control-notices.ts +0 -91
  145. package/dist/builtin/subagents/src/extension/index.ts +0 -420
  146. package/dist/builtin/subagents/src/extension/notification-content.ts +0 -85
  147. package/dist/builtin/subagents/src/extension/prompt-guidance.ts +0 -11
  148. package/dist/builtin/subagents/src/extension/schemas.ts +0 -208
  149. package/dist/builtin/subagents/src/extension/startup-maintenance.ts +0 -133
  150. package/dist/builtin/subagents/src/extension/tool-description.ts +0 -17
  151. package/dist/builtin/subagents/src/extension/tool-rendering.ts +0 -53
  152. package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +0 -376
  153. package/dist/builtin/subagents/src/intercom/result-intercom.ts +0 -246
  154. package/dist/builtin/subagents/src/intercom/supervisor-authorization.ts +0 -30
  155. package/dist/builtin/subagents/src/runs/foreground/completion-notification.ts +0 -42
  156. package/dist/builtin/subagents/src/runs/foreground/detached-cleanup-barrier.ts +0 -26
  157. package/dist/builtin/subagents/src/runs/foreground/execution-detach-reservations.ts +0 -58
  158. package/dist/builtin/subagents/src/runs/foreground/execution-detach-route.ts +0 -19
  159. package/dist/builtin/subagents/src/runs/foreground/execution-intercom-detach.ts +0 -51
  160. package/dist/builtin/subagents/src/runs/foreground/execution-parent-ask-handoff.ts +0 -78
  161. package/dist/builtin/subagents/src/runs/foreground/execution-run-sync.ts +0 -1
  162. package/dist/builtin/subagents/src/runs/foreground/execution-updates.ts +0 -26
  163. package/dist/builtin/subagents/src/runs/foreground/execution-utils.ts +0 -61
  164. package/dist/builtin/subagents/src/runs/foreground/execution.ts +0 -6
  165. package/dist/builtin/subagents/src/runs/foreground/inprocess-run-sync.ts +0 -512
  166. package/dist/builtin/subagents/src/runs/foreground/notify.ts +0 -355
  167. package/dist/builtin/subagents/src/runs/foreground/parent-ask-output.ts +0 -48
  168. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-burst-display.ts +0 -46
  169. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-burst.ts +0 -403
  170. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +0 -223
  171. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-cwd.ts +0 -6
  172. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +0 -139
  173. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-live-update.ts +0 -11
  174. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +0 -268
  175. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +0 -327
  176. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parent-ask-projection.ts +0 -11
  177. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-runtime.ts +0 -12
  178. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +0 -350
  179. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +0 -246
  180. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +0 -131
  181. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-worktree.ts +0 -102
  182. package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +0 -217
  183. package/dist/builtin/subagents/src/runs/inprocess/child-policy.ts +0 -27
  184. package/dist/builtin/subagents/src/runs/inprocess/control-registry.ts +0 -55
  185. package/dist/builtin/subagents/src/runs/inprocess/control-status.ts +0 -72
  186. package/dist/builtin/subagents/src/runs/inprocess/index.ts +0 -27
  187. package/dist/builtin/subagents/src/runs/inprocess/prompt-behavior.ts +0 -168
  188. package/dist/builtin/subagents/src/runs/inprocess/runner.ts +0 -1280
  189. package/dist/builtin/subagents/src/runs/inprocess/runtime-support/temp-cleanup.ts +0 -69
  190. package/dist/builtin/subagents/src/runs/inprocess.ts +0 -1
  191. package/dist/builtin/subagents/src/runs/shared/intercom-group.ts +0 -67
  192. package/dist/builtin/subagents/src/runs/shared/long-running-guard.ts +0 -182
  193. package/dist/builtin/subagents/src/runs/shared/mcp-direct-tool-allowlist.ts +0 -391
  194. package/dist/builtin/subagents/src/runs/shared/model-candidate-filter.ts +0 -56
  195. package/dist/builtin/subagents/src/runs/shared/model-fallback.ts +0 -88
  196. package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +0 -70
  197. package/dist/builtin/subagents/src/runs/shared/progress-trend.ts +0 -69
  198. package/dist/builtin/subagents/src/runs/shared/run-history.ts +0 -64
  199. package/dist/builtin/subagents/src/runs/shared/single-output.ts +0 -169
  200. package/dist/builtin/subagents/src/runs/shared/subagent-control.ts +0 -234
  201. package/dist/builtin/subagents/src/runs/shared/worktree-post-create.ts +0 -111
  202. package/dist/builtin/subagents/src/runs/shared/worktree-root.ts +0 -67
  203. package/dist/builtin/subagents/src/runs/shared/worktree.ts +0 -552
  204. package/dist/builtin/subagents/src/shared/artifacts.ts +0 -240
  205. package/dist/builtin/subagents/src/shared/atomic-json.ts +0 -16
  206. package/dist/builtin/subagents/src/shared/event-jsonl-writer.ts +0 -330
  207. package/dist/builtin/subagents/src/shared/exclusive-file-publication.ts +0 -44
  208. package/dist/builtin/subagents/src/shared/fast-mode.ts +0 -87
  209. package/dist/builtin/subagents/src/shared/file-coalescer.ts +0 -40
  210. package/dist/builtin/subagents/src/shared/fork-context.ts +0 -79
  211. package/dist/builtin/subagents/src/shared/formatters.ts +0 -89
  212. package/dist/builtin/subagents/src/shared/jsonl-writer.ts +0 -83
  213. package/dist/builtin/subagents/src/shared/model-info.ts +0 -101
  214. package/dist/builtin/subagents/src/shared/model-resolution.ts +0 -78
  215. package/dist/builtin/subagents/src/shared/session-identity.ts +0 -10
  216. package/dist/builtin/subagents/src/shared/session-tokens.ts +0 -45
  217. package/dist/builtin/subagents/src/shared/settings.ts +0 -118
  218. package/dist/builtin/subagents/src/shared/status-format.ts +0 -50
  219. package/dist/builtin/subagents/src/shared/types-config.ts +0 -206
  220. package/dist/builtin/subagents/src/shared/types-depth.ts +0 -46
  221. package/dist/builtin/subagents/src/shared/types-foreground-state.ts +0 -48
  222. package/dist/builtin/subagents/src/shared/types-output.ts +0 -63
  223. package/dist/builtin/subagents/src/shared/types-results.ts +0 -259
  224. package/dist/builtin/subagents/src/shared/types-runtime.ts +0 -115
  225. package/dist/builtin/subagents/src/shared/types.ts +0 -13
  226. package/dist/builtin/subagents/src/shared/utils.ts +0 -342
  227. package/dist/builtin/subagents/src/slash/bridge-settlement.ts +0 -87
  228. package/dist/builtin/subagents/src/slash/prompt-template-bridge.ts +0 -455
  229. package/dist/builtin/subagents/src/slash/slash-bridge.ts +0 -194
  230. package/dist/builtin/subagents/src/slash/slash-commands.ts +0 -5
  231. package/dist/builtin/subagents/src/slash/slash-live-state.ts +0 -259
  232. package/dist/builtin/subagents/src/tui/render-event-formatting.ts +0 -7
  233. package/dist/builtin/subagents/src/tui/render-helpers.ts +0 -90
  234. package/dist/builtin/subagents/src/tui/render-layout.ts +0 -157
  235. package/dist/builtin/subagents/src/tui/render-progress.ts +0 -89
  236. package/dist/builtin/subagents/src/tui/render-result-animation.ts +0 -47
  237. package/dist/builtin/subagents/src/tui/render-result-compact.ts +0 -248
  238. package/dist/builtin/subagents/src/tui/render-result.ts +0 -438
  239. package/dist/builtin/subagents/src/tui/render-stable-output.ts +0 -50
  240. package/dist/builtin/subagents/src/tui/render-status-progress.ts +0 -168
  241. package/dist/builtin/subagents/src/tui/render.ts +0 -23
  242. package/dist/builtin/web-access/activity.ts +0 -101
  243. package/dist/builtin/web-access/chrome-cookies.ts +0 -323
  244. package/dist/builtin/web-access/code-search.ts +0 -107
  245. package/dist/builtin/web-access/config-paths.ts +0 -11
  246. package/dist/builtin/web-access/content-tools.ts +0 -354
  247. package/dist/builtin/web-access/curator-page-assets/script-1.ts +0 -400
  248. package/dist/builtin/web-access/curator-page-assets/script-2.ts +0 -400
  249. package/dist/builtin/web-access/curator-page-assets/script-3.ts +0 -400
  250. package/dist/builtin/web-access/curator-page-assets/script-4.ts +0 -400
  251. package/dist/builtin/web-access/curator-page-assets/script-5.ts +0 -398
  252. package/dist/builtin/web-access/curator-page-assets/styles-1.ts +0 -394
  253. package/dist/builtin/web-access/curator-page-assets/styles-2.ts +0 -394
  254. package/dist/builtin/web-access/curator-page-assets/styles-3.ts +0 -393
  255. package/dist/builtin/web-access/curator-page.ts +0 -196
  256. package/dist/builtin/web-access/curator-server-helpers.ts +0 -115
  257. package/dist/builtin/web-access/curator-server.ts +0 -494
  258. package/dist/builtin/web-access/exa-mcp.ts +0 -218
  259. package/dist/builtin/web-access/exa.ts +0 -317
  260. package/dist/builtin/web-access/extract-frames.ts +0 -229
  261. package/dist/builtin/web-access/extract.ts +0 -500
  262. package/dist/builtin/web-access/flat-string.ts +0 -37
  263. package/dist/builtin/web-access/gemini-api.ts +0 -111
  264. package/dist/builtin/web-access/gemini-search.ts +0 -363
  265. package/dist/builtin/web-access/gemini-url-context.ts +0 -126
  266. package/dist/builtin/web-access/gemini-web-config.ts +0 -53
  267. package/dist/builtin/web-access/gemini-web.ts +0 -397
  268. package/dist/builtin/web-access/github-api.ts +0 -198
  269. package/dist/builtin/web-access/github-config.ts +0 -156
  270. package/dist/builtin/web-access/github-extract.ts +0 -487
  271. package/dist/builtin/web-access/index-heavy.ts +0 -164
  272. package/dist/builtin/web-access/index.ts +0 -401
  273. package/dist/builtin/web-access/lifecycle-lease.ts +0 -38
  274. package/dist/builtin/web-access/pdf-extract.ts +0 -192
  275. package/dist/builtin/web-access/perplexity.ts +0 -194
  276. package/dist/builtin/web-access/result-renderers.ts +0 -366
  277. package/dist/builtin/web-access/rsc-extract.ts +0 -338
  278. package/dist/builtin/web-access/storage.ts +0 -72
  279. package/dist/builtin/web-access/subprocess.ts +0 -102
  280. package/dist/builtin/web-access/summary-review.ts +0 -287
  281. package/dist/builtin/web-access/utils.ts +0 -44
  282. package/dist/builtin/web-access/video-extract.ts +0 -375
  283. package/dist/builtin/web-access/web-search-activity.ts +0 -102
  284. package/dist/builtin/web-access/web-search-browser.ts +0 -124
  285. package/dist/builtin/web-access/web-search-command.ts +0 -242
  286. package/dist/builtin/web-access/web-search-config.ts +0 -157
  287. package/dist/builtin/web-access/web-search-curator.ts +0 -214
  288. package/dist/builtin/web-access/web-search-features.ts +0 -181
  289. package/dist/builtin/web-access/web-search-formatting.ts +0 -117
  290. package/dist/builtin/web-access/web-search-return.ts +0 -143
  291. package/dist/builtin/web-access/web-search-summary.ts +0 -177
  292. package/dist/builtin/web-access/web-search-tool.ts +0 -286
  293. package/dist/builtin/web-access/web-search-types.ts +0 -50
  294. package/dist/builtin/web-access/web-search-workflow.ts +0 -10
  295. package/dist/builtin/web-access/youtube-extract.ts +0 -309
  296. package/dist/builtin/workflows/src/authoring/keep-context.ts +0 -46
  297. package/dist/builtin/workflows/src/authoring/typebox-defaults.d.ts +0 -41
  298. package/dist/builtin/workflows/src/authoring/typebox-defaults.ts +0 -180
  299. package/dist/builtin/workflows/src/authoring/workflow.ts +0 -206
  300. package/dist/builtin/workflows/src/durable/backend.ts +0 -598
  301. package/dist/builtin/workflows/src/durable/boundary-lifecycle.ts +0 -172
  302. package/dist/builtin/workflows/src/durable/boundary-topology.ts +0 -475
  303. package/dist/builtin/workflows/src/durable/child-invocation.ts +0 -14
  304. package/dist/builtin/workflows/src/durable/child-primitive.ts +0 -124
  305. package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +0 -385
  306. package/dist/builtin/workflows/src/durable/completed-catalog.ts +0 -685
  307. package/dist/builtin/workflows/src/durable/completed-inspection.ts +0 -157
  308. package/dist/builtin/workflows/src/durable/completed-subtree.ts +0 -50
  309. package/dist/builtin/workflows/src/durable/dbos-backend.ts +0 -580
  310. package/dist/builtin/workflows/src/durable/dbos-embedded-postgres-root.ts +0 -681
  311. package/dist/builtin/workflows/src/durable/dbos-embedded-postgres.ts +0 -717
  312. package/dist/builtin/workflows/src/durable/dbos-envelope.ts +0 -516
  313. package/dist/builtin/workflows/src/durable/dbos-lifecycle.ts +0 -208
  314. package/dist/builtin/workflows/src/durable/dbos-local-postgres.ts +0 -166
  315. package/dist/builtin/workflows/src/durable/dbos-metadata.ts +0 -196
  316. package/dist/builtin/workflows/src/durable/dbos-process-owner.ts +0 -87
  317. package/dist/builtin/workflows/src/durable/dbos-prompt-reservations.ts +0 -377
  318. package/dist/builtin/workflows/src/durable/dbos-registration-diagnostics.ts +0 -113
  319. package/dist/builtin/workflows/src/durable/dbos-sdk-handle.ts +0 -182
  320. package/dist/builtin/workflows/src/durable/dbos-status-transition.ts +0 -67
  321. package/dist/builtin/workflows/src/durable/dbos-tombstone.ts +0 -27
  322. package/dist/builtin/workflows/src/durable/durable-hash.ts +0 -18
  323. package/dist/builtin/workflows/src/durable/factory.ts +0 -93
  324. package/dist/builtin/workflows/src/durable/format-version.ts +0 -6
  325. package/dist/builtin/workflows/src/durable/index.ts +0 -82
  326. package/dist/builtin/workflows/src/durable/local-command.ts +0 -135
  327. package/dist/builtin/workflows/src/durable/prompt-reservation-state.ts +0 -184
  328. package/dist/builtin/workflows/src/durable/prompt-reservations.ts +0 -36
  329. package/dist/builtin/workflows/src/durable/resume-catalog.ts +0 -20
  330. package/dist/builtin/workflows/src/durable/resume-eligibility.ts +0 -106
  331. package/dist/builtin/workflows/src/durable/resume-runtime.ts +0 -344
  332. package/dist/builtin/workflows/src/durable/retention-policy.ts +0 -43
  333. package/dist/builtin/workflows/src/durable/run-timing.ts +0 -151
  334. package/dist/builtin/workflows/src/durable/scoped-backend.ts +0 -308
  335. package/dist/builtin/workflows/src/durable/stage-primitive.ts +0 -553
  336. package/dist/builtin/workflows/src/durable/stage-topology-validation.ts +0 -247
  337. package/dist/builtin/workflows/src/durable/stage-topology.ts +0 -53
  338. package/dist/builtin/workflows/src/durable/targeted-inspection.ts +0 -110
  339. package/dist/builtin/workflows/src/durable/tool-failure-checkpoint.ts +0 -54
  340. package/dist/builtin/workflows/src/durable/tool-outcome.ts +0 -130
  341. package/dist/builtin/workflows/src/durable/tool-primitive.ts +0 -861
  342. package/dist/builtin/workflows/src/durable/types.ts +0 -343
  343. package/dist/builtin/workflows/src/durable/ui-primitive.ts +0 -263
  344. package/dist/builtin/workflows/src/durable/workflow-child-result.ts +0 -63
  345. package/dist/builtin/workflows/src/durable/workflow-heartbeat-anchor.ts +0 -153
  346. package/dist/builtin/workflows/src/durable/workflow-status-transition.ts +0 -31
  347. package/dist/builtin/workflows/src/engine/graph-inference.ts +0 -100
  348. package/dist/builtin/workflows/src/engine/options.ts +0 -44
  349. package/dist/builtin/workflows/src/engine/primitives/chain.ts +0 -34
  350. package/dist/builtin/workflows/src/engine/primitives/exit.ts +0 -2
  351. package/dist/builtin/workflows/src/engine/primitives/parallel.ts +0 -74
  352. package/dist/builtin/workflows/src/engine/primitives/task.ts +0 -127
  353. package/dist/builtin/workflows/src/engine/primitives/ui.ts +0 -54
  354. package/dist/builtin/workflows/src/engine/primitives/workflow.ts +0 -219
  355. package/dist/builtin/workflows/src/engine/replay.ts +0 -8
  356. package/dist/builtin/workflows/src/engine/run-budget.ts +0 -308
  357. package/dist/builtin/workflows/src/engine/run-durable-admission.ts +0 -50
  358. package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +0 -97
  359. package/dist/builtin/workflows/src/engine/run-durable-stage-session.ts +0 -65
  360. package/dist/builtin/workflows/src/engine/run-durable-topology.ts +0 -295
  361. package/dist/builtin/workflows/src/engine/run-returned-status.ts +0 -86
  362. package/dist/builtin/workflows/src/engine/run-terminal-event.ts +0 -39
  363. package/dist/builtin/workflows/src/engine/run-terminal-failure.ts +0 -53
  364. package/dist/builtin/workflows/src/engine/run-tool-admission-boundary.ts +0 -99
  365. package/dist/builtin/workflows/src/engine/run-tool-control-registry.ts +0 -187
  366. package/dist/builtin/workflows/src/engine/run-tool-execution-tracker.ts +0 -164
  367. package/dist/builtin/workflows/src/engine/run-tool-node-lifecycle.ts +0 -158
  368. package/dist/builtin/workflows/src/engine/run.ts +0 -841
  369. package/dist/builtin/workflows/src/engine/runtime.ts +0 -220
  370. package/dist/builtin/workflows/src/engine/workflow-activity.ts +0 -13
  371. package/dist/builtin/workflows/src/engine/workflow-tool-abort.ts +0 -92
  372. package/dist/builtin/workflows/src/extension/adopt-session-run-state.ts +0 -20
  373. package/dist/builtin/workflows/src/extension/atomic-stage-session.ts +0 -168
  374. package/dist/builtin/workflows/src/extension/background-ui-adapter.ts +0 -154
  375. package/dist/builtin/workflows/src/extension/companions.ts +0 -210
  376. package/dist/builtin/workflows/src/extension/completed-stage-intercom-ask.ts +0 -167
  377. package/dist/builtin/workflows/src/extension/config-file-loader.ts +0 -185
  378. package/dist/builtin/workflows/src/extension/config-loader.ts +0 -439
  379. package/dist/builtin/workflows/src/extension/discovery-loaders.ts +0 -112
  380. package/dist/builtin/workflows/src/extension/discovery.ts +0 -424
  381. package/dist/builtin/workflows/src/extension/dispatcher.ts +0 -273
  382. package/dist/builtin/workflows/src/extension/extension-factory.ts +0 -133
  383. package/dist/builtin/workflows/src/extension/extension-lifecycle.ts +0 -174
  384. package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +0 -596
  385. package/dist/builtin/workflows/src/extension/hil-answer-notifications.ts +0 -367
  386. package/dist/builtin/workflows/src/extension/index.ts +0 -42
  387. package/dist/builtin/workflows/src/extension/lifecycle-notification-delivery.ts +0 -83
  388. package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +0 -849
  389. package/dist/builtin/workflows/src/extension/mcp.ts +0 -121
  390. package/dist/builtin/workflows/src/extension/postmortem-deps.ts +0 -70
  391. package/dist/builtin/workflows/src/extension/public-types.ts +0 -234
  392. package/dist/builtin/workflows/src/extension/render-call.ts +0 -115
  393. package/dist/builtin/workflows/src/extension/render-component.ts +0 -12
  394. package/dist/builtin/workflows/src/extension/render-result.ts +0 -558
  395. package/dist/builtin/workflows/src/extension/renderers.ts +0 -89
  396. package/dist/builtin/workflows/src/extension/runtime-active-block-claim.ts +0 -78
  397. package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +0 -174
  398. package/dist/builtin/workflows/src/extension/runtime.ts +0 -439
  399. package/dist/builtin/workflows/src/extension/status-writer.ts +0 -182
  400. package/dist/builtin/workflows/src/extension/ui-surface.ts +0 -387
  401. package/dist/builtin/workflows/src/extension/wiring.ts +0 -490
  402. package/dist/builtin/workflows/src/extension/workflow-command-completions.ts +0 -129
  403. package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +0 -296
  404. package/dist/builtin/workflows/src/extension/workflow-command-surfaces.ts +0 -114
  405. package/dist/builtin/workflows/src/extension/workflow-command-utils.ts +0 -175
  406. package/dist/builtin/workflows/src/extension/workflow-durable-resume-command.ts +0 -270
  407. package/dist/builtin/workflows/src/extension/workflow-heartbeat-delivery.ts +0 -241
  408. package/dist/builtin/workflows/src/extension/workflow-heartbeat-notice.ts +0 -115
  409. package/dist/builtin/workflows/src/extension/workflow-heartbeat-scheduler.ts +0 -962
  410. package/dist/builtin/workflows/src/extension/workflow-model-catalog.ts +0 -24
  411. package/dist/builtin/workflows/src/extension/workflow-module-loader.ts +0 -162
  412. package/dist/builtin/workflows/src/extension/workflow-policy.ts +0 -13
  413. package/dist/builtin/workflows/src/extension/workflow-ports.ts +0 -45
  414. package/dist/builtin/workflows/src/extension/workflow-prompts.ts +0 -73
  415. package/dist/builtin/workflows/src/extension/workflow-reload-coordinator.ts +0 -66
  416. package/dist/builtin/workflows/src/extension/workflow-reload-report.ts +0 -42
  417. package/dist/builtin/workflows/src/extension/workflow-request-abort.ts +0 -15
  418. package/dist/builtin/workflows/src/extension/workflow-resume-picker-rows.ts +0 -96
  419. package/dist/builtin/workflows/src/extension/workflow-resume-shadow.ts +0 -53
  420. package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +0 -562
  421. package/dist/builtin/workflows/src/extension/workflow-schema.ts +0 -192
  422. package/dist/builtin/workflows/src/extension/workflow-stage-results.ts +0 -252
  423. package/dist/builtin/workflows/src/extension/workflow-status-summary.ts +0 -276
  424. package/dist/builtin/workflows/src/extension/workflow-targets.ts +0 -210
  425. package/dist/builtin/workflows/src/extension/workflow-tool-content.ts +0 -265
  426. package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +0 -547
  427. package/dist/builtin/workflows/src/extension/workflow-tool-inspection.ts +0 -153
  428. package/dist/builtin/workflows/src/extension/workflow-tool-registration.ts +0 -145
  429. package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +0 -488
  430. package/dist/builtin/workflows/src/extension/workflow-tool.ts +0 -188
  431. package/dist/builtin/workflows/src/index.ts +0 -8
  432. package/dist/builtin/workflows/src/intercom/intercom-bridge.ts +0 -90
  433. package/dist/builtin/workflows/src/intercom/intercom-routing.ts +0 -131
  434. package/dist/builtin/workflows/src/intercom/result-intercom.ts +0 -271
  435. package/dist/builtin/workflows/src/runs/background/cancellation-registry.ts +0 -135
  436. package/dist/builtin/workflows/src/runs/background/durable-resume-transition.ts +0 -63
  437. package/dist/builtin/workflows/src/runs/background/job-tracker.ts +0 -125
  438. package/dist/builtin/workflows/src/runs/background/quit-tool-node.ts +0 -71
  439. package/dist/builtin/workflows/src/runs/background/quit.ts +0 -417
  440. package/dist/builtin/workflows/src/runs/background/resume-acknowledgements.ts +0 -99
  441. package/dist/builtin/workflows/src/runs/background/run-inspect.ts +0 -126
  442. package/dist/builtin/workflows/src/runs/background/runner.ts +0 -185
  443. package/dist/builtin/workflows/src/runs/background/startup-admission.ts +0 -73
  444. package/dist/builtin/workflows/src/runs/background/status.ts +0 -511
  445. package/dist/builtin/workflows/src/runs/background/workflow-lifecycle-aggregate.ts +0 -43
  446. package/dist/builtin/workflows/src/runs/foreground/executor-abort.ts +0 -441
  447. package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +0 -263
  448. package/dist/builtin/workflows/src/runs/foreground/executor-child-helpers.ts +0 -79
  449. package/dist/builtin/workflows/src/runs/foreground/executor-child-workflow.ts +0 -1
  450. package/dist/builtin/workflows/src/runs/foreground/executor-continuation.ts +0 -207
  451. package/dist/builtin/workflows/src/runs/foreground/executor-direct-helpers.ts +0 -321
  452. package/dist/builtin/workflows/src/runs/foreground/executor-exit-manager.ts +0 -224
  453. package/dist/builtin/workflows/src/runs/foreground/executor-hil.ts +0 -403
  454. package/dist/builtin/workflows/src/runs/foreground/executor-inputs.ts +0 -86
  455. package/dist/builtin/workflows/src/runs/foreground/executor-lifecycle.ts +0 -491
  456. package/dist/builtin/workflows/src/runs/foreground/executor-outputs.ts +0 -156
  457. package/dist/builtin/workflows/src/runs/foreground/executor-prompt-nodes.ts +0 -379
  458. package/dist/builtin/workflows/src/runs/foreground/executor-queued-user-message.ts +0 -75
  459. package/dist/builtin/workflows/src/runs/foreground/executor-run-finalizers.ts +0 -144
  460. package/dist/builtin/workflows/src/runs/foreground/executor-run.ts +0 -1
  461. package/dist/builtin/workflows/src/runs/foreground/executor-scheduler.ts +0 -206
  462. package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +0 -434
  463. package/dist/builtin/workflows/src/runs/foreground/executor-stage-context.ts +0 -153
  464. package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +0 -225
  465. package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +0 -473
  466. package/dist/builtin/workflows/src/runs/foreground/executor-stage-replay.ts +0 -156
  467. package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +0 -72
  468. package/dist/builtin/workflows/src/runs/foreground/executor-task-context.ts +0 -2
  469. package/dist/builtin/workflows/src/runs/foreground/executor-task-prompts.ts +0 -226
  470. package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +0 -186
  471. package/dist/builtin/workflows/src/runs/foreground/executor.ts +0 -25
  472. package/dist/builtin/workflows/src/runs/foreground/postmortem-stage-chat.ts +0 -245
  473. package/dist/builtin/workflows/src/runs/foreground/stage-control-registry.ts +0 -466
  474. package/dist/builtin/workflows/src/runs/foreground/stage-delivery-activity.ts +0 -86
  475. package/dist/builtin/workflows/src/runs/foreground/stage-queued-user-messages.ts +0 -95
  476. package/dist/builtin/workflows/src/runs/foreground/stage-runner-candidate.ts +0 -21
  477. package/dist/builtin/workflows/src/runs/foreground/stage-runner-context.ts +0 -330
  478. package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +0 -1472
  479. package/dist/builtin/workflows/src/runs/foreground/stage-runner-message-admission.ts +0 -196
  480. package/dist/builtin/workflows/src/runs/foreground/stage-runner-messages.ts +0 -177
  481. package/dist/builtin/workflows/src/runs/foreground/stage-runner-options.ts +0 -97
  482. package/dist/builtin/workflows/src/runs/foreground/stage-runner-output.ts +0 -278
  483. package/dist/builtin/workflows/src/runs/foreground/stage-runner-pause.ts +0 -206
  484. package/dist/builtin/workflows/src/runs/foreground/stage-runner-replacement.ts +0 -41
  485. package/dist/builtin/workflows/src/runs/foreground/stage-runner-send-user-message.ts +0 -134
  486. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session-options.ts +0 -38
  487. package/dist/builtin/workflows/src/runs/foreground/stage-runner-session.ts +0 -66
  488. package/dist/builtin/workflows/src/runs/foreground/stage-runner-structured-output.ts +0 -120
  489. package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +0 -211
  490. package/dist/builtin/workflows/src/runs/foreground/stage-runner-unresolved-overflow.ts +0 -42
  491. package/dist/builtin/workflows/src/runs/foreground/stage-runner.ts +0 -22
  492. package/dist/builtin/workflows/src/runs/foreground/stage-session-heartbeat.ts +0 -88
  493. package/dist/builtin/workflows/src/runs/foreground/stage-tool-execution-buffer.ts +0 -49
  494. package/dist/builtin/workflows/src/runs/shared/concurrency.ts +0 -76
  495. package/dist/builtin/workflows/src/runs/shared/graph-inference.ts +0 -2
  496. package/dist/builtin/workflows/src/runs/shared/model-fallback-candidates.ts +0 -325
  497. package/dist/builtin/workflows/src/runs/shared/model-fallback-failures.ts +0 -19
  498. package/dist/builtin/workflows/src/runs/shared/model-fallback.ts +0 -2
  499. package/dist/builtin/workflows/src/runs/shared/prompt-callsite.ts +0 -96
  500. package/dist/builtin/workflows/src/runs/shared/retry.ts +0 -44
  501. package/dist/builtin/workflows/src/runs/shared/validate-inputs.ts +0 -111
  502. package/dist/builtin/workflows/src/runs/shared/worktree-cache-lifecycle.ts +0 -23
  503. package/dist/builtin/workflows/src/runs/shared/worktree-cwd.ts +0 -116
  504. package/dist/builtin/workflows/src/runs/shared/worktree-diff.ts +0 -172
  505. package/dist/builtin/workflows/src/runs/shared/worktree-generation.ts +0 -57
  506. package/dist/builtin/workflows/src/runs/shared/worktree-git-runner.ts +0 -107
  507. package/dist/builtin/workflows/src/runs/shared/worktree-git.ts +0 -407
  508. package/dist/builtin/workflows/src/runs/shared/worktree-post-create.ts +0 -137
  509. package/dist/builtin/workflows/src/runs/shared/worktree-root.ts +0 -84
  510. package/dist/builtin/workflows/src/runs/shared/worktree-setup.ts +0 -372
  511. package/dist/builtin/workflows/src/runs/shared/worktree-types.ts +0 -102
  512. package/dist/builtin/workflows/src/runs/shared/worktree.ts +0 -21
  513. package/dist/builtin/workflows/src/sdk-surface.ts +0 -70
  514. package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +0 -403
  515. package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +0 -489
  516. package/dist/builtin/workflows/src/shared/authoring-contract-ui.d.ts +0 -327
  517. package/dist/builtin/workflows/src/shared/authoring-contract-ui.ts +0 -437
  518. package/dist/builtin/workflows/src/shared/budget-meter.ts +0 -34
  519. package/dist/builtin/workflows/src/shared/budget.d.ts +0 -67
  520. package/dist/builtin/workflows/src/shared/budget.ts +0 -127
  521. package/dist/builtin/workflows/src/shared/expanded-workflow-graph.ts +0 -434
  522. package/dist/builtin/workflows/src/shared/flat-string.ts +0 -33
  523. package/dist/builtin/workflows/src/shared/graph-store-snapshot.ts +0 -188
  524. package/dist/builtin/workflows/src/shared/intercom-group.ts +0 -58
  525. package/dist/builtin/workflows/src/shared/persistence-compaction-policy.ts +0 -72
  526. package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +0 -613
  527. package/dist/builtin/workflows/src/shared/persistence-restore.ts +0 -306
  528. package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +0 -303
  529. package/dist/builtin/workflows/src/shared/prompt-answer.ts +0 -130
  530. package/dist/builtin/workflows/src/shared/prompt-callsite-context.ts +0 -13
  531. package/dist/builtin/workflows/src/shared/render-inputs-schema.ts +0 -161
  532. package/dist/builtin/workflows/src/shared/resume-continuation.ts +0 -2
  533. package/dist/builtin/workflows/src/shared/returned-run-status.ts +0 -164
  534. package/dist/builtin/workflows/src/shared/run-id.ts +0 -36
  535. package/dist/builtin/workflows/src/shared/run-indicator-status.ts +0 -75
  536. package/dist/builtin/workflows/src/shared/run-visibility.ts +0 -9
  537. package/dist/builtin/workflows/src/shared/schema-introspection.ts +0 -111
  538. package/dist/builtin/workflows/src/shared/serializable.ts +0 -118
  539. package/dist/builtin/workflows/src/shared/session-scoped-singleton.ts +0 -98
  540. package/dist/builtin/workflows/src/shared/session-transcript.ts +0 -79
  541. package/dist/builtin/workflows/src/shared/stage-prompt.ts +0 -338
  542. package/dist/builtin/workflows/src/shared/stage-ui-broker.ts +0 -340
  543. package/dist/builtin/workflows/src/shared/store-factory.ts +0 -26
  544. package/dist/builtin/workflows/src/shared/store-internal.ts +0 -252
  545. package/dist/builtin/workflows/src/shared/store-observation.ts +0 -10
  546. package/dist/builtin/workflows/src/shared/store-prompt-methods.ts +0 -215
  547. package/dist/builtin/workflows/src/shared/store-public-types.ts +0 -282
  548. package/dist/builtin/workflows/src/shared/store-run-methods.ts +0 -305
  549. package/dist/builtin/workflows/src/shared/store-stage-methods.ts +0 -331
  550. package/dist/builtin/workflows/src/shared/store-tool-node-methods.ts +0 -60
  551. package/dist/builtin/workflows/src/shared/store-types.ts +0 -439
  552. package/dist/builtin/workflows/src/shared/store.ts +0 -15
  553. package/dist/builtin/workflows/src/shared/timing.ts +0 -71
  554. package/dist/builtin/workflows/src/shared/tool-payload-bounds.ts +0 -576
  555. package/dist/builtin/workflows/src/shared/types.ts +0 -523
  556. package/dist/builtin/workflows/src/shared/workflow-artifact-env.ts +0 -21
  557. package/dist/builtin/workflows/src/shared/workflow-artifacts.ts +0 -259
  558. package/dist/builtin/workflows/src/shared/workflow-authoring-types.d.ts +0 -60
  559. package/dist/builtin/workflows/src/shared/workflow-authoring-types.ts +0 -111
  560. package/dist/builtin/workflows/src/shared/workflow-failures-classifier.ts +0 -292
  561. package/dist/builtin/workflows/src/shared/workflow-failures-contract.ts +0 -74
  562. package/dist/builtin/workflows/src/shared/workflow-failures-decisions.ts +0 -458
  563. package/dist/builtin/workflows/src/shared/workflow-failures-signals.ts +0 -303
  564. package/dist/builtin/workflows/src/shared/workflow-failures.ts +0 -13
  565. package/dist/builtin/workflows/src/shared/workflow-heartbeat-contract.d.ts +0 -21
  566. package/dist/builtin/workflows/src/shared/workflow-heartbeat-contract.ts +0 -25
  567. package/dist/builtin/workflows/src/shared/workflow-run-ownership.ts +0 -49
  568. package/dist/builtin/workflows/src/tui/chat-surface-message.ts +0 -319
  569. package/dist/builtin/workflows/src/tui/chat-surface.ts +0 -477
  570. package/dist/builtin/workflows/src/tui/color-utils.ts +0 -55
  571. package/dist/builtin/workflows/src/tui/connectors.ts +0 -84
  572. package/dist/builtin/workflows/src/tui/dispatch-confirm.ts +0 -334
  573. package/dist/builtin/workflows/src/tui/edge.ts +0 -25
  574. package/dist/builtin/workflows/src/tui/graph-canvas.ts +0 -185
  575. package/dist/builtin/workflows/src/tui/graph-theme.ts +0 -292
  576. package/dist/builtin/workflows/src/tui/graph-view-constants.ts +0 -49
  577. package/dist/builtin/workflows/src/tui/graph-view-graph-render.ts +0 -157
  578. package/dist/builtin/workflows/src/tui/graph-view-input.ts +0 -427
  579. package/dist/builtin/workflows/src/tui/graph-view-layout.ts +0 -297
  580. package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +0 -294
  581. package/dist/builtin/workflows/src/tui/graph-view-render.ts +0 -361
  582. package/dist/builtin/workflows/src/tui/graph-view-state.ts +0 -547
  583. package/dist/builtin/workflows/src/tui/graph-view-types.ts +0 -79
  584. package/dist/builtin/workflows/src/tui/graph-view.ts +0 -25
  585. package/dist/builtin/workflows/src/tui/header.ts +0 -210
  586. package/dist/builtin/workflows/src/tui/host-input-form.ts +0 -64
  587. package/dist/builtin/workflows/src/tui/inline-form-card.ts +0 -438
  588. package/dist/builtin/workflows/src/tui/inline-form-editor-text.ts +0 -120
  589. package/dist/builtin/workflows/src/tui/inline-form-editor.ts +0 -496
  590. package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +0 -317
  591. package/dist/builtin/workflows/src/tui/inline-form-store.ts +0 -90
  592. package/dist/builtin/workflows/src/tui/inputs-overlay.ts +0 -185
  593. package/dist/builtin/workflows/src/tui/inputs-picker-editing.ts +0 -147
  594. package/dist/builtin/workflows/src/tui/inputs-picker-input.ts +0 -357
  595. package/dist/builtin/workflows/src/tui/inputs-picker-render.ts +0 -312
  596. package/dist/builtin/workflows/src/tui/inputs-picker-types.ts +0 -161
  597. package/dist/builtin/workflows/src/tui/inputs-picker.ts +0 -20
  598. package/dist/builtin/workflows/src/tui/keybindings-adapter.ts +0 -167
  599. package/dist/builtin/workflows/src/tui/layout.ts +0 -150
  600. package/dist/builtin/workflows/src/tui/mouse-input.ts +0 -61
  601. package/dist/builtin/workflows/src/tui/node-card.ts +0 -357
  602. package/dist/builtin/workflows/src/tui/overlay-adapter.ts +0 -449
  603. package/dist/builtin/workflows/src/tui/overlay-terminal-modes.ts +0 -39
  604. package/dist/builtin/workflows/src/tui/prompt-card-input.ts +0 -215
  605. package/dist/builtin/workflows/src/tui/prompt-card-render.ts +0 -584
  606. package/dist/builtin/workflows/src/tui/prompt-card-select.ts +0 -94
  607. package/dist/builtin/workflows/src/tui/prompt-card-state.ts +0 -61
  608. package/dist/builtin/workflows/src/tui/prompt-card-text.ts +0 -122
  609. package/dist/builtin/workflows/src/tui/prompt-card.ts +0 -12
  610. package/dist/builtin/workflows/src/tui/renderers.ts +0 -14
  611. package/dist/builtin/workflows/src/tui/run-detail.ts +0 -438
  612. package/dist/builtin/workflows/src/tui/run-identity-rows.ts +0 -97
  613. package/dist/builtin/workflows/src/tui/session-list.ts +0 -38
  614. package/dist/builtin/workflows/src/tui/session-overlays.ts +0 -161
  615. package/dist/builtin/workflows/src/tui/session-picker.ts +0 -482
  616. package/dist/builtin/workflows/src/tui/stage-chat-composer-drafts.ts +0 -19
  617. package/dist/builtin/workflows/src/tui/stage-chat-layout.ts +0 -81
  618. package/dist/builtin/workflows/src/tui/stage-chat-view-archive-history.ts +0 -462
  619. package/dist/builtin/workflows/src/tui/stage-chat-view-custom-ui.ts +0 -115
  620. package/dist/builtin/workflows/src/tui/stage-chat-view-delivery-activity.ts +0 -113
  621. package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +0 -219
  622. package/dist/builtin/workflows/src/tui/stage-chat-view-input.ts +0 -216
  623. package/dist/builtin/workflows/src/tui/stage-chat-view-live-events.ts +0 -65
  624. package/dist/builtin/workflows/src/tui/stage-chat-view-pending-tools.ts +0 -7
  625. package/dist/builtin/workflows/src/tui/stage-chat-view-render-helpers.ts +0 -149
  626. package/dist/builtin/workflows/src/tui/stage-chat-view-render-settings.ts +0 -49
  627. package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +0 -575
  628. package/dist/builtin/workflows/src/tui/stage-chat-view-status.ts +0 -35
  629. package/dist/builtin/workflows/src/tui/stage-chat-view-transcript.ts +0 -226
  630. package/dist/builtin/workflows/src/tui/stage-chat-view-types.ts +0 -156
  631. package/dist/builtin/workflows/src/tui/stage-chat-view.ts +0 -309
  632. package/dist/builtin/workflows/src/tui/status-helpers.ts +0 -85
  633. package/dist/builtin/workflows/src/tui/status-list.ts +0 -447
  634. package/dist/builtin/workflows/src/tui/store-widget-installer.ts +0 -338
  635. package/dist/builtin/workflows/src/tui/submit-pane.ts +0 -148
  636. package/dist/builtin/workflows/src/tui/switcher.ts +0 -172
  637. package/dist/builtin/workflows/src/tui/text-helpers.ts +0 -208
  638. package/dist/builtin/workflows/src/tui/tool-detail.ts +0 -367
  639. package/dist/builtin/workflows/src/tui/widget.ts +0 -427
  640. package/dist/builtin/workflows/src/tui/workflow-attach-pane-handle.ts +0 -21
  641. package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +0 -77
  642. package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +0 -477
  643. package/dist/builtin/workflows/src/tui/workflow-list.ts +0 -189
  644. package/dist/builtin/workflows/src/tui/workflow-notice-card.ts +0 -167
  645. package/dist/builtin/workflows/src/tui/workflow-resume-selector.ts +0 -334
  646. package/dist/builtin/workflows/src/tui/workflow-status.ts +0 -12
  647. package/dist/builtin/workflows/src/workflows/identity.ts +0 -39
  648. package/dist/builtin/workflows/src/workflows/registry.ts +0 -115
@@ -1,424 +0,0 @@
1
- /**
2
- * Workflow discovery for workflows extension startup.
3
- *
4
- * Supports bundled workflows (shipped with this package) as well as
5
- * project-local, user-global, settings-project, and settings-global sources
6
- * loaded from the file system via dynamic import.
7
- *
8
- * Supported file extensions: .ts, .js, .mjs, .cjs
9
- *
10
- * Precedence order (highest wins on duplicate normalizedName):
11
- * 1. settings-project — paths listed in config.projectWorkflows
12
- * 2. project-local — {cwd}/.atomic/workflows/*.{ts,js,mjs,cjs}
13
- * 3. settings-global — paths listed in config.globalWorkflows
14
- * 4. user-global — {agentDir}/workflows/*.{ts,js,mjs,cjs}
15
- * 5. package — workflow files supplied by Atomic/pi packages
16
- * 6. bundled — shipped workflows (skipped when includeBundled=false)
17
- *
18
- * Usage:
19
- * // Full discovery (all sources):
20
- * const result = await discoverWorkflows({ cwd: process.cwd() });
21
- */
22
-
23
- import { join } from "node:path";
24
- import { CONFIG_DIR_NAMES, getAgentDirs, getProjectConfigPaths } from "@bastani/atomic";
25
- import * as bundledManifest from "../../builtin/index.js";
26
- import type { WorkflowDefinition } from "../shared/types.js";
27
- import type { WorkflowRegistry } from "../workflows/registry.js";
28
- import { createRegistry } from "../workflows/registry.js";
29
- import { loadFromDir, loadFromPaths, type WorkflowModuleCandidateRecord } from "./discovery-loaders.js";
30
- import { validateWorkflowDefinitionShape as validateDefinitionShape } from "./workflow-module-loader.js";
31
-
32
- // ---------------------------------------------------------------------------
33
- // Public types
34
- // ---------------------------------------------------------------------------
35
-
36
- /**
37
- * The source kind for a discovered workflow.
38
- *
39
- * bundled — shipped with the workflows package
40
- * project-local — found in {cwd}/.atomic/workflows/
41
- * user-global — found in {agentDir}/workflows/
42
- * settings-project — listed in DiscoveryConfig.projectWorkflows
43
- * settings-global — listed in DiscoveryConfig.globalWorkflows
44
- * package — supplied by Atomic/pi package workflow resources
45
- */
46
- export type DiscoveryKind =
47
- | "bundled"
48
- | "project-local"
49
- | "user-global"
50
- | "settings-project"
51
- | "settings-global"
52
- | "package";
53
-
54
- /** Identifies the origin of a discovered workflow definition. */
55
- export interface DiscoverySource {
56
- /** The workflow's normalizedName (registry key). */
57
- readonly id: string;
58
- /** Where this workflow was discovered from. */
59
- readonly kind: DiscoveryKind;
60
- /** Human-readable display name as authored. */
61
- readonly name: string;
62
- /** Absolute file path (undefined for bundled). */
63
- readonly filePath?: string;
64
- /**
65
- * The configured name (key) under which this workflow was registered in
66
- * settings (e.g. the key in `config.projectWorkflows`).
67
- * Only present for settings-project and settings-global sources loaded
68
- * via a named-entry config map.
69
- */
70
- readonly configuredName?: string;
71
- }
72
-
73
- /** Severity of a discovery diagnostic. */
74
- export type DiagnosticLevel = "error" | "warn";
75
-
76
- /**
77
- * A diagnostic emitted during discovery.
78
- * Errors indicate a definition was rejected; warnings indicate a recoverable
79
- * condition (e.g. a duplicate that was skipped).
80
- *
81
- * Codes:
82
- * INVALID_DEFINITION — failed structural validation
83
- * DUPLICATE_NAME — normalizedName already registered; skipped (warn)
84
- * IMPORT_FAILED — dynamic import of a workflow file threw
85
- * PATH_NOT_FOUND — a config-specified path does not exist
86
- * CONFIG_INVALID — DiscoveryConfig has an invalid structure
87
- */
88
- export interface DiscoveryDiagnostic {
89
- readonly level: DiagnosticLevel;
90
- readonly code: "INVALID_DEFINITION" | "DUPLICATE_NAME" | "IMPORT_FAILED" | "PATH_NOT_FOUND" | "CONFIG_INVALID";
91
- readonly message: string;
92
- /** Export key, workflow name, or file path associated with this diagnostic. */
93
- readonly source?: string;
94
- }
95
-
96
- /**
97
- * Optional config for settings-based workflow paths.
98
- * Entries are absolute paths (or resolvable relative paths) to .ts/.js/.mjs/.cjs
99
- * files that export a default WorkflowDefinition.
100
- *
101
- * Both plain string arrays and named entry maps are supported:
102
- * - `string[]` — paths without configured names
103
- * - `Record<string, string>` — maps configuredName → path (preserves name in DiscoverySource)
104
- */
105
- export interface DiscoveryConfig {
106
- /** Paths to project-scoped workflow files (settings-project). */
107
- projectWorkflows?: string[] | Record<string, string>;
108
- /** Paths to globally-scoped workflow files (settings-global). */
109
- globalWorkflows?: string[] | Record<string, string>;
110
- }
111
-
112
- /**
113
- * Options for discoverWorkflows().
114
- * All fields have sensible defaults so callers can pass Partial<DiscoveryOptions>.
115
- */
116
- export interface DiscoveryOptions {
117
- /** Working directory; used as root for project-local discovery. Default: process.cwd() */
118
- cwd: string;
119
- /** User's home directory; when set, preserves legacy test/compat user-global discovery roots. */
120
- homeDir: string;
121
- /** User agent config directories in precedence order. Defaults to Atomic's configured agent directories. */
122
- agentDirs?: readonly string[];
123
- /** Optional extra paths from project/global config. */
124
- config?: DiscoveryConfig;
125
- /** Workflow files supplied by installed Atomic/pi packages. */
126
- packageWorkflowPaths?: string[] | Record<string, string>;
127
- /** When false, bundled workflows are excluded. Default: true */
128
- includeBundled?: boolean;
129
- }
130
-
131
- /** Result returned by discoverWorkflows(). */
132
- export interface DiscoveryResult {
133
- /** Registry populated with all valid, non-duplicate definitions (precedence-ordered). */
134
- readonly registry: WorkflowRegistry;
135
- /** One record per successfully registered workflow. */
136
- readonly sources: readonly DiscoverySource[];
137
- /** All diagnostics (errors + warnings). Empty when all is well. */
138
- readonly errors: readonly DiscoveryDiagnostic[];
139
- }
140
-
141
- // ---------------------------------------------------------------------------
142
- // Internal helpers
143
- // ---------------------------------------------------------------------------
144
-
145
- function workflowAgentDirs(options: Partial<DiscoveryOptions> | undefined): readonly string[] {
146
- if (options?.agentDirs !== undefined) return options.agentDirs;
147
- if (options?.homeDir !== undefined) {
148
- const homeDir = options.homeDir;
149
- return CONFIG_DIR_NAMES.map((name) => join(homeDir, name, "agent"));
150
- }
151
- return getAgentDirs();
152
- }
153
-
154
- /**
155
- * Validate DiscoveryConfig shape.
156
- * Returns null when valid, or a description of the problem.
157
- */
158
- function validateConfig(config: unknown): string | null {
159
- if (config === null || typeof config !== "object") {
160
- return "config must be an object";
161
- }
162
- const c = config as Record<string, unknown>;
163
- for (const field of ["projectWorkflows", "globalWorkflows"] as const) {
164
- const val = c[field];
165
- if (val !== undefined) {
166
- if (Array.isArray(val)) {
167
- for (const entry of val) {
168
- if (typeof entry !== "string") return `config.${field} entries must be strings`;
169
- }
170
- } else if (typeof val === "object" && val !== null) {
171
- // Named map: Record<string, string>
172
- for (const [key, entry] of Object.entries(val as Record<string, unknown>)) {
173
- if (typeof entry !== "string") return `config.${field}["${key}"] must be a string path`;
174
- }
175
- } else {
176
- return `config.${field} must be a string array or a Record<string, string> map`;
177
- }
178
- }
179
- }
180
- return null;
181
- }
182
-
183
- /** Merge a batch of candidates into registry state, first-seen wins. */
184
- async function applyBatch(
185
- candidates: WorkflowModuleCandidateRecord[],
186
- registry: WorkflowRegistry,
187
- sources: DiscoverySource[],
188
- diagnostics: DiscoveryDiagnostic[],
189
- ): Promise<WorkflowRegistry> {
190
- for (const { value, exportKey, kind, filePath, configuredName } of candidates) {
191
- const reason = validateDefinitionShape(value);
192
- if (reason !== null) {
193
- diagnostics.push({
194
- level: "error",
195
- code: "INVALID_DEFINITION",
196
- message: `${kind} export "${exportKey}" rejected: ${reason}`,
197
- source: filePath ?? exportKey,
198
- });
199
- continue;
200
- }
201
-
202
- const def = value as WorkflowDefinition;
203
- const key = def.normalizedName;
204
-
205
- if (registry.has(key)) {
206
- diagnostics.push({
207
- level: "warn",
208
- code: "DUPLICATE_NAME",
209
- message: `${kind} export "${exportKey}" skipped: normalizedName "${key}" already registered`,
210
- source: filePath ?? exportKey,
211
- });
212
- continue;
213
- }
214
-
215
- registry = registry.register(def);
216
- sources.push({
217
- id: key,
218
- kind,
219
- name: def.name,
220
- ...(filePath !== undefined ? { filePath } : {}),
221
- ...(configuredName !== undefined ? { configuredName } : {}),
222
- });
223
- }
224
- return registry;
225
- }
226
-
227
- /** Merge bundled startup candidates with shape-only validation to keep startup seeding synchronous. */
228
- function applyBatchShapeOnly(
229
- candidates: WorkflowModuleCandidateRecord[],
230
- registry: WorkflowRegistry,
231
- sources: DiscoverySource[],
232
- diagnostics: DiscoveryDiagnostic[],
233
- ): WorkflowRegistry {
234
- for (const { value, exportKey, kind, filePath, configuredName } of candidates) {
235
- const reason = validateDefinitionShape(value);
236
- if (reason !== null) {
237
- diagnostics.push({
238
- level: "error",
239
- code: "INVALID_DEFINITION",
240
- message: `${kind} export "${exportKey}" rejected: ${reason}`,
241
- source: filePath ?? exportKey,
242
- });
243
- continue;
244
- }
245
-
246
- const def = value as WorkflowDefinition;
247
- const key = def.normalizedName;
248
-
249
- if (registry.has(key)) {
250
- diagnostics.push({
251
- level: "warn",
252
- code: "DUPLICATE_NAME",
253
- message: `${kind} export "${exportKey}" skipped: normalizedName "${key}" already registered`,
254
- source: filePath ?? exportKey,
255
- });
256
- continue;
257
- }
258
-
259
- registry = registry.register(def);
260
- sources.push({
261
- id: key,
262
- kind,
263
- name: def.name,
264
- ...(filePath !== undefined ? { filePath } : {}),
265
- ...(configuredName !== undefined ? { configuredName } : {}),
266
- });
267
- }
268
- return registry;
269
- }
270
-
271
- // ---------------------------------------------------------------------------
272
- // Main API
273
- // ---------------------------------------------------------------------------
274
-
275
- /**
276
- * Discover workflows from all configured sources, applying precedence order.
277
- *
278
- * Precedence (highest first; first-registered wins on duplicate normalizedName):
279
- * 1. settings-project — config.projectWorkflows paths
280
- * 2. project-local — {cwd}/.atomic/workflows/*.{ts,js,mjs,cjs}
281
- * 3. settings-global — config.globalWorkflows paths
282
- * 4. user-global — {agentDir}/workflows/*.{ts,js,mjs,cjs}
283
- * 5. package — package-supplied workflow files
284
- * 6. bundled — shipped workflows (omitted when includeBundled=false)
285
- */
286
- export async function discoverWorkflows(options?: Partial<DiscoveryOptions>): Promise<DiscoveryResult> {
287
- const cwd = options?.cwd ?? process.cwd();
288
- const homeDir = options?.homeDir ?? (await defaultHomeDir());
289
- const agentDirs = workflowAgentDirs(options);
290
- const config = options?.config;
291
- const packageWorkflowPaths = options?.packageWorkflowPaths;
292
- const includeBundled = options?.includeBundled !== false;
293
-
294
- const diagnostics: DiscoveryDiagnostic[] = [];
295
- const sources: DiscoverySource[] = [];
296
- let registry = createRegistry();
297
-
298
- // Validate config if provided
299
- let configIsValid = true;
300
- if (config !== undefined) {
301
- const configErr = validateConfig(config);
302
- if (configErr !== null) {
303
- diagnostics.push({
304
- level: "error",
305
- code: "CONFIG_INVALID",
306
- message: `DiscoveryConfig is invalid: ${configErr}`,
307
- source: "config",
308
- });
309
- configIsValid = false;
310
- // Skip settings-project and settings-global loading for invalid config
311
- }
312
- }
313
-
314
- // 1. settings-project (highest precedence)
315
- if (configIsValid && config !== undefined && config.projectWorkflows !== undefined) {
316
- const pw = config.projectWorkflows;
317
- const hasEntries = Array.isArray(pw) ? pw.length > 0 : Object.keys(pw).length > 0;
318
- if (hasEntries) {
319
- const candidates = await loadFromPaths(pw, "settings-project", cwd, diagnostics);
320
- registry = await applyBatch(candidates, registry, sources, diagnostics);
321
- }
322
- }
323
-
324
- // 2. project-local
325
- for (const dir of getProjectConfigPaths(cwd, "workflows").reverse()) {
326
- const candidates = await loadFromDir(dir, "project-local", diagnostics);
327
- registry = await applyBatch(candidates, registry, sources, diagnostics);
328
- }
329
-
330
- // 3. settings-global
331
- if (configIsValid && config !== undefined && config.globalWorkflows !== undefined) {
332
- const gw = config.globalWorkflows;
333
- const hasEntries = Array.isArray(gw) ? gw.length > 0 : Object.keys(gw).length > 0;
334
- if (hasEntries) {
335
- const candidates = await loadFromPaths(gw, "settings-global", homeDir, diagnostics);
336
- registry = await applyBatch(candidates, registry, sources, diagnostics);
337
- }
338
- }
339
-
340
- // 4. user-global — configured Atomic agent dir plus legacy/defaults when applicable.
341
- for (const dir of agentDirs.map((agentDir) => join(agentDir, "workflows")).reverse()) {
342
- const candidates = await loadFromDir(dir, "user-global", diagnostics);
343
- registry = await applyBatch(candidates, registry, sources, diagnostics);
344
- }
345
-
346
- // 5. package workflows
347
- if (packageWorkflowPaths !== undefined) {
348
- const hasEntries = Array.isArray(packageWorkflowPaths)
349
- ? packageWorkflowPaths.length > 0
350
- : Object.keys(packageWorkflowPaths).length > 0;
351
- if (hasEntries) {
352
- const candidates = await loadFromPaths(packageWorkflowPaths, "package", cwd, diagnostics);
353
- registry = await applyBatch(candidates, registry, sources, diagnostics);
354
- }
355
- }
356
-
357
- // 6. bundled
358
- if (includeBundled) {
359
- const bundledResult = discoverBundledManifest();
360
- // Merge bundled: only register names not already present (lower precedence)
361
- for (const def of bundledResult.registry.all()) {
362
- const key = def.normalizedName;
363
- if (registry.has(key)) {
364
- diagnostics.push({
365
- level: "warn",
366
- code: "DUPLICATE_NAME",
367
- message: `Bundled workflow "${key}" skipped: already registered by higher-precedence source`,
368
- source: key,
369
- });
370
- continue;
371
- }
372
- registry = registry.register(def);
373
- sources.push({ id: key, kind: "bundled", name: def.name });
374
- }
375
- // Propagate bundled diagnostics (e.g. INVALID_DEFINITION within bundled)
376
- for (const d of bundledResult.errors) {
377
- diagnostics.push(d);
378
- }
379
- }
380
-
381
- return { registry, sources, errors: diagnostics };
382
- }
383
-
384
- /** Resolve default homeDir using os.homedir(). */
385
- async function defaultHomeDir(): Promise<string> {
386
- const { homedir } = await import("node:os");
387
- return homedir();
388
- }
389
-
390
- // ---------------------------------------------------------------------------
391
- // Startup seed discovery
392
- // ---------------------------------------------------------------------------
393
-
394
- /**
395
- * Discover all bundled workflow definitions, validate them, and register valid
396
- * ones into a new WorkflowRegistry.
397
- *
398
- * Duplicate policy: first-seen wins (insertion order of the manifest export).
399
- */
400
- export function discoverStartupWorkflowsSync(): DiscoveryResult {
401
- return discoverBundledManifest();
402
- }
403
-
404
- function discoverBundledManifest(): DiscoveryResult {
405
- const manifest = bundledManifest as Record<string, unknown>;
406
- const diagnostics: DiscoveryDiagnostic[] = [];
407
- const sources: DiscoverySource[] = [];
408
- let registry = createRegistry();
409
-
410
- const candidates = Object.entries(manifest).map(([exportKey, value]) => ({
411
- value,
412
- exportKey,
413
- kind: "bundled" as DiscoveryKind,
414
- }));
415
-
416
- registry = applyBatchShapeOnly(candidates, registry, sources, diagnostics);
417
-
418
- return { registry, sources, errors: diagnostics };
419
- }
420
-
421
- // ---------------------------------------------------------------------------
422
- // Re-export types needed by callers (avoids them importing from registry.ts)
423
- // ---------------------------------------------------------------------------
424
- export type { WorkflowRegistry };
@@ -1,273 +0,0 @@
1
- /**
2
- * WorkflowDispatcher — routes tool actions (list, inputs, run) through the
3
- * WorkflowRegistry + executor. status/interrupt/resume are handled upstream in
4
- * index.ts since they operate on in-flight run tracking, not the registry.
5
- *
6
- * Design: pure function `dispatch(args, opts)`. No broad catch — caller sees
7
- * real errors so bugs surface instead of being swallowed as success-shaped results.
8
- */
9
-
10
- import { getDurableBackend } from "../durable/factory.js";
11
- import type { CancellationRegistry } from "../runs/background/cancellation-registry.js";
12
- import { jobTracker as defaultJobTracker, type JobTracker } from "../runs/background/job-tracker.js";
13
- import { launchDetachedUntilStartup, workflowStartupFailureMessage } from "../runs/background/startup-admission.js";
14
- import { resolveAndValidateInputs } from "../runs/foreground/executor.js";
15
- import type { StageAdapters } from "../runs/foreground/stage-runner.js";
16
- import { resolve_budget } from "../shared/budget.js";
17
- import { effectiveRunStatus } from "../shared/returned-run-status.js";
18
- import { deriveInputFields, schemaIsRequired } from "../shared/schema-introspection.js";
19
- import { store as defaultStore, type Store } from "../shared/store.js";
20
- import type { WorkflowActor } from "../shared/store-types.js";
21
- import {
22
- INTERACTIVE_WORKFLOW_POLICY,
23
- type WorkflowExecutionPolicy,
24
- type WorkflowMcpPort,
25
- type WorkflowModelCatalogPort,
26
- type WorkflowPersistencePort,
27
- type WorkflowRuntimeConfig,
28
- } from "../shared/types.js";
29
- import type { WorkflowRegistry } from "../workflows/registry.js";
30
- import type { WorkflowToolArgs } from "./index.js";
31
- import type { WorkflowInputEntry, WorkflowToolResult } from "./render-result.js";
32
- import { raceWorkflowRequestAbort } from "./workflow-request-abort.js";
33
-
34
- type WorkflowRunResult = Extract<WorkflowToolResult, { action: "run" }>;
35
-
36
- function failedRunResult(name: string | undefined, runId: string, error: string): WorkflowRunResult {
37
- return {
38
- action: "run",
39
- name,
40
- runId,
41
- status: "failed",
42
- error,
43
- stages: [],
44
- };
45
- }
46
- async function discardUnadmittedRun(runId: string, activeStore: Store): Promise<void> {
47
- activeStore.removeRun(runId);
48
- const backend = getDurableBackend();
49
- const handle = backend.getWorkflow(runId);
50
- if (handle?.status === "running") {
51
- backend.setWorkflowStatus(runId, "failed", handle.pendingPrompts, false);
52
- await backend.flush();
53
- }
54
- const deleted = await backend.deleteWorkflowIfInactive(runId);
55
- if (!deleted.ok && deleted.reason !== "not_found") {
56
- throw new Error(`workflow ${runId} remained ${deleted.reason}`);
57
- }
58
- }
59
-
60
- // ---------------------------------------------------------------------------
61
- // Options
62
- // ---------------------------------------------------------------------------
63
-
64
- export interface DispatcherOpts {
65
- /** Registry of compiled workflow definitions. */
66
- registry: WorkflowRegistry;
67
- /** Stage adapters forwarded to the executor (prompt/complete). */
68
- adapters?: StageAdapters;
69
- /** Store override (defaults to executor's singleton). */
70
- store?: Store;
71
- /** Cancellation registry forwarded to the detached runner. */
72
- cancellation?: CancellationRegistry;
73
- /** Job tracker forwarded to runDetached() for background run management. */
74
- jobs?: JobTracker;
75
- /** Persistence port forwarded to the executor. */
76
- persistence?: WorkflowPersistencePort;
77
- /** MCP scope-gating port forwarded to the executor. */
78
- mcp?: WorkflowMcpPort;
79
- /**
80
- * Resolved runtime configuration. Forwarded to runDetached() so downstream
81
- * tasks (maxDepth, concurrency, statusFile) can consume it.
82
- */
83
- config?: WorkflowRuntimeConfig;
84
- /** Optional model catalog forwarded to workflow runs for fallback resolution. */
85
- models?: WorkflowModelCatalogPort;
86
- /** Runtime-derived interaction policy for this dispatch. */
87
- policy?: WorkflowExecutionPolicy;
88
- /** Who launched this run. Omitted when the launcher is not attributable. */
89
- origin?: WorkflowActor;
90
- /** Invocation cwd used for workflow execution. */
91
- cwd?: string;
92
- /** Host-resolved non-default session directory inherited by stages without explicit sessionDir. */
93
- defaultSessionDir?: string;
94
- /** Cancels only startup admission waiting; the detached run keeps its own lifecycle. */
95
- signal?: AbortSignal;
96
- /** Reports the exact detached identity before startup admission is awaited. */
97
- onRunAccepted?: (runId: string) => void;
98
- }
99
-
100
- // ---------------------------------------------------------------------------
101
- // Dispatcher
102
- // ---------------------------------------------------------------------------
103
-
104
- /**
105
- * Dispatch a `list`, `inputs`, or `run` action.
106
- *
107
- * Throws for unknown actions or not-found workflows on `run`.
108
- * Returns a typed `WorkflowToolResult` — no broad catch, no success-shaped errors.
109
- */
110
- export async function dispatch(args: WorkflowToolArgs, opts: DispatcherOpts): Promise<WorkflowToolResult> {
111
- const action = args.action ?? "run";
112
- const name = args.workflow ?? "";
113
- const inputs = args.inputs ?? {};
114
-
115
- switch (action) {
116
- // -----------------------------------------------------------------------
117
- // list — enumerate registered workflow metadata: name, description,
118
- // inputs. Single source of truth for the catalogue renderer.
119
- // -----------------------------------------------------------------------
120
- case "list": {
121
- const items = opts.registry.all().map((def) => ({
122
- name: def.normalizedName,
123
- description: def.description,
124
- inputs: Object.entries(def.inputs).map(([iname, schema]) => ({
125
- name: iname,
126
- required: schemaIsRequired(schema),
127
- })),
128
- }));
129
- return { action: "list", items };
130
- }
131
-
132
- // -----------------------------------------------------------------------
133
- // inputs — return a workflow's input schema, or a clear not-found result
134
- // -----------------------------------------------------------------------
135
- case "inputs": {
136
- const def = opts.registry.get(name);
137
- if (!def) {
138
- return {
139
- action: "inputs",
140
- name,
141
- inputs: [],
142
- error: `Workflow not found: "${name}"`,
143
- };
144
- }
145
- const inputSchema: WorkflowInputEntry[] = deriveInputFields(def.inputs);
146
- return { action: "inputs", name, inputs: inputSchema };
147
- }
148
-
149
- // -----------------------------------------------------------------------
150
- // run — always dispatched as a background run. The chat editor stays
151
- // free; the workflow surfaces progress through the store, the widget,
152
- // and the graph viewer overlay. Foreground execution is no longer a
153
- // user-facing option — call `run()` directly from src/runs/foreground
154
- // /executor.js if you need synchronous semantics in code or tests.
155
- // -----------------------------------------------------------------------
156
- case "run": {
157
- const def = opts.registry.get(name);
158
- if (!def) {
159
- // Return structured failed result — not-found is a user error, not a bug.
160
- // Status "failed" is honest; action is "run" for tool consumers to dispatch on.
161
- return {
162
- action: "run",
163
- name,
164
- runId: "",
165
- status: "failed",
166
- error: `Workflow not found: "${name}"`,
167
- stages: [],
168
- };
169
- }
170
-
171
- const policy = opts.policy ?? INTERACTIVE_WORKFLOW_POLICY;
172
- // Pre-validate inputs and budget declarations. The executor would otherwise
173
- // reject them deep in the background promise, silently from the caller's
174
- // perspective. Catch errors here so the dispatch result names the problem.
175
- try {
176
- resolveAndValidateInputs(def.inputs, inputs, `workflow "${def.name}"`);
177
- resolve_budget({ config: opts.config?.budget, definition: def.budget, run: args.budget });
178
- } catch (err) {
179
- return failedRunResult(def.name, "", err instanceof Error ? err.message : String(err));
180
- }
181
-
182
- const runId = crypto.randomUUID();
183
- let launch: ReturnType<typeof launchDetachedUntilStartup>;
184
- try {
185
- launch = launchDetachedUntilStartup(def, inputs, {
186
- registry: opts.registry,
187
- adapters: opts.adapters,
188
- store: opts.store,
189
- cancellation: opts.cancellation,
190
- jobs: opts.jobs,
191
- persistence: opts.persistence,
192
- mcp: opts.mcp,
193
- config: opts.config,
194
- budget: args.budget,
195
- models: opts.models,
196
- executionMode: policy.mode,
197
- cwd: opts.cwd,
198
- defaultSessionDir: opts.defaultSessionDir,
199
- ...(opts.origin === undefined ? {} : { origin: opts.origin }),
200
- runId,
201
- });
202
- } catch (error) {
203
- return failedRunResult(def.name, runId, error instanceof Error ? error.message : String(error));
204
- }
205
- const { accepted } = launch;
206
- opts.onRunAccepted?.(accepted.runId);
207
- const admission = await raceWorkflowRequestAbort(launch.wait, opts.signal);
208
- if (!admission.started) {
209
- const activeStore = opts.store ?? defaultStore;
210
- const snapshot = activeStore.runs().find((run) => run.id === accepted.runId);
211
- const error = workflowStartupFailureMessage(
212
- admission,
213
- snapshot?.error,
214
- `Workflow run ${accepted.runId} ended before startup admission`,
215
- );
216
- try {
217
- await discardUnadmittedRun(accepted.runId, activeStore);
218
- } catch (cleanupError) {
219
- return failedRunResult(
220
- accepted.name,
221
- accepted.runId,
222
- `${error}; startup cleanup failed: ${cleanupError instanceof Error ? cleanupError.message : String(cleanupError)}`,
223
- );
224
- }
225
- return failedRunResult(accepted.name, accepted.runId, error);
226
- }
227
- if (policy.awaitTerminalRun === true) {
228
- const tracker = opts.jobs ?? defaultJobTracker;
229
- const job = tracker.get(accepted.runId);
230
- if (!job) {
231
- return failedRunResult(
232
- accepted.name,
233
- accepted.runId,
234
- `Workflow run ${accepted.runId} was accepted but no live job was registered to await`,
235
- );
236
- }
237
- await job.promise;
238
- const activeStore = opts.store ?? defaultStore;
239
- const snapshot = activeStore.runs().find((run) => run.id === accepted.runId);
240
- if (!snapshot) {
241
- return failedRunResult(
242
- accepted.name,
243
- accepted.runId,
244
- `Workflow run ${accepted.runId} ended without a retained snapshot`,
245
- );
246
- }
247
- return {
248
- action: "run",
249
- name: snapshot.name,
250
- runId: snapshot.id,
251
- status: effectiveRunStatus(snapshot),
252
- result: snapshot.result,
253
- error: snapshot.error,
254
- exited: snapshot.exited,
255
- exitReason: snapshot.exitReason,
256
- stages: snapshot.stages.map((stage) => structuredClone(stage)),
257
- };
258
- }
259
- return {
260
- action: "run",
261
- name: accepted.name,
262
- runId: accepted.runId,
263
- status: accepted.status,
264
- message: accepted.message,
265
- stages: [],
266
- };
267
- }
268
-
269
- default:
270
- // Status and run-control actions are not routed here; unknown actions are bugs.
271
- throw new Error(`WorkflowDispatcher: unknown action "${action}"`);
272
- }
273
- }