@makaio/framework 1.0.0-dev-1784154668798 → 1.0.0-dev-1784706768858
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.
- package/dist/.makaio-build.json +2 -2
- package/dist/{adapter-B9vVBwli.mjs → adapter-CYobxqN_.mjs} +1 -1
- package/dist/adapters/claude/index.mjs +2 -2
- package/dist/adapters/config/index.d.mts +1 -1
- package/dist/adapters/config/index.mjs +1 -1
- package/dist/adapters/index.d.mts +2 -2
- package/dist/adapters/index.mjs +2 -2
- package/dist/adapters/node.d.mts +1 -1
- package/dist/adapters/node.mjs +1 -1
- package/dist/artifact-DCkizHkS.mjs +1 -0
- package/dist/attach-error-DCnzW-Yz.mjs +1 -0
- package/dist/authority-state-bootstrap-C_-F_dtq.mjs +1 -0
- package/dist/bus/index.d.mts +99 -4
- package/dist/bus/index.mjs +1 -1
- package/dist/bus-B6SAjgOC.mjs +2 -0
- package/dist/bus-C2l3K74u.mjs +1 -0
- package/dist/{canonical-model-C31NaBJs.mjs → canonical-model-EMRYCVjX.mjs} +1 -1
- package/dist/client-OYk0Ttck.mjs +1 -0
- package/dist/client-binary-version-verifier-Dv7TGFxh.mjs +2 -0
- package/dist/clients/index.d.mts +383 -13
- package/dist/clients/index.mjs +1 -1
- package/dist/clients/managed-install.d.mts +1 -1
- package/dist/clients/managed-install.mjs +1 -1
- package/dist/{context-resolution-D5jHK1w-.d.mts → context-resolution-DZSBOCKY.d.mts} +10 -10
- package/dist/contracts/adapter/index.d.mts +2 -2
- package/dist/contracts/adapter/index.mjs +1 -1
- package/dist/contracts/adapter/schemas/session-lineage.d.mts +1 -1
- package/dist/contracts/artifact/index.d.mts +2 -2
- package/dist/contracts/artifact/index.mjs +1 -1
- package/dist/contracts/auth/index.d.mts +2 -2
- package/dist/contracts/canonical-model/index.d.mts +1 -1
- package/dist/contracts/canonical-model/index.mjs +1 -1
- package/dist/contracts/client/index.d.mts +3 -3
- package/dist/contracts/client/index.mjs +1 -1
- package/dist/contracts/common/index.d.mts +1 -1
- package/dist/contracts/config/index.d.mts +1 -1
- package/dist/contracts/extension/index.d.mts +5 -4
- package/dist/contracts/facet/index.d.mts +1 -1
- package/dist/contracts/harness/index.d.mts +1 -1
- package/dist/contracts/host/index.d.mts +1 -1
- package/dist/contracts/index.d.mts +133 -94
- package/dist/contracts/index.mjs +1 -1
- package/dist/contracts/materialization/index.d.mts +4 -4
- package/dist/contracts/materialization/index.mjs +1 -1
- package/dist/contracts/model-registry/index.d.mts +1 -1
- package/dist/contracts/native-session-supervisor/index.d.mts +1 -1
- package/dist/contracts/platform/index.d.mts +1 -1
- package/dist/contracts/provider/index.d.mts +2 -2
- package/dist/contracts/session/index.d.mts +2 -2
- package/dist/contracts/session/index.mjs +1 -1
- package/dist/contracts/shared/index.d.mts +2 -2
- package/dist/contracts/skill/index.d.mts +1 -1
- package/dist/contracts/telemetry/index.d.mts +1 -1
- package/dist/contracts/timeout/index.d.mts +1 -1
- package/dist/contracts/variant/index.d.mts +1 -1
- package/dist/contracts/workflow/index.d.mts +2 -2
- package/dist/contracts/workflow/index.mjs +1 -1
- package/dist/core/index.d.mts +78 -3
- package/dist/core/index.mjs +1 -1
- package/dist/{detached-extension-handle-BVM-Ic-4.mjs → detached-extension-handle-BsywhHfk.mjs} +1 -1
- package/dist/{filesystem-service-qR9Zy5-r.mjs → filesystem-service-Cupz_Z7S.mjs} +1 -1
- package/dist/git/index.mjs +1 -1
- package/dist/{globby-DE358g5u.mjs → globby-DWp7V-P2.mjs} +1 -1
- package/dist/handlers-cMBmexF4.mjs +57 -0
- package/dist/hook-responses-mmqRa2Dq.d.mts +825 -0
- package/dist/{index-Du-AJm69.d.mts → index-0Ju2i8gV.d.mts} +20 -6
- package/dist/{index-DD9inq5h.d.mts → index-4NQLoI7R.d.mts} +1 -1
- package/dist/{index-DAVLhzkq.d.mts → index-8fJ6dkzR.d.mts} +2 -1
- package/dist/{index-BdsuBxEz.d.mts → index-BHQXXd-O.d.mts} +4 -4
- package/dist/{index-ZGPSCZdC.d.mts → index-BKeJ-Act.d.mts} +24 -10
- package/dist/{index-BPBSMsc8.d.mts → index-BWvTZJxe.d.mts} +20 -20
- package/dist/{index-BM7u_OTo.d.mts → index-B_aBwkE-.d.mts} +111 -94
- package/dist/{index-ChB3K_a12.d.mts → index-BhXCCgJV2.d.mts} +1 -1
- package/dist/{index-BcqWLD6J.d.mts → index-BsBvs0aK.d.mts} +117 -45
- package/dist/{index-D_lLZ2dU.d.mts → index-C81hMexK.d.mts} +129 -37
- package/dist/{index-DoJRv-c3.d.mts → index-CFqShlHD.d.mts} +85 -85
- package/dist/{index-DHejCnq8.d.mts → index-CHxWUmmA.d.mts} +3 -3
- package/dist/{index-BfNfKh4y.d.mts → index-CKccv4s2.d.mts} +20 -26
- package/dist/{index-TWs1TQ2-.d.mts → index-Cw7_69gV.d.mts} +1 -1
- package/dist/{index-DE29b4QM.d.mts → index-CzKLLQLw.d.mts} +8 -8
- package/dist/{index-CSyR9Fie2.d.mts → index-D73PTKXG2.d.mts} +3 -3
- package/dist/{index-DA5S_dj8.d.mts → index-DRiTICBU.d.mts} +1 -1
- package/dist/{index-XzetMf0e.d.mts → index-DitLUuR5.d.mts} +126 -42
- package/dist/{index-B_KmL_z8.d.mts → index-jbgHR5J2.d.mts} +1 -1
- package/dist/{index-B96HlWaM.d.mts → index-pjATMrvJ.d.mts} +10 -4
- package/dist/{index-CrbFA2kp.d.mts → index-t9fTvyq6.d.mts} +4 -4
- package/dist/kernel/cli/index.d.mts +2 -2
- package/dist/kernel/cli/register.d.mts +1 -1
- package/dist/kernel/extension/index.d.mts +1 -1
- package/dist/kernel/index.d.mts +5 -5
- package/dist/kernel/namespace/index.d.mts +1 -1
- package/dist/kernel/observability/index.d.mts +1 -1
- package/dist/kernel/providers/index.d.mts +1 -1
- package/dist/kernel/window/index.d.mts +1 -1
- package/dist/{lib-DhbCgfYD.mjs → lib-B7TpTzkG.mjs} +3 -3
- package/dist/{lib-6P8_sBCe.mjs → lib-BeMM738r.mjs} +1 -1
- package/dist/{load-extensions-jGQgvw6Z.d.mts → load-extensions-BLdG90Zi.d.mts} +1 -1
- package/dist/{load-extensions-5VckHXuw.mjs → load-extensions-CUmFCcYi.mjs} +1 -1
- package/dist/materialization-s8eR1eQ4.mjs +1 -0
- package/dist/mcp-http-server/index.mjs +1 -1
- package/dist/{namespace-C_phrzqu2.d.mts → namespace-BWsPZGiq2.d.mts} +5 -5
- package/dist/{namespace-CzZmsumy.d.mts → namespace-BeV7LST-.d.mts} +2 -2
- package/dist/{namespace-BTp6-zD8.d.mts → namespace-BsF9IxJ9.d.mts} +53 -5
- package/dist/{namespace-CpSZfHLv.d.mts → namespace-Db_PFX3v.d.mts} +36 -18
- package/dist/{namespace-Bldr5X64.d.mts → namespace-Dvo_7BQw.d.mts} +2 -2
- package/dist/{namespace-BwAiuQ2_.d.mts → namespace-lWlqWTKu.d.mts} +48 -4
- package/dist/node/bus-server/index.d.mts +1 -1
- package/dist/node/bus-server/index.mjs +1 -1
- package/dist/node/bus-server/server-lifecycle.d.mts +1 -1
- package/dist/node/bus-server/server-lifecycle.mjs +1 -1
- package/dist/node/transports/index.d.mts +5 -3
- package/dist/node/transports/index.mjs +2 -2
- package/dist/package-DKnzOvoR.mjs +1 -0
- package/dist/{package-Brt4dhRC.mjs → package-DW1Upu8E.mjs} +1 -1
- package/dist/package.json +1 -1
- package/dist/{packages-BBJsifai.d.mts → packages-DeIgn0Hn.d.mts} +2 -2
- package/dist/packages-zDnokBpl.mjs +1 -0
- package/dist/rules/index.d.mts +1 -1
- package/dist/rules/index.mjs +1 -1
- package/dist/rules/schemas.d.mts +1 -1
- package/dist/runtime-bun/index.mjs +1 -1
- package/dist/runtime-node/extension-discovery.d.mts +1 -1
- package/dist/runtime-node/extension-validation.d.mts +1 -1
- package/dist/runtime-node/extension-validation.mjs +1 -1
- package/dist/runtime-node/index.d.mts +3 -3
- package/dist/runtime-node/index.mjs +22 -22
- package/dist/runtime-node/makaio-config.d.mts +1 -1
- package/dist/runtime-node/makaio-config.mjs +1 -1
- package/dist/runtime-node/workflow-worker/index.d.mts +1 -1
- package/dist/runtime-node/workflow-worker/index.mjs +1 -1
- package/dist/runtime-node/workflow-worker/worker-entry.mjs +1 -1
- package/dist/schemas-BJ8VMXhO.mjs +1 -0
- package/dist/schemas-BRxU_oqL.mjs +1 -0
- package/dist/schemas-Dgj3WaOI.mjs +1 -0
- package/dist/{schemas-BLJ2k226.d.mts → schemas-SsGbBOZ-.d.mts} +2 -2
- package/dist/{schemas-Ca3BLPH5.d.mts → schemas-oTIqxZN_.d.mts} +17 -17
- package/dist/scoped-bus-C9BdNwfM.mjs +1 -0
- package/dist/services/adapter-runtime/index.d.mts +3 -3
- package/dist/services/adapter-runtime/index.mjs +1 -1
- package/dist/services/adapter-runtime/namespace.d.mts +1 -1
- package/dist/services/adapter-runtime/schemas.d.mts +1 -1
- package/dist/services/adapter-subsystem/index.d.mts +3 -3
- package/dist/services/adapter-subsystem/namespace.d.mts +1 -1
- package/dist/services/agent-runtime/index.d.mts +2 -2
- package/dist/services/agent-runtime/namespace.d.mts +1 -1
- package/dist/services/agent-runtime/schemas.d.mts +1 -1
- package/dist/services/capability/index.d.mts +1 -1
- package/dist/services/capability/index.mjs +1 -1
- package/dist/services/codebase/index.d.mts +2 -2
- package/dist/services/codebase/namespace.d.mts +1 -1
- package/dist/services/codebase/schemas.d.mts +1 -1
- package/dist/services/compression/index.d.mts +2 -2
- package/dist/services/compression/namespace.d.mts +1 -1
- package/dist/services/compression/schemas.d.mts +1 -1
- package/dist/services/context-rules/index.d.mts +4 -4
- package/dist/services/context-rules/index.mjs +1 -1
- package/dist/services/execution-target/index.d.mts +3 -3
- package/dist/services/execution-target/index.mjs +1 -1
- package/dist/services/execution-target/namespace.d.mts +1 -1
- package/dist/services/execution-target/schemas.d.mts +1 -1
- package/dist/services/filesystem/index.d.mts +1 -1
- package/dist/services/filesystem/index.mjs +1 -1
- package/dist/services/git/namespace.d.mts +2 -2
- package/dist/services/git/namespace.mjs +1 -1
- package/dist/services/git/schemas.d.mts +1 -1
- package/dist/services/git/schemas.mjs +1 -1
- package/dist/services/harness/index.d.mts +3 -3
- package/dist/services/harness/index.mjs +1 -1
- package/dist/services/index.d.mts +73 -51
- package/dist/services/index.mjs +1 -1
- package/dist/services/log-import/browser.d.mts +2 -2
- package/dist/services/log-import/index.d.mts +2 -2
- package/dist/services/log-import/log-import.d.mts +1 -1
- package/dist/services/log-import/log-import.mjs +1 -1
- package/dist/services/log-import/namespace.mjs +1 -1
- package/dist/services/log-import/schemas.mjs +1 -1
- package/dist/services/materialization/index.d.mts +5 -5
- package/dist/services/materialization/index.mjs +1 -1
- package/dist/services/model-registry/index.d.mts +1 -1
- package/dist/services/model-registry/index.mjs +1 -1
- package/dist/services/preferences/index.d.mts +2 -2
- package/dist/services/preferences/schemas.d.mts +1 -1
- package/dist/services/preferences/storage-namespace.d.mts +2 -2
- package/dist/services/provider-context/index.d.mts +1 -1
- package/dist/services/provider-runtime/index.mjs +1 -1
- package/dist/services/session/handlers/index.d.mts +1 -1
- package/dist/services/session/handlers/index.mjs +1 -1
- package/dist/services/session/index.d.mts +9 -9
- package/dist/services/session/index.mjs +1 -1
- package/dist/services/session/messages/namespace.d.mts +1 -1
- package/dist/services/session/orchestrator-testing/index.d.mts +1 -1
- package/dist/services/session/orchestrator-testing/index.mjs +1 -1
- package/dist/services/session/session-events/namespace.d.mts +1 -1
- package/dist/services/session/storage/namespace.d.mts +1 -1
- package/dist/services/session/storage/schema.d.mts +1 -1
- package/dist/services/session/testing/index.mjs +2 -2
- package/dist/services/session/testing/orchestrator-shared.d.mts +1 -1
- package/dist/services/session/testing/orchestrator-shared.mjs +1 -1
- package/dist/services/session/turns/namespace.d.mts +1 -1
- package/dist/services/session-editor/index.d.mts +1 -1
- package/dist/services/session-editor/index.mjs +1 -1
- package/dist/services/settings/index.d.mts +3 -3
- package/dist/services/settings/namespace.d.mts +14 -14
- package/dist/services/settings/namespace.mjs +1 -1
- package/dist/services/settings/storage/clients-namespace.d.mts +1 -1
- package/dist/services/settings/storage/extension-configs/namespace.d.mts +3 -3
- package/dist/services/settings/storage/index.d.mts +3 -3
- package/dist/services/settings/storage/providers-namespace.d.mts +1 -1
- package/dist/services/subagent/index.d.mts +1 -1
- package/dist/services/subagent/index.mjs +1 -1
- package/dist/services/subagent-template/index.d.mts +2 -2
- package/dist/services/subagent-template/namespace.d.mts +1 -1
- package/dist/services/subagent-template/schemas.d.mts +1 -1
- package/dist/services/tool-approval/index.d.mts +1 -1
- package/dist/services/tool-approval/index.mjs +1 -1
- package/dist/services/tools/index.d.mts +1 -1
- package/dist/services/tools/index.mjs +1 -1
- package/dist/services/tray-menu/index.d.mts +3 -3
- package/dist/services/tray-menu/index.mjs +1 -1
- package/dist/services/tray-menu/namespace.d.mts +1 -1
- package/dist/services/tray-menu/schemas.d.mts +1 -1
- package/dist/services/turn/index.d.mts +1 -1
- package/dist/services/turn/namespace.d.mts +1 -1
- package/dist/services/turn/schemas.d.mts +24 -2
- package/dist/services/turn/schemas.mjs +1 -1
- package/dist/{session-BxWogVkD.mjs → session-Carng3Yk.mjs} +1 -1
- package/dist/session-idI1jk5X.mjs +76 -0
- package/dist/{session-lineage-CWlcOKBZ.d.mts → session-lineage-Cte63dGx.d.mts} +1 -1
- package/dist/src-XihJcAQS.mjs +1 -0
- package/dist/storage/drizzle/client.d.mts +1 -1
- package/dist/storage/drizzle/client.mjs +1 -1
- package/dist/storage/drizzle/index.d.mts +1 -1
- package/dist/storage/drizzle/index.mjs +1 -1
- package/dist/storage/handlers/drizzle/index.d.mts +1 -1
- package/dist/storage/handlers/drizzle/index.mjs +1 -1
- package/dist/storage/handlers/index.d.mts +1 -1
- package/dist/storage/handlers/index.mjs +1 -1
- package/dist/{tool-approval-service-BgSn_6NT.mjs → tool-approval-service-fIZ9x0kL.mjs} +1 -1
- package/dist/{tools-CWSuNk-M.mjs → tools-Cs2DwjCC.mjs} +1 -1
- package/dist/{transition-CukPcOG5.d.mts → transition-BMYk_IVK.d.mts} +2 -2
- package/dist/{types-DiZJnwN0.d.mts → types-CtSkJqzV.d.mts} +104 -14
- package/dist/{types-Be7wY1De.d.mts → types-LspCUW09.d.mts} +1 -1
- package/dist/ui-components/index.d.mts +4 -4
- package/dist/ui-components/index.mjs +2 -2
- package/dist/ui-kernel/index.d.mts +1 -1
- package/dist/ui-kernel/pages/schemas.d.mts +1 -1
- package/dist/{view-builder-DQiA4wDH.d.mts → view-builder-CpKzgyS2.d.mts} +77 -18
- package/dist/workflow-BX-FxDb0.mjs +1 -0
- package/dist/workflow-engine/index.d.mts +76 -76
- package/dist/workflow-engine/index.mjs +1 -1
- package/dist/workflow-engine/package.d.mts +1 -1
- package/dist/workflow-engine/package.mjs +1 -1
- package/dist/workflow-engine/workflow-orchestrator.mjs +1 -1
- package/dist/workflow-worker-DR9qYOFc.mjs +1 -0
- package/package.json +4 -4
- package/dist/artifact-Dnpy5ei_.mjs +0 -1
- package/dist/authority-state-bootstrap-BlbmQ9A5.mjs +0 -1
- package/dist/bus-D-ioC0DE.mjs +0 -1
- package/dist/bus-rgUFuO2a.mjs +0 -2
- package/dist/client-CzPCSeyE.mjs +0 -1
- package/dist/client-binary-version-verifier-CaFlNNjs.mjs +0 -2
- package/dist/definition-ClKlXenJ.d.mts +0 -413
- package/dist/handlers-RGs3eC9X.mjs +0 -57
- package/dist/materialization-BBxXhthv.mjs +0 -1
- package/dist/package-3cW8oIkI.mjs +0 -1
- package/dist/packages-I0D3JP9L.mjs +0 -1
- package/dist/schemas-6H-dlMrB.mjs +0 -1
- package/dist/schemas-DyJHJ8Pm.mjs +0 -1
- package/dist/schemas-th_nuC5t.mjs +0 -1
- package/dist/scoped-bus-CZId-Df8.mjs +0 -1
- package/dist/session-CAjudDuJ.mjs +0 -76
- package/dist/src-T5DtFSyU.mjs +0 -1
- package/dist/workflow-DPeE6-Ta.mjs +0 -1
- package/dist/workflow-worker-CPCh68Qf.mjs +0 -1
- /package/dist/{adapter-auth-runtime-CotG_6M4.mjs → adapter-auth-runtime-DFBLXD5K.mjs} +0 -0
- /package/dist/{adapter-binding-DQ1HrGcH.d.mts → adapter-binding-Dfk_g-lP.d.mts} +0 -0
- /package/dist/{ajv-WvFKnw8d.mjs → ajv-C8r45sFs.mjs} +0 -0
- /package/dist/{await-trigger-COHFNyNi.mjs → await-trigger-UceeyCyi.mjs} +0 -0
- /package/dist/{base-orchestrator-p3zIcnaJ.d.mts → base-orchestrator-5yH3l39s.d.mts} +0 -0
- /package/dist/{capability-service-TCOwWrLi.mjs → capability-service-BzKBK0n2.mjs} +0 -0
- /package/dist/{client-CGEyBWKl.d.mts → client-DYEHDiJN.d.mts} +0 -0
- /package/dist/{client-binary-version-verifier-WsNRplFB.d.mts → client-binary-version-verifier-C12PvQmz.d.mts} +0 -0
- /package/dist/{clients-namespace-ClKm1GLT.d.mts → clients-namespace-DcFmhtLv.d.mts} +0 -0
- /package/dist/{config-namespace-DOw8R5eb.d.mts → config-namespace-DmP7NVju.d.mts} +0 -0
- /package/dist/{create-static-mount-DM9qO98Q.mjs → create-static-mount-BLbqGmva.mjs} +0 -0
- /package/dist/{cross-spawn-CVfmnMVP.mjs → cross-spawn-BXxQUsPS.mjs} +0 -0
- /package/dist/{cursor-storage-BoFVjVGq.mjs → cursor-storage-DCj4uUxr.mjs} +0 -0
- /package/dist/{definition-BZrouYAq.d.mts → definition-BEvV7tbD.d.mts} +0 -0
- /package/dist/{descriptor-to-package-DCwvJoUE.mjs → descriptor-to-package-VfB8lK5w.mjs} +0 -0
- /package/dist/{drizzle-BQDvlDL2.mjs → drizzle-oCH9H53q.mjs} +0 -0
- /package/dist/{esm-1UzF2r1U.mjs → esm-ClQELElL.mjs} +0 -0
- /package/dist/{event-Ddxe4yp9.mjs → event-BOLVCfhH.mjs} +0 -0
- /package/dist/{execution-target-D6PoGaO8.mjs → execution-target-CsZXIvli.mjs} +0 -0
- /package/dist/{extension-discovery-Cce4FmRu.d.mts → extension-discovery-B6p3iZaV.d.mts} +0 -0
- /package/dist/{filesystem-service-CWBzOEAA.d.mts → filesystem-service-CGdboor3.d.mts} +0 -0
- /package/dist/{handler-Bxs0moLY.mjs → handler-GGOD_ofd.mjs} +0 -0
- /package/dist/{identity-D481xSkS.mjs → identity-BmEHHoBw.mjs} +0 -0
- /package/dist/{index-BoCL9IHT.d.mts → index-BDDbcWNI.d.mts} +0 -0
- /package/dist/{index-p1N3ZuqF.d.mts → index-BG9-vQHD.d.mts} +0 -0
- /package/dist/{index-C2PHX5Em.d.mts → index-BSmwpgkR.d.mts} +0 -0
- /package/dist/{index-M8rNEeH8.d.mts → index-BUYyZm5I.d.mts} +0 -0
- /package/dist/{index-Jec13bI-2.d.mts → index-Bd1GC1kU2.d.mts} +0 -0
- /package/dist/{index-D3cH5U0n.d.mts → index-BgpYhR2z.d.mts} +0 -0
- /package/dist/{index-BrvsExEF.d.mts → index-Brdc35b-.d.mts} +0 -0
- /package/dist/{index-4b-ig5Uf.d.mts → index-C96LlS5m.d.mts} +0 -0
- /package/dist/{index-RtP5Mi4D.d.mts → index-CFeY8lfU.d.mts} +0 -0
- /package/dist/{index-NZ-gfUOw.d.mts → index-CcsJnJOD.d.mts} +0 -0
- /package/dist/{index-XLGBNeu0.d.mts → index-CdEhEXlY.d.mts} +0 -0
- /package/dist/{index-DKCFz7dL.d.mts → index-Chy9aknK.d.mts} +0 -0
- /package/dist/{index-BRdPSBFH2.d.mts → index-Ci3_i-WC2.d.mts} +0 -0
- /package/dist/{index-ChsmMZmN.d.mts → index-DC0yVsYL.d.mts} +0 -0
- /package/dist/{index-DIAmg04s.d.mts → index-DEchpaya.d.mts} +0 -0
- /package/dist/{index-CNS1jyBU.d.mts → index-DYUxNOIX.d.mts} +0 -0
- /package/dist/{index-fFSPF7N0.d.mts → index-DaMfTvfz.d.mts} +0 -0
- /package/dist/{index-Dx6P-ajY.d.mts → index-DquI_1X5.d.mts} +0 -0
- /package/dist/{index-DbP0yaRw.d.mts → index-GYZs75UP.d.mts} +0 -0
- /package/dist/{index-CQco6KNL.d.mts → index-oYGf2zIe.d.mts} +0 -0
- /package/dist/{index-BOlzcjwS.d.mts → index-pgYFJ5h6.d.mts} +0 -0
- /package/dist/{json-value-BsWNQQbr.d.mts → json-value-BwVdTylT.d.mts} +0 -0
- /package/dist/{jsonl-transport-B70HQ9l1.mjs → jsonl-transport-D8RBF0dK.mjs} +0 -0
- /package/dist/{lib-C_apP_9s.mjs → lib-3_xcE8J-.mjs} +0 -0
- /package/dist/{model-registry-C3NX834K.mjs → model-registry-CoegIvks.mjs} +0 -0
- /package/dist/{namespace-Bogua97s.d.mts → namespace-8-GrdcbF.d.mts} +0 -0
- /package/dist/{namespace-DNgZ_rfi.d.mts → namespace-B9CYb9Gh.d.mts} +0 -0
- /package/dist/{namespace-DDx4NVJm.mjs → namespace-BHj13hbA.mjs} +0 -0
- /package/dist/{namespace-Dzbt8LqQ.d.mts → namespace-BHliaabz.d.mts} +0 -0
- /package/dist/{namespace-BqlDkdht2.d.mts → namespace-BSXHdCVh2.d.mts} +0 -0
- /package/dist/{namespace-CU1jSw6E.d.mts → namespace-Bd49QmzS.d.mts} +0 -0
- /package/dist/{namespace-kIjqar0Y.mjs → namespace-BeED_Ojz.mjs} +0 -0
- /package/dist/{namespace-SwgMs4rw.d.mts → namespace-D9HNjIdc.d.mts} +0 -0
- /package/dist/{namespace-B1_egU5J.mjs → namespace-DWwWnLBu.mjs} +0 -0
- /package/dist/{namespace-UCwUrFRx.d.mts → namespace-De9Mg3zv.d.mts} +0 -0
- /package/dist/{namespace-CddQuUvG.d.mts → namespace-SQAGytmu.d.mts} +0 -0
- /package/dist/{orchestrator-shared-DrEFeZYw.d.mts → orchestrator-shared-BB6j8ezL.d.mts} +0 -0
- /package/dist/{orchestrator-shared-jYk9mi5C.mjs → orchestrator-shared-CY7Tu7kZ.mjs} +0 -0
- /package/dist/{out-B6fO6go6.mjs → out-CFkI17mk.mjs} +0 -0
- /package/dist/{package-BVm1EakP.d.mts → package-BSG1681x.d.mts} +0 -0
- /package/dist/{providers-namespace-Bl3M8Ibo.d.mts → providers-namespace-sPbGcZ6I.d.mts} +0 -0
- /package/dist/{quick-lru-Coxb6GVa.mjs → quick-lru-CTBjxfgD.mjs} +0 -0
- /package/dist/{registry-ElIHcMM2.mjs → registry-Dw6l7k3e.mjs} +0 -0
- /package/dist/{schema-DOPEco97.d.mts → schema-CfMsufSb.d.mts} +0 -0
- /package/dist/{schemas-B3K1ekm7.d.mts → schemas-B4FyOOJj.d.mts} +0 -0
- /package/dist/{schemas-Dq_g7Giu.d.mts → schemas-B5tMYfhC.d.mts} +0 -0
- /package/dist/{schemas-D_H0ztxl.d.mts → schemas-BAvt2HDy.d.mts} +0 -0
- /package/dist/{schemas-FiDj_kLq.mjs → schemas-BGS9RfqV.mjs} +0 -0
- /package/dist/{schemas-BKgUDm_a2.d.mts → schemas-BKKpQC4X2.d.mts} +0 -0
- /package/dist/{schemas-CzT0LApM.d.mts → schemas-ChF2z4RB.d.mts} +0 -0
- /package/dist/{schemas-DfZ85CRF2.d.mts → schemas-CiWCNQ9a2.d.mts} +0 -0
- /package/dist/{schemas-pl0mzEtO.d.mts → schemas-D55eXBgl.d.mts} +0 -0
- /package/dist/{schemas-CVbfHPw-.d.mts → schemas-DYvvMd3c.d.mts} +0 -0
- /package/dist/{schemas-DPosZWw-.d.mts → schemas-Dmij0PIc.d.mts} +0 -0
- /package/dist/{server-lifecycle-DzO3rjKP.d.mts → server-lifecycle-C-3OgoKi.d.mts} +0 -0
- /package/dist/{server-lifecycle-DLdh0-4H.mjs → server-lifecycle-DV6NMsgH.mjs} +0 -0
- /package/dist/{src-Dqa1n_kI.mjs → src-ftBp6GpR.mjs} +0 -0
- /package/dist/{storage-namespace-D4yQ--Sp.d.mts → storage-namespace-9N9R61pI.d.mts} +0 -0
- /package/dist/{storage-namespace-B1_x8Ho2.mjs → storage-namespace-B1GI4elv.mjs} +0 -0
- /package/dist/{storage-namespace-definition-BzSaRLtZ.d.mts → storage-namespace-definition-V8sc3drq.d.mts} +0 -0
- /package/dist/{supports-color-CCdGjFUY.mjs → supports-color-DwW9N6YC.mjs} +0 -0
- /package/dist/{tray-menu-service-BJ9r7IY3.mjs → tray-menu-service-Dgedanv-.mjs} +0 -0
- /package/dist/{types-Diu9uAnB.d.mts → types-Bju4dmAg.d.mts} +0 -0
- /package/dist/{types-C8_OhAFv.d.mts → types-DBb5jY4Z.d.mts} +0 -0
- /package/dist/{types-Bgb8eQkd.d.mts → types-DVLq657Y.d.mts} +0 -0
- /package/dist/{types-B9QOZAZ5.d.mts → types-DkFvBdIY.d.mts} +0 -0
- /package/dist/{window-registry-CHv3cgSN.d.mts → window-registry-Qcnvlhp7.d.mts} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{z as e}from"zod";import{webcrypto as t}from"node:crypto";function n(e){if(typeof e!=`object`||!e)return!1;let t=e;return`$in`in t||`$ne`in t||`$exists`in t||`$startsWith`in t||`$endsWith`in t}function r(t){return typeof t==`object`&&!!t&&`request`in t&&`response`in t&&t.request instanceof e.ZodType&&t.response instanceof e.ZodType}function i(e){return typeof e==`object`&&!!e&&`__channel`in e&&e.__channel===!0&&`schema`in e}function a(e){return{__channel:!0,schema:e}}function o(e){return typeof e==`object`&&!!e&&`__local`in e&&e.__local===!0&&`schema`in e}function s(e){return{__local:!0,schema:e}}function c(e){return typeof e==`object`&&!!e&&`__hostLocalRequest`in e&&e.__hostLocalRequest===!0&&`schema`in e}function l(e){return{__hostLocalRequest:!0,schema:e}}function u(e){return typeof e==`object`&&!!e&&`__defaultTransports`in e&&(e.__defaultTransports===`all`||e.__defaultTransports===`local-only`)&&`schema`in e}function d(e,t){return{__defaultTransports:t,schema:e}}function f(e){return typeof e==`object`&&!!e&&`__collectorOnly`in e&&e.__collectorOnly===!0&&`schema`in e}function p(e){return{__collectorOnly:!0,schema:e}}function m(e){return o(e)||f(e)||i(e)||c(e)||u(e)?e.schema:e}function h(e,t,n){let a={};for(let[s,l]of Object.entries(t)){let t=s.split(`.`),d=a;for(let e=0;e<t.length-1;e++)d[t[e]]??={},d=d[t[e]];let f=o(l),p=i(l),h=c(l),g=u(l)?l.__defaultTransports:n,_={subject:s,$meta:{namespace:e,isRequest:r(m(l)),local:f,channel:p,...h&&{hostLocalRequest:h},...g!==void 0&&{defaultTransports:g}}};d[t[t.length-1]]=_}return a.$all={subject:`*`,$meta:{namespace:e,isRequest:!1,local:!1,channel:!1}},a}function g(e){return`${e.$meta.namespace}.${e.subject}`}function _(e,t,n){let r=n?.defaultTransports,i;if(n!==void 0){let{defaultTransports:e,...t}=n;i=Object.keys(t).length>0?t:void 0}return{name:e,subjects:h(e,t,r),schemas:t,...i===void 0?{}:{options:i},...r===void 0?{}:{defaultTransports:r}}}e.object({cwd:e.string(),env:e.record(e.string(),e.string()),platform:e.enum([`posix`,`windows`]),signal:e.custom().optional(),constraints:e.record(e.string(),e.unknown()).optional(),sessionId:e.string().optional(),subagentId:e.string().optional(),subagentDepth:e.number().optional()});var v=class extends Error{subject;constructor(e,t){super(e),this.subject=t,this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}};const y=`makaio.observability`;function b(e){let t=e.meta()?.[y];if(typeof t!=`object`||!t)return;let n=t;return n.kind===`schema`||n.kind===`field`?n:void 0}function x(e,t){return e.meta({...e.meta(),[y]:t})}function S(t){if(t instanceof e.ZodOptional||t instanceof e.ZodNullable||t instanceof e.ZodDefault||t instanceof e.ZodCatch||t instanceof e.ZodReadonly)return t.unwrap()}function ee(e){let t=e;for(;t;){let e=b(t);if(e?.kind===`field`)return e;t=S(t)}}function te(e){let t=b(e);if(t?.kind===`schema`)return{traceAll:t.traceAll}}function ne(e){let t=ee(e);if(t)return{visibility:t.visibility,attributeName:t.attributeName}}const re={schema(e,t){return x(e,{kind:`schema`,traceAll:t.traceAll})},field(e,t){return x(e,{kind:`field`,visibility:t.visibility,attributeName:t.attributeName})},hidden(e){return x(e,{kind:`field`,visibility:`hidden`})},count(e,t){return x(e,{kind:`field`,visibility:`count`,attributeName:t})},attribute(e,t){return x(e,{kind:`field`,visibility:`attribute`,attributeName:t})}};function C(e,t){if(t===`*`)return!0;if(!t.endsWith(`*`))return e===t;if(t.endsWith(`:*`)){let n=t.slice(0,-2);return e.startsWith(n+`:`)}if(t.endsWith(`.*`)){let n=t.slice(0,-2);return e.startsWith(n+`.`)}return!1}function w(e,t){for(let n of t)if(C(e,n))return!0;return!1}function ie(e,t){if(e==null)return;let n=t.split(`.`),r=e;for(let e of n){if(typeof r!=`object`||!r)return;r=r[e]}return r}function ae(e,t){if(n(t)){if(`$in`in t)return t.$in.includes(e);if(`$ne`in t)return e!==t.$ne;if(`$exists`in t){let n=e!==void 0;return t.$exists?n:!n}return`$startsWith`in t?typeof e==`string`&&e.startsWith(t.$startsWith):`$endsWith`in t?typeof e==`string`&&e.endsWith(t.$endsWith):!1}return e===t}function T(e,t){for(let[n,r]of Object.entries(t))if(!ae(ie(e,n),r))return!1;return!0}function oe(e,t){if(!(!e&&!t))return e?t?{...e,...t}:e:t}var E=class extends v{subject;constructor(e,t){super(e),this.subject=t,this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}},se=class extends E{constructor(e){super(`Authentication failed for channel endpoint "${e}"`,e),this.name=`ChannelAuthError`}},ce=class extends E{constructor(e){super(`Channel "${e}" is closed`,e),this.name=`ChannelClosedError`}},le=class extends E{constructor(e){super(`Subject "${e}" is channel-only and cannot be used on the public bus. Use a DirectChannel instead.`,e),this.name=`ChannelOnlyError`}};const ue=`CONNECTION_LOST`;var de=class extends E{code=ue;retryable=!0;constructor(e){super(`Connection lost on transport "${e}" — pending requests were rejected. This is retryable after reconnection.`)}},fe=class extends E{constructor(e){super(`Subject "${e}" is local-only and cannot be invoked over a transport. Register a non-local handler on each node that needs to respond to this subject.`,e),this.name=`LocalSubjectError`}};const pe=`NO_HANDLER`;var D=class extends E{code=pe;constructor(e){super(`No handler registered for request subject "${e}"`,e)}},me=class extends E{cause;constructor(e,t,n){super(`Request to "${e}" failed: ${t}`,e),this.cause=n,n&&(this.cause=n)}},he=class extends E{timeoutMs;constructor(e,t){super(`Request to "${e}" timed out after ${t}ms`,e),this.timeoutMs=t}},ge=class extends E{zodError;constructor(e,t){let n=t.issues.map(e=>`${e.path.join(`.`)}: ${e.message}`);super(`Validation failed for subject "${e}":\n${n.join(`
|
|
2
|
+
`)}`,e),this.zodError=t}};function _e(e,t){if(!(e instanceof Error))return!1;if(e instanceof D)return e.subject===t;let n=e;return n.code===`NO_HANDLER`?n.subject===t:!1}function O(e){return`subject`in e&&`namespace`in e?`${e.namespace}.${e.subject}`:null}function ve(e,t){return e<t?-1:+(e>t)}function ye(e,t){return e.transportRegistry.names().filter(e=>e!==t).sort((e,t)=>ve(String(e),String(t))).map(t=>({name:t,transport:e.transportRegistry.getTransport(t)})).filter(e=>e.transport!==void 0)}function be(e,t){return ye(e,t).filter(({transport:e})=>e.isReady?.()!==!1)}const xe=new Set([`message`,`name`,`stack`,`cause`,`subject`,`code`]);function k(e){if(!(e instanceof Error))return{message:typeof e==`string`?e:`Unknown error`};let t={message:e.message},n=e.cause instanceof Error?e.cause:e,r=`code`in e?e:n;`code`in r&&typeof r.code==`string`&&(t.code=r.code);let i=`subject`in e?e.subject:void 0,a=`subject`in n?n.subject:void 0;typeof i==`string`?t.subject=i:typeof a==`string`&&(t.subject=a);for(let e of Object.keys(n)){if(xe.has(e))continue;let r=Object.getOwnPropertyDescriptor(n,e)?.value;typeof r==`function`||r===void 0||typeof r==`bigint`||typeof r==`symbol`||(t.data??={},t.data[e]=r)}return t}async function A(e,t,n){try{await e.send({type:`response`,correlationId:t.correlationId,error:k(n)})}catch(e){console.error(`[TransportRegistry] Failed to send error response:`,e)}}function j(e){let t=Error(e.message);if(e.code&&(t.code=e.code),e.subject&&(t.subject=e.subject),e.data)for(let[n,r]of Object.entries(e.data))t[n]=r;return t}const M=Object.freeze({local:!0}),N=Object.freeze({local:!1});function Se(e,t,n,r){if(n.size>0&&e&&!w(e,n))return!1;if(e&&t!==void 0){for(let[n,i]of r)if((n===e||w(e,new Set([n])))&&!T(t,i))return!1}return!0}function Ce(e,t){if(e.type===`response`){let n=e;return n.error?t.reject(n.correlationId,j(n.error)):t.resolve(n.correlationId,n.result),!0}if(e.type===`broadcast-response`){let n=e;return n.error?t.reject(n.correlationId,j(n.error)):t.resolve(n.correlationId,n.results??[]),!0}return!1}function we(e){return e.type===`request`}function Te(e){return e.type===`broadcast`}function Ee(e,t,n,r){return we(e)||Te(e)?t.track(e.correlationId,n,r):Promise.resolve(!0)}function De(e){let t=typeof e==`object`&&e?e:{};return{message:e instanceof Error?e.message:typeof t.message==`string`?t.message:String(e),code:t.code,subject:typeof t.subject==`string`?t.subject:void 0,data:t.data}}function Oe(e){if(e.length===0)return[];if(e.length===1)return e[0].slice();let t=[];for(let n of e)for(let e of n)t.push(e);return t.sort((e,t)=>t.priority-e.priority),t}function P(e,t,n,r=`strict`,i){if(process.env.NODE_ENV===`production`||r===`skip`)return;let a=n.safeParse(t);if(!a.success){if(r===`lenient`){if(i)try{i({subject:e,payload:t,issues:a.error.issues})}catch(t){console.error(`[BUS] onSchemaViolation callback threw for "${e}":`,t)}return}throw console.error(`Payload validation failed for subject "${e}":`,JSON.stringify(t)),new ge(e,a.error)}}function ke(e,t,n){let{mode:i,onViolation:a}=e.namespaceRegistry.getValidationConfig(t);if(i===`skip`)return;let o=e.namespaceRegistry.getSchema(t);!o||r(o)||P(t,n,o,i,a)}function Ae(e){let t=!e,n=new URL(e??`ws://localhost:6252/bus`);if(t){let e=parseInt(n.port,10);return{href:`${n.protocol}//${n.hostname}:${e}${n.pathname}`,port:e,isDefault:!0}}let r=n.port?parseInt(n.port,10):void 0;return{href:n.href,port:r,isDefault:!1}}function je(e,t){let{mode:n,onViolation:i}=e.namespaceRegistry.getValidationConfig(t);if(n===`skip`)return{requestSchema:void 0,responseSchema:void 0,mode:n,onViolation:void 0};let a=e.namespaceRegistry.getSchema(t);return!a||!r(a)?{requestSchema:void 0,responseSchema:void 0,mode:n,onViolation:i}:{requestSchema:a.request,responseSchema:a.response,mode:n,onViolation:i}}function Me(e,t,n){n.requestSchema&&P(e,t,n.requestSchema,n.mode,n.onViolation)}function Ne(e,t,n){n.responseSchema&&P(e,t,n.responseSchema,n.mode,n.onViolation)}function Pe(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>>1;e[i].priority>=t.priority?n=i+1:r=i}e.splice(n,0,t)}function F(e,t){let{requestHandlers:n}=e,r=[];for(let[e,i]of n)C(t,e)&&r.push(i);return Oe(r)}function Fe(e,t){return F(e,t).map(e=>e.handler)}function Ie(e,t,n=!1){let{remoteRequestHandlers:r}=e,i=[],a=new Set,o=new Set;if(n){for(let[n,r]of e.remoteSubscriptionDeliveryClasses)if(C(t,n))for(let[e,t]of r)t!==`relayable`&&a.add(e)}for(let[s,c]of r)if(C(t,s))for(let t of c){if(a.has(t.transport)||n&&!e.remoteSubscriptionDeliveryClasses.get(s)?.has(t.transport))continue;let r=`${t.transport}\0${t.priority}`;o.has(r)||(o.add(r),i.push(t))}return i.sort((e,t)=>t.priority-e.priority),i}function Le(e,t,n,r){let i=new Set,a=F(e,r);if(a.length>0)for(let e of a)i.add(e.priority);let o=e.eventHandlers.has(r),s=a.length>0||o,c=e.namespaceRegistry.isHostLocalRequestSubject(r),l=e.remoteRequestHandlers.get(r),u=e.remoteSubscriptionDeliveryClasses.get(r);if(l&&!c)for(let e of l)e.transport!==t&&u?.get(e.transport)===`relayable`&&i.add(e.priority);let d=e.remoteEventHandlers.get(r),f=!c&&d!==void 0&&[...d].some(e=>e!==t&&u?.get(e)===`relayable`);if(i.size===0&&!o&&!f)return Promise.resolve(n.unsubscribe(r)).catch(e=>{console.debug(`[AdvertisedState] unsubscribe propagation failed`,{transport:t,subject:r,error:e})});{let e=s&&c?`first-hop-only`:`relayable`;return Promise.resolve(n.subscribe(r,void 0,[...i],e)).catch(n=>{console.debug(`[AdvertisedState] subscribe propagation failed`,{transport:t,subject:r,priorities:[...i],deliveryClass:e,error:n})})}}function I(e,t,n){let r=[],i=ze(e,n);for(let n of e.transportRegistry.names()){if(t!==null&&n===t)continue;let a=e.transportRegistry.getTransport(n);if(a)for(let t of i)r.push(Le(e,String(n),a,t))}return r.length>0?Promise.allSettled(r).then(()=>void 0):Promise.resolve()}async function Re(e,t,n,r){let i=new Set;for(let t of e.requestHandlers.keys())i.add(t);for(let t of e.eventHandlers.keys())i.add(t);for(let t of e.remoteRequestHandlers.keys())i.add(t);for(let t of e.remoteEventHandlers.keys())i.add(t);for(let t of e.remoteSubscriptionDeliveryClasses.keys())i.add(t);for(let t of e.namespaceRegistry.listRegisteredSubjects())t.hostLocalRequest&&F(e,t.fullSubject).length>0&&i.add(t.fullSubject);let a=String(t),o=[];for(let t of i)o.push(Le(e,a,n,t));await Promise.allSettled(o),!r?.aborted&&n.isReady?.()!==!1&&n.ready!==void 0&&Promise.resolve(n.send({type:`subscribe-sync-complete`})).catch(e=>{console.debug(`[AdvertisedState] subscribe-sync-complete send failed`,{transport:a,error:e})})}function ze(e,t){let n=new Set(t);for(let r of e.namespaceRegistry.listRegisteredSubjects())r.hostLocalRequest&&t.some(e=>C(r.fullSubject,e))&&n.add(r.fullSubject);return n}const Be=new Set;function Ve(e,t,n){if(process.env.NODE_ENV===`production`||process.env.MAKAIO_DEBUG!==`true`||t.subject.includes(`*`)||t.$meta.namespace.startsWith(`channel:`)||e.namespaceRegistry.getSchema(n)!==void 0||Be.has(n))return;Be.add(n);let r=t.$meta.namespace;console.warn(`[MakaioBus] Subject '${n}' used but namespace '${r}' is not registered. Validation and local-subject routing are disabled. Call registerNamespace() at boot.`)}const He=process.env.NODE_ENV===`test`?()=>Be.clear():void 0,Ue=Symbol(`onPropagationPromise`);function We(e){return e?.[Ue]}async function Ge(e){await(We(e)??Promise.resolve())}function Ke(e,t,n,r,i){let a=e[t];a.has(n)||a.set(n,[]),Pe(a.get(n),{handler:r,priority:i})}function qe(e,t,n,r){let i=e[t],a=i.get(n);if(a){let e=a.findIndex(e=>e.handler===r);e!==-1&&a.splice(e,1),a.length===0&&i.delete(n)}}function L(e,t,n,r){let i=t.subject,a=g(t),o=t.$meta.isRequest,s=i.includes(`*`)||i.includes(`:`),c=s&&!o;s||Ve(e,t,a);let l=r?.filter?e=>{if(T(e.payload,r.filter))return n(e)}:n,u=s?r?.handlerKind:void 0,d=u===`both`?[`eventHandlers`,`requestHandlers`]:u===`event`?[`eventHandlers`]:u===`request`?[`requestHandlers`]:c?[`eventHandlers`,`requestHandlers`]:o?[`requestHandlers`]:[`eventHandlers`],f=r?.priority??0;for(let t of d)Ke(e,t,a,l,f);let p=I(e,null,[a]),m=()=>{for(let t of d)qe(e,t,a,l);I(e,null,[a])};return m[Ue]=p,m}let R,z;function Je(e){if(e<0||e>1024)throw RangeError(`Wrong ID size`);!R||R.length<e?(R=Buffer.allocUnsafe(e*128),t.getRandomValues(R),z=0):z+e>R.length&&(t.getRandomValues(R),z=0),z+=e}function B(e=21){Je(e|=0);let t=``;for(let n=z-e;n<z;n++)t+=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`[R[n]&63];return t}function V(e){return e===void 0?!1:Array.isArray(e)?e.length===0:e.size===0}function Ye(e,t,n){if(n.$meta.local)return[];let r=g(n);if(e.namespaceRegistry.isCollectorOnlySubject(r))return[];if(t===void 0)return n.$meta.defaultTransports===`local-only`?[]:be(e).map(({transport:e})=>e);let i=Array.isArray(t)?t:Array.from(t);if(V(t))return[];let a=[];for(let t of i){let n=e.transportRegistry.getTransport(t);if(!n){console.warn(`Transport "${String(t)}" not found for request "${r}"`);continue}a.push(n)}return a}function H(e,t,n,r){if(r!==void 0)return r;let i=t.$meta.defaultTransports;if(i!==void 0)return i===`local-only`?[]:void 0;if(e.namespaceRegistry.getDefaultTransports(n)===`local-only`)return[]}const Xe=1e3,U=new Set;function Ze(e){if(U.size>=Xe){Xe/2;let e=0;for(let t of U)if(U.delete(t),e++,e>=500)break}U.add(e)}function Qe(){process.env.NODE_ENV!==`production`&&U.clear()}function $e(e,t,n,r,i,a,o){if(process.env.NODE_ENV===`production`||e.anyHandlers.size===0)return;if(o!==void 0){if(U.has(o))return;Ze(o)}let s={type:t,subject:n,namespace:r,payload:i,messageId:a,correlationId:o};for(let t of e.anyHandlers)Promise.resolve().then(()=>t(s)).catch(e=>{console.error(`[${a}] Error in __onAny handler:`,e)})}function W(e){return e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`&&Number.isFinite(e)}function et(e){if(W(e))return!0;if(!Array.isArray(e)||!e.every(W))return!1;if(e.length<=1)return!0;let t=e[0]===null?`null`:typeof e[0];return e.every(e=>(e===null?`null`:typeof e)===t)}function tt(e){return Array.isArray(e)||typeof e==`string`?e.length:e===void 0?void 0:1}function nt(t){if(t instanceof e.ZodObject)return t.shape}function rt(e,t){let n=te(e),r=nt(e),i={};if(!r||typeof t!=`object`||!t)return i;let a=t;for(let[e,t]of Object.entries(r)){let r=ne(t);if(r?.visibility===`hidden`)continue;let o=a[e];if(r?.visibility===`count`){let t=tt(o);if(t!==void 0){let n=r.attributeName??e;i[n]=t}continue}if(n?.traceAll){if(W(o)){let t=r?.attributeName??e;i[t]=o}}else if(r?.visibility===`attribute`&&W(o)){let t=r.attributeName??e;i[t]=o}}return i}function it(e){let{projectorRegistry:t,message:n}=e;if(!t)return;let r=t.get(n.namespace,n.subject);if(r)return r.project({payload:n.payload,namespace:n.namespace,subject:n.subject,messageType:n.type})}function at(t){let{message:n,namespaceRegistry:i}=t,a=O(n);if(!a)return;let o=i.getSchema(a);if(o)return r(o)?o.request:o instanceof e.ZodType?o:void 0}function ot(e){let t={};for(let[n,r]of Object.entries(e))et(r)&&(t[n]=r);return t}function st(e,t){if(e.messageObservers.size!==0)for(let n of e.messageObservers)Promise.resolve().then(()=>n(t)).catch(e=>{console.error(`[${t.messageId}] Error in bus message observer:`,e)})}function ct(e){let{message:t,direction:n,observedAt:r,machineId:i}=e,a=it(e),o;if(a!==void 0)o=a;else{let n=at(e);o=n?rt(n,t.payload):{}}return[{factId:`${t.messageId}:${n}`,observedAt:r,...i===void 0?{}:{machineId:i},namespace:t.namespace,subject:t.subject,messageType:t.type,direction:n,messageId:t.messageId,...t.correlationId===void 0?{}:{correlationId:t.correlationId},attributes:ot(o)}]}function lt(e,t){let n=e.interceptorHandlers.get(t);return!n||n.length===0?[]:n.map(e=>e.handler)}function ut(e,t,n,r,i){let a=lt(e,t);return a.length===0?{stopped:!1,payload:n}:dt(a,t,n,r,i)}async function dt(e,t,n,r,i){let a=n,o=!1;for(let n of e){if(o)break;await n({subject:t,get payload(){return a},messageId:r,correlationId:i,stopPropagation(){o=!0},replacePayload(e){a=e},next(){}})}return{stopped:o,payload:a}}function ft(e,t){let{eventHandlers:n}=e,r=[];for(let[e,i]of n)C(t,e)&&r.push(i);return Oe(r).map(e=>e.handler)}async function pt(e,t,n){let{correlationId:r,messageId:i}=t,a=[];for(let o of e)a.push(Promise.resolve().then(()=>o(t)).catch(e=>{let t=r?`[${r}][${i}]`:`[${i}]`;throw console.error(`${t} Error in event handler for "${n}":`,e),e}));await Promise.all(a)}async function G(e,t,n,r){let i=t.subject,a=g(t);Ve(e,t,a);let o=r?.messageId??B(),s=r?.correlationId,c=H(e,t,a,r?.transports),l=t.$meta.local||e.namespaceRegistry.isCollectorOnlySubject(a)||V(c);ke(e,a,n);let u=ut(e,a,n,o,s),d=u instanceof Promise?await u:u;if(d.stopped)return;let f=d.payload,p=ft(e,a);$e(e,`event`,a,t.$meta.namespace,f,o,s),st(e,{type:`event`,namespace:t.$meta.namespace,subject:i,payload:f,messageId:o,correlationId:s,transport:r?.transport,localOnly:l}),p.length>0&&await pt(p,{payload:f,messageId:o,correlationId:s,subject:a,isRequest:!1,transport:r?.transport,origin:r?.transport?N:M},a);let m=Ye(e,c,t);if(m.length>0){let e=[];for(let n of m)e.push(n.send({type:`event`,subject:i,namespace:t.$meta.namespace,payload:f,messageId:o,correlationId:s}).catch(e=>{let t=s?`[${s}][${o}]`:`[${o}]`;console.error(`${t} Error sending event "${i}" to transport:`,e)}));await Promise.all(e)}}function mt(e,t,n,r){let i=g(t),a=r?.priority??0;e.interceptorHandlers.has(i)||e.interceptorHandlers.set(i,[]);let o=r?.filter?e=>{if(T(e.payload,r.filter))return n(e)}:n;return Pe(e.interceptorHandlers.get(i),{handler:o,priority:a}),()=>{let t=e.interceptorHandlers.get(i);if(t){let n=t.findIndex(e=>e.handler===o);n!==-1&&t.splice(n,1),t.length===0&&e.interceptorHandlers.delete(i)}}}var ht=class extends Error{constructor(e){super(e),this.name=`TimeoutError`}},gt=class extends Error{constructor(e){super(),this.name=`AbortError`,this.message=e}};const _t=e=>globalThis.DOMException===void 0?new gt(e):new DOMException(e),vt=e=>{let t=e.reason===void 0?_t(`This operation was aborted.`):e.reason;return t instanceof Error?t:_t(t)};function yt(e,t){let{milliseconds:n,fallback:r,message:i,customTimers:a={setTimeout,clearTimeout}}=t,o,s=new Promise((s,c)=>{if(typeof n!=`number`||Math.sign(n)!==1)throw TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(t.signal){let{signal:e}=t;e.aborted&&c(vt(e)),e.addEventListener(`abort`,()=>{c(vt(e))})}if(n===1/0){e.then(s,c);return}let l=new ht;o=a.setTimeout.call(void 0,()=>{if(r){try{s(r())}catch(e){c(e)}return}typeof e.cancel==`function`&&e.cancel(),i===!1?s():i instanceof Error?c(i):(l.message=i??`Promise timed out after ${n} milliseconds`,c(l))},n),(async()=>{try{s(await e)}catch(e){c(e)}})()}).finally(()=>{s.clear()});return s.clear=()=>{a.clearTimeout.call(void 0,o),o=void 0},s}function K(e){return e instanceof Error?e:Error(typeof e==`string`?e:`Request aborted`)}async function q(e,t,n){if(t!==0)return yt(e,{milliseconds:t,signal:n});if(!n)return e;if(n.aborted)throw K(n.reason);return new Promise((t,r)=>{let i=()=>{r(K(n.reason))};n.addEventListener(`abort`,i,{once:!0}),e.then(t,r).finally(()=>{n.removeEventListener(`abort`,i)})})}function bt(e,t){let n=[...e.map(e=>({...e,kind:`local`})),...t.map(e=>({...e,kind:`remote`}))];return n.sort((e,t)=>t.priority===e.priority?e.kind===`local`&&t.kind===`remote`?-1:+(e.kind===`remote`&&t.kind===`local`):t.priority-e.priority),n}function xt(e,t,n){if(!n||n.length===0)return[...t];let r=new Set(n),i=t.filter(e=>r.has(e.transport));return i.length>0?i:[...new Set(n)].filter(t=>{let n=e.transportRegistry.getTransport(t);return n?n.isReady?.()!==!1:!1}).map(e=>({transport:e,priority:0}))}async function J(e,t,n,r,i,a,o){if(i>=r.length){if(o!==void 0)throw o;return{handled:!1}}let s=r[i];return s.kind===`local`?St(e,t,n,s,r,i+1,a,o):Ct(e,t,n,s,r,i+1,a,o)}async function St(e,t,n,r,i,a,o,s){let c=t.subject,l,u=!1,d,f=n,p={isRequest:!0,get payload(){return f},get result(){return u?l:void 0},messageId:o.messageId,correlationId:o.correlationId,transport:o.transport,origin:o.transport?N:M,...o.deadline!==void 0&&{deadline:o.deadline},...o.signal!==void 0&&{signal:o.signal},setResult:e=>{l=e,u=!0},extendResult:e=>{l={...u?l:{},...e},u=!0},replacePayload:e=>{f=e},next:()=>{let n=(async()=>{let n=await J(e,t,f,i,a,o,s);n.handled&&!u&&(l=n.value,u=!0)})();return d??=n,n}};try{if(await r.handler(p),d!==void 0)await d;else if(!u){let n=await J(e,t,f,i,a,o,s);n.handled&&(l=n.value,u=!0)}}catch(e){throw e instanceof me?e:new me(c,e instanceof Error?e.message:String(e),e instanceof Error?e:void 0)}return{handled:u,value:l}}async function Ct(e,t,n,r,i,a,o,s){let c=t.subject,l=t.$meta.namespace,u=`${l}.${c}`,d=o.deadline??(o.timeout>0?Date.now()+o.timeout:void 0),f=d===void 0?o.timeout:Math.max(0,d-Date.now()),p={...o,deadline:d};if(d!==void 0&&f===0)return J(e,t,n,i,a,p,s);let m=e.transportRegistry.getTransport(r.transport);if(!m)return J(e,t,n,i,a,p,s);let h={type:`request`,subject:c,namespace:l,payload:n,correlationId:o.correlationId,messageId:o.messageId,timeout:f,priority:(()=>{if(a<2)return o.priority;let e=i[a-2].priority;return e===r.priority?e+1:e})(),deadline:d},{signal:g}=o;try{if(g?.aborted)throw K(g.reason);return{handled:!0,value:await q(m.send(h,f),f,g)}}catch(l){if(g?.aborted)throw m.cancelRequest?.(o.correlationId,l instanceof Error?l:K(g.reason)),l instanceof Error?l:K(g.reason);return _e(l,u)?J(e,t,n,i,a,p,s):(console.error(`[${o.correlationId}][${o.messageId}] Error sending request "${c}" via transport '${r.transport}':`,l),J(e,t,n,i,a,p,s??l))}}async function wt(e,t,n,r){let i=g(t),a=F(e,i),o=bt(a,t.$meta.local||r.localOnly?[]:xt(e,Ie(e,i,r.excludeFirstHopOnlyRemote),r.allowedTransports)),s=r.priority,c=s===void 0?0:o.findIndex(e=>e.priority<s);if(!t.$meta.local&&!r.localOnly){let o=e.transportRegistry.getPendingReady();if(o.length>0){await q(Promise.allSettled(o),r.timeout,r.signal);let s=bt(a,xt(e,Ie(e,i,r.excludeFirstHopOnlyRemote),r.allowedTransports));if(s.length===0)return{handled:!1};let c=r.priority,l=c===void 0?0:s.findIndex(e=>e.priority<c);return l===-1?{handled:!1}:J(e,t,n,s,l,r)}}return c===-1||o.length===0?{handled:!1}:J(e,t,n,o,c,r)}const Tt=6e4;function Et(e,t,n,r){return t.$meta.local?!0:V(H(e,t,n,r))}function Dt(e){if(e===void 0)return;let t=Array.isArray(e)?e:Array.from(e);return t.length>0?t.map(String):void 0}async function Y(e,t,n,r){let i=t.subject,a=g(t);Ve(e,t,a);let o=r?.messageId??B(),s=r?.correlationId??B(),c=r?.timeout??6e4,l=r?.signal,u=Et(e,t,a,r?.transports),d=je(e,a);Me(a,n,d),$e(e,`request`,i,t.$meta.namespace,n,o,s),st(e,{type:`request`,namespace:t.$meta.namespace,subject:i,payload:n,messageId:o,correlationId:s,transport:r?.transport,localOnly:u});let f=Dt(r?.transports),p=c>0?Date.now()+c:void 0,m;try{m=await q(wt(e,t,n,{allowedTransports:f,correlationId:s,messageId:o,timeout:c,signal:l,localOnly:u,deadline:p}),c,l)}catch(e){throw e instanceof ht?new he(i,c):e}if(!m.handled)throw new D(a);let h=m.value;return Ne(a,h,d),h}async function Ot(e,t,n,r){try{return{handled:!0,data:await Y(e,t,n,r)}}catch(e){if(e instanceof D)return{handled:!1};throw e}}var kt=class extends Error{constructor(){super(`once() was aborted via AbortSignal`),this.name=`OnceAbortError`}},At=class extends Error{constructor(e,t){super(`once() timed out after ${t}ms waiting for subject: ${e}`),this.name=`OnceTimeoutError`}};function jt(e,t,n){if(typeof n==`function`){let r=n,i=null;return i=L(e,t,(e=>{let t=i;return i=null,t?.(),r(e)})),()=>{i&&=(i(),null)}}let r=n;return new Promise((n,i)=>{let a=null,o=null,s=null,c=r?.signal,l=()=>{o&&=(clearTimeout(o),null),c&&s&&(c.removeEventListener(`abort`,s),s=null),a&&=(a(),null)};if(c){if(c.aborted){l(),i(new kt);return}s=()=>{l(),i(new kt)},c.addEventListener(`abort`,s,{once:!0})}a=L(e,t,(e=>{l(),n(e)}),r?.filter?{filter:r.filter}:void 0);let u=We(a),d=()=>{r?.timeoutMs&&a!==null&&(o=setTimeout(()=>{l(),i(new At(g(t),r.timeoutMs))},r.timeoutMs))};u?u.then(d,d):d()})}function Mt(e,t,n,r,i){let a=`anonymous`,o=!1,s;return{isRequest:!0,payload:e,messageId:t,correlationId:n,transport:i,origin:i?N:M,get result(){return s},identify:e=>{a=e},setResult:e=>{o||(o=!0,s=e,r(a,e))},extendResult:e=>{o?Object.assign(s,e):(s={...e},o=!0,r(a,s))},next:async()=>{},replacePayload:()=>{}}}async function Nt(e,t){let n=[],r=Mt(t.payload,t.messageId,t.correlationId,(e,t)=>{n.push({nodeId:e,payload:t})},t.transport);try{await e(r)}catch(e){return console.error(`[${t.correlationId}][${t.messageId}] Broadcast handler error for "${t.subjectKey}":`,e),[]}for(let e of n)Ne(t.fullSubjectKey,e.payload,t.validationCtx);return n}async function Pt(e,t,n,r){let i=t.subject,a=g(t),o=r?.messageId??B(),s=r?.correlationId??B(),c=r?.timeout??6e4,l=r?.signal,u=je(e,a),d=H(e,t,a,r?.transports),f=t.$meta.local||e.namespaceRegistry.isCollectorOnlySubject(a)||V(d);Me(a,n,u),$e(e,`broadcast`,i,t.$meta.namespace,n,o,s),st(e,{type:`broadcast`,namespace:t.$meta.namespace,subject:i,payload:n,messageId:o,correlationId:s,transport:r?.transport,localOnly:f});let p=[],m=Fe(e,a),h=d===void 0?t.$meta.local?[]:be(e).map(({transport:e})=>e):Ye(e,d,t),_=m.map(async e=>{let t=await Nt(e,{payload:n,messageId:o,correlationId:s,subjectKey:i,fullSubjectKey:a,transport:r?.transport,validationCtx:u});p.push(...t)}),v=h.map(async e=>{try{let r=await e.send({type:`broadcast`,subject:i,namespace:t.$meta.namespace,payload:n,correlationId:s,messageId:o,timeout:c},c);for(let e of r)Ne(a,e.payload,u),p.push({nodeId:e.nodeId,payload:e.payload})}catch(e){console.error(`[${s}][${o}] Broadcast transport error for "${i}":`,e)}});try{await q(Promise.all([..._,...v]),c,l)}catch(e){throw e instanceof ht?new he(i,c):e}return p}function X(e,t,n){if(!t?.$meta)throw Error(`Invalid subject definition provided to ${e}()`);if(t.$meta.channel)throw new le(String(t.subject));if(n){let e=t?.$meta?.namespace??`(NO NAMESPACE)`;if(e!==n)throw Error(`Subject namespace ${e} does not match scoped bus namespace ${n}`)}if(e===`emit`){if(t.$meta.isRequest)throw Error(`Cannot emit to request subjects. Use event subjects only.`);if(t.subject?.includes(`*`))throw Error(`Emitting wildcard subjects is not allowed. Use concrete subject keys only.`)}if(e===`intercept`){if(t.$meta.isRequest===!0)throw Error(`intercept() only supports event subjects, not request subjects. Use middleware for requests.`);if(t.subject?.includes(`*`))throw Error(`intercept() requires exact subjects, not wildcards. Wildcards are only supported for on().`)}}function Z(e,t){let n=oe(e,t?.filter);return!n||Object.keys(n).length===0?t:{...t,filter:n}}function Q(e,t,n){return{namespace:t,getFilter(){return n},withFilter:(r=>Q(e,t,oe(n,r))),on(r,i,a){return X(`on`,r,t),L(e,r,i,Z(n,a))},intercept(r,i,a){return X(`intercept`,r,t),mt(e,r,i,Z(n,a))},once:((r,i)=>{if(X(`once`,r,t),typeof i==`function`){let t=i,a=null;return a=L(e,r,(e=>{let n=a;return a=null,n?.(),t(e)}),Z(n,void 0)),()=>{a&&=(a(),null)}}return jt(e,r,Z(n,i))}),async emit(n,r){return X(`emit`,n,t),G(e,n,r)},async request(n,r){return X(`request`,n,t),Y(e,n,r)},async requestOptional(n,r){return X(`request`,n,t),Ot(e,n,r)}}}function Ft(e,t){let n=t,r=Dn({context:e,namespace:n});return{namespace:n,emit:r.emit,on:r.on,intercept:r.intercept,once:r.once,request:r.request,requestOptional:r.requestOptional,withFilter:(t=>Q(e,n,t)),getContext:()=>e}}function It(e){return{local:o(e),collectorOnly:f(e),channel:i(e),hostLocalRequest:c(e),defaultTransports:u(e)?e.__defaultTransports:void 0}}function Lt(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,It(r));return t}function Rt(e){let t=[];return e.local&&t.push(`local`),e.collectorOnly&&t.push(`collectorOnly`),e.channel&&t.push(`channel`),e.hostLocalRequest&&t.push(`hostLocalRequest`),e.defaultTransports&&t.push(`defaultTransports=${e.defaultTransports}`),t.length>0?t.join(`, `):`(none)`}function zt(e,t,n){let r=[];for(let[e,i]of n){let n=t.get(e);n&&(n.local!==i.local||n.collectorOnly!==i.collectorOnly||n.channel!==i.channel||n.hostLocalRequest!==i.hostLocalRequest||n.defaultTransports!==i.defaultTransports)&&r.push(`${e}: existing=[${Rt(n)}], incoming=[${Rt(i)}]`)}if(r.length!==0)throw Error(`[MakaioBus] Namespace '${e}' already registered with different routing metadata. Routing metadata must be identical across registrations because it determines security-critical transport behavior. Conflicts: ${r.join(`; `)}`)}const Bt=new WeakMap;function Vt(e){let t=e._def.values;if(t)return new Set(t.map(e=>`literal:${typeof e}:${String(e)}`))}function Ht(e){let t=e._def.checks;return Array.isArray(t)&&t.length>0}function Ut(t,n=!1){let r=new Set,i=t;for(;i instanceof e.ZodOptional||i instanceof e.ZodNullable||i instanceof e.ZodDefault||i instanceof e.ZodReadonly;){if(i instanceof e.ZodDefault)return;i instanceof e.ZodOptional&&r.add(`undefined`),i instanceof e.ZodNullable&&r.add(`null`),i=i.unwrap()}if(!(n&&Ht(i))){if(i instanceof e.ZodLiteral){let e=Vt(i);if(!e)return;for(let t of e)r.add(t);return r}if(i instanceof e.ZodString)r.add(`string`);else if(i instanceof e.ZodNumber)r.add(`number`);else if(i instanceof e.ZodBoolean)r.add(`boolean`);else if(i instanceof e.ZodBigInt)r.add(`bigint`);else if(i instanceof e.ZodDate)r.add(`date`);else return;return r}}function Wt(e,t){let n=Ut(e,!0),r=Ut(t);if(!n||!r)return!1;for(let e of r){if(n.has(e))continue;let t=e.startsWith(`literal:`)?e.slice(8).split(`:`,1)[0]:e;if(!n.has(t))return!1}return!0}function Gt(e){let t=e._def.checks;return Array.isArray(t)&&t.length>0}function Kt(e){let t=Bt.get(e);if(t)return t;let n=new Map(Object.entries(e.shape).map(([e,t])=>[e,t]));return Bt.set(e,n),n}function qt(e,t,n){if(!Gt(e))return;let r=Kt(e);for(let[e,i]of Object.entries(t)){let t=r.get(e);if(t&&!Wt(t,i))throw Error(`[MakaioBus] Cannot extend ${n}: field '${e}' overrides an incompatible refined schema field`)}}function Jt(e,t){Gt(e)&&Bt.set(t,Kt(e))}function Yt(t,n){if(!(t instanceof e.ZodObject)){let e=t?.constructor?.name??typeof t;throw Error(`[MakaioBus] Cannot extend ${n}: schema is not a ZodObject (got ${e})`)}}function Xt(e,t,n){qt(e,t,n);let r=e.safeExtend(t),i=e.meta(),a=i?r.meta(i):r;return Jt(e,a),a}function Zt(e,t){let n=Qt(e.toLowerCase(),t.toLowerCase());return n===0?Qt(e,t):n}function Qt(e,t){if(e===t)return 0;let n=Array.from(e),r=Array.from(t),i=Math.min(n.length,r.length);for(let e=0;e<i;e+=1){let t=n[e].codePointAt(0),i=r[e].codePointAt(0);if(t!==i)return(t??0)<(i??0)?-1:1}return n.length-r.length}const $t=async(e,t)=>{if(!e)throw Error(`Namespace not initialized yet`);let{MakaioBus:n}=await import(`./bus-C2l3K74u.mjs`),{createScopedBus:r}=await import(`./scoped-bus-C9BdNwfM.mjs`),i=t??n.getContext();if(!i)throw Error(`No MakaioBus context available. Please provide a context when calling scopedBus().`);return r(i,e)};function en(e,t,n){let r=Array.from(t.keys()),i=Array.from(n.keys()),a=i.filter(e=>!t.has(e)),o=r.filter(e=>!n.has(e)),s=i.filter(e=>{let r=t.get(e),i=n.get(e);return r!==void 0&&i!==void 0&&!tn(r,i)});if(a.length===0&&o.length===0&&s.length===0)return;let c=[];a.length>0&&c.push(`new subjects: ${a.join(`, `)}`),o.length>0&&c.push(`missing subjects: ${o.join(`, `)}`),s.length>0&&c.push(`changed schemas: ${s.join(`, `)}`),console.warn(`[MakaioBus] Namespace '${e}' already registered with different schemas. ${c.join(`; `)}. This usually indicates a namespace collision between packages.`)}function tn(e,t){let n=nn(e),r=nn(t);return typeof n==`string`&&typeof r==`string`?n===r:e===t}function nn(t){try{let n=r(t)?{request:e.toJSONSchema(t.request),response:e.toJSONSchema(t.response)}:e.toJSONSchema(t);return JSON.stringify(n)}catch{return t}}function rn(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,m(r));return t}function an(e){return e?.busValidationMode===`lenient`?{mode:`lenient`,onViolation:e.onSchemaViolation}:e?.busValidationMode===`skip`?{mode:`skip`}:{mode:`strict`}}function on(e,t,n){t.mode===n.mode&&t.onViolation===n.onViolation||console.warn(`[MakaioBus] Namespace '${e}' already registered with different validation settings. Existing mode: ${t.mode}; incoming mode: ${n.mode}. This usually indicates a namespace collision between packages.`)}const sn=()=>{let e=new Map,t=new Map,n=new Map,a=new Map,s=new Map,l=new Set,u=new Set,d=new Set,p=new Map,h=new Map;return{registerNamespace(r){let{name:g,schemas:_,options:v}=r,y=rn(_),b=Lt(_),x=e.get(g);if(x)return zt(g,n.get(g)??new Map,b),en(g,t.get(g)??new Map,y),on(g,p.get(g)??{mode:`strict`},an(v)),x;p.set(g,an(v)),t.set(g,y),n.set(g,b);for(let[e,t]of Object.entries(_)){let n=`${g}.${e}`,p=o(t),_=f(t),v=i(t),b=c(t),x=y.get(e)??m(t);a.set(n,x),s.set(n,{namespace:g,subject:e,fullSubject:n,schema:x,local:p,collectorOnly:_,channel:v,hostLocalRequest:b}),p&&l.add(n),_&&u.add(n),b&&d.add(n),r.defaultTransports&&h.set(n,r.defaultTransports)}let S={name:g,subjects:r.subjects,scopedBus:e=>$t(g,e)};return e.set(g,S),S},registerNamespaces(e){for(let t of e)this.registerNamespace(t)},getSchema(e){let t=typeof e==`string`?e:g(e);return a.get(t)},listRegisteredSubjects(){return Array.from(s.values()).map(e=>({...e,schema:r(e.schema)?{...e.schema}:e.schema})).sort((e,t)=>Zt(e.fullSubject,t.fullSubject))},getRegisteredSubject(e){return s.get(e)},isRequestSubject(e){let t=a.get(e);return t?r(t):!1},isLocalSubject(e){return l.has(e)},isCollectorOnlySubject(e){return u.has(e)},isHostLocalRequestSubject(e){return d.has(e)},getDefaultTransports(e){return h.get(e)??`all`},getValidationConfig(e){let t;for(let[n,r]of p)(e===n||e.startsWith(n+`.`))&&(!t||n.length>t.namespace.length)&&(t={namespace:n,config:r});return t?.config??{mode:`strict`}},extendSubjectSchema(e,t){let n=a.get(e);if(!n)throw Error(`[MakaioBus] Cannot extend subject '${e}': not registered. Ensure the owning namespace is imported before calling extendSubject().`);if(r(n)){let r=t;r.request&&Yt(n.request,`'${e}' request`),r.response&&Yt(n.response,`'${e}' response`);let i={request:r.request?Xt(n.request,r.request,`'${e}' request`):n.request,response:r.response?Xt(n.response,r.response,`'${e}' response`):n.response};a.set(e,i);let o=s.get(e);o&&s.set(e,{...o,schema:i})}else{Yt(n,`'${e}'`);let r=Xt(n,t,`'${e}'`);a.set(e,r);let i=s.get(e);i&&s.set(e,{...i,schema:r})}},__resetNamespaces:process.env.NODE_ENV===`test`?()=>{e.clear(),t.clear(),n.clear(),a.clear(),s.clear(),l.clear(),u.clear(),d.clear(),p.clear(),h.clear()}:void 0}};function cn(e){return e===`relayable`?`relayable`:`first-hop-only`}async function ln(e,t,n){let r=String(t);for(let[t,i]of Object.entries(n.subjects)){let a=cn(n.deliveryClasses?.[t]),o=e.remoteRequestHandlers.get(t),s=o?o.filter(e=>e.transport!==r):[];for(let e of i)s.push({transport:r,priority:e});s.length>0?e.remoteRequestHandlers.set(t,s):e.remoteRequestHandlers.delete(t);let c=e.remoteSubscriptionDeliveryClasses.get(t)??new Map;if(c.set(r,a),e.remoteSubscriptionDeliveryClasses.set(t,c),i.length===0){let n=e.remoteEventHandlers.get(t)??new Set;n.add(r),e.remoteEventHandlers.set(t,n)}else fn(e,t,r)}await I(e,t,Object.keys(n.subjects))}async function un(e,t,n){let r=String(t);for(let t of Object.keys(n.subjects)){let n=e.remoteRequestHandlers.get(t);if(n){let i=n.filter(e=>e.transport!==r);i.length===0?e.remoteRequestHandlers.delete(t):e.remoteRequestHandlers.set(t,i)}fn(e,t,r);let i=e.remoteSubscriptionDeliveryClasses.get(t);i?.delete(r),i?.size===0&&e.remoteSubscriptionDeliveryClasses.delete(t)}await I(e,t,Object.keys(n.subjects))}function dn(e,t){let n=new Set;for(let[r,i]of e.remoteRequestHandlers){let a=i.filter(e=>e.transport!==t);a.length!==i.length&&(a.length===0?e.remoteRequestHandlers.delete(r):e.remoteRequestHandlers.set(r,a),n.add(r))}for(let[r,i]of e.remoteEventHandlers)i.delete(t)&&(i.size===0&&e.remoteEventHandlers.delete(r),n.add(r));for(let[r,i]of e.remoteSubscriptionDeliveryClasses)i.delete(t)&&(i.size===0&&e.remoteSubscriptionDeliveryClasses.delete(r),n.add(r));n.size>0&&I(e,t,[...n])}function fn(e,t,n){let r=e.remoteEventHandlers.get(t);r?.delete(n),r?.size===0&&e.remoteEventHandlers.delete(t)}const pn=(e,t)=>({subject:e.subject,$meta:{namespace:e.namespace,isRequest:t,payload:{},local:!1,channel:!1}}),mn=(e,t)=>be(e,t),hn=async(e,t,n,r)=>{let i=O(n);if(i){if(e.namespaceRegistry.isLocalSubject(i)){console.warn(`[TransportRegistry] Dropping inbound event '${i}' from transport '${String(t)}': subject is local-only and cannot be invoked remotely.`);return}if(!e.namespaceRegistry.isCollectorOnlySubject(i)){let r=mn(e,t),a=await Promise.allSettled(r.map(async({transport:e})=>e.send(n)));for(let[e,t]of a.entries())t.status===`rejected`&&console.error(`[TransportRegistry] Failed to relay event '${i}' to transport '${String(r[e].name)}':`,t.reason)}await G(e,pn(n,!1),n.payload,{messageId:n.messageId,correlationId:n.correlationId,transports:[],transport:r})}},gn=async(e,t,n,r,i)=>{let a=O(r),o=r.timeout??6e4;if(!a){await A(n,r,Error(`Invalid subject in request message`));return}if(e.namespaceRegistry.isLocalSubject(a)){await A(n,r,new fe(a));return}let s=e.namespaceRegistry.isHostLocalRequestSubject(a),c=pn(r,!0);try{let t=await wt(e,c,r.payload,{correlationId:r.correlationId,messageId:r.messageId,timeout:o,deadline:r.deadline,priority:r.priority,transport:i,excludeFirstHopOnlyRemote:!0,...s&&{localOnly:!0}});if(!t.handled){await A(n,r,new D(a));return}await n.send({type:`response`,correlationId:r.correlationId,result:t.value})}catch(e){await A(n,r,e)}},$=async(e,t,n,r)=>{if(e.onBroadcastResults){e.onBroadcastResults(t,n,r);return}let i={type:`broadcast-response`,correlationId:t,...n.length>0?{results:n}:{},...r?{error:r}:{}};await e.send(i)},_n=async(e,t,n,r,i)=>{let a=O(r),o=r.timeout??6e4;if(!a){await $(n,r.correlationId,[],k(Error(`Invalid subject in broadcast message`)));return}if(e.namespaceRegistry.isLocalSubject(a)){await $(n,r.correlationId,[],k(new fe(a)));return}try{let s=[],c,l=Pt(e,pn(r,!0),r.payload,{messageId:r.messageId,correlationId:r.correlationId,timeout:o,transports:[],transport:i}).then(e=>s.push(...e)).catch(e=>{c=k(e)}),u=mn(e,t).map(async({name:e,transport:t})=>{try{s.push(...await t.send(r,o))}catch(t){console.error(`[TransportRegistry] Failed to relay broadcast '${a}' to transport '${String(e)}':`,t)}});await Promise.all([l,...u]),await $(n,r.correlationId,s,c)}catch(e){await $(n,r.correlationId,[],k(e))}},vn=(e,t,n)=>{if(n===void 0)return;e.set(t,n);let r=()=>{e.get(t)===n&&e.delete(t)};n.then(r,r)},yn=e=>{let t=new Map,n,r=new Map,i=async(t,n,r,i)=>{try{if(r.type===`subscribe-sync-complete`||r.type===`subscription-ack`)return;if(r.type===`subscribe`){await ln(e,t,r);return}if(r.type===`unsubscribe`){await un(e,t,r);return}let a=i?{...i,transportName:i.transportName||String(t)}:{transportName:String(t)};r.type===`event`?await hn(e,t,r,a):r.type===`request`?await gn(e,t,n,r,a):r.type===`broadcast`&&await _n(e,t,n,r,a)}catch(e){console.error(`[TransportRegistry] Unhandled error processing transport message:`,e)}};return{registerTransport(a,o){let s=t.get(a);s&&(console.warn(`[TransportRegistry] Replacing existing transport '${a}'. This unsubscribes the old transport's handler - if unintended, use a different name.`),dn(e,String(a)),s.syncAbort.abort(),s.unsubscribe(),s.transport.onNewReadySession=void 0,s.transport.onConnected=void 0,s.transport.onDisconnected=void 0,r.delete(a));let c=o.onReceive(async(e,t)=>{await i(a,o,e,t)}),l=new AbortController;return t.set(a,{transport:o,unsubscribe:c,syncAbort:l}),vn(r,a,o.ready),o.onNewReadySession=e=>vn(r,a,e),o.onConnected=()=>n?.onConnected(String(a)),o.onDisconnected=()=>n?.onDisconnected(String(a)),Re(e,a,o,l.signal),{unregister:()=>{let n=t.get(a);n?.transport===o&&(n.syncAbort.abort(),n.unsubscribe(),t.delete(a),r.delete(a),o.onNewReadySession=void 0,o.onConnected=void 0,o.onDisconnected=void 0,dn(e,String(a)))},ready:o.ready??Promise.resolve()}},getTransport(e){return t.get(e)?.transport},all(){return Array.from(t.values(),e=>e.transport)},names(){return Array.from(t.keys())},getPendingReady(){return Array.from(r.values())},setLifecycleEmitter(e){n=e}}};function bn(e,t){return{subject:e,register(n){return n.extendSubject(e,t)}}}function xn(e,t,n){let r=g(t);return e.namespaceRegistry.extendSubjectSchema(r,n),t}const Sn={connected:s(e.object({transport:e.string()})),disconnected:s(e.object({transport:e.string()}))};function Cn(e,t){e.transportRegistry.setLifecycleEmitter({onConnected(n){G(e,t.connected,{transport:n}).catch(e=>{console.error(`[bus] lifecycle emit error on connected:`,e)})},onDisconnected(n){G(e,t.disconnected,{transport:n}).catch(e=>{console.error(`[bus] lifecycle emit error on disconnected:`,e)})}})}const wn=()=>{let e={eventHandlers:new Map,requestHandlers:new Map,interceptorHandlers:new Map,anyHandlers:new Set,messageObservers:new Set,transportRegistry:void 0,namespaceRegistry:sn(),remoteRequestHandlers:new Map,remoteEventHandlers:new Map,remoteSubscriptionDeliveryClasses:new Map};return e.transportRegistry=yn(e),e},Tn=e=>{let t=new Map,n=!1,r=null,i=null,a=null,o=()=>n||r!==null,s=e=>e.every(e=>t.get(e.transport.name)===e),c=async e=>{for(let n of e)try{n.unregister()}catch(e){console.error(`[bus.connect] Failed to unregister '${n.transport.name}' during rollback:`,e)}finally{t.get(n.transport.name)===n&&t.delete(n.transport.name)}await Promise.allSettled(e.map(e=>e.transport.disconnect()))},l=e=>{i===e&&(i=null)},u=async e=>{e?.awaitReady!==!1&&i&&await i},d=()=>{let e=!1,t=!1,n,r,i,a=new Promise((e,t)=>{n=e,r=t}),o=new Promise(e=>{i=e});return a.catch(()=>void 0),{promise:a,cancelSignal:o,resolve:()=>{t||(t=!0,n())},reject:e=>{t||(t=!0,r(e))},cancel:()=>{e||(e=!0,i(),t||(t=!0,n()))},isCanceled:()=>e}},f=(e,t)=>{let n=t instanceof Error?t.message:String(t),r=Error(`Failed to connect transport "${e}": ${n}`,{cause:t});if(typeof t==`object`&&t){let e=t,n=r;`code`in e&&(n.code=e.code),`status`in e&&(n.status=e.status)}return r},p=async(e,t)=>{await c(e),t()},m=async(e,t,n,r)=>{n(r),l(t),await c(e)},h=(e,t)=>{let n=Promise.all(e.map(e=>e.ready.catch(t=>{throw console.error(`[bus.connect] Transport '${e.transport.name}' ready failed:`,t),t}))).then(()=>{});return n.catch(()=>void 0),Promise.race([n,t.cancelSignal])};return{registerTransport:n=>{if(o())throw Error(`[bus.connect] Cannot register transport '${n.name}' after connect() has started; create a new bus instance or use the shared transport registry directly`);let r=e.transportRegistry.registerTransport(n.name,n);return t.set(n.name,{transport:n,unregister:r.unregister,get ready(){return n.ready??r.ready}}),r},unregisterTransport:e=>{let n=t.get(e);n&&(n.unregister(),t.delete(e))},get ready(){return i??Promise.resolve()},disconnect:()=>{n=!1,a?.cancel(),a=null,r=null,i=null;for(let{transport:e,unregister:n}of t.values()){try{Promise.resolve(e.disconnect()).catch(()=>{})}catch{}n()}t.clear()},reconnect:async()=>{let e=Array.from(t.values()).filter(e=>typeof e.transport.reconnect==`function`),n=await Promise.allSettled(e.map(e=>Promise.resolve().then(()=>e.transport.reconnect())));for(let[t,r]of n.entries())r.status===`rejected`&&console.error(`[bus] reconnect failed for transport '${e[t].transport.name}':`,r.reason)},connect:async e=>{if(n){await u(e);return}if(r){await r,await u(e);return}let o=Array.from(t.values());if(o.length===0)return;let c=d();i=c.promise,a=c;let l=null,g=!1;r=(async()=>{try{await Promise.all(o.map(async e=>{try{await e.transport.connect()}catch(t){throw f(e.transport.name,t)}}))}catch(e){throw await m(o,c.promise,c.reject,e),e}if(!s(o)){await p(o,c.resolve);return}n=!0;try{let t=h(o,c),r=async()=>{if(!(!n||c.isCanceled())&&(await t,!(!n||c.isCanceled()))){if(!s(o)){await p(o,c.resolve);return}c.resolve()}};e?.awaitReady===!1?(l=r(),g=!0,l.catch(async e=>{console.error(`[bus.connect] Background ready failed:`,e),await m(o,c.promise,c.reject,e),n=!1}).finally(()=>{l=null,a===c&&(a=null)})):(l=r(),await l)}catch(e){throw n=!1,await m(o,c.promise,c.reject,e),e}})().finally(()=>{r=null,!g&&a===c&&(a=null),l=null}),await r}}};function En(e){e.eventHandlers.clear(),e.requestHandlers.clear(),e.interceptorHandlers.clear(),e.anyHandlers.clear(),e.messageObservers.clear(),e.remoteRequestHandlers.clear(),e.remoteEventHandlers.clear(),Qe()}function Dn(e){let{context:t=wn(),namespace:n,transports:r}=e??{},i=Tn(t),a={namespace:n,on:(e,r,i)=>(X(`on`,e,n),L(t,e,r,i)),intercept:(e,r,i)=>(X(`intercept`,e,n),mt(t,e,r,i)),once:(e,r)=>(X(`once`,e,n),jt(t,e,r)),emit:async(e,r,i)=>(X(`emit`,e,n),G(t,e,r,i)),request:async(e,r,i)=>(X(`request`,e,n),Y(t,e,r,i)),requestOptional:async(e,r,i)=>(X(`request`,e,n),Ot(t,e,r,i)),broadcast:async(e,r,i)=>(X(`request`,e,n),Pt(t,e,r,i)),scoped:(e,n)=>Ft(n??t,e.name),withFilter:e=>Q(t,n??``,e),...i,getContext:()=>t,getSchema:e=>t.namespaceRegistry.getSchema(e),registerNamespace:e=>t.namespaceRegistry.registerNamespace(e),registerNamespaces:e=>t.namespaceRegistry.registerNamespaces(e),extendSubject:(e,r)=>{if(n&&e.$meta.namespace!==n)throw Error(`Subject namespace ${e.$meta.namespace} does not match scoped bus namespace ${n}`);return xn(t,e,r)},observeMessages:e=>(t.messageObservers.add(e),()=>{t.messageObservers.delete(e)}),__onAny:e=>process.env.NODE_ENV===`production`?()=>{}:(t.anyHandlers.add(e),()=>{t.anyHandlers.delete(e)}),__resetHandlers:process.env.NODE_ENV===`test`?()=>En(t):void 0};Object.defineProperty(a,`ready`,{get(){return i.ready},enumerable:!0,configurable:!0}),Cn(t,a.registerNamespace(_(`bus:lifecycle`,Sn)).subjects);for(let e of r??[])a.registerTransport(e);return a}const On=Dn();export{pe as A,T as B,Ee as C,ge as D,_e as E,le as F,_ as G,w as H,ce as I,d as J,g as K,se as L,fe as M,ue as N,he as O,de as P,r as Q,E as R,Se as S,O as T,C as U,oe as V,re as W,s as X,l as Y,a as Z,Ae as _,bn as a,Ce as b,Q as c,Tt as d,G as f,He as g,Ge as h,Sn as i,D as j,me as k,kt as l,L as m,wn as n,xn as o,ct as p,p as q,Dn as r,Ft as s,On as t,Y as u,M as v,j as w,De as x,N as y,ie as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./bus-B6SAjgOC.mjs";export{e as MakaioBus};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./visibility-Cb62p9bv.mjs";import{i as t,l as n,r,t as i}from"./compression-CZ_6fYq8.mjs";import{t as a}from"./schemas-CMyv7l7-.mjs";import{o}from"./schemas-
|
|
1
|
+
import{a as e}from"./visibility-Cb62p9bv.mjs";import{i as t,l as n,r,t as i}from"./compression-CZ_6fYq8.mjs";import{t as a}from"./schemas-CMyv7l7-.mjs";import{o}from"./schemas-BJ8VMXhO.mjs";import{z as s}from"zod";import{createBusNamespace as c}from"@makaio/framework/core";const l=[`empty`,`empty-model`,`empty-routing`,`empty-segment`,`too-many-segments`,`invalid-segment`,`invalid-virtual-name`,`empty-virtual-name`],u=s.enum(l),d=s.object({kind:s.literal(`parse-error`),code:u,message:s.string(),input:s.string()}),f=s.object({kind:s.literal(`bare`),model:s.string()}),p=s.object({kind:s.literal(`qualified`),segment1:s.string(),segment2:s.string().optional(),model:s.string()}),m=s.object({kind:s.literal(`virtual`),name:s.string()}),h=s.discriminatedUnion(`kind`,[f,p,m]),g=s.discriminatedUnion(`kind`,[f,p]),_=s.discriminatedUnion(`kind`,[f,p,m,d]),v=/^[a-z0-9][a-z0-9._-]*$/,y=/^[a-z0-9][a-z0-9_-]*$/;function b(e,t,n){return{kind:`parse-error`,code:e,message:t,input:n}}function x(e){let t=e.trim();if(t.length===0)return b(`empty`,`Canonical model string must not be empty.`,e);if(t.startsWith(`~`)){let n=t.slice(1);return n.length===0?b(`empty-virtual-name`,`Virtual model reference '~' must be followed by a name.`,e):y.test(n)?{kind:`virtual`,name:n}:b(`invalid-virtual-name`,`Invalid virtual model name '${n}': must match [a-z0-9][a-z0-9_-]*.`,e)}let n=t.indexOf(`::`);if(n===-1)return{kind:`bare`,model:t};let r=t.slice(0,n),i=t.slice(n+2);if(r.length===0)return b(`empty-routing`,`Canonical model string must have a routing segment before '::'.`,e);if(i.length===0)return b(`empty-model`,`Canonical model string must have a model name after '::'.`,e);let a=r.toLowerCase().split(`/`);for(let t of a)if(t.length===0)return b(`empty-segment`,`Routing segment must not be empty - check for consecutive '/' characters.`,e);if(a.length>2)return b(`too-many-segments`,`Routing part '${r}' has ${a.length} segments; at most 2 are allowed.`,e);for(let t of a)if(!v.test(t))return b(`invalid-segment`,`Routing segment '${t}' is invalid: must match [a-z0-9][a-z0-9._-]*.`,e);return{kind:`qualified`,segment1:a[0],segment2:a.length>1?a[1]:void 0,model:i}}function S(e){return e.kind===`parse-error`}const C=s.object({adapterName:s.string(),providerConfigId:s.string().optional(),model:s.string().optional(),systemPrompt:s.string().optional(),contextMode:o,compressionMode:i,allowedTools:s.array(s.string()).optional(),disallowedTools:s.array(s.string()).optional(),allowedDirectories:s.array(s.string()).optional(),reasoningEffort:e.optional(),approvalPolicy:a.optional(),harnessId:s.string().optional(),profileId:s.string().optional(),mcpConfig:n.optional()}),w=s.object({sessionId:s.string().optional(),projectId:s.string().optional(),promptText:s.string().optional(),sessionContext:s.unknown().optional()}),T=c(`agentResolution`,{resolve:{request:s.object({selection:t,context:w.optional()}),response:C}}),E=T.subjects,D=r.safeExtend({kind:s.literal(`adapter`),adapterName:s.string(),providerConfigId:s.string(),model:s.string()}),O={resolve:{request:s.object({parsed:g,context:w.optional()}),response:D}},k=c(`canonicalModel`,O),A=k.subjects;export{h as _,T as a,m as b,v as c,x as d,f,_ as g,d as h,O as i,y as l,u as m,A as n,E as o,l as p,D as r,C as s,k as t,S as u,p as v,g as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e,s as t}from"./definitions-C1pgx0Nq.mjs";import{t as n}from"./schemas-CMyv7l7-.mjs";import{_ as r,a as i,g as a,h as o,m as s,n as ee,o as te}from"./profile-BRi6K6am.mjs";import{n as ne,t as c}from"./version-BbWrAPld.mjs";import{c as re,d as ie,n as ae,o as oe,s as se,t as ce,u as le}from"./account-identity-CP4DC0DL.mjs";import{z as l}from"zod";import{createBusNamespace as ue,observability as u}from"@makaio/framework/core";const d=l.object({tag:l.string(),description:l.string().optional()}),f=l.object({name:l.string(),friendlyName:l.string(),description:l.string().optional(),category:l.string().optional(),capabilities:l.array(d).default([])}),p=l.object({id:l.string(),name:l.string(),description:l.string().optional(),glob:l.string().optional()}),m=l.object({name:l.string().min(1),frameworkSubject:l.string().min(1).optional(),responseCapabilities:l.array(l.string().min(1)).readonly().default([])}).strict();function de(e){return e.responseCapabilities.length>0?`request`:`event`}const h=l.object({envVar:a.regex(/^[A-Za-z_][A-Za-z0-9_]*$/,{message:`envVar must be a valid environment variable name (letters, digits, underscores)`}),defaultPath:a.refine(e=>e===`~`||e.startsWith(`~/`)||r(e),{message:`defaultPath must be absolute, '~', or start with '~/'`}),pathKind:l.enum([`directory`,`file`]).default(`directory`)});function fe(e){if(!e.startsWith(`@`))return!e.includes(`@`);let t=e.indexOf(`/`);return t>1&&!e.slice(t+1).includes(`@`)}const g=l.object({type:l.literal(`npm`),package:l.string().min(1).refine(fe,{message:"package must not include an inline `@version` suffix; use the version field instead"}),version:c}),_=l.object({type:l.literal(`signed-binary-bucket`),version:c,config:l.object({baseUrl:l.string().url(),manifestPathTemplate:l.string().min(1),manifestSignaturePathTemplate:l.string().min(1),publicKeyUrl:l.string().url(),publicKeyFingerprint:l.string().min(1),binaryPathTemplate:l.string().min(1),platforms:l.record(l.string().min(1),l.string().min(1))})}),v=l.discriminatedUnion(`type`,[g,_]),y=l.object({executable:l.union([l.string().min(1),l.object({default:l.string().min(1),darwin:l.string().min(1).optional(),linux:l.string().min(1).optional(),win32:l.string().min(1).optional()}).strict()]),args:l.array(l.string()).default([])}).strict(),b=l.object({kind:l.string().min(1),payload:l.record(l.string(),l.unknown()).optional()}),x=l.object({supportsHooks:l.boolean().default(!1),supportsStatusline:l.boolean().default(!1),supportsSupervisorLaunch:l.boolean().default(!1),supportsManagedBinary:l.boolean().default(!1),hookEvents:l.array(m).default([])}).refine(e=>e.supportsHooks||e.hookEvents.length===0,{message:`hookEvents must be empty when supportsHooks is false`,path:[`hookEvents`]}),S=l.object({name:l.string().min(1),supportedVersions:ne}).strict(),C=l.object({id:l.string(),name:l.string(),version:c,description:l.string().optional(),binary:S.optional(),nativeTools:l.array(f).default([]),defaultApprovalPolicy:n,logSources:l.array(p).optional(),authMethods:e,defaultAuth:t.optional(),runtimeCapabilities:x.optional().transform(e=>x.parse(e??{})),managedInstall:v.optional(),versionCommand:y.optional(),postInstall:b.optional(),configIsolation:h.optional()}).strict().refine(e=>!e.runtimeCapabilities.supportsManagedBinary||e.managedInstall!==void 0,{message:`managedInstall is required when runtimeCapabilities.supportsManagedBinary is true`,path:[`managedInstall`]}).refine(e=>e.managedInstall===void 0||e.runtimeCapabilities.supportsManagedBinary,{message:`runtimeCapabilities.supportsManagedBinary must be true when managedInstall is provided`,path:[`runtimeCapabilities`,`supportsManagedBinary`]}).refine(e=>e.managedInstall===void 0||e.versionCommand!==void 0,{message:`versionCommand is required when managedInstall is provided`,path:[`versionCommand`]}).superRefine((e,t)=>{e.defaultAuth!==void 0&&e.authMethods.find(({id:t})=>t===e.defaultAuth?.methodId)?.mode!==`inferred`&&t.addIssue({code:l.ZodIssueCode.custom,message:`defaultAuth.methodId must reference an inferred method declared by this client.`,path:[`defaultAuth`,`methodId`]})}).superRefine((e,t)=>{if(e.managedInstall===void 0||e.versionCommand===void 0)return;let{executable:n}=e.versionCommand,r=typeof n==`string`?[{path:n,issuePath:[`versionCommand`,`executable`]}]:[{path:n.default,issuePath:[`versionCommand`,`executable`,`default`]},...n.darwin===void 0?[]:[{path:n.darwin,issuePath:[`versionCommand`,`executable`,`darwin`]}],...n.linux===void 0?[]:[{path:n.linux,issuePath:[`versionCommand`,`executable`,`linux`]}],...n.win32===void 0?[]:[{path:n.win32,issuePath:[`versionCommand`,`executable`,`win32`]}]];for(let{path:e,issuePath:n}of r){let r=e.startsWith(`/`),i=/^[A-Za-z]:/.test(e),a=e.startsWith(`\\`);if(r||i||a){t.addIssue({code:l.ZodIssueCode.custom,path:n,message:`${n.join(`.`)} must be a relative path within the install directory`});continue}e.split(/[/\\]/).some(e=>e===`..`)&&t.addIssue({code:l.ZodIssueCode.custom,path:n,message:`${n.join(`.`)} must be a relative path within the install directory`})}}),w=l.object({binaryPath:s.nullable(),env:l.record(l.string(),l.string()),configDir:s.nullable(),source:l.enum([`managed`,`global`]),version:a.nullable()}),T={request:l.object({clientId:a,sessionId:a.optional(),projectDir:s.optional(),preferSource:l.enum([`managed`,`global`]).optional(),harnessId:a.optional()}),response:w},E=l.enum([`npm`,`signed-binary-bucket`]),D=l.object({version:a,installPath:s,installedAt:o,isActive:l.boolean()}),O=l.object({clientId:a,installedVersions:l.array(D),activeVersion:a.nullable(),pinnedVersion:c,updateAvailable:l.boolean()}).strict(),k={request:l.object({forceRefresh:l.boolean().optional()}),response:l.object({clients:l.array(O)})},A={request:l.object({clientId:a,version:c.optional()}),response:l.object({jobId:a,requestedVersion:c.nullable(),resolvedVersion:c.nullable()})},j={request:l.object({clientId:a,version:a}),response:l.object({clientId:a,removedVersion:a,activeVersion:a.nullable()})},M={request:l.object({clientId:a}),response:l.object({jobId:a,resolvedVersion:c.nullable()})},N={request:l.object({clientId:a,version:a}),response:l.object({clientId:a,activeVersion:a})},pe=l.enum([`resolving`,`downloading`,`verifying`,`extracting`,`installing`,`post-install`,`activating`]),P=l.object({jobId:a,clientId:a,version:a.optional(),strategy:E,stage:pe,progress:l.number().min(0).max(100).nullable(),installPath:s.optional(),activeAfterCompletion:l.boolean().optional(),metadata:l.record(l.string(),l.unknown()).optional()}),F=l.object({message:l.string(),code:l.string().optional()}),I=l.object({jobId:a,clientId:a,version:a.optional(),strategy:E,status:l.enum([`success`,`error`]),installPath:s.optional(),activeVersion:a.nullable(),error:F.optional(),metadata:l.record(l.string(),l.unknown()).optional()}),L=l.object({clientId:a,previousActiveVersion:a.nullable(),activeVersion:a.nullable(),reason:l.enum([`install`,`update`,`set-active`,`uninstall`])}),R=l.enum([`supervisor`,`adapter`,`client-hook`,`statusline`,`cli-wrapper`]),z=l.object({layer:R,producer:a}),B=l.object({supervisorSessionId:a.optional(),pid:l.number().int().positive().optional(),parentPid:l.number().int().positive().optional(),adapterSessionId:a.optional(),sessionId:a.optional(),cwd:l.string().optional(),argv:l.array(l.string()).optional(),metadata:l.record(l.string(),l.unknown()).optional()}),V={request:l.object({clientId:a,source:z,observedAt:o}).merge(B).refine(e=>e.supervisorSessionId!==void 0||e.pid!==void 0||e.adapterSessionId!==void 0,{message:`At least one hard-evidence field is required (supervisorSessionId, pid, or adapterSessionId)`}),response:l.object({clientRuntimeId:a,created:l.boolean(),promoted:l.boolean()})},H=B.extend({clientRuntimeId:a,clientId:a,status:l.enum([`observed`,`started`]),source:z,observedAt:o}),U={request:l.object({adapterSessionId:a,clientId:a}),response:l.object({managed:l.boolean()})},W=l.object({clientId:u.attribute(a,`makaio.client.id`),source:u.attribute(a,`makaio.client.lifecycle.source`),observedAt:u.attribute(o,`event.observed_at`),sessionId:u.attribute(l.string(),`makaio.session.id`).optional(),adapterSessionId:u.attribute(l.string(),`makaio.adapter.session_id`).optional(),metadata:l.record(l.string(),l.unknown()).optional()}),G=[`fresh`,`fork`,`resume`,`clear`,`compact`],K=l.enum(G),q=W.extend({transcriptPath:l.string().optional(),cwd:l.string().optional(),machineId:u.attribute(l.string(),`makaio.machine.id`).optional(),startMode:u.attribute(K,`makaio.session.start_mode`).optional(),parentAdapterSessionId:u.attribute(l.string(),`makaio.session.parent_adapter_session_id`).optional()}),J=W.extend({prompt:a.optional()}),Y=W.extend({}),X=W.extend({transcriptPath:l.string().optional()}),me=W.extend({toolName:u.attribute(a,`tool.name`).optional(),toolCallId:u.attribute(a,`tool.call_id`).optional()}),he=W.extend({toolName:u.attribute(a,`tool.name`).optional(),toolCallId:u.attribute(a,`tool.call_id`).optional(),success:u.attribute(l.boolean(),`tool.success`).optional()}),ge=l.object({group:a,name:a,installed:l.boolean(),command:a}),_e=l.enum([`provider-reported`,`client-reported`,`estimated`]),Z=l.number().finite().nonnegative(),ve=l.number().finite().min(0).max(100),ye=l.object({clientId:u.attribute(a,`makaio.client.id`),clientAccountId:u.attribute(a,`makaio.client.account_id`).optional(),sessionId:u.attribute(a,`makaio.session.id`).optional(),adapterSessionId:u.attribute(a,`makaio.adapter.session_id`).optional(),source:u.attribute(a,`makaio.client.usage.source`),observedAt:u.attribute(o,`event.observed_at`),clientVersion:u.attribute(a,`makaio.client.version`).optional(),modelId:u.attribute(a,`llm.model`).optional(),modelDisplayName:u.attribute(a,`llm.model.display_name`).optional(),modelFamily:u.attribute(a,`llm.model.family`).optional(),latestRequestInputTokens:u.attribute(Z,`llm.tokens.latest_request.input`).optional(),latestRequestOutputTokens:u.attribute(Z,`llm.tokens.latest_request.output`).optional(),latestRequestCacheReadTokens:u.attribute(Z,`llm.tokens.latest_request.cache_read`).optional(),latestRequestCacheWriteTokens:u.attribute(Z,`llm.tokens.latest_request.cache_write`).optional(),currentContextInputTokens:u.attribute(Z,`llm.context.tokens.input`).optional(),currentContextOutputTokens:u.attribute(Z,`llm.context.tokens.output`).optional(),contextWindowSizeTokens:u.attribute(Z,`llm.context.window_size`).optional(),contextUsedPercentage:u.attribute(ve,`llm.context.used_percentage`).optional(),contextRemainingPercentage:u.attribute(ve,`llm.context.remaining_percentage`).optional(),contextThresholdExceeded:u.attribute(l.boolean(),`llm.context.threshold_exceeded`).optional(),totalCost:u.attribute(Z,`llm.cost.total`).optional(),costCurrency:u.attribute(a,`llm.cost.currency`).optional(),costProvenance:u.attribute(_e,`llm.cost.provenance`).optional(),totalDurationMs:u.attribute(Z,`makaio.session.duration_ms`).optional(),totalApiDurationMs:u.attribute(Z,`llm.duration.total_api_ms`).optional(),totalLinesAdded:u.attribute(Z,`code.lines_added`).optional(),totalLinesRemoved:u.attribute(Z,`code.lines_removed`).optional(),totalEdits:u.attribute(Z,`code.edits`).optional()}).strict().superRefine((e,t)=>{let n=[`totalCost`,`costCurrency`,`costProvenance`],r=n.filter(t=>e[t]!==void 0).length;if(!(r===0||r===n.length))for(let r of n)e[r]===void 0&&t.addIssue({code:l.ZodIssueCode.custom,path:[r],message:`totalCost, costCurrency, and costProvenance must be supplied together`})}),be={"runtime.observe":V,"runtime.started":H,"runtime.isAdapterManaged":U,scan:{request:l.object({targets:l.array(se).optional()}),response:l.object({results:l.array(oe)})},"session.account.observe":re,"account.observe":ae,"account.activate":{request:l.object({clientId:a,clientAccountId:a,identifiers:l.array(ce).min(1),displayLabel:l.string().optional()}),response:l.object({accepted:l.boolean()})},"account.getActive":{request:l.object({clientId:a}),response:l.object({identity:l.object({clientAccountId:a,identifiers:l.array(ce).min(1),displayLabel:l.string().optional()}).nullable()})},"usage.ingest":le,"usage.snapshot":ie,"session.usage.snapshot":ye,"session.started":q,"session.userPrompt.submitted":J,"session.turn.started":Y,"session.turn.completed":X,"session.tool.pre":me,"session.tool.post":he,"wiring.list":{request:l.object({clientId:a.optional(),projectDir:s.optional(),makaioCommand:a}),response:l.object({results:l.array(l.object({clientId:a,entries:l.array(ge)}))})},list:k,install:A,uninstall:j,update:M,setActive:N,"installJob.progress":P,"installJob.completed":I,"version.changed":L,resolveBinary:T,...i,...te,"config.prime":ee},Q=ue(`client`,be),xe=Q.subjects;function $(e){if(Array.isArray(e)){for(let t of e)$(t);return Object.freeze(e)}if(e&&typeof e==`object`){for(let t of Object.values(e))$(t);return Object.freeze(e)}return e}function Se(e){return $(C.parse(e))}function Ce(e){return Object.freeze({kind:`context.append`,value:e})}const we=`open`;function Te(e){return typeof e==`string`&&e.trim().length>0}function Ee(e){return typeof e==`number`&&Number.isFinite(e)&&e>0}function De(e,t){let n=[];for(let r of e){let e=r.kind===`event-name`?r.name:r.capability;if(!t.supportedInteractions.includes(e)){n.push(`Interaction '${e}' is not a supported interaction in contract '${t.contractId}'; failurePolicy 'closed' is not permitted`);continue}let i=t.blockability.find(t=>t.interaction===e);(!i||!i.blockable)&&n.push(`Interaction '${e}' is not blockable in contract '${t.contractId}'; failurePolicy 'closed' is not permitted`)}return n}export{b as $,P as A,E as B,U as C,H as D,z as E,M as F,m as G,T as H,L as I,f as J,x as K,F as L,k as M,N,O,j as P,g as Q,pe as R,B as S,R as T,S as U,w as V,C as W,p as X,h as Y,v as Z,me as _,De as a,J as b,xe as c,ye as d,_ as et,G as f,he as g,q as h,Ee as i,A as j,I as k,be as l,K as m,Ce as n,de as nt,Se as o,W as p,d as q,Te as r,Q as s,we as t,y as tt,_e as u,X as v,V as w,ge as x,Y as y,D as z};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import*as e from"node:fs/promises";import*as t from"node:path";import{ManagedInstallDescriptorSchema as n}from"@makaio/framework/contracts/client";import*as r from"node:os";function i(e){if(e!==void 0)return(t,n)=>{n!==null&&n>0?e(`downloading`,t/n*100):e(`downloading`,null)}}var a=class{#e;#t;constructor(e,t){this.#e=e,this.#t=t}async execute(e,t,n){if(e!==this.#e.version)throw Error(`npm managed install requested version ${e} but descriptor pins ${this.#e.version}`);n?.(`installing`,null);let r=`${this.#e.package}@${this.#e.version}`;return await this.#t.exec(`npm`,[`install`,r,`--prefix`,t,`--no-save`,`--ignore-scripts`]),n?.(`installing`,100),{installPath:t,version:this.#e.version,strategy:`npm`}}};function o(){if(process.platform!==`linux`)return!1;try{let e=process.report?.getReport?.();if(typeof e!=`object`||!e||!(`header`in e))return!0;let{header:t}=e;return typeof t!=`object`||!t?!0:!(`glibcVersionRuntime`in t)}catch{return!1}}function s(e){return e.replace(/[^0-9a-fA-F]/g,``).toUpperCase()}function c(e,t,n,r){let i=e.replaceAll(`{version}`,t);return n!==void 0&&(i=i.replaceAll(`{platform}`,n)),r!==void 0&&(i=i.replaceAll(`{binary}`,r)),i}function l(e){let t=`${e.platform}-${e.arch}`;return e.platform===`linux`&&e.isMusl?`${t}-musl`:t}function u(e,t){if(typeof e!=`object`||!e||Array.isArray(e))throw Error(`Signed manifest must be a JSON object`);let n=e,r=n.version;if(r!==t)throw Error(`Signed manifest version ${String(r)} does not match descriptor pin ${t}`);let i=n.platforms;if(typeof i!=`object`||!i||Array.isArray(i))throw Error(`Signed manifest must contain a platforms object`);return{version:r,platforms:i}}function d(e,t){let n=e.platforms[t];if(typeof n!=`object`||!n||Array.isArray(n))throw Error(`Signed manifest does not contain a platform entry for '${t}'`);let{binary:r,checksum:i}=n;if(typeof r!=`string`||!f(r))throw Error(`Manifest entry for '${t}' has unsafe binary filename`);if(typeof i!=`string`||i.length===0)throw Error(`Manifest entry for '${t}' is missing a valid 'checksum' field`);return{binary:r,checksum:i}}function f(e){return e.length>0&&e!==`.`&&e!==`..`&&!e.includes(`/`)&&!e.includes(`\\`)}var p=class{#e;#t;#n;constructor(e,t,n){this.#e=e,this.#t=t,this.#n={platform:n?.platform??process.platform,arch:n?.arch??process.arch,isMusl:n?.isMusl??o()}}async execute(n,a,o){if(n!==this.#e.version)throw Error(`signed-binary-bucket managed install requested version ${n} but descriptor pins ${this.#e.version}`);let{config:s}=this.#e,u=l(this.#n),d=s.platforms[u];if(d===void 0)throw Error(`signed-binary-bucket descriptor has no platform entry for '${u}'. Supported platforms: ${Object.keys(s.platforms).join(`, `)}`);await e.mkdir(a,{recursive:!0});let f=t.join(a,`signing-key.asc`),p=t.join(a,`manifest.json`),m=t.join(a,`manifest.json.sig`),h=process.platform===`win32`?r.tmpdir():`/tmp`,g=await e.mkdtemp(t.join(h,`makaio-gpg-`));await e.chmod(g,448);try{o?.(`resolving`,null),await this.#r(s,n,f,p,m),o?.(`verifying`,null);let r=await this.#i(s,g,f,p,m,u);o?.(`downloading`,null);let l=c(s.binaryPathTemplate,n,d,r.binary),h=t.resolve(a,r.binary);await this.#t.downloadFile(`${s.baseUrl}/${l}`,h,i(o)),o?.(`verifying`,null);let _=await this.#t.computeChecksum(h);if(_!==r.checksum)throw Error(`Binary checksum mismatch: expected ${r.checksum} but computed ${_}`);return o?.(`installing`,null),this.#n.platform!==`win32`&&await e.chmod(h,493),o?.(`installing`,100),{installPath:a,version:this.#e.version,strategy:`signed-binary-bucket`}}finally{await Promise.all([this.#t.removeDirectory(g),this.#t.deleteFile(f),this.#t.deleteFile(m)])}}async#r(t,n,r,i,a){let o=`${t.baseUrl}/${c(t.manifestPathTemplate,n)}`,s=`${t.baseUrl}/${c(t.manifestSignaturePathTemplate,n)}`,l=await this.#t.fetchText(t.publicKeyUrl);await e.writeFile(r,l,`utf-8`),await this.#t.downloadFile(o,i),await this.#t.downloadFile(s,a)}async#i(t,n,r,i,a,o){await e.mkdir(n,{recursive:!0,mode:448}),await this.#t.exec(`gpg`,[`--homedir`,n,`--import`,r]);let c=await this.#t.exec(`gpg`,[`--homedir`,n,`--with-colons`,`--fingerprint`,`--list-keys`]),l=this.#a(c);if(s(l)!==s(t.publicKeyFingerprint))throw Error(`GPG key fingerprint mismatch: expected ${t.publicKeyFingerprint} but got ${l}`);await this.#t.exec(`gpg`,[`--homedir`,n,`--verify`,a,i]).catch(e=>{throw Error(`Manifest GPG signature verification failed: ${e.message}`)});let f=await e.readFile(i,`utf-8`);return d(u(JSON.parse(f),this.#e.version),o)}#a(e){for(let t of e.split(`
|
|
2
|
+
`)){let e=t.split(`:`);if(e[0]===`fpr`&&e[9]!==void 0&&e[9].length>0)return e[9]}throw Error(`Could not extract GPG key fingerprint from output`)}};function m(e,t){let r=n.safeParse(e);if(r.success)switch(r.data.type){case`npm`:return new a(r.data,t);case`signed-binary-bucket`:return new p(r.data,t)}}function h(e,n){let r=t.relative(e,n);return r!==``&&!r.startsWith(`..${t.sep}`)&&r!==`..`&&!t.isAbsolute(r)}async function g(n,r,i,a){let[o,...s]=i;if(v(o))throw Error(`versionCommand[0] must be a relative path; received absolute path "${o}"`);if(o.split(/[/\\]/).includes(`..`))throw Error(`versionCommand[0] must not contain path traversal segments; received "${o}"`);let c=t.normalize(o),l=t.join(r,c),u=await e.realpath(r),d=await e.realpath(l);if(!h(u,d))throw Error(`versionCommand[0] must not escape the install directory; "${o}" resolves outside installPath`);let f;try{f=await n(d,s,{cwd:u})}catch(e){let t=e instanceof Error?e.message:String(e);throw Error(`Version verification failed: command "${l}" exited with an error: ${t}`,{cause:e})}let p=_(a);if(!y(f,p))throw Error(`Version mismatch: expected "${a}" but command output was "${f.trim()}"`)}function _(e){return e[0]===`v`||e[0]===`V`?e.slice(1):e}function v(e){return e.startsWith(`/`)||/^[A-Za-z]:[/\\]/.test(e)||e.startsWith(`\\`)}function y(e,t){return(e.match(/[A-Za-z0-9][A-Za-z0-9._+-]*/g)??[]).some(e=>_(e)===t)}export{h as n,m as r,g as t};
|