@makaio/framework 1.0.0-dev-1781034508425 → 1.0.0-dev-1781081952714

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 (346) hide show
  1. package/dist/.makaio-build.json +2 -2
  2. package/dist/adapters/config/index.d.mts +1 -1
  3. package/dist/adapters/config/index.mjs +1 -1
  4. package/dist/adapters/index.d.mts +24 -23
  5. package/dist/adapters/index.mjs +1 -1
  6. package/dist/adapters/node.d.mts +1 -1
  7. package/dist/adapters/node.mjs +1 -1
  8. package/dist/{ajv-B-geJci9.mjs → ajv-BJsabpMb.mjs} +2 -2
  9. package/dist/await-trigger-DREnXCEJ.mjs +1 -0
  10. package/dist/bus/index.d.mts +20 -20
  11. package/dist/{clients-namespace-DOr4mmmr.d.mts → clients-namespace-SFk7OTop.d.mts} +7 -7
  12. package/dist/contracts/adapter/index.d.mts +2 -2
  13. package/dist/contracts/adapter/schemas/session-lineage.d.mts +1 -1
  14. package/dist/contracts/artifact/index.d.mts +1 -1
  15. package/dist/contracts/client/index.d.mts +2 -2
  16. package/dist/contracts/common/index.d.mts +1 -1
  17. package/dist/contracts/config/index.d.mts +1 -1
  18. package/dist/contracts/extension/index.d.mts +3 -3
  19. package/dist/contracts/facet/index.d.mts +1 -1
  20. package/dist/contracts/harness/index.d.mts +1 -1
  21. package/dist/contracts/host/index.d.mts +1 -1
  22. package/dist/contracts/index.d.mts +343 -343
  23. package/dist/contracts/materialization/index.d.mts +3 -3
  24. package/dist/contracts/model-registry/index.d.mts +1 -1
  25. package/dist/contracts/native-session-supervisor/index.d.mts +1 -1
  26. package/dist/contracts/platform/index.d.mts +1 -1
  27. package/dist/contracts/provider/index.d.mts +2 -2
  28. package/dist/contracts/session/index.d.mts +2 -2
  29. package/dist/contracts/shared/index.d.mts +1 -1
  30. package/dist/contracts/skill/index.d.mts +1 -1
  31. package/dist/contracts/telemetry/index.d.mts +1 -1
  32. package/dist/contracts/timeout/index.d.mts +1 -1
  33. package/dist/contracts/variant/index.d.mts +1 -1
  34. package/dist/{definition-CWCNiH-q.d.mts → definition-BSghHJpQ.d.mts} +1 -1
  35. package/dist/{definition-BidQ9_x8.d.mts → definition-DqJOg6Lv.d.mts} +1 -1
  36. package/dist/{detached-extension-handle-Bo5Q06_g.mjs → detached-extension-handle-CxEBQnSa.mjs} +1 -1
  37. package/dist/drizzle/0000_charming_prowler.sql +443 -0
  38. package/dist/drizzle/0001_known_stephen_strange.sql +25 -0
  39. package/dist/drizzle/0002_woozy_gladiator.sql +1 -0
  40. package/dist/drizzle/0003_overjoyed_adam_destine.sql +1 -0
  41. package/dist/drizzle/0004_solid_goliath.sql +1 -0
  42. package/dist/drizzle/0005_round_calypso.sql +51 -0
  43. package/dist/drizzle/0006_free_tiger_shark.sql +4 -0
  44. package/dist/drizzle/0007_sparkling_terror.sql +2 -0
  45. package/dist/drizzle/0008_petite_deathstrike.sql +1 -0
  46. package/dist/drizzle/0009_lethal_malcolm_colcord.sql +6 -0
  47. package/dist/drizzle/0010_grey_chronomancer.sql +1 -0
  48. package/dist/drizzle/0011_solid_nomad.sql +1 -0
  49. package/dist/drizzle/meta/0000_snapshot.json +2813 -0
  50. package/dist/drizzle/meta/0001_snapshot.json +2820 -0
  51. package/dist/drizzle/meta/0002_snapshot.json +2827 -0
  52. package/dist/drizzle/meta/0003_snapshot.json +2834 -0
  53. package/dist/drizzle/meta/0004_snapshot.json +2842 -0
  54. package/dist/drizzle/meta/0005_snapshot.json +2849 -0
  55. package/dist/drizzle/meta/0006_snapshot.json +2865 -0
  56. package/dist/drizzle/meta/0007_snapshot.json +2879 -0
  57. package/dist/drizzle/meta/0008_snapshot.json +2886 -0
  58. package/dist/drizzle/meta/0009_snapshot.json +2901 -0
  59. package/dist/drizzle/meta/0010_snapshot.json +2908 -0
  60. package/dist/drizzle/meta/0011_snapshot.json +2915 -0
  61. package/dist/drizzle/meta/_journal.json +90 -0
  62. package/dist/extension--5Q190u_.mjs +1 -0
  63. package/dist/{filesystem-service-B9RbT-n-.mjs → filesystem-service-DH9zlxyd.mjs} +1 -1
  64. package/dist/git/index.mjs +1 -1
  65. package/dist/{globby-DPHEhf86.mjs → globby-4SrlyIlj.mjs} +1 -1
  66. package/dist/{handlers-Bl2Af8zt.mjs → handlers-Bev7-xjL.mjs} +1 -1
  67. package/dist/{index-BLmI8xDN.d.mts → index-BAhJKQLX.d.mts} +7 -7
  68. package/dist/{index-2mvEGCcP.d.mts → index-BCKRUuI2.d.mts} +2 -2
  69. package/dist/{index-ayGCeZ8t.d.mts → index-BYkOUd0x.d.mts} +24 -24
  70. package/dist/{index-j7hM0JEz.d.mts → index-Bibt5jAX.d.mts} +8 -8
  71. package/dist/{index-WZX3cU1L.d.mts → index-BmV60tMf.d.mts} +17 -17
  72. package/dist/{index-B-_F8N_E.d.mts → index-BpXX9WZJ.d.mts} +12 -12
  73. package/dist/{index-Dnd_-839.d.mts → index-BpniJgxu.d.mts} +4 -4
  74. package/dist/{index-o9__SHM7.d.mts → index-Bw_zL7Rs.d.mts} +1 -1
  75. package/dist/{index-Brlbx33t.d.mts → index-C3zfJg6s.d.mts} +27 -27
  76. package/dist/{index-B5lijQs7.d.mts → index-CNOTkyGw.d.mts} +289 -289
  77. package/dist/{index-BF8DYsOC.d.mts → index-CwKzQuIX.d.mts} +18 -18
  78. package/dist/{index-Bs5H4PFm.d.mts → index-D6bw4qJp.d.mts} +27 -27
  79. package/dist/{index-BXip2Nlo.d.mts → index-DETxgKS2.d.mts} +17 -17
  80. package/dist/{index-k7SK-A0P.d.mts → index-Db0uJ_Cg2.d.mts} +3 -3
  81. package/dist/{index-LbBWaNnT.d.mts → index-IekAD8Gp.d.mts} +126 -126
  82. package/dist/{index-BM7lYmmQ.d.mts → index-YDfOv0GT.d.mts} +1 -1
  83. package/dist/{index-B0bwOIpr.d.mts → index-fVgKVvta.d.mts} +3 -3
  84. package/dist/{index-DuIPU8sG.d.mts → index-jlQ4IhR5.d.mts} +431 -431
  85. package/dist/kernel/cli/index.d.mts +2 -95
  86. package/dist/kernel/cli/index.mjs +1 -1
  87. package/dist/kernel/cli/register.d.mts +2 -0
  88. package/dist/kernel/cli/register.mjs +1 -0
  89. package/dist/kernel/extension/index.d.mts +1 -1
  90. package/dist/kernel/extension/index.mjs +1 -1
  91. package/dist/kernel/index.d.mts +5 -5
  92. package/dist/kernel/index.mjs +1 -1
  93. package/dist/kernel/namespace/index.d.mts +1 -1
  94. package/dist/kernel/observability/index.d.mts +1 -1
  95. package/dist/kernel/providers/index.d.mts +1 -1
  96. package/dist/kernel/window/index.d.mts +1 -1
  97. package/dist/{lib-X80cqNZ5.mjs → lib-DPruLs5D.mjs} +1 -1
  98. package/dist/{lib--v_LnhHr.mjs → lib-aRogYLqg.mjs} +1 -1
  99. package/dist/{load-extensions-CESuhxma.mjs → load-extensions-C-TqCwzL.mjs} +1 -1
  100. package/dist/{load-extensions-t2rtaz1C.d.mts → load-extensions-D9nbDIiW.d.mts} +1 -1
  101. package/dist/mcp-http-server/index.mjs +4 -11
  102. package/dist/{namespace-l8A5zTPU2.d.mts → namespace-B60mn8J-2.d.mts} +6 -6
  103. package/dist/{namespace-sd3QrSzo.d.mts → namespace-BBVtD1gu.d.mts} +22 -22
  104. package/dist/namespace-BXqetkc3.mjs +1 -0
  105. package/dist/{namespace-B0l_lsLW.d.mts → namespace-BlS_i9KT.d.mts} +13 -13
  106. package/dist/{namespace-SD7Y-_iY.d.mts → namespace-ByyuIFpL.d.mts} +91 -91
  107. package/dist/{namespace-YsOUkmgE.d.mts → namespace-CHMszppN.d.mts} +6 -6
  108. package/dist/{namespace-BFM1kQbS.d.mts → namespace-CqUGzG53.d.mts} +2 -2
  109. package/dist/{namespace-BsmSZbub.d.mts → namespace-Ds6HkJEU.d.mts} +140 -140
  110. package/dist/namespace-DzVf1hVH.d.mts +96 -0
  111. package/dist/{namespace-DldKDPMI.d.mts → namespace-aBIAWxY3.d.mts} +18 -18
  112. package/dist/{namespace-eOeUjGPB.mjs → namespace-h0HIuqx0.mjs} +1 -1
  113. package/dist/node/bus-server/index.d.mts +1 -1
  114. package/dist/node/bus-server/index.mjs +1 -1
  115. package/dist/node/bus-server/server-lifecycle.d.mts +1 -1
  116. package/dist/node/bus-server/server-lifecycle.mjs +1 -1
  117. package/dist/{orchestrator-shared-DaPATFz1.mjs → orchestrator-shared-FnWrPS09.mjs} +1 -1
  118. package/dist/package-1DS4bXg5.mjs +1 -0
  119. package/dist/package-BSnp1zOR.d.mts +372 -0
  120. package/dist/package.json +5 -0
  121. package/dist/primitive-runtime-DcYYWy_6.mjs +8 -0
  122. package/dist/{provider-context-ClL5nCQg.mjs → provider-context-lfG0BpqX.mjs} +1 -1
  123. package/dist/rules/index.d.mts +1 -1
  124. package/dist/rules/schemas.d.mts +1 -1
  125. package/dist/runtime-bun/index.mjs +1 -1
  126. package/dist/runtime-node/extension-discovery.d.mts +1 -1
  127. package/dist/runtime-node/extension-validation.d.mts +1 -1
  128. package/dist/runtime-node/extension-validation.mjs +1 -1
  129. package/dist/runtime-node/index.d.mts +3 -3
  130. package/dist/runtime-node/index.mjs +29 -29
  131. package/dist/runtime-node/makaio-config.d.mts +3 -3
  132. package/dist/runtime-node/workflow-worker/index.d.mts +1 -1
  133. package/dist/runtime-node/workflow-worker/index.mjs +1 -1
  134. package/dist/runtime-node/workflow-worker/worker-entry.mjs +1 -1
  135. package/dist/{schema-BycLqlQI.d.mts → schema-CDL_pyyM.d.mts} +4 -4
  136. package/dist/{schema-DxHkeT-G.mjs → schema-DCJyzRHe.mjs} +1 -1
  137. package/dist/schema-introspection-CuRZPYEc.mjs +1 -0
  138. package/dist/{schemas-BI4gqRlW.d.mts → schemas-B5ToLwIs.d.mts} +19 -19
  139. package/dist/{schemas-C3wZhEAc.d.mts → schemas-Chyj6HuZ.d.mts} +5 -5
  140. package/dist/{schemas-BkeedMoC.d.mts → schemas-DZUaRcYl.d.mts} +7 -7
  141. package/dist/{schemas-CaeiaR4r2.d.mts → schemas-Exixg77V2.d.mts} +23 -23
  142. package/dist/{schemas-C4u2d8jR.d.mts → schemas-lqvZ6UpK.d.mts} +3 -3
  143. package/dist/{schemas-D7wxjmif.d.mts → schemas-on3_N5HP.d.mts} +140 -140
  144. package/dist/{schemas-mD6cFIJs.d.mts → schemas-t1VR6_b_.d.mts} +3 -3
  145. package/dist/services/adapter-runtime/index.d.mts +3 -3
  146. package/dist/services/adapter-runtime/index.mjs +1 -1
  147. package/dist/services/adapter-runtime/namespace.d.mts +1 -1
  148. package/dist/services/adapter-runtime/schemas.d.mts +1 -1
  149. package/dist/services/adapter-subsystem/index.d.mts +2 -2
  150. package/dist/services/adapter-subsystem/index.mjs +1 -1
  151. package/dist/services/adapter-subsystem/namespace.d.mts +1 -1
  152. package/dist/services/adapter-subsystem/namespace.mjs +1 -1
  153. package/dist/services/agent-runtime/index.d.mts +2 -2
  154. package/dist/services/agent-runtime/namespace.d.mts +1 -1
  155. package/dist/services/agent-runtime/schemas.d.mts +1 -1
  156. package/dist/services/capability/index.d.mts +1 -1
  157. package/dist/services/capability/index.mjs +1 -1
  158. package/dist/services/codebase/index.d.mts +2 -2
  159. package/dist/services/codebase/namespace.d.mts +1 -1
  160. package/dist/services/codebase/schemas.d.mts +1 -1
  161. package/dist/services/compression/index.d.mts +2 -2
  162. package/dist/services/compression/namespace.d.mts +1 -1
  163. package/dist/services/compression/schemas.d.mts +1 -1
  164. package/dist/services/context-rules/index.d.mts +7 -7
  165. package/dist/services/context-rules/index.mjs +1 -1
  166. package/dist/services/execution-target/index.d.mts +3 -3
  167. package/dist/services/execution-target/index.mjs +1 -1
  168. package/dist/services/execution-target/namespace.d.mts +1 -1
  169. package/dist/services/execution-target/schemas.d.mts +1 -1
  170. package/dist/services/filesystem/index.d.mts +1 -1
  171. package/dist/services/filesystem/index.mjs +1 -1
  172. package/dist/services/git/namespace.d.mts +4 -4
  173. package/dist/services/git/namespace.mjs +1 -1
  174. package/dist/services/git/schemas.d.mts +5 -5
  175. package/dist/services/git/schemas.mjs +1 -1
  176. package/dist/services/harness/index.d.mts +31 -31
  177. package/dist/services/harness/index.mjs +1 -1
  178. package/dist/services/harness/storage/schema.d.mts +4 -4
  179. package/dist/services/index.d.mts +166 -166
  180. package/dist/services/index.mjs +1 -1
  181. package/dist/services/log-import/browser.d.mts +2 -2
  182. package/dist/services/log-import/index.d.mts +3 -3
  183. package/dist/services/log-import/log-import.d.mts +1 -1
  184. package/dist/services/log-import/log-import.mjs +1 -1
  185. package/dist/services/log-import/namespace.d.mts +6 -6
  186. package/dist/services/log-import/namespace.mjs +1 -1
  187. package/dist/services/log-import/schemas.d.mts +3 -3
  188. package/dist/services/log-import/schemas.mjs +1 -1
  189. package/dist/services/model-registry/index.d.mts +1 -1
  190. package/dist/services/model-registry/index.mjs +1 -1
  191. package/dist/services/preferences/index.d.mts +2 -2
  192. package/dist/services/preferences/schemas.d.mts +1 -1
  193. package/dist/services/preferences/storage-namespace.d.mts +2 -2
  194. package/dist/services/provider-context/index.d.mts +1 -1
  195. package/dist/services/provider-context/index.mjs +1 -1
  196. package/dist/services/provider-runtime/index.mjs +1 -1
  197. package/dist/services/session/handlers/index.d.mts +1 -1
  198. package/dist/services/session/handlers/index.mjs +1 -1
  199. package/dist/services/session/index.d.mts +9 -9
  200. package/dist/services/session/index.mjs +1 -1
  201. package/dist/services/session/messages/namespace.d.mts +1 -1
  202. package/dist/services/session/messages/namespace.mjs +1 -1
  203. package/dist/services/session/orchestrator-testing/index.d.mts +1 -1
  204. package/dist/services/session/orchestrator-testing/index.mjs +1 -1
  205. package/dist/services/session/session-events/namespace.d.mts +1 -1
  206. package/dist/services/session/session-events/namespace.mjs +1 -1
  207. package/dist/services/session/storage/namespace.d.mts +1 -1
  208. package/dist/services/session/storage/schema.d.mts +1 -1
  209. package/dist/services/session/testing/index.mjs +1 -1
  210. package/dist/services/session/testing/orchestrator-shared.d.mts +1 -1
  211. package/dist/services/session/testing/orchestrator-shared.mjs +1 -1
  212. package/dist/services/session/turns/namespace.d.mts +1 -1
  213. package/dist/services/session/turns/namespace.mjs +1 -1
  214. package/dist/services/session-editor/index.d.mts +1 -1
  215. package/dist/services/session-editor/index.mjs +1 -1
  216. package/dist/services/settings/index.d.mts +3 -3
  217. package/dist/services/settings/index.mjs +1 -1
  218. package/dist/services/settings/namespace.d.mts +14 -14
  219. package/dist/services/settings/namespace.mjs +1 -1
  220. package/dist/services/settings/storage/clients-namespace.d.mts +1 -1
  221. package/dist/services/settings/storage/clients-namespace.mjs +1 -1
  222. package/dist/services/settings/storage/extension-configs/namespace.d.mts +6 -6
  223. package/dist/services/settings/storage/index.d.mts +3 -3
  224. package/dist/services/settings/storage/index.mjs +1 -1
  225. package/dist/services/settings/storage/providers-namespace.d.mts +1 -1
  226. package/dist/services/settings/storage/providers-namespace.mjs +1 -1
  227. package/dist/services/subagent/index.d.mts +1 -1
  228. package/dist/services/subagent/index.mjs +1 -1
  229. package/dist/services/subagent-template/index.d.mts +2 -2
  230. package/dist/services/subagent-template/namespace.d.mts +1 -1
  231. package/dist/services/subagent-template/schemas.d.mts +1 -1
  232. package/dist/services/tool-approval/index.d.mts +1 -1
  233. package/dist/services/tool-approval/index.mjs +1 -1
  234. package/dist/services/tools/index.d.mts +1 -1
  235. package/dist/services/tools/index.mjs +1 -1
  236. package/dist/services/tray-menu/index.d.mts +3 -3
  237. package/dist/services/tray-menu/index.mjs +1 -1
  238. package/dist/services/tray-menu/namespace.d.mts +1 -1
  239. package/dist/services/tray-menu/schemas.d.mts +1 -1
  240. package/dist/services/turn/index.d.mts +1 -1
  241. package/dist/services/turn/namespace.d.mts +1 -1
  242. package/dist/{session-DOGx_Qrm2.mjs → session-BnfsJoZi.mjs} +1 -1
  243. package/dist/{session-lineage-PY_8PUTH.d.mts → session-lineage-CKg6mErA.d.mts} +1 -1
  244. package/dist/{src-BdKH_3mM.mjs → src-Dvp41Cg2.mjs} +1 -1
  245. package/dist/storage/drizzle/client.d.mts +1 -1
  246. package/dist/storage/drizzle/index.d.mts +1 -1
  247. package/dist/storage/handlers/drizzle/index.d.mts +1 -1
  248. package/dist/storage/handlers/drizzle/index.mjs +1 -1
  249. package/dist/storage/handlers/index.d.mts +1 -1
  250. package/dist/storage/handlers/index.mjs +1 -1
  251. package/dist/{storage-namespace-DyOwnbQO.d.mts → storage-namespace-BXmMUd7a.d.mts} +10 -10
  252. package/dist/tool-approval-service-BgNcJvKx.mjs +1 -0
  253. package/dist/tools-DC4KrqI1.mjs +1 -0
  254. package/dist/{types-igF72H-P.d.mts → types-D0fPFh-D.d.mts} +1 -1
  255. package/dist/{types-BQB_1_Tv.d.mts → types-DiGqpZOD.d.mts} +252 -252
  256. package/dist/ui-kernel/index.d.mts +4 -4
  257. package/dist/ui-kernel/pages/namespace.d.mts +4 -4
  258. package/dist/ui-kernel/pages/schemas.d.mts +1 -1
  259. package/dist/workflow-engine/index.d.mts +6568 -0
  260. package/dist/workflow-engine/index.mjs +1 -0
  261. package/dist/workflow-engine/package.d.mts +2 -0
  262. package/dist/workflow-engine/package.mjs +1 -0
  263. package/dist/workflow-engine/workflow-orchestrator.d.mts +61 -0
  264. package/dist/workflow-engine/workflow-orchestrator.mjs +1 -0
  265. package/dist/workflow-worker-DvP753UN.mjs +1 -0
  266. package/package.json +13 -1
  267. package/dist/await-trigger-CmK_k2oe.mjs +0 -1
  268. package/dist/extension-CbCanyuh.mjs +0 -1
  269. package/dist/schema-introspection-A6FnQ1qg.mjs +0 -1
  270. package/dist/tool-approval-service-DRe1lqy-.mjs +0 -1
  271. package/dist/tools-BXEIs_Ur.mjs +0 -1
  272. package/dist/workflow-worker-BWoY_2ue.mjs +0 -1
  273. /package/dist/{base-orchestrator-D9E-Y8Kr.d.mts → base-orchestrator-M5mAB5-w.d.mts} +0 -0
  274. /package/dist/{capability-service-C2RapAHW.mjs → capability-service-jjrFLM6r.mjs} +0 -0
  275. /package/dist/{cleanEnvForAdapter-GVzUk_oB.mjs → cleanEnvForAdapter-BlpmyXYk.mjs} +0 -0
  276. /package/dist/{config-namespace-B5fFJwQj.d.mts → config-namespace-BzAvE2nY.d.mts} +0 -0
  277. /package/dist/{create-static-mount-Btee48F5.mjs → create-static-mount-CFGo91CI.mjs} +0 -0
  278. /package/dist/{cross-spawn-CTptpCy4.mjs → cross-spawn-BL6EvJBv.mjs} +0 -0
  279. /package/dist/{cursor-storage-BOsCO4oj.mjs → cursor-storage-C_WTAESV.mjs} +0 -0
  280. /package/dist/{definition-C4DLI1SC.d.mts → definition-q6iLw11H.d.mts} +0 -0
  281. /package/dist/{drizzle-YUDNFNbV.mjs → drizzle-DpjZFY_j.mjs} +0 -0
  282. /package/dist/{event-Ca2yUf5i.mjs → event-BEllCn16.mjs} +0 -0
  283. /package/dist/{execution-target-CRPTfZlc.mjs → execution-target-CQGYaaM2.mjs} +0 -0
  284. /package/dist/{extension-discovery-CffOPDvn.d.mts → extension-discovery-CkV_VRdJ.d.mts} +0 -0
  285. /package/dist/{fast-uri-DARKlakU.mjs → fast-uri-BF2Xuiop.mjs} +0 -0
  286. /package/dist/{filesystem-service-Cw4_S1bm.d.mts → filesystem-service-Ddngll0j.d.mts} +0 -0
  287. /package/dist/{identity-Cz2IeEtm.mjs → identity-Bmx-8fPa.mjs} +0 -0
  288. /package/dist/{index-CJt_4GQu.d.mts → index-9IDJUJ4X.d.mts} +0 -0
  289. /package/dist/{index-DOfnh3xf.d.mts → index-BBvcP-P0.d.mts} +0 -0
  290. /package/dist/{index-ChpYWZGc.d.mts → index-BKKNWqkP2.d.mts} +0 -0
  291. /package/dist/{index-DOAUskuB.d.mts → index-BMpRB6iE.d.mts} +0 -0
  292. /package/dist/{index-BKqJTm2-.d.mts → index-BbCjtc3h.d.mts} +0 -0
  293. /package/dist/{index-Bo6dMW5B.d.mts → index-BheaEhyI.d.mts} +0 -0
  294. /package/dist/{index-FjZOM4M0.d.mts → index-BnQSPC6c.d.mts} +0 -0
  295. /package/dist/{index-BPn5ODFL.d.mts → index-Bsp0O_sI.d.mts} +0 -0
  296. /package/dist/{index-CBW3XX7b.d.mts → index-Buo9H8RK.d.mts} +0 -0
  297. /package/dist/{index-BWA-Bf0T.d.mts → index-BxFA1XcP.d.mts} +0 -0
  298. /package/dist/{index-sQ-7cpgm2.d.mts → index-C33Tq1ei2.d.mts} +0 -0
  299. /package/dist/{index-BkKMwRJj.d.mts → index-C6BhKRnH.d.mts} +0 -0
  300. /package/dist/{index-CE2F0_8r.d.mts → index-CDU_s69P.d.mts} +0 -0
  301. /package/dist/{index-AJDF86bD2.d.mts → index-CGJjA-hR2.d.mts} +0 -0
  302. /package/dist/{index-B3SbibGM.d.mts → index-Clut1ljB.d.mts} +0 -0
  303. /package/dist/{index-Ksoed-mL.d.mts → index-Cz9JMjZK.d.mts} +0 -0
  304. /package/dist/{index-rQU8B-JX.d.mts → index-D0SUjZmU.d.mts} +0 -0
  305. /package/dist/{index-BZmLqP2a.d.mts → index-D6Iyvz9T.d.mts} +0 -0
  306. /package/dist/{index-8AU9itst2.d.mts → index-DOfq0qqv.d.mts} +0 -0
  307. /package/dist/{index-DYLb4v5z.d.mts → index-DSV1aFgK.d.mts} +0 -0
  308. /package/dist/{index-DpKxkrU8.d.mts → index-Dsq2zKvu.d.mts} +0 -0
  309. /package/dist/{jsonl-transport-DN1zyi6w.mjs → jsonl-transport-BxNXizIm.mjs} +0 -0
  310. /package/dist/{lib-DtXofYKC.mjs → lib-B9kVK_1_.mjs} +0 -0
  311. /package/dist/{model-registry-DdZrE4sa.mjs → model-registry-B0AIdj7O.mjs} +0 -0
  312. /package/dist/{namespace-BwzZJqTV.mjs → namespace-BgPoC46Q.mjs} +0 -0
  313. /package/dist/{namespace-Yna5-Pws.mjs → namespace-CDiM5Bcr.mjs} +0 -0
  314. /package/dist/{namespace-DzS4SSkr2.mjs → namespace-CUOGcGPG.mjs} +0 -0
  315. /package/dist/{namespace-CfqAh9gM.d.mts → namespace-D1Iw_d1P.d.mts} +0 -0
  316. /package/dist/{namespace-CCfEHbi9.mjs → namespace-D6X67cUk.mjs} +0 -0
  317. /package/dist/{namespace-BnVlQiRv.d.mts → namespace-DBKWNrk7.d.mts} +0 -0
  318. /package/dist/{namespace-BGGiHXkz.mjs → namespace-ENv7H7Na.mjs} +0 -0
  319. /package/dist/{namespace-oS2v7viW.d.mts → namespace-XTGCaSXj.d.mts} +0 -0
  320. /package/dist/{namespace-Buecxx19.d.mts → namespace-nlsvvMtD.d.mts} +0 -0
  321. /package/dist/{namespace-wYMkOtE0.d.mts → namespace-uuR0Fg5r.d.mts} +0 -0
  322. /package/dist/{orchestrator-shared-DXAvgseP.d.mts → orchestrator-shared-D91Wk7z-.d.mts} +0 -0
  323. /package/dist/{out-Rp-RSvc2.mjs → out-CvZYgczi.mjs} +0 -0
  324. /package/dist/{package-DKVlsMP3.mjs → package-OE9dMQsq.mjs} +0 -0
  325. /package/dist/{providers-namespace-BITpk8sN.d.mts → providers-namespace-BqWYkydw.d.mts} +0 -0
  326. /package/dist/{quick-lru-8GhFeKMZ.mjs → quick-lru-B9nWXbXI.mjs} +0 -0
  327. /package/dist/{schema-DdMn1KCD.mjs → schema-DOnJmAPw.mjs} +0 -0
  328. /package/dist/{schemas-CMyv6Mkq.d.mts → schemas-B77Gi8Xr.d.mts} +0 -0
  329. /package/dist/{schemas-B-Z4U9FN.mjs → schemas-BdAf5u58.mjs} +0 -0
  330. /package/dist/{schemas-WJ9OOsOF.d.mts → schemas-C792eVAZ.d.mts} +0 -0
  331. /package/dist/{schemas-PmHLOkr-.d.mts → schemas-Dyk7JuVl.d.mts} +0 -0
  332. /package/dist/{schemas-7y9O8b0X.d.mts → schemas-Kq33MTPY.d.mts} +0 -0
  333. /package/dist/{server-lifecycle-JX0MpLfX.d.mts → server-lifecycle-47mygK3E.d.mts} +0 -0
  334. /package/dist/{server-lifecycle-JTFuSJhg.mjs → server-lifecycle-Cg47L59Q.mjs} +0 -0
  335. /package/dist/{shared-schemas-CbbcM1GQ.mjs → shared-schemas-CKe2uN4-.mjs} +0 -0
  336. /package/dist/{src-CUlokMRL.mjs → src-Z3vAZJfw.mjs} +0 -0
  337. /package/dist/{storage-namespace-DecBVTzH.mjs → storage-namespace-BXO3lDVy.mjs} +0 -0
  338. /package/dist/{storage-namespace-definition-QTqbbw5b.d.mts → storage-namespace-definition-C3XbpiP8.d.mts} +0 -0
  339. /package/dist/{supports-color-CcNsYzyh.mjs → supports-color-fVsgozsi.mjs} +0 -0
  340. /package/dist/{tray-menu-service-CsaXURTf.mjs → tray-menu-service-B5YPK_YF.mjs} +0 -0
  341. /package/dist/{types-CycWG-_j.d.mts → types-5Gw3iVpK.d.mts} +0 -0
  342. /package/dist/{types-DVAi-qkD.d.mts → types-B0BtvVAq.d.mts} +0 -0
  343. /package/dist/{types-Bnf1bRcq.d.mts → types-BhXRffJ_.d.mts} +0 -0
  344. /package/dist/{types-CLojY5bP.d.mts → types-CmMesAgR.d.mts} +0 -0
  345. /package/dist/{types-C6R2eyMZ.d.mts → types-D-bP8RRE.d.mts} +0 -0
  346. /package/dist/{window-registry-r3VFP-_d.d.mts → window-registry-CfEi_Ji4.d.mts} +0 -0
@@ -453,9 +453,9 @@ declare const SessionEventStorageNamespace$1: {
453
453
  outcome: _$zod.ZodEnum<{
454
454
  error: "error";
455
455
  completed: "completed";
456
- cancelled: "cancelled";
457
456
  superseded: "superseded";
458
457
  merged: "merged";
458
+ cancelled: "cancelled";
459
459
  rejected: "rejected";
460
460
  }>;
461
461
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -525,9 +525,9 @@ declare const SessionEventStorageNamespace$1: {
525
525
  parentSessionId: _$zod.ZodString;
526
526
  kind: _$zod.ZodEnum<{
527
527
  fork: "fork";
528
+ branch: "branch";
528
529
  subagent: "subagent";
529
530
  compress: "compress";
530
- branch: "branch";
531
531
  rewrite: "rewrite";
532
532
  coordinator: "coordinator";
533
533
  aside: "aside";
@@ -771,9 +771,9 @@ declare const SessionEventStorageNamespace$1: {
771
771
  outcome: _$zod.ZodEnum<{
772
772
  error: "error";
773
773
  completed: "completed";
774
- cancelled: "cancelled";
775
774
  superseded: "superseded";
776
775
  merged: "merged";
776
+ cancelled: "cancelled";
777
777
  rejected: "rejected";
778
778
  }>;
779
779
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -843,9 +843,9 @@ declare const SessionEventStorageNamespace$1: {
843
843
  parentSessionId: _$zod.ZodString;
844
844
  kind: _$zod.ZodEnum<{
845
845
  fork: "fork";
846
+ branch: "branch";
846
847
  subagent: "subagent";
847
848
  compress: "compress";
848
- branch: "branch";
849
849
  rewrite: "rewrite";
850
850
  coordinator: "coordinator";
851
851
  aside: "aside";
@@ -1079,9 +1079,9 @@ declare const SessionEventStorageNamespace$1: {
1079
1079
  outcome: _$zod.ZodEnum<{
1080
1080
  error: "error";
1081
1081
  completed: "completed";
1082
- cancelled: "cancelled";
1083
1082
  superseded: "superseded";
1084
1083
  merged: "merged";
1084
+ cancelled: "cancelled";
1085
1085
  rejected: "rejected";
1086
1086
  }>;
1087
1087
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -1151,9 +1151,9 @@ declare const SessionEventStorageNamespace$1: {
1151
1151
  parentSessionId: _$zod.ZodString;
1152
1152
  kind: _$zod.ZodEnum<{
1153
1153
  fork: "fork";
1154
+ branch: "branch";
1154
1155
  subagent: "subagent";
1155
1156
  compress: "compress";
1156
- branch: "branch";
1157
1157
  rewrite: "rewrite";
1158
1158
  coordinator: "coordinator";
1159
1159
  aside: "aside";
@@ -1395,9 +1395,9 @@ declare const SessionEventStorageNamespace$1: {
1395
1395
  outcome: _$zod.ZodEnum<{
1396
1396
  error: "error";
1397
1397
  completed: "completed";
1398
- cancelled: "cancelled";
1399
1398
  superseded: "superseded";
1400
1399
  merged: "merged";
1400
+ cancelled: "cancelled";
1401
1401
  rejected: "rejected";
1402
1402
  }>;
1403
1403
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -1467,9 +1467,9 @@ declare const SessionEventStorageNamespace$1: {
1467
1467
  parentSessionId: _$zod.ZodString;
1468
1468
  kind: _$zod.ZodEnum<{
1469
1469
  fork: "fork";
1470
+ branch: "branch";
1470
1471
  subagent: "subagent";
1471
1472
  compress: "compress";
1472
- branch: "branch";
1473
1473
  rewrite: "rewrite";
1474
1474
  coordinator: "coordinator";
1475
1475
  aside: "aside";
@@ -1699,9 +1699,9 @@ declare const SessionEventStorageNamespace$1: {
1699
1699
  outcome: _$zod.ZodEnum<{
1700
1700
  error: "error";
1701
1701
  completed: "completed";
1702
- cancelled: "cancelled";
1703
1702
  superseded: "superseded";
1704
1703
  merged: "merged";
1704
+ cancelled: "cancelled";
1705
1705
  rejected: "rejected";
1706
1706
  }>;
1707
1707
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -1771,9 +1771,9 @@ declare const SessionEventStorageNamespace$1: {
1771
1771
  parentSessionId: _$zod.ZodString;
1772
1772
  kind: _$zod.ZodEnum<{
1773
1773
  fork: "fork";
1774
+ branch: "branch";
1774
1775
  subagent: "subagent";
1775
1776
  compress: "compress";
1776
- branch: "branch";
1777
1777
  rewrite: "rewrite";
1778
1778
  coordinator: "coordinator";
1779
1779
  aside: "aside";
@@ -2017,9 +2017,9 @@ declare const SessionEventStorageNamespace$1: {
2017
2017
  outcome: _$zod.ZodEnum<{
2018
2018
  error: "error";
2019
2019
  completed: "completed";
2020
- cancelled: "cancelled";
2021
2020
  superseded: "superseded";
2022
2021
  merged: "merged";
2022
+ cancelled: "cancelled";
2023
2023
  rejected: "rejected";
2024
2024
  }>;
2025
2025
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -2089,9 +2089,9 @@ declare const SessionEventStorageNamespace$1: {
2089
2089
  parentSessionId: _$zod.ZodString;
2090
2090
  kind: _$zod.ZodEnum<{
2091
2091
  fork: "fork";
2092
+ branch: "branch";
2092
2093
  subagent: "subagent";
2093
2094
  compress: "compress";
2094
- branch: "branch";
2095
2095
  rewrite: "rewrite";
2096
2096
  coordinator: "coordinator";
2097
2097
  aside: "aside";
@@ -2325,9 +2325,9 @@ declare const SessionEventStorageNamespace$1: {
2325
2325
  outcome: _$zod.ZodEnum<{
2326
2326
  error: "error";
2327
2327
  completed: "completed";
2328
- cancelled: "cancelled";
2329
2328
  superseded: "superseded";
2330
2329
  merged: "merged";
2330
+ cancelled: "cancelled";
2331
2331
  rejected: "rejected";
2332
2332
  }>;
2333
2333
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -2397,9 +2397,9 @@ declare const SessionEventStorageNamespace$1: {
2397
2397
  parentSessionId: _$zod.ZodString;
2398
2398
  kind: _$zod.ZodEnum<{
2399
2399
  fork: "fork";
2400
+ branch: "branch";
2400
2401
  subagent: "subagent";
2401
2402
  compress: "compress";
2402
- branch: "branch";
2403
2403
  rewrite: "rewrite";
2404
2404
  coordinator: "coordinator";
2405
2405
  aside: "aside";
@@ -2641,9 +2641,9 @@ declare const SessionEventStorageNamespace$1: {
2641
2641
  outcome: _$zod.ZodEnum<{
2642
2642
  error: "error";
2643
2643
  completed: "completed";
2644
- cancelled: "cancelled";
2645
2644
  superseded: "superseded";
2646
2645
  merged: "merged";
2646
+ cancelled: "cancelled";
2647
2647
  rejected: "rejected";
2648
2648
  }>;
2649
2649
  supersededBy: _$zod.ZodOptional<_$zod.ZodString>;
@@ -2713,9 +2713,9 @@ declare const SessionEventStorageNamespace$1: {
2713
2713
  parentSessionId: _$zod.ZodString;
2714
2714
  kind: _$zod.ZodEnum<{
2715
2715
  fork: "fork";
2716
+ branch: "branch";
2716
2717
  subagent: "subagent";
2717
2718
  compress: "compress";
2718
- branch: "branch";
2719
2719
  rewrite: "rewrite";
2720
2720
  coordinator: "coordinator";
2721
2721
  aside: "aside";
@@ -2923,7 +2923,7 @@ declare const SessionEventStorageNamespace$1: {
2923
2923
  turnNumber: number;
2924
2924
  messageId: string;
2925
2925
  agentId: string;
2926
- outcome: "error" | "completed" | "cancelled" | "superseded" | "merged" | "rejected";
2926
+ outcome: "error" | "completed" | "superseded" | "merged" | "cancelled" | "rejected";
2927
2927
  supersededBy?: string | undefined;
2928
2928
  mergedInto?: string | undefined;
2929
2929
  error?: string | undefined;
@@ -2978,7 +2978,7 @@ declare const SessionEventStorageNamespace$1: {
2978
2978
  payload: {
2979
2979
  childSessionId: string;
2980
2980
  parentSessionId: string;
2981
- kind: "fork" | "subagent" | "compress" | "branch" | "rewrite" | "coordinator" | "aside";
2981
+ kind: "fork" | "branch" | "subagent" | "compress" | "rewrite" | "coordinator" | "aside";
2982
2982
  forkPointMessageId?: string | undefined;
2983
2983
  };
2984
2984
  } | {
@@ -1 +1 @@
1
- import{sessions as e}from"./services/session/storage/schema.mjs";import{t}from"./schema-DxHkeT-G.mjs";import{SessionEventStorageNamespace as n,SessionEventStorageSubjects as r}from"@makaio/framework/contracts";import{index as i,integer as a,sqliteTable as o,text as s}from"drizzle-orm/sqlite-core";const c=o(`session_events`,{id:a(`id`).primaryKey({autoIncrement:!0}),sessionId:s(`session_id`).notNull().references(()=>e.sessionId,{onDelete:`cascade`}),eventId:s(`event_id`).notNull().unique(),timestamp:a(`timestamp`).notNull(),type:s(`type`).notNull(),agentId:s(`agent_id`),adapterId:s(`adapter_id`),originatingMessageId:s(`originating_message_id`),messageId:s(`message_id`).references(()=>t.messageId,{onDelete:`cascade`}),turnId:s(`turn_id`),contentText:s(`content_text`),payload:s(`payload`).notNull()},e=>[i(`idx_events_session_ts`).on(e.sessionId,e.timestamp),i(`idx_events_session_type`).on(e.sessionId,e.type),i(`idx_events_turn`).on(e.turnId),i(`idx_events_originating_message`).on(e.originatingMessageId)]),l={...n,extensions:{drizzle:{sessionEvents:c}}};export{r as n,c as r,l as t};
1
+ import{sessions as e}from"./services/session/storage/schema.mjs";import{t}from"./schema-DCJyzRHe.mjs";import{SessionEventStorageNamespace as n,SessionEventStorageSubjects as r}from"@makaio/framework/contracts";import{index as i,integer as a,sqliteTable as o,text as s}from"drizzle-orm/sqlite-core";const c=o(`session_events`,{id:a(`id`).primaryKey({autoIncrement:!0}),sessionId:s(`session_id`).notNull().references(()=>e.sessionId,{onDelete:`cascade`}),eventId:s(`event_id`).notNull().unique(),timestamp:a(`timestamp`).notNull(),type:s(`type`).notNull(),agentId:s(`agent_id`),adapterId:s(`adapter_id`),originatingMessageId:s(`originating_message_id`),messageId:s(`message_id`).references(()=>t.messageId,{onDelete:`cascade`}),turnId:s(`turn_id`),contentText:s(`content_text`),payload:s(`payload`).notNull()},e=>[i(`idx_events_session_ts`).on(e.sessionId,e.timestamp),i(`idx_events_session_type`).on(e.sessionId,e.type),i(`idx_events_turn`).on(e.turnId),i(`idx_events_originating_message`).on(e.originatingMessageId)]),l={...n,extensions:{drizzle:{sessionEvents:c}}};export{r as n,c as r,l as t};
@@ -1,4 +1,4 @@
1
- import { i as BusServerConfig, n as startBusServer, r as BusServer, t as StartBusServerOptions } from "../../server-lifecycle-JX0MpLfX.mjs";
1
+ import { i as BusServerConfig, n as startBusServer, r as BusServer, t as StartBusServerOptions } from "../../server-lifecycle-47mygK3E.mjs";
2
2
  import { BusBroadcastMessage, BusMessage, BusRequestMessage, BusTransport, BusTransportError } from "@makaio/framework/bus";
3
3
  import { TransportAuth, WebSocketLike, WebSocketServerLike, WebSocketServerLike as WebSocketServerLike$1 } from "@makaio/framework/node/transports";
4
4
 
@@ -1 +1 @@
1
- import{n as e,r as t,t as n}from"../../server-lifecycle-JTFuSJhg.mjs";var r=class{connectionListeners=new Set;on(e,t){e===`connection`&&this.connectionListeners.add(t)}off(e,t){e===`connection`&&this.connectionListeners.delete(t)}close(e){this.connectionListeners.clear(),e?.()}accept(e){for(let t of this.connectionListeners)t(e)}};export{r as HonoWebSocketBridge,t as LoopbackTransport,e as createBusServer,n as startBusServer};
1
+ import{n as e,r as t,t as n}from"../../server-lifecycle-Cg47L59Q.mjs";var r=class{connectionListeners=new Set;on(e,t){e===`connection`&&this.connectionListeners.add(t)}off(e,t){e===`connection`&&this.connectionListeners.delete(t)}close(e){this.connectionListeners.clear(),e?.()}accept(e){for(let t of this.connectionListeners)t(e)}};export{r as HonoWebSocketBridge,t as LoopbackTransport,e as createBusServer,n as startBusServer};
@@ -1,2 +1,2 @@
1
- import { n as startBusServer, t as StartBusServerOptions } from "../../server-lifecycle-JX0MpLfX.mjs";
1
+ import { n as startBusServer, t as StartBusServerOptions } from "../../server-lifecycle-47mygK3E.mjs";
2
2
  export { StartBusServerOptions, startBusServer };
@@ -1 +1 @@
1
- import{t as e}from"../../server-lifecycle-JTFuSJhg.mjs";export{e as startBusServer};
1
+ import{t as e}from"../../server-lifecycle-Cg47L59Q.mjs";export{e as startBusServer};
@@ -1 +1 @@
1
- import{n as e}from"./namespace-eOeUjGPB.mjs";import{MakaioBus as t}from"@makaio/framework/bus";import{AdapterSubjects as n,AgentSubjects as r,SessionSubjects as i}from"@makaio/framework/contracts";function a(){t.__resetHandlers?.()}function o(e=10){return new Promise(t=>setTimeout(t,e))}function s(e,t){let n=Date.now();return{agentId:e,adapterId:`adapter-${e}`,adapterName:`test-adapter`,sessionId:t?.sessionId??`test-session`,role:`member`,status:`idle`,createdAt:n,lastActivityAt:n,...t}}async function c(e,r=e){await t.emit(n.initialized,{adapterName:e,adapterId:r,capabilities:[]})}async function l(n){return(await t.request(e.getEvents,{sessionId:n})).events}function u(e,n,r){let i=[];return r.push(t.on(e,(e=>{let t=e.payload;i.push(n(t))}))),{received:i,clear:()=>{i.length=0}}}function d(e){return u(i.turn.started,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,agentIds:[...e.agentIds],initiator:e.initiator}),e)}function f(e){return u(i.turn.completed,e=>({sessionId:e.sessionId,turnId:e.turnId,success:e.success,error:e.error,initiator:e.initiator}),e)}function p(e){return u(i.user_message.sent,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,content:e.content,agentIds:[...e.agentIds],origin:e.origin}),e)}function m(e){return u(i.user_message.acknowledged,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,agentId:e.agentId}),e)}function h(e){return u(i.user_message.completed,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,agentId:e.agentId,outcome:e.outcome,error:e.error}),e)}const g=s;function _(e){let t=Date.now();return{sessionId:e.sessionId,createdAt:t,lastActivityAt:t,status:e.status??`active`,agents:e.agents??[],leadAgentId:e.leadAgentId,targetWorkingDirectory:e.targetWorkingDirectory}}function v(e){return t.on(i.create,t=>{let n=t.payload.sessionId??`session-${crypto.randomUUID().slice(0,8)}`;e.set(n,_({sessionId:n,agents:[]})),t.setResult({sessionId:n})})}function y(e){return t.on(i.agent.added,t=>{let n=e.get(t.payload.sessionId);if(!n)return;let r=n.agents.length===0,i=t.payload.role??(r?`lead`:`member`);r&&(n.adapterSessionId=t.payload.adapterSessionId,n.adapterName=t.payload.adapterName,n.adapterId=t.payload.adapterId);let a=Date.now();n.agents.push({agentId:t.payload.agentId,adapterId:t.payload.adapterId,adapterName:t.payload.adapterName,sessionId:t.payload.sessionId,role:i,status:`idle`,createdAt:a,lastActivityAt:a}),i===`lead`&&(n.leadAgentId=t.payload.agentId),n.lastActivityAt=Date.now()})}function b(e){return t.on(i.get,t=>{t.setResult({session:e.get(t.payload.sessionId)??null})})}function x(e){return t.on(n.getAgent,t=>{for(let n of e.values()){let e=n.agents.find(e=>e.agentId===t.payload.agentId);if(e){t.setResult({agent:{agentId:e.agentId,sessionId:n.sessionId,adapterSessionId:``}});return}}t.setResult({agent:null})})}function S(){return t.on(n.rehydrateAgent,e=>{e.setResult({})})}function C(e=`/previous/cwd`){return t.on(r.cwd.change,t=>{t.setResult({success:!0,previousCwd:e})})}function w(){return t.on(r.model.change,e=>{e.setResult({success:!0,swapped:!1})})}function T(e){return t.on(n.startAgent,t=>{let{adapterId:n,initialMessage:r}=t.payload,i=t.payload.sessionId??`session-${crypto.randomUUID().slice(0,8)}`,a=`agent-${crypto.randomUUID().slice(0,8)}`,o=r?`msg-${crypto.randomUUID().slice(0,8)}`:void 0,s=`adapter-session-${i}`;e?.({adapterId:n,sessionId:i,initialMessage:r}),t.setResult({success:!0,agentId:a,adapterId:n,adapterSessionId:s,sessionId:i,...o&&{messageId:o}}),j({sessionId:i,agentId:a,adapterId:n,adapterSessionId:s})})}function E(e){return t.on(n.startAgent,t=>{t.setResult({success:!1,message:e})})}function D(e){return t.on(r.sendMessage,t=>{let{agentId:n,adapterId:r,message:i,messageId:a,sessionContext:o,responseSchema:s}=t.payload,c=a??`msg-${crypto.randomUUID().slice(0,8)}`;e?.({agentId:n,adapterId:r,message:i,messageId:c,sessionContext:o,responseSchema:s}),t.setResult({messageId:c})})}function O(e,n){return t.on(r.sendMessage,t=>{if(e.has(t.payload.agentId))throw Error(n);t.setResult({messageId:t.payload.messageId??`generated-id`})})}async function k(e,n){await t.emit(r.complete,{agentId:e,adapterId:`adapter-${e}`,adapterName:`test-adapter`,adapterSessionId:`adapter-session-${e}`,messageId:n})}async function A(e,n){await t.emit(r.complete,{agentId:e,adapterId:`adapter-${e}`,adapterName:`test-adapter`,adapterSessionId:`adapter-session-${e}`,messageId:`msg-error-${e}`,outcome:`error`,error:n})}function j(e){setImmediate(()=>{t.emit(i.agent.added,{sessionId:e.sessionId,agentId:e.agentId,adapterId:e.adapterId,adapterName:e.adapterId,adapterSessionId:e.adapterSessionId,role:e.role})})}function M(e,r){let i=new Map,a=t.on(n.startAgent,t=>{r.payload=t.payload;let n=`agent-${crypto.randomUUID().slice(0,8)}`,a=t.payload.initialMessage?`msg-${crypto.randomUUID().slice(0,8)}`:void 0,o=`adapter-session-${e}`;i.set(n,{agentId:n,sessionId:e,adapterSessionId:o,adapterId:t.payload.adapterId}),t.setResult({success:!0,agentId:n,adapterId:t.payload.adapterId,adapterSessionId:o,sessionId:e,...a&&{messageId:a}}),j({sessionId:e,agentId:n,adapterId:t.payload.adapterId,adapterSessionId:o})}),o=t.on(n.getAgent,e=>{let t=i.get(e.payload.agentId);e.setResult({agent:t?{agentId:t.agentId,sessionId:t.sessionId,adapterSessionId:t.adapterSessionId}:null})});return()=>{a(),o()}}export{c as C,o as E,p as S,a as T,T as _,A as a,m as b,v as c,E as d,x as f,D as g,S as h,k as i,C as l,w as m,_ as n,y as o,b as p,j as r,M as s,g as t,O as u,f as v,l as w,h as x,d as y};
1
+ import{n as e}from"./namespace-h0HIuqx0.mjs";import{MakaioBus as t}from"@makaio/framework/bus";import{AdapterSubjects as n,AgentSubjects as r,SessionSubjects as i}from"@makaio/framework/contracts";function a(){t.__resetHandlers?.()}function o(e=10){return new Promise(t=>setTimeout(t,e))}function s(e,t){let n=Date.now();return{agentId:e,adapterId:`adapter-${e}`,adapterName:`test-adapter`,sessionId:t?.sessionId??`test-session`,role:`member`,status:`idle`,createdAt:n,lastActivityAt:n,...t}}async function c(e,r=e){await t.emit(n.initialized,{adapterName:e,adapterId:r,capabilities:[]})}async function l(n){return(await t.request(e.getEvents,{sessionId:n})).events}function u(e,n,r){let i=[];return r.push(t.on(e,(e=>{let t=e.payload;i.push(n(t))}))),{received:i,clear:()=>{i.length=0}}}function d(e){return u(i.turn.started,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,agentIds:[...e.agentIds],initiator:e.initiator}),e)}function f(e){return u(i.turn.completed,e=>({sessionId:e.sessionId,turnId:e.turnId,success:e.success,error:e.error,initiator:e.initiator}),e)}function p(e){return u(i.user_message.sent,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,content:e.content,agentIds:[...e.agentIds],origin:e.origin}),e)}function m(e){return u(i.user_message.acknowledged,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,agentId:e.agentId}),e)}function h(e){return u(i.user_message.completed,e=>({sessionId:e.sessionId,turnId:e.turnId,messageId:e.messageId,agentId:e.agentId,outcome:e.outcome,error:e.error}),e)}const g=s;function _(e){let t=Date.now();return{sessionId:e.sessionId,createdAt:t,lastActivityAt:t,status:e.status??`active`,agents:e.agents??[],leadAgentId:e.leadAgentId,targetWorkingDirectory:e.targetWorkingDirectory}}function v(e){return t.on(i.create,t=>{let n=t.payload.sessionId??`session-${crypto.randomUUID().slice(0,8)}`;e.set(n,_({sessionId:n,agents:[]})),t.setResult({sessionId:n})})}function y(e){return t.on(i.agent.added,t=>{let n=e.get(t.payload.sessionId);if(!n)return;let r=n.agents.length===0,i=t.payload.role??(r?`lead`:`member`);r&&(n.adapterSessionId=t.payload.adapterSessionId,n.adapterName=t.payload.adapterName,n.adapterId=t.payload.adapterId);let a=Date.now();n.agents.push({agentId:t.payload.agentId,adapterId:t.payload.adapterId,adapterName:t.payload.adapterName,sessionId:t.payload.sessionId,role:i,status:`idle`,createdAt:a,lastActivityAt:a}),i===`lead`&&(n.leadAgentId=t.payload.agentId),n.lastActivityAt=Date.now()})}function b(e){return t.on(i.get,t=>{t.setResult({session:e.get(t.payload.sessionId)??null})})}function x(e){return t.on(n.getAgent,t=>{for(let n of e.values()){let e=n.agents.find(e=>e.agentId===t.payload.agentId);if(e){t.setResult({agent:{agentId:e.agentId,sessionId:n.sessionId,adapterSessionId:``}});return}}t.setResult({agent:null})})}function S(){return t.on(n.rehydrateAgent,e=>{e.setResult({})})}function C(e=`/previous/cwd`){return t.on(r.cwd.change,t=>{t.setResult({success:!0,previousCwd:e})})}function w(){return t.on(r.model.change,e=>{e.setResult({success:!0,swapped:!1})})}function T(e){return t.on(n.startAgent,t=>{let{adapterId:n,initialMessage:r}=t.payload,i=t.payload.sessionId??`session-${crypto.randomUUID().slice(0,8)}`,a=`agent-${crypto.randomUUID().slice(0,8)}`,o=r?`msg-${crypto.randomUUID().slice(0,8)}`:void 0,s=`adapter-session-${i}`;e?.({adapterId:n,sessionId:i,initialMessage:r}),t.setResult({success:!0,agentId:a,adapterId:n,adapterSessionId:s,sessionId:i,...o&&{messageId:o}}),j({sessionId:i,agentId:a,adapterId:n,adapterSessionId:s})})}function E(e){return t.on(n.startAgent,t=>{t.setResult({success:!1,message:e})})}function D(e){return t.on(r.sendMessage,t=>{let{agentId:n,adapterId:r,message:i,messageId:a,sessionContext:o,responseSchema:s}=t.payload,c=a??`msg-${crypto.randomUUID().slice(0,8)}`;e?.({agentId:n,adapterId:r,message:i,messageId:c,sessionContext:o,responseSchema:s}),t.setResult({messageId:c})})}function O(e,n){return t.on(r.sendMessage,t=>{if(e.has(t.payload.agentId))throw Error(n);t.setResult({messageId:t.payload.messageId??`generated-id`})})}async function k(e,n){await t.emit(r.complete,{agentId:e,adapterId:`adapter-${e}`,adapterName:`test-adapter`,adapterSessionId:`adapter-session-${e}`,messageId:n})}async function A(e,n){await t.emit(r.complete,{agentId:e,adapterId:`adapter-${e}`,adapterName:`test-adapter`,adapterSessionId:`adapter-session-${e}`,messageId:`msg-error-${e}`,outcome:`error`,error:n})}function j(e){setImmediate(()=>{t.emit(i.agent.added,{sessionId:e.sessionId,agentId:e.agentId,adapterId:e.adapterId,adapterName:e.adapterId,adapterSessionId:e.adapterSessionId,role:e.role})})}function M(e,r){let i=new Map,a=t.on(n.startAgent,t=>{r.payload=t.payload;let n=`agent-${crypto.randomUUID().slice(0,8)}`,a=t.payload.initialMessage?`msg-${crypto.randomUUID().slice(0,8)}`:void 0,o=`adapter-session-${e}`;i.set(n,{agentId:n,sessionId:e,adapterSessionId:o,adapterId:t.payload.adapterId}),t.setResult({success:!0,agentId:n,adapterId:t.payload.adapterId,adapterSessionId:o,sessionId:e,...a&&{messageId:a}}),j({sessionId:e,agentId:n,adapterId:t.payload.adapterId,adapterSessionId:o})}),o=t.on(n.getAgent,e=>{let t=i.get(e.payload.agentId);e.setResult({agent:t?{agentId:t.agentId,sessionId:t.sessionId,adapterSessionId:t.adapterSessionId}:null})});return()=>{a(),o()}}export{c as C,o as E,p as S,a as T,T as _,A as a,m as b,v as c,E as d,x as f,D as g,S as h,k as i,C as l,w as m,_ as n,y as o,b as p,j as r,M as s,g as t,O as u,f as v,l as w,h as x,d as y};
@@ -0,0 +1 @@
1
+ import{C as e,S as t,T as n,_ as r,a as i,b as a,c as o,d as s,f as c,g as l,h as u,i as d,l as f,m as p,n as m,o as h,p as g,t as _,u as v,v as y,w as b,x,y as S}from"./primitive-runtime-DcYYWy_6.mjs";import{isAbsolute as C,resolve as w}from"node:path";import{matchesFilter as ee,matchesSubscription as te}from"@makaio/framework/bus";import{ArtifactSubjects as ne,EXECUTION_LIST_DEFAULT_LIMIT as re,EXECUTION_LIST_MAX_LIMIT as ie,EXECUTION_LIST_MIN_LIMIT as ae,ExecutionHintsSchema as oe,JsonValueSchema as se,SessionSubjects as T,WORKFLOW_CANCELLED_REASON as E,WorkerNodeSubjects as ce,WorkflowNamespace as le,WorkflowSubjects as D,WorkflowWorkerSourceSchema as ue,createWorkflowCancelSubject as de,dep as fe,extensionToken as pe}from"@makaio/framework/contracts";import{BaseService as me}from"@makaio/framework/service-base";import{and as O,asc as k,count as he,desc as A,eq as j,getTableColumns as ge,isNotNull as _e,lt as ve,or as ye,sql as M,sum as N}from"drizzle-orm";import{executeTransaction as P,registerDrizzleHandlers as be}from"@makaio/framework/storage/drizzle";import{compile as xe}from"@makaio/framework/expression";import*as Se from"node:os";import{SessionToken as Ce}from"@makaio/framework/services";function F(e){return e.type===`global`?{scopeType:`global`,scopeKind:``,scopeId:``}:e.type===`external`?{scopeType:`external`,scopeKind:e.kind,scopeId:e.id}:{scopeType:e.type,scopeKind:``,scopeId:e.id}}function I(e){switch(e.scopeType){case`global`:return{type:`global`};case`external`:if(!e.scopeKind||!e.scopeId)throw Error(`Invalid external workflow scope row: scopeKind and scopeId are required`);return{type:`external`,kind:e.scopeKind,id:e.scopeId};case`workspace`:case`session`:if(!e.scopeId)throw Error(`Invalid ${e.scopeType} workflow scope row: scopeId is required`);return{type:e.scopeType,id:e.scopeId};default:{let t=e.scopeType;throw Error(`Unknown scope type: ${String(t)}`)}}}function we(e,t){let{scopeType:n,scopeKind:r,scopeId:i}=F(t);return[j(e.scopeType,n),j(e.scopeKind,r),j(e.scopeId,i)]}function L(e){return{id:e.id,name:e.name,description:e.description??void 0,root:e.root,inputSchema:e.inputSchema??void 0,configSchema:e.configSchema??void 0,outputSchema:e.outputSchema??void 0,artifact:e.artifact??void 0,triggers:e.triggers??void 0,scope:I(e),canvasLayout:e.canvasLayout??void 0,source:e.source??void 0,executionHints:e.executionHints??void 0}}function Te(e,t){let n=F(e.scope);return{id:e.id,name:e.name??e.id,root:e.root,description:e.description??null,inputSchema:e.inputSchema??null,configSchema:e.configSchema??null,outputSchema:e.outputSchema??null,artifact:e.artifact??null,triggers:e.triggers??null,canvasLayout:e.canvasLayout??null,source:e.source??null,executionHints:e.executionHints??null,createdAt:t,updatedAt:t,...n}}function Ee(e,t){let r=ge(p),i=e.on(g.get,async e=>{let n=await t.select().from(p).where(j(p.id,e.payload.id)).limit(1);e.setResult({workflow:n[0]?L(n[0]):null})}),a=e.on(g.set,async i=>{let a=i.payload.workflow,o=Date.now(),s=Te(a,o),c=await t.insert(p).values(s).onConflictDoNothing({target:p.id}).returning();if(c.length>0){await e.emit(n.definition.created,L(c[0])),i.setResult({id:a.id});return}let[l]=await t.update(p).set({name:s.name,root:s.root,updatedAt:o,createdAt:M`COALESCE(${r.createdAt}, ${o})`,description:s.description===null?M`${r.description}`:s.description,inputSchema:s.inputSchema===null?M`${r.inputSchema}`:s.inputSchema,configSchema:s.configSchema===null?M`${r.configSchema}`:s.configSchema,outputSchema:s.outputSchema===null?M`${r.outputSchema}`:s.outputSchema,artifact:s.artifact===null?M`${r.artifact}`:s.artifact,triggers:s.triggers===null?M`${r.triggers}`:s.triggers,canvasLayout:s.canvasLayout===null?M`${r.canvasLayout}`:s.canvasLayout,source:s.source===null?M`${r.source}`:s.source,executionHints:s.executionHints===null?M`${r.executionHints}`:s.executionHints,...F(a.scope)}).where(j(p.id,a.id)).returning();l&&await e.emit(n.definition.updated,L(l)),i.setResult({id:a.id})}),o=e.on(g.delete,async r=>{let i=(await t.delete(p).where(j(p.id,r.payload.id)).returning()).length>0;i&&await e.emit(n.definition.deleted,{id:r.payload.id}),r.setResult({deleted:i})}),s=e.on(g.list,async e=>{let n=e.payload,r=n.scope?we(p,n.scope):[],i=r.length>0?await t.select().from(p).where(O(...r)):await t.select().from(p);e.setResult({workflows:i.map(L)})});return()=>{i(),a(),o(),s()}}function De(e){return{frameId:e.frameId,nodeId:e.nodeId,nodeType:e.nodeType,path:e.path,parentFrameId:e.parentFrameId??void 0,status:e.status,attempt:e.attempt,iteration:e.iteration??void 0,branchKey:e.branchKey??void 0,...e.outputPresent?{output:e.output}:{},error:e.error??void 0,startedAt:e.startedAt??void 0,completedAt:e.completedAt??void 0}}function Oe(e,t){return{frameId:t.frameId,executionId:e,nodeId:t.nodeId,nodeType:t.nodeType,path:t.path,parentFrameId:t.parentFrameId??null,status:t.status,attempt:t.attempt,iteration:t.iteration??null,branchKey:t.branchKey??null,output:t.output===void 0?null:t.output,outputPresent:t.output!==void 0,error:t.error??null,startedAt:t.startedAt??null,completedAt:t.completedAt??null}}function ke(e,t){let n=e.on(g.setFrame,async e=>{let{executionId:n,frame:r}=e.payload,i=Oe(n,r);await t.insert(u).values(i).onConflictDoUpdate({target:u.frameId,set:i}),e.setResult({frameId:r.frameId})}),r=e.on(g.getFrame,async e=>{let n=await t.select().from(u).where(j(u.frameId,e.payload.frameId)).limit(1);e.setResult({frame:n[0]?De(n[0]):null})}),i=e.on(g.listFrames,async e=>{let n=await t.select().from(u).where(j(u.executionId,e.payload.executionId)).orderBy(k(u.startedAt),k(u.frameId));e.setResult({frames:n.map(De)})});return()=>{n(),r(),i()}}function Ae(e){return`${e.executionId}:${e.nodeId}:${e.frameId}`}function R(e){return{executionId:e.executionId,nodeId:e.nodeId,frameId:e.frameId,schema:e.schema,prompt:e.prompt??void 0,status:e.status,autoAction:e.autoAction,timeoutMs:e.timeoutMs??null,...e.resumeDataPresent?{resumeData:e.resumeData}:{},createdAt:e.createdAt,resolvedAt:e.resolvedAt??void 0}}function z(e){return{id:Ae(e),executionId:e.executionId,nodeId:e.nodeId,frameId:e.frameId,schema:e.schema,prompt:e.prompt??null,status:e.status,autoAction:e.autoAction,timeoutMs:e.timeoutMs,resumeData:e.resumeData===void 0?null:e.resumeData,resumeDataPresent:e.resumeData!==void 0,createdAt:e.createdAt,resolvedAt:e.resolvedAt??null}}function je(e,t){let n=e.on(g.setGateInstance,async e=>{let n=e.payload.gate,r=z(n);await t.insert(y).values(r).onConflictDoUpdate({target:y.id,set:r}),e.setResult({id:r.id})}),i=e.on(g.resolveWaitingGateInstance,async e=>{let n=e.payload.gate,r=z(n),i=await t.update(y).set(r).where(O(j(y.id,r.id),j(y.status,`waiting`))).returning({id:y.id});e.setResult({accepted:i.length===1})}),a=e.on(g.getGateInstance,async e=>{let{executionId:n,nodeId:r,frameId:i}=e.payload,a=[j(y.executionId,n),j(y.nodeId,r)];i!==void 0&&a.push(j(y.frameId,i));let o=await t.select().from(y).where(O(...a)).limit(1);e.setResult({gate:o[0]?R(o[0]):null})}),o=e.on(g.listGateInstances,async e=>{let n=await t.select().from(y).where(j(y.executionId,e.payload.executionId));e.setResult({gates:n.map(R)})}),s=e.on(g.listPausedGateTimeouts,async e=>{let n=await t.select({gate:y}).from(y).innerJoin(r,j(y.executionId,r.id)).where(O(j(y.status,`waiting`),j(r.status,`paused`),_e(y.timeoutMs)));e.setResult({gates:n.map(e=>R(e.gate))})});return()=>{n(),i(),a(),o(),s()}}function Me(e){return{executionId:e.executionId,frameId:e.frameId,stepId:e.stepId,stepType:e.stepType,status:e.status,startedAt:e.startedAt??void 0,completedAt:e.completedAt??void 0,durationMs:e.durationMs??void 0,inputTokens:e.inputTokens??void 0,outputTokens:e.outputTokens??void 0,estimatedCost:e.estimatedCost??void 0,toolCallCount:e.toolCallCount??void 0,input:e.input??void 0,output:e.output??void 0}}function Ne(e){return{sourceExecutionId:e.sourceExecutionId,targetExecutionId:e.targetExecutionId,linkType:e.linkType,metadata:e.metadata??void 0}}function Pe(e,t){let n=e.on(g.setSpan,async e=>{let{span:n}=e.payload;await t.insert(a).values(n).onConflictDoUpdate({target:[a.executionId,a.frameId],set:n}),e.setResult({id:`${n.executionId}:${n.frameId}`})}),r=e.on(g.listSpans,async e=>{let n=await t.select().from(a).where(j(a.executionId,e.payload.executionId)).orderBy(k(a.startedAt),k(a.stepId),k(a.frameId));e.setResult({spans:n.map(Me)})}),i=e.on(g.setExecutionLink,async e=>{let{link:n}=e.payload;await t.insert(l).values(n).onConflictDoUpdate({target:[l.sourceExecutionId,l.targetExecutionId],set:n}),e.setResult({id:`${n.sourceExecutionId}:${n.targetExecutionId}`})}),o=e.on(g.listExecutionLinks,async e=>{let{sourceExecutionId:n,targetExecutionId:r}=e.payload;if(n===void 0&&r===void 0)throw Error(`Either sourceExecutionId or targetExecutionId is required to list execution links.`);let i=[...n===void 0?[]:[j(l.sourceExecutionId,n)],...r===void 0?[]:[j(l.targetExecutionId,r)]],a=t.select().from(l).where(O(...i));e.setResult({links:(await a).map(Ne)})});return()=>{n(),r(),i(),o()}}function Fe(e){switch(e.kind){case`path`:return{sourceKind:`path`,sourcePath:e.path,sourceFilename:null,sourceCode:null};case`source`:return{sourceKind:`source`,sourcePath:null,sourceFilename:e.filename,sourceCode:e.source};case`definition`:return{sourceKind:`definition`,sourcePath:null,sourceFilename:null,sourceCode:null}}}function Ie(e){switch(e.sourceKind){case`path`:if(!e.sourcePath)throw Error(`Invalid run context row: sourcePath required for kind=path`);return{kind:`path`,path:e.sourcePath};case`source`:if(!e.sourceFilename)throw Error(`Invalid run context row: sourceFilename required for kind=source`);return{kind:`source`,filename:e.sourceFilename,source:e.sourceCode??``};case`definition`:return{kind:`definition`,workflowId:e.workflowId};default:throw Error(`Unknown run context source kind: ${String(e.sourceKind)}`)}}function Le(e){return{executionId:e.executionId,workflowId:e.workflowId,coordinatorSessionId:e.coordinatorSessionId,source:Ie(e),definitionSnapshot:e.definitionSnapshot??void 0,workerManifest:e.workerManifest,inputs:e.inputs,config:e.config??{},triggerPayload:e.triggerPayload,...e.artifactRef===null?{}:{artifactRef:e.artifactRef},scope:I(e),...e.executionHints===null?{}:{executionHints:e.executionHints},...e.dispatchMetadata===null?{}:{dispatchMetadata:e.dispatchMetadata},cancelSubject:e.cancelSubject,context:e.context,env:e.env,createdAt:e.createdAt,suspensionStrategy:e.suspensionStrategy??`wait-in-process`}}function Re(e){let t=Fe(e.source),n=F(e.scope);return{executionId:e.executionId,workflowId:e.workflowId,coordinatorSessionId:e.coordinatorSessionId,...t,definitionSnapshot:e.definitionSnapshot??null,workerManifest:e.workerManifest,inputs:e.inputs,config:e.config??{},triggerPayload:e.triggerPayload,artifactRef:e.artifactRef??null,executionHints:e.executionHints??null,dispatchMetadata:e.dispatchMetadata??null,...n,cancelSubject:e.cancelSubject,context:e.context,env:e.env,createdAt:e.createdAt,suspensionStrategy:e.suspensionStrategy}}async function ze(e,t){let n=Re(t);await e.insert(S).values(n).onConflictDoUpdate({target:S.executionId,set:n})}function Be(e,t){let n=e.on(g.setRunContext,async e=>{let n=e.payload.runContext;await ze(t,n),e.setResult({executionId:n.executionId})}),r=e.on(g.getRunContext,async e=>{let{executionId:n}=e.payload,r=await t.select().from(S).where(j(S.executionId,n)),i=r[0]?Le(r[0]):null;e.setResult({runContext:i})});return()=>{n(),r()}}function Ve(e){return{executionId:e.executionId,workflowId:e.workflowId,workflowName:e.workflowName??void 0,status:e.status,startedAt:e.startedAt,completedAt:e.completedAt??void 0,durationMs:e.durationMs??void 0,totalInputTokens:e.totalInputTokens??void 0,totalOutputTokens:e.totalOutputTokens??void 0,totalEstimatedCost:e.totalEstimatedCost??void 0,error:e.error??void 0,failedNodeId:e.failedNodeId??void 0}}async function B(e,t){await e.insert(b).values(t).onConflictDoUpdate({target:b.executionId,set:t})}async function V(e,t){let n=await e.select().from(b).where(j(b.executionId,t)).limit(1);return n[0]?Ve(n[0]):null}async function He(e,t={}){let{workflowId:n,status:r,limit:i=50,offset:a=0}=t,o=[...n===void 0?[]:[j(b.workflowId,n)],...r===void 0?[]:[j(b.status,r)]],s=o.length>0?O(...o):void 0,[c,l]=await Promise.all([e.select().from(b).where(s).orderBy(A(b.startedAt)).limit(i).offset(a),e.select({count:he()}).from(b).where(s)]);return{items:c.map(Ve),total:l[0]?.count??0}}async function H(e,n){await e.insert(t).values(n).onConflictDoUpdate({target:t.frameId,set:n})}async function U(e,n){return(await e.select().from(t).where(j(t.frameId,n)).limit(1))[0]??null}async function Ue(e,t){await e.insert(x).values(t).onConflictDoUpdate({target:x.id,set:t})}function We(e,t,n,r,i){return`${e}:${t}:${n}:${r}:${i}`}async function W(t,n){await t.insert(e).values(n).onConflictDoUpdate({target:e.id,set:n})}async function Ge(t,n){return(await t.select().from(e).where(j(e.id,n)).limit(1))[0]??null}function Ke(e,t,n){return`${e}:${t}:${n}`}async function qe(e,n){let[r]=await e.select({totalInputTokens:N(t.inputTokens),totalOutputTokens:N(t.outputTokens),totalEstimatedCost:N(t.estimatedCost)}).from(t).where(j(t.executionId,n));return{totalInputTokens:r?.totalInputTokens===null?0:Number(r?.totalInputTokens),totalOutputTokens:r?.totalOutputTokens===null?0:Number(r?.totalOutputTokens),totalEstimatedCost:r?.totalEstimatedCost===null?0:Number(r?.totalEstimatedCost)}}async function Je(e,t,n,r,i){let a=await U(t,n);if(a===null||i===void 0)return null;let o=await e.requestOptional(ne.resolve,{ref:{refClass:`artifact`,kind:r.kind,id:r.id,revision:i}}).catch(()=>void 0);if(o===void 0||!o.handled||o.data.artifact===null)return null;let{kind:s,schemaVersion:c,scope:l}=o.data.artifact;return{nodeId:a.nodeId,artifact:{kind:s,schemaVersion:c,scope:l}}}const Ye={user:`rejected`,timeout:`timed-out`,cancelled:`cancelled`};async function Xe(e,t,n){await B(t,{executionId:n.executionId,workflowId:n.workflowId,workflowName:null,status:`running`,startedAt:n.startedAt??Date.now(),completedAt:null,durationMs:null,totalInputTokens:null,totalOutputTokens:null,totalEstimatedCost:null,error:null,failedNodeId:null}),await K(e,n.executionId)}async function Ze(e,t,n){let r=n.completedAt??Date.now(),i=await V(t,n.executionId);await B(t,{executionId:n.executionId,workflowId:i?.workflowId??n.executionId,workflowName:i?.workflowName??null,status:`completed`,startedAt:i?.startedAt??r-n.totalDuration,completedAt:r,durationMs:n.totalDuration,totalInputTokens:i?.totalInputTokens??null,totalOutputTokens:i?.totalOutputTokens??null,totalEstimatedCost:i?.totalEstimatedCost??null,error:null,failedNodeId:null}),await K(e,n.executionId)}async function Qe(e,t,n,r,i,a,o){let s=await V(t,n),c=s?.startedAt??o;await B(t,{executionId:n,workflowId:s?.workflowId??n,workflowName:s?.workflowName??null,status:r,startedAt:c,completedAt:o,durationMs:o-c,totalInputTokens:s?.totalInputTokens??null,totalOutputTokens:s?.totalOutputTokens??null,totalEstimatedCost:s?.totalEstimatedCost??null,error:i,failedNodeId:a}),await K(e,n)}function $e(e,t){return[e.on(n.execution.started,async n=>{let{executionId:r}=n.payload;await G(`execution.started[${r}]`,()=>Xe(e,t,n.payload))}),e.on(n.execution.completed,async n=>{let{executionId:r}=n.payload;await G(`execution.completed[${r}]`,()=>Ze(e,t,n.payload))}),e.on(n.execution.failed,async n=>{let{executionId:r,error:i,failedStepId:a}=n.payload,o=n.payload.completedAt??Date.now();await G(`execution.failed[${r}]`,()=>Qe(e,t,r,`failed`,i,a??null,o))}),e.on(n.execution.cancelled,async n=>{let{executionId:r}=n.payload,i=n.payload.completedAt??Date.now();await G(`execution.cancelled[${r}]`,()=>Qe(e,t,r,`cancelled`,null,null,i))})]}async function et(e,t,n){let r=await qe(t,n);if(r.totalInputTokens>0||r.totalOutputTokens>0||r.totalEstimatedCost>0){let e=await V(t,n);e&&await B(t,{executionId:n,workflowId:e.workflowId,workflowName:e.workflowName??null,status:e.status,startedAt:e.startedAt,completedAt:e.completedAt??null,durationMs:e.durationMs??null,totalInputTokens:r.totalInputTokens,totalOutputTokens:r.totalOutputTokens,totalEstimatedCost:r.totalEstimatedCost,error:e.error??null,failedNodeId:e.failedNodeId??null})}}function tt(e,t,n){return e===null?{nodeId:t,nodeType:`station`,path:[],attempt:0,iteration:null,branchKey:null,startedAt:n,inputTokens:null,outputTokens:null,estimatedCost:null}:{nodeId:e.nodeId,nodeType:e.nodeType,path:e.path,attempt:e.attempt,iteration:e.iteration,branchKey:e.branchKey,startedAt:e.startedAt,inputTokens:e.inputTokens,outputTokens:e.outputTokens,estimatedCost:e.estimatedCost}}async function nt(e,t,n,r,i,a,o){let s=o??Date.now();await H(t,{frameId:r,executionId:n,...tt(await U(t,r),i,a===void 0?null:s-a),status:`completed`,completedAt:s,durationMs:a??null,error:null}),await et(e,t,n),await K(e,n)}async function rt(e,t,n,r,i,a,o,s){let c=s??Date.now();await H(t,{frameId:r,executionId:n,...tt(await U(t,r),i,o===void 0?null:c-o),status:`failed`,completedAt:c,durationMs:o??null,error:a}),await K(e,n)}function it(e,t){return[e.on(n.frame.started,async n=>{let{executionId:r,frameId:i,nodeId:a,nodeType:o,path:s,startedAt:c}=n.payload;await G(`frame.started[${i}]`,async()=>{await H(t,{frameId:i,executionId:r,nodeId:a,nodeType:o,path:s,status:`running`,attempt:0,iteration:null,branchKey:null,startedAt:c??Date.now(),completedAt:null,durationMs:null,inputTokens:null,outputTokens:null,estimatedCost:null,error:null}),await K(e,r)})}),e.on(n.frame.completed,async n=>{let{executionId:r,frameId:i,nodeId:a,duration:o,completedAt:s}=n.payload;await G(`frame.completed[${i}]`,()=>nt(e,t,r,i,a,o,s))}),e.on(n.frame.failed,async n=>{let{executionId:r,frameId:i,nodeId:a,error:o,duration:s,completedAt:c}=n.payload;await G(`frame.failed[${i}]`,()=>rt(e,t,r,i,a,o,s,c))})]}function at(e,t){return[e.on(n.gate.suspended,async n=>{let{executionId:r,frameId:i,nodeId:a,prompt:o}=n.payload;await G(`gate.suspended[${i}]`,async()=>{await W(t,{id:Ke(r,a,i),executionId:r,nodeId:a,frameId:i,status:`waiting`,prompt:o??null,openedAt:Date.now(),resolvedAt:null,resumeData:null}),await K(e,r)})}),e.on(n.gate.resumed,async n=>{let{executionId:r,frameId:i,nodeId:a,resumeData:o}=n.payload;await G(`gate.resumed[${i}]`,async()=>{let n=Ke(r,a,i),s=await Ge(t,n),c=Date.now();await W(t,{id:n,executionId:r,nodeId:a,frameId:i,status:`resumed`,prompt:s?.prompt??null,openedAt:s?.openedAt??c,resolvedAt:c,resumeData:o}),await K(e,r)})}),e.on(n.gate.resolved,async n=>ot(n.payload,e,t)),e.on(n.artifact.updated,async n=>{let{executionId:r,frameId:i,artifactRef:a,revision:o}=n.payload;await G(`artifact.updated[${r}:${i}]`,async()=>{let n=await Je(e,t,i,a,o);if(n===null)return;let s=Date.now();await Ue(t,{id:We(r,i,a.kind,a.id,s),executionId:r,frameId:i,nodeId:n.nodeId,artifact:n.artifact,revision:o??null,writtenAt:s}),await K(e,r)})})]}async function ot(e,t,n){let{executionId:r,frameId:i,stepId:a,source:o}=e;o===`user`&&e.action===`approve`||await G(`gate.resolved[${i}]`,async()=>{let s=Ke(r,a,i),c=await Ge(n,s),l=Date.now();await W(n,{id:s,executionId:r,nodeId:a,frameId:i,status:o!==`cancelled`&&e.action===`approve`?`resumed`:Ye[o],prompt:c?.prompt??null,openedAt:c?.openedAt??l,resolvedAt:l,resumeData:c?.resumeData??null}),await K(t,r)})}function st(e,t){let r=[...$e(e,t),...it(e,t),...at(e,t),e.on(n.worklog.get,async e=>{let{executionId:n}=e.payload,r=await V(t,n);e.setResult({summary:r})}),e.on(n.worklog.list,async e=>{let{workflowId:n,status:r,limit:i,offset:a}=e.payload,o=await He(t,{workflowId:n,status:r,limit:i,offset:a});e.setResult(o)})];return()=>{for(let e of r)e()}}async function G(e,t){try{await t()}catch(t){console.error(`[WorklogProjection] Write failed (${e}):`,t)}}async function K(e,t){try{await e.emit(n.worklog.changed,{executionId:t})}catch(e){console.error(`[WorklogProjection] worklog.changed emit failed for ${t}:`,e)}}function ct(e){return{id:e.id,workflowId:e.workflowId,coordinatorSessionId:e.coordinatorSessionId??void 0,status:e.status,inputs:e.inputs,config:{},error:e.error??void 0,reason:e.reason??void 0,startedAt:e.startedAt,completedAt:e.completedAt??void 0,triggerPayload:e.triggerPayload??void 0,scope:I(e)}}function lt(e){let t=F(e.scope);return{id:e.id,workflowId:e.workflowId,coordinatorSessionId:e.coordinatorSessionId??null,status:e.status,inputs:e.inputs,error:e.error??null,reason:e.reason??null,startedAt:e.startedAt,completedAt:e.completedAt??null,triggerPayload:e.triggerPayload??null,...t}}function ut(e,t,n,i){let a=[...e?[j(r.workflowId,e)]:[],...n?[j(r.status,n)]:[]];if(t&&a.push(...we(r,t)),i){let e=ye(ve(r.startedAt,i.startedAt),O(j(r.startedAt,i.startedAt),ve(r.id,i.id)));e&&a.push(e)}return a}async function dt(e,t,n){if(n.executionId!==t.id)throw Error(`setExecutionStart requires execution.id to match runContext.executionId`);let i=lt(t);await P(e,async e=>{await e.insert(r).values(i).onConflictDoUpdate({target:r.id,set:i}),await ze(e,n)})}async function ft(e,t,n){if(n.executionId!==t.id)throw Error(`restorePausedGateResumeState requires execution.id to match gate.executionId`);if(t.status!==`paused`||n.status!==`waiting`)throw Error(`restorePausedGateResumeState requires a paused execution and waiting gate`);let i=lt(t),a=z(n);await P(e,async e=>{await e.insert(r).values(i).onConflictDoUpdate({target:r.id,set:i}),await e.insert(y).values(a).onConflictDoUpdate({target:y.id,set:a})})}async function pt(e,t,n,i){return P(e,async e=>{if((await e.select().from(r).where(j(r.id,t)).limit(1))[0]?.status!==`paused`)return{cancelled:!1,gates:[]};let a=(await e.select().from(y).where(O(j(y.executionId,t),j(y.status,`waiting`)))).map(e=>({...R(e),status:`cancelled`,resolvedAt:n}));await e.update(r).set({status:`cancelled`,completedAt:n,reason:i??null}).where(j(r.id,t));for(let t of a){let n=z(t);await e.update(y).set(n).where(j(y.id,n.id))}return{cancelled:!0,gates:a}})}async function mt(e,t,n,i,a,o){return P(e,async e=>{if((await e.select({id:r.id}).from(r).where(j(r.id,t)).limit(1))[0]===void 0)return!1;let s={};return n!==void 0&&(s.status=n),i!==void 0&&(s.error=i),a!==void 0&&(s.reason=a),o!==void 0&&(s.completedAt=o),Object.keys(s).length>0&&await e.update(r).set(s).where(j(r.id,t)),!0})}function ht(e,t){let n=e.on(g.getExecution,async e=>{let{executionId:n}=e.payload,i=await t.select().from(r).where(j(r.id,n));e.setResult({execution:i[0]?ct(i[0]):null})}),i=e.on(g.setExecution,async e=>{let n=e.payload.execution,i=lt(n);await t.insert(r).values(i).onConflictDoUpdate({target:r.id,set:i}),e.setResult({id:n.id})}),a=e.on(g.setExecutionStart,async e=>{let n=e.payload.execution,r=e.payload.runContext;await dt(t,n,r),e.setResult({id:n.id,executionId:n.id})}),o=e.on(g.restorePausedGateResumeState,async e=>{let n=e.payload.execution,r=e.payload.gate;await ft(t,n,r),e.setResult({executionId:n.id,gateId:r.nodeId})}),s=e.on(g.updateExecution,async e=>{let{executionId:n,status:r,error:i,reason:a,completedAt:o}=e.payload,s=await mt(t,n,r,i,a,o);e.setResult({success:s})}),c=e.on(g.cancelPausedExecution,async e=>{let{executionId:n,completedAt:r,reason:i}=e.payload;e.setResult(await pt(t,n,r,i))}),l=e.on(g.listExecutions,async e=>{let{workflowId:n,scope:i,status:a,limit:o,cursor:s}=e.payload;if(n===void 0&&i===void 0)throw Error(`Either workflowId or scope is required to list executions.`);let c=ut(n,i,a,s),l=o??re;if(!Number.isInteger(l)||l<ae||l>ie)throw Error(`Execution list limit must be an integer between ${ae} and ${ie}.`);let u=await t.select().from(r).where(O(...c)).orderBy(A(r.startedAt),A(r.id)).limit(l);e.setResult({executions:u.map(ct)})});return()=>{n(),i(),a(),o(),s(),c(),l()}}function q(e,t,n){let r=Ee(e,t),i=ht(e,t),a=ke(e,t),o=je(e,t),s=Pe(e,t),c=Be(e,t),l=st(e,t);return()=>{r(),i(),a(),o(),s(),c(),l()}}function gt(e,t){if(e.origin.local)return!0;let n=e.transport?.peer;return n?.authenticated!==!0||n.id!==t?!1:n.kind===`workflow-execution`?!0:n.kind===`e2e`&&n.encrypted===!0}function _t(e){return[e.on(n.getDefinition,async t=>{let n=await e.request(g.get,{id:t.payload.id});t.setResult(n)}),e.on(n.setDefinition,async t=>{let n=await e.request(g.set,{workflow:t.payload.workflow});t.setResult(n)}),e.on(n.deleteDefinition,async t=>{let n=await e.request(g.delete,{id:t.payload.id});t.setResult(n)}),e.on(n.listDefinitions,async t=>{let n=await e.request(g.list,t.payload);t.setResult(n)}),e.on(n.getExecution,async t=>{let n=await e.request(g.getExecution,{executionId:t.payload.executionId});t.setResult(n)}),e.on(n.listExecutions,async t=>{let n=await e.request(g.listExecutions,t.payload);t.setResult(n)}),e.on(n.listSpans,async t=>{let n=await e.request(g.listSpans,{executionId:t.payload.executionId});t.setResult(n)}),e.on(n.listGateInstances,async t=>{let n=await e.request(g.listGateInstances,{executionId:t.payload.executionId});t.setResult(n)}),e.on(n.getRunContext,async t=>{let{executionId:n}=t.payload;if(!gt(t,n))throw Error(`Unauthorized: caller is not permitted to read run context for execution: ${n}`);let{runContext:r}=await e.request(g.getRunContext,{executionId:n});if(!r)throw Error(`Run context not found for execution: ${n}`);t.setResult(r)})]}function vt(e,t){return[e.on(n.listTriggerTypes,e=>{let n=t()?.getAll()??[];e.setResult({triggerTypes:n})})]}const yt=[`darwin`,`linux`,`win32`];function bt(e){return yt.find(t=>t===e)??`linux`}function xt(e,t){return t}function St(e,t){return{...t}}function Ct(e){return e.reason instanceof Error?e.reason.message:typeof e.reason==`string`&&e.reason.length>0?e.reason:E}async function wt(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(g.getExecution,{executionId:t});a?.status===`running`&&(r.execution=a,await o(i,t,Ct(n))||console.error(`[WorkflowExecutor] Failed to persist runner cancellation for ${t}: execution not active`))}async function Tt(e,t){if(t.pausedAtGateId===void 0||t.pausedAtFrameId===void 0)throw Error(`Paused runner result for '${t.executionId}' is missing gate identity`);let{bus:r}=e.buildFinalizerDeps(),{execution:i}=await r.request(g.getExecution,{executionId:t.executionId});if(i?.status!==`running`){let n=e.activeExecutions.get(t.executionId);n!==void 0&&i?.status===`paused`&&(n.execution.status=`paused`,e.activeExecutions.delete(t.executionId));return}let a={...i,status:`paused`};await r.request(g.setExecution,{execution:a});let o=e.activeExecutions.get(t.executionId);o!==void 0&&(o.execution=a),await r.emit(n.execution.paused,{executionId:t.executionId,workflowId:t.workflowId,pausedAtGateId:t.pausedAtGateId,pausedAtFrameId:t.pausedAtFrameId}),e.activeExecutions.delete(t.executionId)}async function Et(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(g.getExecution,{executionId:t.executionId});if(i?.status===`running`){if(n.execution=i,t.status===`completed`){await v(r,n.execution,t.executionId,n.execution.startedAt);return}if(t.status===`cancelled`){await o(r,t.executionId,t.reason??E);return}if(t.status===`failed`){await f(r,n.execution,t.executionId,t.error);return}}}function Dt(e,t){let{executionId:n,workflowId:r,filePath:i,coordinatorSessionId:a,sanitizedTriggerPayload:o,scope:s,workspaceRoot:c}=t,{workflowRunner:l,workflowAbortControllers:u,executionTasks:d,activeExecutions:p,config:m}=e,h=new AbortController;u.set(n,h);let g={source:{kind:`path`,path:i},executionId:n,workflowId:r,triggerPayload:o,inputs:{},config:{},scope:s,busUrl:m.busUrl,busAuth:m.busAuth,context:e.resolveWorkflowContext(c),env:m.platformDefaults.env??{},coordinatorSessionId:a,cancelSubject:`workflow.${n}.cancel`,suspensionStrategy:`wait-in-process`};return Promise.resolve().then(()=>l.run(g,h.signal)).then(async t=>{if(t.status===`paused`){await Tt(e,t);return}await Et(e,t)}).catch(async t=>{if(h.signal.aborted){await wt(e,n,h.signal).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist file runner cancellation for ${n}:`,e)});return}let r=p.get(n);if(r){let i=t instanceof Error?t.message:String(t);await f(e.buildFinalizerDeps(),r.execution,n,i).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist file runner boot failure for ${n}:`,e)})}}).finally(()=>{u.delete(n),d.delete(n),p.delete(n)})}function Ot(e,t){let{config:n}=e;return{source:t.source,...t.source.kind===`definition`?{definition:t.workflow}:{},executionId:t.executionId,workflowId:t.workflowId,triggerPayload:t.sanitizedTriggerPayload,inputs:t.boundInputs,config:t.boundConfig,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},...t.executionHints===void 0?{}:{executionHints:t.executionHints},scope:t.scope,busUrl:n.busUrl,busAuth:n.busAuth,context:e.resolveWorkflowContext(t.workspaceRoot),env:n.platformDefaults.env??{},coordinatorSessionId:t.coordinatorSessionId,cancelSubject:`workflow.${t.executionId}.cancel`,suspensionStrategy:t.suspensionStrategy??`wait-in-process`}}function kt(e,t){let{executionId:n}=t,{workflowRunner:r,workflowAbortControllers:i,executionTasks:a,activeExecutions:o}=e,s=new AbortController;i.set(n,s);let c=Ot(e,t),l=t.dispatchMetadata===void 0?void 0:{dispatchMetadata:t.dispatchMetadata};return Promise.resolve().then(()=>r.run(c,s.signal,void 0,l)).then(async t=>{if(t.status===`paused`){await Tt(e,t);return}await Et(e,t)}).catch(async t=>{if(s.signal.aborted){await wt(e,n,s.signal).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist runner cancellation for ${n}:`,e)});return}let r=o.get(n);if(r){let i=t instanceof Error?t.message:String(t);await f(e.buildFinalizerDeps(),r.execution,n,i).catch(e=>{console.error(`[WorkflowExecutor] Failed to persist runner boot failure for ${n}:`,e)})}}).finally(()=>{i.delete(n),a.delete(n),o.delete(n)})}function At(e,t,n={}){let r=jt(e,n);return{executionId:e.executionId,workflowId:e.workflowId,workflow:t,source:e.source,coordinatorSessionId:e.coordinatorSessionId,sanitizedTriggerPayload:e.triggerPayload,boundInputs:e.inputs,boundConfig:e.config??{},...e.artifactRef===void 0?{}:{artifactRef:e.artifactRef},...e.executionHints===void 0?{}:{executionHints:e.executionHints},scope:e.scope,workspaceRoot:e.context.repoPath,suspensionStrategy:e.suspensionStrategy,...r===void 0?{}:{dispatchMetadata:r}}}function jt(e,t){return t.resume===!0?{...e.dispatchMetadata,resume:!0}:e.dispatchMetadata}const Mt=/(?:^|[_-])(authorization|token|cookie|password|set[_-]?cookie|api[_-]?key|secret|credential|private[_-]?key|api[_-]?secret)(?:$|[_-])/i;function Nt(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=Pt(e,i,0,t);r!==void 0&&(n[e]=r)}return Object.keys(n).length>0?n:void 0}function Pt(e,t,n,r){if(!(r.remainingBytes<=0||n>6)&&(r.remainingBytes-=e.length,!(r.remainingBytes<=0))){if(Mt.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=Pt(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=Pt(t,a,n+1,r);i!==void 0&&(e[t]=i)}return e}}}function Ft(e,t,n){let r=t?.requirements?.capabilities??[];if(r.length!==0)return{run:(t,i)=>e.request(ce.dispatch,{config:t,requirements:{customCapabilities:r},...n===void 0?{}:{metadata:n}},{signal:i})}}function It(e,t){let n=Ft(e.bus,t.executionHints,t.dispatchMetadata);return n===void 0?e.workflowRunner===void 0?e.runExecution(t.executionId).finally(()=>{e.executionTasks.delete(t.executionId)}):kt(e.buildRunnerTaskDeps(e.workflowRunner),t):kt(e.buildRunnerTaskDeps(n),t)}async function Lt(e,t){try{await e.emit(n.execution.started,t)}catch(e){console.error(`[WorkflowExecutor] execution.started listener failed:`,e)}}async function Rt(e,t){await e.request(T.close,{sessionId:t}).catch(e=>{console.error(`[WorkflowExecutor] Failed to close coordinator session "${t}" after launch failure:`,e)})}function zt(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,scope:s};return e.set(t,{execution:l,workflow:n,runContext:c,runtimeHandlers:new Map}),l}async function Bt(e,t,n){await e.request(g.setExecutionStart,{execution:t,runContext:n})}function Vt(e,t){let n=e?.source;if(n===void 0)return;let r=ue.parse(n);return r.kind===`path`&&!C(r.path)?{...r,path:w(t,r.path)}:r}function Ht(e,t,n){return Vt(t,n)??{kind:`definition`,workflowId:e}}async function Ut(e,t,n,r){return e.set(t,n),await r,t}async function Wt(e,t){let{workflow:n}=await e.request(g.get,{id:t});if(!n)throw Error(`Workflow not found: ${t}`);return n}function Gt(e,t){if(e===void 0&&t===void 0)return;let n=[...new Set([...e?.capabilities??[],...t?.capabilities??[]])];return{...e,...t,...n.length>0&&{capabilities:n}}}function Kt(e,t){if(e===void 0&&t===void 0)return;let n=Gt(e?.requirements,t?.requirements),r=e?.providers!==void 0||t?.providers!==void 0?{...e?.providers,...t?.providers}:void 0;return{...e,...t,...n!==void 0&&{requirements:n},...r!==void 0&&{providers:r}}}function qt(e){return{...e,input:e.input===void 0?{}:e.input,config:e.config??{}}}async function Jt(e,t,n,r){let{sessionId:i}=await e.request(T.create,{parentSessionId:t,branchKind:`coordinator`,title:`Workflow: ${n}`,targetWorkingDirectory:r});return i}async function Yt(e,t,n={}){let{bus:r,activeExecutions:i,executionTasks:a}=e,{input:o,config:s,parentSessionId:c,triggerPayload:l,artifactRef:u,executionHints:d,scopeOverride:f}=qt(n),p=await Wt(r,t),m=h(`wfx`),g=Nt(l),_=xt(p,o),v=St(p,s),y=f??p.scope,b=Kt(p.executionHints,d),x=await e.resolveExecutionWorkspaceRoot(c),S=Ht(t,b,x),C=await Jt(r,c,p.name,x),w=!1;try{let n=e.buildRunContext({executionId:m,workflowId:t,coordinatorSessionId:C,source:S,...S.kind===`definition`?{definitionSnapshot:p}:{},inputs:_,config:v,scope:y,triggerPayload:g??{},...u===void 0?{}:{artifactRef:u},...b===void 0?{}:{executionHints:b},workspaceRoot:x}),o=zt(i,m,p,C,_,v,g,y,n);await Bt(r,o,n);let s=o.startedAt,c=Lt(r,{executionId:m,workflowId:t,coordinatorSessionId:C,startedAt:s}),l=It(e,{executionId:m,workflowId:t,workflow:p,source:S,coordinatorSessionId:C,sanitizedTriggerPayload:g??{},boundInputs:_,boundConfig:v,scope:y,...u===void 0?{}:{artifactRef:u},...b===void 0?{}:{executionHints:b},workspaceRoot:x,suspensionStrategy:n.suspensionStrategy});return w=!0,Ut(a,m,l,c)}catch(e){throw w||(i.delete(m),a.delete(m),await Rt(r,C)),e}}function Xt(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})}async function Zt(e,t,n={}){let{bus:r,config:i,activeExecutions:a,executionTasks:o}=e,{triggerPayload:s,scopeOverride:c}=n,l=h(`wfx`),u=Nt(s),d=c??{type:`global`},f=i.platformDefaults.cwd,{sessionId:p}=await r.request(T.create,{branchKind:`coordinator`,title:`Workflow: ${t}`,targetWorkingDirectory:f}),m=l,g={id:l,workflowId:m,coordinatorSessionId:p,status:`running`,inputs:{},config:{},startedAt:Date.now(),triggerPayload:u,scope:d},_=!1;try{let{workflowRunner:n}=e;if(n===void 0)throw Error(`[WorkflowExecutor] startFileExecution called without a workflow runner`);let i=e.buildRunContext({executionId:l,workflowId:m,coordinatorSessionId:p,source:{kind:`path`,path:t},inputs:{},config:{},scope:d,triggerPayload:u??{},workspaceRoot:f});await Bt(r,g,i),Xt(a,g,t,d,i);let s=Lt(r,{executionId:l,workflowId:m,coordinatorSessionId:p,startedAt:g.startedAt}),c=Dt(e.buildRunnerTaskDeps(n),{executionId:l,workflowId:m,filePath:t,coordinatorSessionId:p,sanitizedTriggerPayload:u??{},scope:d,workspaceRoot:f});return _=!0,Ut(o,l,c,s)}catch(e){throw _||(a.delete(l),o.delete(l),await Rt(r,p)),e}}var Qt=class{bus;resumePausedExecution;handles=new Map;constructor(e,t){this.bus=e,this.resumePausedExecution=t}dispose(){for(let e of this.handles.values())clearTimeout(e);this.handles.clear()}clear(e,t,n){let r=this.makeKey(e,t,n),i=this.handles.get(r);i!==void 0&&(clearTimeout(i),this.handles.delete(r))}schedule(e){e.timeoutMs!==null&&(this.clear(e.executionId,e.nodeId,e.frameId),this.scheduleNextWakeup({...e,timeoutMs:e.timeoutMs}))}scheduleNextWakeup(e){let t=this.makeKey(e.executionId,e.nodeId,e.frameId),n=Math.max(0,e.openedAt+e.timeoutMs-Date.now()),r=setTimeout(()=>{if(this.handles.delete(t),Date.now()<e.openedAt+e.timeoutMs){this.scheduleNextWakeup(e);return}this.handleExpiredWakeup(e)},Math.min(n,2147483647));this.handles.set(t,r)}scheduleNextWakeupAfterDelay(e,t){let n=this.makeKey(e.executionId,e.nodeId,e.frameId),r=setTimeout(()=>{this.handles.delete(n),this.handleExpiredWakeup(e)},t);this.handles.set(n,r)}async handleExpiredWakeup(e){try{await this.resumeTimedOutPausedGate(e)===`retry`&&this.scheduleNextWakeupAfterDelay(e,25)}catch(t){this.scheduleFailedWakeupRetry(e,t)}}scheduleFailedWakeupRetry(e,t){let n=(e.failedWakeupAttempts??0)+1;if(n>4){console.error(`[WorkflowExecutor] Giving up on timed-out gate '${e.nodeId}' after 4 failed wakeup retries:`,t);return}let r=Math.min(250*2**(n-1),2e3);console.error(`[WorkflowExecutor] Failed to resume timed-out gate '${e.nodeId}', retrying in ${r} ms:`,t),this.scheduleNextWakeupAfterDelay({...e,failedWakeupAttempts:n},r)}makeKey(e,t,n){return`${e}:${t}:${n}`}async resumeTimedOutPausedGate(e){this.clear(e.executionId,e.nodeId,e.frameId);let{gate:t}=await this.bus.request(g.getGateInstance,{executionId:e.executionId,nodeId:e.nodeId,frameId:e.frameId});if(t===null||t.status!==`waiting`)return`settled`;let{execution:n}=await this.bus.request(g.getExecution,{executionId:e.executionId});return n?.status===`running`?`retry`:n?.status===`paused`?(await this.resumePausedExecution(e.executionId),`resumed`):`settled`}};function $t(e){if(e!==void 0)return se.parse(e)}function en(e){if(e!==void 0)return oe.parse(e)}function tn(e,t){return{repoPath:t,makaioHome:e.makaioHome??process.env.MAKAIO_HOME??`${Se.homedir()}/.makaio`,os:bt(process.platform),arch:process.arch}}function nn(e,t){return{executionId:e.executionId,workflowId:e.workflowId,source:e.source,...e.definitionSnapshot===void 0?{}:{definitionSnapshot:e.definitionSnapshot},workerManifest:{packages:[]},inputs:e.inputs,config:e.config,scope:e.scope,triggerPayload:e.triggerPayload,...e.artifactRef===void 0?{}:{artifactRef:e.artifactRef},...e.executionHints===void 0?{}:{executionHints:e.executionHints},coordinatorSessionId:e.coordinatorSessionId,cancelSubject:`workflow.${e.executionId}.cancel`,context:tn(t,e.workspaceRoot),env:t.platformDefaults.env??{},createdAt:Date.now(),suspensionStrategy:e.suspensionStrategy??`wait-in-process`}}function rn(e){return e?.status===`paused`}function an(e){return e?.status===`waiting`}async function on(e,t,n,r,i,a,o){t.delete(i.id),n.delete(i.id),r.delete(i.id);try{await e.request(g.restorePausedGateResumeState,{execution:i,gate:a})}catch(e){console.error(`[WorkflowExecutor] Failed to restore paused gate '${o}' after resume launch failure:`,e)}}async function sn(e,t){if(t.suspensionStrategy===`wait-in-process`)return;let{frames:n}=await e.request(g.listFrames,{executionId:t.executionId});if(n.length===0)throw Error(`[WorkflowExecutor] Missing resume frames for paused execution: ${t.executionId}`)}function cn(e){return{executionId:e.executionId,nodeId:e.nodeId,frameId:e.frameId,timeoutMs:e.timeoutMs,openedAt:e.createdAt}}async function ln(e,t){if(t.frameId!==void 0){let{gate:n}=await e.request(g.getGateInstance,t);return an(n)?n:null}let{gates:n}=await e.request(g.listGateInstances,{executionId:t.executionId}),r=n.filter(e=>e.nodeId===t.nodeId&&e.status===`waiting`);return r.length===1?r[0]:null}var un=class extends me{static storage={drizzle:q};config;activeExecutions=new Map;executionTasks=new Map;shellAbortControllers=new Map;activeRunnerSteps=new Map;gateTimeoutScheduler;resumeDispatches=new Set;workflowAbortControllers=new Map;workflowRunner;triggerTypeRegistry;constructor(e,t,n){super(e),this.config={...s,...t},this.workflowRunner=n,this.gateTimeoutScheduler=new Qt(e,e=>this.resumePausedExecution(e))}setTriggerTypeRegistry(e){this.triggerTypeRegistry=e}getTriggerTypeRegistry(){return this.triggerTypeRegistry}async onInit(){this.registerExecutionHandlers();for(let e of _t(this.bus))this.addCleanup(e);for(let e of vt(this.bus,()=>this.triggerTypeRegistry))this.addCleanup(e);await this.rehydratePausedGateTimeouts()}async onDestroy(){let e=this.buildFinalizerDeps();await Promise.allSettled([...this.activeExecutions.keys()].map(async t=>{await o(e,t,`Workflow engine shutdown`)&&(this.workflowAbortControllers.get(t)?.abort(),this.workflowAbortControllers.delete(t))}));for(let e of this.workflowAbortControllers.values())e.abort();this.workflowAbortControllers.clear(),await Promise.allSettled(this.executionTasks.values());for(let e of this.shellAbortControllers.values())e.abort();this.shellAbortControllers.clear();for(let e of this.activeRunnerSteps.values())e.hardKillTimer&&clearTimeout(e.hardKillTimer);this.activeRunnerSteps.clear(),this.gateTimeoutScheduler.dispose(),await this.workflowRunner?.dispose?.(),this.activeExecutions.clear()}buildFinalizerDeps(){return{bus:this.bus,activeExecutions:this.activeExecutions,shellAbortControllers:this.shellAbortControllers,activeRunnerSteps:this.activeRunnerSteps,cancelTimeoutMs:this.config.cancelTimeoutMs}}buildRunnerTaskDeps(e){return{workflowRunner:e,workflowAbortControllers:this.workflowAbortControllers,executionTasks:this.executionTasks,activeExecutions:this.activeExecutions,buildFinalizerDeps:()=>this.buildFinalizerDeps(),resolveWorkflowContext:e=>tn(this.config,e),config:this.config}}async resolveExecutionWorkspaceRoot(e){if(!e)return this.config.platformDefaults.cwd;let{session:t}=await this.bus.request(T.get,{sessionId:e});return t?.targetWorkingDirectory??this.config.platformDefaults.cwd}buildStartDeps(){return{bus:this.bus,config:this.config,activeExecutions:this.activeExecutions,executionTasks:this.executionTasks,workflowRunner:this.workflowRunner,buildRunContext:e=>nn(e,this.config),buildRunnerTaskDeps:e=>this.buildRunnerTaskDeps(e),buildFinalizerDeps:()=>this.buildFinalizerDeps(),resolveExecutionWorkspaceRoot:e=>this.resolveExecutionWorkspaceRoot(e),runExecution:e=>this.runExecution(e)}}registerExecutionHandlers(){this.registerHandler(n.start,async e=>{let{workflowId:t,input:n,config:r,parentSessionId:i,triggerPayload:a,artifactRef:o,scope:s,executionHints:c}=e.payload,l=typeof r==`object`&&r&&!Array.isArray(r)?r:{};try{let r=await Yt(this.buildStartDeps(),t,{input:$t(n),config:l,parentSessionId:i,triggerPayload:a,artifactRef:o,executionHints:en(c),scopeOverride:s});e.setResult({executionId:r})}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to start workflow: ${t}`)}}),this.registerHandler(n.runFile,async e=>{if(this.workflowRunner===void 0)throw Error(`workflow.runFile requires a workflow runner — configure a ThinWorkflowPiscinaRunner or equivalent.`);let{filePath:t,triggerPayload:n,scope:r}=e.payload;try{let i=await Zt(this.buildStartDeps(),t,{triggerPayload:n,scopeOverride:r});e.setResult({executionId:i})}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Failed to start workflow file: ${t}`)}}),this.registerHandler(n.cancel,async e=>{let{executionId:t,reason:n}=e.payload;await this.bus.emit(de(`workflow.${t}.cancel`),{executionId:t,reason:n}).catch(e=>{console.error(`[WorkflowExecutor] Failed to emit workflow cancel for ${t}:`,e)});let r=this.workflowAbortControllers.get(t);if(r){r.abort(n??E);let i=await o(this.buildFinalizerDeps(),t,n);e.setResult({cancelled:i});return}let i=await o(this.buildFinalizerDeps(),t,n);e.setResult({cancelled:i})}),this.registerGateTimeoutHandlers(),this.addCleanup(this.bus.on(n.gate.respond,async e=>{let{executionId:t,gateId:n,frameId:r,action:i,resumeData:a}=e.payload,o=await this.respondToPausedGate({executionId:t,gateId:n,frameId:r,action:i,resumeData:a});e.setResult({accepted:o})},{priority:-100}))}registerGateTimeoutHandlers(){this.addCleanup(this.bus.on(n.gate.suspended,e=>{this.gateTimeoutScheduler.schedule(e.payload)})),this.addCleanup(this.bus.on(n.gate.resolved,e=>{this.gateTimeoutScheduler.clear(e.payload.executionId,e.payload.stepId,e.payload.frameId)}))}async rehydratePausedGateTimeouts(){let{gates:e}=await this.bus.request(g.listPausedGateTimeouts,{});for(let t of e)this.gateTimeoutScheduler.schedule(cn(t))}async runExecution(e){let t=this.activeExecutions.get(e);if(!t)return;let n=new AbortController;this.workflowAbortControllers.set(e,n);try{let r;try{let a=await d({definition:t.workflow,execution:t.execution,runContext:t.runContext,bus:this.bus}),o=new i(e,t.workflow.id,t.workflow,t.execution,t.runtimeHandlers,this.bus,n.signal,void 0,a,{context:t.runContext.context,env:t.runContext.env}),s=o.buildExpressionContext();r=await _(t.workflow.root,o,s)}catch(r){if(n.signal.aborted||t.execution.status===`cancelled`){await o(this.buildFinalizerDeps(),e,E);return}let i=r instanceof Error?r.message:String(r);await f(this.buildFinalizerDeps(),t.execution,e,i);return}let a=this.buildFinalizerDeps();r.status===`cancelled`||n.signal.aborted||t.execution.status===`cancelled`?await o(a,e,E):r.status===`failed`?await f(a,t.execution,e,r.error):r.status===`paused`?(t.execution.status=`paused`,await this.bus.request(g.setExecution,{execution:t.execution}),this.activeExecutions.delete(e)):await v(a,t.execution,e,t.execution.startedAt)}finally{this.workflowAbortControllers.delete(e)}}async respondToPausedGate(e){let{execution:t}=await this.bus.request(g.getExecution,{executionId:e.executionId});if(!rn(t))return!1;let n=await ln(this.bus,{executionId:e.executionId,nodeId:e.gateId,frameId:e.frameId});if(n===null||!m(e.gateId,n.schema,e.resumeData).valid)return!1;let{runContext:r}=await this.bus.request(g.getRunContext,{executionId:e.executionId});if(r===null)throw Error(`[WorkflowExecutor] Run context not found for paused execution: ${e.executionId}`);await sn(this.bus,r);let i=e.action===`reject`?`rejected`:`resumed`,{accepted:a}=await this.bus.request(g.resolveWaitingGateInstance,{gate:{...n,status:i,resumeData:e.resumeData,resolvedAt:Date.now()}});if(!a)return!1;try{await this.resumePausedExecution(t.id)}catch(r){throw await on(this.bus,this.activeExecutions,this.executionTasks,this.workflowAbortControllers,t,n,e.gateId),r}return this.gateTimeoutScheduler.clear(e.executionId,e.gateId,n.frameId),!0}async resumePausedExecution(e){if(!this.resumeDispatches.has(e)){this.resumeDispatches.add(e);try{await this.dispatchPausedExecutionResume(e)||this.resumeDispatches.delete(e)}catch(t){throw this.resumeDispatches.delete(e),t}}}async dispatchPausedExecutionResume(e){let{runContext:t}=await this.bus.request(g.getRunContext,{executionId:e});if(t===null)throw Error(`[WorkflowExecutor] Run context not found for paused execution: ${e}`);let n=t.definitionSnapshot??(await this.bus.request(g.get,{id:t.workflowId})).workflow??(()=>{throw Error(`[WorkflowExecutor] Workflow definition not found for paused execution: ${e}`)})(),{execution:r}=await this.bus.request(g.getExecution,{executionId:e});if(r===null)throw Error(`[WorkflowExecutor] Execution not found for paused execution: ${e}`);if(r.status!==`paused`)return!1;await sn(this.bus,t),await this.bus.request(g.setExecution,{execution:{...r,status:`running`}}),this.activeExecutions.set(e,{execution:{...r,status:`running`},workflow:n,runContext:t,runtimeHandlers:new Map});let i=At(t,n,{resume:!0}),a=It(this.buildStartDeps(),i).finally(()=>{this.resumeDispatches.delete(e)});return this.executionTasks.set(e,a),!0}};function dn(e,t){try{return xe(e)}catch(n){console.error(`[BusEventTriggerEvaluator] Invalid trigger.filterExpression for workflow "${t}": "${e}"`,n);return}}function fn(e){let t=e.indexOf(`.`),n=e.indexOf(`:`),r=t===-1?n:n===-1?t:Math.min(t,n);return r===-1?e:e.slice(0,r)}function pn(e){return{subject:`*`,$meta:{namespace:e,isRequest:!1}}}var mn=class{bus;cleanupFns=[];initialized=!1;triggerIndex=new Map;subscribedNamespaces=new Set;constructor(e){this.bus=e}async init(){if(!this.initialized)try{this.cleanupFns.push(this.bus.on(D.definition.created,e=>{this.indexWorkflow(e.payload)}),this.bus.on(D.definition.updated,e=>{this.removeWorkflow(e.payload.id),this.indexWorkflow(e.payload)}),this.bus.on(D.definition.deleted,e=>{this.removeWorkflow(e.payload.id)})),await this.loadExistingTriggers(),this.initialized=!0}catch(e){throw this.cleanupFns.forEach(e=>e()),this.cleanupFns.length=0,this.triggerIndex.clear(),this.subscribedNamespaces.clear(),e}}destroy(){this.initialized&&=(this.cleanupFns.forEach(e=>e()),this.cleanupFns.length=0,this.triggerIndex.clear(),this.subscribedNamespaces.clear(),!1)}getTestState(){return{initialized:this.initialized,cleanupFns:[...this.cleanupFns],subscribedNamespaces:new Set(this.subscribedNamespaces)}}async loadExistingTriggers(){let{workflows:e}=await this.bus.request(g.list,{});for(let t of e)this.indexWorkflow(t)}indexWorkflow(e){let t=e.triggers??[],n=[];for(let r of t){if(r.type!==`bus-event`)continue;let t=typeof r.filterExpression==`string`?dn(r.filterExpression,e.id):void 0;typeof r.filterExpression==`string`&&t===void 0||(n.push({workflowId:e.id,subject:r.subject,filter:r.filter,compiledFilterExpr:t}),this.ensureNamespaceSubscribed(fn(r.subject)))}n.length>0&&this.triggerIndex.set(e.id,n)}removeWorkflow(e){this.triggerIndex.delete(e)}ensureNamespaceSubscribed(e){if(this.subscribedNamespaces.has(e))return;let t=pn(e),n=this.bus.on(t,e=>{if(e.isRequest)return;let t=typeof e.payload==`object`&&e.payload!==null?e.payload:{};this.handleBusEvent(e.subject,t)});this.cleanupFns.push(n),this.subscribedNamespaces.add(e)}handleBusEvent(e,t){for(let n of this.triggerIndex.values())for(let r of n)if(te(e,r.subject)&&!(r.filter&&!ee(t,r.filter))){if(r.compiledFilterExpr){let n;try{n=r.compiledFilterExpr.evalSync({payload:t})}catch(n){console.error(`[BusEventTriggerEvaluator] filterExpression eval failed for workflow "${r.workflowId}" on subject "${e}" payload keys: [${Object.keys(t).join(`, `)}]`,n);continue}if(!n)continue}this.bus.request(D.start,{workflowId:r.workflowId,triggerPayload:t}).catch(t=>{console.error(`[BusEventTriggerEvaluator] Failed to start workflow "${r.workflowId}" triggered by "${e}":`,t)})}}};function J(e,t,n,r,i,a,o,s){return J.fromTZ(J.tp(e,t,n,r,i,a,o),s)}J.fromTZISO=(e,t,n)=>J.fromTZ(gn(e,t),n),J.fromTZ=function(e,t){let n=new Date(Date.UTC(e.y,e.m-1,e.d,e.h,e.i,e.s)),r=hn(e.tz,n),i=new Date(n.getTime()-r),a=hn(e.tz,i);if(a-r===0)return i;{let r=new Date(n.getTime()-a),o=hn(e.tz,r);if(o-a===0||!t&&o-a>0)return r;if(t)throw Error(`Invalid date passed to fromTZ()`);return i}},J.toTZ=function(e,t){let n=e.toLocaleString(`en-US`,{timeZone:t}).replace(/[\u202f]/,` `),r=new Date(n);return{y:r.getFullYear(),m:r.getMonth()+1,d:r.getDate(),h:r.getHours(),i:r.getMinutes(),s:r.getSeconds(),tz:t}},J.tp=(e,t,n,r,i,a,o)=>({y:e,m:t,d:n,h:r,i,s:a,tz:o});function hn(e,t=new Date){let n=t.toLocaleString(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).split(` `).slice(-1)[0],r=t.toLocaleString(`en-US`).replace(/[\u202f]/,` `);return Date.parse(`${r} GMT`)-Date.parse(`${r} ${n}`)}function gn(e,t){let n=new Date(Date.parse(e));if(isNaN(n))throw Error(`minitz: Invalid ISO8601 passed to parser.`);let r=e.substring(9);return e.includes(`Z`)||r.includes(`-`)||r.includes(`+`)?J.tp(n.getUTCFullYear(),n.getUTCMonth()+1,n.getUTCDate(),n.getUTCHours(),n.getUTCMinutes(),n.getUTCSeconds(),`Etc/UTC`):J.tp(n.getFullYear(),n.getMonth()+1,n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),t)}J.minitz=J;var _n=32,Y=31|_n,vn=[1,2,4,8,16],yn=class{pattern;timezone;second;minute;hour;day;month;dayOfWeek;lastDayOfMonth;starDOM;starDOW;constructor(e,t){this.pattern=e,this.timezone=t,this.second=Array(60).fill(0),this.minute=Array(60).fill(0),this.hour=Array(24).fill(0),this.day=Array(31).fill(0),this.month=Array(12).fill(0),this.dayOfWeek=Array(7).fill(0),this.lastDayOfMonth=!1,this.starDOM=!1,this.starDOW=!1,this.parse()}parse(){if(!(typeof this.pattern==`string`||this.pattern instanceof String))throw TypeError(`CronPattern: Pattern has to be of type string.`);this.pattern.indexOf(`@`)>=0&&(this.pattern=this.handleNicknames(this.pattern).trim());let e=this.pattern.replace(/\s+/g,` `).split(` `);if(e.length<5||e.length>6)throw TypeError(`CronPattern: invalid configuration format ('`+this.pattern+`'), exactly five or six space separated parts are required.`);if(e.length===5&&e.unshift(`0`),e[3].indexOf(`L`)>=0&&(e[3]=e[3].replace(`L`,``),this.lastDayOfMonth=!0),e[3]==`*`&&(this.starDOM=!0),e[4].length>=3&&(e[4]=this.replaceAlphaMonths(e[4])),e[5].length>=3&&(e[5]=this.replaceAlphaDays(e[5])),e[5]==`*`&&(this.starDOW=!0),this.pattern.indexOf(`?`)>=0){let t=new Z(new Date,this.timezone).getDate(!0);e[0]=e[0].replace(`?`,t.getSeconds().toString()),e[1]=e[1].replace(`?`,t.getMinutes().toString()),e[2]=e[2].replace(`?`,t.getHours().toString()),this.starDOM||(e[3]=e[3].replace(`?`,t.getDate().toString())),e[4]=e[4].replace(`?`,(t.getMonth()+1).toString()),this.starDOW||(e[5]=e[5].replace(`?`,t.getDay().toString()))}this.throwAtIllegalCharacters(e),this.partToArray(`second`,e[0],0,1),this.partToArray(`minute`,e[1],0,1),this.partToArray(`hour`,e[2],0,1),this.partToArray(`day`,e[3],-1,1),this.partToArray(`month`,e[4],-1,1),this.partToArray(`dayOfWeek`,e[5],0,Y),this.dayOfWeek[7]&&(this.dayOfWeek[0]=this.dayOfWeek[7])}partToArray(e,t,n,r){let i=this[e],a=e===`day`&&this.lastDayOfMonth;if(t===``&&!a)throw TypeError(`CronPattern: configuration entry `+e+` (`+t+`) is empty, check for trailing spaces.`);if(t===`*`)return i.fill(r);let o=t.split(`,`);if(o.length>1)for(let t=0;t<o.length;t++)this.partToArray(e,o[t],n,r);else t.indexOf(`-`)!==-1&&t.indexOf(`/`)!==-1?this.handleRangeWithStepping(t,e,n,r):t.indexOf(`-`)===-1?t.indexOf(`/`)===-1?t!==``&&this.handleNumber(t,e,n,r):this.handleStepping(t,e,n,r):this.handleRange(t,e,n,r)}throwAtIllegalCharacters(e){for(let t=0;t<e.length;t++)if((t===5?/[^/*0-9,\-#L]+/:/[^/*0-9,-]+/).test(e[t]))throw TypeError(`CronPattern: configuration entry `+t+` (`+e[t]+`) contains illegal characters.`)}handleNumber(e,t,n,r){let i=this.extractNth(e,t),a=parseInt(i[0],10)+n;if(isNaN(a))throw TypeError(`CronPattern: `+t+` is not a number: '`+e+`'`);this.setPart(t,a,i[1]||r)}setPart(e,t,n){if(!Object.prototype.hasOwnProperty.call(this,e))throw TypeError(`CronPattern: Invalid part specified: `+e);if(e===`dayOfWeek`){if(t===7&&(t=0),t<0||t>6)throw RangeError(`CronPattern: Invalid value for dayOfWeek: `+t);this.setNthWeekdayOfMonth(t,n);return}if(e===`second`||e===`minute`){if(t<0||t>=60)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`hour`){if(t<0||t>=24)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`day`){if(t<0||t>=31)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`month`&&(t<0||t>=12))throw RangeError(`CronPattern: Invalid value for `+e+`: `+t);this[e][t]=n}handleRangeWithStepping(e,t,n,r){let i=this.extractNth(e,t),a=i[0].match(/^(\d+)-(\d+)\/(\d+)$/);if(a===null)throw TypeError(`CronPattern: Syntax error, illegal range with stepping: '`+e+`'`);let[,o,s,c]=a,l=parseInt(o,10)+n,u=parseInt(s,10)+n,d=parseInt(c,10);if(isNaN(l))throw TypeError(`CronPattern: Syntax error, illegal lower range (NaN)`);if(isNaN(u))throw TypeError(`CronPattern: Syntax error, illegal upper range (NaN)`);if(isNaN(d))throw TypeError(`CronPattern: Syntax error, illegal stepping: (NaN)`);if(d===0)throw TypeError(`CronPattern: Syntax error, illegal stepping: 0`);if(d>this[t].length)throw TypeError(`CronPattern: Syntax error, steps cannot be greater than maximum value of part (`+this[t].length+`)`);if(l>u)throw TypeError(`CronPattern: From value is larger than to value: '`+e+`'`);for(let e=l;e<=u;e+=d)this.setPart(t,e,i[1]||r)}extractNth(e,t){let n=e,r;if(n.includes(`#`)){if(t!==`dayOfWeek`)throw Error(`CronPattern: nth (#) only allowed in day-of-week field`);r=n.split(`#`)[1],n=n.split(`#`)[0]}return[n,r]}handleRange(e,t,n,r){let i=this.extractNth(e,t),a=i[0].split(`-`);if(a.length!==2)throw TypeError(`CronPattern: Syntax error, illegal range: '`+e+`'`);let o=parseInt(a[0],10)+n,s=parseInt(a[1],10)+n;if(isNaN(o))throw TypeError(`CronPattern: Syntax error, illegal lower range (NaN)`);if(isNaN(s))throw TypeError(`CronPattern: Syntax error, illegal upper range (NaN)`);if(o>s)throw TypeError(`CronPattern: From value is larger than to value: '`+e+`'`);for(let e=o;e<=s;e++)this.setPart(t,e,i[1]||r)}handleStepping(e,t,n,r){let i=this.extractNth(e,t),a=i[0].split(`/`);if(a.length!==2)throw TypeError(`CronPattern: Syntax error, illegal stepping: '`+e+`'`);a[0]===``&&(a[0]=`*`);let o=0;a[0]!==`*`&&(o=parseInt(a[0],10)+n);let s=parseInt(a[1],10);if(isNaN(s))throw TypeError(`CronPattern: Syntax error, illegal stepping: (NaN)`);if(s===0)throw TypeError(`CronPattern: Syntax error, illegal stepping: 0`);if(s>this[t].length)throw TypeError(`CronPattern: Syntax error, max steps for part is (`+this[t].length+`)`);for(let e=o;e<this[t].length;e+=s)this.setPart(t,e,i[1]||r)}replaceAlphaDays(e){return e.replace(/-sun/gi,`-7`).replace(/sun/gi,`0`).replace(/mon/gi,`1`).replace(/tue/gi,`2`).replace(/wed/gi,`3`).replace(/thu/gi,`4`).replace(/fri/gi,`5`).replace(/sat/gi,`6`)}replaceAlphaMonths(e){return e.replace(/jan/gi,`1`).replace(/feb/gi,`2`).replace(/mar/gi,`3`).replace(/apr/gi,`4`).replace(/may/gi,`5`).replace(/jun/gi,`6`).replace(/jul/gi,`7`).replace(/aug/gi,`8`).replace(/sep/gi,`9`).replace(/oct/gi,`10`).replace(/nov/gi,`11`).replace(/dec/gi,`12`)}handleNicknames(e){let t=e.trim().toLowerCase();return t===`@yearly`||t===`@annually`?`0 0 1 1 *`:t===`@monthly`?`0 0 1 * *`:t===`@weekly`?`0 0 * * 0`:t===`@daily`?`0 0 * * *`:t===`@hourly`?`0 * * * *`:e}setNthWeekdayOfMonth(e,t){if(typeof t!=`number`&&t===`L`)this.dayOfWeek[e]=this.dayOfWeek[e]|_n;else if(t===Y)this.dayOfWeek[e]=Y;else if(t<6&&t>0)this.dayOfWeek[e]=this.dayOfWeek[e]|vn[t-1];else throw TypeError(`CronPattern: nth weekday out of range, should be 1-5 or L. Value: ${t}, Type: ${typeof t}`)}},bn=[31,28,31,30,31,30,31,31,30,31,30,31],X=[[`month`,`year`,0],[`day`,`month`,-1],[`hour`,`day`,0],[`minute`,`hour`,0],[`second`,`minute`,0]],Z=class e{tz;ms;second;minute;hour;day;month;year;constructor(t,n){if(this.tz=n,t&&t instanceof Date)if(!isNaN(t))this.fromDate(t);else throw TypeError(`CronDate: Invalid date passed to CronDate constructor`);else if(t===void 0)this.fromDate(new Date);else if(t&&typeof t==`string`)this.fromString(t);else if(t instanceof e)this.fromCronDate(t);else throw TypeError(`CronDate: Invalid type (`+typeof t+`) passed to CronDate constructor`)}isNthWeekdayOfMonth(e,t,n,r){let i=new Date(Date.UTC(e,t,n)).getUTCDay(),a=0;for(let r=1;r<=n;r++)new Date(Date.UTC(e,t,r)).getUTCDay()===i&&a++;if(r&Y&&vn[a-1]&r)return!0;if(r&_n){let r=new Date(Date.UTC(e,t+1,0)).getUTCDate();for(let a=n+1;a<=r;a++)if(new Date(Date.UTC(e,t,a)).getUTCDay()===i)return!1;return!0}return!1}fromDate(e){if(this.tz!==void 0)if(typeof this.tz==`number`)this.ms=e.getUTCMilliseconds(),this.second=e.getUTCSeconds(),this.minute=e.getUTCMinutes()+this.tz,this.hour=e.getUTCHours(),this.day=e.getUTCDate(),this.month=e.getUTCMonth(),this.year=e.getUTCFullYear(),this.apply();else{let t=J.toTZ(e,this.tz);this.ms=e.getMilliseconds(),this.second=t.s,this.minute=t.i,this.hour=t.h,this.day=t.d,this.month=t.m-1,this.year=t.y}else this.ms=e.getMilliseconds(),this.second=e.getSeconds(),this.minute=e.getMinutes(),this.hour=e.getHours(),this.day=e.getDate(),this.month=e.getMonth(),this.year=e.getFullYear()}fromCronDate(e){this.tz=e.tz,this.year=e.year,this.month=e.month,this.day=e.day,this.hour=e.hour,this.minute=e.minute,this.second=e.second,this.ms=e.ms}apply(){if(this.month>11||this.day>bn[this.month]||this.hour>59||this.minute>59||this.second>59||this.hour<0||this.minute<0||this.second<0){let e=new Date(Date.UTC(this.year,this.month,this.day,this.hour,this.minute,this.second,this.ms));return this.ms=e.getUTCMilliseconds(),this.second=e.getUTCSeconds(),this.minute=e.getUTCMinutes(),this.hour=e.getUTCHours(),this.day=e.getUTCDate(),this.month=e.getUTCMonth(),this.year=e.getUTCFullYear(),!0}else return!1}fromString(e){if(typeof this.tz==`number`){let t=J.fromTZISO(e);this.ms=t.getUTCMilliseconds(),this.second=t.getUTCSeconds(),this.minute=t.getUTCMinutes(),this.hour=t.getUTCHours(),this.day=t.getUTCDate(),this.month=t.getUTCMonth(),this.year=t.getUTCFullYear(),this.apply()}else return this.fromDate(J.fromTZISO(e,this.tz))}findNext(e,t,n,r){let i=this[t],a;n.lastDayOfMonth&&(a=this.month===1?new Date(Date.UTC(this.year,this.month+1,0,0,0,0,0)).getUTCDate():bn[this.month]);let o=!n.starDOW&&t==`day`?new Date(Date.UTC(this.year,this.month,1,0,0,0,0)).getUTCDay():void 0;for(let s=this[t]+r;s<n[t].length;s++){let c=n[t][s];if(t===`day`&&n.lastDayOfMonth&&s-r==a&&(c=1),t===`day`&&!n.starDOW){let t=n.dayOfWeek[(o+(s-r-1))%7];if(t&&t&Y)t=+!!this.isNthWeekdayOfMonth(this.year,this.month,s-r,t);else if(t)throw Error(`CronDate: Invalid value for dayOfWeek encountered. ${t}`);e.legacyMode&&!n.starDOM?c||=t:c&&=t}if(c)return this[t]=s-r,i===this[t]?1:2}return 3}recurse(e,t,n){let r=this.findNext(t,X[n][0],e,X[n][2]);if(r>1){let i=n+1;for(;i<X.length;)this[X[i][0]]=-X[i][2],i++;if(r===3)return this[X[n][1]]++,this[X[n][0]]=-X[n][2],this.apply(),this.recurse(e,t,0);if(this.apply())return this.recurse(e,t,n-1)}return n+=1,n>=X.length?this:this.year>=3e3?null:this.recurse(e,t,n)}increment(e,t,n){return this.second+=t.interval!==void 0&&t.interval>1&&n?t.interval:1,this.ms=0,this.apply(),this.recurse(e,t,0)}getDate(e){return e||this.tz===void 0?new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.ms):typeof this.tz==`number`?new Date(Date.UTC(this.year,this.month,this.day,this.hour,this.minute-this.tz,this.second,this.ms)):J.fromTZ(J.tp(this.year,this.month+1,this.day,this.hour,this.minute,this.second,this.tz),!1)}getTime(){return this.getDate(!1).getTime()}};function xn(e){if(e===void 0&&(e={}),delete e.name,e.legacyMode=e.legacyMode===void 0?!0:e.legacyMode,e.paused=e.paused===void 0?!1:e.paused,e.maxRuns=e.maxRuns===void 0?1/0:e.maxRuns,e.catch=e.catch===void 0?!1:e.catch,e.interval=e.interval===void 0?0:parseInt(e.interval.toString(),10),e.utcOffset=e.utcOffset===void 0?void 0:parseInt(e.utcOffset.toString(),10),e.unref=e.unref===void 0?!1:e.unref,e.startAt&&=new Z(e.startAt,e.timezone),e.stopAt&&=new Z(e.stopAt,e.timezone),e.interval!==null){if(isNaN(e.interval))throw Error(`CronOptions: Supplied value for interval is not a number`);if(e.interval<0)throw Error(`CronOptions: Supplied value for interval can not be negative`)}if(e.utcOffset!==void 0){if(isNaN(e.utcOffset))throw Error(`CronOptions: Invalid value passed for utcOffset, should be number representing minutes offset from UTC.`);if(e.utcOffset<-870||e.utcOffset>870)throw Error(`CronOptions: utcOffset out of bounds.`);if(e.utcOffset!==void 0&&e.timezone)throw Error(`CronOptions: Combining 'utcOffset' with 'timezone' is not allowed.`)}if(e.unref!==!0&&e.unref!==!1)throw Error(`CronOptions: Unref should be either true, false or undefined(false).`);return e}function Q(e){return Object.prototype.toString.call(e)===`[object Function]`||typeof e==`function`||e instanceof Function}function Sn(e){return Q(e)}function Cn(e){typeof Deno<`u`&&typeof Deno.unrefTimer<`u`?Deno.unrefTimer(e):e&&typeof e.unref<`u`&&e.unref()}var wn=30*1e3,$=[],Tn=class{name;options;_states;fn;constructor(e,t,n){let r,i;if(Q(t))i=t;else if(typeof t==`object`)r=t;else if(t!==void 0)throw Error(`Cron: Invalid argument passed for optionsIn. Should be one of function, or object (options).`);if(Q(n))i=n;else if(typeof n==`object`)r=n;else if(n!==void 0)throw Error(`Cron: Invalid argument passed for funcIn. Should be one of function, or object (options).`);if(this.name=r?.name,this.options=xn(r),this._states={kill:!1,blocking:!1,previousRun:void 0,currentRun:void 0,once:void 0,currentTimeout:void 0,maxRuns:r?r.maxRuns:void 0,paused:r?r.paused:!1,pattern:new yn(`* * * * *`)},e&&(e instanceof Date||typeof e==`string`&&e.indexOf(`:`)>0)?this._states.once=new Z(e,this.options.timezone||this.options.utcOffset):this._states.pattern=new yn(e,this.options.timezone),this.name){if($.find(e=>e.name===this.name))throw Error(`Cron: Tried to initialize new named job '`+this.name+`', but name already taken.`);$.push(this)}return i!==void 0&&Sn(i)&&(this.fn=i,this.schedule()),this}nextRun(e){let t=this._next(e);return t?t.getDate(!1):null}nextRuns(e,t){this._states.maxRuns!==void 0&&e>this._states.maxRuns&&(e=this._states.maxRuns);let n=[],r=t||this._states.currentRun||void 0;for(;e--&&(r=this.nextRun(r));)n.push(r);return n}getPattern(){return this._states.pattern?this._states.pattern.pattern:void 0}isRunning(){let e=this.nextRun(this._states.currentRun),t=!this._states.paused,n=this.fn!==void 0,r=!this._states.kill;return t&&n&&r&&e!==null}isStopped(){return this._states.kill}isBusy(){return this._states.blocking}currentRun(){return this._states.currentRun?this._states.currentRun.getDate():null}previousRun(){return this._states.previousRun?this._states.previousRun.getDate():null}msToNext(e){let t=this._next(e);return t?e instanceof Z||e instanceof Date?t.getTime()-e.getTime():t.getTime()-new Z(e).getTime():null}stop(){this._states.kill=!0,this._states.currentTimeout&&clearTimeout(this._states.currentTimeout);let e=$.indexOf(this);e>=0&&$.splice(e,1)}pause(){return this._states.paused=!0,!this._states.kill}resume(){return this._states.paused=!1,!this._states.kill}schedule(e){if(e&&this.fn)throw Error(`Cron: It is not allowed to schedule two functions using the same Croner instance.`);e&&(this.fn=e);let t=this.msToNext(),n=this.nextRun(this._states.currentRun);return t==null||isNaN(t)||n===null?this:(t>wn&&(t=wn),this._states.currentTimeout=setTimeout(()=>this._checkTrigger(n),t),this._states.currentTimeout&&this.options.unref&&Cn(this._states.currentTimeout),this)}async _trigger(e){if(this._states.blocking=!0,this._states.currentRun=new Z(void 0,this.options.timezone||this.options.utcOffset),this.options.catch)try{this.fn!==void 0&&await this.fn(this,this.options.context)}catch(e){Q(this.options.catch)&&this.options.catch(e,this)}else this.fn!==void 0&&await this.fn(this,this.options.context);this._states.previousRun=new Z(e,this.options.timezone||this.options.utcOffset),this._states.blocking=!1}async trigger(){await this._trigger()}runsLeft(){return this._states.maxRuns}_checkTrigger(e){let t=new Date,n=!this._states.paused&&t.getTime()>=e.getTime(),r=this._states.blocking&&this.options.protect;n&&!r?(this._states.maxRuns!==void 0&&this._states.maxRuns--,this._trigger()):n&&r&&Q(this.options.protect)&&setTimeout(()=>this.options.protect(this),0),this.schedule()}_next(e){let t=!!(e||this._states.currentRun),n=!1;!e&&this.options.startAt&&this.options.interval&&([e,t]=this._calculatePreviousRun(e,t),n=!e),e=new Z(e,this.options.timezone||this.options.utcOffset),this.options.startAt&&e&&e.getTime()<this.options.startAt.getTime()&&(e=this.options.startAt);let r=this._states.once||new Z(e,this.options.timezone||this.options.utcOffset);return!n&&r!==this._states.once&&(r=r.increment(this._states.pattern,this.options,t)),this._states.once&&this._states.once.getTime()<=e.getTime()||r===null||this._states.maxRuns!==void 0&&this._states.maxRuns<=0||this._states.kill||this.options.stopAt&&r.getTime()>=this.options.stopAt.getTime()?null:r}_calculatePreviousRun(e,t){let n=new Z(void 0,this.options.timezone||this.options.utcOffset),r=e;if(this.options.startAt.getTime()<=n.getTime()){r=this.options.startAt;let e=r.getTime()+this.options.interval*1e3;for(;e<=n.getTime();)r=new Z(r,this.options.timezone||this.options.utcOffset).increment(this._states.pattern,this.options,!0),e=r.getTime()+this.options.interval*1e3;t=!0}return r===null&&(r=void 0),[r,t]}};function En(e,t){return`${e}:${t}`}function Dn(e){return e??`UTC`}var On=class{bus;cleanupFns=[];initialized=!1;jobs=new Map;constructor(e){this.bus=e}async init(){if(!this.initialized)try{this.cleanupFns.push(this.bus.on(D.definition.created,e=>{this.scheduleWorkflow(e.payload)}),this.bus.on(D.definition.updated,e=>{this.unscheduleWorkflow(e.payload.id),this.scheduleWorkflow(e.payload)}),this.bus.on(D.definition.deleted,e=>{this.unscheduleWorkflow(e.payload.id)})),await this.loadExistingTriggers(),this.initialized=!0}catch(e){throw this.cleanupFns.forEach(e=>e()),this.cleanupFns.length=0,this.stopAllJobs(),e}}destroy(){this.initialized&&=(this.cleanupFns.forEach(e=>e()),this.cleanupFns.length=0,this.stopAllJobs(),!1)}activeJobCount(){return this.jobs.size}async loadExistingTriggers(){let{workflows:e}=await this.bus.request(g.list,{});for(let t of e)this.scheduleWorkflow(t)}scheduleWorkflow(e){if(e.scope.type===`global`)return;let t=e.triggers??[];for(let n=0;n<t.length;n++){let r=t[n];if(r.type!==`cron`)continue;let i=En(e.id,n);this.stopJob(i);try{let t=Dn(r.timezone),a=new Tn(r.schedule,{timezone:t},()=>{this.fireTrigger(e.id,n)});this.jobs.set(i,{workflowId:e.id,triggerIndex:n,job:a})}catch(t){console.warn(`[CronTriggerEvaluator] Skipping invalid cron trigger key="${i}" workflowId="${e.id}" triggerIndex=${n} schedule="${r.schedule}" timezone="${r.timezone??`UTC`}"`,t)}}}unscheduleWorkflow(e){for(let[t,n]of this.jobs)n.workflowId===e&&(n.job.stop(),this.jobs.delete(t))}stopJob(e){let t=this.jobs.get(e);t&&(t.job.stop(),this.jobs.delete(e))}stopAllJobs(){for(let e of this.jobs.values())e.job.stop();this.jobs.clear()}fireTrigger(e,t){this.bus.request(D.start,{workflowId:e,triggerPayload:{firedAt:Date.now(),triggerIndex:t}}).catch(n=>{console.error(`[CronTriggerEvaluator] Failed to start workflow "${e}" for cron trigger index ${t}:`,n)})}},kn=class extends me{workflowExecutor;busEventTriggerEvaluator;cronTriggerEvaluator;constructor(e,t){super(e),this.workflowExecutor=new un(e,t?.executorConfig,t?.workflowRunner),this.busEventTriggerEvaluator=new mn(e),this.cronTriggerEvaluator=new On(e)}get executor(){return this.workflowExecutor}get cronTriggers(){return this.cronTriggerEvaluator}setTriggerTypeRegistry(e){this.workflowExecutor.setTriggerTypeRegistry(e)}getTriggerTypeRegistry(){return this.workflowExecutor.getTriggerTypeRegistry()}async onInit(){this.addCleanup(()=>this.destroyOwnedServices()),await this.workflowExecutor.init(),await this.busEventTriggerEvaluator.init(),await this.cronTriggerEvaluator.init()}async destroyOwnedServices(){let e=[];for(let t of[()=>this.cronTriggerEvaluator.destroy(),()=>this.busEventTriggerEvaluator.destroy(),()=>this.workflowExecutor.destroy()])try{await t()}catch(t){e.push(t)}if(e.length===1)throw e[0];if(e.length>1)throw AggregateError(e,`Workflow engine service teardown failed`)}};const An=pe(`makaio.workflow-engine`);function jn(e){return{name:An.name,displayName:`Workflow Engine`,version:`0.1.0`,dependencies:[fe(Ce.name)],critical:!0,namespaces:[le,c],storage:{registerHandlers:be(q)},create:t=>new kn(t.bus,e)}}const Mn=jn();export{un as a,kn as i,jn as n,q as o,Mn as r,An as t};