@makaio/framework 1.0.0-dev-1789160791094 → 1.0.0-dev-1789177276073

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 (499) hide show
  1. package/dist/.makaio-build.json +2 -2
  2. package/dist/{2020-DvDj4r_K.mjs → 2020-CRfgqanb.mjs} +1 -1
  3. package/dist/{account-identity-BdGGjBuZ.mjs → account-identity-C-v4mHq3.mjs} +1 -1
  4. package/dist/{adapter-BLivHuUi.mjs → adapter-C4v_gNTI.mjs} +1 -1
  5. package/dist/adapters/config/index.d.mts +1 -1
  6. package/dist/adapters/config/index.mjs +1 -1
  7. package/dist/adapters/index.d.mts +2 -2
  8. package/dist/adapters/index.mjs +1 -1
  9. package/dist/adapters/node.d.mts +1 -1
  10. package/dist/adapters/node.mjs +1 -1
  11. package/dist/artifact-DGxKwbHE.mjs +1 -0
  12. package/dist/{attempt-record-codec-BrungudT.mjs → attempt-record-codec-DaQ3WHUs.mjs} +1 -1
  13. package/dist/{auth-BIgwGHp-.mjs → auth-D9BQV8b_.mjs} +1 -1
  14. package/dist/authority-state-bootstrap-CV7HpB4v.mjs +1 -0
  15. package/dist/{automation-trigger-CQNQpzkA.mjs → automation-trigger-Bs-AAN1I.mjs} +1 -1
  16. package/dist/bus/index.d.mts +22 -19
  17. package/dist/bus/index.mjs +1 -1
  18. package/dist/bus-CyrTcF8F.mjs +9 -0
  19. package/dist/{caller-owned-adapter-stub-NiR7KT2N.mjs → caller-owned-adapter-stub-D8RZEdRn.mjs} +1 -1
  20. package/dist/{canonical-model-yXnm9QTn.mjs → canonical-model-RhhrFer9.mjs} +1 -1
  21. package/dist/{capabilities-CEwSeTB3.mjs → capabilities-cWI1WpCq.mjs} +1 -1
  22. package/dist/{client-BsY0rMlE.mjs → client-CgtNXGXg.mjs} +1 -1
  23. package/dist/clients/index.d.mts +1 -1
  24. package/dist/clients/index.mjs +1 -1
  25. package/dist/clients/managed-install.d.mts +1 -1
  26. package/dist/clients/managed-install.mjs +1 -1
  27. package/dist/code-execution/worker-entry.d.mts +1 -1
  28. package/dist/code-execution/worker-entry.mjs +1 -1
  29. package/dist/{code-execution-xn9-x3VO.mjs → code-execution-BspFbEdT.mjs} +1 -1
  30. package/dist/{code-execution-BhUo84eg.mjs → code-execution-D3kZBdY4.mjs} +1 -1
  31. package/dist/{code-execution-ByLSAlEg2.mjs → code-execution-pUF4IO462.mjs} +1 -1
  32. package/dist/common-BnDruIuW.mjs +1 -0
  33. package/dist/{compression-odwEUBWb.mjs → compression-CPrVeC42.mjs} +1 -1
  34. package/dist/{config-namespace-CE3KasJn.mjs → config-namespace-BpvgI5UF.mjs} +1 -1
  35. package/dist/contracts/adapter/index.d.mts +2 -2
  36. package/dist/contracts/adapter/index.mjs +1 -1
  37. package/dist/contracts/adapter/schemas/session-lineage.d.mts +1 -1
  38. package/dist/contracts/artifact/index.d.mts +3 -3
  39. package/dist/contracts/artifact/index.mjs +1 -1
  40. package/dist/contracts/auth/index.d.mts +2 -2
  41. package/dist/contracts/auth/index.mjs +1 -1
  42. package/dist/contracts/automation-trigger/index.d.mts +3 -3
  43. package/dist/contracts/automation-trigger/index.mjs +1 -1
  44. package/dist/contracts/canonical-model/index.d.mts +1 -1
  45. package/dist/contracts/canonical-model/index.mjs +1 -1
  46. package/dist/contracts/capabilities/index.d.mts +1 -1
  47. package/dist/contracts/capabilities/index.mjs +1 -1
  48. package/dist/contracts/client/index.d.mts +2 -2
  49. package/dist/contracts/client/index.mjs +1 -1
  50. package/dist/contracts/code-execution/index.d.mts +1 -1
  51. package/dist/contracts/code-execution/index.mjs +1 -1
  52. package/dist/contracts/common/index.d.mts +1 -1
  53. package/dist/contracts/common/index.mjs +1 -1
  54. package/dist/contracts/config/index.d.mts +1 -1
  55. package/dist/contracts/config/index.mjs +1 -1
  56. package/dist/contracts/extension/index.d.mts +5 -5
  57. package/dist/contracts/extension/index.mjs +1 -1
  58. package/dist/contracts/facet/index.d.mts +1 -1
  59. package/dist/contracts/facet/index.mjs +1 -1
  60. package/dist/contracts/harness/index.d.mts +1 -1
  61. package/dist/contracts/harness/index.mjs +1 -1
  62. package/dist/contracts/host/index.d.mts +1 -1
  63. package/dist/contracts/host/index.mjs +1 -1
  64. package/dist/contracts/index.d.mts +84 -72
  65. package/dist/contracts/index.mjs +1 -1
  66. package/dist/contracts/materialization/index.d.mts +2 -2
  67. package/dist/contracts/materialization/index.mjs +1 -1
  68. package/dist/contracts/model-registry/index.d.mts +1 -1
  69. package/dist/contracts/model-registry/index.mjs +1 -1
  70. package/dist/contracts/native-session-supervisor/index.d.mts +1 -1
  71. package/dist/contracts/native-session-supervisor/index.mjs +1 -1
  72. package/dist/contracts/platform/index.d.mts +1 -1
  73. package/dist/contracts/platform/index.mjs +1 -1
  74. package/dist/contracts/provider/index.d.mts +2 -2
  75. package/dist/contracts/provider/index.mjs +1 -1
  76. package/dist/contracts/reaction/index.d.mts +1 -1
  77. package/dist/contracts/reaction/index.mjs +1 -1
  78. package/dist/contracts/session/index.d.mts +2 -2
  79. package/dist/contracts/session/index.mjs +1 -1
  80. package/dist/contracts/shared/index.d.mts +2 -2
  81. package/dist/contracts/shared/index.mjs +1 -1
  82. package/dist/contracts/skill/index.d.mts +1 -1
  83. package/dist/contracts/skill/index.mjs +1 -1
  84. package/dist/contracts/telemetry/index.d.mts +1 -1
  85. package/dist/contracts/telemetry/index.mjs +1 -1
  86. package/dist/contracts/timeout/index.d.mts +1 -1
  87. package/dist/contracts/timeout/index.mjs +1 -1
  88. package/dist/contracts/toast/index.mjs +1 -1
  89. package/dist/contracts/variant/index.d.mts +1 -1
  90. package/dist/contracts/variant/index.mjs +1 -1
  91. package/dist/contracts/worker/index.d.mts +2 -2
  92. package/dist/contracts/worker/index.mjs +1 -1
  93. package/dist/contracts/workflow/index.d.mts +2 -2
  94. package/dist/contracts/workflow/index.mjs +1 -1
  95. package/dist/{contribution-Cdz5WTYk.d.mts → contribution-DDbHzCPF.d.mts} +2 -2
  96. package/dist/{definition-DQNFO-Qz.d.mts → definition-CuaBQyde.d.mts} +1 -1
  97. package/dist/{definition-o5Dfg5j-.mjs → definition-Dd7bDWpP.mjs} +1 -1
  98. package/dist/{detached-extension-handle-BNvRSUVO.mjs → detached-extension-handle-DN3aqLyq.mjs} +1 -1
  99. package/dist/{dist-DMIaE8sg.mjs → dist-onY7e-pd.mjs} +1 -1
  100. package/dist/{execution-attempt-owner-recovery-D4APLAvt.mjs → execution-attempt-owner-recovery-CE_rvHKE.mjs} +1 -1
  101. package/dist/{execution-target-Ba7b_UmX.mjs → execution-target-CDeIBu4b.mjs} +1 -1
  102. package/dist/{extension-D9D8tJQY.mjs → extension-CnNcY1hR.mjs} +1 -1
  103. package/dist/{extension-DYBu49NH.mjs → extension-D8uLQSDc.mjs} +1 -1
  104. package/dist/{filesystem-service-hdz3oYti.mjs → filesystem-service-ClZEAw7E.mjs} +1 -1
  105. package/dist/{framework-packages-DdCJ4JsE.mjs → framework-packages-CCIReKIe.mjs} +1 -1
  106. package/dist/git/index.mjs +1 -1
  107. package/dist/{globby-Begk3aIP.mjs → globby-CxGKRBGC.mjs} +1 -1
  108. package/dist/{handlers-CqL2TWbk.mjs → handlers-mjky_fP2.mjs} +1 -1
  109. package/dist/{harness-CYzkReGi.mjs → harness-DBxywOGi.mjs} +1 -1
  110. package/dist/{hook-responses-DVjMuGh9.d.mts → hook-responses-Dq16X3Cb.d.mts} +1 -1
  111. package/dist/{index-CU9xmTkP.d.mts → index-B4pPwpKk.d.mts} +1 -1
  112. package/dist/{index-CK5GEXLB2.d.mts → index-BL_oWicz2.d.mts} +24 -24
  113. package/dist/{index-Caai1zAG.d.mts → index-C1nSuiG0.d.mts} +1 -1
  114. package/dist/{index-BgKU1PuR2.d.mts → index-C87P0WpY2.d.mts} +1 -1
  115. package/dist/{index-DUdGqxHD.d.mts → index-CIzvBH8O.d.mts} +1 -1
  116. package/dist/{index-B7VWSBm72.d.mts → index-CdWxSwhQ2.d.mts} +4 -4
  117. package/dist/{index-CdPWA8co.d.mts → index-Cq-2TSMB.d.mts} +26 -26
  118. package/dist/{index-WhgPewY4.d.mts → index-D0xS-mYt.d.mts} +17 -17
  119. package/dist/{index-DnZksNTM.d.mts → index-DQKVQPUS.d.mts} +1 -1
  120. package/dist/{index-KmZLl8Ne.d.mts → index-DSybRh-P.d.mts} +13 -13
  121. package/dist/{index-Ddk-kjif.d.mts → index-DViNBePi.d.mts} +3 -3
  122. package/dist/{index-DUH2eTyC.d.mts → index-DWANFpTG.d.mts} +1 -1
  123. package/dist/{index-BZrlHkpM2.d.mts → index-De_oh9M-2.d.mts} +1 -1
  124. package/dist/{index-DS1mI9GP.d.mts → index-Dm3d490n.d.mts} +1 -1
  125. package/dist/{index-LRAmVQLj.d.mts → index-DtCVHx8-.d.mts} +1 -1
  126. package/dist/{index-DhW9WHFS.d.mts → index-Du4wUv9q.d.mts} +8 -8
  127. package/dist/{index-EJFdPYs32.d.mts → index-DyVXhEBC2.d.mts} +3 -3
  128. package/dist/{index-Bt9YxVg5.d.mts → index-FR0ukOzj.d.mts} +85 -85
  129. package/dist/{index-BUoIGZmF2.d.mts → index-GFf4oKBg2.d.mts} +39 -39
  130. package/dist/{index-BLhNHkiK.d.mts → index-T-aAKybB.d.mts} +8 -8
  131. package/dist/{index-BXair-QK.d.mts → index-U--ajOHy.d.mts} +1 -1
  132. package/dist/{index-DN2Odrnz.d.mts → index-a_peDAyG.d.mts} +361 -4
  133. package/dist/{index-D6_5slJp.d.mts → index-oxZt93RL.d.mts} +2 -2
  134. package/dist/{index-CTNGL-cq2.d.mts → index-zmDRR8gv2.d.mts} +1 -1
  135. package/dist/json-tree-Cmb_BzHr.mjs +1 -0
  136. package/dist/kernel/cli/index.d.mts +2 -2
  137. package/dist/kernel/cli/index.mjs +1 -1
  138. package/dist/kernel/cli/register.d.mts +1 -1
  139. package/dist/kernel/cli/register.mjs +1 -1
  140. package/dist/kernel/cli/schemas.mjs +1 -1
  141. package/dist/kernel/extension/index.d.mts +1 -1
  142. package/dist/kernel/extension/index.mjs +1 -1
  143. package/dist/kernel/index.d.mts +5 -5
  144. package/dist/kernel/index.mjs +1 -1
  145. package/dist/kernel/namespace/index.d.mts +1 -1
  146. package/dist/kernel/namespace/index.mjs +1 -1
  147. package/dist/kernel/observability/index.d.mts +1 -1
  148. package/dist/kernel/observability/index.mjs +1 -1
  149. package/dist/kernel/providers/index.d.mts +1 -1
  150. package/dist/kernel/providers/index.mjs +1 -1
  151. package/dist/kernel/window/index.d.mts +1 -1
  152. package/dist/kernel/window/index.mjs +1 -1
  153. package/dist/kind-registration-BcNuwXPC.mjs +1 -0
  154. package/dist/{lib-D1-cvcTz.mjs → lib-BF5XBSfw.mjs} +1 -1
  155. package/dist/{lib-B1Mvm4hQ.mjs → lib-Dljw2Cqh.mjs} +1 -1
  156. package/dist/{load-extensions-bwisKaW0.mjs → load-extensions-BVgxTj_y.mjs} +1 -1
  157. package/dist/{load-extensions-D6SVKBPw.d.mts → load-extensions-DGstT4_p.d.mts} +1 -1
  158. package/dist/{materialization-DRr6CSXV.mjs → materialization-kP_vEXV3.mjs} +1 -1
  159. package/dist/mcp-http-server/index.mjs +1 -1
  160. package/dist/model-BPKGygMv.mjs +1 -0
  161. package/dist/namespace-BPf6AbBO.mjs +1 -0
  162. package/dist/{namespace-TX9DlWiQ.d.mts → namespace-BjDxqCi5.d.mts} +6 -6
  163. package/dist/{namespace-CD9mJGhU.mjs → namespace-CMntzAPI.mjs} +1 -1
  164. package/dist/{namespace-CQPcYS-Q.d.mts → namespace-CPGTaFqO.d.mts} +2 -2
  165. package/dist/{namespace--mFdPlbu.d.mts → namespace-C_tttgJ8.d.mts} +18 -18
  166. package/dist/{namespace-DyWNxLt1.d.mts → namespace-f6Kz5cwX.d.mts} +6 -6
  167. package/dist/{native-session-supervisor-i3PeijHn.mjs → native-session-supervisor-DtuN1Dgs.mjs} +1 -1
  168. package/dist/node/bus-server/index.d.mts +1 -1
  169. package/dist/node/bus-server/index.mjs +1 -1
  170. package/dist/node/bus-server/server-lifecycle.d.mts +1 -1
  171. package/dist/node/bus-server/server-lifecycle.mjs +1 -1
  172. package/dist/{orchestrator-shared-DMldWEah.mjs → orchestrator-shared-CtPB6PAr.mjs} +1 -1
  173. package/dist/{ownership-memory-handler-LXaweX6V.mjs → ownership-memory-handler-xex7sLiX.mjs} +1 -1
  174. package/dist/{package-BFto8lbP.mjs → package-BSz4hbav.mjs} +1 -1
  175. package/dist/{package-tvzH3A0x.mjs → package-Bn4iwDm3.mjs} +1 -1
  176. package/dist/{package-CnR_tOsW.d.mts → package-DdymauE9.d.mts} +1 -1
  177. package/dist/package.json +1 -1
  178. package/dist/{profile-Cjq4QnUQ.mjs → profile-1fvMljlJ.mjs} +1 -1
  179. package/dist/{provider-context-CYUUoI6x.mjs → provider-context-D6GIZ5DC.mjs} +1 -1
  180. package/dist/{provider-context-BpabfMlj.mjs → provider-context-DFTB8rsU.mjs} +1 -1
  181. package/dist/{reaction-Cev6JNcb.mjs → reaction-C8WbJqLk.mjs} +1 -1
  182. package/dist/{resolved-XQTiHgrA.mjs → resolved-BAbiCSV4.mjs} +1 -1
  183. package/dist/rules/index.d.mts +1 -1
  184. package/dist/rules/index.mjs +1 -1
  185. package/dist/rules/schemas.d.mts +1 -1
  186. package/dist/runtime-bun/index.mjs +1 -1
  187. package/dist/runtime-node/code-execution/index.d.mts +2 -2
  188. package/dist/runtime-node/code-execution/index.mjs +1 -1
  189. package/dist/runtime-node/extension-discovery.d.mts +1 -1
  190. package/dist/runtime-node/extension-validation.d.mts +1 -1
  191. package/dist/runtime-node/extension-validation.mjs +1 -1
  192. package/dist/runtime-node/index.d.mts +5 -5
  193. package/dist/runtime-node/index.mjs +2 -2
  194. package/dist/runtime-node/makaio-config.d.mts +1 -1
  195. package/dist/runtime-node/makaio-config.mjs +1 -1
  196. package/dist/runtime-node/workflow-worker/index.d.mts +1 -1
  197. package/dist/runtime-node/workflow-worker/index.mjs +1 -1
  198. package/dist/runtime-node/workflow-worker/worker-entry.mjs +1 -1
  199. package/dist/{schema-BVbkNHVQ.mjs → schema-Cz6-4_Dn.mjs} +1 -1
  200. package/dist/{schemas-Dt1YwXLN.d.mts → schemas-BOacpw3I.d.mts} +10 -10
  201. package/dist/{schemas-D9WJH6We.d.mts → schemas-CJKDu4Kt.d.mts} +1 -1
  202. package/dist/{schemas-CXCdmM5K.d.mts → schemas-CKVm28Oy.d.mts} +12 -1
  203. package/dist/{schemas-Fn-eeay32.d.mts → schemas-Ca5RILd-2.d.mts} +7 -7
  204. package/dist/{schemas-BGcAiQE0.d.mts → schemas-CeItAAQM.d.mts} +4 -4
  205. package/dist/{schemas-D9_OPuLB.mjs → schemas-ClkcU_N5.mjs} +1 -1
  206. package/dist/{schemas-pBrUJEN6.mjs → schemas-D-i0IAtA.mjs} +1 -1
  207. package/dist/{schemas-FkLOBJgq.d.mts → schemas-LiiyNNpr.d.mts} +4 -4
  208. package/dist/schemas-rlb0IQ-G.mjs +1 -0
  209. package/dist/{selection-D7V0wyHX.mjs → selection-DLN6l5iK.mjs} +1 -1
  210. package/dist/services/adapter-runtime/index.d.mts +3 -3
  211. package/dist/services/adapter-runtime/index.mjs +1 -1
  212. package/dist/services/adapter-runtime/namespace.d.mts +1 -1
  213. package/dist/services/adapter-runtime/schemas.d.mts +1 -1
  214. package/dist/services/adapter-subsystem/index.d.mts +3 -3
  215. package/dist/services/adapter-subsystem/index.mjs +1 -1
  216. package/dist/services/adapter-subsystem/namespace.d.mts +1 -1
  217. package/dist/services/adapter-subsystem/namespace.mjs +1 -1
  218. package/dist/services/agent-runtime/index.d.mts +2 -2
  219. package/dist/services/agent-runtime/namespace.d.mts +1 -1
  220. package/dist/services/agent-runtime/schemas.d.mts +1 -1
  221. package/dist/services/automation-trigger/index.mjs +1 -1
  222. package/dist/services/capability/index.d.mts +2 -2
  223. package/dist/services/capability/index.mjs +1 -1
  224. package/dist/services/code-execution/index.d.mts +1 -1
  225. package/dist/services/code-execution/index.mjs +1 -1
  226. package/dist/services/codebase/index.d.mts +2 -2
  227. package/dist/services/codebase/namespace.d.mts +1 -1
  228. package/dist/services/codebase/schemas.d.mts +1 -1
  229. package/dist/services/compression/index.d.mts +2 -2
  230. package/dist/services/compression/namespace.d.mts +1 -1
  231. package/dist/services/compression/schemas.d.mts +1 -1
  232. package/dist/services/context-rules/index.d.mts +4 -4
  233. package/dist/services/context-rules/index.mjs +1 -1
  234. package/dist/services/execution-target/index.d.mts +3 -3
  235. package/dist/services/execution-target/index.mjs +1 -1
  236. package/dist/services/execution-target/namespace.d.mts +1 -1
  237. package/dist/services/execution-target/namespace.mjs +1 -1
  238. package/dist/services/execution-target/schemas.d.mts +1 -1
  239. package/dist/services/execution-target/schemas.mjs +1 -1
  240. package/dist/services/filesystem/index.d.mts +1 -1
  241. package/dist/services/filesystem/index.mjs +1 -1
  242. package/dist/services/git/namespace.mjs +1 -1
  243. package/dist/services/git/schemas.mjs +1 -1
  244. package/dist/services/harness/index.mjs +1 -1
  245. package/dist/services/index.d.mts +58 -58
  246. package/dist/services/index.mjs +1 -1
  247. package/dist/services/log-import/browser.d.mts +2 -2
  248. package/dist/services/log-import/index.d.mts +2 -2
  249. package/dist/services/log-import/log-import.d.mts +1 -1
  250. package/dist/services/log-import/log-import.mjs +1 -1
  251. package/dist/services/log-import/namespace.mjs +1 -1
  252. package/dist/services/log-import/schemas.mjs +1 -1
  253. package/dist/services/materialization/index.d.mts +1 -1
  254. package/dist/services/materialization/index.mjs +1 -1
  255. package/dist/services/model-registry/index.d.mts +1 -1
  256. package/dist/services/model-registry/index.mjs +1 -1
  257. package/dist/services/preferences/index.d.mts +2 -2
  258. package/dist/services/preferences/schemas.d.mts +1 -1
  259. package/dist/services/preferences/storage-namespace.d.mts +2 -2
  260. package/dist/services/provider-context/index.d.mts +1 -1
  261. package/dist/services/provider-context/index.mjs +1 -1
  262. package/dist/services/provider-runtime/index.mjs +1 -1
  263. package/dist/services/session/handlers/index.d.mts +1 -1
  264. package/dist/services/session/handlers/index.mjs +1 -1
  265. package/dist/services/session/index.d.mts +9 -9
  266. package/dist/services/session/index.mjs +1 -1
  267. package/dist/services/session/messages/namespace.d.mts +1 -1
  268. package/dist/services/session/messages/namespace.mjs +1 -1
  269. package/dist/services/session/orchestrator-testing/index.d.mts +1 -1
  270. package/dist/services/session/orchestrator-testing/index.mjs +1 -1
  271. package/dist/services/session/session-events/namespace.d.mts +1 -1
  272. package/dist/services/session/session-events/namespace.mjs +1 -1
  273. package/dist/services/session/storage/namespace.d.mts +1 -1
  274. package/dist/services/session/storage/schema.d.mts +1 -1
  275. package/dist/services/session/testing/index.mjs +1 -1
  276. package/dist/services/session/testing/orchestrator-shared.d.mts +1 -1
  277. package/dist/services/session/testing/orchestrator-shared.mjs +1 -1
  278. package/dist/services/session/turns/namespace.d.mts +1 -1
  279. package/dist/services/session/turns/namespace.mjs +1 -1
  280. package/dist/services/session-editor/index.d.mts +1 -1
  281. package/dist/services/session-editor/index.mjs +1 -1
  282. package/dist/services/settings/index.d.mts +3 -3
  283. package/dist/services/settings/index.mjs +1 -1
  284. package/dist/services/settings/namespace.d.mts +10 -10
  285. package/dist/services/settings/namespace.mjs +1 -1
  286. package/dist/services/settings/storage/clients-namespace.d.mts +1 -1
  287. package/dist/services/settings/storage/clients-namespace.mjs +1 -1
  288. package/dist/services/settings/storage/extension-configs/namespace.d.mts +3 -3
  289. package/dist/services/settings/storage/index.d.mts +3 -3
  290. package/dist/services/settings/storage/index.mjs +1 -1
  291. package/dist/services/settings/storage/providers-namespace.d.mts +1 -1
  292. package/dist/services/settings/storage/providers-namespace.mjs +1 -1
  293. package/dist/services/subagent/index.d.mts +1 -1
  294. package/dist/services/subagent/index.mjs +1 -1
  295. package/dist/services/subagent-template/index.d.mts +2 -2
  296. package/dist/services/subagent-template/namespace.d.mts +1 -1
  297. package/dist/services/subagent-template/schemas.d.mts +1 -1
  298. package/dist/services/tool-approval/index.d.mts +1 -1
  299. package/dist/services/tool-approval/index.mjs +1 -1
  300. package/dist/services/tools/index.d.mts +1 -1
  301. package/dist/services/tools/index.mjs +1 -1
  302. package/dist/services/tray-menu/index.d.mts +3 -3
  303. package/dist/services/tray-menu/index.mjs +1 -1
  304. package/dist/services/tray-menu/namespace.d.mts +1 -1
  305. package/dist/services/tray-menu/schemas.d.mts +1 -1
  306. package/dist/services/turn/index.d.mts +1 -1
  307. package/dist/services/turn/namespace.d.mts +1 -1
  308. package/dist/services/workflow-transitions/index.d.mts +1 -1
  309. package/dist/services/workflow-transitions/index.mjs +1 -1
  310. package/dist/{session-CAKfa5o8.mjs → session-6UG5udTX.mjs} +1 -1
  311. package/dist/{session-BsQst2fC.mjs → session-BB0s7c2B.mjs} +1 -1
  312. package/dist/shared-Gb3kTtHs.mjs +1 -0
  313. package/dist/{skill-91kZNQnF.mjs → skill-B0jSQDvb.mjs} +1 -1
  314. package/dist/{src-BZdlyUxT.mjs → src-CbAw9kjJ.mjs} +1 -1
  315. package/dist/storage/drizzle/client.d.mts +1 -1
  316. package/dist/storage/drizzle/client.mjs +1 -1
  317. package/dist/storage/drizzle/index.d.mts +1 -1
  318. package/dist/storage/drizzle/index.mjs +1 -1
  319. package/dist/storage/handlers/drizzle/index.d.mts +1 -1
  320. package/dist/storage/handlers/drizzle/index.mjs +1 -1
  321. package/dist/storage/handlers/index.d.mts +1 -1
  322. package/dist/storage/handlers/index.mjs +1 -1
  323. package/dist/{storage-namespace-BUSNKZLw.d.mts → storage-namespace-IvLOIP7j.d.mts} +10 -10
  324. package/dist/{tool-approval-service-BV3WxxX6.mjs → tool-approval-service-pbkGcAV8.mjs} +1 -1
  325. package/dist/{tools-CElCajoS.mjs → tools-Dj_ImUQ8.mjs} +1 -1
  326. package/dist/{transition-B8XDvfD7.d.mts → transition-B-YmSK-s.d.mts} +2 -2
  327. package/dist/{types-HFQQoeAz.d.mts → types-7QB81mzR.d.mts} +18 -18
  328. package/dist/{types-DafDuOcH2.d.mts → types-CjYcHDPo2.d.mts} +1 -1
  329. package/dist/ui-kernel/index.d.mts +4 -4
  330. package/dist/ui-kernel/pages/namespace.d.mts +4 -4
  331. package/dist/ui-kernel/pages/schemas.d.mts +1 -1
  332. package/dist/{version-DdGhNoY5.mjs → version-PuU2KG3I.mjs} +1 -1
  333. package/dist/{view-builder-ADC1ng2t.d.mts → view-builder-Du0WV-So.d.mts} +1 -1
  334. package/dist/{visibility-cMXbf9nY.mjs → visibility-DCcfB817.mjs} +1 -1
  335. package/dist/{worker-B0xwfo9-.mjs → worker-Cgql5Xsm.mjs} +1 -1
  336. package/dist/{worker-CrYtBGy1.mjs → worker-DWEma08Q.mjs} +1 -1
  337. package/dist/{workflow-mCL6Xv-J.mjs → workflow-DA2yJJK-.mjs} +1 -1
  338. package/dist/workflow-engine/execution-attempt-repository.d.mts +1 -1
  339. package/dist/workflow-engine/execution-attempt-repository.mjs +1 -1
  340. package/dist/workflow-engine/index.d.mts +67 -67
  341. package/dist/workflow-engine/index.mjs +1 -1
  342. package/dist/workflow-engine/package.d.mts +1 -1
  343. package/dist/workflow-engine/package.mjs +1 -1
  344. package/dist/workflow-engine/provider-operation.d.mts +1 -1
  345. package/dist/workflow-engine/testing/conformance.d.mts +1 -1
  346. package/dist/workflow-engine/testing/conformance.mjs +1 -1
  347. package/dist/workflow-engine/testing/index.d.mts +1 -1
  348. package/dist/workflow-engine/testing/index.mjs +1 -1
  349. package/dist/workflow-engine/testing/sqlite.d.mts +1 -1
  350. package/dist/workflow-engine/testing/sqlite.mjs +1 -1
  351. package/dist/workflow-engine/workflow-orchestrator.mjs +1 -1
  352. package/dist/{workflow-transitions-DH246j6E.mjs → workflow-transitions-t6jn_pR_.mjs} +1 -1
  353. package/dist/{workflow-worker-BDA-E_pm.mjs → workflow-worker-C3ZbuhyA.mjs} +1 -1
  354. package/package.json +1 -1
  355. package/dist/artifact-B-PQO_TB.mjs +0 -1
  356. package/dist/authority-state-bootstrap-DVFYemDL.mjs +0 -1
  357. package/dist/bus-DU_7GM0J.mjs +0 -9
  358. package/dist/common-Bta2ivrd.mjs +0 -1
  359. package/dist/kind-registration-CyMf-vey.mjs +0 -1
  360. package/dist/model-Dya0clsM.mjs +0 -1
  361. package/dist/namespace-D53UGrP6.mjs +0 -1
  362. package/dist/schemas-BhkprYU1.mjs +0 -1
  363. package/dist/shared-m6jgT2a3.mjs +0 -1
  364. /package/dist/{adapter-auth-runtime-46Y9WKcB.mjs → adapter-auth-runtime-B6yX_QfG.mjs} +0 -0
  365. /package/dist/{adapter-binding-CZTWlcp9.d.mts → adapter-binding-BxjUfkOn.d.mts} +0 -0
  366. /package/dist/{ajv-Dz-0DD7m.mjs → ajv-Cvnmw2yn.mjs} +0 -0
  367. /package/dist/{attach-error-D5BWfaBO.mjs → attach-error-wNJ8Q5uU.mjs} +0 -0
  368. /package/dist/{attempt-control-evidence-BKw1U3wL.mjs → attempt-control-evidence-7lwRG73Y.mjs} +0 -0
  369. /package/dist/{attempt-fixtures-B8FSy_vs.mjs → attempt-fixtures-DHdYmr3o.mjs} +0 -0
  370. /package/dist/{base-orchestrator-C5Z9Aowq.d.mts → base-orchestrator-CrXiMJzf.d.mts} +0 -0
  371. /package/dist/{bootstrap-start-client-D7t7d9ty.mjs → bootstrap-start-client-C1ZHbv6e.mjs} +0 -0
  372. /package/dist/{capability-BnQx1BWc.mjs → capability-DXHYfKK0.mjs} +0 -0
  373. /package/dist/{capability-service-DX3wLjdt.d.mts → capability-service-CQ1aw_p-.d.mts} +0 -0
  374. /package/dist/{client-BsXMxeCN.d.mts → client-ByjHcS78.d.mts} +0 -0
  375. /package/dist/{client-binary-version-verifier-uMFQoKZj.d.mts → client-binary-version-verifier-C4fEAUdo.d.mts} +0 -0
  376. /package/dist/{client-binary-version-verifier-DLziUQhw.mjs → client-binary-version-verifier-DcHCFmsI.mjs} +0 -0
  377. /package/dist/{clients-namespace-1hXA6qNd.d.mts → clients-namespace-D4BxF2Nw.d.mts} +0 -0
  378. /package/dist/{config-namespace-Bpq9WOY4.d.mts → config-namespace-B1zyOYwH.d.mts} +0 -0
  379. /package/dist/{create-static-mount-Cr24q94C.mjs → create-static-mount-Dgxgi4W3.mjs} +0 -0
  380. /package/dist/{cross-spawn-Bi05YtQQ.mjs → cross-spawn-BMCAyqrN.mjs} +0 -0
  381. /package/dist/{cursor-storage-88xtgVAd.mjs → cursor-storage-BvjxwBW6.mjs} +0 -0
  382. /package/dist/{definition-Ckt_WmJw.d.mts → definition-ClWxAKQ2.d.mts} +0 -0
  383. /package/dist/{definitions-CyFaNG_c.mjs → definitions-Do7bP-u7.mjs} +0 -0
  384. /package/dist/{descriptor-to-package-GVZk9ZGT.mjs → descriptor-to-package-Dw8dnl5E.mjs} +0 -0
  385. /package/dist/{drizzle-BrlzkYoe.mjs → drizzle-_w6sUR8p.mjs} +0 -0
  386. /package/dist/{esm-B3t30-13.mjs → esm-Ccx-3z8E.mjs} +0 -0
  387. /package/dist/{event-DFI0F1Ws.mjs → event-D5_UaIBZ.mjs} +0 -0
  388. /package/dist/{execution-attempt-repository-BoNwNybg.d.mts → execution-attempt-repository-BUah8hma.d.mts} +0 -0
  389. /package/dist/{execution-attempt-repository-CWbgCTwA.mjs → execution-attempt-repository-aabFKcXN.mjs} +0 -0
  390. /package/dist/{extension-context-BGNUn34r.d.mts → extension-context-BH31eOMv.d.mts} +0 -0
  391. /package/dist/{extension-discovery-Dx118u_N.d.mts → extension-discovery-CA2IhDRo.d.mts} +0 -0
  392. /package/dist/{extension-namespace-AaHKv6tQ.mjs → extension-namespace-Ct9L6SKr.mjs} +0 -0
  393. /package/dist/{extension-package-provenance-Dr7JXjLS.mjs → extension-package-provenance-C7oO5JAE.mjs} +0 -0
  394. /package/dist/{facet-De-2AP_o.mjs → facet-DE2NhSjl.mjs} +0 -0
  395. /package/dist/{filesystem-service-DtApanQk.d.mts → filesystem-service-CDYoiwWY.d.mts} +0 -0
  396. /package/dist/{handler-CFT7_osu.mjs → handler-Cc1MhaR4.mjs} +0 -0
  397. /package/dist/{host-CbaJg6D4.mjs → host-efiCv7-R.mjs} +0 -0
  398. /package/dist/{identity-B6RqbCn7.mjs → identity-DgTjgflr.mjs} +0 -0
  399. /package/dist/{index-DqS8eCAT.d.mts → index-B78CRVi9.d.mts} +0 -0
  400. /package/dist/{index-BNgNBDuW2.d.mts → index-B8v1-2-V2.d.mts} +0 -0
  401. /package/dist/{index-1AKlC3kZ.d.mts → index-BCU5oByg.d.mts} +0 -0
  402. /package/dist/{index-CIl66QhT.d.mts → index-BFS-2kcS.d.mts} +0 -0
  403. /package/dist/{index-Dv5aNxoa.d.mts → index-BGnQ0EyD.d.mts} +0 -0
  404. /package/dist/{index-qLkIGcgv2.d.mts → index-BPNfYEA22.d.mts} +0 -0
  405. /package/dist/{index-B4lidHiL.d.mts → index-BZoOYV-y.d.mts} +0 -0
  406. /package/dist/{index-C3n8beRR.d.mts → index-BbkcbY6d.d.mts} +0 -0
  407. /package/dist/{index-DSRxn5Zr2.d.mts → index-CVRT01082.d.mts} +0 -0
  408. /package/dist/{index-C0zo4Id_.d.mts → index-CjDQn6lw.d.mts} +0 -0
  409. /package/dist/{index-CUcEfh31.d.mts → index-D6liU_KS.d.mts} +0 -0
  410. /package/dist/{index-DLsopffG.d.mts → index-D6p17KPs.d.mts} +0 -0
  411. /package/dist/{index-DxxORQny.d.mts → index-D8ELwT5y.d.mts} +0 -0
  412. /package/dist/{index-5KVPGsig.d.mts → index-DAaQ--ki.d.mts} +0 -0
  413. /package/dist/{index-DK8lSIvY.d.mts → index-DM72_93s.d.mts} +0 -0
  414. /package/dist/{index-Dfv9hyZE.d.mts → index-DXQTkwLB.d.mts} +0 -0
  415. /package/dist/{index-DNN9jOVO.d.mts → index-DdVpWkaI.d.mts} +0 -0
  416. /package/dist/{index-C86rKLPD.d.mts → index-DfU8s_xP.d.mts} +0 -0
  417. /package/dist/{index-CrDp6vHG.d.mts → index-DiZ4LmyE.d.mts} +0 -0
  418. /package/dist/{index-CzKJC3Bt.d.mts → index-DjSUOMlr.d.mts} +0 -0
  419. /package/dist/{index-DO0QO0ux2.d.mts → index-DmX9W3xH2.d.mts} +0 -0
  420. /package/dist/{index-lLuIAmRB.d.mts → index-F7cVpFJ9.d.mts} +0 -0
  421. /package/dist/{index-D4FE3jHM2.d.mts → index-Htfr-K5U2.d.mts} +0 -0
  422. /package/dist/{index-tCFckLG6.d.mts → index-KdlZRuTp.d.mts} +0 -0
  423. /package/dist/{index-Bw7benCh.d.mts → index-gAyARaKS.d.mts} +0 -0
  424. /package/dist/{index-fpGFhEmI.d.mts → index-nkix3hP7.d.mts} +0 -0
  425. /package/dist/{index-DyBuGOvY.d.mts → index-tbjIqwa3.d.mts} +0 -0
  426. /package/dist/{json-value-DyMQrwGz.d.mts → json-value-Ymw2f8i_.d.mts} +0 -0
  427. /package/dist/{jsonl-transport-D4ch0vsf.mjs → jsonl-transport-Bg033Ng0.mjs} +0 -0
  428. /package/dist/{lib-BLdnqIFF.mjs → lib-BizqbepU.mjs} +0 -0
  429. /package/dist/{model-registry-CAqJYbXg.mjs → model-registry-CeDu27XL.mjs} +0 -0
  430. /package/dist/{model-registry-DVTFd0RF.mjs → model-registry-Cmregilq.mjs} +0 -0
  431. /package/dist/{modes-Dc9_sSbr.mjs → modes-DpHQos5B.mjs} +0 -0
  432. /package/dist/{namespace-CYYFqmtJ.d.mts → namespace-B5IFLQc-.d.mts} +0 -0
  433. /package/dist/{namespace-C-4xI2rm.d.mts → namespace-BCVKdu-U.d.mts} +0 -0
  434. /package/dist/{namespace-0TfAY2J7.mjs → namespace-BMdYJN_t.mjs} +0 -0
  435. /package/dist/{namespace-BZ7UQmW4.mjs → namespace-Bjr04AUK.mjs} +0 -0
  436. /package/dist/{namespace-BnNBM94X.mjs → namespace-Bo6-o_rW.mjs} +0 -0
  437. /package/dist/{namespace-E4ajXk0W.d.mts → namespace-C1pPZKtI.d.mts} +0 -0
  438. /package/dist/{namespace-CDoyzyV4.mjs → namespace-C9xmGXbW.mjs} +0 -0
  439. /package/dist/{namespace-Dwf7aOLt.d.mts → namespace-COHHDh2I.d.mts} +0 -0
  440. /package/dist/{namespace-CvCk6Y9i.d.mts → namespace-Cmu-5_P9.d.mts} +0 -0
  441. /package/dist/{namespace-DGi7tw_W.mjs → namespace-CnRQ8tCJ.mjs} +0 -0
  442. /package/dist/{namespace-DXrdGpbs.d.mts → namespace-CvK86QFk.d.mts} +0 -0
  443. /package/dist/{namespace-Bivbsfms.d.mts → namespace-DM5vykb7.d.mts} +0 -0
  444. /package/dist/{namespace-KYIbWPvl.mjs → namespace-J87EeVTm.mjs} +0 -0
  445. /package/dist/{namespace-CfNNUjVv.d.mts → namespace-UFcDEBJB.d.mts} +0 -0
  446. /package/dist/{namespace-l1Rcc4mp.d.mts → namespace-rJ3ycPMg.d.mts} +0 -0
  447. /package/dist/{namespace-XUB3XnBK.d.mts → namespace-s0e215xO.d.mts} +0 -0
  448. /package/dist/{orchestrator-shared-D2I9gyOl.d.mts → orchestrator-shared--srEeSaY.d.mts} +0 -0
  449. /package/dist/{out-og8659Ny.mjs → out-EjlaPopg.mjs} +0 -0
  450. /package/dist/{ownership-recovery-guard-BIB5uqgz.mjs → ownership-recovery-guard-C9h8K1jo.mjs} +0 -0
  451. /package/dist/{package-BecmlOXC.mjs → package-BCKYMTYG.mjs} +0 -0
  452. /package/dist/{package-D2zvQO7X.mjs → package-BwlW7N32.mjs} +0 -0
  453. /package/dist/{packages-Dj9Nul23.d.mts → packages-B98-WETs.d.mts} +0 -0
  454. /package/dist/{packages-DAw3Z011.mjs → packages-G3bMStlV.mjs} +0 -0
  455. /package/dist/{platform-BObC-WJA.mjs → platform-Cojuulx8.mjs} +0 -0
  456. /package/dist/{providers-BysYiNMO.mjs → providers-CahjB0Kh.mjs} +0 -0
  457. /package/dist/{providers-namespace-BA0JT--_.d.mts → providers-namespace-DRcl03bo.d.mts} +0 -0
  458. /package/dist/{quick-lru-bVGGo5bq.mjs → quick-lru-C1yB5RCQ.mjs} +0 -0
  459. /package/dist/{registry-Cu3eD3UY.mjs → registry-DNMjJ-Oj.mjs} +0 -0
  460. /package/dist/{repo-context-Dy6eE9cg.mjs → repo-context-cO-TLEGN.mjs} +0 -0
  461. /package/dist/{runtime-inputs-CIYLDuBM.d.mts → runtime-inputs-DBtVIy9h.d.mts} +0 -0
  462. /package/dist/{schema-B098Jz9p.d.mts → schema-BA1cHBbc.d.mts} +0 -0
  463. /package/dist/{schema-bfw9nz8B.mjs → schema-BnuyCklU.mjs} +0 -0
  464. /package/dist/{schema-introspection-BTS7FZT_.mjs → schema-introspection-_Yw9L_mB.mjs} +0 -0
  465. /package/dist/{schemas-BE-gfjGI.mjs → schemas-BNRFKQdz.mjs} +0 -0
  466. /package/dist/{schemas-A2hlgeNu.mjs → schemas-BmoFWBdh.mjs} +0 -0
  467. /package/dist/{schemas-DKy_XYjq.d.mts → schemas-CEJe8O6P.d.mts} +0 -0
  468. /package/dist/{schemas-DChhgfU0.d.mts → schemas-Cj6Gbqch.d.mts} +0 -0
  469. /package/dist/{schemas-D6JvwH-h.d.mts → schemas-Cq1d5tid.d.mts} +0 -0
  470. /package/dist/{schemas-BZyi7v9g.d.mts → schemas-CtzZDp29.d.mts} +0 -0
  471. /package/dist/{schemas-ADuQFkhH.d.mts → schemas-DJ2vMsgm.d.mts} +0 -0
  472. /package/dist/{schemas-DMxM4U1A.d.mts → schemas-D_-iXLQ9.d.mts} +0 -0
  473. /package/dist/{schemas-BEDq3Psz.mjs → schemas-DekYSXka.mjs} +0 -0
  474. /package/dist/{schemas-B3UNnzKG.mjs → schemas-Djjq4LLs.mjs} +0 -0
  475. /package/dist/{schemas-mLjTSUvJ.mjs → schemas-hTUdjOh7.mjs} +0 -0
  476. /package/dist/{semver-ByPlHR3P.mjs → semver-Cb5Um3tU.mjs} +0 -0
  477. /package/dist/{server-lifecycle-C5Vl58sN.mjs → server-lifecycle-BjbuCO-s.mjs} +0 -0
  478. /package/dist/{server-lifecycle-B8UabaW3.d.mts → server-lifecycle-DUKp1Fbf.d.mts} +0 -0
  479. /package/dist/{session-lineage-CoNs4WZy.d.mts → session-lineage-C3myyt5x.d.mts} +0 -0
  480. /package/dist/{shared-schemas-CKsgVsGX.mjs → shared-schemas-CnOyMY42.mjs} +0 -0
  481. /package/dist/{src-D9PYcdDS.mjs → src-Xn6SS74f.mjs} +0 -0
  482. /package/dist/{storage-namespace-DBuKMBth.mjs → storage-namespace-TBX8VgK3.mjs} +0 -0
  483. /package/dist/{storage-namespace-definition-Ct9ohqU0.mjs → storage-namespace-definition-BUpCw171.mjs} +0 -0
  484. /package/dist/{storage-namespace-definition-1uCuoHvM.d.mts → storage-namespace-definition-Cv0XiTXb.d.mts} +0 -0
  485. /package/dist/{supports-color-DG_rcVqJ.mjs → supports-color-CjiFmM1U.mjs} +0 -0
  486. /package/dist/{telemetry-Be3u4I7b.mjs → telemetry-DXMqxYcv.mjs} +0 -0
  487. /package/dist/{timeout-Bscg1B-y.mjs → timeout-CATUeNuL.mjs} +0 -0
  488. /package/dist/{tray-menu-service-BGwXKJYr.mjs → tray-menu-service-BRrnoqaY.mjs} +0 -0
  489. /package/dist/{types-nY8yr3th.d.mts → types-BRM1AZaP.d.mts} +0 -0
  490. /package/dist/{types-RWRXplnM.d.mts → types-BYEybzjX.d.mts} +0 -0
  491. /package/dist/{types-Bh2fQoxM.mjs → types-CsmvIK25.mjs} +0 -0
  492. /package/dist/{types-CbXf822E.d.mts → types-QRSc2AUU.d.mts} +0 -0
  493. /package/dist/{types-BlaguWul.d.mts → types-QsyX4H21.d.mts} +0 -0
  494. /package/dist/{types-KF8zuMhi.d.mts → types-hkExapGH.d.mts} +0 -0
  495. /package/dist/{ui-config-Bl2Wbkr-.mjs → ui-config-D1jxR-dU.mjs} +0 -0
  496. /package/dist/{variant-B5j5wR2p.mjs → variant-CmSVU3LE.mjs} +0 -0
  497. /package/dist/{window-registry-DWHz8TA5.mjs → window-registry-2MZdZPdA.mjs} +0 -0
  498. /package/dist/{window-registry-Dq5uOWpH.d.mts → window-registry-DeG37kt8.d.mts} +0 -0
  499. /package/dist/{zod-json-schema-DGWHUOK0.mjs → zod-json-schema-ZUmGtQhT.mjs} +0 -0
@@ -0,0 +1 @@
1
+ import{o as e}from"./chunk-DTipWd-i.mjs";import{t}from"./ajv-Cvnmw2yn.mjs";import{z as n}from"zod";import{execFile as r}from"node:child_process";import{isDeepStrictEqual as i}from"node:util";import{isAbsolute as a,relative as o,resolve as s}from"node:path";import{randomUUID as c}from"node:crypto";import{realpathSync as l}from"node:fs";import{localSubject as u}from"@makaio/framework/core";import{ArtifactSchemas as d,ArtifactSubjects as f,ExecutionAttemptInstructionSchema as p,ExecutionAttemptOutcomeSchema as m,ExecutionLinkListQuerySchema as h,ExecutionLinkSchema as g,ExecutionListQuerySchema as _,ExecutionStatusSchema as v,ExecutionsByArtifactRefsQuerySchema as y,GateInstanceListQuerySchema as b,JsonPatchOperationSchema as x,JsonValueSchema as S,SessionSubjects as C,SpanRecordSchema as ee,SubagentSubjects as w,WORKFLOW_CANCELLED_REASON as te,WorkLogFrameEntrySchema as ne,WorkerSubjects as re,WorkflowDefinitionSchema as ie,WorkflowError as ae,WorkflowErrorCode as oe,WorkflowExecutionSchema as T,WorkflowFinalizationClaimSchema as se,WorkflowFinalizerIdSchema as ce,WorkflowFrameStateSchema as le,WorkflowGateInstanceSchema as E,WorkflowListQuerySchema as ue,WorkflowRunContextSchema as D,WorkflowRunResultSchema as de,WorkflowSchemas as fe,WorkflowSubjects as pe,WorkflowSubjects as O,createStepCancelSubject as me,createWorkflowDelegateResultFinalizerNamespace as he,sortJsonValue as ge,walkWorkflowDefinition as _e}from"@makaio/framework/contracts";import{NoHandlerError as ve}from"@makaio/framework/bus";import{index as k,primaryKey as ye,uniqueIndex as be}from"drizzle-orm/sqlite-core";import{index as A,primaryKey as xe,uniqueIndex as Se}from"drizzle-orm/pg-core";import{defineDualTable as j}from"@makaio/framework/storage/drizzle";import{sql as Ce}from"drizzle-orm";import{createStorageNamespaceDefinition as we}from"@makaio/framework/storage";import{evaluateSync as M,resolveTemplate as N}from"@makaio/framework/expression";import*as Te from"node:os";const Ee=j(`workflow_finalizations`,e=>({executionId:e.text(`execution_id`).primaryKey().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),workflowId:e.text(`workflow_id`).notNull(),finalizerId:e.text(`finalizer_id`).notNull(),transitionKey:e.text(`transition_key`).notNull(),claimToken:e.text(`claim_token`).notNull(),intent:e.jsonCol(`intent`).notNull(),state:e.textEnum(`state`,{enum:[`claimed`,`acknowledged`,`failed`]}).notNull(),claimedAt:e.epochMs(`claimed_at`).notNull(),settledAt:e.epochMs(`settled_at`),failure:e.text(`failure`),publishedAt:e.epochMs(`published_at`)}),{sqlite:e=>[be(`uniq_workflow_finalizations_transition`).on(e.transitionKey),k(`idx_workflow_finalizations_recovery`).on(e.finalizerId,e.state)],postgres:e=>[Se(`uniq_workflow_finalizations_transition`).on(e.transitionKey),A(`idx_workflow_finalizations_recovery`).on(e.finalizerId,e.state)]}),De=Ee.sqlite;Ee.postgres;function Oe(e){return{scopeType:e.textEnum(`scope_type`,{enum:[`global`,`workspace`,`session`,`external`]}).notNull().$type(),scopeKind:e.text(`scope_kind`).notNull().default(``),scopeId:e.text(`scope_id`).notNull().default(``)}}const ke=j(`workflow_definitions`,e=>({id:e.text(`id`).primaryKey(),name:e.text(`name`).notNull(),description:e.text(`description`),root:e.jsonCol(`root`).notNull(),inputSchema:e.jsonCol(`input_schema`),configSchema:e.jsonCol(`config_schema`),outputSchema:e.jsonCol(`output_schema`),state:e.jsonCol(`state`),artifact:e.jsonCol(`artifact`),triggers:e.jsonCol(`triggers`),...Oe(e),createdAt:e.epochMs(`created_at`).notNull(),updatedAt:e.epochMs(`updated_at`).notNull(),canvasLayout:e.jsonCol(`canvas_layout`),source:e.jsonCol(`source`),executableSource:e.jsonCol(`executable_source`),requirements:e.jsonCol(`requirements`),successFinalizerId:e.text(`success_finalizer_id`)}),{sqlite:e=>[be(`uniq_workflow_definitions_name_scope`).on(e.name,e.scopeType,e.scopeKind,e.scopeId),k(`idx_workflow_definitions_scope`).on(e.scopeType,e.scopeKind,e.scopeId)],postgres:e=>[Se(`uniq_workflow_definitions_name_scope`).on(e.name,e.scopeType,e.scopeKind,e.scopeId),A(`idx_workflow_definitions_scope`).on(e.scopeType,e.scopeKind,e.scopeId)]}),Ae=ke.sqlite,P=j(`workflow_executions`,e=>({id:e.text(`id`).primaryKey(),workflowId:e.text(`workflow_id`).notNull(),coordinatorSessionId:e.text(`coordinator_session_id`),status:e.textEnum(`status`,{enum:[`pending`,`running`,`paused`,`finalizing`,`completed`,`failed`,`cancelled`]}).notNull(),inputs:e.jsonCol(`inputs`),error:e.text(`error`),reason:e.text(`reason`),startedAt:e.epochMs(`started_at`).notNull(),completedAt:e.epochMs(`completed_at`),externalSettlementFingerprint:e.text(`external_settlement_fingerprint`),externalRegistrationFrameId:e.text(`external_registration_frame_id`),triggerPayload:e.jsonCol(`trigger_payload`),artifactKind:e.text(`artifact_kind`),artifactId:e.text(`artifact_id`),...Oe(e)}),{sqlite:e=>[k(`idx_workflow_executions_status`).on(e.status),k(`idx_workflow_executions_scope_started`).on(e.scopeType,e.scopeKind,e.scopeId,e.startedAt),k(`idx_workflow_executions_workflow_started`).on(e.workflowId,e.startedAt),k(`idx_workflow_executions_artifact`).on(e.artifactKind,e.artifactId,e.startedAt)],postgres:e=>[A(`idx_workflow_executions_status`).on(e.status),A(`idx_workflow_executions_scope_started`).on(e.scopeType,e.scopeKind,e.scopeId,e.startedAt),A(`idx_workflow_executions_workflow_started`).on(e.workflowId,e.startedAt),A(`idx_workflow_executions_artifact`).on(e.artifactKind,e.artifactId,e.startedAt)]}),je=P.sqlite,Me=j(`workflow_execution_frames`,e=>({frameId:e.text(`frame_id`).primaryKey(),executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),nodeId:e.text(`node_id`).notNull(),nodeType:e.text(`node_type`).notNull().$type(),path:e.jsonCol(`path`).notNull(),parentFrameId:e.text(`parent_frame_id`),status:e.text(`status`).notNull().default(`pending`).$type(),attempt:e.int4(`attempt`).notNull().default(0),iteration:e.int4(`iteration`),branchKey:e.text(`branch_key`),output:e.jsonCol(`output`),outputPresent:e.bool(`output_present`).notNull().default(!1),error:e.text(`error`),startedAt:e.epochMs(`started_at`),completedAt:e.epochMs(`completed_at`)}),{sqlite:e=>[k(`idx_workflow_execution_frames_execution`).on(e.executionId),k(`idx_workflow_execution_frames_parent`).on(e.parentFrameId)],postgres:e=>[A(`idx_workflow_execution_frames_execution`).on(e.executionId),A(`idx_workflow_execution_frames_parent`).on(e.parentFrameId)]}),Ne=Me.sqlite,Pe=j(`workflow_gate_instances`,e=>({id:e.text(`id`).primaryKey(),executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),nodeId:e.text(`node_id`).notNull(),frameId:e.text(`frame_id`).notNull(),schema:e.jsonCol(`schema`).notNull(),prompt:e.text(`prompt`),status:e.text(`status`).notNull().default(`waiting`).$type(),autoAction:e.textEnum(`auto_action`,{enum:[`approve`,`reject`]}).notNull().default(`reject`),timeoutMs:e.int4(`timeout_ms`),resumeData:e.jsonCol(`resume_data`),reason:e.text(`reason`),resumeDataPresent:e.bool(`resume_data_present`).notNull().default(!1),createdAt:e.epochMs(`created_at`).notNull(),resolvedAt:e.epochMs(`resolved_at`)}),{sqlite:e=>[k(`idx_workflow_gate_instances_execution`).on(e.executionId),k(`idx_workflow_gate_instances_frame`).on(e.frameId)],postgres:e=>[A(`idx_workflow_gate_instances_execution`).on(e.executionId),A(`idx_workflow_gate_instances_frame`).on(e.frameId)]}),Fe=Pe.sqlite,Ie=j(`workflow_step_spans`,e=>({executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),frameId:e.text(`frame_id`).notNull(),stepId:e.text(`step_id`).notNull(),stepType:e.text(`step_type`).notNull(),status:e.text(`status`).$type().notNull(),startedAt:e.epochMs(`started_at`),completedAt:e.epochMs(`completed_at`),durationMs:e.int4(`duration_ms`),inputTokens:e.int4(`input_tokens`),outputTokens:e.int4(`output_tokens`),estimatedCost:e.float8(`estimated_cost`),toolCallCount:e.int4(`tool_call_count`),input:e.text(`input`),output:e.text(`output`)}),{sqlite:e=>[ye({columns:[e.executionId,e.frameId]}),k(`idx_workflow_step_spans_status`).on(e.status)],postgres:e=>[xe({columns:[e.executionId,e.frameId]}),A(`idx_workflow_step_spans_status`).on(e.status)]}),Le=Ie.sqlite,Re=j(`workflow_execution_links`,e=>({sourceExecutionId:e.text(`source_execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),targetExecutionId:e.text(`target_execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),linkType:e.text(`link_type`).$type().notNull(),metadata:e.jsonCol(`metadata`)}),{sqlite:e=>[ye({columns:[e.sourceExecutionId,e.targetExecutionId]}),k(`idx_workflow_execution_links_target`).on(e.targetExecutionId)],postgres:e=>[xe({columns:[e.sourceExecutionId,e.targetExecutionId]}),A(`idx_workflow_execution_links_target`).on(e.targetExecutionId)]}),ze=Re.sqlite,Be=j(`workflow_run_contexts`,e=>({executionId:e.text(`execution_id`).primaryKey().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),workflowId:e.text(`workflow_id`).notNull(),coordinatorSessionId:e.text(`coordinator_session_id`).notNull(),sourceKind:e.text(`source_kind`).notNull(),sourcePath:e.text(`source_path`),sourceFilename:e.text(`source_filename`),sourceCode:e.text(`source_code`),definitionSnapshot:e.jsonCol(`definition_snapshot`),workerManifest:e.jsonCol(`worker_manifest`).notNull(),inputs:e.jsonCol(`inputs`),config:e.jsonCol(`config`).notNull().default(Ce`'{}'`),triggerPayload:e.jsonCol(`trigger_payload`).notNull(),triggerMode:e.textEnum(`trigger_mode`,{enum:[`immediate`,`await-trigger`]}).notNull().default(`immediate`).$type(),artifactRef:e.jsonCol(`artifact_ref`),dispatchMetadata:e.jsonCol(`dispatch_metadata`),scopeType:e.textEnum(`scope_type`,{enum:[`global`,`workspace`,`session`,`external`]}).notNull().default(`global`).$type(),scopeKind:e.text(`scope_kind`).notNull().default(``),scopeId:e.text(`scope_id`).notNull().default(``),cancelSubject:e.text(`cancel_subject`).notNull(),env:e.jsonCol(`env`).notNull(),createdAt:e.epochMs(`created_at`).notNull(),suspensionStrategy:e.text(`suspension_strategy`).$type(),terminalAuthority:e.text(`terminal_authority`).$type(),materializationSpec:e.jsonCol(`materialization_spec`)}),{sqlite:e=>[k(`idx_run_contexts_workflow`).on(e.workflowId)],postgres:e=>[A(`idx_run_contexts_workflow`).on(e.workflowId)]}),Ve=Be.sqlite,He=j(`worklog_summaries`,e=>({executionId:e.text(`execution_id`).primaryKey().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),workflowId:e.text(`workflow_id`).notNull(),workflowName:e.text(`workflow_name`),status:e.textEnum(`status`,{enum:[`pending`,`running`,`paused`,`finalizing`,`completed`,`failed`,`cancelled`]}).notNull(),startedAt:e.epochMs(`started_at`).notNull(),completedAt:e.epochMs(`completed_at`),durationMs:e.int4(`duration_ms`),totalInputTokens:e.int4(`total_input_tokens`),totalOutputTokens:e.int4(`total_output_tokens`),totalEstimatedCost:e.float8(`total_estimated_cost`),error:e.text(`error`),failedNodeId:e.text(`failed_node_id`)}),{sqlite:e=>[k(`idx_worklog_summaries_workflow_started`).on(e.workflowId,e.startedAt),k(`idx_worklog_summaries_status`).on(e.status)],postgres:e=>[A(`idx_worklog_summaries_workflow_started`).on(e.workflowId,e.startedAt),A(`idx_worklog_summaries_status`).on(e.status)]}),Ue=He.sqlite,We=j(`worklog_frame_entries`,e=>({frameId:e.text(`frame_id`).primaryKey(),executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),nodeId:e.text(`node_id`).notNull(),nodeType:e.text(`node_type`).notNull().$type(),path:e.jsonCol(`path`).notNull(),status:e.textEnum(`status`,{enum:[`pending`,`running`,`waiting`,`completed`,`failed`,`skipped`,`cancelled`]}).notNull(),attempt:e.int4(`attempt`).notNull().default(0),iteration:e.int4(`iteration`),branchKey:e.text(`branch_key`),startedAt:e.epochMs(`started_at`),completedAt:e.epochMs(`completed_at`),durationMs:e.int4(`duration_ms`),inputTokens:e.int4(`input_tokens`),outputTokens:e.int4(`output_tokens`),estimatedCost:e.float8(`estimated_cost`),error:e.text(`error`)}),{sqlite:e=>[k(`idx_worklog_frame_entries_execution`).on(e.executionId)],postgres:e=>[A(`idx_worklog_frame_entries_execution`).on(e.executionId)]}),Ge=We.sqlite,Ke=j(`worklog_artifact_writes`,e=>({id:e.text(`id`).primaryKey(),executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),frameId:e.text(`frame_id`).notNull(),nodeId:e.text(`node_id`).notNull(),artifact:e.jsonCol(`artifact`).notNull(),revision:e.text(`revision`),writtenAt:e.epochMs(`written_at`).notNull()}),{sqlite:e=>[k(`idx_worklog_artifact_writes_execution`).on(e.executionId)],postgres:e=>[A(`idx_worklog_artifact_writes_execution`).on(e.executionId)]}),qe=Ke.sqlite,Je=j(`worklog_gate_events`,e=>({id:e.text(`id`).primaryKey(),executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),nodeId:e.text(`node_id`).notNull(),frameId:e.text(`frame_id`).notNull(),status:e.textEnum(`status`,{enum:[`waiting`,`resumed`,`rejected`,`timed-out`,`cancelled`]}).notNull().$type(),prompt:e.text(`prompt`),openedAt:e.epochMs(`opened_at`).notNull(),resolvedAt:e.epochMs(`resolved_at`),resumeData:e.jsonCol(`resume_data`)}),{sqlite:e=>[k(`idx_worklog_gate_events_execution`).on(e.executionId),k(`idx_worklog_gate_events_status`).on(e.status)],postgres:e=>[A(`idx_worklog_gate_events_execution`).on(e.executionId),A(`idx_worklog_gate_events_status`).on(e.status)]}),Ye=Je.sqlite,Xe=j(`workflow_execution_state`,e=>({executionId:e.text(`execution_id`).primaryKey().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),sequence:e.int4(`sequence`).notNull().default(0),value:e.jsonCol(`value`).notNull(),updatedAt:e.epochMs(`updated_at`).notNull()})),Ze=Xe.sqlite,Qe=j(`workflow_execution_state_events`,e=>({executionId:e.text(`execution_id`).notNull().references(()=>P.columnPair(`id`),{onDelete:`cascade`}),sequence:e.int4(`sequence`).notNull(),patch:e.jsonCol(`patch`).notNull(),value:e.jsonCol(`value`).notNull(),createdAt:e.epochMs(`created_at`).notNull()}),{sqlite:e=>[ye({columns:[e.executionId,e.sequence]})],postgres:e=>[xe({columns:[e.executionId,e.sequence]})]}),$e=Qe.sqlite,et=n.object({executionId:n.string().min(1),status:v.optional(),error:n.string().nullable().optional(),reason:n.string().nullable().optional(),completedAt:n.number().nullable().optional()}),tt=n.enum([`completed`,`failed`,`cancelled`]),nt=ne.extend({status:n.literal(`running`),startedAt:n.number().int().nonnegative()}),rt=ne.extend({status:tt,startedAt:n.number().int().nonnegative(),completedAt:n.number().int().nonnegative(),durationMs:n.number().int().nonnegative()}),it=we(`workflow`,{schemas:{get:{request:n.object({id:n.string()}),response:n.object({workflow:ie.nullable()})},set:{request:n.object({workflow:ie}),response:n.object({id:n.string()})},delete:{request:n.object({id:n.string()}),response:n.object({deleted:n.boolean()})},list:{request:ue,response:n.object({workflows:n.array(ie)})},getExecution:{request:n.object({executionId:n.string()}),response:n.object({execution:T.nullable()})},setExecution:{request:n.object({execution:T}),response:n.object({id:n.string()})},setExecutionStart:{request:n.object({execution:T,runContext:D,initialState:S.optional(),executionLinks:n.array(g).optional()}),response:n.object({id:n.string(),executionId:n.string()})},setExternalExecutionStart:u({request:n.object({execution:T.extend({status:n.literal(`running`)}),frame:nt.optional()}),response:n.object({executionId:n.string(),frameId:n.string().optional()})}),settleExternalExecution:u({request:n.object({executionId:n.string().min(1),status:tt,error:n.string().min(1).optional(),reason:n.string().min(1).optional(),completedAt:n.number().int().nonnegative().optional(),frame:rt.optional()}),response:n.object({success:n.boolean()})}),updateExecution:{request:et,response:n.object({success:n.boolean()})},pauseRunningExecution:u({request:n.object({executionId:n.string().min(1)}),response:n.object({paused:n.boolean()})}),claimFinalization:u({request:n.object({claim:se}),response:n.object({claimed:n.boolean()})}),listClaimedFinalizations:u({request:n.object({finalizerId:ce}),response:n.object({claims:n.array(se)})}),listUnpublishedFinalizations:u({request:n.object({finalizerId:ce}),response:n.object({claims:n.array(se)})}),publishFinalization:u({request:n.object({claim:se}),response:n.object({})}),acknowledgeFinalization:u({request:n.object({executionId:n.string().min(1),claimToken:n.string().min(1),settledAt:n.number().int().nonnegative()}),response:n.object({acknowledged:n.boolean()})}),failFinalization:u({request:n.object({executionId:n.string().min(1),claimToken:n.string().min(1),error:n.string().min(1),settledAt:n.number().int().nonnegative()}),response:n.object({failed:n.boolean()})}),cancelPausedExecution:{request:n.object({executionId:n.string().min(1),completedAt:n.number(),reason:n.string().optional()}),response:n.object({cancelled:n.boolean(),gates:n.array(E.extend({status:n.literal(`cancelled`)}))})},listExecutions:{request:_,response:n.object({executions:n.array(T)})},listExecutionsByArtifactRefs:{request:y,response:n.object({executionsByRef:n.record(n.string(),n.array(T))})},setFrame:{request:n.object({executionId:n.string().min(1),frame:le}),response:n.object({frameId:n.string()})},getFrame:{request:n.object({frameId:n.string().min(1)}),response:n.object({frame:le.nullable()})},listFrames:{request:n.object({executionId:n.string().min(1)}),response:n.object({frames:n.array(le)})},setGateInstance:{request:n.object({gate:E}),response:n.object({id:n.string()})},resolveWaitingGateInstance:{request:n.object({gate:E.extend({status:n.enum([`resumed`,`rejected`])})}),response:n.object({accepted:n.boolean()})},restorePausedGateResumeState:{request:n.object({execution:T.extend({status:n.literal(`paused`)}),gate:E.extend({status:n.literal(`waiting`)})}),response:n.object({executionId:n.string(),gateId:n.string()})},getGateInstance:{request:n.object({executionId:n.string().min(1),nodeId:n.string().min(1),frameId:n.string().min(1).optional()}),response:n.object({gate:E.nullable()})},listGateInstances:{request:b,response:n.object({gates:n.array(E)})},listPausedGateTimeouts:u({request:n.object({}),response:n.object({gates:n.array(E)})}),setSpan:{request:n.object({span:ee}),response:n.object({id:n.string()})},listSpans:{request:n.object({executionId:n.string()}),response:n.object({spans:n.array(ee)})},setExecutionLink:{request:n.object({link:g}),response:n.object({id:n.string()})},listExecutionLinks:{request:h,response:n.object({links:n.array(g)})},setRunContext:u({request:n.object({runContext:D,initialState:S.optional()}),response:n.object({executionId:n.string()})}),getRunContext:u({request:n.object({executionId:n.string().min(1)}),response:n.object({runContext:D.nullable()})}),initializeState:u({request:n.object({executionId:n.string().min(1),initialValue:S}),response:n.object({})}),getState:u({request:n.object({executionId:n.string().min(1)}),response:n.object({state:n.object({executionId:n.string().min(1),sequence:n.number().int().nonnegative(),value:S}).nullable()})}),patchState:u({request:n.object({executionId:n.string().min(1),expectedSequence:n.number().int().nonnegative(),nextValue:S}),response:n.object({executionId:n.string().min(1),sequence:n.number().int().positive(),patch:n.array(x),value:S})})},extensions:{drizzle:{workflowDefinitions:Ae,workflowExecutions:je,workflowExecutionFrames:Ne,workflowGateInstances:Fe,workflowStepSpans:Le,workflowExecutionLinks:ze,workflowRunContexts:Ve,worklogSummaries:Ue,worklogFrameEntries:Ge,worklogArtifactWrites:qe,worklogGateEvents:Ye,workflowExecutionState:Ze,workflowExecutionStateEvents:$e,workflowFinalizations:De}}}),F=it.subjects;var at=e(t(),1);function ot(e){let t=e.transport?.peer;if(t?.authenticated!==!0||t.kind!==`workflow-execution-attempt`)return null;let n=t.id,r=t.claims?.executionId;return typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0?null:{executionAttemptId:n,executionId:r}}function st(e,t){return e.origin.local?!0:ot(e)?.executionId===t}function ct(e,t){let n=[];return lt(n,``,e,t),n}function lt(e,t,n,r){if(Array.isArray(n)&&Array.isArray(r)){dt(e,t,n,r);return}if(ft(n)&&ft(r)){ut(e,t,n,r);return}ht(n,r)||e.push({op:`replace`,path:t,value:r})}function ut(e,t,n,r){let i=Array.from(new Set([...Object.keys(n),...Object.keys(r)])).sort();for(let a of i){let i=pt(n,a),o=pt(r,a),s=`${t}/${mt(a)}`;if(!i&&o){e.push({op:`add`,path:s,value:r[a]});continue}if(i&&!o){e.push({op:`remove`,path:s});continue}lt(e,s,n[a],r[a])}}function dt(e,t,n,r){let i=Math.min(n.length,r.length);for(let a=0;a<i;a++)lt(e,`${t}/${String(a)}`,n[a],r[a]);for(let i=n.length-1;i>=r.length;i--)e.push({op:`remove`,path:`${t}/${String(i)}`});for(let i=n.length;i<r.length;i++)e.push({op:`add`,path:`${t}/${String(i)}`,value:r[i]})}function ft(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function pt(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function mt(e){return e.replaceAll(`~`,`~0`).replaceAll(`/`,`~1`)}function ht(e,t){return Object.is(e,t)}const gt={stepTimeoutMs:300*1e3,stepCooldownMs:500,busAuth:{kind:`none`},platformDefaults:{cwd:process.cwd()},cancelTimeoutMs:1e4},_t=new at.default({allErrors:!0,strict:!1}),vt=new Map,yt=new Map;function bt(e){let t=e.$id;return typeof t==`string`?t:void 0}function xt(e,t,n){let r=bt(t);return r===void 0?`workflow:${e}:${n}`:`schema-id:${r}`}function St(e,t){try{return JSON.stringify(ge(t))}catch(t){let n=t instanceof Error?t.message:String(t);throw Error(`Workflow '${e}' state schema is invalid: ${n}`)}}function Ct(e,t,n){let r=yt.get(t);if(r!==void 0&&r!==n)throw Error(`Workflow '${e}' state schema reuses JSON Schema $id '${t}' with different content`);return _t.getSchema(t)}function wt(e){return e==null||e.length===0?`schema validation failed`:e.map(e=>`${e.instancePath.length>0?e.instancePath:`<root>`} ${e.message??`is invalid`}`).join(`; `)}function Tt(e,t){let n=St(e,t),r=xt(e,t,n),i=vt.get(r);if(i!==void 0)return i;let a=bt(t);if(a!==void 0){let t=Ct(e,a,n);if(t!==void 0)return vt.set(r,t),t}try{let e=_t.compile(t);return vt.set(r,e),a!==void 0&&yt.set(a,n),e}catch(t){let n=t instanceof Error?t.message:String(t);throw Error(`Workflow '${e}' state schema is invalid: ${n}`)}}function Et(e,t,n){if(e.state===void 0)return;let r=Tt(e.id,e.state.schema);if(r(t))return;let i=n===`initial`?`initial state`:`next state`;throw Error(`Workflow '${e.id}' ${i} does not match workflow state schema: ${wt(r.errors)}`)}function Dt(e){if(e.state===void 0)return;let t=e.state.initial===void 0?{}:e.state.initial;return Et(e,t,`initial`),t}function I(e){return`${e}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}function Ot(e,t,n){let r=e?N(e,n):t,i=s(t),c=s(a(r)?r:s(t,r)),u,d;try{u=l(i),d=l(c)}catch{return null}let f=o(process.platform===`win32`?u.toLowerCase():u,process.platform===`win32`?d.toLowerCase():d);return f===``||!f.startsWith(`..`)&&!a(f)?d:null}function kt(e){return e instanceof Error&&(`code`in e||`killed`in e)}function At(e){let t=e[0];return t===void 0||t.trim()===``?null:t}function jt(e){let{command:t,cwd:n,env:i,timeoutMs:a,signal:o}=e,s=At(t);if(s===null)return Promise.reject(Error(`Shell step command is empty`));let c=t.slice(1);return new Promise((e,t)=>{let l=null,u=!1,d=r(s,c,{cwd:n,env:{...process.env,...i},timeout:0,maxBuffer:10*1024*1024,shell:!1},(n,r,i)=>{n?t(Object.assign(n,{stdout:r,stderr:i,aborted:u})):e({stdout:r,stderr:i})}),f=()=>{d.exitCode===null&&(d.kill(`SIGTERM`),l=setTimeout(()=>{d.exitCode===null&&d.kill(`SIGKILL`)},5e3))},p=setTimeout(()=>{f()},a);if(d.on(`close`,()=>{clearTimeout(p),l!==null&&clearTimeout(l)}),o){let e=()=>{u=!0,f()};o.aborted?e():(o.addEventListener(`abort`,e,{once:!0}),d.on(`close`,()=>o.removeEventListener(`abort`,e)))}})}async function Mt(e){let{step:t,workspaceRoot:n,expressionContext:r,signal:i}=e,a=Ot(t.cwd,n,r);if(a===null)return{status:`failed`,error:`Shell step cwd '${t.cwd}' is outside workspace root '${n}'`};let o=t.command.map(e=>N(e,r));if(At(o)===null)return{status:`failed`,error:`Shell step command is empty`};let s=Object.fromEntries(Object.entries(t.env??{}).map(([e,t])=>[e,N(t,r)])),c=t.timeoutMs??3e5;try{let{stdout:e}=await jt({command:o,cwd:a,env:s,timeoutMs:c,signal:i});return{status:`completed`,stdout:e}}catch(e){if(!kt(e))return{status:`failed`,error:String(e)};let t=e.aborted===!0,n=!t&&(e.killed===!0||e.signal!=null);return{status:`failed`,error:t?`Command cancelled`:n?`Command timed out after ${c}ms`:e.stderr?.trim()||e.stdout?.trim()||e.message}}}async function Nt(e,t,n){if(!(await e.request(F.updateExecution,{executionId:t.id,status:n.status,error:n.error,reason:n.reason,completedAt:n.completedAt})).success)throw Error(`Workflow execution not found: ${t.id}`)}function Pt(e,t){return e===t||t===`completed`&&e===`finalizing`}async function Ft(e,t,n){let r=e.durableLifecycleTransitions.get(t)??Promise.resolve(),i=Promise.withResolvers(),a=r.catch(()=>void 0).then(()=>i.promise);e.durableLifecycleTransitions.set(t,a),await r.catch(()=>void 0);try{return await n()}finally{i.resolve(),e.durableLifecycleTransitions.get(t)===a&&e.durableLifecycleTransitions.delete(t)}}async function L(e,t,n,r,i){let a,o,s=!0,c=await Ft(e,t,async()=>{let i=await n(),c=Promise.withResolvers(),l=e.lifecyclePublications.get(t)??Promise.resolve();return s=!e.publishingLifecycleExecutions.has(t),o=l.catch(()=>void 0).then(async()=>{await c.promise,e.publishingLifecycleExecutions.add(t);try{await r(i)}finally{e.publishingLifecycleExecutions.delete(t)}}),e.lifecyclePublications.set(t,o),a=c.resolve,i});if(o!==void 0){let n=o;n.then(()=>{e.lifecyclePublications.get(t)===n&&e.lifecyclePublications.delete(t)},()=>{e.lifecyclePublications.get(t)===n&&e.lifecyclePublications.delete(t)})}let l;try{l=i?.(c)}finally{a?.()}return await l,s&&o!==void 0&&await o,c}async function It(e,t,n){if(!(await e.bus.request(t.finalizeSubject,n)).accepted){let r=`Workflow success finalizer "${t.finalizerId}" rejected transition ${n.transitionKey}`,i=Date.now(),{failed:a}=await e.bus.request(F.failFinalization,{executionId:n.executionId,claimToken:n.claimToken,error:r,settledAt:i});return}}async function Lt(e){for(let t of e.successFinalizers?.values()??[]){let{claims:n}=await e.bus.request(F.listClaimedFinalizations,{finalizerId:t.finalizerId});for(let r of n)await It(e,t,r);let{claims:r}=await e.bus.request(F.listUnpublishedFinalizations,{finalizerId:t.finalizerId});for(let t of r)await e.bus.request(F.publishFinalization,{claim:t})}}async function Rt(e,t,n,r){let i=e.resolveSuccessFinalizerId?.(n),a=i===void 0?void 0:e.successFinalizers?.get(i);if(i!==void 0&&a===void 0){await R(e,t,n,`Workflow success finalizer "${i}" is unavailable`);return}if(a!==void 0){let r=Date.now(),i={executionId:n,workflowId:t.workflowId,finalizerId:a.finalizerId,transitionKey:`${n}:terminal`,claimToken:crypto.randomUUID(),intent:{status:`completed`,completedAt:r},claimedAt:r};await L(e,n,async()=>(await e.bus.request(F.getExecution,{executionId:n})).execution?.status!==`running`||!(await e.bus.request(F.claimFinalization,{claim:i})).claimed?!1:(t.status=`finalizing`,e.activeExecutions.delete(n),!0),async t=>{t&&await It(e,a,i)});return}let o=Date.now();await L(e,n,async()=>(await e.bus.request(F.getExecution,{executionId:n})).execution?.status===`running`?(t.status=`completed`,t.completedAt=o,await Nt(e.bus,t,{status:t.status,completedAt:o}),e.activeExecutions.delete(n),!0):!1,async i=>{i&&await e.bus.emit(O.execution.completed,{executionId:n,workflowId:t.workflowId,totalDuration:o-r,completedAt:o})})}async function R(e,t,n,r,i){let a=Date.now();await L(e,n,async()=>(await e.bus.request(F.getExecution,{executionId:n})).execution?.status===`running`?(t.status=`failed`,t.error=r,t.completedAt=a,await Nt(e.bus,t,{status:t.status,error:r,completedAt:a}),e.activeExecutions.delete(n),!0):!1,async o=>{if(o){try{await i?.()}catch(e){console.error(`[WorkflowFinalizer] Failed to run failure pre-emit hook:`,e)}await e.bus.emit(O.execution.failed,{executionId:n,workflowId:t.workflowId,error:r,completedAt:a})}})}function zt(e,t,n){let{activeRunnerSteps:r,bus:i}=e,a=`${t}:`;for(let[e,o]of r){if(!e.startsWith(a))continue;let r=e.slice(a.length);o.controller.abort(),i.emit(me(o.cancelSubject),{executionId:t,stepId:r,reason:n}).catch(t=>{console.error(`[WorkflowFinalizer] Failed to emit cancellation for ${e}:`,t)})}}async function Bt(e,t,n){let r=await e.bus.request(F.getExecution,{executionId:t});if(r.execution==null)return;let i=r.execution.workflowId;if(i===void 0)throw Error(`Paused execution ${t} is missing stored workflowId`);let a=Date.now(),{cancelled:o,gates:s}=await e.bus.request(F.cancelPausedExecution,{executionId:t,completedAt:a,reason:n});if(o)return e.activeExecutions.delete(t),{workflowId:i,completedAt:a,gates:s}}async function Vt(e,t,n,r=`converge`){let{execution:i}=await e.bus.request(F.getExecution,{executionId:t});if(i?.status!==`running`&&i?.status!==`paused`)return;if(r===`request`&&await e.requestAttemptCancellation?.(t,n),i?.status!==`running`)return Bt(e,t,n);i.status=`cancelled`,i.reason=n,i.completedAt=Date.now();let a=e.activeExecutions.get(t);a!==void 0&&Object.assign(a.execution,i);try{for(let[n,r]of e.shellAbortControllers)n.startsWith(`${t}:`)&&(r.abort(),e.shellAbortControllers.delete(n));zt(e,t,n),await Nt(e.bus,i,{status:i.status,reason:n,completedAt:i.completedAt})}finally{e.activeExecutions.delete(t)}return{workflowId:i.workflowId,completedAt:i.completedAt,gates:[]}}async function Ht(e,t,n){return Wt(e,t,n,`converge`)}async function Ut(e,t,n){return Wt(e,t,n,`request`)}async function Wt(e,t,n,r){return await L(e,t,()=>Vt(e,t,n,r),async r=>{if(r!==void 0){for(let n of r.gates)await e.bus.emit(O.gate.resolved,{executionId:t,stepId:n.nodeId,stepType:`gate`,frameId:n.frameId,source:`cancelled`}).catch(e=>{console.error(`[WorkflowFinalizer] Failed to emit cancelled gate resolution for ${n.frameId}:`,e)});await e.bus.emit(O.execution.cancelled,{executionId:t,workflowId:r.workflowId,reason:n,completedAt:r.completedAt})}},i=>{if(i!==void 0&&r===`request`)return e.notifyAttemptCancellation?.(t,n)})!==void 0}async function Gt(e,t){if(t.pausedAtGateId===void 0||t.pausedAtFrameId===void 0)throw Error(`Paused runner result for '${t.executionId}' is missing gate identity`);return await L(e,t.executionId,async()=>{let{paused:n}=await e.bus.request(F.pauseRunningExecution,{executionId:t.executionId});if(!n){let{execution:n}=await e.bus.request(F.getExecution,{executionId:t.executionId});if(n?.status!==`paused`)return`refused`}let r=e.activeExecutions.get(t.executionId);return r!==void 0&&(r.execution.status=`paused`),e.activeExecutions.delete(t.executionId),n?`transitioned`:`replayed`},async n=>{n===`transitioned`&&await e.bus.emit(O.execution.paused,{executionId:t.executionId,workflowId:t.workflowId,pausedAtGateId:t.pausedAtGateId,pausedAtFrameId:t.pausedAtFrameId})})!==`refused`}function Kt(e,t){return t}function qt(e,t){return{...t}}function Jt(e){return e.reason instanceof Error?e.reason.message:typeof e.reason==`string`&&e.reason.length>0?e.reason:te}async function Yt(e,t,n){let r=e.activeExecutions.get(t);if(!r||r.execution.status!==`running`)return;let i=e.buildFinalizerDeps(),{execution:a}=await i.bus.request(F.getExecution,{executionId:t});a?.status===`running`&&(r.execution=a,await Ht(i,t,Jt(n))||console.error(`[WorkflowExecutor] Failed to persist runner cancellation for ${t}: execution not active`))}async function Xt(e,t){let n=e.activeExecutions.get(t.executionId);if(!n||n.execution.status!==`running`)return;let r=e.buildFinalizerDeps(),{execution:i}=await r.bus.request(F.getExecution,{executionId:t.executionId});if(i?.status===`running`){if(n.execution=i,t.status===`completed`){await Rt(r,n.execution,t.executionId,n.execution.startedAt);return}if(t.status===`cancelled`){await Ht(r,t.executionId,t.reason??te);return}if(t.status===`failed`){await R(r,n.execution,t.executionId,t.error);return}}}async function Zt(e,t,n,r){let i=t.state===`authority-recorded-only`?t:t.result;if(i.executionId!==n.executionId||i.workflowId!==n.workflowId)throw Error(`Runner completion does not match its invocation '${n.executionId}'`);if(t.state!==`uncommitted`||e.activeExecutions.get(n.executionId)!==r)return;let{result:a}=t;if(a.status===`paused`){await Gt(e.buildFinalizerDeps(),a);return}await Xt(e,a)}function Qt(e,t,n,r){e.activeExecutions.get(t)===n&&e.activeExecutions.delete(t),e.workflowAbortControllers.get(t)===r&&e.workflowAbortControllers.delete(t)}function $t(e,t){return{source:{kind:`path`,path:t.filePath},executionId:t.executionId,workflowId:t.workflowId,triggerPayload:t.sanitizedTriggerPayload,triggerMode:t.triggerMode,inputs:t.boundInputs,config:t.boundConfig,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},scope:t.scope,busUrl:e.config.busUrl,busAuth:e.config.busAuth,env:e.config.platformDefaults.env??{},coordinatorSessionId:t.coordinatorSessionId,cancelSubject:`workflow.${t.executionId}.cancel`,suspensionStrategy:`wait-in-process`,materializationSpec:t.materializationSpec}}function en(e,t){let{executionId:n}=t,{workflowRunner:r,workflowAbortControllers:i,activeExecutions:a}=e,o=a.get(n),s=new AbortController;i.set(n,s);let c=$t(e,t),l=rn(e,n,s.signal);return Promise.resolve().then(()=>r.run(c,s.signal,void 0,l)).then(async t=>{await Zt(e,t,c,o)}).catch(async t=>{if(a.get(n)!==o){console.error(`[WorkflowExecutor] Superseded file runner task failed for ${n}:`,t);return}if(s.signal.aborted){await Yt(e,n,s.signal).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist file runner cancellation for ${n}:`,e)});return}let r=a.get(n);if(r){let i=t instanceof Error?t.message:String(t);await R(e.buildFinalizerDeps(),r.execution,n,i).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist file runner boot failure for ${n}:`,e)})}}).finally(()=>Qt(e,n,o,s))}function tn(e,t){let{config:n}=e,r=t.definitionSnapshot??(t.source.kind===`definition`?t.workflow:void 0);return{source:t.source,...r===void 0?{}:{definition:r},executionId:t.executionId,workflowId:t.workflowId,triggerPayload:t.sanitizedTriggerPayload,inputs:t.boundInputs,config:t.boundConfig,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},scope:t.scope,busUrl:n.busUrl,busAuth:n.busAuth,env:n.platformDefaults.env??{},coordinatorSessionId:t.coordinatorSessionId,cancelSubject:`workflow.${t.executionId}.cancel`,suspensionStrategy:t.suspensionStrategy??`wait-in-process`,...t.terminalAuthority!==void 0&&{terminalAuthority:t.terminalAuthority},...t.materializationSpec===void 0?{}:{materializationSpec:t.materializationSpec}}}function nn(e,t){let{executionId:n}=t,{workflowRunner:r,workflowAbortControllers:i,activeExecutions:a}=e,o=a.get(n),s=new AbortController;i.set(n,s);let c=tn(e,t),l={...rn(e,n,s.signal),...t.dispatchMetadata===void 0?{}:{dispatchMetadata:t.dispatchMetadata}};return Promise.resolve().then(()=>r.run(c,s.signal,void 0,l)).then(async t=>{await Zt(e,t,c,o)}).catch(async t=>{if(a.get(n)!==o){console.error(`[WorkflowExecutor] Superseded runner task failed for ${n}:`,t);return}if(s.signal.aborted){await Yt(e,n,s.signal).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist runner cancellation for ${n}:`,e)});return}let r=a.get(n);if(r){let i=t instanceof Error?t.message:String(t);await R(e.buildFinalizerDeps(),r.execution,n,i).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist runner boot failure for ${n}:`,e)})}}).finally(()=>Qt(e,n,o,s))}function rn(e,t,n){return{withAttemptCreation:r=>{let i=e.buildFinalizerDeps();return Ft(i,t,async()=>{n.throwIfAborted();let{execution:e}=await i.bus.request(F.getExecution,{executionId:t});if(n.throwIfAborted(),e?.status!==`running`)throw Error(`Execution '${t}' no longer permits attempt creation`);return r()})}}}function an(e,t,n={}){let r=on(e,n);return{executionId:e.executionId,workflowId:e.workflowId,workflow:t,...e.definitionSnapshot===void 0?{}:{definitionSnapshot:e.definitionSnapshot},source:e.source,coordinatorSessionId:e.coordinatorSessionId,sanitizedTriggerPayload:e.triggerPayload,boundInputs:e.inputs,boundConfig:e.config??{},...e.artifactRef===void 0?{}:{artifactRef:e.artifactRef},scope:e.scope,...e.materializationSpec===void 0?{}:{materializationSpec:e.materializationSpec},suspensionStrategy:e.suspensionStrategy,terminalAuthority:e.terminalAuthority??`worker`,...r===void 0?{}:{dispatchMetadata:r}}}function on(e,t){return t.resume===!0?{...e.dispatchMetadata,resume:!0}:e.dispatchMetadata}const sn=/(?:^|[_-])(authorization|token|cookie|password|set[_-]?cookie|api[_-]?key|secret|credential|private[_-]?key|api[_-]?secret)(?:$|[_-])/i;function cn(e){if(!e)return;let t={remainingBytes:65536},n={},r=Object.entries(e).slice(0,100);for(let[e,i]of r){if(t.remainingBytes<=0)break;let r=ln(e,i,0,t);r!==void 0&&(n[e]=r)}return Object.keys(n).length>0?n:void 0}function ln(e,t,n,r){if(!(r.remainingBytes<=0||n>6)&&(r.remainingBytes-=e.length,!(r.remainingBytes<=0))){if(sn.test(e))return r.remainingBytes-=10,`[REDACTED]`;if(t===null)return r.remainingBytes-=4,null;if(typeof t==`string`){let e=t.slice(0,2e3);return r.remainingBytes-=e.length,e}if(typeof t==`number`||typeof t==`boolean`)return r.remainingBytes-=String(t).length,t;if(Array.isArray(t)){let i=[];for(let a of t.slice(0,100)){if(r.remainingBytes<=0)break;let t=ln(e,a,n+1,r);t!==void 0&&i.push(t)}return i}if(typeof t==`object`){let e={},i=Object.entries(t).slice(0,100);for(let[t,a]of i){if(r.remainingBytes<=0)break;let i=ln(t,a,n+1,r);i!==void 0&&(e[t]=i)}return e}}}async function un(e){let{authority:t,executionId:n,instruction:r,dispatch:i}=e,a=()=>t.createAttempt(n,r),o=await(e.withAttemptCreation?.(a)??a()),s=t.waitForOutcome(o.executionAttemptId);if(s===void 0)throw Error(`No outcome waiter for attempt '${o.executionAttemptId}': waiter was not installed during attempt creation`);s.catch(()=>void 0);try{await i(o.executionAttemptId)}catch(e){return dn({authority:t,executionId:n,executionAttemptId:o.executionAttemptId,outcomePromise:s,dispatchError:e})}return s}async function dn(e){let{authority:t,executionId:n,executionAttemptId:r,outcomePromise:i,dispatchError:a}=e,o;try{o=await t.abandonPendingAttempt(r,n)}catch(e){throw t.discardWaiter(r),AggregateError([a,e],`Dispatch acknowledgement failed and pending attempt '${r}' could not be abandoned`,{cause:a})}switch(o.kind){case`abandoned`:case`already-abandoned`:throw t.discardWaiter(r),a;case`allocated`:case`provisioning`:case`already-settled`:return i;case`fenced`:t.settleOutcome(r,{kind:`fenced`});try{return await i}catch(e){throw AggregateError([a,e],`Dispatch acknowledgement failed after attempt '${r}' was fenced`,{cause:a})}}}const fn=`workflow`,pn=`1`,z=D.shape,mn=n.object({executionId:z.executionId,workflowId:z.workflowId,source:z.source,definitionSnapshot:z.definitionSnapshot,inputs:z.inputs,config:z.config,scope:z.scope,triggerPayload:z.triggerPayload,triggerMode:z.triggerMode,artifactRef:z.artifactRef,coordinatorSessionId:z.coordinatorSessionId,cancelSubject:z.cancelSubject,materializationSpec:z.materializationSpec,terminalAuthority:n.literal(`authority`)}).strict().superRefine((e,t)=>{let n=D.safeParse({...e,createdAt:0});if(!n.success)for(let e of n.error.issues)t.addIssue({code:`custom`,path:e.path,message:e.message});e.source.kind===`path`&&(e.source.path.includes(`\\`)||/^[A-Za-z]:/.test(e.source.path)||e.source.path.split(`/`).includes(`..`))&&t.addIssue({code:`custom`,path:[`source`,`path`],message:`Workflow source must stay within its executable root`}),e.source.kind===`definition`&&e.source.workflowId!==e.workflowId&&t.addIssue({code:`custom`,path:[`source`],message:`Workflow source identity does not match the invocation`}),e.definitionSnapshot!==void 0&&e.definitionSnapshot.id!==e.workflowId&&t.addIssue({code:`custom`,path:[`definitionSnapshot`],message:`Workflow definition identity does not match the invocation`})});function hn(e,t){if(t===void 0&&e.source.kind===`path`)throw Error(`Path-backed workflow instructions require a portable run context`);if(t!==void 0&&(t.executionId!==e.executionId||t.workflowId!==e.workflowId))throw Error(`Workflow run context does not belong to the dispatched execution`);let n=t??e,r=t===void 0?e.definition:t.definitionSnapshot;return mn.parse({executionId:n.executionId,workflowId:n.workflowId,source:n.source,...r===void 0?{}:{definitionSnapshot:r},inputs:n.inputs,...n.config===void 0?{}:{config:n.config},scope:n.scope,triggerPayload:n.triggerPayload,...n.triggerMode===void 0?{}:{triggerMode:n.triggerMode},...n.artifactRef===void 0?{}:{artifactRef:n.artifactRef},coordinatorSessionId:n.coordinatorSessionId,cancelSubject:n.cancelSubject,...n.materializationSpec===void 0?{}:{materializationSpec:n.materializationSpec},terminalAuthority:`authority`})}function gn(e){let t=hn(e.config,e.runContext),n=JSON.parse(JSON.stringify(t));return p.parse({id:e.id,revision:e.revision,workload:{kind:fn,version:`1`,input:n},...e.workspace===void 0?{}:{workspace:e.workspace},preservation:e.preservation})}function _n(e){if(e.workload.kind!==`workflow`||e.workload.version!==`1`)throw Error(`Instruction does not target the supported workflow workload adapter`);return mn.parse(e.workload.input)}const vn=m.transform((e,t)=>e.kind===`technical-failure`||e.kind===`cancelled`?e:(t.addIssue({code:`custom`,message:`Expected a runtime outcome, not an opaque workload result`}),n.NEVER)),yn=n.union([de,vn]),bn={parse:e=>yn.parse(e),serialize:e=>JSON.stringify(e)};function xn(e){let t=m.parse(e.outcome);if(t.kind===`technical-failure`||t.kind===`cancelled`)return t;let n=_n(e.instruction),r=de.parse(t.result);if(r.executionId!==n.executionId||r.workflowId!==n.workflowId)throw Error(`Workflow result identity does not match the frozen instruction`);return r}function Sn(e,t){let{outcome:n,acceptance:r}=e;if(`executionId`in n&&(n.executionId!==t.executionId||n.workflowId!==t.workflowId))throw Error(`Committed workflow result does not match its owner identity`);return r===`recorded-only`?{state:`authority-recorded-only`,executionId:t.executionId,workflowId:t.workflowId,acceptedOutcome:{...e,acceptance:r}}:{state:`authority-committed`,result:Cn(n,t),acceptedOutcome:{...e,acceptance:r}}}function Cn(e,t){if(`kind`in e)return e.kind===`cancelled`?{executionId:t.executionId,workflowId:t.workflowId,status:`cancelled`,...e.reason===void 0?{}:{reason:e.reason}}:{executionId:t.executionId,workflowId:t.workflowId,status:`failed`,error:`${e.stage}: ${e.message}`};if(e.executionId!==t.executionId||e.workflowId!==t.workflowId)throw Error(`Committed workflow result does not match its owner identity`);return de.parse(e)}function wn(e){return e===void 0?!1:(e.customCapabilities??[]).length>0||e.persistentStorage!==void 0||e.maxRuntimeMs!==void 0||e.recoverableAllocation!==void 0||e.materializationModes!==void 0&&e.materializationModes.length>0}function Tn(e){let{bus:t,requirements:n,dispatchMetadata:r,authority:i}=e;if(wn(n))return{terminalAuthority:`authority`,run:async(e,a,o,s)=>{a.throwIfAborted();let l=e.source.kind===`path`?(await t.request(F.getRunContext,{executionId:e.executionId},{signal:a})).runContext:void 0;a.throwIfAborted();let u=gn({id:c(),revision:`1`,config:e,...l==null?{}:{runContext:l},preservation:{required:[]}});return Sn(await un({authority:i,executionId:e.executionId,instruction:u,withAttemptCreation:s?.withAttemptCreation,dispatch:i=>t.request(re.dispatch,{executionAttemptId:i,config:{...e,terminalAuthority:`authority`},requirements:n,...o===void 0?{}:{manifest:o},...r!==void 0||s?.dispatchMetadata!==void 0?{metadata:{...r,...s?.dispatchMetadata}}:{}},{signal:a})}),e)}}}function En(e,t){let n=(e.executionAttemptAuthority===void 0?void 0:Tn({bus:e.bus,requirements:t.workflow.requirements,dispatchMetadata:t.dispatchMetadata,authority:e.executionAttemptAuthority}))??e.workflowRunner;if(t.terminalAuthority!==void 0&&t.terminalAuthority!==(n?.terminalAuthority??`worker`))throw Error(`Selected workflow runner is incompatible with the persisted terminal authority`);return{runner:n}}function Dn(e,t,n=En(e,t)){return n.runner===void 0?e.runExecution(t.executionId):nn(e.buildRunnerTaskDeps(n.runner),{...t,terminalAuthority:t.terminalAuthority??n.runner.terminalAuthority})}function On(e,t,n){e.set(t,n),n.finally(()=>{e.get(t)===n&&e.delete(t)}).catch(e=>{console.error(`[WorkflowExecutor] Execution task failed for ${t}:`,e)})}async function kn(e,t,n,r){let i=Dt(r);await e.request(F.setExecutionStart,{execution:t,runContext:n,initialState:i})}async function An(e,t){try{await e.emit(O.execution.started,{executionId:t.id,workflowId:t.workflowId,coordinatorSessionId:t.coordinatorSessionId,startedAt:t.startedAt,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef}})}catch(e){console.error(`[WorkflowExecutor] execution.started listener failed:`,e)}}async function jn(e,t){await e.request(C.close,{sessionId:t}).catch(e=>{console.error(`[WorkflowExecutor] Failed to close coordinator session "${t}" after launch failure:`,e)})}function Mn(e,t,n,r,i,a,o,s,c){let l={id:t,workflowId:n.id,coordinatorSessionId:r,status:`running`,inputs:i,config:a,startedAt:Date.now(),triggerPayload:o,...c.artifactRef===void 0?{}:{artifactRef:c.artifactRef},scope:s};return e.set(t,{execution:l,workflow:n,runContext:c,runtimeHandlers:new Map,runtimeLoopGates:new Map}),l}async function Nn(e,t,n,r,i){await e.request(F.setExecutionStart,{execution:t,runContext:n,...r===void 0?{}:{initialState:r},...i!==void 0&&i.length>0?{executionLinks:[...i]}:{}})}function Pn(e,t){return e.executableSource??{kind:`definition`,workflowId:t}}function Fn(e,t){return e.kind===`definition`||t!==void 0}function In(e,t,n){if(!(t.kind===`definition`||e!==void 0))throw new ae(oe.NOT_EXECUTABLE,`Workflow source execution '${n}' requires a workflow runner.`)}async function Ln(e,t,n){if(t.source.kind===`path`){if(n!==void 0)return n;for(let n of e.materializationSpecResolvers){let e=await n.resolve({executionId:t.executionId,workflowId:t.workflowId,sourcePath:t.source.path,workspaceRoot:t.workspaceRoot});if(e!==void 0)return e}throw Error(`[WorkflowExecutor] path-backed execution requires a resolved materializationSpec`)}}async function Rn(e,t,n){let r=await Ln(e,t,n);return{source:t.source.kind===`path`&&r!==void 0?{kind:`path`,path:r.sourcePath}:t.source,materializationSpec:r}}async function zn(e,t,n,r){return On(e,t,n),await r,t}async function Bn(e,t){let{workflow:n}=await e.request(F.get,{id:t});if(!n)throw Error(`Workflow not found: ${t}`);return n}async function Vn(e,t,n,r){let{sessionId:i}=await e.request(C.create,{parentSessionId:t,branchKind:`coordinator`,title:`Workflow: ${n}`,targetWorkingDirectory:r});return i}async function Hn(e,t,n={}){let r=await Bn(e.bus,t);return Un(e,t,{...n,workflow:r})}async function Un(e,t,n){let{bus:r,activeExecutions:i,executionTasks:a}=e,{workflow:o,parentSessionId:s,triggerPayload:c,artifactRef:l,scopeOverride:u}=n,d=I(`wfx`),f=cn(c),p=Kt(o,n.input===void 0?{}:n.input),m=qt(o,n.config??{}),h=u??o.scope,g=await e.resolveExecutionWorkspaceRoot(s),_=n.executionSource??Pn(o,t),v=n.definitionSnapshot??o,y=En(e,{workflow:o});In(y.runner,_,t);let{source:b,materializationSpec:x}=await Rn(e,{executionId:d,workflowId:t,source:_,workspaceRoot:g},n.materializationSpec),S=await Vn(r,s,o.name,g),C=!1;try{let s=e.buildRunContext({executionId:d,workflowId:t,coordinatorSessionId:S,source:b,...v===void 0?{}:{definitionSnapshot:v},inputs:p,config:m,scope:h,triggerPayload:f??{},triggerMode:`immediate`,terminalAuthority:y.runner?.terminalAuthority,...l===void 0?{}:{artifactRef:l},...x===void 0?{}:{materializationSpec:x}}),c=Mn(i,d,o,S,p,m,f,h,s);await Nn(r,c,s,_.kind===`definition`?Dt(o):void 0,n.executionLinks?.(d));let u=An(r,c),g=Dn(e,{executionId:d,workflowId:t,workflow:o,...Fn(_,n.definitionSnapshot)?{definitionSnapshot:v}:{},source:_,coordinatorSessionId:S,sanitizedTriggerPayload:f??{},boundInputs:p,boundConfig:m,scope:h,...l===void 0?{}:{artifactRef:l},suspensionStrategy:s.suspensionStrategy,...x===void 0?{}:{materializationSpec:x}},y);return C=!0,zn(a,d,g,u)}catch(e){throw C||(i.delete(d),a.delete(d),await jn(r,S)),e}}function Wn(e,t,n,r,i){e.set(t.id,{execution:t,workflow:{id:t.workflowId,name:n,scope:r,root:{id:`${t.workflowId}-root`,type:`sequence`,nodes:[]}},runContext:i,runtimeHandlers:new Map,runtimeLoopGates:new Map})}async function Gn(e,t,n,r){let{sessionId:i}=await e.request(C.create,{...t===void 0?{}:{parentSessionId:t},branchKind:`coordinator`,title:`Workflow: ${n}`,targetWorkingDirectory:r});return i}function Kn(e){if(e===void 0)throw Error(`[WorkflowExecutor] startFileExecution called without a workflow runner`);return e}function qn(e){if(e===void 0)throw Error(`[WorkflowExecutor] path-backed execution requires a resolved materializationSpec`);return e}async function Jn(e,t,n={}){let{bus:r,activeExecutions:i,executionTasks:a}=e,{artifactRef:o,parentSessionId:s,triggerPayload:c,scopeOverride:l}=n,u=n.triggerMode??`immediate`,d=I(`wfx`),f=cn(c),p=n.input===void 0?{}:n.input,m=n.config??{},h=l??{type:`global`},g=await e.resolveExecutionWorkspaceRoot(s),_=Kn(e.workflowRunner),v=d,y=qn(await Ln(e,{executionId:d,workflowId:v,source:{kind:`path`,path:t},workspaceRoot:g},n.materializationSpec)),b=await Gn(r,s,t,g),x={id:d,workflowId:v,coordinatorSessionId:b,status:`running`,inputs:p,config:m,startedAt:Date.now(),triggerPayload:f,...o===void 0?{}:{artifactRef:o},scope:h},S=!1;try{let s=e.buildRunContext({executionId:d,workflowId:v,coordinatorSessionId:b,source:{kind:`path`,path:y.sourcePath},inputs:p,config:m,scope:h,triggerPayload:f??{},triggerMode:u,terminalAuthority:_.terminalAuthority,...o===void 0?{}:{artifactRef:o},materializationSpec:y});await Nn(r,x,s,void 0,n.executionLinks?.(d)),Wn(i,x,t,h,s);let c=An(r,x),l=en(e.buildRunnerTaskDeps(_),{executionId:d,workflowId:v,filePath:t,coordinatorSessionId:b,sanitizedTriggerPayload:f??{},triggerMode:u,boundInputs:p,boundConfig:m,...o===void 0?{}:{artifactRef:o},scope:h,materializationSpec:y});return S=!0,zn(a,d,l,c)}catch(e){throw S||(i.delete(d),a.delete(d),await jn(r,b)),e}}function Yn(e){let t={};for(let[n,r]of Object.entries(e))r.status===`completed`?t[n]={status:`completed`,output:r.output}:r.status===`skipped`&&(t[n]={status:`skipped`});return t}function B(e){let t={...e,input:e.inputs,steps:e.frames};return{...t,ctx:t}}function Xn(e,t){let n=process.platform===`win32`?`win32`:process.platform===`darwin`?`darwin`:`linux`;return{repoPath:e??process.cwd(),makaioHome:t??process.env.MAKAIO_HOME??`${Te.homedir()}/.makaio`,os:n,arch:process.arch}}function Zn(){return{context:Xn(),env:{}}}function Qn(e){return{...e,path:[...e.path]}}function $n(e){if(e===`station`||e===`delegate-agent`||e===`delegate-role`||e===`gate`)return e}function er(e,t){let n=$n(t.nodeType);if(n===void 0||t.status!==`running`&&t.status!==`completed`&&t.status!==`failed`&&t.status!==`skipped`)return;let r=t.startedAt!==void 0&&t.completedAt!==void 0?Math.max(0,t.completedAt-t.startedAt):void 0;return{executionId:e,frameId:t.frameId,stepId:t.nodeId,stepType:n,status:t.status,...t.startedAt===void 0?{}:{startedAt:t.startedAt},...t.completedAt===void 0?{}:{completedAt:t.completedAt},...r===void 0?{}:{durationMs:r},...t.output===void 0?{}:{output:JSON.stringify(t.output)}}}var tr=class e{executionId;workflowId;definition;execution;runtimeHandlers;bus;signal;frameRegistry;framePersistenceTasks=new Map;artifactBinding;constructor(e,t,n,r,i,a,o,s,c,l=Zn(),u={}){this.executionId=e,this.workflowId=t,this.definition=n,this.execution=r,this.runtimeHandlers=i,this.bus=a,this.signal=o,this.frameRegistry=s??new Map,this.artifactBinding=c,this.platformContext=l.context,this.env=l.env,this.suspensionStrategy=u.suspensionStrategy??`wait-in-process`,this.resumeFrames=u.resumeFrames,this.runtimeLoopGates=u.runtimeLoopGates??new Map}platformContext;env;suspensionStrategy;resumeFrames;runtimeLoopGates;withSignal(t){return new e(this.executionId,this.workflowId,this.definition,this.execution,this.runtimeHandlers,this.bus,t,this.frameRegistry,this.artifactBinding,{context:this.platformContext,env:this.env},{suspensionStrategy:this.suspensionStrategy,resumeFrames:this.resumeFrames,runtimeLoopGates:this.runtimeLoopGates})}buildExpressionContext(){return{inputs:this.execution.inputs,config:this.execution.config??{},trigger:this.execution.triggerPayload??{},frames:{},previousSteps:{}}}createFrame(e){let t=I(`frm`),n=[...e.path,t],r={frameId:t,nodeId:e.nodeId,nodeType:e.nodeType,path:n,parentFrameId:e.parentFrameId,status:`pending`,attempt:0,iteration:e.iteration,branchKey:e.branchKey};return this.frameRegistry.set(t,r),this.persistFrame(r).catch(()=>void 0),r}async persistFrame(e,t={}){let n=t.requireFrameStorage===!0||this.suspensionStrategy!==`wait-in-process`,r=Qn(e),i=er(this.executionId,r),a=(this.framePersistenceTasks.get(e.frameId)??Promise.resolve()).catch(()=>void 0).then(async()=>{n?await this.bus.request(F.setFrame,{executionId:this.executionId,frame:r}):await this.bus.requestOptional(F.setFrame,{executionId:this.executionId,frame:r}),i!==void 0&&await this.bus.requestOptional(F.setSpan,{span:i})}).catch(t=>{if(n)throw t;console.warn(`[RuntimeContext] Failed to persist frame ${e.frameId}:`,t)});this.framePersistenceTasks.set(e.frameId,a);try{await a}finally{this.framePersistenceTasks.get(e.frameId)===a&&this.framePersistenceTasks.delete(e.frameId)}}async updateFrame(e,t,n={}){let r=this.frameRegistry.get(e);if(!r)throw Error(`Frame not found: ${e}`);Object.assign(r,t),await this.persistFrame(r,n)}getFrame(e){return this.frameRegistry.get(e)}getFramesByNodeId(e){let t=[];for(let n of this.frameRegistry.values())n.nodeId===e&&t.push(n);return t.sort((e,t)=>(e.startedAt??0)-(t.startedAt??0))}async emitFrameStarted(e){try{await this.bus.emit(O.frame.started,{executionId:this.executionId,frameId:e.frameId,nodeId:e.nodeId,nodeType:e.nodeType,path:e.path,parentFrameId:e.parentFrameId,startedAt:e.startedAt})}catch(t){console.error(`[RuntimeContext] frame.started observer failed for ${e.frameId}:`,t)}}async emitFrameCompleted(e,t){try{await this.bus.emit(O.frame.completed,{executionId:this.executionId,frameId:e.frameId,nodeId:e.nodeId,output:e.output,duration:t,completedAt:e.completedAt})}catch(t){console.error(`[RuntimeContext] frame.completed observer failed for ${e.frameId}:`,t)}}async emitFrameFailed(e,t,n){try{await this.bus.emit(O.frame.failed,{executionId:this.executionId,frameId:e.frameId,nodeId:e.nodeId,error:t,duration:n,completedAt:e.completedAt})}catch(t){console.error(`[RuntimeContext] frame.failed observer failed for ${e.frameId}:`,t)}}};function nr(e){return{kind:`workflow-execution`,id:e,displayName:`Workflow Engine`}}function rr(e,t,n){return{inputs:n.inputs,config:n.config??{},trigger:n.triggerPayload,scope:n.scope,env:n.env,execution:{id:t.id,workflowId:t.workflowId,scope:t.scope},workflow:{id:e.id,name:e.name,scope:e.scope}}}function ir(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ar(e){if(e!=null){if(ir(e)&&typeof e.kind==`string`&&typeof e.id==`string`)return{kind:e.kind,id:e.id};throw Error(`Artifact resolve expression must return an object with string kind and id fields.`)}}function or(e){if(e!==void 0){if(ir(e))return e;throw Error(`Artifact create expression must return an object.`)}}async function sr(e){let{bindingOptions:t,binding:n,existingArtifactRef:r,executionId:i,scope:a,initialData:o,bus:s}=e,c=null;if(r!==void 0){let e=await s.request(f.query,{kind:r.kind,ids:[r.id],currentOnly:!0});if(e.artifacts.length>0)c=e.artifacts[0];else return}else{if(o===void 0)throw Error(`Workflow artifact binding for '${n.kind}' requires an existing artifact reference or explicit initial data from its create expression.`);c=(await s.request(f.create,{kind:n.kind,schemaVersion:n.schemaVersion,scope:a??n.scope,data:o,relations:[],actor:nr(i)})).artifact}return{current:c,schemaVersion:n.schemaVersion,statusPath:t.statusPath,zodSchema:t.schema}}async function cr(e){let{definition:t,execution:n,runContext:r,zodSchema:i,bus:a}=e,o=t.artifact;if(o===void 0)return;let s=rr(t,n,r),c=r.artifactRef??(o.resolve===void 0?void 0:ar(M(o.resolve,s))),l=c===void 0&&o.create!==void 0?or(M(o.create,s)):void 0,u=await sr({bindingOptions:{kind:o.kind,schemaVersion:o.schemaVersion,scope:o.scope,...o.resolve===void 0?{}:{resolve:o.resolve},...o.create===void 0?{}:{create:o.create},...o.statusPath===void 0?{}:{statusPath:o.statusPath},...i===void 0?{}:{schema:i}},binding:o,existingArtifactRef:c,executionId:n.id,scope:o.scope,initialData:l,bus:a});if(u===void 0)throw Error(`Workflow artifact binding could not be resolved for the configured artifact reference.`);return u}const lr=new WeakMap;function ur(e,t){let n=(lr.get(e)??Promise.resolve()).catch(()=>void 0).then(t);return lr.set(e,n.then(()=>void 0,()=>void 0)),n}function dr(e,t){switch(t.operation){case`set`:return t.data;case`merge`:return{...e,...t.data};case`append`:{let n={...e};for(let[r,i]of Object.entries(t.data)){let t=e[r];Array.isArray(t)&&Array.isArray(i)?n[r]=[...t,...i]:n[r]=i}return n}}}function fr(e,t,n){let[r,...i]=t;if(i.length===0)return{...e,[r]:n};let a=e[r]!==null&&typeof e[r]==`object`&&!Array.isArray(e[r])?e[r]:{};return{...e,[r]:fr(a,i,n)}}function pr(e,t,n){return fr(e,mr(t).slice(1).split(`/`).map(e=>e.replace(/~1/g,`/`).replace(/~0/g,`~`)),n)}function mr(e){if(!e.startsWith(`/`)&&e.split(`.`).some(e=>e.length===0))throw Error(`Status path must contain nonempty dot-separated segments`);let t=e.startsWith(`/`)?e:`/${e.split(`.`).map(e=>e.replace(/~/g,`~0`).replace(/\//g,`~1`)).join(`/`)}`;return d.revise.request.shape.statusPath.unwrap().parse(t)}function hr(e,t,n){if(n===`set`||n===`functional`)return[];let r=[];for(let n of Object.keys(t))e[n]!==t[n]&&r.push(`/${n}`);return r}async function gr(e,t){if(typeof t==`function`)return{nextData:await t(Object.freeze({...e})),operationLabel:`functional`,changedPaths:[]};let n=dr(e,t),r=hr(e,n,t.operation);return{nextData:n,operationLabel:t.operation,changedPaths:r}}function _r(e){let{executionId:t,frameId:n,bindingState:r,bus:i}=e,a=Object.freeze({...r.current.data}),o=async e=>ur(r,async()=>{let a=r.statusPath===void 0?void 0:mr(r.statusPath),o=r.current,{nextData:s,operationLabel:c,changedPaths:l}=await gr(o.data,e);if(r.zodSchema!==void 0){let e=r.zodSchema.safeParse(s);if(!e.success)throw Error(`Artifact data validation failed: ${e.error.message}`)}let u=await i.request(f.revise,{...a!==void 0&&{statusPath:a},previous:{refClass:`artifact`,kind:o.kind,id:o.id,revision:o.revision},revision:{kind:o.kind,schemaVersion:r.schemaVersion,scope:o.scope,data:s,relations:o.relations,actor:nr(t)}});r.current=u.artifact;let d=u.artifact.revision;return i.emit(pe.artifact.updated,{executionId:t,frameId:n,artifactRef:{kind:u.artifact.kind,id:u.artifact.id},paths:l,operation:c,revision:d}).catch(e=>{console.error(`[ArtifactContext] Failed to emit artifact.updated event:`,e)}),d});return{data:a,updateArtifact:o,updateStatus:async e=>{if(r.statusPath===void 0)throw Error(`updateStatus() called but no statusPath is configured on the artifact binding. Set statusPath in the .artifact() builder call to use updateStatus().`);let t=r.statusPath;return o(n=>pr(n,t,e))}}}function vr(e,t){return{async get(){return(await t.request(O.state.get,{executionId:e})).value},async update(n){let r=await t.request(O.state.get,{executionId:e}),i=structuredClone(r.value),a=await n(i),o=a===void 0?i:a,s=ct(r.value,o);return(await t.request(O.state.patch,{executionId:e,expectedSequence:r.sequence,patch:s,nextValue:o})).value}}}function yr(e,t,n){let r=e.providerContext?.state===`resolved`?e.providerContext:void 0,i=e.providerConfigId??r?.providerConfigId;return{durationMs:t,...n===void 0?{}:{...n.inputTokens===void 0?{}:{inputTokens:n.inputTokens},...n.cachedInputTokens===void 0?{}:{cachedInputTokens:n.cachedInputTokens},...n.outputTokens===void 0?{}:{outputTokens:n.outputTokens},toolCallCount:n.toolCallCount},binding:{adapterName:e.adapterName,...i===void 0?{}:{providerConfigId:i},...r===void 0?{}:{providerDefinitionId:r.definitionId},...e.model===void 0?{}:{model:e.model},...r===void 0?{}:{auth:{mode:r.auth.mode,owner:r.auth.method.owner,methodId:r.auth.method.methodId}}}}}async function br(e,t,n){if(t.signal.aborted)return{status:`cancelled`};let r=await t.bus.requestOptional(O.resolveRole,{roleId:e.roleId});if(!r.handled)return{status:`failed`,error:e.unresolvedRoleError};let i=N(e.prompt,B(n)),a=e.completion===void 0?r.data:{...r.data,completion:e.completion};return xr({...e,task:i,resolvedConfig:a},t)}async function xr(e,t){if(t.signal.aborted)return{status:`cancelled`};let n=performance.now(),r=await t.bus.requestOptional(w.spawn,{parentSessionId:t.execution.coordinatorSessionId??t.executionId,depth:1,config:Or(e.task,e.resolvedConfig,e.outputSchema)});if(!r.handled)return{status:`failed`,error:e.unavailableRuntimeError};let i=await wr(e,t,r.data.subagentId,{attempts:5}),a=await kr(e,t,r.data.subagentId);if(a===`aborted`)return{status:`cancelled`};if(i||await wr(e,t,r.data.subagentId,{attempts:1}),!a.handled)return await V(e,t,r.data.subagentId,`Workflow execution '${t.executionId}' could not await ${e.cancellationLabel} '${e.nodeId}'`),{status:`failed`,error:e.unavailableAwaitError};if(t.signal.aborted||a.data.status===`cancelled`)return{status:`cancelled`};if(a.data.status===`completed`){let r=a.data.result??null;try{return{status:`completed`,output:await Sr({...e,toolObservations:a.data.toolObservations,usage:a.data.usage},t,r,Cr(n))}}catch(e){if(t.signal.aborted)return{status:`cancelled`};throw e}}return(a.data.status===`timeout`||a.data.status===`waiting_input`)&&await V(e,t,r.data.subagentId,`Workflow execution '${t.executionId}' abandoned non-terminal ${e.cancellationLabel} '${e.nodeId}'`),{status:`failed`,error:`${e.nodeLabel} '${e.nodeId}' subagent ${a.data.status}: ${a.data.error??`no result`}`}}async function Sr(e,t,n,r=0){if(e.resultFinalizerId===void 0)return n;if(e.frameId===void 0||e.delegateNodeType===void 0)throw Error(`Delegate result finalizer '${e.resultFinalizerId}' requires frame and delegate node identity`);let i={finalizerId:e.resultFinalizerId,executionId:t.executionId,workflowId:t.workflowId,frameId:e.frameId,nodeId:e.nodeId,nodeType:e.delegateNodeType,rawResult:n,toolObservations:[...e.toolObservations??[]],...e.resolvedConfig===void 0?{}:{economics:yr(e.resolvedConfig,r,e.usage)}},a=await t.bus.requestOptional(O.finalizeDelegateResult,i,{signal:t.signal});if(a.handled)return a.data.output;let{subjects:o}=he(e.resultFinalizerId),{finalizerId:s,...c}=i;return(await t.bus.request(o.finalize,c,{signal:t.signal})).output}function Cr(e){let t=performance.now()-e;return!Number.isFinite(t)||t<=0?0:Math.min(2**53-1,Math.round(t))}async function wr(e,t,n,r){if(e.frameId===void 0)return!0;try{let i=await Tr(t,n,r.attempts);return i===void 0?!1:(await t.bus.emit(O.frame.sessionLinked,{executionId:t.executionId,frameId:e.frameId,sessionId:i}),!0)}catch(t){return console.warn(`[workflow-engine] Failed to emit frame.sessionLinked for frame '${e.frameId}' and subagent '${n}'`,t),!1}}async function Tr(e,t,n){for(let r=0;r<n;r+=1){if(e.signal?.aborted)return;let i=await Er(e,t);if(i===void 0||!i.handled)return;if(i.data.childSessionId!==void 0)return i.data.childSessionId;if(r<n-1&&!await Dr(e.signal,20))return}}async function Er(e,t){try{return await e.bus.requestOptional(w.getStatus,{subagentId:t},{timeout:25,signal:e.signal})}catch{return}}function Dr(e,t){return e.aborted?Promise.resolve(!1):new Promise(n=>{let r,i=t=>{r!==void 0&&(clearTimeout(r),r=void 0),e.removeEventListener(`abort`,a),n(t)},a=()=>i(!1);r=setTimeout(()=>i(!0),t),e.addEventListener(`abort`,a,{once:!0}),e.aborted&&i(!1)})}function Or(e,t,n){return{task:e,adapterName:t.adapterName,...t.providerConfigId===void 0?{}:{providerConfigId:t.providerConfigId},...t.model===void 0?{}:{model:t.model},...t.reasoningEffort===void 0?{}:{reasoningEffort:t.reasoningEffort},...t.harnessId===void 0?{}:{harnessId:t.harnessId},...t.systemPrompt===void 0?{}:{systemPrompt:t.systemPrompt},...t.contextMode===void 0?{}:{contextMode:t.contextMode},...t.providerContext===void 0?{}:{providerContext:t.providerContext},...t.adapterConfig===void 0?{}:{adapterConfig:t.adapterConfig},...t.tools===void 0?{}:{tools:t.tools},...t.disallowedTools===void 0?{}:{disallowedTools:t.disallowedTools},...t.allowedDirectories===void 0?{}:{allowedDirectories:t.allowedDirectories},...t.completion===void 0?{}:{completion:t.completion},...n===void 0?{}:{responseSchema:n}}}async function kr(e,t,n){if(t.signal.aborted)return await V(e,t,n),`aborted`;let r=t.bus.requestOptional(w.await,{subagentId:n,...e.timeoutMs===void 0?{}:{timeoutMs:e.timeoutMs}},{timeout:0});if(t.signal.aborted)return await V(e,t,n),`aborted`;let i,a=new Promise(e=>{i=()=>e(`aborted`),t.signal.addEventListener(`abort`,i,{once:!0})});try{let i=await Promise.race([r,a]);return i===`aborted`&&await V(e,t,n),i}catch(r){throw await V(e,t,n,`Workflow execution '${t.executionId}' failed awaiting ${e.cancellationLabel} '${e.nodeId}'`),r}finally{i!==void 0&&t.signal.removeEventListener(`abort`,i)}}async function V(e,t,n,r){try{await t.bus.requestOptional(w.kill,{subagentId:n,reason:r??`Workflow execution '${t.executionId}' cancelled ${e.cancellationLabel} '${e.nodeId}'`})}catch(t){console.warn(`[workflow-engine] Best-effort subagent kill failed for '${n}' (${e.cancellationLabel} '${e.nodeId}')`,t)}}async function Ar(e,t,n,r){if(t.signal.aborted)return{status:`cancelled`};let i=Yn(n.frames),a=t.runtimeHandlers.get(e.id);if(a===void 0)return jr(e,t,n,r);let o=t.artifactBinding!==void 0&&r!==void 0?_r({executionId:t.executionId,frameId:r,bindingState:t.artifactBinding,bus:t.bus}):void 0,s=t.definition.state===void 0?void 0:vr(t.executionId,t.bus);async function c(n){if(r===void 0){console.warn(`[station-node] updateProgress called without frameId for node '${e.id}'; skipping emit`);return}let i=fe[`execution.progress`].parse({executionId:t.executionId,workflowId:t.workflowId,frameId:r,nodeId:e.id,progress:n,emittedAt:Date.now()});try{await t.bus.emit(O.execution.progress,i)}catch(t){console.error(`[station-node] execution.progress observer failed for ${e.id}:`,t)}}let l;try{l=await a({...t.platformContext,env:t.env,executionId:t.executionId,workflowId:t.workflowId,inputs:t.execution.inputs,config:t.execution.config??{},trigger:t.execution.triggerPayload??{},previousSteps:i,...n.item!==void 0&&{item:n.item},...n.index!==void 0&&{index:n.index},...n.previous!==void 0&&{previous:n.previous},signal:t.signal,...o!==void 0&&{artifact:o},...s!==void 0&&{state:s},bus:t.bus,updateProgress:c})}catch(e){return{status:`failed`,error:e instanceof Error?e.message:String(e)}}return{status:`completed`,output:l}}async function jr(e,t,n,r){if(e.role===void 0)return{status:`failed`,error:`No handler registered for station node '${e.id}'`};let i=e.outputSchema===void 0?void 0:{schema:e.outputSchema};return br({nodeId:e.id,nodeLabel:`Station node`,roleId:e.role,prompt:e.prompt,...i===void 0?{}:{outputSchema:i},...e.timeoutMs===void 0?{}:{timeoutMs:e.timeoutMs},...e.completion===void 0?{}:{completion:e.completion},unresolvedRoleError:`No runtime handler registered for station node '${e.id}', and role '${e.role}' could not be resolved`,unavailableRuntimeError:`Subagent runtime is not available for station node '${e.id}'`,unavailableAwaitError:`Subagent runtime cannot await station node '${e.id}'`,cancellationLabel:`station`,...r===void 0?{}:{frameId:r}},t,n)}function Mr(e,t){return t===void 0?e:{...e,tools:[...t],disallowedTools:void 0}}function Nr(e,t){let n=Mr({...t,...e.completion===void 0?{}:{completion:e.completion}},e.allowedTools);return Fr(n)?{...n,contextMode:`fresh`}:n}function Pr(e,t){return Mr({...t,completion:e.completion??t.completion??`tool`},e.allowedTools)}function Fr(e){return e.completion===`turn`&&[e.harnessId,e.contextMode,e.adapterConfig,e.tools,e.disallowedTools,e.allowedDirectories].every(e=>e===void 0)}async function Ir(e,t,n,r){if(t.signal.aborted)return{status:`cancelled`};let i=await t.bus.requestOptional(O.resolveAgent,{agentId:e.agentId});if(!i.handled)return{status:`failed`,error:`Agent '${e.agentId}' could not be resolved for delegate-agent node '${e.id}'`};if(t.signal.aborted)return{status:`cancelled`};let a=Rr(e,n);if(a.status===`failed`)return a;let o=e.outputSchema===void 0?void 0:{schema:e.outputSchema},s=Pr(e,i.data);return xr({nodeId:e.id,nodeLabel:`Delegate-agent node`,task:a.task,resolvedConfig:s,...o===void 0?{}:{outputSchema:o},unavailableRuntimeError:`Subagent runtime is not available for delegate-agent node '${e.id}'`,unavailableAwaitError:`Subagent runtime cannot await delegate-agent node '${e.id}'`,cancellationLabel:`delegate-agent`,...r===void 0?{}:{frameId:r},...e.resultFinalizerId===void 0?{}:{resultFinalizerId:e.resultFinalizerId},delegateNodeType:`delegate-agent`},t)}async function Lr(e,t,n,r){if(t.signal.aborted)return{status:`cancelled`};let i=await t.bus.requestOptional(O.resolveRole,{roleId:e.role});if(!i.handled)return{status:`failed`,error:`Role '${e.role}' could not be resolved for delegate-role node '${e.id}'`};let a=e.outputSchema===void 0?void 0:{schema:e.outputSchema},o=N(e.prompt,B(n)),s=Nr(e,i.data);return xr({nodeId:e.id,nodeLabel:`Delegate-role node`,task:o,resolvedConfig:s,...a===void 0?{}:{outputSchema:a},...e.timeoutMs===void 0?{}:{timeoutMs:e.timeoutMs},unavailableRuntimeError:`Subagent runtime is not available for delegate-role node '${e.id}'`,unavailableAwaitError:`Subagent runtime cannot await delegate-role node '${e.id}'`,cancellationLabel:`delegate-role`,...r===void 0?{}:{frameId:r},...e.resultFinalizerId===void 0?{}:{resultFinalizerId:e.resultFinalizerId},delegateNodeType:`delegate-role`},t)}function Rr(e,t){try{let n=B(t);return{status:`completed`,task:zr(e.inputExpression===void 0?n:M(e.inputExpression,n))}}catch(t){let n=t instanceof Error?t.message:String(t);return{status:`failed`,error:`delegate-agent node '${e.id}': input expression evaluation failed: ${n}`}}}function zr(e){if(typeof e==`string`)return e;if(e===void 0)return``;try{return JSON.stringify(e,null,2)??``}catch{return String(e)}}function Br(e,t,n,r){try{let i=M(n,B(r));return Array.isArray(i)?i:{status:`failed`,error:`${t} node '${e}': collection expression did not resolve to an array (got ${typeof i})`}}catch(n){return{status:`failed`,error:`${t} node '${e}': collection expression evaluation failed: ${n instanceof Error?n.message:String(n)}`}}}function Vr(e,t,n){for(let r of[...e.nodes].reverse()){let e=n.getFramesByNodeId(r.id);for(let n of e)if(n.parentFrameId===t&&n.status===`completed`)return n.output}}function Hr(e,t,n){return Vr(e.body,t,n)}function Ur(e){if(e.length===0)return;let t=new Map,n=new Map;for(let r of e){n.set(r.frameId,r);let e=t.get(r.nodeId)??[];e.push(r),t.set(r.nodeId,e)}return{byNodeId:t,byFrameId:n}}const Wr=new Set([`completed`,`skipped`,`waiting`]);function H(e,t,n){let r=e?.byNodeId.get(t)??[],i=n.statuses??Wr;return r.find(e=>e.parentFrameId===n.parentFrameId&&e.branchKey===n.branchKey&&e.iteration===n.iteration&&i.has(e.status))}function U(e,t,n){let r={...e.frames,[t]:n};return{...e,frames:r,previousSteps:Yn(r),output:n.status===`completed`?n.output:e.output}}function Gr(e,t){if(typeof AbortSignal.any==`function`)return AbortSignal.any([e,t]);let n=new AbortController,r=()=>n.abort();return e.addEventListener(`abort`,r,{once:!0}),t.addEventListener(`abort`,r,{once:!0}),n.signal}const Kr=new Set([`completed`,`running`]);function qr(e,t){return e.status===`running`&&t.pauseSignal?.aborted===!0&&!t.outerSignal.aborted}async function Jr(e,t,n,r,i,a,o=`all-settled`){if(t.signal.aborted)return{status:`cancelled`};let s=Object.entries(e.branches);if(s.length===0)return{status:`completed`,output:Zr({},o)};let c=new AbortController,l=new AbortController,u=t.suspensionStrategy!==`wait-in-process`,d=o===`fail-fast`?Gr(c.signal,l.signal):u?l.signal:void 0,f=d===void 0?t.signal:Gr(t.signal,d),p=f===t.signal?t:t.withSignal(f),m=s.map(([s,c])=>Yr(s,c,e,p,n,r,i,a,{outerSignal:t.signal,pauseSignal:o===`fail-fast`||u?l.signal:void 0}));if(o===`all-settled`){let e=await Promise.all(u?m.map(e=>e.then(e=>(e.status===`paused`&&l.abort(),e))):m),t=e.find(e=>e.status===`paused`);return t===void 0?{status:`completed`,output:Zr(Qr(s,e),o)}:t}let h=await Xr(s,m,c,l);return h.type===`cancelled`?{status:`cancelled`}:h.type===`paused`?h.outcome:h.type===`failed`?{status:`failed`,error:h.error}:{status:`completed`,output:Zr(Qr(s,h.outcomes),o)}}async function Yr(e,t,n,r,i,a,o,s,c){if(r.signal.aborted)return{status:`cancelled`};let l=H(r.resumeFrames,n.id,{parentFrameId:o,branchKey:e,statuses:Kr});if(l?.status===`completed`)return{status:`completed`,...l.output===void 0?{}:{output:l.output}};let u=l??r.createFrame({nodeId:n.id,nodeType:`parallel`,path:s,parentFrameId:o,branchKey:e});if(r.signal.aborted)return qr(u,c)||await $(u,r),{status:`cancelled`};l===void 0&&await X(u,r);let d;try{d=await a(t,r,i,u.frameId,u.path)}catch(e){let t=e instanceof Error?e.message:String(e);return await Q(u,r,t),{status:`failed`,error:t}}switch(d.status){case`completed`:{let e=Vr(t,u.frameId,r);return await Z(u,r,e),{status:`completed`,output:e}}case`skipped`:return await Z(u,r),{status:`completed`};case`cancelled`:return qr(u,c)||await $(u,r),{status:`cancelled`};case`paused`:return d;case`failed`:return await Q(u,r,d.error),{status:`failed`,error:d.error}}}async function Xr(e,t,n,r){let i,a,o=t.map(e=>e.then(e=>(e.status===`failed`&&i===void 0?(i=e.error,n.abort()):e.status===`paused`&&a===void 0&&(a=e,r.abort()),e),e=>{let t=e instanceof Error?e.message:String(e);return i===void 0&&(i=t,n.abort()),{status:`failed`,error:t}})),s=await Promise.all(o);return a===void 0?s.some(e=>e.status===`cancelled`)&&i===void 0?{type:`cancelled`}:i===void 0?{type:`completed`,outcomes:s}:{type:`failed`,error:i}:{type:`paused`,outcome:a}}function Zr(e,t){return{mode:t,branches:e}}function Qr(e,t){let n={};for(let r=0;r<e.length;r++){let[i]=e[r],a=t[r];n[i]=$r(a)}return n}function $r(e){switch(e.status){case`completed`:return{status:`fulfilled`,...e.output===void 0?{}:{value:e.output}};case`skipped`:return{status:`fulfilled`,value:null};case`cancelled`:return{status:`cancelled`};case`paused`:return{status:`paused`,pausedAtGateId:e.pausedAtGateId,pausedAtFrameId:e.pausedAtFrameId};case`failed`:return{status:`rejected`,reason:e.error}}}const ei=new at.default({allErrors:!0,strict:!1});function ti(e,t){if(t===void 0)return{status:`ok`};try{return{status:`ok`,validator:ei.compile(t)}}catch(t){return{status:`failed`,error:`Gate '${e}' has an invalid resumeSchema: ${t instanceof Error?t.message:String(t)}`}}}function ni(e,t){return e===void 0||e(t)?{valid:!0}:{valid:!1,error:ii(e.errors??[])}}function ri(e,t,n){let r=ti(e,t);return r.status===`failed`?{valid:!1,error:r.error}:ni(r.validator,n)}function ii(e){return e.length===0?`schema validation failed`:e.map(e=>`${e.instancePath.length>0?e.instancePath:`/`} ${e.message??`is invalid`}`).join(`; `)}function ai(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}const oi={action:`approve`,source:`timeout`};function si(e){return e===void 0?{}:{reason:e}}async function ci(e,t,n,r){let i=()=>{t.value&&(t.value=!1,e.reject(`cancelled`))};n.addEventListener(`abort`,i,{once:!0}),n.aborted&&i();let a=[e.promise],o;if(r!==null){let e=ai();o=setTimeout(()=>{t.value&&(t.value=!1,n.removeEventListener(`abort`,i),e.reject(`timed-out`))},r),a.push(e.promise)}try{let e=await Promise.race(a);return n.removeEventListener(`abort`,i),o!==void 0&&clearTimeout(o),{action:e.action,resumeData:e.resumeData,timedOut:!1,wasCancelled:!1,reason:e.reason}}catch(e){return o!==void 0&&clearTimeout(o),n.removeEventListener(`abort`,i),e===`timed-out`?{action:`reject`,resumeData:null,timedOut:!0,wasCancelled:!1}:{action:`reject`,resumeData:null,timedOut:!1,wasCancelled:!0}}}async function li(e,t,n,r,i,a){let o={required:e.suspensionStrategy!==`wait-in-process`};if(a.timedOut){let a=Date.now();if(r.autoAction===`approve`){let s=ni(i,oi);return s.valid?(await W(e,{...r,status:`resumed`,resumeData:oi,resolvedAt:a},o),await G(e,t.id,n,{action:`approve`,source:`timeout`}),{status:`completed`,output:{resumeData:oi}}):(await W(e,{...r,status:`timed-out`,resolvedAt:a},o),await G(e,t.id,n,{action:`reject`,source:`timeout`}),{status:`failed`,error:`Gate '${t.id}' auto-approve timeout resume data does not match resumeSchema: ${s.error}`})}return await W(e,{...r,status:`timed-out`,resolvedAt:a},o),await G(e,t.id,n,{action:`reject`,source:`timeout`}),{status:`failed`,error:`Gate '${t.id}' timed out after ${String(r.timeoutMs)}ms and auto-rejected`}}if(a.wasCancelled||e.signal.aborted)return await W(e,{...r,status:`cancelled`,resolvedAt:Date.now()},o),await G(e,t.id,n,{source:`cancelled`}),{status:`cancelled`};let s=Date.now();await W(e,{...r,status:a.action===`reject`?`rejected`:`resumed`,resumeData:a.resumeData,...si(a.reason),resolvedAt:s},o);try{await e.bus.emit(O.gate.resumed,{executionId:e.executionId,frameId:n,nodeId:t.id,resumeData:a.resumeData}),await G(e,t.id,n,{action:a.action,source:`user`,...si(a.reason)})}catch(e){console.error(`[GateNode] gate.resumed emit failed for '${t.id}':`,e)}return{status:`completed`,output:{resumeData:a.resumeData}}}async function ui(e,t,n,r){if(t.signal.aborted)return{status:`cancelled`};let i=e.resumeSchema??{};if(t.suspensionStrategy!==`wait-in-process`){let n=await mi(t,e,r);if(n!==void 0)return n}let a=ti(e.id,e.resumeSchema);return a.status===`failed`?{status:`failed`,error:a.error}:di(t,e,n,r,i,a.validator)}async function di(e,t,n,r,i,a){let o=N(t.prompt,B(n)),s={executionId:e.executionId,nodeId:t.id,frameId:r,schema:i,prompt:o,status:`waiting`,autoAction:t.autoAction,timeoutMs:t.timeoutMs,createdAt:Date.now()},c=e.suspensionStrategy!==`wait-in-process`;if(await W(e,s,{required:c}),await e.updateFrame(r,{status:`waiting`},{requireFrameStorage:c}),c)return await fi(e,t,r,i,o,s.createdAt),{status:`paused`,pausedAtGateId:t.id,pausedAtFrameId:r};let l={value:!0},u=ai(),d=e.bus.on(O.gate.respond,async n=>{let{executionId:i,gateId:o,frameId:s,action:c,resumeData:d,reason:f}=n.payload;if(i!==e.executionId||o!==t.id||s!==void 0&&s!==r){try{await n.next()}catch(e){if(e instanceof ve)n.setResult({accepted:!1});else throw e}return}if(!l.value){n.setResult({accepted:!1});return}if(!ni(a,d).valid){n.setResult({accepted:!1});return}l.value=!1,n.setResult({accepted:!0}),u.resolve({action:c,resumeData:d,reason:f})});await fi(e,t,r,i,o,s.createdAt);let f=await ci(u,l,e.signal,t.timeoutMs);return d(),li(e,t,r,s,a,f)}async function fi(e,t,n,r,i,a){try{await e.bus.emit(O.gate.suspended,{executionId:e.executionId,frameId:n,nodeId:t.id,schema:r,prompt:i,...t.title!==void 0&&{title:t.title},autoAction:t.autoAction,timeoutMs:t.timeoutMs,openedAt:a})}catch(e){console.error(`[GateNode] gate.suspended emit failed for '${t.id}':`,e)}}async function pi(e,t,n){if(e.suspensionStrategy!==`wait-in-process`)return(await e.bus.request(F.getGateInstance,{executionId:e.executionId,nodeId:t,frameId:n})).gate;let r=await e.bus.requestOptional(F.getGateInstance,{executionId:e.executionId,nodeId:t,frameId:n});return r.handled?r.data.gate:null}async function mi(e,t,n){let r=await pi(e,t.id,n);if((r?.status===`resumed`||r?.status===`rejected`)&&r.resumeData!==void 0){let i=ri(t.id,r.schema,r.resumeData);if(!i.valid)return{status:`failed`,error:`Gate '${t.id}' persisted resumeData is invalid: ${i.error}`};try{await e.bus.emit(O.gate.resumed,{executionId:e.executionId,frameId:n,nodeId:t.id,resumeData:r.resumeData})}catch(e){console.error(`[GateNode] gate.resumed emit failed for '${t.id}':`,e)}return await G(e,t.id,n,{action:r.status===`rejected`?`reject`:`approve`,source:`user`,...si(r.reason)}),{status:`completed`,output:{resumeData:r.resumeData}}}if(r?.status===`waiting`){if(r.timeoutMs!==null&&Date.now()>=r.createdAt+r.timeoutMs){let i=ti(t.id,r.schema);return i.status===`failed`?{status:`failed`,error:i.error}:li(e,t,n,r,i.validator,{action:`reject`,resumeData:null,timedOut:!0,wasCancelled:!1})}return{status:`paused`,pausedAtGateId:t.id,pausedAtFrameId:n}}if((r?.status===`resumed`||r?.status===`rejected`)&&r.resumeData===void 0)return{status:`failed`,error:`Gate '${t.id}' has status '${r.status}' but resumeData is missing — cannot reconstruct output`};if(r!==null)return{status:`failed`,error:`Gate '${t.id}' cannot resume from status '${r.status}'`}}async function W(e,t,n={}){try{n.required===!0?await e.bus.request(F.setGateInstance,{gate:t}):await e.bus.requestOptional(F.setGateInstance,{gate:t})}catch(e){if(n.required===!0)throw e;console.warn(`[GateNode] Failed to upsert gate instance for '${t.nodeId}':`,e)}}async function G(e,t,n,r){try{await e.bus.emit(O.gate.resolved,{executionId:e.executionId,stepId:t,stepType:`gate`,frameId:n,...r})}catch(e){console.error(`[GateNode] gate.resolved emit failed for '${t}':`,e)}}function K(e){return{status:`fulfilled`,...e===void 0?{}:{value:e}}}const hi=new Set([`completed`,`running`]);function gi(e,t){return e.status===`running`&&t.pauseSignal?.aborted===!0&&!t.outerSignal.aborted}async function _i(e,t,n,r,i,a){if(t.signal.aborted)return{status:`cancelled`};let o=Br(e.id,`iterate`,e.collection,n);if(!Array.isArray(o))return o;let s=o;if(s.length===0)return{status:`completed`,output:xi([])};let c=await vi(s,e,t,n,r,i,a,e.concurrency!==void 0&&e.concurrency>0?e.concurrency:0);if(t.signal.aborted&&c.every(e=>e.status===`cancelled`))return{status:`cancelled`};let l=c.find(e=>e.status===`paused`);return l===void 0?{status:`completed`,output:xi(c)}:{status:`paused`,pausedAtGateId:l.pausedAtGateId,pausedAtFrameId:l.pausedAtFrameId}}async function vi(e,t,n,r,i,a,o,s){let c=new AbortController,l=n.suspensionStrategy!==`wait-in-process`,u=l?Gr(n.signal,c.signal):n.signal,d=u===n.signal?n:n.withSignal(u),f={outerSignal:n.signal,...l?{pauseSignal:c.signal}:{}};if(s===0){let n=e.map((e,n)=>bi(e,n,t,d,r,i,a,o,f));return Promise.all(l?n.map(e=>yi(e,c)):n)}let p=Array(e.length);for(let n=0;n<e.length;n+=s){if(d.signal.aborted){for(let t=n;t<e.length;t++)p[t]={status:`cancelled`};break}let u=Math.min(n+s,e.length),m=[];for(let s=n;s<u;s++)m.push(bi(e[s],s,t,d,r,i,a,o,f));let h=await Promise.all(l?m.map(e=>yi(e,c)):m);for(let e=0;e<h.length;e++)p[n+e]=h[e];if(h.some(e=>e.status===`paused`)){for(let t=u;t<e.length;t++)p[t]={status:`cancelled`};break}}return p}function yi(e,t){return e.then(e=>(e.status===`paused`&&t.abort(),e))}async function bi(e,t,n,r,i,a,o,s,c){if(r.signal.aborted)return{status:`cancelled`};let l={...i,item:e,index:t},u=H(r.resumeFrames,n.id,{parentFrameId:o,iteration:t,statuses:hi});if(u?.status===`completed`)return K(u.output);let d=u??r.createFrame({nodeId:n.id,nodeType:`iterate`,path:s,parentFrameId:o,iteration:t});if(r.signal.aborted)return gi(d,c)||await $(d,r),{status:`cancelled`};u===void 0&&await X(d,r);let f;try{f=await a(n.body,r,l,d.frameId,d.path)}catch(e){let t=e instanceof Error?e.message:String(e);return await Q(d,r,t),{status:`rejected`,reason:t}}switch(f.status){case`completed`:{let e=Hr(n,d.frameId,r);return await Z(d,r,e),K(e)}case`skipped`:return await Z(d,r),K();case`cancelled`:return gi(d,c)||await $(d,r),{status:`cancelled`};case`paused`:return f;case`failed`:return await Q(d,r,f.error),{status:`rejected`,reason:f.error}}}function xi(e){return{items:e}}const Si=new Set([`completed`,`running`]);async function Ci(e,t,n,r,i,a){if(t.signal.aborted)return{status:`cancelled`};let o=Br(e.id,`iterate-chain`,e.collection,n);if(!Array.isArray(o))return o;let s=o;if(s.length===0)return{status:`completed`,output:Ti([])};let c=[],l;for(let o=0;o<s.length;o++){if(t.signal.aborted)return{status:`cancelled`};let u=s[o],d=await wi(u,o,l,e,t,n,r,i,a);switch(c.push(d),d.status){case`fulfilled`:l=d.value;break;case`rejected`:return{status:`failed`,error:d.reason};case`cancelled`:return{status:`cancelled`};case`paused`:return{status:`paused`,pausedAtGateId:d.pausedAtGateId,pausedAtFrameId:d.pausedAtFrameId}}}return{status:`completed`,output:Ti(c)}}async function wi(e,t,n,r,i,a,o,s,c){if(i.signal.aborted)return{status:`cancelled`};let l={...a,item:e,index:t,...n!==void 0&&{previous:n}},u=H(i.resumeFrames,r.id,{parentFrameId:s,iteration:t,statuses:Si});if(u?.status===`completed`)return K(u.output);let d=u??i.createFrame({nodeId:r.id,nodeType:`iterate-chain`,path:c,parentFrameId:s,iteration:t});if(i.signal.aborted)return await $(d,i),{status:`cancelled`};u===void 0&&await X(d,i);let f;try{f=await o(r.body,i,l,d.frameId,d.path)}catch(e){let t=e instanceof Error?e.message:String(e);return await Q(d,i,t),{status:`rejected`,reason:t}}switch(f.status){case`completed`:{let e=Hr(r,d.frameId,i);return await Z(d,i,e),K(e)}case`skipped`:return await Z(d,i),K();case`cancelled`:return await $(d,i),{status:`cancelled`};case`paused`:return f;case`failed`:return await Q(d,i,f.error),{status:`rejected`,reason:f.error}}}function Ti(e){return{items:e}}async function Ei(e,t,n,r){let i=()=>{t.value&&(t.value=!1,e.reject(`cancelled`))};n.addEventListener(`abort`,i,{once:!0}),n.aborted&&i();let a=[e.promise],o;if(r!==null){let e=new Promise((e,a)=>{o=setTimeout(()=>{t.value&&(t.value=!1,n.removeEventListener(`abort`,i),a(`timed-out`))},r)});a.push(e)}try{return{status:`resolved`,value:await Promise.race(a)}}catch(e){if(e===`timed-out`)return{status:`timed-out`};if(e===`cancelled`)return{status:`cancelled`};throw e}finally{o!==void 0&&clearTimeout(o),n.removeEventListener(`abort`,i)}}const Di={action:`approve`,source:`timeout`};async function q(e,t,n){try{n?await e.bus.request(F.setGateInstance,{gate:t}):await e.bus.requestOptional(F.setGateInstance,{gate:t})}catch(e){if(n)throw e;console.warn(`[LoopNode] Failed to upsert escalation gate for '${t.nodeId}':`,e)}}async function Oi(e,t,n,r,i,a){try{await e.bus.emit(O.gate.suspended,{executionId:e.executionId,frameId:n,nodeId:t.id,schema:r,prompt:i,...t.gate.escalation?.title!==void 0&&{title:t.gate.escalation.title},autoAction:t.gate.escalation?.autoAction??`reject`,timeoutMs:t.gate.escalation?.timeoutMs??null,openedAt:a})}catch(e){console.error(`[LoopNode] gate.suspended emit failed for '${t.id}':`,e)}}async function J(e,t,n,r){try{await e.bus.emit(O.gate.resolved,{executionId:e.executionId,stepId:t,stepType:`gate`,frameId:n,...r})}catch(e){console.error(`[LoopNode] gate.resolved emit failed for '${t}':`,e)}}function ki(e){let{node:t,ctx:n,parentFrameId:r,validator:i,pending:a,deferred:o}=e;return n.bus.on(O.gate.respond,async e=>{let{executionId:s,gateId:c,frameId:l,action:u,resumeData:d,reason:f}=e.payload;if(s!==n.executionId||c!==t.id||l!==void 0&&l!==r){try{await e.next()}catch(t){if(t instanceof ve)e.setResult({accepted:!1});else throw t}return}if(!a.value){e.setResult({accepted:!1});return}if(!ni(i,d).valid){e.setResult({accepted:!1});return}a.value=!1,e.setResult({accepted:!0}),o.resolve({action:u,resumeData:d,reason:f})})}async function Ai(e,t,n,r,i,a,o){let s=ti(e.id,e.gate.escalation?.resumeSchema);if(s.status===`failed`)return{status:`failed`,error:s.error};let c={value:!0},l=ai(),u=ki({node:e,ctx:t,parentFrameId:n,validator:s.validator,pending:c,deferred:l});await Oi(t,e,n,r.schema,r.prompt??``,r.createdAt);try{let s=await Ei(l,c,t.signal,r.timeoutMs);return s.status===`timed-out`?Ni(t,e,n,r,i,a,o,!1):s.status===`resolved`?ji(t,e.id,n,r,s.value,i,a,o):(await q(t,{...r,status:`cancelled`,resolvedAt:Date.now()},!1),await J(t,e.id,n,{source:`cancelled`}),{status:`cancelled`})}finally{u()}}async function ji(e,t,n,r,i,a,o,s){let c=Date.now(),l=i.action===`reject`?`rejected`:`resumed`;await q(e,{...r,status:l,resumeData:i.resumeData,...i.reason===void 0?{}:{reason:i.reason},resolvedAt:c},!1);try{await e.bus.emit(O.gate.resumed,{executionId:e.executionId,frameId:n,nodeId:t,resumeData:i.resumeData}),await J(e,t,n,{action:i.action,source:`user`,...i.reason===void 0?{}:{reason:i.reason}})}catch(e){console.error(`[LoopNode] gate.resumed emit failed for '${t}':`,e)}return{status:`completed`,output:Y(`escalate`,o,a,s,i.resumeData)}}async function Mi(e,t,n,r,i,a,o){let s=e.gate.escalation;if(s===void 0)return{status:`completed`,output:Y(`escalate`,a,i,o)};let c=N(s.prompt,B(n)),l=s.resumeSchema??{},u={executionId:t.executionId,nodeId:e.id,frameId:r,schema:l,prompt:c,status:`waiting`,autoAction:s.autoAction??`reject`,timeoutMs:s.timeoutMs??null,createdAt:Date.now()},d=t.suspensionStrategy!==`wait-in-process`;return await q(t,u,d),await t.updateFrame(r,{status:`waiting`},{requireFrameStorage:d}),d?(await Oi(t,e,r,l,c,u.createdAt),{status:`paused`,pausedAtGateId:e.id,pausedAtFrameId:r}):Ai(e,t,r,u,i,a,o)}async function Ni(e,t,n,r,i,a,o,s=!0){let c=Date.now();if(r.autoAction===`approve`){let l=ri(t.id,r.schema,Di);return l.valid?(await q(e,{...r,status:`resumed`,resumeData:Di,resolvedAt:c},s),await J(e,t.id,n,{action:`approve`,source:`timeout`}),{status:`completed`,output:Y(`escalate`,a,i,o,Di)}):(await q(e,{...r,status:`timed-out`,resolvedAt:c},s),await J(e,t.id,n,{action:`reject`,source:`timeout`}),{status:`failed`,error:`Loop '${t.id}' escalation gate auto-approve timeout resume data does not match resumeSchema: ${l.error}`})}return await q(e,{...r,status:`timed-out`,resolvedAt:c},s),await J(e,t.id,n,{action:`reject`,source:`timeout`}),{status:`failed`,error:`Loop '${t.id}' escalation gate timed out after ${String(r.timeoutMs)}ms and auto-rejected`}}async function Pi(e,t,n){if(e.suspensionStrategy!==`wait-in-process`)return(await e.bus.request(F.getGateInstance,{executionId:e.executionId,nodeId:t,frameId:n})).gate;let r=await e.bus.requestOptional(F.getGateInstance,{executionId:e.executionId,nodeId:t,frameId:n});return r.handled?r.data.gate:null}async function Fi(e,t,n,r,i,a){let o=await Pi(e,t.id,n);if(o!==null){if((o.status===`resumed`||o.status===`rejected`)&&o.resumeData!==void 0){let s=ri(t.id,o.schema,o.resumeData);if(!s.valid)return{status:`failed`,error:`Loop '${t.id}' escalation gate resumeData is invalid: ${s.error}`};try{await e.bus.emit(O.gate.resumed,{executionId:e.executionId,frameId:n,nodeId:t.id,resumeData:o.resumeData})}catch(e){console.error(`[LoopNode] gate.resumed emit failed for '${t.id}':`,e)}return await J(e,t.id,n,{action:o.status===`rejected`?`reject`:`approve`,source:`user`,...o.reason===void 0?{}:{reason:o.reason}}),{status:`completed`,output:Y(`escalate`,i,r,a,o.resumeData)}}return o.status===`waiting`?o.timeoutMs!==null&&Date.now()>=o.createdAt+o.timeoutMs?Ni(e,t,n,o,r,i,a):{status:`paused`,pausedAtGateId:t.id,pausedAtFrameId:n}:(o.status===`resumed`||o.status===`rejected`)&&o.resumeData===void 0?{status:`failed`,error:`Loop '${t.id}' escalation gate has status '${o.status}' but resumeData is missing`}:{status:`failed`,error:`Loop '${t.id}' escalation gate cannot resume from status '${o.status}'`}}}const Ii=new Set([`completed`,`running`]);async function Li(e,t,n,r,i,a,o){let s=H(n.resumeFrames,e.id,{parentFrameId:a,iteration:t,statuses:Ii});if(s?.status===`completed`)return{terminal:!1,output:s.output??null,replayed:!0,gateExpressionCtx:zi(e,n,r,s.frameId)};let c=s??n.createFrame({nodeId:e.id,nodeType:`loop`,path:o,parentFrameId:a,iteration:t});if(n.signal.aborted)return await $(c,n),{terminal:!0,outcome:{status:`cancelled`}};s===void 0&&await X(c,n);let l=await Bi(e,c,n,r,i);if(l!==void 0)return{terminal:!0,outcome:l};let u=Vr(e.body,c.frameId,n)??null;return await Z(c,n,u),{terminal:!1,output:u,replayed:!1,gateExpressionCtx:zi(e,n,r,c.frameId)}}function Ri(e,t,n,r){return H(n.resumeFrames,e.id,{parentFrameId:r,iteration:t,statuses:Ii})!==void 0}function zi(e,t,n,r){let i=n;for(let n of e.body.nodes){let e=t.getFramesByNodeId(n.id).find(e=>e.parentFrameId===r&&e.status===`completed`);e!==void 0&&(i=U(i,n.id,{status:`completed`,...e.output===void 0?{}:{output:e.output}}))}return i}async function Bi(e,t,n,r,i){let a;try{a=await i(e.body,n,r,t.frameId,t.path)}catch(e){let r=e instanceof Error?e.message:String(e);return await Q(t,n,r),{status:`failed`,error:r}}switch(a.status){case`failed`:return await Q(t,n,a.error),{status:`failed`,error:a.error};case`cancelled`:return await $(t,n),{status:`cancelled`};case`paused`:return a;case`skipped`:case`completed`:return}}function Vi(e,t,n,r,i){let a=null;if(e.gate.input!==void 0)try{let t=B(r);a=M(e.gate.input,t)}catch(t){let n=t instanceof Error?t.message:String(t);return{status:`failed`,error:`Loop node '${e.id}': gate input expression evaluation failed: ${n}`}}let o=e.gate.config??null,s=i(a,o,{executionId:n.executionId,nodeId:e.id,round:t+1,maxRounds:e.maxRounds});return s.kind===`loop`&&t+1>=e.maxRounds?{kind:`escalate`,reason:`max_rounds_reached`}:s}async function Hi(e,t,n,r,i,a){if(t.signal.aborted)return{status:`cancelled`};let o=t.runtimeLoopGates.get(e.gate.handler);if(o===void 0)return{status:`failed`,error:`Loop node '${e.id}': no gate handler registered for '${e.gate.handler}'`};let s=[],c=0;for(;;){if(t.signal.aborted)return{status:`cancelled`};let l=await Li(e,c,t,n,r,i,a);if(l.terminal)return l.outcome;if(s.push(l.output),l.replayed){if(c++,Ri(e,c,t,i))continue;if(e.gate.escalation!==void 0&&t.suspensionStrategy!==`wait-in-process`){let n=await Fi(t,e,i,{kind:`escalate`,reason:`resumed_from_gate`},c,s);if(n!==void 0)return n}continue}let u=Vi(e,c,t,l.gateExpressionCtx,o);if(`status`in u)return u;if(u.kind===`pass`)return{status:`completed`,output:Y(`pass`,c+1,u,s)};if(u.kind===`escalate`)return e.gate.escalation===void 0?{status:`completed`,output:Y(`escalate`,c+1,u,s)}:Mi(e,t,n,i,u,c+1,s);c++}}function Y(e,t,n,r,i){return{outcome:e,rounds:t,lastGateOutcome:n,bodyOutputs:r,...i===void 0?{}:{resumeData:i}}}async function X(e,t){e.status=`running`,e.startedAt=Date.now(),await t.persistFrame(e),await t.emitFrameStarted(e)}async function Z(e,t,n){let r=Date.now(),i=e.startedAt===void 0?void 0:Math.max(0,r-e.startedAt);e.status=`completed`,e.output=n,e.completedAt=r,await t.persistFrame(e),await t.emitFrameCompleted(e,i)}async function Q(e,t,n){let r=Date.now(),i=e.startedAt===void 0?void 0:Math.max(0,r-e.startedAt);e.status=`failed`,e.error=n,e.completedAt=r,await t.persistFrame(e),await t.emitFrameFailed(e,n,i)}async function Ui(e,t){e.status=`skipped`,e.completedAt=Date.now(),await t.persistFrame(e)}async function $(e,t){e.status=`cancelled`,e.completedAt=Date.now(),await t.persistFrame(e)}function Wi(e,t){return!!M(e,B(t))}async function Gi(e,t,n,r,i,a=[]){if(t.signal.aborted)return{status:`cancelled`};switch(e.type){case`sequence`:return r(e,t,n,i,a);case`station`:return Ar(e,t,n,i);case`delegate-agent`:return Ir(e,t,n,i);case`delegate-role`:return Lr(e,t,n,i);case`parallel`:return Jr(e,t,n,r,i??``,a,e.mode??`all-settled`);case`gate`:return ui(e,t,n,i??``);case`iterate`:return _i(e,t,n,r,i??``,a);case`iterate-chain`:return Ci(e,t,n,r,i??``,a);case`loop`:return Hi(e,t,n,r,i??``,a);default:return{status:`failed`,error:`Unknown node type: ${String(e.type)}`}}}const Ki=new Set([`completed`,`skipped`,`waiting`,`running`]);function qi(e){return e.type===`parallel`||e.type===`iterate`||e.type===`iterate-chain`||e.type===`loop`}function Ji(e,t,n){return H(e.resumeFrames,t.id,{parentFrameId:n,...qi(t)?{statuses:Ki}:{}})}function Yi(e,t,n){if(n?.status===`completed`)return U(e,t.id,{status:`completed`,...n.output===void 0?{}:{output:n.output}});if(n?.status===`skipped`)return U(e,t.id,{status:`skipped`})}async function Xi(e,t,n,r,i,a,o){try{return{result:Wi(e,i)}}catch(e){let i=e instanceof Error?e.message:String(e);return await Q(r.createFrame({nodeId:n.id,nodeType:n.type,path:a,parentFrameId:o}),r,`'${t}' condition evaluation failed: ${i}`),{status:`failed`,error:`'${t}' condition evaluation failed for '${n.id}': ${i}`}}}async function Zi(e,t,n,r,i,a){let o=a??t.createFrame({nodeId:e.id,nodeType:e.type,path:r,parentFrameId:i});if(t.signal.aborted)return await $(o,t),{updatedCtx:n,outcome:{status:`cancelled`}};a===void 0&&await X(o,t);let s;try{s=await Gi(e,t,n,Qi,o.frameId,o.path)}catch(e){let r=e instanceof Error?e.message:String(e);return await Q(o,t,r),{updatedCtx:n,outcome:{status:`failed`,error:r}}}switch(s.status){case`completed`:return await Z(o,t,s.output),{updatedCtx:U(n,e.id,{status:`completed`,output:s.output})};case`skipped`:return await Ui(o,t),{updatedCtx:U(n,e.id,{status:`skipped`})};case`cancelled`:return await $(o,t),{updatedCtx:n,outcome:{status:`cancelled`}};case`paused`:return{updatedCtx:n,outcome:s};case`failed`:return await Q(o,t,s.error),{updatedCtx:n,outcome:{status:`failed`,error:s.error}}}}async function Qi(e,t,n,r,i=[]){let a=n;for(let n of e.nodes){if(t.signal.aborted)return{status:`cancelled`};let e=Ji(t,n,r),o=Yi(a,n,e);if(o!==void 0){a=o;continue}if(n.when!==void 0){let e=await Xi(n.when,`when`,n,t,a,i,r);if(`status`in e)return e;if(!e.result){await Ui(t.createFrame({nodeId:n.id,nodeType:n.type,path:i,parentFrameId:r}),t),a=U(a,n.id,{status:`skipped`});continue}}if(n.skip!==void 0){let e=await Xi(n.skip,`skip`,n,t,a,i,r);if(`status`in e)return e;if(e.result){await Ui(t.createFrame({nodeId:n.id,nodeType:n.type,path:i,parentFrameId:r}),t),a=U(a,n.id,{status:`skipped`});continue}}let s=e?.status===`waiting`&&n.type===`gate`||(e?.status===`running`||e?.status===`waiting`)&&qi(n)?e:void 0,{updatedCtx:c,outcome:l}=await Zi(n,t,a,i,r,s);if(a=c,l!==void 0)return l}return{status:`completed`}}function $i(e,t){let n=new Set;if(_e(e.root,{enter(e){if(e.type!==`loop`)return;let r=e;t.has(r.gate.handler)||n.add(r.gate.handler)}}),n.size>0)throw Error(`Workflow '${e.id}' is missing loop gate handler(s): ${[...n].join(`, `)}`)}const ea=new Set;async function ta(e,t,n){if((await e.requestOptional(F.getRunContext,{executionId:t.executionId})).handled){await na(e,t.executionId,n);return}await e.request(O.bootstrapAuthorityState,{executionId:t.executionId,terminalAuthority:`authority`,definition:n})}async function na(e,t,n){return await ra(e,t,n)!==void 0}async function ra(e,t,n){let r=await e.request(F.getRunContext,{executionId:t});if(r.runContext===null)return;if(r.runContext.executionId!==t)throw Error(`Authority bootstrap identity mismatch for '${t}'`);let i=r.runContext.definitionSnapshot;if(i===void 0){await e.request(F.setRunContext,{runContext:{...r.runContext,terminalAuthority:`authority`}});return}if(!ia(i,n))throw Error(`Authority bootstrap definition mismatch for '${t}'`);let a=i;return await e.request(F.setRunContext,{runContext:{...r.runContext,terminalAuthority:`authority`,definitionSnapshot:a},initialState:Dt(a)}),a}function ia(e,t){return i(JSON.parse(JSON.stringify(e)),JSON.parse(JSON.stringify(t)))}function aa(e,t){return e.on(O.bootstrapAuthorityState,async n=>{if(!st(n,n.payload.executionId))throw Error(`authority state bootstrap is execution-bound`);let r=await ra(e,n.payload.executionId,n.payload.definition);if(r!==void 0){t?.(n.payload.executionId,r);for(let t of ea)await t({bus:e,executionId:n.payload.executionId,definition:r,transport:n.transport})}n.setResult({persisted:r!==void 0})})}export{Re as $,Xt as A,Mt as B,fn as C,O as Ct,_n as D,gn as E,Pt as F,ot as G,gt as H,Lt as I,Ae as J,it as K,Ut as L,Ht as M,R as N,un as O,Rt as P,ze as Q,Ft as R,bn as S,fe as St,mn as T,ct as U,Et as V,st as W,Ne as X,ke as Y,Me as Z,En as _,Je as _t,ai as a,P as at,Sn as b,De as bt,cr as c,Ve as ct,kn as d,Ie as dt,Ze as et,Hn as f,qe as ft,Dn as g,Ye as gt,On as h,We as ht,Qi as i,je as it,Gt as j,an as k,tr as l,Be as lt,Un as m,Ge as mt,aa as n,$e as nt,ri as o,Fe as ot,Jn as p,Ke as pt,F as q,$i as r,Qe as rt,Ur as s,Pe as st,ta as t,Xe as tt,Xn as u,Le as ut,yn as v,Ue as vt,pn as w,Cn as x,Ee as xt,xn as y,He as yt,I as z};
@@ -1 +1 @@
1
- import{t as e}from"./zod-json-schema-DGWHUOK0.mjs";import{n as t,r as n}from"./schemas-mLjTSUvJ.mjs";import{z as r}from"zod";import{createBusNamespace as i}from"@makaio/framework/core";const a={list:{request:r.object({}),response:r.object({triggers:r.array(t)})},changed:r.object({owner:r.string().min(1),revision:r.number().int().nonnegative(),kinds:r.array(n).min(1),reason:r.enum([`registered`,`deregistered`])})},o=i(`automation-triggers`,a),s=o.subjects,c=new WeakMap;function l(n){let r=c.get(n);if(r!==void 0)return structuredClone(r);let i=e(n.eventSchema,`output`),a=t.parse({kind:n.kind,label:n.label,description:n.description,categories:n.categories,parameterSchema:e(n.paramsSchema,`input`),eventSchema:i,workflowCompatible:i.type===`object`});return c.set(n,a),structuredClone(a)}function u(e){return n.parse(e.kind),l(e),Object.freeze(e)}function d(e){return e}export{a,o as i,u as n,s as o,d as r,l as t};
1
+ import{t as e}from"./zod-json-schema-ZUmGtQhT.mjs";import{n as t,r as n}from"./schemas-hTUdjOh7.mjs";import{z as r}from"zod";import{createBusNamespace as i}from"@makaio/framework/core";const a={list:{request:r.object({}),response:r.object({triggers:r.array(t)})},changed:r.object({owner:r.string().min(1),revision:r.number().int().nonnegative(),kinds:r.array(n).min(1),reason:r.enum([`registered`,`deregistered`])})},o=i(`automation-triggers`,a),s=o.subjects,c=new WeakMap;function l(n){let r=c.get(n);if(r!==void 0)return structuredClone(r);let i=e(n.eventSchema,`output`),a=t.parse({kind:n.kind,label:n.label,description:n.description,categories:n.categories,parameterSchema:e(n.paramsSchema,`input`),eventSchema:i,workflowCompatible:i.type===`object`});return c.set(n,a),structuredClone(a)}function u(e){return n.parse(e.kind),l(e),Object.freeze(e)}function d(e){return e}export{a,o as i,u as n,s as o,d as r,l as t};
@@ -2873,12 +2873,11 @@ declare function trackMessageCorrelation<TMessage extends BusMessage>(message: T
2873
2873
  payload: unknown;
2874
2874
  }> : boolean>;
2875
2875
  /**
2876
- * Serialize an error into a transport-safe structure.
2877
- *
2878
- * Preserves `subject` alongside `code` so that `isNoHandlerErrorForSubject`
2879
- * can match deserialized errors without fragile message-string comparisons.
2880
- * @param error - The error to serialize
2881
- * @returns Structured error payload
2876
+ * Same codec as {@link serializeError}; kept under this name for callers that
2877
+ * serialize outside a response path. Structured members are collected into
2878
+ * `wire.data`, and an own `data` bag nests at `wire.data.data`.
2879
+ * @param error - Any thrown value
2880
+ * @returns Structured error payload safe for JSON serialization
2882
2881
  */
2883
2882
  declare function serializeTransportError(error: unknown): BusTransportError;
2884
2883
  //#endregion
@@ -2931,24 +2930,28 @@ declare function deserializeTransportError(transportError: BusTransportError): E
2931
2930
  * Read the structured members of an error regardless of which serializer authored
2932
2931
  * the wire payload.
2933
2932
  *
2934
- * Three producible shapes exist depending on which serializer ran:
2933
+ * Two producible shapes exist:
2935
2934
  *
2936
- * - **`serializeError`** copies every own enumerable prop of the structured
2937
- * source into `result.data`, including an authored `data` bag (which lands at
2938
- * `result.data.data`). After {@link deserializeTransportError} the rebuilt
2939
- * error has `.data` (the nested bag) as an own prop alongside any flat
2940
- * siblings (e.g. `.retryable`).
2941
- * - **`serializeTransportError`** uses `error.data` as the wire bag directly, so
2942
- * after deserialization the members are promoted flat onto the Error with no
2943
- * `data` key present.
2935
+ * - **`serializeError` / `serializeTransportError`** (same codec) copy every own
2936
+ * enumerable prop of the structured source into `result.data`, including an
2937
+ * authored `data` bag (which lands at `result.data.data`). After
2938
+ * {@link deserializeTransportError} the rebuilt error has `.data` (the nested
2939
+ * bag) as an own prop alongside any flat siblings (e.g. `.retryable`).
2944
2940
  * - A **raw `BusTransportError` object** (not yet deserialized) carries the bag
2945
2941
  * under its own `data` property.
2946
2942
  *
2947
2943
  * Merge rule: own enumerable props are collected (skipping codec fields), then,
2948
- * if the object has an own `data` that is a plain JSON object, the `data` key is
2949
- * removed from the flat set and the bag members are spread in — bag members win
2950
- * on collision. A non-plain-object `data` (array, primitive) is kept as a
2951
- * verbatim member of the flat set.
2944
+ * if the object has an own `data` whose _value_ (read via descriptor, never via
2945
+ * a getter) is a plain JSON object, the `data` key is removed from the flat set
2946
+ * and the bag members are spread in after filtering codec field names — bag
2947
+ * members win on collision. A non-plain-object `data` value (array, primitive)
2948
+ * is kept as a verbatim member of the flat set. An accessor-backed `data`
2949
+ * property is omitted entirely: its descriptor has no `value`, so both
2950
+ * `collectStructuredProps` and the merge branch ignore it — getters never run.
2951
+ *
2952
+ * Codec field names (`message`, `name`, `stack`, `cause`, `subject`, `code`)
2953
+ * are reserved and never appear in the result, whether they originate from the
2954
+ * flat props or from inside a `data` bag.
2952
2955
  *
2953
2956
  * Standard Error fields and top-level codec fields (`message`, `name`, `stack`,
2954
2957
  * `cause`, `subject`, `code`) are never part of the result. Returns `undefined`
@@ -1 +1 @@
1
- import{$ as e,A as t,B as n,C as r,D as i,E as a,F as o,G as s,H as c,I as l,J as u,K as d,L as ee,M as f,N as te,O as ne,P as re,Q as ie,R as p,S as m,T as ae,U as oe,V as h,W as g,X as se,Y as ce,Z as _,_ as le,a as ue,b as de,d as v,et as fe,f as pe,g as me,h as y,i as he,it as ge,j as b,k as x,l as S,m as C,nt as w,o as T,p as E,q as D,r as O,rt as k,s as A,t as j,tt as M,u as N,v as P,w as F,x as I,y as L,z as _e}from"../bus-DU_7GM0J.mjs";import{z as R}from"zod";const z={"channel.open":{request:R.object({endpoint:R.string(),token:R.string(),clientPubKey:R.string(),transports:R.array(R.string())}),response:R.object({channelId:R.string(),endpointPubKey:R.string()})}};function B(e){let t=e instanceof Uint8Array?e:new Uint8Array(e),n=Array(t.length);for(let e=0;e<t.length;e++)n[e]=String.fromCharCode(t[e]);return btoa(n.join(``))}function V(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n.buffer}async function H(){return globalThis.crypto.subtle.generateKey({name:`ECDH`,namedCurve:`P-256`},!1,[`deriveKey`])}async function U(e){return B(await globalThis.crypto.subtle.exportKey(`raw`,e))}async function W(e){let t=V(e);return globalThis.crypto.subtle.importKey(`raw`,t,{name:`ECDH`,namedCurve:`P-256`},!1,[])}async function G(e,t){return globalThis.crypto.subtle.deriveKey({name:`ECDH`,public:t},e,{name:`AES-GCM`,length:256},!1,[`encrypt`,`decrypt`])}async function K(e,t,n){let r=globalThis.crypto.getRandomValues(new Uint8Array(12)),i=new TextEncoder().encode(t),a={name:`AES-GCM`,iv:r};n!==void 0&&(a.additionalData=new TextEncoder().encode(n));let o=await globalThis.crypto.subtle.encrypt(a,e,i);return{iv:B(r),data:B(o)}}async function q(e,t,n){let r=V(t.iv),i=V(t.data),a={name:`AES-GCM`,iv:r};n!==void 0&&(a.additionalData=new TextEncoder().encode(n));let o=await globalThis.crypto.subtle.decrypt(a,e,i);return new TextDecoder().decode(o)}function J(e,t){return{subject:t,$meta:{namespace:`channel:${e}`,isRequest:!1,payload:{},local:!1,channel:!1}}}function Y(e,t){return{subject:t,$meta:{namespace:`channel:${e}`,isRequest:!0,payload:{},local:!1,channel:!1}}}var X=class{channelId;sharedKey;context;transportNames;cleanups=[];pendingRequests=new Set;closed=!1;constructor(e,t,n,r){this.channelId=e,this.sharedKey=t,this.context=n,this.transportNames=r;let i=J(e,`$close`);this.cleanups.push(this.registerEventHandler(i,t,e=>{this.handlePeerClose()}))}on(e,t,n){this.assertOpen();let r=this.requireKey(),i=e.$meta.isRequest?this.registerRequestHandler(e,r,t,n):this.registerEventHandler(e,r,t,n);return this.cleanups.push(i),()=>{i();let e=this.cleanups.indexOf(i);e!==-1&&this.cleanups.splice(e,1)}}once(e,t){this.assertOpen();let n=this.requireKey(),r=null,i=(e=>{let n=r;if(r=null,n){let e=this.cleanups.indexOf(n);e!==-1&&this.cleanups.splice(e,1)}return n?.(),t(e)});return r=e.$meta.isRequest?this.registerRequestHandler(e,n,i):this.registerEventHandler(e,n,i),this.cleanups.push(r),()=>{if(r){let e=r;r=null;let t=this.cleanups.indexOf(e);t!==-1&&this.cleanups.splice(t,1),e()}}}async emit(e,t){this.assertOpen();let n=this.requireKey(),r=J(this.channelId,e.subject),i=await K(n,JSON.stringify(t),`${this.channelId}:${e.subject}:evt`);await E(this.context,r,i,{...this.transportNames?{transports:[...this.transportNames]}:{}})}async request(e,t,n){this.assertOpen();let r=this.requireKey(),i=new AbortController;this.pendingRequests.add(i);try{let a=Y(this.channelId,e.subject),o=await K(r,JSON.stringify(t),`${this.channelId}:${e.subject}:req`),s=await q(r,await v(this.context,a,o,{signal:i.signal,...n?.timeout===void 0?{}:{timeout:n.timeout},...this.transportNames?{transports:[...this.transportNames]}:{}}),`${this.channelId}:${e.subject}:res`);return JSON.parse(s)}finally{this.pendingRequests.delete(i)}}async requestOptional(e,t,n){try{return{handled:!0,data:await this.request(e,t,n)}}catch(e){if(e instanceof o)return{handled:!1};throw e}}close(){if(this.closed)return;this.closed=!0;let e=this.sharedKey;if(e){let t=J(this.channelId,`$close`);K(e,JSON.stringify({}),`${this.channelId}:$close:evt`).then(e=>E(this.context,t,e,{...this.transportNames?{transports:[...this.transportNames]}:{}})).catch(()=>{})}this.abortPendingRequests(),this.runCleanups(),this.sharedKey=null}assertOpen(){if(this.closed)throw new n(this.channelId)}requireKey(){return this.sharedKey}registerEventHandler(e,t,n,r){let i=J(this.channelId,e.subject),a=`${this.channelId}:${e.subject}:evt`;return y(this.context,i,async e=>{let r=await q(t,e.payload,a),i=JSON.parse(r);return n({...e,payload:i})},r)}registerRequestHandler(e,t,n,r){let i=Y(this.channelId,e.subject),a=`${this.channelId}:${e.subject}:req`,o=`${this.channelId}:${e.subject}:res`;return y(this.context,i,async e=>{let r=await q(t,e.payload,a),i=JSON.parse(r),s,c=e=>{s={value:e}},l=e=>{s={value:{...s?.value??{},...e}}},u=async()=>{let n=s;if(await e.next(),n!==void 0){s=n;return}let r=e.result;if(r!==void 0){let e=await q(t,r,o);s={value:JSON.parse(e)}}};if(await n({...e,payload:i,get result(){return s?.value},setResult:c,extendResult:l,next:u}),s!==void 0){let n=await K(t,JSON.stringify(s.value),o);e.setResult(n)}},r)}handlePeerClose(){this.closed||(this.closed=!0,this.abortPendingRequests(),this.runCleanups(),this.sharedKey=null)}abortPendingRequests(){let e=new n(this.channelId);for(let t of this.pendingRequests)t.abort(e);this.pendingRequests.clear()}runCleanups(){for(let e of this.cleanups)try{e()}catch{}this.cleanups.length=0}};function Z(e){return e.namespaceRegistry.registerNamespace(_(`system`,z)).subjects.channel.open}function ve(e,t,n,r){let i=y(e,Z(e),async i=>{if(i.payload.endpoint!==t){await i.next();return}if(i.payload.token!==r.token)throw new h(t);let{publicKey:a,privateKey:o}=await H(),s=await G(o,await W(i.payload.clientPubKey)),c=globalThis.crypto.randomUUID(),l=new Set(e.transportRegistry.names()),u=new X(c,s,e,(i.payload.transports??[]).filter(e=>l.has(e)));try{n(u),i.setResult({channelId:c,endpointPubKey:await U(a)})}catch(e){throw u.close(),e}});return{name:t,token:r.token,close:i}}async function ye(e,t,n){let r=Z(e),{publicKey:i,privateKey:a}=await H(),o=await U(i),s=n.transports!==void 0,c=s?[...n.transports]:[...e.transportRegistry.names()],l=s?{transports:c}:void 0,u=await v(e,r,{endpoint:t,token:n.token,clientPubKey:o,transports:c},l),d=await G(a,await W(u.endpointPubKey));return new X(u.channelId,d,e,c)}var be=class{pending;constructor(){this.pending=new Map}track(e,t,n){return new Promise((r,i)=>{if(n?.aborted){i(g(n.reason));return}let a=t===0?void 0:setTimeout(()=>{let n=this.pending.get(e);n!==void 0&&(clearTimeout(n.timeoutId),n.removeAbortListener?.(),this.pending.delete(e),n.reject(new f(e,t)))},t);if(this.pending.set(e,{resolve:r,reject:i,timeoutId:a,removeAbortListener:void 0}),n){let t=()=>{this.reject(e,g(n.reason))};n.addEventListener(`abort`,t,{once:!0});let r=()=>{n.removeEventListener(`abort`,t)},i=this.pending.get(e);i&&(i.removeAbortListener=r)}n?.aborted&&this.reject(e,g(n.reason))})}resolve(e,t){let n=this.pending.get(e);n&&(clearTimeout(n.timeoutId),n.removeAbortListener?.(),this.pending.delete(e),n.resolve(t))}reject(e,t){let n=this.pending.get(e);n&&(clearTimeout(n.timeoutId),n.removeAbortListener?.(),this.pending.delete(e),n.reject(t))}cancel(e,t){this.reject(e,t??g(void 0))}rejectAll(e){for(let[t,n]of this.pending.entries())clearTimeout(n.timeoutId),n.removeAbortListener?.(),n.reject(e);this.pending.clear()}cleanup(){this.rejectAll(Error(`Transport disconnected`))}};const xe=_(`bus:lifecycle`,ue).subjects;function Q(e,t){let n={},r={},i={};for(let[t,a]of e)n[t]=a.priorities,r[t]=a.deliveryClass??`relayable`,a.filter!==void 0&&(i[t]=a.filter);return{type:`subscribe`,...t===void 0?{}:{ackId:t},subjects:n,deliveryClasses:r,...Object.keys(i).length>0&&{filters:i}}}function Se(e,t){return{type:`unsubscribe`,...t===void 0?{}:{ackId:t},subjects:e}}function Ce(e,t){let n=e.trim();if(n.length===0||n.startsWith(`extension:`))throw Error(`Invalid extensionName: expected a non-empty extension name without the "extension:" prefix.`);let r=n;return{..._(`extension:${r}`,t.schemas),domain:r,extensions:t.extensions??{}}}function $(e,t){return`${e}.${t}`}function we(){let e=new Map;return{register(t){let n=$(t.namespace,t.subject);return e.set(n,t),()=>{e.get(n)===t&&e.delete(n)}},get(t,n){return e.get($(t,n))}}}const Te=t.fact.$meta.namespace,Ee=t.fact.subject;function De(e){return e.type===`event`||e.type===`request`||e.type===`broadcast`}async function Oe(e,t,n,r,i,a){let o=C({message:t,direction:`outbound`,observedAt:a(),machineId:i,namespaceRegistry:n,projectorRegistry:r});for(let n of o)await e.send({type:`event`,namespace:Te,subject:Ee,payload:n,messageId:`${t.messageId}:telemetry:${n.factId}`,correlationId:t.correlationId})}function ke(e,t,n,r,i){return async function(a,o){if(!De(a))return!0;if(await Oe(e,a,t,n,r,i),a.type===`request`)throw Error(`Projected telemetry transport cannot satisfy request responses; exclude it from request routing.`);return a.type===`broadcast`?[]:!0}}function Ae(e){let{inner:t,namespaceRegistry:n,projectorRegistry:r,machineId:i,now:a=Date.now}=e,o={name:e.name,send:ke(t,n,r,i,a),onReceive(e){return t.onReceive(async()=>{})},connect(){return t.connect()},disconnect(){return t.disconnect()},subscribe(){return Promise.resolve()},unsubscribe(){return Promise.resolve()},get ready(){return t.ready},get onNewReadySession(){return t.onNewReadySession},set onNewReadySession(e){t.onNewReadySession=e},get onConnected(){return t.onConnected},set onConnected(e){t.onConnected=e},get onDisconnected(){return t.onDisconnected},set onDisconnected(e){t.onDisconnected=e},isReady(){return t.isReady?.()??!0},cancelRequest(e,n){t.cancelRequest?.(e,n)},onBroadcastResults(e,n,r){t.onBroadcastResults?.(e,n,r)}};return t.reconnect&&(o.reconnect=()=>t.reconnect()),o}export{c as BusAbortError,s as BusError,xe as BusLifecycle,ee as CONNECTION_LOST_ERROR_CODE,h as ChannelAuthError,n as ChannelClosedError,_e as ChannelOnlyError,p as ConnectionLostError,be as CorrelationTracker,pe as DEFAULT_REQUEST_TIMEOUT_MS,L as LOCAL_ORIGIN,l as LocalSubjectError,j as MakaioBus,re as NO_HANDLER_ERROR_CODE,o as NoHandlerError,N as OnceAbortError,de as REMOTE_ORIGIN,te as RequestError,z as SystemChannelSchemas,f as TimeoutError,b as ValidationError,le as __resetWarnedSubjects,Q as buildSubscribeMessage,Se as buildUnsubscribeMessage,k as channelSubject,e as collectorOnlySubject,O as createBusContext,he as createBusInstance,ve as createChannelEndpoint,Ce as createExtensionNamespace,S as createFilteredBus,Ae as createProjectedTelemetryTransport,we as createSubjectTelemetryProjectorRegistry,fe as defaultTransports,T as defineSubjectExtension,ae as deserializeTransportError,A as extendSubject,a as findInErrorChain,ie as getFullSubjectForSubjectDefinition,d as getPath,i as getSubjectFromBusMessage,I as handleCorrelationResponse,M as hostLocalRequest,ne as isNoHandlerErrorForSubject,oe as isRequestCancellation,ge as isRequestSchema,w as localSubject,ce as matchesAnySubscription,D as matchesFilter,se as matchesSubscription,u as mergeFilters,ye as openChannel,P as parseBusUrl,C as projectSubjectTelemetryFacts,m as serializeTransportError,r as shouldReceiveMessage,F as trackMessageCorrelation,x as transportErrorData,me as waitForSubscriptionPropagation};
1
+ import{$ as e,A as t,B as n,C as r,D as i,E as a,F as o,G as s,H as c,I as l,J as u,K as d,L as ee,M as f,N as te,O as ne,P as re,Q as ie,R as p,S as m,T as ae,U as oe,V as h,W as g,X as se,Y as ce,Z as _,_ as le,a as ue,b as de,d as v,et as fe,f as pe,g as me,h as y,i as he,it as ge,j as b,k as x,l as S,m as C,nt as w,o as T,p as E,q as D,r as O,rt as k,s as A,t as j,tt as M,u as N,v as P,w as F,x as I,y as L,z as _e}from"../bus-CyrTcF8F.mjs";import{z as R}from"zod";const z={"channel.open":{request:R.object({endpoint:R.string(),token:R.string(),clientPubKey:R.string(),transports:R.array(R.string())}),response:R.object({channelId:R.string(),endpointPubKey:R.string()})}};function B(e){let t=e instanceof Uint8Array?e:new Uint8Array(e),n=Array(t.length);for(let e=0;e<t.length;e++)n[e]=String.fromCharCode(t[e]);return btoa(n.join(``))}function V(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n.buffer}async function H(){return globalThis.crypto.subtle.generateKey({name:`ECDH`,namedCurve:`P-256`},!1,[`deriveKey`])}async function U(e){return B(await globalThis.crypto.subtle.exportKey(`raw`,e))}async function W(e){let t=V(e);return globalThis.crypto.subtle.importKey(`raw`,t,{name:`ECDH`,namedCurve:`P-256`},!1,[])}async function G(e,t){return globalThis.crypto.subtle.deriveKey({name:`ECDH`,public:t},e,{name:`AES-GCM`,length:256},!1,[`encrypt`,`decrypt`])}async function K(e,t,n){let r=globalThis.crypto.getRandomValues(new Uint8Array(12)),i=new TextEncoder().encode(t),a={name:`AES-GCM`,iv:r};n!==void 0&&(a.additionalData=new TextEncoder().encode(n));let o=await globalThis.crypto.subtle.encrypt(a,e,i);return{iv:B(r),data:B(o)}}async function q(e,t,n){let r=V(t.iv),i=V(t.data),a={name:`AES-GCM`,iv:r};n!==void 0&&(a.additionalData=new TextEncoder().encode(n));let o=await globalThis.crypto.subtle.decrypt(a,e,i);return new TextDecoder().decode(o)}function J(e,t){return{subject:t,$meta:{namespace:`channel:${e}`,isRequest:!1,payload:{},local:!1,channel:!1}}}function Y(e,t){return{subject:t,$meta:{namespace:`channel:${e}`,isRequest:!0,payload:{},local:!1,channel:!1}}}var X=class{channelId;sharedKey;context;transportNames;cleanups=[];pendingRequests=new Set;closed=!1;constructor(e,t,n,r){this.channelId=e,this.sharedKey=t,this.context=n,this.transportNames=r;let i=J(e,`$close`);this.cleanups.push(this.registerEventHandler(i,t,e=>{this.handlePeerClose()}))}on(e,t,n){this.assertOpen();let r=this.requireKey(),i=e.$meta.isRequest?this.registerRequestHandler(e,r,t,n):this.registerEventHandler(e,r,t,n);return this.cleanups.push(i),()=>{i();let e=this.cleanups.indexOf(i);e!==-1&&this.cleanups.splice(e,1)}}once(e,t){this.assertOpen();let n=this.requireKey(),r=null,i=(e=>{let n=r;if(r=null,n){let e=this.cleanups.indexOf(n);e!==-1&&this.cleanups.splice(e,1)}return n?.(),t(e)});return r=e.$meta.isRequest?this.registerRequestHandler(e,n,i):this.registerEventHandler(e,n,i),this.cleanups.push(r),()=>{if(r){let e=r;r=null;let t=this.cleanups.indexOf(e);t!==-1&&this.cleanups.splice(t,1),e()}}}async emit(e,t){this.assertOpen();let n=this.requireKey(),r=J(this.channelId,e.subject),i=await K(n,JSON.stringify(t),`${this.channelId}:${e.subject}:evt`);await E(this.context,r,i,{...this.transportNames?{transports:[...this.transportNames]}:{}})}async request(e,t,n){this.assertOpen();let r=this.requireKey(),i=new AbortController;this.pendingRequests.add(i);try{let a=Y(this.channelId,e.subject),o=await K(r,JSON.stringify(t),`${this.channelId}:${e.subject}:req`),s=await q(r,await v(this.context,a,o,{signal:i.signal,...n?.timeout===void 0?{}:{timeout:n.timeout},...this.transportNames?{transports:[...this.transportNames]}:{}}),`${this.channelId}:${e.subject}:res`);return JSON.parse(s)}finally{this.pendingRequests.delete(i)}}async requestOptional(e,t,n){try{return{handled:!0,data:await this.request(e,t,n)}}catch(e){if(e instanceof o)return{handled:!1};throw e}}close(){if(this.closed)return;this.closed=!0;let e=this.sharedKey;if(e){let t=J(this.channelId,`$close`);K(e,JSON.stringify({}),`${this.channelId}:$close:evt`).then(e=>E(this.context,t,e,{...this.transportNames?{transports:[...this.transportNames]}:{}})).catch(()=>{})}this.abortPendingRequests(),this.runCleanups(),this.sharedKey=null}assertOpen(){if(this.closed)throw new n(this.channelId)}requireKey(){return this.sharedKey}registerEventHandler(e,t,n,r){let i=J(this.channelId,e.subject),a=`${this.channelId}:${e.subject}:evt`;return y(this.context,i,async e=>{let r=await q(t,e.payload,a),i=JSON.parse(r);return n({...e,payload:i})},r)}registerRequestHandler(e,t,n,r){let i=Y(this.channelId,e.subject),a=`${this.channelId}:${e.subject}:req`,o=`${this.channelId}:${e.subject}:res`;return y(this.context,i,async e=>{let r=await q(t,e.payload,a),i=JSON.parse(r),s,c=e=>{s={value:e}},l=e=>{s={value:{...s?.value??{},...e}}},u=async()=>{let n=s;if(await e.next(),n!==void 0){s=n;return}let r=e.result;if(r!==void 0){let e=await q(t,r,o);s={value:JSON.parse(e)}}};if(await n({...e,payload:i,get result(){return s?.value},setResult:c,extendResult:l,next:u}),s!==void 0){let n=await K(t,JSON.stringify(s.value),o);e.setResult(n)}},r)}handlePeerClose(){this.closed||(this.closed=!0,this.abortPendingRequests(),this.runCleanups(),this.sharedKey=null)}abortPendingRequests(){let e=new n(this.channelId);for(let t of this.pendingRequests)t.abort(e);this.pendingRequests.clear()}runCleanups(){for(let e of this.cleanups)try{e()}catch{}this.cleanups.length=0}};function Z(e){return e.namespaceRegistry.registerNamespace(_(`system`,z)).subjects.channel.open}function ve(e,t,n,r){let i=y(e,Z(e),async i=>{if(i.payload.endpoint!==t){await i.next();return}if(i.payload.token!==r.token)throw new h(t);let{publicKey:a,privateKey:o}=await H(),s=await G(o,await W(i.payload.clientPubKey)),c=globalThis.crypto.randomUUID(),l=new Set(e.transportRegistry.names()),u=new X(c,s,e,(i.payload.transports??[]).filter(e=>l.has(e)));try{n(u),i.setResult({channelId:c,endpointPubKey:await U(a)})}catch(e){throw u.close(),e}});return{name:t,token:r.token,close:i}}async function ye(e,t,n){let r=Z(e),{publicKey:i,privateKey:a}=await H(),o=await U(i),s=n.transports!==void 0,c=s?[...n.transports]:[...e.transportRegistry.names()],l=s?{transports:c}:void 0,u=await v(e,r,{endpoint:t,token:n.token,clientPubKey:o,transports:c},l),d=await G(a,await W(u.endpointPubKey));return new X(u.channelId,d,e,c)}var be=class{pending;constructor(){this.pending=new Map}track(e,t,n){return new Promise((r,i)=>{if(n?.aborted){i(g(n.reason));return}let a=t===0?void 0:setTimeout(()=>{let n=this.pending.get(e);n!==void 0&&(clearTimeout(n.timeoutId),n.removeAbortListener?.(),this.pending.delete(e),n.reject(new f(e,t)))},t);if(this.pending.set(e,{resolve:r,reject:i,timeoutId:a,removeAbortListener:void 0}),n){let t=()=>{this.reject(e,g(n.reason))};n.addEventListener(`abort`,t,{once:!0});let r=()=>{n.removeEventListener(`abort`,t)},i=this.pending.get(e);i&&(i.removeAbortListener=r)}n?.aborted&&this.reject(e,g(n.reason))})}resolve(e,t){let n=this.pending.get(e);n&&(clearTimeout(n.timeoutId),n.removeAbortListener?.(),this.pending.delete(e),n.resolve(t))}reject(e,t){let n=this.pending.get(e);n&&(clearTimeout(n.timeoutId),n.removeAbortListener?.(),this.pending.delete(e),n.reject(t))}cancel(e,t){this.reject(e,t??g(void 0))}rejectAll(e){for(let[t,n]of this.pending.entries())clearTimeout(n.timeoutId),n.removeAbortListener?.(),n.reject(e);this.pending.clear()}cleanup(){this.rejectAll(Error(`Transport disconnected`))}};const xe=_(`bus:lifecycle`,ue).subjects;function Q(e,t){let n={},r={},i={};for(let[t,a]of e)n[t]=a.priorities,r[t]=a.deliveryClass??`relayable`,a.filter!==void 0&&(i[t]=a.filter);return{type:`subscribe`,...t===void 0?{}:{ackId:t},subjects:n,deliveryClasses:r,...Object.keys(i).length>0&&{filters:i}}}function Se(e,t){return{type:`unsubscribe`,...t===void 0?{}:{ackId:t},subjects:e}}function Ce(e,t){let n=e.trim();if(n.length===0||n.startsWith(`extension:`))throw Error(`Invalid extensionName: expected a non-empty extension name without the "extension:" prefix.`);let r=n;return{..._(`extension:${r}`,t.schemas),domain:r,extensions:t.extensions??{}}}function $(e,t){return`${e}.${t}`}function we(){let e=new Map;return{register(t){let n=$(t.namespace,t.subject);return e.set(n,t),()=>{e.get(n)===t&&e.delete(n)}},get(t,n){return e.get($(t,n))}}}const Te=t.fact.$meta.namespace,Ee=t.fact.subject;function De(e){return e.type===`event`||e.type===`request`||e.type===`broadcast`}async function Oe(e,t,n,r,i,a){let o=C({message:t,direction:`outbound`,observedAt:a(),machineId:i,namespaceRegistry:n,projectorRegistry:r});for(let n of o)await e.send({type:`event`,namespace:Te,subject:Ee,payload:n,messageId:`${t.messageId}:telemetry:${n.factId}`,correlationId:t.correlationId})}function ke(e,t,n,r,i){return async function(a,o){if(!De(a))return!0;if(await Oe(e,a,t,n,r,i),a.type===`request`)throw Error(`Projected telemetry transport cannot satisfy request responses; exclude it from request routing.`);return a.type===`broadcast`?[]:!0}}function Ae(e){let{inner:t,namespaceRegistry:n,projectorRegistry:r,machineId:i,now:a=Date.now}=e,o={name:e.name,send:ke(t,n,r,i,a),onReceive(e){return t.onReceive(async()=>{})},connect(){return t.connect()},disconnect(){return t.disconnect()},subscribe(){return Promise.resolve()},unsubscribe(){return Promise.resolve()},get ready(){return t.ready},get onNewReadySession(){return t.onNewReadySession},set onNewReadySession(e){t.onNewReadySession=e},get onConnected(){return t.onConnected},set onConnected(e){t.onConnected=e},get onDisconnected(){return t.onDisconnected},set onDisconnected(e){t.onDisconnected=e},isReady(){return t.isReady?.()??!0},cancelRequest(e,n){t.cancelRequest?.(e,n)},onBroadcastResults(e,n,r){t.onBroadcastResults?.(e,n,r)}};return t.reconnect&&(o.reconnect=()=>t.reconnect()),o}export{c as BusAbortError,s as BusError,xe as BusLifecycle,ee as CONNECTION_LOST_ERROR_CODE,h as ChannelAuthError,n as ChannelClosedError,_e as ChannelOnlyError,p as ConnectionLostError,be as CorrelationTracker,pe as DEFAULT_REQUEST_TIMEOUT_MS,L as LOCAL_ORIGIN,l as LocalSubjectError,j as MakaioBus,re as NO_HANDLER_ERROR_CODE,o as NoHandlerError,N as OnceAbortError,de as REMOTE_ORIGIN,te as RequestError,z as SystemChannelSchemas,f as TimeoutError,b as ValidationError,le as __resetWarnedSubjects,Q as buildSubscribeMessage,Se as buildUnsubscribeMessage,k as channelSubject,e as collectorOnlySubject,O as createBusContext,he as createBusInstance,ve as createChannelEndpoint,Ce as createExtensionNamespace,S as createFilteredBus,Ae as createProjectedTelemetryTransport,we as createSubjectTelemetryProjectorRegistry,fe as defaultTransports,T as defineSubjectExtension,ae as deserializeTransportError,A as extendSubject,a as findInErrorChain,ie as getFullSubjectForSubjectDefinition,d as getPath,i as getSubjectFromBusMessage,I as handleCorrelationResponse,M as hostLocalRequest,ne as isNoHandlerErrorForSubject,oe as isRequestCancellation,ge as isRequestSchema,w as localSubject,ce as matchesAnySubscription,D as matchesFilter,se as matchesSubscription,u as mergeFilters,ye as openChannel,P as parseBusUrl,C as projectSubjectTelemetryFacts,m as serializeTransportError,r as shouldReceiveMessage,F as trackMessageCorrelation,x as transportErrorData,me as waitForSubscriptionPropagation};