@makaio/framework 1.0.0-dev-1787670559522 → 1.0.0-dev-1787949057928

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 (527) hide show
  1. package/README.md +2 -0
  2. package/dist/.makaio-build.json +2 -2
  3. package/dist/{account-identity-DGpXd8h_.mjs → account-identity-B3vLwm9O.mjs} +1 -1
  4. package/dist/adapter-Dz1fX5Wa.mjs +1 -0
  5. package/dist/adapter-subsystem/index.d.mts +118 -76
  6. package/dist/adapter-subsystem/index.mjs +1 -1
  7. package/dist/adapters/claude/index.d.mts +5 -5
  8. package/dist/adapters/config/index.d.mts +1 -1
  9. package/dist/adapters/config/index.mjs +1 -1
  10. package/dist/adapters/index.d.mts +73 -53
  11. package/dist/adapters/index.mjs +6 -6
  12. package/dist/adapters/node.d.mts +1 -1
  13. package/dist/adapters/node.mjs +1 -1
  14. package/dist/adapters/stream-session/index.mjs +1 -1
  15. package/dist/{artifact-k3veR4Yx.mjs → artifact-Btbuib48.mjs} +1 -1
  16. package/dist/attach-error-Cb3GbeKe.mjs +1 -0
  17. package/dist/{auth-A1K_7q-8.mjs → auth-C6tVtaOX.mjs} +1 -1
  18. package/dist/{authority-state-bootstrap-YwtEImIB.mjs → authority-state-bootstrap-CLYus369.mjs} +1 -1
  19. package/dist/{automation-trigger-CuSdQwir.mjs → automation-trigger-ByjNlClm.mjs} +1 -1
  20. package/dist/bus/index.d.mts +22 -4
  21. package/dist/bus/index.mjs +1 -1
  22. package/dist/{bus-CqgrphNE.mjs → bus-D6NoBhIV.mjs} +1 -1
  23. package/dist/bus-UgFdHybD.mjs +1 -0
  24. package/dist/caller-owned-adapter-stub-C1M7FKrv.mjs +1 -0
  25. package/dist/{canonical-model-DJASlL4m.mjs → canonical-model-DXOvCaVg.mjs} +1 -1
  26. package/dist/capabilities-BUwuA7XX.mjs +1 -0
  27. package/dist/capability-j3NekkIu.mjs +1 -0
  28. package/dist/{client-BL5__WT0.mjs → client-BkznbdsO.mjs} +1 -1
  29. package/dist/clients/index.d.mts +1 -1
  30. package/dist/clients/index.mjs +1 -1
  31. package/dist/clients/managed-install.d.mts +1 -1
  32. package/dist/clients/managed-install.mjs +1 -1
  33. package/dist/code-execution/worker-entry.d.mts +21 -0
  34. package/dist/code-execution/worker-entry.mjs +1 -0
  35. package/dist/code-execution-Ckmn8OZu.mjs +1 -0
  36. package/dist/code-execution-CweDSWco.mjs +1 -0
  37. package/dist/code-execution-DqkQjKa1.mjs +1 -0
  38. package/dist/{compression-BbttSqm8.mjs → compression-CtgeVLpP.mjs} +1 -1
  39. package/dist/{config-namespace-CyzeLWSg.mjs → config-namespace-CjWvw8ij.mjs} +1 -1
  40. package/dist/{context-resolution-ya9TXKg-.d.mts → context-resolution-841T7jBI.d.mts} +1 -1
  41. package/dist/contracts/adapter/index.d.mts +3 -3
  42. package/dist/contracts/adapter/index.mjs +1 -1
  43. package/dist/contracts/adapter/schemas/session-lineage.d.mts +1 -1
  44. package/dist/contracts/artifact/index.d.mts +2 -2
  45. package/dist/contracts/artifact/index.mjs +1 -1
  46. package/dist/contracts/auth/index.d.mts +2 -2
  47. package/dist/contracts/auth/index.mjs +1 -1
  48. package/dist/contracts/automation-trigger/index.d.mts +3 -3
  49. package/dist/contracts/automation-trigger/index.mjs +1 -1
  50. package/dist/contracts/canonical-model/index.d.mts +1 -1
  51. package/dist/contracts/canonical-model/index.mjs +1 -1
  52. package/dist/contracts/capabilities/index.d.mts +1 -1
  53. package/dist/contracts/capabilities/index.mjs +1 -1
  54. package/dist/contracts/client/index.d.mts +2 -2
  55. package/dist/contracts/client/index.mjs +1 -1
  56. package/dist/contracts/code-execution/index.d.mts +2 -0
  57. package/dist/contracts/code-execution/index.mjs +1 -0
  58. package/dist/contracts/common/index.d.mts +1 -1
  59. package/dist/contracts/config/index.d.mts +1 -1
  60. package/dist/contracts/config/index.mjs +1 -1
  61. package/dist/contracts/extension/index.d.mts +5 -5
  62. package/dist/contracts/extension/index.mjs +1 -1
  63. package/dist/contracts/facet/index.d.mts +1 -1
  64. package/dist/contracts/facet/index.mjs +1 -1
  65. package/dist/contracts/harness/index.d.mts +1 -1
  66. package/dist/contracts/harness/index.mjs +1 -1
  67. package/dist/contracts/host/index.d.mts +1 -1
  68. package/dist/contracts/host/index.mjs +1 -1
  69. package/dist/contracts/index.d.mts +62 -52
  70. package/dist/contracts/index.mjs +1 -1
  71. package/dist/contracts/materialization/index.d.mts +3 -3
  72. package/dist/contracts/materialization/index.mjs +1 -1
  73. package/dist/contracts/model-registry/index.d.mts +1 -1
  74. package/dist/contracts/model-registry/index.mjs +1 -1
  75. package/dist/contracts/native-session-supervisor/index.d.mts +1 -1
  76. package/dist/contracts/native-session-supervisor/index.mjs +1 -1
  77. package/dist/contracts/platform/index.d.mts +1 -1
  78. package/dist/contracts/platform/index.mjs +1 -1
  79. package/dist/contracts/provider/index.d.mts +2 -2
  80. package/dist/contracts/provider/index.mjs +1 -1
  81. package/dist/contracts/reaction/index.d.mts +1 -1
  82. package/dist/contracts/reaction/index.mjs +1 -1
  83. package/dist/contracts/session/index.d.mts +3 -3
  84. package/dist/contracts/session/index.mjs +1 -1
  85. package/dist/contracts/shared/index.d.mts +3 -3
  86. package/dist/contracts/shared/index.mjs +1 -1
  87. package/dist/contracts/skill/index.d.mts +1 -1
  88. package/dist/contracts/skill/index.mjs +1 -1
  89. package/dist/contracts/telemetry/index.d.mts +1 -1
  90. package/dist/contracts/telemetry/index.mjs +1 -1
  91. package/dist/contracts/timeout/index.d.mts +1 -1
  92. package/dist/contracts/timeout/index.mjs +1 -1
  93. package/dist/contracts/toast/index.mjs +1 -1
  94. package/dist/contracts/variant/index.d.mts +1 -1
  95. package/dist/contracts/variant/index.mjs +1 -1
  96. package/dist/contracts/worker-node/index.d.mts +1 -1
  97. package/dist/contracts/worker-node/index.mjs +1 -1
  98. package/dist/contracts/workflow/index.d.mts +2 -2
  99. package/dist/contracts/workflow/index.mjs +1 -1
  100. package/dist/{contribution-BB5bjx3f.d.mts → contribution-CUHLVLsT.d.mts} +2 -2
  101. package/dist/core/index.d.mts +25 -2
  102. package/dist/{definition-CDg-Jq1T.mjs → definition-BH4QLGLI.mjs} +1 -1
  103. package/dist/{definition-BYgHlmMw.d.mts → definition-DyGImhyi.d.mts} +1 -1
  104. package/dist/{detached-extension-handle-DKd17UB6.mjs → detached-extension-handle-D0aI0pJA.mjs} +1 -1
  105. package/dist/drizzle/0034_m_msha1388.sql +41 -0
  106. package/dist/drizzle/0035_m_mshgj6x7.sql +40 -0
  107. package/dist/drizzle/0036_m_msivwbgm.sql +1 -0
  108. package/dist/drizzle/0037_runtime_instance_incarnation_counter.sql +6 -0
  109. package/dist/drizzle/meta/_journal.json +28 -0
  110. package/dist/event-B8ELuk6k.mjs +1 -0
  111. package/dist/{execution-attempt-repository-DFyAnchJ.d.mts → execution-attempt-repository-BJ2W6wwx.d.mts} +1 -1
  112. package/dist/{execution-target-ByNwZh5-.mjs → execution-target-H0RWV7Py.mjs} +1 -1
  113. package/dist/{extension-DUmibvMk.mjs → extension-Bfkr2DBs.mjs} +1 -1
  114. package/dist/{extension-DMdmj9gi.mjs → extension-Cz39YNXy.mjs} +1 -1
  115. package/dist/{extension-discovery-Fhps4icD.d.mts → extension-discovery-Dhu3WplO.d.mts} +9 -1
  116. package/dist/{filesystem-service-FAtd9gWH.mjs → filesystem-service-CiUw0YN5.mjs} +1 -1
  117. package/dist/framework-packages-BHgul8Kl.mjs +1 -0
  118. package/dist/git/index.mjs +2 -2
  119. package/dist/{globby-BBLuT_vy.mjs → globby-QBDqstzq.mjs} +1 -1
  120. package/dist/handlers-BsHAFtye.mjs +57 -0
  121. package/dist/{harness-KxbWGL4I.mjs → harness-YQ2ewID9.mjs} +1 -1
  122. package/dist/{hook-responses-uCXAICTU.d.mts → hook-responses-9Ywsqzzq.d.mts} +1 -1
  123. package/dist/identity-OjRlG6dZ.mjs +1 -0
  124. package/dist/{index-CfiCJPP6.d.mts → index-B0VO0rAl.d.mts} +1 -1
  125. package/dist/{index-DI7-tIL3.d.mts → index-B0yMCJW8.d.mts} +39 -14
  126. package/dist/{index-CER64zYO.d.mts → index-B9io6JAL.d.mts} +15 -15
  127. package/dist/{index-CqQYgsbB.d.mts → index-BNzUyVwV.d.mts} +513 -170
  128. package/dist/{index-1UcQWrZy.d.mts → index-BUwDmh1I.d.mts} +142 -142
  129. package/dist/{index-CM75k-Ff.d.mts → index-BkbnC65b.d.mts} +189 -17
  130. package/dist/index-Bqk0pJBQ2.d.mts +138 -0
  131. package/dist/{index-C-JzEkqs.d.mts → index-C146Eq_J.d.mts} +535 -1801
  132. package/dist/{index-C__EQfKa.d.mts → index-CIEycZrt.d.mts} +1 -1
  133. package/dist/{index-DxYDRoDE2.d.mts → index-CMekqu_D.d.mts} +28 -8
  134. package/dist/{index-nydhGvXa.d.mts → index-CPRQ4dWX.d.mts} +0 -23
  135. package/dist/{index-BSQ30wYP.d.mts → index-CPi0UpRh.d.mts} +1 -1
  136. package/dist/{index-BtdK8HeH.d.mts → index-CVNbBtA-.d.mts} +72 -197
  137. package/dist/{index-BMVZs6pm.d.mts → index-CYjgoYeX.d.mts} +3 -3
  138. package/dist/{index-CSN_0sCo.d.mts → index-CmwAJ8-5.d.mts} +1 -1
  139. package/dist/index-Cny5RvjO.d.mts +800 -0
  140. package/dist/{index-B0xJgTi-.d.mts → index-D8D-yibS2.d.mts} +4 -4
  141. package/dist/index-DHnSLGP4.d.mts +268 -0
  142. package/dist/index-DQ8o3JGi.d.mts +132 -0
  143. package/dist/index-DWBkiiXH.d.mts +18 -0
  144. package/dist/{index-cPqSpWQC.d.mts → index-DfUpqwBa2.d.mts} +16 -16
  145. package/dist/index-Dg11JxKZ.d.mts +496 -0
  146. package/dist/{index-Bl7KWFod.d.mts → index-NUByQvlg.d.mts} +15 -15
  147. package/dist/{index-e4Txan9i.d.mts → index-cLB38AWX.d.mts} +64 -64
  148. package/dist/json-value-BBZ6uGwc.mjs +1 -0
  149. package/dist/json-value-DPqb-SJ8.d.mts +177 -0
  150. package/dist/kernel/cli/index.d.mts +2 -2
  151. package/dist/kernel/cli/index.mjs +1 -1
  152. package/dist/kernel/cli/register.d.mts +1 -1
  153. package/dist/kernel/cli/register.mjs +1 -1
  154. package/dist/kernel/cli/schemas.mjs +1 -1
  155. package/dist/kernel/extension/index.d.mts +1 -1
  156. package/dist/kernel/extension/index.mjs +1 -1
  157. package/dist/kernel/index.d.mts +5 -5
  158. package/dist/kernel/index.mjs +1 -1
  159. package/dist/kernel/namespace/index.d.mts +1 -1
  160. package/dist/kernel/namespace/index.mjs +1 -1
  161. package/dist/kernel/observability/index.d.mts +1 -1
  162. package/dist/kernel/observability/index.mjs +1 -1
  163. package/dist/kernel/providers/index.d.mts +1 -1
  164. package/dist/kernel/providers/index.mjs +1 -1
  165. package/dist/kernel/window/index.d.mts +1 -1
  166. package/dist/kernel/window/index.mjs +1 -1
  167. package/dist/{lib-CnOAtohU.mjs → lib-BpGvHZye.mjs} +2 -2
  168. package/dist/{lib-B_rJ6r0T.mjs → lib-Cm-uEoC1.mjs} +1 -1
  169. package/dist/{load-extensions-DUpaMQ7G.d.mts → load-extensions-BQoXaHhR.d.mts} +1 -1
  170. package/dist/{load-extensions-CW9uzNR5.mjs → load-extensions-DG5LvPyM.mjs} +1 -1
  171. package/dist/{materialization-CcpCDhXh.mjs → materialization-lVd9_-jr.mjs} +1 -1
  172. package/dist/mcp-http-server/index.mjs +1 -1
  173. package/dist/model-DrzPt3ou.mjs +1 -0
  174. package/dist/{namespace-B7bntOB8.mjs → namespace-BL7lHlmg.mjs} +1 -1
  175. package/dist/{namespace-BgEiY7r1.d.mts → namespace-BNp7n_gu.d.mts} +3 -3
  176. package/dist/{namespace-DSlfFhB1.d.mts → namespace-BRuHzhPo.d.mts} +154 -2
  177. package/dist/{namespace-ChnRTUG4.d.mts → namespace-C06lJSuj.d.mts} +6 -6
  178. package/dist/{namespace-C6CVEGH8.d.mts → namespace-DknCutQZ.d.mts} +50 -0
  179. package/dist/namespace-sCPb79-7.mjs +1 -0
  180. package/dist/{native-session-supervisor-fZYPUk0-.mjs → native-session-supervisor-LKio8XZn.mjs} +1 -1
  181. package/dist/node/bus-server/index.d.mts +1 -1
  182. package/dist/node/bus-server/index.mjs +1 -1
  183. package/dist/node/bus-server/server-lifecycle.d.mts +1 -1
  184. package/dist/node/bus-server/server-lifecycle.mjs +1 -1
  185. package/dist/npm-package-name-DuTYVICk.mjs +1 -0
  186. package/dist/orchestrator-shared-BGlN-m-V.mjs +1 -0
  187. package/dist/{orchestrator-shared-B-KRW1Z0.d.mts → orchestrator-shared-CNHSImNY.d.mts} +9 -10
  188. package/dist/ownership-memory-handler-BpGdR_uG.mjs +1 -0
  189. package/dist/ownership-recovery-guard-DyW5vGBr.mjs +1 -0
  190. package/dist/{package-ypz4rKvn.mjs → package-B01gmu75.mjs} +1 -1
  191. package/dist/{package-Bf3hyuzs.d.mts → package-BNFTUFLB.d.mts} +2 -2
  192. package/dist/package-DttKA9wN.mjs +1 -0
  193. package/dist/{package-CddkNbZI.mjs → package-JtjbO-Oi.mjs} +1 -1
  194. package/dist/package.json +1 -1
  195. package/dist/{profile-BtznZlq3.mjs → profile-N5qGUpF0.mjs} +1 -1
  196. package/dist/{provider-context-Dh-VOOYF.mjs → provider-context-CG42JlP9.mjs} +1 -1
  197. package/dist/{provider-context-BrLZYnDW.mjs → provider-context-zTDSH2x9.mjs} +1 -1
  198. package/dist/{reaction-BS0k4eNN.mjs → reaction-D3TNwPK8.mjs} +1 -1
  199. package/dist/{registry-BO_bOoky.mjs → registry-Dk12tAfv.mjs} +1 -1
  200. package/dist/{resolved-DMByz1_2.mjs → resolved-sq8RXNDf.mjs} +1 -1
  201. package/dist/rules/index.d.mts +1 -1
  202. package/dist/rules/index.mjs +1 -1
  203. package/dist/rules/schemas.d.mts +1 -1
  204. package/dist/rules/schemas.mjs +1 -1
  205. package/dist/runtime-bun/index.mjs +1 -1
  206. package/dist/runtime-node/code-execution/index.d.mts +3 -0
  207. package/dist/runtime-node/code-execution/index.mjs +1 -0
  208. package/dist/runtime-node/extension-discovery.d.mts +2 -2
  209. package/dist/runtime-node/extension-discovery.mjs +1 -1
  210. package/dist/runtime-node/extension-validation.d.mts +1 -1
  211. package/dist/runtime-node/extension-validation.mjs +1 -1
  212. package/dist/runtime-node/index.d.mts +6 -4
  213. package/dist/runtime-node/index.mjs +24 -24
  214. package/dist/runtime-node/makaio-config.d.mts +1 -1
  215. package/dist/runtime-node/makaio-config.mjs +1 -1
  216. package/dist/runtime-node/workflow-worker/index.d.mts +1 -1
  217. package/dist/runtime-node/workflow-worker/index.mjs +1 -1
  218. package/dist/runtime-node/workflow-worker/worker-entry.mjs +1 -1
  219. package/dist/{schema-DKTzriEY.d.mts → schema-B3Pf7JP7.d.mts} +250 -3
  220. package/dist/{schema-DBG7Jq5_.mjs → schema-Dq-7si8u.mjs} +1 -1
  221. package/dist/{schemas-DvMbcABQ.d.mts → schemas-BAv9RB9M.d.mts} +4 -4
  222. package/dist/{schemas-DSkBOdx_.mjs → schemas-BfO5jkrL.mjs} +1 -1
  223. package/dist/{schemas-B7zo7Zcx.d.mts → schemas-C1mxTfd7.d.mts} +60 -4
  224. package/dist/schemas-C3kyQWGf.mjs +1 -0
  225. package/dist/{schemas-B3bfVYcL.d.mts → schemas-CF8QwRqt.d.mts} +2 -0
  226. package/dist/{schemas-DZH9lpxs.d.mts → schemas-OWvBn7AH.d.mts} +4 -4
  227. package/dist/{schemas-CsjN7cmM.mjs → schemas-QWDnauKX.mjs} +1 -1
  228. package/dist/schemas-TK29KWx-.mjs +1 -0
  229. package/dist/schemas-_2Syo_01.mjs +1 -0
  230. package/dist/scoped-bus-DoPmCJeM.mjs +1 -0
  231. package/dist/{selection-7Ku8DBnh.mjs → selection-DL3ric7K.mjs} +1 -1
  232. package/dist/services/adapter-runtime/index.d.mts +4 -4
  233. package/dist/services/adapter-runtime/index.mjs +1 -1
  234. package/dist/services/adapter-runtime/namespace.d.mts +1 -1
  235. package/dist/services/adapter-runtime/schemas.d.mts +2 -2
  236. package/dist/services/adapter-runtime/schemas.mjs +1 -1
  237. package/dist/services/adapter-subsystem/index.d.mts +3 -3
  238. package/dist/services/adapter-subsystem/index.mjs +1 -1
  239. package/dist/services/adapter-subsystem/namespace.d.mts +1 -1
  240. package/dist/services/adapter-subsystem/namespace.mjs +1 -1
  241. package/dist/services/agent-runtime/index.d.mts +2 -2
  242. package/dist/services/agent-runtime/namespace.d.mts +1 -1
  243. package/dist/services/agent-runtime/schemas.d.mts +1 -1
  244. package/dist/services/automation-trigger/index.mjs +1 -1
  245. package/dist/services/capability/index.d.mts +3 -2
  246. package/dist/services/capability/index.mjs +1 -1
  247. package/dist/services/code-execution/index.d.mts +2 -0
  248. package/dist/services/code-execution/index.mjs +1 -0
  249. package/dist/services/codebase/index.d.mts +2 -2
  250. package/dist/services/codebase/namespace.d.mts +1 -1
  251. package/dist/services/codebase/schemas.d.mts +1 -1
  252. package/dist/services/compression/index.d.mts +2 -2
  253. package/dist/services/compression/namespace.d.mts +1 -1
  254. package/dist/services/compression/schemas.d.mts +1 -1
  255. package/dist/services/context-rules/index.d.mts +1 -1
  256. package/dist/services/context-rules/index.mjs +1 -1
  257. package/dist/services/execution-target/index.d.mts +3 -3
  258. package/dist/services/execution-target/index.mjs +1 -1
  259. package/dist/services/execution-target/namespace.d.mts +1 -1
  260. package/dist/services/execution-target/namespace.mjs +1 -1
  261. package/dist/services/execution-target/schemas.d.mts +1 -1
  262. package/dist/services/execution-target/schemas.mjs +1 -1
  263. package/dist/services/filesystem/index.d.mts +1 -1
  264. package/dist/services/filesystem/index.mjs +1 -1
  265. package/dist/services/filesystem/namespace.d.mts +6 -6
  266. package/dist/services/filesystem/schemas.d.mts +3 -3
  267. package/dist/services/git/namespace.d.mts +18 -0
  268. package/dist/services/git/namespace.mjs +1 -1
  269. package/dist/services/git/schemas.d.mts +10 -1
  270. package/dist/services/git/schemas.mjs +1 -1
  271. package/dist/services/harness/index.mjs +1 -1
  272. package/dist/services/index.d.mts +160 -60
  273. package/dist/services/index.mjs +1 -1
  274. package/dist/services/log-import/browser.d.mts +2 -2
  275. package/dist/services/log-import/index.d.mts +2 -2
  276. package/dist/services/log-import/log-import.d.mts +1 -1
  277. package/dist/services/log-import/log-import.mjs +1 -1
  278. package/dist/services/log-import/namespace.mjs +1 -1
  279. package/dist/services/log-import/schemas.mjs +1 -1
  280. package/dist/services/materialization/index.d.mts +1 -1
  281. package/dist/services/materialization/index.mjs +1 -1
  282. package/dist/services/model-registry/index.d.mts +1 -1
  283. package/dist/services/model-registry/index.mjs +1 -1
  284. package/dist/services/preferences/index.d.mts +2 -2
  285. package/dist/services/preferences/schemas.d.mts +1 -1
  286. package/dist/services/preferences/storage-namespace.d.mts +2 -2
  287. package/dist/services/provider-context/index.d.mts +1 -1
  288. package/dist/services/provider-context/index.mjs +1 -1
  289. package/dist/services/provider-runtime/index.mjs +1 -1
  290. package/dist/services/session/handlers/index.d.mts +1 -1
  291. package/dist/services/session/handlers/index.mjs +1 -1
  292. package/dist/services/session/index.d.mts +10 -10
  293. package/dist/services/session/index.mjs +1 -1
  294. package/dist/services/session/messages/namespace.d.mts +1 -1
  295. package/dist/services/session/messages/namespace.mjs +1 -1
  296. package/dist/services/session/orchestrator-testing/index.d.mts +1 -1
  297. package/dist/services/session/orchestrator-testing/index.mjs +1 -1
  298. package/dist/services/session/session-events/namespace.d.mts +1 -1
  299. package/dist/services/session/session-events/namespace.mjs +1 -1
  300. package/dist/services/session/storage/namespace.d.mts +1 -1
  301. package/dist/services/session/storage/schema.d.mts +2 -2
  302. package/dist/services/session/storage/schema.mjs +1 -1
  303. package/dist/services/session/testing/index.d.mts +22 -1
  304. package/dist/services/session/testing/index.mjs +38 -14
  305. package/dist/services/session/testing/orchestrator-shared.d.mts +1 -1
  306. package/dist/services/session/testing/orchestrator-shared.mjs +1 -1
  307. package/dist/services/session/turns/namespace.d.mts +1 -1
  308. package/dist/services/session/turns/namespace.mjs +1 -1
  309. package/dist/services/session-editor/index.d.mts +1 -1
  310. package/dist/services/session-editor/index.mjs +1 -1
  311. package/dist/services/settings/index.d.mts +3 -3
  312. package/dist/services/settings/index.mjs +1 -1
  313. package/dist/services/settings/namespace.d.mts +4 -4
  314. package/dist/services/settings/namespace.mjs +1 -1
  315. package/dist/services/settings/storage/clients-namespace.d.mts +1 -1
  316. package/dist/services/settings/storage/clients-namespace.mjs +1 -1
  317. package/dist/services/settings/storage/index.d.mts +3 -3
  318. package/dist/services/settings/storage/index.mjs +1 -1
  319. package/dist/services/settings/storage/providers-namespace.d.mts +1 -1
  320. package/dist/services/settings/storage/providers-namespace.mjs +1 -1
  321. package/dist/services/subagent/index.d.mts +1 -1
  322. package/dist/services/subagent/index.mjs +1 -1
  323. package/dist/services/subagent-template/index.d.mts +2 -2
  324. package/dist/services/subagent-template/namespace.d.mts +1 -1
  325. package/dist/services/subagent-template/schemas.d.mts +1 -1
  326. package/dist/services/tool-approval/index.d.mts +1 -1
  327. package/dist/services/tool-approval/index.mjs +1 -1
  328. package/dist/services/tools/index.d.mts +1 -1
  329. package/dist/services/tools/index.mjs +1 -1
  330. package/dist/services/tray-menu/index.d.mts +3 -3
  331. package/dist/services/tray-menu/index.mjs +1 -1
  332. package/dist/services/tray-menu/namespace.d.mts +1 -1
  333. package/dist/services/tray-menu/schemas.d.mts +1 -1
  334. package/dist/services/turn/index.d.mts +1 -1
  335. package/dist/services/turn/namespace.d.mts +1 -1
  336. package/dist/services/workflow-transitions/index.d.mts +1 -1
  337. package/dist/services/workflow-transitions/index.mjs +1 -1
  338. package/dist/session-BOpTI79g.mjs +1 -0
  339. package/dist/session-CXOPk3yg.mjs +95 -0
  340. package/dist/{shared-BFVuCDPx.mjs → shared-B9AWRm9A.mjs} +1 -1
  341. package/dist/{skill-C1D51nhh.mjs → skill-DGNtc_ww.mjs} +1 -1
  342. package/dist/{src-xbmzokNe.mjs → src-BmSQ3rlz.mjs} +1 -1
  343. package/dist/storage/drizzle/client.d.mts +1 -1
  344. package/dist/storage/drizzle/client.mjs +1 -1
  345. package/dist/storage/drizzle/index.d.mts +41 -2
  346. package/dist/storage/drizzle/index.mjs +1 -1
  347. package/dist/storage/handlers/drizzle/index.d.mts +1 -1
  348. package/dist/storage/handlers/drizzle/index.mjs +1 -1
  349. package/dist/storage/handlers/index.d.mts +1 -1
  350. package/dist/storage/handlers/index.mjs +1 -1
  351. package/dist/tool-approval-service-BFDOFUGC.mjs +1 -0
  352. package/dist/{tools-DxwHox1a.mjs → tools-DWKWX3eV.mjs} +1 -1
  353. package/dist/{transition-C_Ka6b0-.d.mts → transition-D3zUBTPc.d.mts} +6 -6
  354. package/dist/{types-BNjPhj_a.d.mts → types-CtDGkyLx2.d.mts} +1 -1
  355. package/dist/types-Cwza95hS.mjs +1 -0
  356. package/dist/{types-CwvN4uN2.d.mts → types-DcxBYlPA.d.mts} +3018 -38
  357. package/dist/types-DnK6Wa_Y.d.mts +260 -0
  358. package/dist/{types-ClpEaoAm.d.mts → types-OKJCOjme.d.mts} +24 -4
  359. package/dist/ui-kernel/index.d.mts +1 -1
  360. package/dist/ui-kernel/pages/schemas.d.mts +1 -1
  361. package/dist/utils/index.d.mts +22 -1
  362. package/dist/utils/index.mjs +2 -2
  363. package/dist/utils/project-manifest.mjs +1 -1
  364. package/dist/{version-BfNnVAGr.mjs → version-BYeVh1pI.mjs} +1 -1
  365. package/dist/{view-builder-KYsPqV-5.d.mts → view-builder-B0j9p5C0.d.mts} +4 -4
  366. package/dist/{visibility-Dl1o2I01.mjs → visibility-DtDLRBdr.mjs} +1 -1
  367. package/dist/worker-node-CjuQb9hl.mjs +1 -0
  368. package/dist/{worker-node-DJ41Tr-F.mjs → worker-node-Dtf9ilsR.mjs} +1 -1
  369. package/dist/workflow-C4mck_NW.mjs +1 -0
  370. package/dist/workflow-engine/execution-attempt-repository.d.mts +1 -1
  371. package/dist/workflow-engine/index.d.mts +88 -88
  372. package/dist/workflow-engine/index.mjs +1 -1
  373. package/dist/workflow-engine/package.d.mts +1 -1
  374. package/dist/workflow-engine/package.mjs +1 -1
  375. package/dist/workflow-engine/provider-operation.d.mts +1 -1
  376. package/dist/workflow-engine/testing/index.d.mts +2 -2
  377. package/dist/workflow-engine/testing/index.mjs +1 -1
  378. package/dist/workflow-engine/testing/sqlite.d.mts +1 -1
  379. package/dist/workflow-engine/testing/sqlite.mjs +1 -1
  380. package/dist/workflow-engine/workflow-orchestrator.mjs +1 -1
  381. package/dist/{workflow-transitions-DM0fN_eP.mjs → workflow-transitions-c_VQbyV0.mjs} +1 -1
  382. package/dist/workflow-worker-aNbdgqml.mjs +1 -0
  383. package/package.json +18 -1
  384. package/dist/adapter-BkdJaOOG.mjs +0 -1
  385. package/dist/agent-namespace-D51PODFf.mjs +0 -1
  386. package/dist/attach-error-BSlc7JfL.mjs +0 -1
  387. package/dist/bus-BIj0_aG6.mjs +0 -1
  388. package/dist/capabilities-Bqckjh7G.mjs +0 -1
  389. package/dist/capability-service-CJHNkjvm.mjs +0 -1
  390. package/dist/event-DR8U9Efx.mjs +0 -1
  391. package/dist/framework-packages-D_2hBZ-p.mjs +0 -1
  392. package/dist/handlers-2yd00VEq.mjs +0 -57
  393. package/dist/identity-DC3Pk0ps.mjs +0 -1
  394. package/dist/index-OsbtyMgx2.d.mts +0 -98
  395. package/dist/json-value-C1RGgS0a.d.mts +0 -72
  396. package/dist/json-value-D57aJhVn.mjs +0 -1
  397. package/dist/model-ZH3L1dPW.mjs +0 -1
  398. package/dist/namespace-CxrOLeeP.mjs +0 -1
  399. package/dist/orchestrator-shared-CTCZc6Vl.mjs +0 -1
  400. package/dist/ownership-memory-handler-Bblp93YC.mjs +0 -1
  401. package/dist/schemas-BqD8LlQw.mjs +0 -1
  402. package/dist/schemas-CvHFbzdy.mjs +0 -1
  403. package/dist/schemas-DplrlAyR.mjs +0 -1
  404. package/dist/scoped-bus-ClwTWqX8.mjs +0 -1
  405. package/dist/session-BMy2kRpX.mjs +0 -90
  406. package/dist/session-Cipx34j6.mjs +0 -1
  407. package/dist/tool-approval-service-BVgN9Q1r.mjs +0 -1
  408. package/dist/worker-node-BDOYPEpi.mjs +0 -1
  409. package/dist/workflow-Hzc5jlnV.mjs +0 -1
  410. package/dist/workflow-worker-DARC7UZl.mjs +0 -1
  411. /package/dist/{adapter-auth-runtime-D9Lnl7cc.mjs → adapter-auth-runtime-DHHppU4f.mjs} +0 -0
  412. /package/dist/{adapter-binding-B-FBoCys.d.mts → adapter-binding-CATvmGuz.d.mts} +0 -0
  413. /package/dist/{ajv-L5fKxaia.mjs → ajv-krzJXh1X.mjs} +0 -0
  414. /package/dist/{attempt-record-codec-DaFLKR5C.mjs → attempt-record-codec-BYfYkj4M.mjs} +0 -0
  415. /package/dist/{await-trigger-ph1S0zVI.mjs → await-trigger-Bkg2BQfg.mjs} +0 -0
  416. /package/dist/{base-orchestrator-D9u4NyiM.d.mts → base-orchestrator-B4YW6z_Q.d.mts} +0 -0
  417. /package/dist/{index-Ol9RBB0W2.d.mts → capability-service-BW1-teFU.d.mts} +0 -0
  418. /package/dist/{client-4ihewPUm.d.mts → client-BG0WX5Vz.d.mts} +0 -0
  419. /package/dist/{client-binary-version-verifier-DJajc_Ff.mjs → client-binary-version-verifier-0lCKZOTg.mjs} +0 -0
  420. /package/dist/{client-binary-version-verifier-jDDZ64Ah.d.mts → client-binary-version-verifier-lcv83Hq3.d.mts} +0 -0
  421. /package/dist/{clients-namespace-DFWuUawf.d.mts → clients-namespace-DLAjOTTb.d.mts} +0 -0
  422. /package/dist/{config-namespace-D1kyZj0B.d.mts → config-namespace-CH7sJZ4f.d.mts} +0 -0
  423. /package/dist/{create-static-mount-9tnGpIeK.mjs → create-static-mount-DxuixuLZ.mjs} +0 -0
  424. /package/dist/{cross-spawn-BIgueAqr.mjs → cross-spawn-CZygZJMH.mjs} +0 -0
  425. /package/dist/{cursor-storage-ROWfiTh1.mjs → cursor-storage-bsc9lZKk.mjs} +0 -0
  426. /package/dist/{definition-DB-kKc0d.d.mts → definition-BrgzUuFk.d.mts} +0 -0
  427. /package/dist/{definitions-CF6YmEhL.mjs → definitions-CRpdnHYM.mjs} +0 -0
  428. /package/dist/{descriptor-to-package-BecVCopf.mjs → descriptor-to-package-CcjdoWP4.mjs} +0 -0
  429. /package/dist/{drizzle-CPv3vdTE.mjs → drizzle-Bzc-OGVI.mjs} +0 -0
  430. /package/dist/{esm-CBFWM8u_.mjs → esm-i-S5TW72.mjs} +0 -0
  431. /package/dist/{extension-context-DzB7ydM3.d.mts → extension-context-QmFuHdq5.d.mts} +0 -0
  432. /package/dist/{extension-namespace-B554RmCp.mjs → extension-namespace-QoTTwKPt.mjs} +0 -0
  433. /package/dist/{extension-package-provenance-Dh_-Z-tE.mjs → extension-package-provenance-aYrZuS4W.mjs} +0 -0
  434. /package/dist/{facet-DVsW12iF.mjs → facet-BnMh7Jyc.mjs} +0 -0
  435. /package/dist/{filesystem-service-Cm2RHKBa.d.mts → filesystem-service-ZJ43SbBi.d.mts} +0 -0
  436. /package/dist/{handler-Bqlk-6BY.mjs → handler-DF1fVDpf.mjs} +0 -0
  437. /package/dist/{host-k5yoyKHg.mjs → host-B-_ntOMH.mjs} +0 -0
  438. /package/dist/{index--atUpi5l2.d.mts → index-8NdPPzUh2.d.mts} +0 -0
  439. /package/dist/{index-DwLRZscE.d.mts → index-8y4hT9WL.d.mts} +0 -0
  440. /package/dist/{index-C7HcDpHE.d.mts → index-B-3I98nw.d.mts} +0 -0
  441. /package/dist/{index-BcvqDfcN.d.mts → index-B2Y1Wvbh.d.mts} +0 -0
  442. /package/dist/{index-BRCrFirq.d.mts → index-B4svZC6L.d.mts} +0 -0
  443. /package/dist/{index-CQuRTeRa.d.mts → index-B5dP8rj6.d.mts} +0 -0
  444. /package/dist/{index-CRmE88hi.d.mts → index-BC-6qNeo.d.mts} +0 -0
  445. /package/dist/{index-CxSSdIZz.d.mts → index-BFWvT0NG.d.mts} +0 -0
  446. /package/dist/{index-DP3o_13U.d.mts → index-BM56936c.d.mts} +0 -0
  447. /package/dist/{index-BVcQcphK.d.mts → index-BMRB9yhF.d.mts} +0 -0
  448. /package/dist/{index-bIe_57cL.d.mts → index-BTEJfzjE.d.mts} +0 -0
  449. /package/dist/{index-DgOfgjx3.d.mts → index-BfV8U4XX.d.mts} +0 -0
  450. /package/dist/{index-DBadVauL.d.mts → index-BmevAPME2.d.mts} +0 -0
  451. /package/dist/{index-OADt3xlS.d.mts → index-BuMsrli0.d.mts} +0 -0
  452. /package/dist/{index-BJAB-BW_.d.mts → index-C4V8Pmi4.d.mts} +0 -0
  453. /package/dist/{index-aoxdnhJ42.d.mts → index-CL0Jo1b92.d.mts} +0 -0
  454. /package/dist/{index-CvW9_SzR.d.mts → index-CVpaGijY.d.mts} +0 -0
  455. /package/dist/{index-E4SET1AA.d.mts → index-CmbkCxj-.d.mts} +0 -0
  456. /package/dist/{index-BgGe9WZz.d.mts → index-CqdMbYmR.d.mts} +0 -0
  457. /package/dist/{index-BQprJNA_.d.mts → index-D037TVsm.d.mts} +0 -0
  458. /package/dist/{index-BeENojSx2.d.mts → index-DgspOUa72.d.mts} +0 -0
  459. /package/dist/{index-42UdYStR.d.mts → index-Ek4y8M9J2.d.mts} +0 -0
  460. /package/dist/{index-Beo_Ik8-.d.mts → index-VzLAV0Yt.d.mts} +0 -0
  461. /package/dist/{index-BSbGB23v.d.mts → index-jxPncqWZ2.d.mts} +0 -0
  462. /package/dist/{index-Bqm0ahTQ.d.mts → index-kzIjbrS02.d.mts} +0 -0
  463. /package/dist/{index-BJMezANn.d.mts → index-l01zsChf.d.mts} +0 -0
  464. /package/dist/{index-CK3f0bAL.d.mts → index-pvX-BIpr2.d.mts} +0 -0
  465. /package/dist/{jsonl-transport-Bp_6pB2a.mjs → jsonl-transport-Cyyh5Wje.mjs} +0 -0
  466. /package/dist/{lib-Bwdd2m81.mjs → lib-BqV8hYtk.mjs} +0 -0
  467. /package/dist/{model-registry-yURX738J.mjs → model-registry-C9rFu3kV.mjs} +0 -0
  468. /package/dist/{model-registry-Y854mUml.mjs → model-registry-Cixxx2jv.mjs} +0 -0
  469. /package/dist/{modes-DmUsjHdV.mjs → modes-DwsJ3yVl.mjs} +0 -0
  470. /package/dist/{namespace-ByP1Iipi.d.mts → namespace-B0ftHlK3.d.mts} +0 -0
  471. /package/dist/{namespace-C1D77w7U.d.mts → namespace-BGRHcrmp.d.mts} +0 -0
  472. /package/dist/{namespace-Bi3CmYQy.d.mts → namespace-BUYDmd0r.d.mts} +0 -0
  473. /package/dist/{namespace-CkBbNFSU.mjs → namespace-BW3Bfu9h.mjs} +0 -0
  474. /package/dist/{namespace-DX1Ec15L.d.mts → namespace-BdAK0lD8.d.mts} +0 -0
  475. /package/dist/{namespace-Dgg0uoe6.d.mts → namespace-CPG6u60N.d.mts} +0 -0
  476. /package/dist/{namespace-BusZERU8.d.mts → namespace-CVFaZv8x.d.mts} +0 -0
  477. /package/dist/{namespace-yREpGJgG.d.mts → namespace-DBO1OzYB.d.mts} +0 -0
  478. /package/dist/{namespace-CrDlawqu.d.mts → namespace-DOezqDti.d.mts} +0 -0
  479. /package/dist/{namespace-CfIW0hpQ.mjs → namespace-DiwqpB-c.mjs} +0 -0
  480. /package/dist/{namespace-s2y_NFKf.d.mts → namespace-DqZweTbX.d.mts} +0 -0
  481. /package/dist/{namespace-CFjdyNXG.mjs → namespace-Du0accdE.mjs} +0 -0
  482. /package/dist/{namespace-BFqkUTJp.mjs → namespace-NXm_zvL1.mjs} +0 -0
  483. /package/dist/{namespace-B9FEGuEu.mjs → namespace-jVTsuZHX.mjs} +0 -0
  484. /package/dist/{namespace-DwZwGXgF.d.mts → namespace-l-HG1rLF.d.mts} +0 -0
  485. /package/dist/{namespace-DbNWsPFY.mjs → namespace-tjoxekmf.mjs} +0 -0
  486. /package/dist/{out-DrhwCgqM.mjs → out-8bOYN6EF.mjs} +0 -0
  487. /package/dist/{package-CBdvjyyZ.mjs → package-EGTn-Ng1.mjs} +0 -0
  488. /package/dist/{packages-FBv3fAOR.mjs → packages-Bp124-gx.mjs} +0 -0
  489. /package/dist/{packages-N3-2Kl-Y.d.mts → packages-CxPMEg8D.d.mts} +0 -0
  490. /package/dist/{platform-BrsMv_S3.mjs → platform-CxyYPrkf.mjs} +0 -0
  491. /package/dist/{provider-operation-DJ_TLZFf.d.mts → provider-operation-DbdyFwNm.d.mts} +0 -0
  492. /package/dist/{providers-CCcn4Ndp.mjs → providers-C-eekMxD.mjs} +0 -0
  493. /package/dist/{providers-namespace-DeJBh6MP.d.mts → providers-namespace-CfZKp-C0.d.mts} +0 -0
  494. /package/dist/{quick-lru-uwB0hP-y.mjs → quick-lru-CCEnf7y6.mjs} +0 -0
  495. /package/dist/{schema-jIapW8Kb.mjs → schema-C0opCPww.mjs} +0 -0
  496. /package/dist/{schema-introspection-C1wvklj9.mjs → schema-introspection-6-r_KEJQ.mjs} +0 -0
  497. /package/dist/{schemas-CeUI2i5j.d.mts → schemas-B50oWBuj.d.mts} +0 -0
  498. /package/dist/{schemas-CD0wOQxx.d.mts → schemas-B6Q-qdmn.d.mts} +0 -0
  499. /package/dist/{schemas-DgwEVUt-.mjs → schemas-B8hKbBwI.mjs} +0 -0
  500. /package/dist/{schemas-sMoRnBdZ.d.mts → schemas-BGvkTiCx.d.mts} +0 -0
  501. /package/dist/{schemas-BNdiVBWh.mjs → schemas-BivbWRkG.mjs} +0 -0
  502. /package/dist/{schemas-Cg-Kwp8c.d.mts → schemas-ChmQldVH.d.mts} +0 -0
  503. /package/dist/{schemas-VbB1FTxx.d.mts → schemas-D7ScxLrf.d.mts} +0 -0
  504. /package/dist/{schemas-Cv3rR9Sz.d.mts → schemas-Pe892GgN.d.mts} +0 -0
  505. /package/dist/{schemas-qA279_j_.d.mts → schemas-bfZNpl0B.d.mts} +0 -0
  506. /package/dist/{schemas-mLpOfMoN.mjs → schemas-scyC2tFF.mjs} +0 -0
  507. /package/dist/{semver-DTXuyLcK.mjs → semver-BI7kTNsY.mjs} +0 -0
  508. /package/dist/{server-lifecycle-DKx_fWlq.mjs → server-lifecycle-B_OZnoe-.mjs} +0 -0
  509. /package/dist/{server-lifecycle-C_8iKgat.d.mts → server-lifecycle-L8zja8t8.d.mts} +0 -0
  510. /package/dist/{session-lineage-D5E142LU.d.mts → session-lineage-bUkd3fqx.d.mts} +0 -0
  511. /package/dist/{shared-schemas-aahW97QW.mjs → shared-schemas-CQ6blrEW.mjs} +0 -0
  512. /package/dist/{src-DHqsl5Pg.mjs → src-BacfeiI4.mjs} +0 -0
  513. /package/dist/{storage-namespace-Dz2jsssp.mjs → storage-namespace-BZce8kkW.mjs} +0 -0
  514. /package/dist/{storage-namespace-Tf3P5yJ5.d.mts → storage-namespace-YmE8XCCL.d.mts} +0 -0
  515. /package/dist/{storage-namespace-definition-CDef0E20.mjs → storage-namespace-definition-Cca-zwXU.mjs} +0 -0
  516. /package/dist/{supports-color-i7OTnKcZ.mjs → supports-color-SV_FgSN2.mjs} +0 -0
  517. /package/dist/{telemetry-BvCBUjFg.mjs → telemetry-BqoC87F-.mjs} +0 -0
  518. /package/dist/{timeout-B0nYjLc8.mjs → timeout-DVlN2Zhy.mjs} +0 -0
  519. /package/dist/{tray-menu-service-Deo6yyP8.mjs → tray-menu-service-eVVxgPLc.mjs} +0 -0
  520. /package/dist/{types-xCdGghb2.d.mts → types-BlB23n4f.d.mts} +0 -0
  521. /package/dist/{types-CNS55jvt.d.mts → types-DdpSEmTO.d.mts} +0 -0
  522. /package/dist/{types-Ce6LL25v.d.mts → types-tyv0B605.d.mts} +0 -0
  523. /package/dist/{ui-config-BIyGzMNL.mjs → ui-config-B35GloSX.mjs} +0 -0
  524. /package/dist/{variant-B4uWdxW7.mjs → variant-Dwnge3J_.mjs} +0 -0
  525. /package/dist/{window-registry-CoBJq3u4.mjs → window-registry-CKiMJjId.mjs} +0 -0
  526. /package/dist/{window-registry-BLtVx3Iw.d.mts → window-registry-Pcf35cac.d.mts} +0 -0
  527. /package/dist/{zod-json-schema-BAGAFfCN.mjs → zod-json-schema-Dixc-B1T.mjs} +0 -0
@@ -1,3 +1,3 @@
1
- import { $i as WorkflowGateStatus, $n as JsonPatchOperation, $r as WorkflowFinalizationIntent, $t as WorkerContributionManifestSchema, Aa as WorkflowStationNodeSchema, Ai as WorkflowAutomationTriggerBindingSchema, An as parseArtifactRef, Ar as WorkflowCancelPayload, At as WorkLogDynamicNodeMaterialization, Bi as WorkflowDelegateRoleNodeSchema, Bn as ArtifactQuerySourceSchema, Br as WorkflowDelegateEconomicsSchema, Bt as WorkLogUsageSummary, C as WorkflowStateAuthoringDefinition, Ca as WorkflowSequenceNode, Ci as LoopGateOutcome, Cn as WorkflowNodeVisitor, Cr as StepRunnerPlatformDefaults, Ct as CronTriggerPayload, D as validateNoNestedLoops, Da as WorkflowStateDefinition, Di as WorkflowArtifactWriteDeclaration, Dn as WorkflowRunContextSource, Dr as TokenUsage, Dt as WorkflowTriggerDef, E as LoopGateHandler, Ea as WorkflowSourceLocationSchema, Ei as WorkflowArtifactBindingSchema, En as WorkflowRunContextSchema, Er as StepTelemetrySchema, Et as ExtractTriggerPayload, Fi as WorkflowDefinitionProvenanceSchema, Fn as WorkflowSchemas, Fr as WorkflowStepType, Ft as WorkLogFrameEntrySchema, Gi as WorkflowExecutionScope, Gn as ContextBundle, Gr as WorkflowDelegateResultFinalizationResponse, Gt as ExternalExecutionFrameCompletion, Hi as WorkflowDynamicRegionSchema, Hn as BusEventPublishTargetSchema, Hr as WorkflowDelegateResultFinalizationGatewayRequestSchema, Ht as CompleteExternalExecutionRequest, Ii as WorkflowDefinitionSchema, In as WorkflowSubjects, Ir as WorkflowStepTypeSchema, It as WorkLogGateEvent, Ji as WorkflowFrameStateSchema, Jn as ContextPublishTargetSchema, Jr as WorkflowDelegateToolObservation, Jt as ExternalExecutionFrameStartSchema, Ki as WorkflowExecutionScopeSchema, Kn as ContextBundleSchema, Kr as WorkflowDelegateResultFinalizationResponseSchema, Kt as ExternalExecutionFrameCompletionSchema, Li as WorkflowDelegateAgentNode, Ln as ArtifactPublishTarget, Lr as createStepCancelSubject, Lt as WorkLogGateEventSchema, Mi as WorkflowConditionSchema, Mn as WorkflowNamespace, Mr as WorkflowCancelSubject, Mt as WorkLogExecutionSummary, Ni as WorkflowDefinition, Nn as WorkflowProgressUpdate, Nr as WorkflowRunnerStepType, Nt as WorkLogExecutionSummarySchema, Oa as WorkflowStateDefinitionSchema, Oi as WorkflowArtifactWriteDeclarationSchema, On as WorkflowArtifactRef, Or as TokenUsageSchema, Ot as WorkLogArtifactWrite, Pi as WorkflowDefinitionProvenance, Pn as WorkflowProgressUpdateSchema, Pr as WorkflowRunnerStepTypeSchema, Pt as WorkLogFrameEntry, Qi as WorkflowGateNodeSchema, Qn as ResolvedContextEntrySchema, Qr as WorkflowFinalizationDeliveryResultSchema, Qt as WorkerContributionManifest, Ri as WorkflowDelegateAgentNodeSchema, Rn as ArtifactPublishTargetSchema, Rr as createWorkflowCancelSubject, Rt as WorkLogStats, S as WorkflowBuilder, Sa as WorkflowResolvedRoleSchema, Si as GateInstanceListQuerySchema, Sn as WalkRelationship, Sr as StepRunnerBusAuthSchema, St as CronAutomationTriggerParamsSchema, T as LoopGateContext, Ta as WorkflowSourceLocation, Ti as WorkflowArtifactBinding, Tn as WorkflowRunContext, Tr as StepTelemetry, Tt as DEFAULT_CRON_TIMEZONE, Ui as WorkflowExecution, Un as BusRequestSource, Ur as WorkflowDelegateResultFinalizationRequest, Ut as CompleteExternalExecutionRequestSchema, Vi as WorkflowDynamicRegion, Vn as BusEventPublishTarget, Vr as WorkflowDelegateResultFinalizationGatewayRequest, Vt as WorkLogUsageSummarySchema, Wi as WorkflowExecutionSchema, Wn as BusRequestSourceSchema, Wr as WorkflowDelegateResultFinalizationRequestSchema, Wt as EXTERNAL_EXECUTION_ID_PREFIX, Xi as WorkflowGateInstanceSchema, Xn as ContextSourceSchema, Xr as WorkflowFinalizationClaim, Xt as RegisterExternalExecutionRequestSchema, Yi as WorkflowGateInstance, Yn as ContextSource, Yr as WorkflowDelegateToolObservationSchema, Yt as RegisterExternalExecutionRequest, Zi as WorkflowGateNode, Zn as ResolvedContextEntry, Zr as WorkflowFinalizationClaimSchema, Zt as IWorkflowRunner, _ as LoopGateRegistration, _a as WorkflowParallelNode, _i as ExecutionStatus, _n as ProjectedWorkflowGraph, _r as StepRunConfig, _t as WorkflowStateContext, a as delegateToRole, aa as WorkflowListQuery, ai as createWorkflowDelegateResultFinalizerNamespace, an as WorkflowTriggerMode, ar as ExecutionLinkListQuerySchema, b as ParallelMode, ba as WorkflowResolvedAgentSchema, bi as ExecutionsByArtifactRefsQuerySchema, bn as projectWorkflowGraph, br as StepRunResultSchema, bt as BusEventWorkflowTrigger, c as iterateChain, ca as WorkflowLoopNodeSchema, ci as EXECUTIONS_BY_ARTIFACT_REFS_MAX_LIMIT_PER_REF, cn as WorkflowWorkerBusAuthSchema, cr as ExecutionLinkTypeSchema, ct as ArtifactUpdateOperation, d as AgentConfig, da as WorkflowNodeBaseSchema, di as EXECUTION_LIST_MAX_LIMIT, dn as WorkflowWorkerSource, dr as SpanStatus, dt as PreviousStepOutput, ea as WorkflowGateStatusSchema, ei as WorkflowFinalizationIntentSchema, en as WorkerRuntimeContext, er as JsonPatchOperationSchema, f as ArtifactBindingOptions, fa as WorkflowNodeSchema, fi as EXECUTION_LIST_MIN_LIMIT, fn as WorkflowWorkerSourceSchema, fr as SpanStatusSchema, ft as StationHandler, g as IterateOptions, ga as WorkflowParallelModeSchema, gi as ExecutionListQuerySchema, gn as ProjectedNodeRole, gr as StepCancelSubject, gt as WorkflowContextBase, h as GateOptions, ha as WorkflowParallelMode, hi as ExecutionListQuery, hn as ProjectedNode, hr as StepCancelPayloadSchema, ht as WorkflowContext, i as delegateToAgent, ia as WorkflowIterateNodeSchema, ii as WorkflowTerminalStatusSchema, in as WorkflowRunnerRunOptions, ir as ExecutionLinkListQuery, ji as WorkflowCondition, jn as serializeArtifactRef, jr as WorkflowCancelPayloadSchema, jt as WorkLogDynamicNodeMaterializationSchema, ka as WorkflowStationNode, ki as WorkflowAutomationTriggerBinding, kn as WorkflowArtifactRefSchema, kr as WORKFLOW_CANCELLED_REASON, kt as WorkLogArtifactWriteSchema, l as loop, la as WorkflowNode, li as EXECUTIONS_BY_ARTIFACT_REFS_MAX_REFS, ln as WorkflowWorkerConfig, lr as SpanRecord, lt as ArtifactUpdater, m as DefineWorkflowOptions, ma as WorkflowNodeTypeSchema, mi as ExecutionListCursorSchema, mn as ProjectedEdgeKind, mr as StepCancelPayload, mt as StepContext, n as defineWorkflowBundle, na as WorkflowIterateChainNodeSchema, ni as WorkflowFinalizerIdSchema, nn as WorkflowRunResultSchema, nr as WorkflowErrorCode, o as gate, oa as WorkflowListQuerySchema, oi as createWorkflowFinalizerNamespace, on as WorkflowTriggerModeSchema, or as ExecutionLinkSchema, ot as ArtifactContext, p as BuiltWorkflow, pa as WorkflowNodeType, pi as ExecutionListCursor, pn as ProjectedEdge, pr as IStepRunner, pt as StationStepContext, qi as WorkflowFrameState, qn as ContextPublishTarget, qr as WorkflowDelegateResultFinalizerIdSchema, qt as ExternalExecutionFrameStart, r as defineWorkflow, ra as WorkflowIterateNode, ri as WorkflowTerminalStatus, rn as WorkflowRunnerCompletion, rr as ExecutionLink, s as iterate, sa as WorkflowLoopNode, si as EXECUTIONS_BY_ARTIFACT_REFS_DEFAULT_LIMIT_PER_REF, sn as WorkflowWorkerBusAuth, sr as ExecutionLinkType, st as ArtifactPatch, t as WorkflowBundle, ta as WorkflowIterateChainNode, ti as WorkflowFinalizerId, tn as WorkflowRunResult, tr as WorkflowError, u as station, ua as WorkflowNodeBase, ui as EXECUTION_LIST_DEFAULT_LIMIT, un as WorkflowWorkerConfigSchema, ur as SpanRecordSchema, ut as IterateHandler, v as LoopOptions, va as WorkflowParallelNodeSchema, vi as ExecutionStatusSchema, vn as WorkflowDefinitionPath, vr as StepRunConfigSchema, vt as AutomationWorkflowTrigger, w as WorkflowZodSchemas, wa as WorkflowSequenceNodeSchema, wi as LoopGateOutcomeSchema, wn as walkWorkflowDefinition, wr as StepRunnerPlatformDefaultsSchema, wt as CronWorkflowTrigger, x as ParallelOptions, xa as WorkflowResolvedRole, xi as GateInstanceListQuery, xn as WalkContext, xr as StepRunnerBusAuth, xt as CRON_AUTOMATION_TRIGGER_KIND, y as NodeOptions, ya as WorkflowResolvedAgent, yi as ExecutionsByArtifactRefsQuery, yn as WorkflowDefinitionPathSegment, yr as StepRunResult, yt as BUS_EVENT_AUTOMATION_TRIGGER_KIND, zi as WorkflowDelegateRoleNode, zn as ArtifactQuerySource, zr as WorkflowDelegateEconomics, zt as WorkLogStatsSchema } from "../../index-1UcQWrZy.mjs";
2
- import { _ as StationNodeBlockRun, a as TransitionActionInvocation, b as WorkflowStepBlock, c as TransitionConditionSchema, d as TransitionEventTypeSchema, f as TransitionRuleDefinition, g as RegisteredStepBlock, h as DelegateRoleNodeBlockRun, i as TransitionActionHandler, l as TransitionEvaluationContext, m as DelegateAgentNodeBlockRun, n as ExtensionTransitionRulesContribution, o as TransitionActionInvocationSchema, p as TransitionRuleDefinitionSchema, r as TransitionActionFactory, s as TransitionCondition, t as ExtensionTransitionActionsContribution, u as TransitionEventType, v as WorkflowBlockCollection, x as WorkflowStepBlockRun, y as WorkflowBlockMetadata } from "../../transition-C_Ka6b0-.mjs";
1
+ import { $i as WorkflowGateStatus, $n as JsonPatchOperation, $r as WorkflowFinalizationIntent, $t as WorkerContributionManifestSchema, Aa as WorkflowStationNodeSchema, Ai as WorkflowAutomationTriggerBindingSchema, An as parseArtifactRef, Ar as WorkflowCancelPayload, At as WorkLogDynamicNodeMaterialization, Bi as WorkflowDelegateRoleNodeSchema, Bn as ArtifactQuerySourceSchema, Br as WorkflowDelegateEconomicsSchema, Bt as WorkLogUsageSummary, C as WorkflowStateAuthoringDefinition, Ca as WorkflowSequenceNode, Ci as LoopGateOutcome, Cn as WorkflowNodeVisitor, Cr as StepRunnerPlatformDefaults, Ct as CronTriggerPayload, D as validateNoNestedLoops, Da as WorkflowStateDefinition, Di as WorkflowArtifactWriteDeclaration, Dn as WorkflowRunContextSource, Dr as TokenUsage, Dt as WorkflowTriggerDef, E as LoopGateHandler, Ea as WorkflowSourceLocationSchema, Ei as WorkflowArtifactBindingSchema, En as WorkflowRunContextSchema, Er as StepTelemetrySchema, Et as ExtractTriggerPayload, Fi as WorkflowDefinitionProvenanceSchema, Fn as WorkflowSchemas, Fr as WorkflowStepType, Ft as WorkLogFrameEntrySchema, Gi as WorkflowExecutionScope, Gn as ContextBundle, Gr as WorkflowDelegateResultFinalizationResponse, Gt as ExternalExecutionFrameCompletion, Hi as WorkflowDynamicRegionSchema, Hn as BusEventPublishTargetSchema, Hr as WorkflowDelegateResultFinalizationGatewayRequestSchema, Ht as CompleteExternalExecutionRequest, Ii as WorkflowDefinitionSchema, In as WorkflowSubjects, Ir as WorkflowStepTypeSchema, It as WorkLogGateEvent, Ji as WorkflowFrameStateSchema, Jn as ContextPublishTargetSchema, Jr as WorkflowDelegateToolObservation, Jt as ExternalExecutionFrameStartSchema, Ki as WorkflowExecutionScopeSchema, Kn as ContextBundleSchema, Kr as WorkflowDelegateResultFinalizationResponseSchema, Kt as ExternalExecutionFrameCompletionSchema, Li as WorkflowDelegateAgentNode, Ln as ArtifactPublishTarget, Lr as createStepCancelSubject, Lt as WorkLogGateEventSchema, Mi as WorkflowConditionSchema, Mn as WorkflowNamespace, Mr as WorkflowCancelSubject, Mt as WorkLogExecutionSummary, Ni as WorkflowDefinition, Nn as WorkflowProgressUpdate, Nr as WorkflowRunnerStepType, Nt as WorkLogExecutionSummarySchema, Oa as WorkflowStateDefinitionSchema, Oi as WorkflowArtifactWriteDeclarationSchema, On as WorkflowArtifactRef, Or as TokenUsageSchema, Ot as WorkLogArtifactWrite, Pi as WorkflowDefinitionProvenance, Pn as WorkflowProgressUpdateSchema, Pr as WorkflowRunnerStepTypeSchema, Pt as WorkLogFrameEntry, Qi as WorkflowGateNodeSchema, Qn as ResolvedContextEntrySchema, Qr as WorkflowFinalizationDeliveryResultSchema, Qt as WorkerContributionManifest, Ri as WorkflowDelegateAgentNodeSchema, Rn as ArtifactPublishTargetSchema, Rr as createWorkflowCancelSubject, Rt as WorkLogStats, S as WorkflowBuilder, Sa as WorkflowResolvedRoleSchema, Si as GateInstanceListQuerySchema, Sn as WalkRelationship, Sr as StepRunnerBusAuthSchema, St as CronAutomationTriggerParamsSchema, T as LoopGateContext, Ta as WorkflowSourceLocation, Ti as WorkflowArtifactBinding, Tn as WorkflowRunContext, Tr as StepTelemetry, Tt as DEFAULT_CRON_TIMEZONE, Ui as WorkflowExecution, Un as BusRequestSource, Ur as WorkflowDelegateResultFinalizationRequest, Ut as CompleteExternalExecutionRequestSchema, Vi as WorkflowDynamicRegion, Vn as BusEventPublishTarget, Vr as WorkflowDelegateResultFinalizationGatewayRequest, Vt as WorkLogUsageSummarySchema, Wi as WorkflowExecutionSchema, Wn as BusRequestSourceSchema, Wr as WorkflowDelegateResultFinalizationRequestSchema, Wt as EXTERNAL_EXECUTION_ID_PREFIX, Xi as WorkflowGateInstanceSchema, Xn as ContextSourceSchema, Xr as WorkflowFinalizationClaim, Xt as RegisterExternalExecutionRequestSchema, Yi as WorkflowGateInstance, Yn as ContextSource, Yr as WorkflowDelegateToolObservationSchema, Yt as RegisterExternalExecutionRequest, Zi as WorkflowGateNode, Zn as ResolvedContextEntry, Zr as WorkflowFinalizationClaimSchema, Zt as IWorkflowRunner, _ as LoopGateRegistration, _a as WorkflowParallelNode, _i as ExecutionStatus, _n as ProjectedWorkflowGraph, _r as StepRunConfig, _t as WorkflowStateContext, a as delegateToRole, aa as WorkflowListQuery, ai as createWorkflowDelegateResultFinalizerNamespace, an as WorkflowTriggerMode, ar as ExecutionLinkListQuerySchema, b as ParallelMode, ba as WorkflowResolvedAgentSchema, bi as ExecutionsByArtifactRefsQuerySchema, bn as projectWorkflowGraph, br as StepRunResultSchema, bt as BusEventWorkflowTrigger, c as iterateChain, ca as WorkflowLoopNodeSchema, ci as EXECUTIONS_BY_ARTIFACT_REFS_MAX_LIMIT_PER_REF, cn as WorkflowWorkerBusAuthSchema, cr as ExecutionLinkTypeSchema, ct as ArtifactUpdateOperation, d as AgentConfig, da as WorkflowNodeBaseSchema, di as EXECUTION_LIST_MAX_LIMIT, dn as WorkflowWorkerSource, dr as SpanStatus, dt as PreviousStepOutput, ea as WorkflowGateStatusSchema, ei as WorkflowFinalizationIntentSchema, en as WorkerRuntimeContext, er as JsonPatchOperationSchema, f as ArtifactBindingOptions, fa as WorkflowNodeSchema, fi as EXECUTION_LIST_MIN_LIMIT, fn as WorkflowWorkerSourceSchema, fr as SpanStatusSchema, ft as StationHandler, g as IterateOptions, ga as WorkflowParallelModeSchema, gi as ExecutionListQuerySchema, gn as ProjectedNodeRole, gr as StepCancelSubject, gt as WorkflowContextBase, h as GateOptions, ha as WorkflowParallelMode, hi as ExecutionListQuery, hn as ProjectedNode, hr as StepCancelPayloadSchema, ht as WorkflowContext, i as delegateToAgent, ia as WorkflowIterateNodeSchema, ii as WorkflowTerminalStatusSchema, in as WorkflowRunnerRunOptions, ir as ExecutionLinkListQuery, ji as WorkflowCondition, jn as serializeArtifactRef, jr as WorkflowCancelPayloadSchema, jt as WorkLogDynamicNodeMaterializationSchema, ka as WorkflowStationNode, ki as WorkflowAutomationTriggerBinding, kn as WorkflowArtifactRefSchema, kr as WORKFLOW_CANCELLED_REASON, kt as WorkLogArtifactWriteSchema, l as loop, la as WorkflowNode, li as EXECUTIONS_BY_ARTIFACT_REFS_MAX_REFS, ln as WorkflowWorkerConfig, lr as SpanRecord, lt as ArtifactUpdater, m as DefineWorkflowOptions, ma as WorkflowNodeTypeSchema, mi as ExecutionListCursorSchema, mn as ProjectedEdgeKind, mr as StepCancelPayload, mt as StepContext, n as defineWorkflowBundle, na as WorkflowIterateChainNodeSchema, ni as WorkflowFinalizerIdSchema, nn as WorkflowRunResultSchema, nr as WorkflowErrorCode, o as gate, oa as WorkflowListQuerySchema, oi as createWorkflowFinalizerNamespace, on as WorkflowTriggerModeSchema, or as ExecutionLinkSchema, ot as ArtifactContext, p as BuiltWorkflow, pa as WorkflowNodeType, pi as ExecutionListCursor, pn as ProjectedEdge, pr as IStepRunner, pt as StationStepContext, qi as WorkflowFrameState, qn as ContextPublishTarget, qr as WorkflowDelegateResultFinalizerIdSchema, qt as ExternalExecutionFrameStart, r as defineWorkflow, ra as WorkflowIterateNode, ri as WorkflowTerminalStatus, rn as WorkflowRunnerCompletion, rr as ExecutionLink, s as iterate, sa as WorkflowLoopNode, si as EXECUTIONS_BY_ARTIFACT_REFS_DEFAULT_LIMIT_PER_REF, sn as WorkflowWorkerBusAuth, sr as ExecutionLinkType, st as ArtifactPatch, t as WorkflowBundle, ta as WorkflowIterateChainNode, ti as WorkflowFinalizerId, tn as WorkflowRunResult, tr as WorkflowError, u as station, ua as WorkflowNodeBase, ui as EXECUTION_LIST_DEFAULT_LIMIT, un as WorkflowWorkerConfigSchema, ur as SpanRecordSchema, ut as IterateHandler, v as LoopOptions, va as WorkflowParallelNodeSchema, vi as ExecutionStatusSchema, vn as WorkflowDefinitionPath, vr as StepRunConfigSchema, vt as AutomationWorkflowTrigger, w as WorkflowZodSchemas, wa as WorkflowSequenceNodeSchema, wi as LoopGateOutcomeSchema, wn as walkWorkflowDefinition, wr as StepRunnerPlatformDefaultsSchema, wt as CronWorkflowTrigger, x as ParallelOptions, xa as WorkflowResolvedRole, xi as GateInstanceListQuery, xn as WalkContext, xr as StepRunnerBusAuth, xt as CRON_AUTOMATION_TRIGGER_KIND, y as NodeOptions, ya as WorkflowResolvedAgent, yi as ExecutionsByArtifactRefsQuery, yn as WorkflowDefinitionPathSegment, yr as StepRunResult, yt as BUS_EVENT_AUTOMATION_TRIGGER_KIND, zi as WorkflowDelegateRoleNode, zn as ArtifactQuerySource, zr as WorkflowDelegateEconomics, zt as WorkLogStatsSchema } from "../../index-BUwDmh1I.mjs";
2
+ import { _ as StationNodeBlockRun, a as TransitionActionInvocation, b as WorkflowStepBlock, c as TransitionConditionSchema, d as TransitionEventTypeSchema, f as TransitionRuleDefinition, g as RegisteredStepBlock, h as DelegateRoleNodeBlockRun, i as TransitionActionHandler, l as TransitionEvaluationContext, m as DelegateAgentNodeBlockRun, n as ExtensionTransitionRulesContribution, o as TransitionActionInvocationSchema, p as TransitionRuleDefinitionSchema, r as TransitionActionFactory, s as TransitionCondition, t as ExtensionTransitionActionsContribution, u as TransitionEventType, v as WorkflowBlockCollection, x as WorkflowStepBlockRun, y as WorkflowBlockMetadata } from "../../transition-D3zUBTPc.mjs";
3
3
  export { AgentConfig, ArtifactBindingOptions, ArtifactContext, ArtifactPatch, ArtifactPublishTarget, ArtifactPublishTargetSchema, ArtifactQuerySource, ArtifactQuerySourceSchema, ArtifactUpdateOperation, ArtifactUpdater, AutomationWorkflowTrigger, BUS_EVENT_AUTOMATION_TRIGGER_KIND, BuiltWorkflow, BusEventPublishTarget, BusEventPublishTargetSchema, BusEventWorkflowTrigger, BusRequestSource, BusRequestSourceSchema, CRON_AUTOMATION_TRIGGER_KIND, CompleteExternalExecutionRequest, CompleteExternalExecutionRequestSchema, ContextBundle, ContextBundleSchema, ContextPublishTarget, ContextPublishTargetSchema, ContextSource, ContextSourceSchema, CronAutomationTriggerParamsSchema, CronTriggerPayload, CronWorkflowTrigger, DEFAULT_CRON_TIMEZONE, DefineWorkflowOptions, DelegateAgentNodeBlockRun, DelegateRoleNodeBlockRun, EXECUTIONS_BY_ARTIFACT_REFS_DEFAULT_LIMIT_PER_REF, EXECUTIONS_BY_ARTIFACT_REFS_MAX_LIMIT_PER_REF, EXECUTIONS_BY_ARTIFACT_REFS_MAX_REFS, EXECUTION_LIST_DEFAULT_LIMIT, EXECUTION_LIST_MAX_LIMIT, EXECUTION_LIST_MIN_LIMIT, EXTERNAL_EXECUTION_ID_PREFIX, ExecutionLink, ExecutionLinkListQuery, ExecutionLinkListQuerySchema, ExecutionLinkSchema, ExecutionLinkType, ExecutionLinkTypeSchema, ExecutionListCursor, ExecutionListCursorSchema, ExecutionListQuery, ExecutionListQuerySchema, ExecutionStatus, ExecutionStatusSchema, ExecutionsByArtifactRefsQuery, ExecutionsByArtifactRefsQuerySchema, ExtensionTransitionActionsContribution, ExtensionTransitionRulesContribution, ExternalExecutionFrameCompletion, ExternalExecutionFrameCompletionSchema, ExternalExecutionFrameStart, ExternalExecutionFrameStartSchema, ExtractTriggerPayload, GateInstanceListQuery, GateInstanceListQuerySchema, GateOptions, IStepRunner, IWorkflowRunner, IterateHandler, IterateOptions, JsonPatchOperation, JsonPatchOperationSchema, LoopGateContext, LoopGateHandler, LoopGateOutcome, LoopGateOutcomeSchema, LoopGateRegistration, LoopOptions, NodeOptions, ParallelMode, ParallelOptions, PreviousStepOutput, ProjectedEdge, ProjectedEdgeKind, ProjectedNode, ProjectedNodeRole, ProjectedWorkflowGraph, RegisterExternalExecutionRequest, RegisterExternalExecutionRequestSchema, RegisteredStepBlock, ResolvedContextEntry, ResolvedContextEntrySchema, SpanRecord, SpanRecordSchema, SpanStatus, SpanStatusSchema, StationHandler, StationNodeBlockRun, StationStepContext, StepCancelPayload, StepCancelPayloadSchema, StepCancelSubject, StepContext, StepRunConfig, StepRunConfigSchema, StepRunResult, StepRunResultSchema, StepRunnerBusAuth, StepRunnerBusAuthSchema, StepRunnerPlatformDefaults, StepRunnerPlatformDefaultsSchema, StepTelemetry, StepTelemetrySchema, TokenUsage, TokenUsageSchema, TransitionActionFactory, TransitionActionHandler, TransitionActionInvocation, TransitionActionInvocationSchema, TransitionCondition, TransitionConditionSchema, TransitionEvaluationContext, TransitionEventType, TransitionEventTypeSchema, TransitionRuleDefinition, TransitionRuleDefinitionSchema, WORKFLOW_CANCELLED_REASON, WalkContext, WalkRelationship, WorkLogArtifactWrite, WorkLogArtifactWriteSchema, WorkLogDynamicNodeMaterialization, WorkLogDynamicNodeMaterializationSchema, WorkLogExecutionSummary, WorkLogExecutionSummarySchema, WorkLogFrameEntry, WorkLogFrameEntrySchema, WorkLogGateEvent, WorkLogGateEventSchema, WorkLogStats, WorkLogStatsSchema, WorkLogUsageSummary, WorkLogUsageSummarySchema, WorkerContributionManifest, WorkerContributionManifestSchema, WorkerRuntimeContext, WorkflowArtifactBinding, WorkflowArtifactBindingSchema, WorkflowArtifactRef, WorkflowArtifactRefSchema, WorkflowArtifactWriteDeclaration, WorkflowArtifactWriteDeclarationSchema, WorkflowAutomationTriggerBinding, WorkflowAutomationTriggerBindingSchema, WorkflowBlockCollection, WorkflowBlockMetadata, WorkflowBuilder, WorkflowBundle, WorkflowCancelPayload, WorkflowCancelPayloadSchema, WorkflowCancelSubject, WorkflowCondition, WorkflowConditionSchema, WorkflowContext, WorkflowContextBase, WorkflowDefinition, WorkflowDefinitionPath, WorkflowDefinitionPathSegment, WorkflowDefinitionProvenance, WorkflowDefinitionProvenanceSchema, WorkflowDefinitionSchema, WorkflowDelegateAgentNode, WorkflowDelegateAgentNodeSchema, WorkflowDelegateEconomics, WorkflowDelegateEconomicsSchema, WorkflowDelegateResultFinalizationGatewayRequest, WorkflowDelegateResultFinalizationGatewayRequestSchema, WorkflowDelegateResultFinalizationRequest, WorkflowDelegateResultFinalizationRequestSchema, WorkflowDelegateResultFinalizationResponse, WorkflowDelegateResultFinalizationResponseSchema, WorkflowDelegateResultFinalizerIdSchema, WorkflowDelegateRoleNode, WorkflowDelegateRoleNodeSchema, WorkflowDelegateToolObservation, WorkflowDelegateToolObservationSchema, WorkflowDynamicRegion, WorkflowDynamicRegionSchema, WorkflowError, WorkflowErrorCode, WorkflowErrorCode as WorkflowErrorCodeType, WorkflowExecution, WorkflowExecutionSchema, WorkflowExecutionScope, WorkflowExecutionScopeSchema, WorkflowFinalizationClaim, WorkflowFinalizationClaimSchema, WorkflowFinalizationDeliveryResultSchema, WorkflowFinalizationIntent, WorkflowFinalizationIntentSchema, WorkflowFinalizerId, WorkflowFinalizerIdSchema, WorkflowFrameState, WorkflowFrameStateSchema, WorkflowGateInstance, WorkflowGateInstanceSchema, WorkflowGateNode, WorkflowGateNodeSchema, WorkflowGateStatus, WorkflowGateStatusSchema, WorkflowIterateChainNode, WorkflowIterateChainNodeSchema, WorkflowIterateNode, WorkflowIterateNodeSchema, WorkflowListQuery, WorkflowListQuerySchema, WorkflowLoopNode, WorkflowLoopNodeSchema, WorkflowNamespace, WorkflowNode, WorkflowNodeBase, WorkflowNodeBaseSchema, WorkflowNodeSchema, WorkflowNodeType, WorkflowNodeTypeSchema, WorkflowNodeVisitor, WorkflowParallelMode, WorkflowParallelModeSchema, WorkflowParallelNode, WorkflowParallelNodeSchema, WorkflowProgressUpdate, WorkflowProgressUpdateSchema, WorkflowResolvedAgent, WorkflowResolvedAgentSchema, WorkflowResolvedRole, WorkflowResolvedRoleSchema, WorkflowRunContext, WorkflowRunContextSchema, WorkflowRunContextSource, WorkflowRunResult, WorkflowRunResultSchema, WorkflowRunnerCompletion, WorkflowRunnerRunOptions, WorkflowRunnerStepType, WorkflowRunnerStepTypeSchema, WorkflowSchemas, WorkflowSequenceNode, WorkflowSequenceNodeSchema, WorkflowSourceLocation, WorkflowSourceLocationSchema, WorkflowStateAuthoringDefinition, WorkflowStateContext, WorkflowStateDefinition, WorkflowStateDefinitionSchema, WorkflowStationNode, WorkflowStationNodeSchema, WorkflowStepBlock, WorkflowStepBlockRun, WorkflowStepType, WorkflowStepTypeSchema, WorkflowSubjects, WorkflowTerminalStatus, WorkflowTerminalStatusSchema, WorkflowTriggerDef, WorkflowTriggerMode, WorkflowTriggerModeSchema, WorkflowWorkerBusAuth, WorkflowWorkerBusAuthSchema, WorkflowWorkerConfig, WorkflowWorkerConfigSchema, WorkflowWorkerSource, WorkflowWorkerSourceSchema, WorkflowZodSchemas, createStepCancelSubject, createWorkflowCancelSubject, createWorkflowDelegateResultFinalizerNamespace, createWorkflowFinalizerNamespace, defineWorkflow, defineWorkflowBundle, delegateToAgent, delegateToRole, gate, iterate, iterateChain, loop, parseArtifactRef, projectWorkflowGraph, serializeArtifactRef, station, validateNoNestedLoops, walkWorkflowDefinition };
@@ -1 +1 @@
1
- import{$ as e,$t as t,A as n,At as r,B as i,Bt as a,C as o,Cn as s,Ct as c,D as l,Dt as u,E as d,Et as f,F as p,Ft as m,G as h,Gt as g,H as _,Ht as v,I as y,It as b,J as x,Jt as S,K as C,Kt as w,L as T,Lt as E,M as D,Mt as O,N as k,Nt as A,O as j,Ot as M,P as N,Pt as P,Q as F,Qt as I,R as L,Rt as R,S as z,Sn as B,St as V,T as H,Tn as U,Tt as W,U as G,Ut as K,V as q,Vt as J,W as Y,Wt as X,X as Z,Xt as Q,Y as $,Yt as ee,Z as te,Zt as ne,_ as re,_n as ie,_t as ae,a as oe,an as se,at as ce,b as le,bn as ue,bt as de,c as fe,cn as pe,ct as me,d as he,dn as ge,dt as _e,en as ve,et as ye,f as be,fn as xe,ft as Se,g as Ce,gn as we,gt as Te,h as Ee,hn as De,ht as Oe,i as ke,in as Ae,it as je,j as Me,jt as Ne,k as Pe,kt as Fe,l as Ie,ln as Le,lt as Re,m as ze,mn as Be,mt as Ve,n as He,nn as Ue,nt as We,o as Ge,on as Ke,ot as qe,p as Je,pn as Ye,pt as Xe,q as Ze,qt as Qe,r as $e,rn as et,rt as tt,s as nt,sn as rt,st as it,t as at,tn as ot,tt as st,u as ct,un as lt,ut,v as dt,vn as ft,vt as pt,w as mt,wn as ht,wt as gt,x as _t,xn as vt,xt as yt,y as bt,yn as xt,yt as St,z as Ct,zt as wt}from"../../workflow-Hzc5jlnV.mjs";export{Ze as ArtifactPublishTargetSchema,x as ArtifactQuerySourceSchema,Ee as AutomationWorkflowTrigger,Ce as BUS_EVENT_AUTOMATION_TRIGGER_KIND,$ as BusEventPublishTargetSchema,re as BusEventWorkflowTrigger,Z as BusRequestSourceSchema,dt as CRON_AUTOMATION_TRIGGER_KIND,j as CompleteExternalExecutionRequestSchema,te as ContextBundleSchema,F as ContextPublishTargetSchema,e as ContextSourceSchema,bt as CronAutomationTriggerParamsSchema,le as CronWorkflowTrigger,_t as DEFAULT_CRON_TIMEZONE,V as EXECUTIONS_BY_ARTIFACT_REFS_DEFAULT_LIMIT_PER_REF,c as EXECUTIONS_BY_ARTIFACT_REFS_MAX_LIMIT_PER_REF,gt as EXECUTIONS_BY_ARTIFACT_REFS_MAX_REFS,W as EXECUTION_LIST_DEFAULT_LIMIT,f as EXECUTION_LIST_MAX_LIMIT,u as EXECUTION_LIST_MIN_LIMIT,Pe as EXTERNAL_EXECUTION_ID_PREFIX,je as ExecutionLinkListQuerySchema,ce as ExecutionLinkSchema,qe as ExecutionLinkTypeSchema,M as ExecutionListCursorSchema,Fe as ExecutionListQuerySchema,r as ExecutionStatusSchema,Ne as ExecutionsByArtifactRefsQuerySchema,n as ExternalExecutionFrameCompletionSchema,Me as ExternalExecutionFrameStartSchema,O as GateInstanceListQuerySchema,st as JsonPatchOperationSchema,A as LoopGateOutcomeSchema,D as RegisterExternalExecutionRequestSchema,ye as ResolvedContextEntrySchema,it as SpanRecordSchema,me as SpanStatusSchema,Re as StepCancelPayloadSchema,ut as StepRunConfigSchema,_e as StepRunResultSchema,Se as StepRunnerBusAuthSchema,Xe as StepRunnerPlatformDefaultsSchema,Ve as StepTelemetrySchema,Oe as TokenUsageSchema,at as TransitionActionInvocationSchema,He as TransitionConditionSchema,$e as TransitionEventTypeSchema,ke as TransitionRuleDefinitionSchema,Te as WORKFLOW_CANCELLED_REASON,k as WorkLogArtifactWriteSchema,N as WorkLogDynamicNodeMaterializationSchema,p as WorkLogExecutionSummarySchema,y as WorkLogFrameEntrySchema,T as WorkLogGateEventSchema,L as WorkLogStatsSchema,Ct as WorkLogUsageSummarySchema,q as WorkerContributionManifestSchema,P as WorkflowArtifactBindingSchema,s as WorkflowArtifactRefSchema,m as WorkflowArtifactWriteDeclarationSchema,b as WorkflowAutomationTriggerBindingSchema,ae as WorkflowCancelPayloadSchema,E as WorkflowConditionSchema,R as WorkflowDefinitionProvenanceSchema,wt as WorkflowDefinitionSchema,a as WorkflowDelegateAgentNodeSchema,lt as WorkflowDelegateEconomicsSchema,ge as WorkflowDelegateResultFinalizationGatewayRequestSchema,xe as WorkflowDelegateResultFinalizationRequestSchema,Ye as WorkflowDelegateResultFinalizationResponseSchema,Be as WorkflowDelegateResultFinalizerIdSchema,J as WorkflowDelegateRoleNodeSchema,De as WorkflowDelegateToolObservationSchema,v as WorkflowDynamicRegionSchema,We as WorkflowError,tt as WorkflowErrorCode,K as WorkflowExecutionSchema,X as WorkflowExecutionScopeSchema,we as WorkflowFinalizationClaimSchema,ie as WorkflowFinalizationDeliveryResultSchema,ft as WorkflowFinalizationIntentSchema,xt as WorkflowFinalizerIdSchema,g as WorkflowFrameStateSchema,w as WorkflowGateInstanceSchema,Qe as WorkflowGateNodeSchema,S as WorkflowGateStatusSchema,ee as WorkflowIterateChainNodeSchema,Q as WorkflowIterateNodeSchema,ne as WorkflowListQuerySchema,I as WorkflowLoopNodeSchema,mt as WorkflowNamespace,t as WorkflowNodeBaseSchema,ve as WorkflowNodeSchema,ot as WorkflowNodeTypeSchema,Ue as WorkflowParallelModeSchema,et as WorkflowParallelNodeSchema,H as WorkflowProgressUpdateSchema,Ae as WorkflowResolvedAgentSchema,se as WorkflowResolvedRoleSchema,i as WorkflowRunContextSchema,_ as WorkflowRunResultSchema,pt as WorkflowRunnerStepTypeSchema,d as WorkflowSchemas,Ke as WorkflowSequenceNodeSchema,rt as WorkflowSourceLocationSchema,pe as WorkflowStateDefinitionSchema,Le as WorkflowStationNodeSchema,St as WorkflowStepTypeSchema,l as WorkflowSubjects,ue as WorkflowTerminalStatusSchema,G as WorkflowTriggerModeSchema,Y as WorkflowWorkerBusAuthSchema,h as WorkflowWorkerConfigSchema,C as WorkflowWorkerSourceSchema,de as createStepCancelSubject,yt as createWorkflowCancelSubject,vt as createWorkflowDelegateResultFinalizerNamespace,B as createWorkflowFinalizerNamespace,Ge as defineWorkflow,oe as defineWorkflowBundle,nt as delegateToAgent,fe as delegateToRole,Ie as gate,ct as iterate,he as iterateChain,be as loop,ht as parseArtifactRef,z as projectWorkflowGraph,U as serializeArtifactRef,Je as station,ze as validateNoNestedLoops,o as walkWorkflowDefinition};
1
+ import{$ as e,$t as t,A as n,At as r,B as i,Bt as a,C as o,Cn as s,Ct as c,D as l,Dt as u,E as d,Et as f,F as p,Ft as m,G as h,Gt as g,H as _,Ht as v,I as y,It as b,J as x,Jt as S,K as C,Kt as w,L as T,Lt as E,M as D,Mt as O,N as k,Nt as A,O as j,Ot as M,P as N,Pt as P,Q as F,Qt as I,R as L,Rt as R,S as z,Sn as B,St as V,T as H,Tn as U,Tt as W,U as G,Ut as K,V as q,Vt as J,W as Y,Wt as X,X as Z,Xt as Q,Y as $,Yt as ee,Z as te,Zt as ne,_ as re,_n as ie,_t as ae,a as oe,an as se,at as ce,b as le,bn as ue,bt as de,c as fe,cn as pe,ct as me,d as he,dn as ge,dt as _e,en as ve,et as ye,f as be,fn as xe,ft as Se,g as Ce,gn as we,gt as Te,h as Ee,hn as De,ht as Oe,i as ke,in as Ae,it as je,j as Me,jt as Ne,k as Pe,kt as Fe,l as Ie,ln as Le,lt as Re,m as ze,mn as Be,mt as Ve,n as He,nn as Ue,nt as We,o as Ge,on as Ke,ot as qe,p as Je,pn as Ye,pt as Xe,q as Ze,qt as Qe,r as $e,rn as et,rt as tt,s as nt,sn as rt,st as it,t as at,tn as ot,tt as st,u as ct,un as lt,ut,v as dt,vn as ft,vt as pt,w as mt,wn as ht,wt as gt,x as _t,xn as vt,xt as yt,y as bt,yn as xt,yt as St,z as Ct,zt as wt}from"../../workflow-C4mck_NW.mjs";export{Ze as ArtifactPublishTargetSchema,x as ArtifactQuerySourceSchema,Ee as AutomationWorkflowTrigger,Ce as BUS_EVENT_AUTOMATION_TRIGGER_KIND,$ as BusEventPublishTargetSchema,re as BusEventWorkflowTrigger,Z as BusRequestSourceSchema,dt as CRON_AUTOMATION_TRIGGER_KIND,j as CompleteExternalExecutionRequestSchema,te as ContextBundleSchema,F as ContextPublishTargetSchema,e as ContextSourceSchema,bt as CronAutomationTriggerParamsSchema,le as CronWorkflowTrigger,_t as DEFAULT_CRON_TIMEZONE,V as EXECUTIONS_BY_ARTIFACT_REFS_DEFAULT_LIMIT_PER_REF,c as EXECUTIONS_BY_ARTIFACT_REFS_MAX_LIMIT_PER_REF,gt as EXECUTIONS_BY_ARTIFACT_REFS_MAX_REFS,W as EXECUTION_LIST_DEFAULT_LIMIT,f as EXECUTION_LIST_MAX_LIMIT,u as EXECUTION_LIST_MIN_LIMIT,Pe as EXTERNAL_EXECUTION_ID_PREFIX,je as ExecutionLinkListQuerySchema,ce as ExecutionLinkSchema,qe as ExecutionLinkTypeSchema,M as ExecutionListCursorSchema,Fe as ExecutionListQuerySchema,r as ExecutionStatusSchema,Ne as ExecutionsByArtifactRefsQuerySchema,n as ExternalExecutionFrameCompletionSchema,Me as ExternalExecutionFrameStartSchema,O as GateInstanceListQuerySchema,st as JsonPatchOperationSchema,A as LoopGateOutcomeSchema,D as RegisterExternalExecutionRequestSchema,ye as ResolvedContextEntrySchema,it as SpanRecordSchema,me as SpanStatusSchema,Re as StepCancelPayloadSchema,ut as StepRunConfigSchema,_e as StepRunResultSchema,Se as StepRunnerBusAuthSchema,Xe as StepRunnerPlatformDefaultsSchema,Ve as StepTelemetrySchema,Oe as TokenUsageSchema,at as TransitionActionInvocationSchema,He as TransitionConditionSchema,$e as TransitionEventTypeSchema,ke as TransitionRuleDefinitionSchema,Te as WORKFLOW_CANCELLED_REASON,k as WorkLogArtifactWriteSchema,N as WorkLogDynamicNodeMaterializationSchema,p as WorkLogExecutionSummarySchema,y as WorkLogFrameEntrySchema,T as WorkLogGateEventSchema,L as WorkLogStatsSchema,Ct as WorkLogUsageSummarySchema,q as WorkerContributionManifestSchema,P as WorkflowArtifactBindingSchema,s as WorkflowArtifactRefSchema,m as WorkflowArtifactWriteDeclarationSchema,b as WorkflowAutomationTriggerBindingSchema,ae as WorkflowCancelPayloadSchema,E as WorkflowConditionSchema,R as WorkflowDefinitionProvenanceSchema,wt as WorkflowDefinitionSchema,a as WorkflowDelegateAgentNodeSchema,lt as WorkflowDelegateEconomicsSchema,ge as WorkflowDelegateResultFinalizationGatewayRequestSchema,xe as WorkflowDelegateResultFinalizationRequestSchema,Ye as WorkflowDelegateResultFinalizationResponseSchema,Be as WorkflowDelegateResultFinalizerIdSchema,J as WorkflowDelegateRoleNodeSchema,De as WorkflowDelegateToolObservationSchema,v as WorkflowDynamicRegionSchema,We as WorkflowError,tt as WorkflowErrorCode,K as WorkflowExecutionSchema,X as WorkflowExecutionScopeSchema,we as WorkflowFinalizationClaimSchema,ie as WorkflowFinalizationDeliveryResultSchema,ft as WorkflowFinalizationIntentSchema,xt as WorkflowFinalizerIdSchema,g as WorkflowFrameStateSchema,w as WorkflowGateInstanceSchema,Qe as WorkflowGateNodeSchema,S as WorkflowGateStatusSchema,ee as WorkflowIterateChainNodeSchema,Q as WorkflowIterateNodeSchema,ne as WorkflowListQuerySchema,I as WorkflowLoopNodeSchema,mt as WorkflowNamespace,t as WorkflowNodeBaseSchema,ve as WorkflowNodeSchema,ot as WorkflowNodeTypeSchema,Ue as WorkflowParallelModeSchema,et as WorkflowParallelNodeSchema,H as WorkflowProgressUpdateSchema,Ae as WorkflowResolvedAgentSchema,se as WorkflowResolvedRoleSchema,i as WorkflowRunContextSchema,_ as WorkflowRunResultSchema,pt as WorkflowRunnerStepTypeSchema,d as WorkflowSchemas,Ke as WorkflowSequenceNodeSchema,rt as WorkflowSourceLocationSchema,pe as WorkflowStateDefinitionSchema,Le as WorkflowStationNodeSchema,St as WorkflowStepTypeSchema,l as WorkflowSubjects,ue as WorkflowTerminalStatusSchema,G as WorkflowTriggerModeSchema,Y as WorkflowWorkerBusAuthSchema,h as WorkflowWorkerConfigSchema,C as WorkflowWorkerSourceSchema,de as createStepCancelSubject,yt as createWorkflowCancelSubject,vt as createWorkflowDelegateResultFinalizerNamespace,B as createWorkflowFinalizerNamespace,Ge as defineWorkflow,oe as defineWorkflowBundle,nt as delegateToAgent,fe as delegateToRole,Ie as gate,ct as iterate,he as iterateChain,be as loop,ht as parseArtifactRef,z as projectWorkflowGraph,U as serializeArtifactRef,Je as station,ze as validateNoNestedLoops,o as walkWorkflowDefinition};
@@ -1,5 +1,5 @@
1
- import { l as AutomationTriggerType } from "./definition-BYgHlmMw.mjs";
2
- import { n as NodeExtensionContext, t as ExtensionContext } from "./extension-context-DzB7ydM3.mjs";
1
+ import { l as AutomationTriggerType } from "./definition-DyGImhyi.mjs";
2
+ import { n as NodeExtensionContext, t as ExtensionContext } from "./extension-context-QmFuHdq5.mjs";
3
3
 
4
4
  //#region core/contracts/src/automation-trigger/contribution.d.ts
5
5
  /**
@@ -756,6 +756,29 @@ type RequestSubjectLike = SubjectDefinition & {
756
756
  readonly payload: RequestMessagePayload;
757
757
  };
758
758
  };
759
+ /**
760
+ * Emit options a contracts-owned helper can express through {@link MakaioBusLike}.
761
+ *
762
+ * Only routing is modelled. A helper that hands a live object to a subject has
763
+ * to be able to say "this does not leave the process" — the full bus option bag
764
+ * (message ids, correlation ids) belongs to callers, not to a contract helper.
765
+ *
766
+ * Transport names are spelled as bare registry keys rather than as the bus
767
+ * transport registry's own key union, which lives in `@makaio/bus-core` and
768
+ * must not become a dependency of this layer. Both the list and the set form
769
+ * are admitted because a bus implementation must stay assignable to this seam,
770
+ * and the only value the seam itself needs to express is the empty list, which
771
+ * every bus implementation reads as local-only.
772
+ */
773
+ interface BusLikeEmitOptions {
774
+ /**
775
+ * Transports to relay the event to.
776
+ *
777
+ * An empty list suppresses transport dispatch entirely; omitting the option
778
+ * relays the event to every ready transport.
779
+ */
780
+ readonly transports?: ReadonlySet<string | number> | readonly (string | number)[];
781
+ }
759
782
  /**
760
783
  * Minimal structural bus seam for contracts-owned helpers.
761
784
  *
@@ -765,7 +788,7 @@ type RequestSubjectLike = SubjectDefinition & {
765
788
  */
766
789
  interface MakaioBusLike {
767
790
  /** Emit an event. */
768
- emit<Subject extends EventSubjectLike>(subject: Subject, payload: Subject['$meta']['payload']): Promise<void>;
791
+ emit<Subject extends EventSubjectLike>(subject: Subject, payload: Subject['$meta']['payload'], options?: BusLikeEmitOptions): Promise<void>;
769
792
  /** Send a request and await a response. */
770
793
  request<Subject extends RequestSubjectLike>(subject: Subject, payload: Subject['$meta']['payload']['request']): Promise<Subject['$meta']['payload']['response']>;
771
794
  }
@@ -1394,4 +1417,4 @@ declare const observability: {
1394
1417
  attribute<TSchema extends z.ZodType>(schema: TSchema, attributeName?: string): TSchema;
1395
1418
  };
1396
1419
  //#endregion
1397
- export { type AnyHandler, type AnyMessageContext, AuthenticationError, type BaseMessageContext, type BaseSubjectSchema, type BusNamespaceDefinition, type BusSubjects, type ChannelSubjectSchema, type CollectorOnlySubjectSchema, ConfigError, type ContextForSubjectDefinition, type CreateBusNamespaceOptions, type DefaultTransportsSubjectSchema, DirectoryNotFoundError, type EventContext, type EventHandler, type EventMessagePayload, type EventSchema, type ExtractSubjectPayload, type ExtractSubjectResponse, type FilterOperator, type FilterPayloadFromSchemas, type FilterablePayloadIntersection, type FlatSubjectDefinitions, type HandlerForSubjectDefinition, type HostLocalRequestSubjectSchema, type IConfigStorage, type InferSchemaPayload, type InferSubjectMeta, InvalidModelError, type LocalSubjectSchema, type MakaioBusLike, type MakaioContext, MakaioError, type MessageOrigin, type MessagePayload, ModelUnavailableError, type NamespaceRegistrationOptions, type NestedSubjectDefinitions, OBSERVABILITY_META_KEY, type ObservabilityFieldPolicy, type ObservabilityFieldVisibility, type ObservabilitySchemaPolicy, type OptionalResult, type PayloadFilter, type PrincipalContext, QuotaExceededError, RateLimitError, type RegistrableBusNamespaceDefinition, type RequestContext, type RequestHandler, type RequestMessagePayload, type RequestSchema, type SchemaRecord, type SchemaViolationReport, type ScopedSubjectDefinition, type SubjectDefinition, type SubjectKeySegments, type SubjectRecord, type SubjectRecordFromSchemaRecord, type SubjectSchema, type TransportPeerContext, type TransportReceiveContext, type TransportRoutingDefault, type TypedPayloadFilter, type WildcardContext, type WildcardSubject, type WildcardSubjectDefinition, WildcardSubjectKey, type WildcardUnifiedHandler, channelSubject, collectorOnlySubject, createBusNamespace, createMakaioContext, createNamespaceWildcardSubject, defaultTransports, getFullSubjectForSubjectDefinition, getObservabilityFieldPolicy, getObservabilitySchemaPolicy, hostLocalRequest, isChannelSchema, isCollectorOnlySchema, isDefaultTransportsSchema, isHostLocalRequestSchema, isLocalSchema, isOperatorObject, isRequestSchema, localSubject, nestSubjectDefinitions, observability, splitSubjectKey, unwrapSchema };
1420
+ export { type AnyHandler, type AnyMessageContext, AuthenticationError, type BaseMessageContext, type BaseSubjectSchema, type BusLikeEmitOptions, type BusNamespaceDefinition, type BusSubjects, type ChannelSubjectSchema, type CollectorOnlySubjectSchema, ConfigError, type ContextForSubjectDefinition, type CreateBusNamespaceOptions, type DefaultTransportsSubjectSchema, DirectoryNotFoundError, type EventContext, type EventHandler, type EventMessagePayload, type EventSchema, type ExtractSubjectPayload, type ExtractSubjectResponse, type FilterOperator, type FilterPayloadFromSchemas, type FilterablePayloadIntersection, type FlatSubjectDefinitions, type HandlerForSubjectDefinition, type HostLocalRequestSubjectSchema, type IConfigStorage, type InferSchemaPayload, type InferSubjectMeta, InvalidModelError, type LocalSubjectSchema, type MakaioBusLike, type MakaioContext, MakaioError, type MessageOrigin, type MessagePayload, ModelUnavailableError, type NamespaceRegistrationOptions, type NestedSubjectDefinitions, OBSERVABILITY_META_KEY, type ObservabilityFieldPolicy, type ObservabilityFieldVisibility, type ObservabilitySchemaPolicy, type OptionalResult, type PayloadFilter, type PrincipalContext, QuotaExceededError, RateLimitError, type RegistrableBusNamespaceDefinition, type RequestContext, type RequestHandler, type RequestMessagePayload, type RequestSchema, type SchemaRecord, type SchemaViolationReport, type ScopedSubjectDefinition, type SubjectDefinition, type SubjectKeySegments, type SubjectRecord, type SubjectRecordFromSchemaRecord, type SubjectSchema, type TransportPeerContext, type TransportReceiveContext, type TransportRoutingDefault, type TypedPayloadFilter, type WildcardContext, type WildcardSubject, type WildcardSubjectDefinition, WildcardSubjectKey, type WildcardUnifiedHandler, channelSubject, collectorOnlySubject, createBusNamespace, createMakaioContext, createNamespaceWildcardSubject, defaultTransports, getFullSubjectForSubjectDefinition, getObservabilityFieldPolicy, getObservabilitySchemaPolicy, hostLocalRequest, isChannelSchema, isCollectorOnlySchema, isDefaultTransportsSchema, isHostLocalRequestSchema, isLocalSchema, isOperatorObject, isRequestSchema, localSubject, nestSubjectDefinitions, observability, splitSubjectKey, unwrapSchema };
@@ -1 +1 @@
1
- import{t as e}from"./json-value-D57aJhVn.mjs";import{i as t,t as n}from"./visibility-Dl1o2I01.mjs";import{f as r}from"./definitions-CF6YmEhL.mjs";import{z as i}from"zod";const a=i.enum([`anthropic`,`openai`]),o=i.object({anthropic:i.string().url(),openai:i.string().url()}).partial().refine(e=>Object.keys(e).length>0,{message:`At least one protocol endpoint must be specified`}),s=e,c=i.object({id:i.string().min(1),name:i.string().min(1),description:i.string().optional(),endpoints:o.optional(),defaultModel:i.string().optional(),fastModel:i.string().optional(),primaryTestModel:i.string().optional(),secondaryTestModel:i.string().optional(),availableModels:i.array(t).default([]),defaultModelFilterMode:n.optional(),authMethods:r,capabilities:s.optional()}).strict();export{c as i,a as n,s as r,o as t};
1
+ import{n as e}from"./json-value-BBZ6uGwc.mjs";import{i as t,t as n}from"./visibility-DtDLRBdr.mjs";import{f as r}from"./definitions-CRpdnHYM.mjs";import{z as i}from"zod";const a=i.enum([`anthropic`,`openai`]),o=i.object({anthropic:i.string().url(),openai:i.string().url()}).partial().refine(e=>Object.keys(e).length>0,{message:`At least one protocol endpoint must be specified`}),s=e,c=i.object({id:i.string().min(1),name:i.string().min(1),description:i.string().optional(),endpoints:o.optional(),defaultModel:i.string().optional(),fastModel:i.string().optional(),primaryTestModel:i.string().optional(),secondaryTestModel:i.string().optional(),availableModels:i.array(t).default([]),defaultModelFilterMode:n.optional(),authMethods:r,capabilities:s.optional()}).strict();export{c as i,a as n,s as r,o as t};
@@ -1,4 +1,4 @@
1
- import { a as JsonValue$1 } from "./json-value-C1RGgS0a.mjs";
1
+ import { l as JsonValue$1 } from "./json-value-DPqb-SJ8.mjs";
2
2
  import { z } from "zod";
3
3
  import * as _$_makaio_contracts0 from "@makaio/framework/contracts";
4
4
 
@@ -1 +1 @@
1
- import{t as e}from"./descriptor-to-package-BecVCopf.mjs";import{t}from"./jsonl-transport-Bp_6pB2a.mjs";import{z as n}from"zod";import{createBusNamespace as r}from"@makaio/framework/core";const i={idle:[`starting`],starting:[`running`,`crashed`,`stopping`],running:[`stopping`,`crashed`],stopping:[`stopped`],stopped:[`starting`],crashed:[`starting`,`stopped`]};function a(e,t){if(!i[e].includes(t))throw Error(`Invalid state transition: ${e} → ${t}`)}function o(e){return new Promise(t=>{if(e.exitCode!==null||e.signalCode!==null){t(!0);return}e.once(`exit`,()=>t(!0))})}function s(e){let{spawn:n,healthTimeoutMs:r=3e4,shutdownTimeoutMs:i=5e3,restartPolicy:s=`none`,onReady:c,onExit:l,onStateChange:u}=e,d=`idle`,f;function p(e){a(d,e),d=e,u?.(d)}function m(e){let t=f;if(f=void 0,t?.close(),d===`stopping`){p(`stopped`),l?.(e);return}if(d===`running`){if(e!==0){p(`crashed`),l?.(e),(s===`on-crash`||s===`always`)&&h().catch(e=>{console.error(`[ProcessLifecycle:${n.processName??n.command}] Restart failed:`,e instanceof Error?e.message:e)});return}p(`stopping`),p(`stopped`),l?.(e),s===`always`&&h().catch(e=>{console.error(`[ProcessLifecycle:${n.processName??n.command}] Restart failed:`,e instanceof Error?e.message:e)})}}async function h(){p(`starting`);let e=t(n);f=e;let i=e.process;await new Promise((t,a)=>{let o=!1;function s(e){o||(o=!0,clearTimeout(u),d(),i.off(`exit`,h),e())}let u=setTimeout(()=>{s(()=>{e.close(),f=void 0;try{p(`crashed`)}catch{}a(Error(`Process health timeout after ${r}ms: ${n.processName??n.command}`))})},r),d=e.onMessage(()=>{s(()=>{try{p(`running`)}catch(e){a(e);return}c?.(),i.once(`exit`,m),t()})});function h(e){s(()=>{f=void 0;try{p(`crashed`)}catch{}l?.(e),a(Error(`Process exited with code ${String(e)} before signaling readiness`))})}i.once(`exit`,h)})}async function g(){if(d===`stopped`||d===`idle`)return;if(d===`crashed`){f?.close(),f=void 0,p(`stopped`);return}if(d!==`stopping`&&p(`stopping`),!f){d===`stopping`&&p(`stopped`);return}let e=f,t=e.process;if(t.exitCode!==null){e.close(),f===e&&(f=void 0),d===`stopping`&&p(`stopped`);return}t.kill(`SIGTERM`);let n;await Promise.race([o(t).then(()=>(clearTimeout(n),!0)),new Promise(e=>{n=setTimeout(()=>e(!1),i)})])||(t.kill(`SIGKILL`),await o(t)),d===`stopping`&&p(`stopped`),e.close(),f===e&&(f=void 0)}return{get transport(){return f},get state(){return d},start:h,stop:g}}const c=n.object({dataDir:n.string().optional(),machineId:n.string().optional(),makaioHome:n.string().optional(),platform:n.string().optional(),username:n.string().optional()}),l={init:{request:n.object({config:n.unknown().optional(),context:c.optional()}),response:n.object({ready:n.boolean()})},ready:n.object({ready:n.boolean(),config:n.unknown().optional(),context:c.optional()}).passthrough(),destroy:{request:n.object({reason:n.string().optional()}),response:n.object({stopped:n.boolean()})},stopped:n.object({stopped:n.boolean()}).passthrough()};function u(e,t){return e.bus.registerNamespace(r(`extension.${t}`,l)).subjects}function d(e,t){let n;return()=>(n??=u(e,t),n)}function f(e){return{dataDir:e.dataDir,machineId:e.machineId,makaioHome:e.makaioHome,platform:e.platform,username:e.username}}var p=class{descriptor;ctx;extensionPath;getLifecycleSubjects;transport=null;unregister=null;constructor(e,t,n){this.descriptor=e,this.ctx=t,this.extensionPath=n,this.getLifecycleSubjects=d(t,e.name)}async init(){let{StdioServerTransport:e}=await import(`./src-xbmzokNe.mjs`),{transport:t}=this.descriptor,n=this.getLifecycleSubjects(),r=new e({name:this.descriptor.name,spawn:{command:t.command,args:t.args,cwd:this.extensionPath,env:t.env,processName:this.descriptor.name}}),i=null;try{let e=this.ctx.bus.registerTransport(r);i=e.unregister,await r.connect(),await r.ready,await e.ready,this.transport=r,this.unregister=i,await this.ctx.bus.request(n.init,{config:this.ctx.config??this.descriptor.config?.defaults,context:f(this.ctx)},{timeout:t.healthTimeoutMs})}catch(e){throw i?.(),await r.disconnect(),this.transport=null,this.unregister=null,e}}async destroy(){if(this.transport!==null){let e=this.getLifecycleSubjects();try{await this.ctx.bus.request(e.destroy,{reason:`runtime-shutdown`},{timeout:this.descriptor.transport.shutdownTimeoutMs})}catch(e){console.warn(`[extensions] ${this.descriptor.name}: detached destroy lifecycle request did not complete before disconnect:`,e instanceof Error?e.message:e)}}this.unregister?.(),this.unregister=null,await this.transport?.disconnect(),this.transport=null}},m=class{descriptor;ctx;extensionPath;getLifecycleSubjects;lifecycle=null;constructor(e,t,n){this.descriptor=e,this.ctx=t,this.extensionPath=n,this.getLifecycleSubjects=d(t,e.name)}async init(){let{transport:e}=this.descriptor;if(!this.ctx.busUrl)throw Error(`[extensions] ${this.descriptor.name}: bus-websocket transport requires NodeExtensionContext.busUrl`);let t=this.getLifecycleSubjects();this.lifecycle=s({spawn:{command:e.command,args:e.args,cwd:this.extensionPath,env:{...e.env,MAKAIO_BUS_TRANSPORT:`websocket`,MAKAIO_BUS_URL:this.ctx.busUrl,MAKAIO_EXTENSION_NAME:this.descriptor.name},processName:this.descriptor.name},healthTimeoutMs:e.healthTimeoutMs,shutdownTimeoutMs:e.shutdownTimeoutMs,restartPolicy:`restartPolicy`in e?e.restartPolicy:void 0});try{await this.lifecycle.start(),await this.ctx.bus.request(t.init,{config:this.ctx.config??this.descriptor.config?.defaults,context:f(this.ctx)},{timeout:e.healthTimeoutMs})}catch(e){throw await this.lifecycle.stop(),this.lifecycle=null,e}}async destroy(){if(this.lifecycle!==null){let e=this.getLifecycleSubjects();try{await this.ctx.bus.request(e.destroy,{reason:`runtime-shutdown`},{timeout:this.descriptor.transport.shutdownTimeoutMs})}catch(e){console.warn(`[extensions] ${this.descriptor.name}: detached destroy lifecycle request did not complete before process stop:`,e instanceof Error?e.message:e)}await this.lifecycle.stop(),this.lifecycle=null}}},h=class{descriptor;ctx;extensionPath;bridge=null;constructor(e,t,n){this.descriptor=e,this.ctx=t,this.extensionPath=n}async init(){let{startMcpClientBridge:e}=await import(`@makaio/framework/mcp-http-server`),{transport:t}=this.descriptor;this.bridge=await e({command:t.command,args:t.args,env:t.env,cwd:this.extensionPath,extensionName:this.descriptor.name,bus:this.ctx.bus})}async destroy(){this.bridge!==null&&(await this.bridge.close(),this.bridge=null)}};function g(t,n){return{...e(t),create(e){return t.transport.type===`bus-stdio`?new p(t,e,n):t.transport.type===`mcp-stdio`?new h(t,e,n):new m(t,e,n)}}}export{g as createDetachedExtensionPackage};
1
+ import{t as e}from"./descriptor-to-package-CcjdoWP4.mjs";import{t}from"./jsonl-transport-Cyyh5Wje.mjs";import{z as n}from"zod";import{createBusNamespace as r}from"@makaio/framework/core";const i={idle:[`starting`],starting:[`running`,`crashed`,`stopping`],running:[`stopping`,`crashed`],stopping:[`stopped`],stopped:[`starting`],crashed:[`starting`,`stopped`]};function a(e,t){if(!i[e].includes(t))throw Error(`Invalid state transition: ${e} → ${t}`)}function o(e){return new Promise(t=>{if(e.exitCode!==null||e.signalCode!==null){t(!0);return}e.once(`exit`,()=>t(!0))})}function s(e){let{spawn:n,healthTimeoutMs:r=3e4,shutdownTimeoutMs:i=5e3,restartPolicy:s=`none`,onReady:c,onExit:l,onStateChange:u}=e,d=`idle`,f;function p(e){a(d,e),d=e,u?.(d)}function m(e){let t=f;if(f=void 0,t?.close(),d===`stopping`){p(`stopped`),l?.(e);return}if(d===`running`){if(e!==0){p(`crashed`),l?.(e),(s===`on-crash`||s===`always`)&&h().catch(e=>{console.error(`[ProcessLifecycle:${n.processName??n.command}] Restart failed:`,e instanceof Error?e.message:e)});return}p(`stopping`),p(`stopped`),l?.(e),s===`always`&&h().catch(e=>{console.error(`[ProcessLifecycle:${n.processName??n.command}] Restart failed:`,e instanceof Error?e.message:e)})}}async function h(){p(`starting`);let e=t(n);f=e;let i=e.process;await new Promise((t,a)=>{let o=!1;function s(e){o||(o=!0,clearTimeout(u),d(),i.off(`exit`,h),e())}let u=setTimeout(()=>{s(()=>{e.close(),f=void 0;try{p(`crashed`)}catch{}a(Error(`Process health timeout after ${r}ms: ${n.processName??n.command}`))})},r),d=e.onMessage(()=>{s(()=>{try{p(`running`)}catch(e){a(e);return}c?.(),i.once(`exit`,m),t()})});function h(e){s(()=>{f=void 0;try{p(`crashed`)}catch{}l?.(e),a(Error(`Process exited with code ${String(e)} before signaling readiness`))})}i.once(`exit`,h)})}async function g(){if(d===`stopped`||d===`idle`)return;if(d===`crashed`){f?.close(),f=void 0,p(`stopped`);return}if(d!==`stopping`&&p(`stopping`),!f){d===`stopping`&&p(`stopped`);return}let e=f,t=e.process;if(t.exitCode!==null){e.close(),f===e&&(f=void 0),d===`stopping`&&p(`stopped`);return}t.kill(`SIGTERM`);let n;await Promise.race([o(t).then(()=>(clearTimeout(n),!0)),new Promise(e=>{n=setTimeout(()=>e(!1),i)})])||(t.kill(`SIGKILL`),await o(t)),d===`stopping`&&p(`stopped`),e.close(),f===e&&(f=void 0)}return{get transport(){return f},get state(){return d},start:h,stop:g}}const c=n.object({dataDir:n.string().optional(),machineId:n.string().optional(),makaioHome:n.string().optional(),platform:n.string().optional(),username:n.string().optional()}),l={init:{request:n.object({config:n.unknown().optional(),context:c.optional()}),response:n.object({ready:n.boolean()})},ready:n.object({ready:n.boolean(),config:n.unknown().optional(),context:c.optional()}).passthrough(),destroy:{request:n.object({reason:n.string().optional()}),response:n.object({stopped:n.boolean()})},stopped:n.object({stopped:n.boolean()}).passthrough()};function u(e,t){return e.bus.registerNamespace(r(`extension.${t}`,l)).subjects}function d(e,t){let n;return()=>(n??=u(e,t),n)}function f(e){return{dataDir:e.dataDir,machineId:e.machineId,makaioHome:e.makaioHome,platform:e.platform,username:e.username}}var p=class{descriptor;ctx;extensionPath;getLifecycleSubjects;transport=null;unregister=null;constructor(e,t,n){this.descriptor=e,this.ctx=t,this.extensionPath=n,this.getLifecycleSubjects=d(t,e.name)}async init(){let{StdioServerTransport:e}=await import(`./src-BmSQ3rlz.mjs`),{transport:t}=this.descriptor,n=this.getLifecycleSubjects(),r=new e({name:this.descriptor.name,spawn:{command:t.command,args:t.args,cwd:this.extensionPath,env:t.env,processName:this.descriptor.name}}),i=null;try{let e=this.ctx.bus.registerTransport(r);i=e.unregister,await r.connect(),await r.ready,await e.ready,this.transport=r,this.unregister=i,await this.ctx.bus.request(n.init,{config:this.ctx.config??this.descriptor.config?.defaults,context:f(this.ctx)},{timeout:t.healthTimeoutMs})}catch(e){throw i?.(),await r.disconnect(),this.transport=null,this.unregister=null,e}}async destroy(){if(this.transport!==null){let e=this.getLifecycleSubjects();try{await this.ctx.bus.request(e.destroy,{reason:`runtime-shutdown`},{timeout:this.descriptor.transport.shutdownTimeoutMs})}catch(e){console.warn(`[extensions] ${this.descriptor.name}: detached destroy lifecycle request did not complete before disconnect:`,e instanceof Error?e.message:e)}}this.unregister?.(),this.unregister=null,await this.transport?.disconnect(),this.transport=null}},m=class{descriptor;ctx;extensionPath;getLifecycleSubjects;lifecycle=null;constructor(e,t,n){this.descriptor=e,this.ctx=t,this.extensionPath=n,this.getLifecycleSubjects=d(t,e.name)}async init(){let{transport:e}=this.descriptor;if(!this.ctx.busUrl)throw Error(`[extensions] ${this.descriptor.name}: bus-websocket transport requires NodeExtensionContext.busUrl`);let t=this.getLifecycleSubjects();this.lifecycle=s({spawn:{command:e.command,args:e.args,cwd:this.extensionPath,env:{...e.env,MAKAIO_BUS_TRANSPORT:`websocket`,MAKAIO_BUS_URL:this.ctx.busUrl,MAKAIO_EXTENSION_NAME:this.descriptor.name},processName:this.descriptor.name},healthTimeoutMs:e.healthTimeoutMs,shutdownTimeoutMs:e.shutdownTimeoutMs,restartPolicy:`restartPolicy`in e?e.restartPolicy:void 0});try{await this.lifecycle.start(),await this.ctx.bus.request(t.init,{config:this.ctx.config??this.descriptor.config?.defaults,context:f(this.ctx)},{timeout:e.healthTimeoutMs})}catch(e){throw await this.lifecycle.stop(),this.lifecycle=null,e}}async destroy(){if(this.lifecycle!==null){let e=this.getLifecycleSubjects();try{await this.ctx.bus.request(e.destroy,{reason:`runtime-shutdown`},{timeout:this.descriptor.transport.shutdownTimeoutMs})}catch(e){console.warn(`[extensions] ${this.descriptor.name}: detached destroy lifecycle request did not complete before process stop:`,e instanceof Error?e.message:e)}await this.lifecycle.stop(),this.lifecycle=null}}},h=class{descriptor;ctx;extensionPath;bridge=null;constructor(e,t,n){this.descriptor=e,this.ctx=t,this.extensionPath=n}async init(){let{startMcpClientBridge:e}=await import(`@makaio/framework/mcp-http-server`),{transport:t}=this.descriptor;this.bridge=await e({command:t.command,args:t.args,env:t.env,cwd:this.extensionPath,extensionName:this.descriptor.name,bus:this.ctx.bus})}async destroy(){this.bridge!==null&&(await this.bridge.close(),this.bridge=null)}};function g(t,n){return{...e(t),create(e){return t.transport.type===`bus-stdio`?new p(t,e,n):t.transport.type===`mcp-stdio`?new h(t,e,n):new m(t,e,n)}}}export{g as createDetachedExtensionPackage};
@@ -0,0 +1,41 @@
1
+ CREATE TABLE `runtime_instances` (
2
+ `instance_id` text NOT NULL,
3
+ `machine_id` text NOT NULL,
4
+ `incarnation` integer NOT NULL,
5
+ `started_at` integer NOT NULL,
6
+ `retired_at` integer,
7
+ PRIMARY KEY(`instance_id`, `machine_id`)
8
+ );
9
+ --> statement-breakpoint
10
+ CREATE UNIQUE INDEX `uniq_runtime_instances_incarnation` ON `runtime_instances` (`machine_id`,`incarnation`);--> statement-breakpoint
11
+ PRAGMA foreign_keys=OFF;--> statement-breakpoint
12
+ CREATE TABLE `__new_adapter_session_claims` (
13
+ `claim_id` text PRIMARY KEY NOT NULL,
14
+ `machine_id` text NOT NULL,
15
+ `adapter_id` text NOT NULL,
16
+ `adapter_name` text NOT NULL,
17
+ `provider_session_id` text NOT NULL,
18
+ `session_id` text NOT NULL,
19
+ `agent_id` text NOT NULL,
20
+ `owner_instance_id` text,
21
+ `claim_token` text NOT NULL,
22
+ `fence` integer NOT NULL,
23
+ `status` text DEFAULT 'held' NOT NULL,
24
+ `claimed_at` integer NOT NULL,
25
+ `updated_at` integer NOT NULL,
26
+ FOREIGN KEY (`session_id`) REFERENCES `sessions`(`session_id`) ON UPDATE no action ON DELETE cascade,
27
+ FOREIGN KEY (`agent_id`) REFERENCES `agents`(`agent_id`) ON UPDATE no action ON DELETE cascade,
28
+ FOREIGN KEY (`owner_instance_id`,`machine_id`) REFERENCES `runtime_instances`(`instance_id`,`machine_id`) ON UPDATE no action ON DELETE restrict,
29
+ CONSTRAINT "adapter_session_claims_status_check" CHECK("status" IN ('held', 'releasing', 'abandoned')),
30
+ CONSTRAINT "adapter_session_claims_fence_check" CHECK("fence" >= 1)
31
+ );
32
+ --> statement-breakpoint
33
+ INSERT INTO `__new_adapter_session_claims`("claim_id", "machine_id", "adapter_id", "adapter_name", "provider_session_id", "session_id", "agent_id", "claim_token", "fence", "status", "claimed_at", "updated_at") SELECT "claim_id", "machine_id", "adapter_id", "adapter_name", "provider_session_id", "session_id", "agent_id", "claim_token", "fence", "status", "claimed_at", "updated_at" FROM `adapter_session_claims`;--> statement-breakpoint
34
+ DROP TABLE `adapter_session_claims`;--> statement-breakpoint
35
+ ALTER TABLE `__new_adapter_session_claims` RENAME TO `adapter_session_claims`;--> statement-breakpoint
36
+ PRAGMA foreign_keys=ON;--> statement-breakpoint
37
+ CREATE UNIQUE INDEX `uniq_adapter_session_claims_owner` ON `adapter_session_claims` (`machine_id`,`adapter_id`,`provider_session_id`);--> statement-breakpoint
38
+ CREATE UNIQUE INDEX `uniq_adapter_session_claims_token` ON `adapter_session_claims` (`claim_token`);--> statement-breakpoint
39
+ CREATE UNIQUE INDEX `uniq_adapter_session_claims_agent_fence` ON `adapter_session_claims` (`agent_id`,`fence`);--> statement-breakpoint
40
+ CREATE INDEX `adapter_session_claims_agent_id_idx` ON `adapter_session_claims` (`agent_id`);--> statement-breakpoint
41
+ CREATE INDEX `adapter_session_claims_session_id_idx` ON `adapter_session_claims` (`session_id`);
@@ -0,0 +1,40 @@
1
+ PRAGMA foreign_keys=OFF;--> statement-breakpoint
2
+ CREATE TABLE `__new_agents` (
3
+ `agent_id` text PRIMARY KEY NOT NULL,
4
+ `adapter_id` text NOT NULL,
5
+ `adapter_name` text NOT NULL,
6
+ `session_id` text NOT NULL,
7
+ `owner_machine_id` text,
8
+ `owner_instance_id` text,
9
+ `adapter_session_id` text,
10
+ `current_adapter_session_id` text,
11
+ `current_adapter_session_id_state` text DEFAULT 'inherited' NOT NULL,
12
+ `revision` integer DEFAULT 0 NOT NULL,
13
+ `currency_fence` integer DEFAULT 0 NOT NULL,
14
+ `model` text,
15
+ `cwd` text,
16
+ `allowed_directories` text,
17
+ `provider_config_id` text,
18
+ `persona_id` text,
19
+ `profile_id` text,
20
+ `harness_id` text,
21
+ `client_id` text,
22
+ `compression_mode` text,
23
+ `role` text NOT NULL,
24
+ `status` text NOT NULL,
25
+ `created_at` integer NOT NULL,
26
+ `last_activity_at` integer NOT NULL,
27
+ FOREIGN KEY (`session_id`) REFERENCES `sessions`(`session_id`) ON UPDATE no action ON DELETE cascade,
28
+ CONSTRAINT "agents_current_adapter_session_id_currency_check" CHECK("current_adapter_session_id_state" IN ('inherited', 'moved', 'confirmed') AND ("current_adapter_session_id_state" <> 'confirmed' OR "current_adapter_session_id" IS NOT NULL) AND ("current_adapter_session_id_state" = 'confirmed' OR "current_adapter_session_id" IS NULL)),
29
+ CONSTRAINT "agents_ownership_counters_check" CHECK("revision" >= 0 AND "currency_fence" >= 0),
30
+ CONSTRAINT "agents_runtime_owner_pair_check" CHECK(("owner_machine_id" IS NULL) = ("owner_instance_id" IS NULL))
31
+ );
32
+ --> statement-breakpoint
33
+ INSERT INTO `__new_agents`("agent_id", "adapter_id", "adapter_name", "session_id", "owner_machine_id", "owner_instance_id", "adapter_session_id", "current_adapter_session_id", "current_adapter_session_id_state", "revision", "currency_fence", "model", "cwd", "allowed_directories", "provider_config_id", "persona_id", "profile_id", "harness_id", "client_id", "compression_mode", "role", "status", "created_at", "last_activity_at") SELECT "agent_id", "adapter_id", "adapter_name", "session_id", NULL, NULL, "adapter_session_id", "current_adapter_session_id", "current_adapter_session_id_state", "revision", "currency_fence", "model", "cwd", "allowed_directories", "provider_config_id", "persona_id", "profile_id", "harness_id", "client_id", "compression_mode", "role", "status", "created_at", "last_activity_at" FROM `agents`;--> statement-breakpoint
34
+ DROP TABLE `agents`;--> statement-breakpoint
35
+ ALTER TABLE `__new_agents` RENAME TO `agents`;--> statement-breakpoint
36
+ PRAGMA foreign_keys=ON;--> statement-breakpoint
37
+ CREATE INDEX `agents_session_id_idx` ON `agents` (`session_id`);--> statement-breakpoint
38
+ CREATE INDEX `agents_adapter_name_idx` ON `agents` (`adapter_name`);--> statement-breakpoint
39
+ CREATE INDEX `agents_status_idx` ON `agents` (`status`);--> statement-breakpoint
40
+ CREATE INDEX `agents_client_id_idx` ON `agents` (`client_id`);
@@ -0,0 +1 @@
1
+ ALTER TABLE `agents` ADD `recovery_attempt_id` text;
@@ -0,0 +1,6 @@
1
+ -- Pre-release clean cut: reset existing development databases before applying
2
+ -- this chain. The private allocator intentionally does not backfill prior rows.
3
+ CREATE TABLE `runtime_instance_incarnation_counters` (
4
+ `machine_id` text PRIMARY KEY NOT NULL,
5
+ `last_allocated_incarnation` integer NOT NULL
6
+ );
@@ -239,6 +239,34 @@
239
239
  "when": 1785874381055,
240
240
  "tag": "0033_m_msf3hu2s",
241
241
  "breakpoints": true
242
+ },
243
+ {
244
+ "idx": 34,
245
+ "version": "6",
246
+ "when": 1786006289585,
247
+ "tag": "0034_m_msha1388",
248
+ "breakpoints": true
249
+ },
250
+ {
251
+ "idx": 35,
252
+ "version": "6",
253
+ "when": 1786017211577,
254
+ "tag": "0035_m_mshgj6x7",
255
+ "breakpoints": true
256
+ },
257
+ {
258
+ "idx": 36,
259
+ "version": "6",
260
+ "when": 1786103484348,
261
+ "tag": "0036_m_msivwbgm",
262
+ "breakpoints": true
263
+ },
264
+ {
265
+ "idx": 37,
266
+ "version": "6",
267
+ "when": 1786383665863,
268
+ "tag": "0037_runtime_instance_incarnation_counter",
269
+ "breakpoints": true
242
270
  }
243
271
  ]
244
272
  }
@@ -0,0 +1 @@
1
+ import{z as e}from"zod";const t=e.object({repoPath:e.string().optional()}),n=e.object({path:e.string()}),r=e.object({root:e.string().nullable()}),ee=t,i=e.object({current:e.string(),isDetached:e.boolean()}),a=t.extend({name:e.string()}),o=e.object({exists:e.boolean()}),s=t.extend({ref:e.string().optional()}),c=e.object({hash:e.string(),message:e.string(),author:e.string(),email:e.string(),date:e.string()}),l=t.extend({hash:e.string()}),u=e.object({path:e.string(),oldPath:e.string().optional(),status:e.string(),additions:e.number(),deletions:e.number()}),d=e.object({totalAdditions:e.number(),totalDeletions:e.number(),changedFiles:e.number()}),te=e.object({files:e.array(u),stats:d}),ne=t,f=e.object({path:e.string(),oldPath:e.string().optional(),additions:e.number(),deletions:e.number()}),re=e.object({staged:e.array(f),unstaged:e.array(f),untracked:e.array(f),conflicted:e.array(f),stats:d}),p=t,m=e.object({staged:e.array(e.string()),modified:e.array(e.string()),untracked:e.array(e.string()),conflicted:e.array(e.string())}),h=t,g=e.object({path:e.string(),branch:e.string(),commit:e.string(),isMain:e.boolean()}),_=e.object({worktrees:e.array(g)}),v=t,y=e.object({name:e.string(),fetchUrl:e.string(),pushUrl:e.string()}),b=e.object({remotes:e.array(y)}),x=t,S=e.object({branch:e.string()}),C=e.object({branches:e.array(e.string()).optional(),branchMode:e.enum([`all`,`specific`]).optional(),baseBranch:e.string().optional(),paths:e.array(e.string()).optional(),author:e.string().optional(),since:e.string().optional(),until:e.string().optional(),searchQuery:e.string().optional(),selectedWorktree:e.string().optional()}),w=t.extend({limit:e.number().min(1).max(1e4).optional(),ref:e.string().optional(),filters:C.optional()}),T=e.object({hash:e.string(),shortHash:e.string(),message:e.string(),author:e.string(),email:e.string(),date:e.string(),parents:e.array(e.string())}),E=e.object({branches:e.record(e.string(),e.string()),remoteBranches:e.record(e.string(),e.string()),tags:e.record(e.string(),e.string()),HEAD:e.string()}),D=e.object({commits:e.array(T),refs:E,truncated:e.boolean()}),O=t.extend({path:e.string(),ref:e.string()}),k=e.object({content:e.string(),isBinary:e.boolean()}),A=t.extend({ref:e.string().optional(),staged:e.boolean().optional(),unified:e.number().int().min(0).max(10).optional(),paths:e.array(e.string()).optional()}),j=e.object({diff:e.string()}),M=e.object({branchName:e.string(),repoPath:e.string().optional()}),N=e.object({commitHashes:e.array(e.string())}),P=e.object({repoPath:e.string().optional(),worktreePath:e.string()}),F=e.object({success:e.boolean(),error:e.string().optional()}),I=e.object({repoPath:e.string().optional(),path:e.string(),ref:e.string().optional()}),L=e.object({startLine:e.number(),endLine:e.number(),shortHash:e.string(),hash:e.string(),author:e.string(),date:e.string(),message:e.string()}),R=e.object({content:e.string(),lines:e.array(L)}),z=t.extend({filePath:e.string(),commitHash:e.string()}),B=e.object({content:e.string().nullable(),isBinary:e.boolean()}),V=t.extend({filePath:e.string(),commitHash:e.string()}),H=e.object({blobHash:e.string().nullable()}),U=e.object({repoPath:e.string(),include:e.array(e.string()),exclude:e.array(e.string()),worktree:e.string().optional()}),W=e.object({hash:e.string(),commitSha:e.string(),changedPaths:e.array(e.string()),timestamp:e.string()}),G=e.object({repoPath:e.string().optional(),message:e.string().min(1),allowEmpty:e.boolean().optional(),amend:e.boolean().optional()}),K=e.object({success:e.boolean(),hash:e.string().optional(),branch:e.string().optional(),error:e.string().optional()}),q=e.enum([`merge`,`squash`,`fast-forward-only`]),J=e.object({repoPath:e.string().optional(),source:e.string(),approach:q.optional(),message:e.string().optional(),abortOnConflict:e.boolean().optional()}),Y=e.object({success:e.boolean(),hash:e.string().optional(),fastForward:e.boolean().optional(),conflicts:e.array(e.string()).optional(),error:e.string().optional()}),X=e.object({repoPath:e.string().optional()}),ie=e.object({success:e.boolean(),error:e.string().optional()}),ae=e.object({repoPath:e.string().optional(),onto:e.string(),abort:e.boolean().optional(),continueRebase:e.boolean().optional()}),oe=e.object({success:e.boolean(),hash:e.string().optional(),conflicts:e.array(e.string()).optional(),error:e.string().optional()}),Z=e.enum([`push`,`pop`,`apply`,`drop`,`list`]),se=e.object({repoPath:e.string().optional(),operation:Z,message:e.string().optional(),includeUntracked:e.boolean().optional(),index:e.number().int().min(0).optional()}),Q=e.object({index:e.number(),message:e.string(),branch:e.string(),date:e.string()}),ce=e.object({success:e.boolean(),entries:e.array(Q).optional(),error:e.string().optional()}),le=e.object({repoPath:e.string().optional(),name:e.string(),startPoint:e.string().optional(),checkout:e.boolean().optional()}),ue=e.object({success:e.boolean(),name:e.string().optional(),error:e.string().optional()}),de=e.object({repoPath:e.string().optional(),name:e.string(),force:e.boolean().optional()}),fe=e.object({success:e.boolean(),error:e.string().optional()}),pe=e.object({repoPath:e.string().optional(),oldName:e.string(),newName:e.string()}),me=e.object({success:e.boolean(),error:e.string().optional()}),he=e.object({repoPath:e.string().optional(),ref:e.string(),createBranch:e.boolean().optional(),startPoint:e.string().optional()}),ge=e.object({success:e.boolean(),ref:e.string().optional(),error:e.string().optional()}),_e=e.object({repoPath:e.string().optional(),remote:e.string().optional(),branch:e.string().optional(),setUpstream:e.boolean().optional(),force:e.boolean().optional()}),ve=e.object({success:e.boolean(),remote:e.string().optional(),branch:e.string().optional(),error:e.string().optional()}),ye=e.object({repoPath:e.string().optional(),remote:e.string().optional(),branch:e.string().optional(),rebase:e.boolean().optional()}),be=e.object({success:e.boolean(),conflicts:e.array(e.string()).optional(),error:e.string().optional()}),xe=e.object({repoPath:e.string().optional(),remote:e.string().optional(),prune:e.boolean().optional()}),Se=e.object({success:e.boolean(),error:e.string().optional()}),Ce=e.object({repoPath:e.string().optional(),paths:e.array(e.string()).min(1)}),we=e.object({success:e.boolean(),error:e.string().optional()}),Te=e.object({repoPath:e.string(),hash:e.string(),message:e.string(),author:e.string(),email:e.string(),branch:e.string(),timestamp:e.string(),worktree:e.string().optional()}),Ee=e.object({repoPath:e.string(),previousBranch:e.string().optional(),currentBranch:e.string(),timestamp:e.string(),worktree:e.string().optional()}),De=e.object({repoPath:e.string(),staged:e.array(e.string()),timestamp:e.string(),worktree:e.string().optional()}),Oe=e.object({repoPath:e.string(),sourceBranch:e.string(),targetBranch:e.string(),mergeCommit:e.string(),timestamp:e.string(),worktree:e.string().optional()}),$=e.enum([`started`,`completed`,`aborted`]),ke=e.object({repoPath:e.string(),branch:e.string(),onto:e.string(),status:$,timestamp:e.string(),worktree:e.string().optional()}),Ae=e.object({repoPath:e.string(),name:e.string(),path:e.string(),branch:e.string(),event:e.enum([`added`,`removed`]),timestamp:e.string()}),je=e.object({repoPath:e.string()}),Me=e.object({success:e.boolean(),error:e.string().optional()}),Ne=e.object({repoPath:e.string()}),Pe=e.object({success:e.boolean()}),Fe=e.object({path:e.string(),defaultBranch:e.string().optional()}),Ie=e.object({success:e.boolean(),path:e.string(),defaultBranch:e.string()}),Le=e.object({repoPath:e.string(),path:e.string(),branch:e.string(),baseBranch:e.string().optional(),createBranch:e.boolean().optional()}),Re=e.object({success:e.boolean(),path:e.string(),branch:e.string(),error:e.string().optional()}),ze=e.object({repoPath:e.string(),path:e.string(),force:e.boolean().optional(),deleteBranch:e.boolean().optional()}),Be=e.object({success:e.boolean(),error:e.string().optional()}),Ve=e.object({repoPath:e.string().optional(),paths:e.array(e.string()).min(1)}),He=e.object({success:e.boolean(),error:e.string().optional()}),Ue=e.object({repoPath:e.string().optional(),paths:e.array(e.string()).min(1)}),We=e.object({success:e.boolean(),error:e.string().optional()});export{N as $,de as A,y as At,be as B,re as Bt,ie as C,a as Ct,ue as D,w as Dt,le as E,C as Et,Se as F,p as Ft,pe as G,ve as H,g as Ht,q as I,m as It,Z as J,me as K,J as L,P as Lt,Ce as M,b as Mt,we as N,n as Nt,G as O,D as Ot,xe as P,r as Pt,M as Q,Y as R,F as Rt,X as S,W as St,ge as T,T as Tt,ae as U,h as Ut,_e as V,f as Vt,oe as W,_ as Wt,ce as X,se as Y,t as Z,He as _,B as _t,Le as a,ee as at,We as b,u as bt,Ie as c,l as ct,$ as d,c as dt,L as et,Ne as f,x as ft,Ve as g,z as gt,Be as h,j as ht,Te as i,H as it,fe as j,v as jt,K as k,E as kt,Oe as l,te as lt,ze as m,A as mt,Me as n,R as nt,Re as o,i as ot,Pe as p,S as pt,Q as q,Ee as r,V as rt,Fe as s,d as st,je as t,I as tt,ke as u,s as ut,De as v,O as vt,he as w,o as wt,Ae as x,U as xt,Ue as y,k as yt,ye as z,ne as zt};
@@ -1,4 +1,4 @@
1
- import { a as ProviderOperationClaim, i as ProcessBoundProvisionerLossProof, l as ProviderOperationOwnershipRecord, o as ProviderOperationClaimDecision, s as ProviderOperationMutationDecision } from "./provider-operation-DJ_TLZFf.mjs";
1
+ import { a as ProviderOperationClaim, i as ProcessBoundProvisionerLossProof, l as ProviderOperationOwnershipRecord, o as ProviderOperationClaimDecision, s as ProviderOperationMutationDecision } from "./provider-operation-DbdyFwNm.mjs";
2
2
  import { BoundedRecoveryEvidence, ProviderAllocationRef, WorkerNodeAllocationLifetime, WorkflowRunResult } from "@makaio/framework/contracts";
3
3
 
4
4
  //#region subsystems/workflow-engine/src/execution-attempt-repository.d.ts
@@ -1 +1 @@
1
- import{A as e,E as t,M as n,N as r,O as i,_ as a,j as o,k as s,m as c,v as l,w as u}from"./schemas-CvHFbzdy.mjs";import"./services/execution-target/namespace.mjs";import{z as d}from"zod";import{channelSubject as f,createBusNamespace as p,localSubject as m}from"@makaio/framework/core";const h=`docker-bootstrap`,g=p(`docker`,{"container.spawn":{request:i,response:s},"bootstrap.spawn":f({request:c,response:s}),"bootstrap.getChannelToken":m({request:d.object({}),response:d.object({token:d.string().min(1)})}),"container.stop":{request:n,response:r},"container.status":{request:e,response:o},"container.created":a,"container.started":u,"container.stopped":t,"container.destroyed":l}),_=g.subjects,v=g,y=_;export{_ as a,g as i,y as n,h as r,v as t};
1
+ import{A as e,E as t,M as n,N as r,O as i,_ as a,j as o,k as s,m as c,v as l,w as u}from"./schemas-TK29KWx-.mjs";import"./services/execution-target/namespace.mjs";import{z as d}from"zod";import{channelSubject as f,createBusNamespace as p,localSubject as m}from"@makaio/framework/core";const h=`docker-bootstrap`,g=p(`docker`,{"container.spawn":{request:i,response:s},"bootstrap.spawn":f({request:c,response:s}),"bootstrap.getChannelToken":m({request:d.object({}),response:d.object({token:d.string().min(1)})}),"container.stop":{request:n,response:r},"container.status":{request:e,response:o},"container.created":a,"container.started":u,"container.stopped":t,"container.destroyed":l}),_=g.subjects,v=g,y=_;export{_ as a,g as i,y as n,h as r,v as t};
@@ -1 +1 @@
1
- import{n as e}from"./window-registry-CoBJq3u4.mjs";import{n as t}from"./namespace-CxrOLeeP.mjs";import{n}from"./extension-namespace-B554RmCp.mjs";import{t as r}from"./schema-introspection-C1wvklj9.mjs";import{z as i}from"zod";import a from"node:path";import{getErrorString as o}from"@makaio/framework/utils";import{createBusNamespace as s}from"@makaio/framework/core";import{ProviderDefinitionSchema as c,primaryMigrationsPath as l,versionSatisfies as u}from"@makaio/framework/contracts";import{ToastSubjects as d}from"@makaio/framework/contracts/toast";import{ExtensionWarningSchema as f,getExtensionWarningActionLabel as p}from"@makaio/framework/contracts/extension";import{TrayMenuSubjects as m}from"@makaio/framework/services/tray-menu";const h=i.object({name:i.string(),displayName:i.string()}),g=s(`kernel:boot`,{getState:{request:i.object({}),response:i.object({complete:i.boolean(),completedCount:i.number(),totalCount:i.number(),currentService:i.string().optional(),failedServices:i.array(i.string()),skippedServices:i.array(i.string()).default([]),totalDurationMs:i.number().optional()})},"service.starting":h,"service.ready":h.extend({durationMs:i.number().int().nonnegative()}),"service.failed":h.extend({errorMessage:i.string()}),"service.skipped":h.extend({reason:i.string()}),progress:i.object({completedCount:i.number(),totalCount:i.number(),currentService:i.string().optional()}),complete:i.object({totalDurationMs:i.number(),failedServices:i.array(i.string())})}),_=g.subjects;var v=class extends Error{reason;constructor(e){super(e),this.name=`ServiceSkipError`,this.reason=e}};function y(e){return{name:e.name,displayName:e.displayName}}var b=class{bus;state;cleanup;constructor(e,t){this.bus=e,this.state={complete:!1,completedCount:0,totalCount:t,failedServices:[],skippedServices:[],startedAt:Date.now()},this.cleanup=this.bus.on(_.getState,e=>{e.setResult({complete:this.state.complete,completedCount:this.state.completedCount,totalCount:this.state.totalCount,...this.state.currentService===void 0?{}:{currentService:this.state.currentService},failedServices:[...this.state.failedServices],skippedServices:[...this.state.skippedServices],...this.state.totalDurationMs===void 0?{}:{totalDurationMs:this.state.totalDurationMs}})})}dispose(){this.cleanup()}starting(e){let t=y(e);this.state.currentService=t.displayName,this.state.currentServiceStartedAt=Date.now(),this.bus.emit(_.service.starting,t).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.starting emit failed for "${t.name}":`,e)})}ready(e){let t=y(e);this.state.completedCount+=1;let n=this.state.currentServiceStartedAt===void 0?0:Math.max(0,Date.now()-this.state.currentServiceStartedAt);this.bus.emit(_.service.ready,{...t,durationMs:n}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.ready emit failed for "${t.name}":`,e)}),this.emitProgress()}failed(e,t){let n=y(e);this.state.completedCount+=1,this.state.failedServices.push(n.name),this.bus.emit(_.service.failed,{...n,errorMessage:t}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.failed emit failed for "${n.name}":`,e)}),this.emitProgress()}skipped(e,t){let n=y(e);this.state.completedCount+=1,this.state.skippedServices.push(n.name),this.bus.emit(_.service.skipped,{...n,reason:t}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.skipped emit failed for "${n.name}":`,e)}),this.emitProgress()}complete(){this.state.complete=!0,delete this.state.currentService,delete this.state.currentServiceStartedAt,this.state.totalDurationMs=Date.now()-this.state.startedAt,this.bus.emit(_.complete,{totalDurationMs:this.state.totalDurationMs,failedServices:[...this.state.failedServices]}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.complete emit failed:`,e)})}emitProgress(){this.bus.emit(_.progress,{completedCount:this.state.completedCount,totalCount:this.state.totalCount,...this.state.currentService===void 0?{}:{currentService:this.state.currentService}}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.progress emit failed:`,e)})}};function x(e){return{subject:`wiring.apply`,$meta:{namespace:`client:${e}`,isRequest:!0,local:!1,channel:!1,payload:{request:{},response:{}}}}}const S=`action`;function C(e,t){return`${e}:${t}`}function ee(e,t,n){return e.on(d.interacted,r=>{let{toastId:i,actionId:a}=r.payload,o=C(i,a),s=t.get(o);s&&w(e,s,i,n).catch(e=>{console.error(`[ExtensionCoordinator] Warning action dispatch failed for toast "${i}":`,e)})})}async function w(e,t,n,r){switch(t.kind){case`configure-integration`:await ne(e,t.clientId,n,r);break;case`open-url`:console.info(`[ExtensionCoordinator] Toast "${n}" open-url action not routable from runtime layer: ${t.url}`);break;case`run-command`:console.info(`[ExtensionCoordinator] Toast "${n}" run-command action not routable from runtime layer: ${t.command}`);break;case`install-extension`:console.info(`[ExtensionCoordinator] Toast "${n}" install-extension action not routable from runtime layer: ${t.extensionName}`);break;default:te(t)}}function te(e){throw Error(`[ExtensionCoordinator] Unsupported warning action: ${JSON.stringify(e)}`)}async function ne(e,t,n,r){let i=x(t),a=await e.requestOptional(i,{scope:`user`,makaioCommand:r});if(!a.handled){console.warn(`[ExtensionCoordinator] Toast "${n}" configure-integration: no wiring handler for client "${t}". Is the client package loaded?`);return}let{applied:o,skipped:s}=a.data;console.info(`[ExtensionCoordinator] Toast "${n}" configure-integration: wired client "${t}" — ${o} applied, ${s} skipped.`)}function T(e){return e.map(e=>({name:e.name,description:e.description,hasInteractive:!!e.interactive,subcommands:e.subcommands.map(e=>({name:e.name,description:e.description,args:r(e.schema)}))}))}async function E(e,t,n){let{command:r,subcommand:i,args:a}=e,o=t.find(e=>e.name===r);if(!o)return{exitCode:1,stdout:[],stderr:[`Unknown command: ${r}`]};let s=o.subcommands.find(e=>e.name===i);if(!s)return{exitCode:1,stdout:[],stderr:[`Unknown subcommand: ${i}`]};let c=s.schema.safeParse(a??{});if(!c.success)return{exitCode:1,stdout:[],stderr:[`Validation failed:`,...c.error.issues.map(e=>` ${e.path.join(`.`)||`(root)`}: ${e.message}`)]};if(o.beforeRun)try{let e=await o.beforeRun({subcommandName:i,args:c.data??{},bus:n});if(!e.proceed)return{exitCode:e.exitCode??1,stdout:[],stderr:[e.message]}}catch(e){return{exitCode:1,stdout:[],stderr:[`beforeRun hook failed: ${e instanceof Error?e.message:String(e)}`]}}let l=[],u=[],d={write:e=>l.push(e),error:e=>u.push(e)},f=0,p=new AbortController().signal;try{await s.handler({args:c.data,bus:n,output:d,signal:p,setExitCode:e=>{f=e}})}catch(e){f===0&&(f=1),u.push(e instanceof Error?e.message:String(e))}return{exitCode:f,stdout:l,stderr:u}}function D(e){let{pkg:t,state:n,error:r,enabled:i}=e;return{name:t.name,displayName:t.displayName,state:n,...t.surface===void 0?{}:{surface:t.surface},enabled:i,...t.browser===void 0?{}:{browser:t.browser},...r===void 0?{}:{error:r}}}function O(e){let r=[];return r.push(e.bus.on(n.list,t=>{t.setResult({extensions:e.list()})})),r.push(e.bus.on(n.get,t=>{let n=e.entries.get(t.payload.name);t.setResult({extension:n?D(n):null})})),r.push(e.bus.on(n.setEnabled,async t=>{let n=await e.handleSetEnabled(t.payload.name,t.payload.enabled);t.setResult({success:n})})),r.push(e.bus.on(n.contributions.catalog,t=>{let n=[],r=[];for(let[t,i]of e.entries)if(i.state===`active`){for(let e of i.pkg.providers??[])n.push({packageName:t,definition:c.parse(e)});for(let e of i.pkg.clients??[])r.push({packageName:t,definition:e})}t.setResult({providers:n,clients:r})})),r.push(e.bus.on(t.listContributions,t=>{t.setResult({contributions:T(e.cliContributions)})})),r.push(e.bus.on(t.execute,async t=>{t.setResult(await E(t.payload,e.cliContributions,e.bus))})),r.push(e.bus.on(n.warnings.list,t=>{let{extensionName:n}=t.payload;if(n!==void 0){let r=e.entries.get(n),i=r&&r.warnings.length>0?[{extensionName:n,warnings:[...r.warnings]}]:[];t.setResult({entries:i});return}let r=[];for(let[t,n]of e.entries)n.warnings.length>0&&r.push({extensionName:t,warnings:[...n.warnings]});t.setResult({entries:r})})),r}async function re(e){for(let[t,n]of e.entries)n.state===`active`&&await A(e,t,n)}function ie(e){if(e&&k(e))return[{id:S,label:p(e)}]}function k(e){return e.kind===`configure-integration`}function ae(e,t){let n=`${t}:`;for(let t of e.keys())t.startsWith(n)&&e.delete(t)}async function A(e,t,n){ae(e.warningActionMap,t);let r=n.warnings.filter(e=>e.severity===`degraded`);if(r.length!==0)for(let i=0;i<r.length;i++){let a=r[i];console.warn(`[${t}] ⚠ ${a.title}: ${a.message}`);let o=`${t}:${a.title}:${i}`,s=ie(a.action);try{await e.bus.emit(d.show,{level:`warning`,title:a.title,message:`${n.pkg.displayName}: ${a.message}`,toastId:o,durationMs:null,...s&&{actions:s}}),a.action&&k(a.action)&&e.warningActionMap.set(C(o,S),a.action)}catch(e){console.warn(`[${t}] toast emission failed for warning "${a.title}":`,e)}}}function oe(e){return Object.freeze({extensionName:e})}function se(e,t,n,r){if(!t)return;let i={...n??{},...r??{}};try{return t.parse(i)}catch(n){console.warn(`[ExtensionCoordinator] Config parse failed for "${e}", starting with schema defaults:`,n instanceof Error?n.message:n);try{return t.parse({})}catch{console.warn(`[ExtensionCoordinator] Fallback config parse also failed for "${e}" — config will be absent`);return}}}function j(e,t,n){let r;if(n.pkg.configSchema)try{r=e.loadConfig?.(t)}catch(e){console.error(`[ExtensionCoordinator] loadConfig threw for "${t}":`,e)}return se(t,n.pkg.configSchema,n.configDefaults,r)}function M(e,t,n){if(!e.extensionContextBase)throw Error(`ExtensionCoordinator: extensionContextBase is required to start extensions with a create factory. Provide it via the constructor.`);return{...e.extensionContextBase,bus:e.bus,identity:t.identity,dataDir:a.join(e.extensionContextBase.makaioHome,t.identity.extensionName),getService:t=>e.getExtensionService(t.name),signal:e.signal,hasExtension:e.hasActiveExtension,...n===void 0?{}:{config:n}}}function N(e){return{adapters:!!e.adapters?.length,tools:!!e.tools,hashTriggers:!!e.hashTriggers,providers:!!e.providers?.length,clients:!!e.clients?.length,ui:!!e.ui,storage:!!e.storage,sessionEventActions:!!e.sessionEventActions}}function P(e,t,r){let i=t.state;t.state=r,e.emit(n.stateChanged,{name:t.pkg.name,displayName:t.pkg.displayName,from:i,to:r,...t.error===void 0?{}:{error:t.error},contributes:N(t.pkg)}).catch(e=>{console.error(`[ExtensionCoordinator] stateChanged emit failed for "${t.pkg.name}":`,e)})}async function F(e,t,n,r,i){return i===`activated`?(await I(e,t,n,r),[]):L(e,n)}async function I(e,t,n,r){let i=[];try{for(let a of e){if(a.filter&&!a.filter(r.pkg))continue;let e=M(t,r,j(t,n,r));await a.processActivated(n,r.pkg,e),i.push(a)}}catch(e){for(let e of i.reverse())if(e.processStopped)try{await e.processStopped(n)}catch(e){console.error(`[ExtensionCoordinator] Contribution processor rollback error for "${n}":`,e)}throw e}}async function L(e,t){let n=[];for(let r of[...e].reverse())if(r.processStopped)try{await r.processStopped(t)}catch(e){n.push(e)}return n}async function R(e,t,r){let i=e.entries.get(t);if(!i)return!1;let a=i.enabled,o=r!==a;o&&await e.persistEnabled?.(t,r);let s;try{s=r?await z(e,t,i):await B(e,t,i)}catch(n){if(o&&e.persistEnabled)try{await e.persistEnabled(t,a)}catch(e){throw AggregateError([n,e],`Extension "${t}" transition and preference rollback both failed`)}throw n}return i.enabled===a&&!s?(o&&await e.persistEnabled?.(t,a),!1):(e.bus.emit(n.enabledChanged,{name:t,enabled:r}).catch(e=>{console.error(`[ExtensionCoordinator] enabledChanged emit failed for "${t}":`,e)}),s)}async function z(e,t,n){if(n.state!==`stopped`&&n.state!==`failed`&&n.state!==`skipped`)return!1;let{pkg:r}=n,i,a=(r.dependencies??[]).filter(t=>{if(t.optional)return!1;let n=e.entries.get(t.name);return!n||n.state!==`active`});if(a.length>0)return n.error=`Required dependencies not active: ${a.map(e=>e.name).join(`, `)}`,console.error(`[ExtensionCoordinator] Cannot re-enable "${t}":`,n.error),P(e.bus,n,`failed`),!1;n.enabled=!0,n.error=void 0,P(e.bus,n,`initializing`);let s=j(e,t,n);if(r.storage?.registerHandlers&&e.db!==void 0)try{let t=M(e,n,s),a=r.storage.registerHandlers(e.bus,e.db,t);typeof a==`function`&&(i=a,n.storageCleanup=a)}catch(r){return n.error=o(r),console.error(`[ExtensionCoordinator] Extension "${t}" storage re-registration failed:`,r),P(e.bus,n,`failed`),!1}if(r.create){let a;try{let t=M(e,n,s);a=await r.create(t),await a.init?.(),n.service=a}catch(r){return await V(t,a,i,n),r instanceof v?n.pkg.critical?(n.error=`Critical extension cannot skip startup: ${r.reason}`,console.error(`[ExtensionCoordinator] Extension "${t}" failed to re-initialize:`,n.error),P(e.bus,n,`failed`),!1):(n.error=r.reason,P(e.bus,n,`skipped`),!1):(n.error=o(r),console.error(`[ExtensionCoordinator] Extension "${t}" failed to re-initialize:`,r),P(e.bus,n,`failed`),!1)}}try{await F(e.contributionProcessors,e,t,n,`activated`)}catch(r){return await V(t,n.service,i,n),n.service=void 0,n.error=o(r),console.error(`[ExtensionCoordinator] Extension "${t}" contribution processing failed:`,r),P(e.bus,n,`failed`),!1}return P(e.bus,n,`active`),await e.runHealthCheck(t),await e.emitWarningsForEntry(t,n),!0}async function B(e,t,r){if(r.state!==`active`)return!1;let i=Array.from(e.entries.entries()).filter(([e,n])=>e===t||n.state!==`active`?!1:n.pkg.dependencies?.some(e=>!e.optional&&e.name===t)??!1).map(([e])=>e);if(i.length>0)return r.error=`Cannot disable "${t}" while active dependents remain: ${i.join(`, `)}`,console.error(`[ExtensionCoordinator] ${r.error}`),!1;r.enabled=!1,r.error=void 0;let a=[];try{a.push(...await F(e.contributionProcessors,e,t,r,`stopped`))}catch(e){a.push(e),console.error(`[ExtensionCoordinator] Contribution processor error during disable of "${t}":`,e)}if(r.service)try{await r.service.destroy?.()}catch(e){a.push(e),console.error(`[ExtensionCoordinator] Error during disable destroy of "${t}":`,e)}finally{r.service=void 0}if(r.storageCleanup)try{r.storageCleanup()}catch(e){a.push(e),console.error(`[ExtensionCoordinator] Storage cleanup error during disable of "${t}":`,e)}finally{r.storageCleanup=void 0}if(a.length>0){let e=a.map(e=>o(e)).join(`; `);r.error=o(AggregateError(a,`Extension "${t}" disabled with ${a.length} teardown failure(s): ${e}`))}P(e.bus,r,`stopped`),r.warnings=[];try{await e.bus.emit(n.warnings.changed,{extensionName:t,warnings:[]})}catch(e){console.error(`[ExtensionCoordinator] warnings.changed emit failed for "${t}":`,e)}return a.length===0}async function V(e,t,n,r){try{await t?.destroy?.()}catch(t){console.error(`[ExtensionCoordinator] Service cleanup error after failed enable of "${e}":`,t)}try{n?.()}catch(t){console.error(`[ExtensionCoordinator] Storage cleanup error after failed enable of "${e}":`,t)}finally{r.storageCleanup=void 0}}function H(e){let t=new Map;for(let n of e)t.has(n.name)&&(console.info(`[ExtensionCoordinator] Extension "${n.name}" overrides an earlier registration`),t.delete(n.name)),t.set(n.name,n);return[...t.values()]}function U(e,t,n){let r=new Set(e.map(e=>e.name)),i=e.filter(e=>W(e,t,n)),a=new Map(i.map(e=>[e.name,e])),o=new Set(a.keys()),s=!0;for(;s;){s=!1;for(let e of o)(a.get(e).dependencies??[]).some(e=>!e.optional&&r.has(e.name)&&!o.has(e.name))&&(o.delete(e),s=!0)}return i.filter(e=>o.has(e.name))}function W(e,t,n){if(!K(e,t))return!1;let r=e.requires;return!r||r.length===0||!n?!0:r.every(e=>{switch(e.type){case`host`:return n.hosts.has(e.id);case`capability`:return n.capabilities.has(e.id)?e.version===void 0?!0:G(n,e.id,e.version):!1}})}function G(e,t,n){let r=e.capabilityVersions?.get(t);return r!==void 0&&u(r,n)}function K(e,t){return e.surface===void 0||e.surface===`any`||e.surface===t}function ce(e){let t=le(e);return ue(e,t,new Map(e.map(e=>[e.name,e]))),pe(t,fe(e,t))}function le(e){let t=new Set;for(let n of e){if(t.has(n.name))throw Error(`ExtensionCoordinator: duplicate package name detected: "${n.name}"`);t.add(n.name)}return t}function ue(e,t,n){for(let r of e)de(r,t,n)}function de(e,t,n){let r=e.dependencies??[],i=r.filter(e=>!e.optional&&!t.has(e.name));if(i.length>0)throw Error(`ExtensionCoordinator: package "${e.name}" declares missing dependencies: ${i.map(e=>e.name).join(`, `)}`);for(let t of r){let r=n.get(t.name);if(r===void 0)continue;let i=r.version;if(!u(i,t.version))throw Error(`ExtensionCoordinator: package "${e.name}" dependency "${t.name}" version ${i} does not satisfy ${t.version}`)}}function fe(e,t){let n=new Map;for(let r of e){let e=(r.dependencies??[]).filter(e=>t.has(e.name)).map(e=>e.name);n.set(r.name,new Set(e))}return n}function pe(e,t){let n=[];for(let[e,r]of t)r.size===0&&n.push(e);let r=[],i=new Set;for(;n.length>0;){let e=n.shift();if(!i.has(e)){i.add(e),r.push(e);for(let[r,a]of t)a.has(e)&&(a.delete(e),a.size===0&&!i.has(r)&&n.push(r))}}if(r.length!==e.size){let t=[...e].filter(e=>!i.has(e));throw Error(`ExtensionCoordinator: circular dependency detected among: ${t.join(`, `)}`)}return r}async function me(e){if(!e.runMigrations)return;let t=[];for(let n of e.loadOrder){let r=e.entries.get(n);if(!r)throw Error(`Extension "${n}" is in loadOrder but missing from entries`);let i=r.pkg.storage?.migrations;if(!i)continue;let a,o;if(typeof i==`string`)a=q(n,r.pkg,i);else{let e={};for(let[t,a]of Object.entries(i))a!==void 0&&(e[t]=q(n,r.pkg,a));let t=l(e);if(t===void 0)continue;a=t,o=e}t.push({name:n,migrationsPath:a,migrationSourceId:r.pkg.storage?.migrationSourceId??a,...o?{migrationsPathByDialect:o}:{}})}t.length!==0&&await e.runMigrations(t)}function q(e,t,n){if(a.isAbsolute(n))return n;let r=t.storage?.packageRoot;if(!r)throw Error(`Extension "${e}" declares relative storage.migrations "${n}" without storage.packageRoot`);let i=a.resolve(r),o=a.resolve(i,n),s=a.relative(i,o);if(s.startsWith(`..`)||a.isAbsolute(s))throw Error(`Extension "${e}" declares storage.migrations "${n}" outside storage.packageRoot`);return o}async function J(e,t){let r=e.entries.get(t);if(!r?.service||r.state!==`active`)return;let{checkHealth:i}=r.service;if(!i)return;let a;try{let e=await i.call(r.service),n=f.array().safeParse(e);n.success?a=n.data:(console.error(`[ExtensionCoordinator] checkHealth for "${t}" returned invalid data:`,n.error),a=[])}catch(e){console.error(`[ExtensionCoordinator] checkHealth threw for "${t}":`,e),a=[]}r.warnings=a;try{await e.bus.emit(n.warnings.changed,{extensionName:t,warnings:[...a]})}catch(e){console.error(`[ExtensionCoordinator] warnings.changed emit failed for "${t}":`,e)}}function he(e,t){if(t.windows)for(let n of t.windows)e.windowRegistry.register(t.name,t.displayName,n);if(t.tray&&e.trayEntries.push({...t.tray,packageName:t.name}),t.cli){let n=t.cli;`subcommands`in n&&e.cliContributions.push(n)}}function Y(e){return Array.from(e.values()).filter(e=>e.enabled).map(e=>e.pkg).filter(e=>!!e.http)}async function ge(e){let t=[...e.loadOrder].reverse(),n=[],r=[];for(let i of t){let t=e.entries.get(i);if(!t)continue;let a=!1;if(t.state===`active`){let r=await F(e.contributionProcessors,e.contextHost,i,t,`stopped`);r.length>0&&(a=!0,n.push(...r))}if(t.service)try{await t.service.destroy?.()}catch(e){a=!0,n.push(e)}finally{t.service=void 0}if(t.storageCleanup)try{t.storageCleanup()}catch(e){a=!0,n.push(e)}finally{t.storageCleanup=void 0}a&&r.push(i),t.state===`active`&&P(e.contextHost.bus,t,`stopped`)}if(n.length>0)throw AggregateError(n,`Extensions failed to shut down cleanly: ${r.join(`, `)}`)}async function _e(e,t){if(!t.tray)return;let n=ve(t);await e.request(m.register,{entry:n})}function ve(e){let t=e.tray;if(!t)throw Error(`[tray-menu-entry-bridge] extension "${e.name}" does not declare a tray entry`);return{packageName:e.name,entryId:t.opensWindow??t.action??`default`,label:t.label,section:t.section??`views`,priority:50,enabled:!0,metadata:t.opensWindow?{registrationId:`${e.name}:${t.opensWindow}`}:t.action?{action:t.action}:void 0}}async function ye(e,t,n){if(!n.enabled){P(e.bus,n,`skipped`),e.bootProgress.skipped(n.pkg,`disabled`);return}let r=(n.pkg.dependencies??[]).filter(t=>t.optional?!1:e.entries.get(t.name)?.state!==`active`);if(r.length>0){let i=`Required dependencies not active: ${r.map(e=>e.name).join(`, `)}`;if(Q(e,t,n,i),n.pkg.critical)throw Error(`Critical package "${t}" failed: ${i}`);return}e.bootProgress.starting(n.pkg),P(e.bus,n,`initializing`);let i=j(e.contextHost,t,n);if(Se(e,t,n,i)){if(!n.pkg.create){await be(e,t,n);return}await xe(e,t,n,i)}}async function be(e,t,n){try{await F(e.contributionProcessors,e.contextHost,t,n,`activated`)}catch(r){if(Z(t,n),X(e,t,n,r))return;if(Q(e,t,n,r instanceof Error?r.message:String(r)),n.pkg.critical)throw r;return}P(e.bus,n,`active`),e.bootProgress.ready(n.pkg),await $(e.bus,t,n)}async function xe(e,t,n,r){let i;try{let a=M(e.contextHost,n,r);i=await n.pkg.create(a),await i.init?.(),n.service=i,await F(e.contributionProcessors,e.contextHost,t,n,`activated`),P(e.bus,n,`active`),e.bootProgress.ready(n.pkg),await $(e.bus,t,n)}catch(r){try{await i?.destroy?.()}catch(e){console.error(`[ExtensionCoordinator] Service cleanup error after failed start of "${t}":`,e)}if(n.service=void 0,Z(t,n),X(e,t,n,r))return;if(Q(e,t,n,r instanceof Error?r.message:String(r)),n.pkg.critical)throw r}}function X(e,t,n,r){if(!(r instanceof v))return!1;if(n.pkg.critical){let i=`Critical package cannot skip startup: ${r.reason}`;throw Q(e,t,n,i),Error(`Critical package "${t}" failed: ${i}`,{cause:r})}return n.error=r.reason,console.info(`[ExtensionCoordinator] Package "${t}" skipped: ${r.reason}`),P(e.bus,n,`skipped`),e.bootProgress.skipped(n.pkg,r.reason),!0}function Se(e,t,n,r){if(!n.pkg.storage?.registerHandlers||e.db===void 0)return!0;try{let t=M(e.contextHost,n,r),i=n.pkg.storage.registerHandlers(e.bus,e.db,t);return i&&(n.storageCleanup=i),!0}catch(r){let i=r instanceof Error?r.message:String(r);if(console.error(`[ExtensionCoordinator] Package "${t}" storage registration failed:`,r),Q(e,t,n,i),n.pkg.critical)throw r;return!1}}function Z(e,t){if(t.storageCleanup)try{t.storageCleanup()}catch(t){console.error(`[ExtensionCoordinator] Storage cleanup error after failed start of "${e}":`,t)}finally{t.storageCleanup=void 0}}function Q(e,t,n,r){n.error=r,console.error(`[ExtensionCoordinator] Package "${t}" failed:`,r),P(e.bus,n,`failed`),e.bootProgress.failed(n.pkg,r)}async function $(e,t,n){try{await _e(e,n.pkg)}catch(e){console.warn(`[ExtensionCoordinator] Failed to register tray entry for ${t}:`,e)}}var Ce=class{bus;surface;db;extensionContextBase;runtimeEnvironment;shutdownController=new AbortController;entries=new Map;loadOrder=[];loaded=!1;started=!1;shutdownRequested=!1;shutdownPromise;lifecycleTail=Promise.resolve();rpcCleanups=[];contributionProcessors=[];warningActionMap=new Map;windowRegistry=new e;_trayEntries=[];_cliContributions=[];persistEnabled;loadEnabled;loadConfig;runMigrations;constructor(e,t={}){this.bus=e,this.surface=t.surface??`headless`,this.db=t.db,this.extensionContextBase=t.extensionContextBase,this.runtimeEnvironment=t.runtimeEnvironment,this.persistEnabled=t.persistEnabled,this.loadEnabled=t.loadEnabled,this.loadConfig=t.loadConfig,this.runMigrations=t.runMigrations,this.rpcCleanups.push(ee(this.bus,this.warningActionMap,t.launcherCommand??`makaio`))}get trayEntries(){return this._trayEntries.map(e=>({...e}))}get cliContributions(){return this._cliContributions}extensionsWithHttp(){return Y(this.entries)}load(e,t){if(this.shutdownRequested)throw Error(`ExtensionCoordinator.load() called after shutdown(). The coordinator is terminal.`);if(this.loaded)throw Error(`ExtensionCoordinator.load() called twice. The coordinator is single-use; create a new instance if needed.`);let n=H(U(e,this.surface,this.runtimeEnvironment));this.loadOrder=ce(n);for(let e of this.loadOrder){let r=n.find(t=>t.name===e),i={pkg:r,identity:oe(r.name),state:`discovered`,enabled:this.loadEnabled?.(e)!==!1,warnings:[]};if(t){let n=t.get(e);n&&(i.configDefaults=n)}this.entries.set(e,i),r.namespaces&&this.bus.registerNamespaces(r.namespaces),he({windowRegistry:this.windowRegistry,trayEntries:this._trayEntries,cliContributions:this._cliContributions},r)}this.rpcCleanups.push(...O({bus:this.bus,entries:this.entries,cliContributions:this._cliContributions,list:()=>this.list(),handleSetEnabled:(e,t)=>this.handleSetEnabled(e,t)})),this.loaded=!0}async startAll(){if(this.shutdownRequested)throw Error(`ExtensionCoordinator.startAll() called after shutdown(). The coordinator is terminal.`);if(!this.loaded)throw Error(`ExtensionCoordinator.startAll() called before load(). Call load() first.`);if(this.started)throw Error(`ExtensionCoordinator.startAll() called twice. The coordinator is single-use; create a new instance if needed.`);this.started=!0,await this.enqueueLifecycle(()=>this.startAllInLifecycleLane())}async startAllInLifecycleLane(){let e=new b(this.bus,this.loadOrder.length);this.rpcCleanups.push(()=>e.dispose());try{await me({loadOrder:this.loadOrder,entries:this.entries,runMigrations:this.runMigrations});for(let t of this.loadOrder){let n=this.entries.get(t);n&&await ye({bus:this.bus,db:this.db,entries:this.entries,contributionProcessors:this.contributionProcessors,contextHost:this.createExtensionContextHost(),bootProgress:e},t,n)}let t=this.createExtensionHealthHost();await Promise.all(this.loadOrder.map(e=>this.entries.get(e)?.state===`active`?J(t,e):void 0)),await re({bus:this.bus,entries:this.entries,warningActionMap:this.warningActionMap})}finally{e.complete()}}shutdown(){if(this.shutdownPromise)return this.shutdownPromise;this.shutdownRequested=!0;let e=this.enqueueLifecycle(()=>this.shutdownInLifecycleLane());return this.shutdownPromise=e,this.shutdownController.abort(),e}async shutdownInLifecycleLane(){let e=[],t;for(let t of this.rpcCleanups)try{t()}catch(t){e.push(t)}this.rpcCleanups=[],this.warningActionMap.clear();try{await ge({entries:this.entries,loadOrder:this.loadOrder,contributionProcessors:this.contributionProcessors,contextHost:this.createExtensionContextHost()})}catch(n){n instanceof AggregateError?(t=n.message,e.push(...n.errors)):e.push(n)}if(e.length>0){let n=t===void 0?``:`; ${t}`;throw AggregateError(e,`Extension coordinator shutdown failed with ${e.length} error(s)${n}`)}}list(){return[...this.entries.values()].map(e=>D(e))}getExtensionService(e){let t=typeof e==`string`?e:e.name;return this.entries.get(t)?.service}getExtension(e){return this.entries.get(e)?.pkg}getLoadedProviderDefinitionIds(){let e=new Set;for(let t of this.entries.values())if(t.enabled&&!(t.state===`failed`||t.state===`skipped`||t.state===`stopped`))for(let n of t.pkg.providers??[])e.add(n.id);return e}forEachActiveExtension(e){let t=this.createExtensionContextHost();for(let n of this.loadOrder){let r=this.entries.get(n);if(!r||r.state!==`active`)continue;let i=M(t,r,j(t,n,r));e(n,r.pkg,i)}}forExtension(e,t){let n=this.entries.get(e);if(!n||n.state!==`active`)return;let r=this.createExtensionContextHost(),i=M(r,n,j(r,e,n));t(e,n.pkg,i)}registerContributionProcessor(e){return this.contributionProcessors.push(e),()=>{let t=this.contributionProcessors.indexOf(e);t>=0&&this.contributionProcessors.splice(t,1)}}async handleSetEnabled(e,t){return this.shutdownRequested?!1:await this.enqueueLifecycle(()=>R({bus:this.bus,db:this.db,entries:this.entries,extensionContextBase:this.extensionContextBase,loadConfig:this.loadConfig,signal:this.shutdownController.signal,hasActiveExtension:e=>this.hasActiveExtension(e),persistEnabled:this.persistEnabled,contributionProcessors:this.contributionProcessors,getExtensionService:e=>this.getExtensionService(e),runHealthCheck:e=>J(this.createExtensionHealthHost(),e),emitWarningsForEntry:(e,t)=>A({bus:this.bus,entries:this.entries,warningActionMap:this.warningActionMap},e,t)},e,t))}enqueueLifecycle(e){let t=this.lifecycleTail.then(()=>e(),()=>e());return this.lifecycleTail=t.then(()=>void 0,()=>void 0),t}createExtensionContextHost(){return{bus:this.bus,extensionContextBase:this.extensionContextBase,loadConfig:this.loadConfig,signal:this.shutdownController.signal,hasActiveExtension:e=>this.hasActiveExtension(e),getExtensionService:e=>this.getExtensionService(e)}}createExtensionHealthHost(){return{bus:this.bus,entries:this.entries}}hasActiveExtension(e){return this.entries.get(e)?.state===`active`}};export{g as a,v as i,H as n,_ as o,U as r,Ce as t};
1
+ import{n as e}from"./window-registry-CKiMJjId.mjs";import{n as t}from"./namespace-sCPb79-7.mjs";import{n}from"./extension-namespace-QoTTwKPt.mjs";import{t as r}from"./schema-introspection-6-r_KEJQ.mjs";import{z as i}from"zod";import a from"node:path";import{getErrorString as o}from"@makaio/framework/utils";import{createBusNamespace as s}from"@makaio/framework/core";import{ProviderDefinitionSchema as c,primaryMigrationsPath as l,versionSatisfies as u}from"@makaio/framework/contracts";import{ToastSubjects as d}from"@makaio/framework/contracts/toast";import{ExtensionWarningSchema as f,getExtensionWarningActionLabel as p}from"@makaio/framework/contracts/extension";import{TrayMenuSubjects as m}from"@makaio/framework/services/tray-menu";const h=i.object({name:i.string(),displayName:i.string()}),g=s(`kernel:boot`,{getState:{request:i.object({}),response:i.object({complete:i.boolean(),completedCount:i.number(),totalCount:i.number(),currentService:i.string().optional(),failedServices:i.array(i.string()),skippedServices:i.array(i.string()).default([]),totalDurationMs:i.number().optional()})},"service.starting":h,"service.ready":h.extend({durationMs:i.number().int().nonnegative()}),"service.failed":h.extend({errorMessage:i.string()}),"service.skipped":h.extend({reason:i.string()}),progress:i.object({completedCount:i.number(),totalCount:i.number(),currentService:i.string().optional()}),complete:i.object({totalDurationMs:i.number(),failedServices:i.array(i.string())})}),_=g.subjects;var v=class extends Error{reason;constructor(e){super(e),this.name=`ServiceSkipError`,this.reason=e}};function y(e){return{name:e.name,displayName:e.displayName}}var b=class{bus;state;cleanup;constructor(e,t){this.bus=e,this.state={complete:!1,completedCount:0,totalCount:t,failedServices:[],skippedServices:[],startedAt:Date.now()},this.cleanup=this.bus.on(_.getState,e=>{e.setResult({complete:this.state.complete,completedCount:this.state.completedCount,totalCount:this.state.totalCount,...this.state.currentService===void 0?{}:{currentService:this.state.currentService},failedServices:[...this.state.failedServices],skippedServices:[...this.state.skippedServices],...this.state.totalDurationMs===void 0?{}:{totalDurationMs:this.state.totalDurationMs}})})}dispose(){this.cleanup()}starting(e){let t=y(e);this.state.currentService=t.displayName,this.state.currentServiceStartedAt=Date.now(),this.bus.emit(_.service.starting,t).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.starting emit failed for "${t.name}":`,e)})}ready(e){let t=y(e);this.state.completedCount+=1;let n=this.state.currentServiceStartedAt===void 0?0:Math.max(0,Date.now()-this.state.currentServiceStartedAt);this.bus.emit(_.service.ready,{...t,durationMs:n}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.ready emit failed for "${t.name}":`,e)}),this.emitProgress()}failed(e,t){let n=y(e);this.state.completedCount+=1,this.state.failedServices.push(n.name),this.bus.emit(_.service.failed,{...n,errorMessage:t}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.failed emit failed for "${n.name}":`,e)}),this.emitProgress()}skipped(e,t){let n=y(e);this.state.completedCount+=1,this.state.skippedServices.push(n.name),this.bus.emit(_.service.skipped,{...n,reason:t}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.service.skipped emit failed for "${n.name}":`,e)}),this.emitProgress()}complete(){this.state.complete=!0,delete this.state.currentService,delete this.state.currentServiceStartedAt,this.state.totalDurationMs=Date.now()-this.state.startedAt,this.bus.emit(_.complete,{totalDurationMs:this.state.totalDurationMs,failedServices:[...this.state.failedServices]}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.complete emit failed:`,e)})}emitProgress(){this.bus.emit(_.progress,{completedCount:this.state.completedCount,totalCount:this.state.totalCount,...this.state.currentService===void 0?{}:{currentService:this.state.currentService}}).catch(e=>{console.warn(`[ExtensionCoordinator] boot.progress emit failed:`,e)})}};function x(e){return{subject:`wiring.apply`,$meta:{namespace:`client:${e}`,isRequest:!0,local:!1,channel:!1,payload:{request:{},response:{}}}}}const S=`action`;function C(e,t){return`${e}:${t}`}function ee(e,t,n){return e.on(d.interacted,r=>{let{toastId:i,actionId:a}=r.payload,o=C(i,a),s=t.get(o);s&&w(e,s,i,n).catch(e=>{console.error(`[ExtensionCoordinator] Warning action dispatch failed for toast "${i}":`,e)})})}async function w(e,t,n,r){switch(t.kind){case`configure-integration`:await ne(e,t.clientId,n,r);break;case`open-url`:console.info(`[ExtensionCoordinator] Toast "${n}" open-url action not routable from runtime layer: ${t.url}`);break;case`run-command`:console.info(`[ExtensionCoordinator] Toast "${n}" run-command action not routable from runtime layer: ${t.command}`);break;case`install-extension`:console.info(`[ExtensionCoordinator] Toast "${n}" install-extension action not routable from runtime layer: ${t.extensionName}`);break;default:te(t)}}function te(e){throw Error(`[ExtensionCoordinator] Unsupported warning action: ${JSON.stringify(e)}`)}async function ne(e,t,n,r){let i=x(t),a=await e.requestOptional(i,{scope:`user`,makaioCommand:r});if(!a.handled){console.warn(`[ExtensionCoordinator] Toast "${n}" configure-integration: no wiring handler for client "${t}". Is the client package loaded?`);return}let{applied:o,skipped:s}=a.data;console.info(`[ExtensionCoordinator] Toast "${n}" configure-integration: wired client "${t}" — ${o} applied, ${s} skipped.`)}function T(e){return e.map(e=>({name:e.name,description:e.description,hasInteractive:!!e.interactive,subcommands:e.subcommands.map(e=>({name:e.name,description:e.description,args:r(e.schema)}))}))}async function E(e,t,n){let{command:r,subcommand:i,args:a}=e,o=t.find(e=>e.name===r);if(!o)return{exitCode:1,stdout:[],stderr:[`Unknown command: ${r}`]};let s=o.subcommands.find(e=>e.name===i);if(!s)return{exitCode:1,stdout:[],stderr:[`Unknown subcommand: ${i}`]};let c=s.schema.safeParse(a??{});if(!c.success)return{exitCode:1,stdout:[],stderr:[`Validation failed:`,...c.error.issues.map(e=>` ${e.path.join(`.`)||`(root)`}: ${e.message}`)]};if(o.beforeRun)try{let e=await o.beforeRun({subcommandName:i,args:c.data??{},bus:n});if(!e.proceed)return{exitCode:e.exitCode??1,stdout:[],stderr:[e.message]}}catch(e){return{exitCode:1,stdout:[],stderr:[`beforeRun hook failed: ${e instanceof Error?e.message:String(e)}`]}}let l=[],u=[],d={write:e=>l.push(e),error:e=>u.push(e)},f=0,p=new AbortController().signal;try{await s.handler({args:c.data,bus:n,output:d,signal:p,setExitCode:e=>{f=e}})}catch(e){f===0&&(f=1),u.push(e instanceof Error?e.message:String(e))}return{exitCode:f,stdout:l,stderr:u}}function D(e){let{pkg:t,state:n,error:r,enabled:i}=e;return{name:t.name,displayName:t.displayName,state:n,...t.surface===void 0?{}:{surface:t.surface},enabled:i,...t.browser===void 0?{}:{browser:t.browser},...r===void 0?{}:{error:r}}}function O(e){let r=[];return r.push(e.bus.on(n.list,t=>{t.setResult({extensions:e.list()})})),r.push(e.bus.on(n.get,t=>{let n=e.entries.get(t.payload.name);t.setResult({extension:n?D(n):null})})),r.push(e.bus.on(n.setEnabled,async t=>{let n=await e.handleSetEnabled(t.payload.name,t.payload.enabled);t.setResult({success:n})})),r.push(e.bus.on(n.contributions.catalog,t=>{let n=[],r=[];for(let[t,i]of e.entries)if(i.state===`active`){for(let e of i.pkg.providers??[])n.push({packageName:t,definition:c.parse(e)});for(let e of i.pkg.clients??[])r.push({packageName:t,definition:e})}t.setResult({providers:n,clients:r})})),r.push(e.bus.on(t.listContributions,t=>{t.setResult({contributions:T(e.cliContributions)})})),r.push(e.bus.on(t.execute,async t=>{t.setResult(await E(t.payload,e.cliContributions,e.bus))})),r.push(e.bus.on(n.warnings.list,t=>{let{extensionName:n}=t.payload;if(n!==void 0){let r=e.entries.get(n),i=r&&r.warnings.length>0?[{extensionName:n,warnings:[...r.warnings]}]:[];t.setResult({entries:i});return}let r=[];for(let[t,n]of e.entries)n.warnings.length>0&&r.push({extensionName:t,warnings:[...n.warnings]});t.setResult({entries:r})})),r}async function re(e){for(let[t,n]of e.entries)n.state===`active`&&await A(e,t,n)}function ie(e){if(e&&k(e))return[{id:S,label:p(e)}]}function k(e){return e.kind===`configure-integration`}function ae(e,t){let n=`${t}:`;for(let t of e.keys())t.startsWith(n)&&e.delete(t)}async function A(e,t,n){ae(e.warningActionMap,t);let r=n.warnings.filter(e=>e.severity===`degraded`);if(r.length!==0)for(let i=0;i<r.length;i++){let a=r[i];console.warn(`[${t}] ⚠ ${a.title}: ${a.message}`);let o=`${t}:${a.title}:${i}`,s=ie(a.action);try{await e.bus.emit(d.show,{level:`warning`,title:a.title,message:`${n.pkg.displayName}: ${a.message}`,toastId:o,durationMs:null,...s&&{actions:s}}),a.action&&k(a.action)&&e.warningActionMap.set(C(o,S),a.action)}catch(e){console.warn(`[${t}] toast emission failed for warning "${a.title}":`,e)}}}function oe(e){return Object.freeze({extensionName:e})}function se(e,t,n,r){if(!t)return;let i={...n??{},...r??{}};try{return t.parse(i)}catch(n){console.warn(`[ExtensionCoordinator] Config parse failed for "${e}", starting with schema defaults:`,n instanceof Error?n.message:n);try{return t.parse({})}catch{console.warn(`[ExtensionCoordinator] Fallback config parse also failed for "${e}" — config will be absent`);return}}}function j(e,t,n){let r;if(n.pkg.configSchema)try{r=e.loadConfig?.(t)}catch(e){console.error(`[ExtensionCoordinator] loadConfig threw for "${t}":`,e)}return se(t,n.pkg.configSchema,n.configDefaults,r)}function M(e,t,n){if(!e.extensionContextBase)throw Error(`ExtensionCoordinator: extensionContextBase is required to start extensions with a create factory. Provide it via the constructor.`);return{...e.extensionContextBase,bus:e.bus,identity:t.identity,dataDir:a.join(e.extensionContextBase.makaioHome,t.identity.extensionName),getService:t=>e.getExtensionService(t.name),signal:e.signal,hasExtension:e.hasActiveExtension,...n===void 0?{}:{config:n}}}function N(e){return{adapters:!!e.adapters?.length,tools:!!e.tools,hashTriggers:!!e.hashTriggers,providers:!!e.providers?.length,clients:!!e.clients?.length,ui:!!e.ui,storage:!!e.storage,sessionEventActions:!!e.sessionEventActions}}function P(e,t,r){let i=t.state;t.state=r,e.emit(n.stateChanged,{name:t.pkg.name,displayName:t.pkg.displayName,from:i,to:r,...t.error===void 0?{}:{error:t.error},contributes:N(t.pkg)}).catch(e=>{console.error(`[ExtensionCoordinator] stateChanged emit failed for "${t.pkg.name}":`,e)})}async function F(e,t,n,r,i){return i===`activated`?(await I(e,t,n,r),[]):L(e,n)}async function I(e,t,n,r){let i=[];try{for(let a of e){if(a.filter&&!a.filter(r.pkg))continue;let e=M(t,r,j(t,n,r));await a.processActivated(n,r.pkg,e),i.push(a)}}catch(e){for(let e of i.reverse())if(e.processStopped)try{await e.processStopped(n)}catch(e){console.error(`[ExtensionCoordinator] Contribution processor rollback error for "${n}":`,e)}throw e}}async function L(e,t){let n=[];for(let r of[...e].reverse())if(r.processStopped)try{await r.processStopped(t)}catch(e){n.push(e)}return n}async function R(e,t,r){let i=e.entries.get(t);if(!i)return!1;let a=i.enabled,o=r!==a;o&&await e.persistEnabled?.(t,r);let s;try{s=r?await z(e,t,i):await B(e,t,i)}catch(n){if(o&&e.persistEnabled)try{await e.persistEnabled(t,a)}catch(e){throw AggregateError([n,e],`Extension "${t}" transition and preference rollback both failed`)}throw n}return i.enabled===a&&!s?(o&&await e.persistEnabled?.(t,a),!1):(e.bus.emit(n.enabledChanged,{name:t,enabled:r}).catch(e=>{console.error(`[ExtensionCoordinator] enabledChanged emit failed for "${t}":`,e)}),s)}async function z(e,t,n){if(n.state!==`stopped`&&n.state!==`failed`&&n.state!==`skipped`)return!1;let{pkg:r}=n,i,a=(r.dependencies??[]).filter(t=>{if(t.optional)return!1;let n=e.entries.get(t.name);return!n||n.state!==`active`});if(a.length>0)return n.error=`Required dependencies not active: ${a.map(e=>e.name).join(`, `)}`,console.error(`[ExtensionCoordinator] Cannot re-enable "${t}":`,n.error),P(e.bus,n,`failed`),!1;n.enabled=!0,n.error=void 0,P(e.bus,n,`initializing`);let s=j(e,t,n);if(r.storage?.registerHandlers&&e.db!==void 0)try{let t=M(e,n,s),a=r.storage.registerHandlers(e.bus,e.db,t);typeof a==`function`&&(i=a,n.storageCleanup=a)}catch(r){return n.error=o(r),console.error(`[ExtensionCoordinator] Extension "${t}" storage re-registration failed:`,r),P(e.bus,n,`failed`),!1}if(r.create){let a;try{let t=M(e,n,s);a=await r.create(t),await a.init?.(),n.service=a}catch(r){return await V(t,a,i,n),r instanceof v?n.pkg.critical?(n.error=`Critical extension cannot skip startup: ${r.reason}`,console.error(`[ExtensionCoordinator] Extension "${t}" failed to re-initialize:`,n.error),P(e.bus,n,`failed`),!1):(n.error=r.reason,P(e.bus,n,`skipped`),!1):(n.error=o(r),console.error(`[ExtensionCoordinator] Extension "${t}" failed to re-initialize:`,r),P(e.bus,n,`failed`),!1)}}try{await F(e.contributionProcessors,e,t,n,`activated`)}catch(r){return await V(t,n.service,i,n),n.service=void 0,n.error=o(r),console.error(`[ExtensionCoordinator] Extension "${t}" contribution processing failed:`,r),P(e.bus,n,`failed`),!1}return P(e.bus,n,`active`),await e.runHealthCheck(t),await e.emitWarningsForEntry(t,n),!0}async function B(e,t,r){if(r.state!==`active`)return!1;let i=Array.from(e.entries.entries()).filter(([e,n])=>e===t||n.state!==`active`?!1:n.pkg.dependencies?.some(e=>!e.optional&&e.name===t)??!1).map(([e])=>e);if(i.length>0)return r.error=`Cannot disable "${t}" while active dependents remain: ${i.join(`, `)}`,console.error(`[ExtensionCoordinator] ${r.error}`),!1;r.enabled=!1,r.error=void 0;let a=[];try{a.push(...await F(e.contributionProcessors,e,t,r,`stopped`))}catch(e){a.push(e),console.error(`[ExtensionCoordinator] Contribution processor error during disable of "${t}":`,e)}if(r.service)try{await r.service.destroy?.()}catch(e){a.push(e),console.error(`[ExtensionCoordinator] Error during disable destroy of "${t}":`,e)}finally{r.service=void 0}if(r.storageCleanup)try{r.storageCleanup()}catch(e){a.push(e),console.error(`[ExtensionCoordinator] Storage cleanup error during disable of "${t}":`,e)}finally{r.storageCleanup=void 0}if(a.length>0){let e=a.map(e=>o(e)).join(`; `);r.error=o(AggregateError(a,`Extension "${t}" disabled with ${a.length} teardown failure(s): ${e}`))}P(e.bus,r,`stopped`),r.warnings=[];try{await e.bus.emit(n.warnings.changed,{extensionName:t,warnings:[]})}catch(e){console.error(`[ExtensionCoordinator] warnings.changed emit failed for "${t}":`,e)}return a.length===0}async function V(e,t,n,r){try{await t?.destroy?.()}catch(t){console.error(`[ExtensionCoordinator] Service cleanup error after failed enable of "${e}":`,t)}try{n?.()}catch(t){console.error(`[ExtensionCoordinator] Storage cleanup error after failed enable of "${e}":`,t)}finally{r.storageCleanup=void 0}}function H(e){let t=new Map;for(let n of e)t.has(n.name)&&(console.info(`[ExtensionCoordinator] Extension "${n.name}" overrides an earlier registration`),t.delete(n.name)),t.set(n.name,n);return[...t.values()]}function U(e,t,n){let r=new Set(e.map(e=>e.name)),i=e.filter(e=>W(e,t,n)),a=new Map(i.map(e=>[e.name,e])),o=new Set(a.keys()),s=!0;for(;s;){s=!1;for(let e of o)(a.get(e).dependencies??[]).some(e=>!e.optional&&r.has(e.name)&&!o.has(e.name))&&(o.delete(e),s=!0)}return i.filter(e=>o.has(e.name))}function W(e,t,n){if(!K(e,t))return!1;let r=e.requires;return!r||r.length===0||!n?!0:r.every(e=>{switch(e.type){case`host`:return n.hosts.has(e.id);case`capability`:return n.capabilities.has(e.id)?e.version===void 0?!0:G(n,e.id,e.version):!1}})}function G(e,t,n){let r=e.capabilityVersions?.get(t);return r!==void 0&&u(r,n)}function K(e,t){return e.surface===void 0||e.surface===`any`||e.surface===t}function ce(e){let t=le(e);return ue(e,t,new Map(e.map(e=>[e.name,e]))),pe(t,fe(e,t))}function le(e){let t=new Set;for(let n of e){if(t.has(n.name))throw Error(`ExtensionCoordinator: duplicate package name detected: "${n.name}"`);t.add(n.name)}return t}function ue(e,t,n){for(let r of e)de(r,t,n)}function de(e,t,n){let r=e.dependencies??[],i=r.filter(e=>!e.optional&&!t.has(e.name));if(i.length>0)throw Error(`ExtensionCoordinator: package "${e.name}" declares missing dependencies: ${i.map(e=>e.name).join(`, `)}`);for(let t of r){let r=n.get(t.name);if(r===void 0)continue;let i=r.version;if(!u(i,t.version))throw Error(`ExtensionCoordinator: package "${e.name}" dependency "${t.name}" version ${i} does not satisfy ${t.version}`)}}function fe(e,t){let n=new Map;for(let r of e){let e=(r.dependencies??[]).filter(e=>t.has(e.name)).map(e=>e.name);n.set(r.name,new Set(e))}return n}function pe(e,t){let n=[];for(let[e,r]of t)r.size===0&&n.push(e);let r=[],i=new Set;for(;n.length>0;){let e=n.shift();if(!i.has(e)){i.add(e),r.push(e);for(let[r,a]of t)a.has(e)&&(a.delete(e),a.size===0&&!i.has(r)&&n.push(r))}}if(r.length!==e.size){let t=[...e].filter(e=>!i.has(e));throw Error(`ExtensionCoordinator: circular dependency detected among: ${t.join(`, `)}`)}return r}async function me(e){if(!e.runMigrations)return;let t=[];for(let n of e.loadOrder){let r=e.entries.get(n);if(!r)throw Error(`Extension "${n}" is in loadOrder but missing from entries`);let i=r.pkg.storage?.migrations;if(!i)continue;let a,o;if(typeof i==`string`)a=q(n,r.pkg,i);else{let e={};for(let[t,a]of Object.entries(i))a!==void 0&&(e[t]=q(n,r.pkg,a));let t=l(e);if(t===void 0)continue;a=t,o=e}t.push({name:n,migrationsPath:a,migrationSourceId:r.pkg.storage?.migrationSourceId??a,...o?{migrationsPathByDialect:o}:{}})}t.length!==0&&await e.runMigrations(t)}function q(e,t,n){if(a.isAbsolute(n))return n;let r=t.storage?.packageRoot;if(!r)throw Error(`Extension "${e}" declares relative storage.migrations "${n}" without storage.packageRoot`);let i=a.resolve(r),o=a.resolve(i,n),s=a.relative(i,o);if(s.startsWith(`..`)||a.isAbsolute(s))throw Error(`Extension "${e}" declares storage.migrations "${n}" outside storage.packageRoot`);return o}async function J(e,t){let r=e.entries.get(t);if(!r?.service||r.state!==`active`)return;let{checkHealth:i}=r.service;if(!i)return;let a;try{let e=await i.call(r.service),n=f.array().safeParse(e);n.success?a=n.data:(console.error(`[ExtensionCoordinator] checkHealth for "${t}" returned invalid data:`,n.error),a=[])}catch(e){console.error(`[ExtensionCoordinator] checkHealth threw for "${t}":`,e),a=[]}r.warnings=a;try{await e.bus.emit(n.warnings.changed,{extensionName:t,warnings:[...a]})}catch(e){console.error(`[ExtensionCoordinator] warnings.changed emit failed for "${t}":`,e)}}function he(e,t){if(t.windows)for(let n of t.windows)e.windowRegistry.register(t.name,t.displayName,n);if(t.tray&&e.trayEntries.push({...t.tray,packageName:t.name}),t.cli){let n=t.cli;`subcommands`in n&&e.cliContributions.push(n)}}function Y(e){return Array.from(e.values()).filter(e=>e.enabled).map(e=>e.pkg).filter(e=>!!e.http)}async function ge(e){let t=[...e.loadOrder].reverse(),n=[],r=[];for(let i of t){let t=e.entries.get(i);if(!t)continue;let a=!1;if(t.state===`active`){let r=await F(e.contributionProcessors,e.contextHost,i,t,`stopped`);r.length>0&&(a=!0,n.push(...r))}if(t.service)try{await t.service.destroy?.()}catch(e){a=!0,n.push(e)}finally{t.service=void 0}if(t.storageCleanup)try{t.storageCleanup()}catch(e){a=!0,n.push(e)}finally{t.storageCleanup=void 0}a&&r.push(i),t.state===`active`&&P(e.contextHost.bus,t,`stopped`)}if(n.length>0)throw AggregateError(n,`Extensions failed to shut down cleanly: ${r.join(`, `)}`)}async function _e(e,t){if(!t.tray)return;let n=ve(t);await e.request(m.register,{entry:n})}function ve(e){let t=e.tray;if(!t)throw Error(`[tray-menu-entry-bridge] extension "${e.name}" does not declare a tray entry`);return{packageName:e.name,entryId:t.opensWindow??t.action??`default`,label:t.label,section:t.section??`views`,priority:50,enabled:!0,metadata:t.opensWindow?{registrationId:`${e.name}:${t.opensWindow}`}:t.action?{action:t.action}:void 0}}async function ye(e,t,n){if(!n.enabled){P(e.bus,n,`skipped`),e.bootProgress.skipped(n.pkg,`disabled`);return}let r=(n.pkg.dependencies??[]).filter(t=>t.optional?!1:e.entries.get(t.name)?.state!==`active`);if(r.length>0){let i=`Required dependencies not active: ${r.map(e=>e.name).join(`, `)}`;if(Q(e,t,n,i),n.pkg.critical)throw Error(`Critical package "${t}" failed: ${i}`);return}e.bootProgress.starting(n.pkg),P(e.bus,n,`initializing`);let i=j(e.contextHost,t,n);if(Se(e,t,n,i)){if(!n.pkg.create){await be(e,t,n);return}await xe(e,t,n,i)}}async function be(e,t,n){try{await F(e.contributionProcessors,e.contextHost,t,n,`activated`)}catch(r){if(Z(t,n),X(e,t,n,r))return;if(Q(e,t,n,r instanceof Error?r.message:String(r)),n.pkg.critical)throw r;return}P(e.bus,n,`active`),e.bootProgress.ready(n.pkg),await $(e.bus,t,n)}async function xe(e,t,n,r){let i;try{let a=M(e.contextHost,n,r);i=await n.pkg.create(a),await i.init?.(),n.service=i,await F(e.contributionProcessors,e.contextHost,t,n,`activated`),P(e.bus,n,`active`),e.bootProgress.ready(n.pkg),await $(e.bus,t,n)}catch(r){try{await i?.destroy?.()}catch(e){console.error(`[ExtensionCoordinator] Service cleanup error after failed start of "${t}":`,e)}if(n.service=void 0,Z(t,n),X(e,t,n,r))return;if(Q(e,t,n,r instanceof Error?r.message:String(r)),n.pkg.critical)throw r}}function X(e,t,n,r){if(!(r instanceof v))return!1;if(n.pkg.critical){let i=`Critical package cannot skip startup: ${r.reason}`;throw Q(e,t,n,i),Error(`Critical package "${t}" failed: ${i}`,{cause:r})}return n.error=r.reason,console.info(`[ExtensionCoordinator] Package "${t}" skipped: ${r.reason}`),P(e.bus,n,`skipped`),e.bootProgress.skipped(n.pkg,r.reason),!0}function Se(e,t,n,r){if(!n.pkg.storage?.registerHandlers||e.db===void 0)return!0;try{let t=M(e.contextHost,n,r),i=n.pkg.storage.registerHandlers(e.bus,e.db,t);return i&&(n.storageCleanup=i),!0}catch(r){let i=r instanceof Error?r.message:String(r);if(console.error(`[ExtensionCoordinator] Package "${t}" storage registration failed:`,r),Q(e,t,n,i),n.pkg.critical)throw r;return!1}}function Z(e,t){if(t.storageCleanup)try{t.storageCleanup()}catch(t){console.error(`[ExtensionCoordinator] Storage cleanup error after failed start of "${e}":`,t)}finally{t.storageCleanup=void 0}}function Q(e,t,n,r){n.error=r,console.error(`[ExtensionCoordinator] Package "${t}" failed:`,r),P(e.bus,n,`failed`),e.bootProgress.failed(n.pkg,r)}async function $(e,t,n){try{await _e(e,n.pkg)}catch(e){console.warn(`[ExtensionCoordinator] Failed to register tray entry for ${t}:`,e)}}var Ce=class{bus;surface;db;extensionContextBase;runtimeEnvironment;shutdownController=new AbortController;entries=new Map;loadOrder=[];loaded=!1;started=!1;shutdownRequested=!1;shutdownPromise;lifecycleTail=Promise.resolve();rpcCleanups=[];contributionProcessors=[];warningActionMap=new Map;windowRegistry=new e;_trayEntries=[];_cliContributions=[];persistEnabled;loadEnabled;loadConfig;runMigrations;constructor(e,t={}){this.bus=e,this.surface=t.surface??`headless`,this.db=t.db,this.extensionContextBase=t.extensionContextBase,this.runtimeEnvironment=t.runtimeEnvironment,this.persistEnabled=t.persistEnabled,this.loadEnabled=t.loadEnabled,this.loadConfig=t.loadConfig,this.runMigrations=t.runMigrations,this.rpcCleanups.push(ee(this.bus,this.warningActionMap,t.launcherCommand??`makaio`))}get trayEntries(){return this._trayEntries.map(e=>({...e}))}get cliContributions(){return this._cliContributions}extensionsWithHttp(){return Y(this.entries)}load(e,t){if(this.shutdownRequested)throw Error(`ExtensionCoordinator.load() called after shutdown(). The coordinator is terminal.`);if(this.loaded)throw Error(`ExtensionCoordinator.load() called twice. The coordinator is single-use; create a new instance if needed.`);let n=H(U(e,this.surface,this.runtimeEnvironment));this.loadOrder=ce(n);for(let e of this.loadOrder){let r=n.find(t=>t.name===e),i={pkg:r,identity:oe(r.name),state:`discovered`,enabled:this.loadEnabled?.(e)!==!1,warnings:[]};if(t){let n=t.get(e);n&&(i.configDefaults=n)}this.entries.set(e,i),r.namespaces&&this.bus.registerNamespaces(r.namespaces),he({windowRegistry:this.windowRegistry,trayEntries:this._trayEntries,cliContributions:this._cliContributions},r)}this.rpcCleanups.push(...O({bus:this.bus,entries:this.entries,cliContributions:this._cliContributions,list:()=>this.list(),handleSetEnabled:(e,t)=>this.handleSetEnabled(e,t)})),this.loaded=!0}async startAll(){if(this.shutdownRequested)throw Error(`ExtensionCoordinator.startAll() called after shutdown(). The coordinator is terminal.`);if(!this.loaded)throw Error(`ExtensionCoordinator.startAll() called before load(). Call load() first.`);if(this.started)throw Error(`ExtensionCoordinator.startAll() called twice. The coordinator is single-use; create a new instance if needed.`);this.started=!0,await this.enqueueLifecycle(()=>this.startAllInLifecycleLane())}async startAllInLifecycleLane(){let e=new b(this.bus,this.loadOrder.length);this.rpcCleanups.push(()=>e.dispose());try{await me({loadOrder:this.loadOrder,entries:this.entries,runMigrations:this.runMigrations});for(let t of this.loadOrder){let n=this.entries.get(t);n&&await ye({bus:this.bus,db:this.db,entries:this.entries,contributionProcessors:this.contributionProcessors,contextHost:this.createExtensionContextHost(),bootProgress:e},t,n)}let t=this.createExtensionHealthHost();await Promise.all(this.loadOrder.map(e=>this.entries.get(e)?.state===`active`?J(t,e):void 0)),await re({bus:this.bus,entries:this.entries,warningActionMap:this.warningActionMap})}finally{e.complete()}}shutdown(){if(this.shutdownPromise)return this.shutdownPromise;this.shutdownRequested=!0;let e=this.enqueueLifecycle(()=>this.shutdownInLifecycleLane());return this.shutdownPromise=e,this.shutdownController.abort(),e}async shutdownInLifecycleLane(){let e=[],t;for(let t of this.rpcCleanups)try{t()}catch(t){e.push(t)}this.rpcCleanups=[],this.warningActionMap.clear();try{await ge({entries:this.entries,loadOrder:this.loadOrder,contributionProcessors:this.contributionProcessors,contextHost:this.createExtensionContextHost()})}catch(n){n instanceof AggregateError?(t=n.message,e.push(...n.errors)):e.push(n)}if(e.length>0){let n=t===void 0?``:`; ${t}`;throw AggregateError(e,`Extension coordinator shutdown failed with ${e.length} error(s)${n}`)}}list(){return[...this.entries.values()].map(e=>D(e))}getExtensionService(e){let t=typeof e==`string`?e:e.name;return this.entries.get(t)?.service}getExtension(e){return this.entries.get(e)?.pkg}getLoadedProviderDefinitionIds(){let e=new Set;for(let t of this.entries.values())if(t.enabled&&!(t.state===`failed`||t.state===`skipped`||t.state===`stopped`))for(let n of t.pkg.providers??[])e.add(n.id);return e}forEachActiveExtension(e){let t=this.createExtensionContextHost();for(let n of this.loadOrder){let r=this.entries.get(n);if(!r||r.state!==`active`)continue;let i=M(t,r,j(t,n,r));e(n,r.pkg,i)}}forExtension(e,t){let n=this.entries.get(e);if(!n||n.state!==`active`)return;let r=this.createExtensionContextHost(),i=M(r,n,j(r,e,n));t(e,n.pkg,i)}registerContributionProcessor(e){return this.contributionProcessors.push(e),()=>{let t=this.contributionProcessors.indexOf(e);t>=0&&this.contributionProcessors.splice(t,1)}}async handleSetEnabled(e,t){return this.shutdownRequested?!1:await this.enqueueLifecycle(()=>R({bus:this.bus,db:this.db,entries:this.entries,extensionContextBase:this.extensionContextBase,loadConfig:this.loadConfig,signal:this.shutdownController.signal,hasActiveExtension:e=>this.hasActiveExtension(e),persistEnabled:this.persistEnabled,contributionProcessors:this.contributionProcessors,getExtensionService:e=>this.getExtensionService(e),runHealthCheck:e=>J(this.createExtensionHealthHost(),e),emitWarningsForEntry:(e,t)=>A({bus:this.bus,entries:this.entries,warningActionMap:this.warningActionMap},e,t)},e,t))}enqueueLifecycle(e){let t=this.lifecycleTail.then(()=>e(),()=>e());return this.lifecycleTail=t.then(()=>void 0,()=>void 0),t}createExtensionContextHost(){return{bus:this.bus,extensionContextBase:this.extensionContextBase,loadConfig:this.loadConfig,signal:this.shutdownController.signal,hasActiveExtension:e=>this.hasActiveExtension(e),getExtensionService:e=>this.getExtensionService(e)}}createExtensionHealthHost(){return{bus:this.bus,entries:this.entries}}hasActiveExtension(e){return this.entries.get(e)?.state===`active`}};export{g as a,v as i,H as n,_ as o,U as r,Ce as t};
@@ -1 +1 @@
1
- import{n as e}from"./definition-CDg-Jq1T.mjs";import{n as t,t as n}from"./version-BfNnVAGr.mjs";import{z as r}from"zod";const i=r.object({entrypoint:r.string().startsWith(`/`,{message:`Entrypoint must be a URL path starting with "/"`})}),a=r.object({endpoint:r.string().url().optional()}),o=r.union([e,r.object({anthropic:a.optional(),openai:a.optional()}).refine(e=>Object.keys(e).length>0,{message:`ProtocolRef config object must specify at least one protocol`})]),s=r.object({id:r.string().min(1),version:t,binaryVersion:t.optional()}),c=r.object({name:r.string().min(1),displayName:r.string().min(1).optional(),description:r.string().optional(),clients:r.array(s).readonly().optional(),protocols:r.array(o).readonly(),defaultProvider:r.string().min(1).optional()}),l=r.object({id:r.string().min(1),name:r.string().min(1),description:r.string().optional(),binary:r.object({name:r.string().min(1),managed:r.boolean().optional(),version:n.optional()}).strict().refine(e=>e.managed!==!0||e.version!==void 0,{message:`binary.version is required when binary.managed is true`,path:[`version`]}).refine(e=>e.version===void 0||e.managed===!0,{message:`binary.managed must be true when binary.version is provided`,path:[`managed`]}).optional()}).strict(),u=r.object({id:r.string().min(1),name:r.string().min(1),description:r.string().optional()}),d=r.object({prefix:r.string().min(1),description:r.string().optional(),stage:r.enum([`gather`,`transform`,`action`]).optional()}),f=r.object({adapterName:r.string().min(1),displayName:r.string().min(1),logFilePattern:r.string().min(1).optional()}),p=r.object({id:r.string().min(1),label:r.string().min(1),description:r.string().optional(),icon:r.string().min(1).optional(),selectionMode:r.enum([`single`,`multi`]),messageRoles:r.array(r.enum([`user`,`assistant`])).readonly().optional()}),m=r.enum([`beforeCreate`,`beforeRevise`,`afterCreate`,`afterRevise`,`afterStatusChanged`,`afterObservationAdded`]),h=r.object({id:r.string().min(1),event:m,kind:r.string().min(1).optional(),schemaVersion:r.string().min(1).optional()}),g=r.object({tiles:r.boolean().optional(),widgets:r.boolean().optional(),pages:r.boolean().optional(),routes:r.boolean().optional()}),_={adapters:`adapter`,clients:`client`,providers:`provider`,hashTriggers:`hash trigger`,logImporters:`log importer`,sessionEventActions:`session event action`,artifactLifecycleHooks:`artifact lifecycle hook`};function v(e,t,n){e.addIssue({code:r.ZodIssueCode.custom,path:[t],message:`Duplicate ${_[t]} contribution identifier "${n}"`})}function y(e,t){let n=new Set,r=new Set,i=[];for(let a of e??[]){let e=t(a);if(n.has(e)){r.has(e)||(r.add(e),i.push(e));continue}n.add(e)}return i}const b=r.object({adapters:r.array(c).readonly().optional(),clients:r.array(l).readonly().optional(),providers:r.array(u).readonly().optional(),hashTriggers:r.array(d).readonly().optional(),logImporters:r.array(f).readonly().optional(),sessionEventActions:r.array(p).readonly().optional(),artifactLifecycleHooks:r.array(h).readonly().optional(),create:r.boolean().optional(),tools:r.boolean().optional(),bootstrap:r.boolean().optional(),namespace:r.boolean().optional(),configSchema:r.boolean().optional(),uiConfig:r.boolean().optional(),ui:g.optional()}).strict().superRefine((e,t)=>{for(let n of y(e.adapters,e=>e.name))v(t,`adapters`,n);for(let n of y(e.clients,e=>e.id))v(t,`clients`,n);for(let n of y(e.providers,e=>e.id))v(t,`providers`,n);for(let n of y(e.hashTriggers,e=>e.prefix))v(t,`hashTriggers`,n);for(let n of y(e.logImporters,e=>e.adapterName))v(t,`logImporters`,n);for(let n of y(e.sessionEventActions,e=>e.id))v(t,`sessionEventActions`,n);for(let n of y(e.artifactLifecycleHooks,e=>e.id))v(t,`artifactLifecycleHooks`,n)}),x=r.string().trim().min(1).transform(e=>e),S=r.object({name:r.string().min(1),required:r.boolean().optional()}),C=r.object({id:r.string(),style:r.enum([`tray-popover`,`utility`,`panel`]),width:r.number().optional(),height:r.number().optional(),singleton:r.boolean().optional(),params:r.array(S).readonly().optional()}).superRefine((e,t)=>{let n=new Set;for(let[i,a]of e.params?.entries()??[]){if(!n.has(a.name)){n.add(a.name);continue}t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate window param "${a.name}"`,path:[`params`,i,`name`]})}}),w=r.object({label:r.string(),section:r.enum([`utilities`,`tools`,`views`]).optional(),opensWindow:r.string().optional(),action:r.string().optional()}),T=r.object({name:r.string().min(1),description:r.string(),required:r.boolean().optional(),positional:r.boolean().optional(),short:r.string().regex(/^-[A-Za-z0-9]$/,`Expected a short flag like -p`).optional(),type:r.enum([`string`,`boolean`,`number`]).optional()}),E=r.object({name:r.string().min(1),description:r.string(),args:r.array(T).readonly().optional()}),D=r.object({name:r.string().min(1),description:r.string(),subcommands:r.array(E).readonly().optional(),hasInteractive:r.boolean().optional(),canProvideBus:r.boolean().optional()}),O=[`sqlite`,`postgres`];function k(e){if(e!==void 0)return typeof e==`string`?e:e.sqlite??Object.values(e).find(e=>e!==void 0)}function A(e){if(e===void 0)return[];if(typeof e==`string`)return[e];let t=new Set;for(let n of Object.values(e))n!==void 0&&t.add(n);return[...t]}const j=r.string().min(1).refine(e=>!/^(?:[\\/]|[A-Za-z]:)/.test(e),`Expected a relative path`).refine(e=>!e.split(/[\\/]/).some(e=>e===``||e===`.`||e===`..`),`Path must not contain empty or dot segments`),M=r.object({migrations:r.union([j,r.object({sqlite:j.optional(),postgres:j.optional()}).strict().refine(e=>Object.values(e).some(e=>e!==void 0),`Per-dialect storage.migrations must declare at least one chain`)]).optional(),migrationSourceId:r.string().min(1).optional()}),N=r.object({type:r.literal(`extension`),name:r.string().min(1),version:t,optional:r.boolean().optional()});function P(e,t=`>=0.1.0`,n){return n===void 0?{type:`extension`,name:e,version:t}:{type:`extension`,name:e,version:t,optional:n}}const F=r.discriminatedUnion(`type`,[r.object({type:r.literal(`host`),id:r.string().min(1)}),r.object({type:r.literal(`capability`),id:r.string().min(1),version:t.optional()})]),I=r.object({name:r.string().min(1).regex(/^(@[^/\\]+\/)?[^/\\]+$/,`Extension name must be a plain identifier or an npm-scoped name (@scope/pkg)`).refine(e=>(e.startsWith(`@`)?e.split(`/`):[e]).every(e=>e!==`.`&&e!==`..`),`Extension name must not be a dot-segment`),displayName:r.string().min(1),version:n,surface:r.enum([`interactive`,`headless`,`any`]).optional(),dependencies:r.array(N).readonly().optional(),requires:r.array(F).readonly().optional(),provides:r.array(x).readonly().optional(),windows:r.array(C).readonly().optional(),tray:w.optional(),cli:D.optional(),storage:M.optional(),browser:i.optional(),contributions:b.optional()});function L(e){return Object.freeze({name:e})}const R=r.object({command:r.string().min(1),args:r.array(r.string()).optional(),env:r.record(r.string(),r.string()).optional(),healthTimeoutMs:r.number().int().positive().optional(),shutdownTimeoutMs:r.number().int().positive().optional()}),z=r.enum([`none`,`on-crash`,`always`]),B=R.extend({restartPolicy:z.optional()}),V=r.discriminatedUnion(`type`,[B.extend({type:r.literal(`bus-stdio`)}),B.extend({type:r.literal(`bus-websocket`)}),R.extend({type:r.literal(`mcp-stdio`)})]);function H(e){if(e.includes(`\\`)||e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`/`))return!1;let t=e.split(`/`),n=t.at(-1);return!n||n.includes(`.`)?!1:t.every(e=>e!==``&&e!==`.`&&e!==`..`&&e!==`src`&&e!==`dist`)}const U=r.union([r.literal(!0),r.string().min(1).refine(H,{message:`entrypoint stem must use forward-slash path stems, must not contain empty, . or .. segments, must not include a dotted final segment, and must not contain src or dist segments`})]),W=r.object({server:U.optional(),browser:U.optional(),cli:U.optional()}).refine(e=>e.server!==void 0||e.browser!==void 0||e.cli!==void 0,{message:`at least one entrypoint must be declared`});function G(e){return e.execution===`detached`}const K=I.extend({version:n,makaio:r.object({framework:t}).strict().readonly(),entrypoints:W.optional(),execution:r.enum([`embedded`,`detached`]).optional(),transport:V.optional(),prebundleDependencies:r.array(r.string().regex(/\S/,`prebundleDependencies entries must not be blank`)).readonly().optional(),config:r.object({defaults:r.record(r.string(),r.unknown()).optional()}).optional()}).superRefine((e,t)=>{e.prebundleDependencies!==void 0&&e.entrypoints?.browser===void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`prebundleDependencies requires a browser entrypoint`,path:[`prebundleDependencies`]}),e.execution===`detached`?(e.transport===void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`detached extensions must declare a 'transport' config`,path:[`transport`]}),e.entrypoints!==void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`detached extensions must not declare entrypoints`,path:[`entrypoints`]})):(e.entrypoints===void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`embedded extensions must declare at least one entrypoint`,path:[`entrypoints`]}),e.transport!==void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`embedded extensions must not declare a transport config`,path:[`transport`]}))});function q(e){return e}function J(e){return q(K.parse(e))}function Y(e){let t=K.safeParse(e);return t.success?{success:!0,data:q(t.data)}:t}const X=r.discriminatedUnion(`kind`,[r.object({kind:r.literal(`configure-integration`),clientId:r.string().min(1),bundle:r.string().min(1)}),r.object({kind:r.literal(`install-extension`),extensionName:r.string().min(1)}),r.object({kind:r.literal(`open-url`),url:r.string().url()}),r.object({kind:r.literal(`run-command`),command:r.string().min(1)})]),Z=r.enum([`info`,`recommended`,`degraded`]),Q=r.object({severity:Z,title:r.string().min(1),message:r.string().min(1),action:X.optional()});function $(e){switch(e.kind){case`configure-integration`:return`Configure`;case`install-extension`:return`Install`;case`open-url`:return`Open`;case`run-command`:return`Run`}}const ee=r.object({extensionName:r.string().min(1),warnings:r.array(Q)});function te(e,t){return e.parse(t??{})}function ne(e){return JSON.stringify([e.extensionId,e.type,e.name,e.filename])}export{s as A,u as B,w as C,P as D,A as E,b as F,g as H,d as I,f as L,m as M,h as N,k as O,l as P,a as R,M as S,S as T,i as U,p as V,E as _,Q as a,F as b,V as c,G as d,J as f,D as g,T as h,ee as i,c as j,x as k,K as l,L as m,te as n,Z as o,Y as p,X as r,$ as s,ne as t,W as u,N as v,C as w,O as x,I as y,o as z};
1
+ import{n as e}from"./definition-BH4QLGLI.mjs";import{n as t,t as n}from"./version-BYeVh1pI.mjs";import{z as r}from"zod";const i=r.object({entrypoint:r.string().startsWith(`/`,{message:`Entrypoint must be a URL path starting with "/"`})}),a=r.object({endpoint:r.string().url().optional()}),o=r.union([e,r.object({anthropic:a.optional(),openai:a.optional()}).refine(e=>Object.keys(e).length>0,{message:`ProtocolRef config object must specify at least one protocol`})]),s=r.object({id:r.string().min(1),version:t,binaryVersion:t.optional()}),c=r.object({name:r.string().min(1),displayName:r.string().min(1).optional(),description:r.string().optional(),clients:r.array(s).readonly().optional(),protocols:r.array(o).readonly(),defaultProvider:r.string().min(1).optional()}),l=r.object({id:r.string().min(1),name:r.string().min(1),description:r.string().optional(),binary:r.object({name:r.string().min(1),managed:r.boolean().optional(),version:n.optional()}).strict().refine(e=>e.managed!==!0||e.version!==void 0,{message:`binary.version is required when binary.managed is true`,path:[`version`]}).refine(e=>e.version===void 0||e.managed===!0,{message:`binary.managed must be true when binary.version is provided`,path:[`managed`]}).optional()}).strict(),u=r.object({id:r.string().min(1),name:r.string().min(1),description:r.string().optional()}),d=r.object({prefix:r.string().min(1),description:r.string().optional(),stage:r.enum([`gather`,`transform`,`action`]).optional()}),f=r.object({adapterName:r.string().min(1),displayName:r.string().min(1),logFilePattern:r.string().min(1).optional()}),p=r.object({id:r.string().min(1),label:r.string().min(1),description:r.string().optional(),icon:r.string().min(1).optional(),selectionMode:r.enum([`single`,`multi`]),messageRoles:r.array(r.enum([`user`,`assistant`])).readonly().optional()}),m=r.enum([`beforeCreate`,`beforeRevise`,`afterCreate`,`afterRevise`,`afterStatusChanged`,`afterObservationAdded`]),h=r.object({id:r.string().min(1),event:m,kind:r.string().min(1).optional(),schemaVersion:r.string().min(1).optional()}),g=r.object({tiles:r.boolean().optional(),widgets:r.boolean().optional(),pages:r.boolean().optional(),routes:r.boolean().optional()}),_={adapters:`adapter`,clients:`client`,providers:`provider`,hashTriggers:`hash trigger`,logImporters:`log importer`,sessionEventActions:`session event action`,artifactLifecycleHooks:`artifact lifecycle hook`};function v(e,t,n){e.addIssue({code:r.ZodIssueCode.custom,path:[t],message:`Duplicate ${_[t]} contribution identifier "${n}"`})}function y(e,t){let n=new Set,r=new Set,i=[];for(let a of e??[]){let e=t(a);if(n.has(e)){r.has(e)||(r.add(e),i.push(e));continue}n.add(e)}return i}const b=r.object({adapters:r.array(c).readonly().optional(),clients:r.array(l).readonly().optional(),providers:r.array(u).readonly().optional(),hashTriggers:r.array(d).readonly().optional(),logImporters:r.array(f).readonly().optional(),sessionEventActions:r.array(p).readonly().optional(),artifactLifecycleHooks:r.array(h).readonly().optional(),create:r.boolean().optional(),tools:r.boolean().optional(),bootstrap:r.boolean().optional(),namespace:r.boolean().optional(),configSchema:r.boolean().optional(),uiConfig:r.boolean().optional(),ui:g.optional()}).strict().superRefine((e,t)=>{for(let n of y(e.adapters,e=>e.name))v(t,`adapters`,n);for(let n of y(e.clients,e=>e.id))v(t,`clients`,n);for(let n of y(e.providers,e=>e.id))v(t,`providers`,n);for(let n of y(e.hashTriggers,e=>e.prefix))v(t,`hashTriggers`,n);for(let n of y(e.logImporters,e=>e.adapterName))v(t,`logImporters`,n);for(let n of y(e.sessionEventActions,e=>e.id))v(t,`sessionEventActions`,n);for(let n of y(e.artifactLifecycleHooks,e=>e.id))v(t,`artifactLifecycleHooks`,n)}),x=r.string().trim().min(1).transform(e=>e),S=r.object({name:r.string().min(1),required:r.boolean().optional()}),C=r.object({id:r.string(),style:r.enum([`tray-popover`,`utility`,`panel`]),width:r.number().optional(),height:r.number().optional(),singleton:r.boolean().optional(),params:r.array(S).readonly().optional()}).superRefine((e,t)=>{let n=new Set;for(let[i,a]of e.params?.entries()??[]){if(!n.has(a.name)){n.add(a.name);continue}t.addIssue({code:r.ZodIssueCode.custom,message:`Duplicate window param "${a.name}"`,path:[`params`,i,`name`]})}}),w=r.object({label:r.string(),section:r.enum([`utilities`,`tools`,`views`]).optional(),opensWindow:r.string().optional(),action:r.string().optional()}),T=r.object({name:r.string().min(1),description:r.string(),required:r.boolean().optional(),positional:r.boolean().optional(),short:r.string().regex(/^-[A-Za-z0-9]$/,`Expected a short flag like -p`).optional(),type:r.enum([`string`,`boolean`,`number`]).optional()}),E=r.object({name:r.string().min(1),description:r.string(),args:r.array(T).readonly().optional()}),D=r.object({name:r.string().min(1),description:r.string(),subcommands:r.array(E).readonly().optional(),hasInteractive:r.boolean().optional(),canProvideBus:r.boolean().optional()}),O=[`sqlite`,`postgres`];function k(e){if(e!==void 0)return typeof e==`string`?e:e.sqlite??Object.values(e).find(e=>e!==void 0)}function A(e){if(e===void 0)return[];if(typeof e==`string`)return[e];let t=new Set;for(let n of Object.values(e))n!==void 0&&t.add(n);return[...t]}const j=r.string().min(1).refine(e=>!/^(?:[\\/]|[A-Za-z]:)/.test(e),`Expected a relative path`).refine(e=>!e.split(/[\\/]/).some(e=>e===``||e===`.`||e===`..`),`Path must not contain empty or dot segments`),M=r.object({migrations:r.union([j,r.object({sqlite:j.optional(),postgres:j.optional()}).strict().refine(e=>Object.values(e).some(e=>e!==void 0),`Per-dialect storage.migrations must declare at least one chain`)]).optional(),migrationSourceId:r.string().min(1).optional()}),N=r.object({type:r.literal(`extension`),name:r.string().min(1),version:t,optional:r.boolean().optional()});function P(e,t=`>=0.1.0`,n){return n===void 0?{type:`extension`,name:e,version:t}:{type:`extension`,name:e,version:t,optional:n}}const F=r.discriminatedUnion(`type`,[r.object({type:r.literal(`host`),id:r.string().min(1)}),r.object({type:r.literal(`capability`),id:r.string().min(1),version:t.optional()})]),I=r.object({name:r.string().min(1).regex(/^(@[^/\\]+\/)?[^/\\]+$/,`Extension name must be a plain identifier or an npm-scoped name (@scope/pkg)`).refine(e=>(e.startsWith(`@`)?e.split(`/`):[e]).every(e=>e!==`.`&&e!==`..`),`Extension name must not be a dot-segment`),displayName:r.string().min(1),version:n,surface:r.enum([`interactive`,`headless`,`any`]).optional(),dependencies:r.array(N).readonly().optional(),requires:r.array(F).readonly().optional(),provides:r.array(x).readonly().optional(),windows:r.array(C).readonly().optional(),tray:w.optional(),cli:D.optional(),storage:M.optional(),browser:i.optional(),contributions:b.optional()});function L(e){return Object.freeze({name:e})}const R=r.object({command:r.string().min(1),args:r.array(r.string()).optional(),env:r.record(r.string(),r.string()).optional(),healthTimeoutMs:r.number().int().positive().optional(),shutdownTimeoutMs:r.number().int().positive().optional()}),z=r.enum([`none`,`on-crash`,`always`]),B=R.extend({restartPolicy:z.optional()}),V=r.discriminatedUnion(`type`,[B.extend({type:r.literal(`bus-stdio`)}),B.extend({type:r.literal(`bus-websocket`)}),R.extend({type:r.literal(`mcp-stdio`)})]);function H(e){if(e.includes(`\\`)||e.startsWith(`./`)||e.startsWith(`../`)||e.startsWith(`/`))return!1;let t=e.split(`/`),n=t.at(-1);return!n||n.includes(`.`)?!1:t.every(e=>e!==``&&e!==`.`&&e!==`..`&&e!==`src`&&e!==`dist`)}const U=r.union([r.literal(!0),r.string().min(1).refine(H,{message:`entrypoint stem must use forward-slash path stems, must not contain empty, . or .. segments, must not include a dotted final segment, and must not contain src or dist segments`})]),W=r.object({server:U.optional(),browser:U.optional(),cli:U.optional()}).refine(e=>e.server!==void 0||e.browser!==void 0||e.cli!==void 0,{message:`at least one entrypoint must be declared`});function G(e){return e.execution===`detached`}const K=I.extend({version:n,makaio:r.object({framework:t}).strict().readonly(),entrypoints:W.optional(),execution:r.enum([`embedded`,`detached`]).optional(),transport:V.optional(),prebundleDependencies:r.array(r.string().regex(/\S/,`prebundleDependencies entries must not be blank`)).readonly().optional(),config:r.object({defaults:r.record(r.string(),r.unknown()).optional()}).optional()}).superRefine((e,t)=>{e.prebundleDependencies!==void 0&&e.entrypoints?.browser===void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`prebundleDependencies requires a browser entrypoint`,path:[`prebundleDependencies`]}),e.execution===`detached`?(e.transport===void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`detached extensions must declare a 'transport' config`,path:[`transport`]}),e.entrypoints!==void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`detached extensions must not declare entrypoints`,path:[`entrypoints`]})):(e.entrypoints===void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`embedded extensions must declare at least one entrypoint`,path:[`entrypoints`]}),e.transport!==void 0&&t.addIssue({code:r.ZodIssueCode.custom,message:`embedded extensions must not declare a transport config`,path:[`transport`]}))});function q(e){return e}function J(e){return q(K.parse(e))}function Y(e){let t=K.safeParse(e);return t.success?{success:!0,data:q(t.data)}:t}const X=r.discriminatedUnion(`kind`,[r.object({kind:r.literal(`configure-integration`),clientId:r.string().min(1),bundle:r.string().min(1)}),r.object({kind:r.literal(`install-extension`),extensionName:r.string().min(1)}),r.object({kind:r.literal(`open-url`),url:r.string().url()}),r.object({kind:r.literal(`run-command`),command:r.string().min(1)})]),Z=r.enum([`info`,`recommended`,`degraded`]),Q=r.object({severity:Z,title:r.string().min(1),message:r.string().min(1),action:X.optional()});function $(e){switch(e.kind){case`configure-integration`:return`Configure`;case`install-extension`:return`Install`;case`open-url`:return`Open`;case`run-command`:return`Run`}}const ee=r.object({extensionName:r.string().min(1),warnings:r.array(Q)});function te(e,t){return e.parse(t??{})}function ne(e){return JSON.stringify([e.extensionId,e.type,e.name,e.filename])}export{s as A,u as B,w as C,P as D,A as E,b as F,g as H,d as I,f as L,m as M,h as N,k as O,l as P,a as R,M as S,S as T,i as U,p as V,E as _,Q as a,F as b,V as c,G as d,J as f,D as g,T as h,ee as i,c as j,x as k,K as l,L as m,te as n,Z as o,Y as p,X as r,$ as s,ne as t,W as u,N as v,C as w,O as x,I as y,o as z};
@@ -59,6 +59,14 @@ interface ExtensionDiscovery {
59
59
  /** Scan for extensions and return validated discoveries. */
60
60
  discover(): Promise<DiscoveredExtension[]>;
61
61
  }
62
+ /**
63
+ * Enumerate descriptor files from one configured filesystem path without
64
+ * parsing them. A package-root descriptor wins over nested descriptors, and a
65
+ * node_modules root is limited to direct and scoped packages.
66
+ * @param discoveryPath - Descriptor file, package directory, node_modules root, or recursive search root.
67
+ * @returns Matching descriptor paths using the runtime's filesystem discovery semantics.
68
+ */
69
+ declare function enumerateDescriptorPaths(discoveryPath: string): Promise<string[]>;
62
70
  /**
63
71
  * Discovers extensions by scanning up to three locations in priority order:
64
72
  *
@@ -162,4 +170,4 @@ declare class MergedDescriptorDiscovery implements ExtensionDiscovery {
162
170
  discover(): Promise<DiscoveredExtension[]>;
163
171
  }
164
172
  //#endregion
165
- export { FilesystemDescriptorDiscovery as a, ExtensionEntrypointModule as i, ExplicitDescriptorDiscovery as n, FilesystemDescriptorDiscoveryOptions as o, ExtensionDiscovery as r, MergedDescriptorDiscovery as s, DiscoveredExtension as t };
173
+ export { FilesystemDescriptorDiscovery as a, enumerateDescriptorPaths as c, ExtensionEntrypointModule as i, ExplicitDescriptorDiscovery as n, FilesystemDescriptorDiscoveryOptions as o, ExtensionDiscovery as r, MergedDescriptorDiscovery as s, DiscoveredExtension as t };