@makaio/framework 1.0.0-dev-1781729394463 → 1.0.0-dev-1781729807808
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/{account-identity-D5TUafYg.mjs → account-identity-D-9gunfD.mjs} +1 -1
- package/dist/adapter-Cxcqmp04.mjs +1 -0
- 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 +1 -1
- package/dist/adapters/node.d.mts +1 -1
- package/dist/adapters/node.mjs +1 -1
- package/dist/adapters/stream-session/index.d.mts +2 -0
- package/dist/await-trigger-Cjfj0yp_.mjs +1 -0
- package/dist/bus/index.d.mts +21 -21
- package/dist/bus/index.mjs +1 -1
- package/dist/canonical-model-C-jhofjd.mjs +1 -0
- package/dist/{client-BO-0jTSV.mjs → client-D24ebgGH.mjs} +1 -1
- package/dist/compression-BPOKUc6y.mjs +1 -0
- 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 +1 -1
- 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 +2 -2
- package/dist/contracts/client/index.mjs +1 -1
- package/dist/contracts/common/index.d.mts +1 -1
- package/dist/contracts/config/index.d.mts +13 -13
- package/dist/contracts/config/index.mjs +1 -1
- package/dist/contracts/extension/index.d.mts +3 -3
- package/dist/contracts/extension/index.mjs +1 -1
- package/dist/contracts/facet/index.d.mts +1 -1
- package/dist/contracts/facet/index.mjs +1 -1
- package/dist/contracts/harness/index.d.mts +1 -1
- package/dist/contracts/harness/index.mjs +1 -1
- package/dist/contracts/host/index.d.mts +1 -1
- package/dist/contracts/host/index.mjs +1 -1
- package/dist/contracts/index.d.mts +9913 -206
- package/dist/contracts/index.mjs +1 -1
- package/dist/contracts/materialization/index.d.mts +3 -3
- package/dist/contracts/materialization/index.mjs +1 -1
- package/dist/contracts/model-registry/index.d.mts +1 -1
- package/dist/contracts/model-registry/index.mjs +1 -1
- package/dist/contracts/native-session-supervisor/index.d.mts +1 -1
- package/dist/contracts/native-session-supervisor/index.mjs +1 -1
- package/dist/contracts/platform/index.d.mts +1 -1
- package/dist/contracts/platform/index.mjs +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 +1 -2
- package/dist/contracts/skill/index.d.mts +1 -1
- package/dist/contracts/skill/index.mjs +1 -1
- package/dist/contracts/telemetry/index.d.mts +1 -1
- package/dist/contracts/telemetry/index.mjs +1 -1
- package/dist/contracts/timeout/index.d.mts +1 -1
- package/dist/contracts/toast/index.mjs +1 -1
- package/dist/contracts/variant/index.d.mts +1 -1
- package/dist/contracts/variant/index.mjs +1 -1
- package/dist/{definition-b9jyJqPD.d.mts → definition-CZcVOhXZ.d.mts} +1 -1
- package/dist/{detached-extension-handle-Cx6-0eqg.mjs → detached-extension-handle-BYxNmLfv.mjs} +1 -1
- package/dist/{extension-BJHRahFl.mjs → extension-CTkoi8MV.mjs} +1 -1
- package/dist/{extension-CfL70C5n.mjs → extension-CkU_hqra.mjs} +1 -1
- package/dist/{filesystem-service-Bmyqo6po.mjs → filesystem-service-T8JOIWeP.mjs} +1 -1
- package/dist/git/index.mjs +1 -1
- package/dist/{globby-D4SANVoq.mjs → globby-Bos1vjKj.mjs} +1 -1
- package/dist/{handlers-BAycjV02.mjs → handlers-dnpT_hsm.mjs} +1 -1
- package/dist/{harness-DkUpbsuY.mjs → harness-HEpELa_v.mjs} +1 -1
- package/dist/{index-D9-vOJvZ.d.mts → index-6QvT0ljq.d.mts} +1 -1
- package/dist/{index-BEzRpWsS.d.mts → index-BFW1X6SW.d.mts} +356 -356
- package/dist/{index-DLNRgZPo2.d.mts → index-BQ8H7cvY.d.mts} +1 -1
- package/dist/{index-NkNbYFud.d.mts → index-BZuF4I8O.d.mts} +55 -1
- package/dist/{index-aciWhUWw.d.mts → index-BuaP2Q0b.d.mts} +389 -389
- package/dist/{index-DiifAKRu.d.mts → index-ByRAbcZd.d.mts} +2 -7
- package/dist/{index-CmHdpW0E.d.mts → index-C2XLjebs.d.mts} +4 -4
- package/dist/{index-CZJc-V9L.d.mts → index-CUYDEQvN.d.mts} +4 -4
- package/dist/{index-kwq54nx4.d.mts → index-CkpGuNLe.d.mts} +16 -16
- package/dist/{index-BAQ6QBcU.d.mts → index-Cy75lJ1O.d.mts} +32 -32
- package/dist/{index-mU2lnU7O.d.mts → index-DNmENr9M.d.mts} +6 -6
- package/dist/{index-DTBQOCar.d.mts → index-DUI1W-zN.d.mts} +8 -8
- package/dist/{index-CYHWOXUm.d.mts → index-Dbd0Tgba.d.mts} +2 -2
- package/dist/{index-Dw7ErgWU.d.mts → index-Dn73XrXA.d.mts} +457 -10
- package/dist/{index-D1KPCXBN.d.mts → index-Dpu4e9NK.d.mts} +3 -3
- package/dist/{index-DKNmj2sa.d.mts → index-HiAth5G0.d.mts} +28 -28
- package/dist/{index-DWKCb-eJ.d.mts → index-WWYQEH0q.d.mts} +24 -24
- package/dist/{index-CW_LbXdg.d.mts → index-XcnFGiKL.d.mts} +8 -8
- package/dist/{index-BWIkf5oJ.d.mts → index-cN4DkU5Y2.d.mts} +3 -3
- package/dist/{index-DMz-2ACU.d.mts → index-xeg-bqxO.d.mts} +105 -105
- package/dist/kernel/cli/index.d.mts +2 -2
- package/dist/kernel/cli/index.mjs +1 -1
- package/dist/kernel/cli/register.d.mts +1 -1
- package/dist/kernel/cli/register.mjs +1 -1
- package/dist/kernel/cli/schemas.mjs +1 -1
- package/dist/kernel/extension/index.d.mts +1 -1
- package/dist/kernel/extension/index.mjs +1 -1
- package/dist/kernel/index.d.mts +5 -5
- package/dist/kernel/index.mjs +1 -1
- package/dist/kernel/namespace/index.d.mts +1 -1
- package/dist/kernel/namespace/index.mjs +1 -1
- package/dist/kernel/observability/index.d.mts +1 -1
- package/dist/kernel/observability/index.mjs +1 -1
- package/dist/kernel/providers/index.d.mts +1 -1
- package/dist/kernel/providers/index.mjs +1 -1
- package/dist/kernel/window/index.d.mts +1 -1
- package/dist/kernel/window/index.mjs +1 -1
- package/dist/{lib-Ba55od_d.mjs → lib-B-R6VZW0.mjs} +1 -1
- package/dist/{lib-CM_BUxN8.mjs → lib-BwYODPdd.mjs} +1 -1
- package/dist/{load-extensions-DNRIy4zC.d.mts → load-extensions-CQqw0Smr.d.mts} +1 -1
- package/dist/{load-extensions-Cze1RHcG.mjs → load-extensions-D-DyzN4j.mjs} +1 -1
- package/dist/mcp-http-server/index.mjs +2 -2
- package/dist/{namespace-65uwTpbg.d.mts → namespace-B091meTj.d.mts} +6 -6
- package/dist/{namespace-COEUMuHL.d.mts → namespace-BQgZChZl.d.mts} +154 -154
- package/dist/{namespace-3yGm4WF9.d.mts → namespace-Ba1gUpUu.d.mts} +2 -2
- package/dist/{namespace-C-piH3w4.mjs → namespace-BxrHvS5c.mjs} +1 -1
- package/dist/namespace-CH_NWUKW.mjs +1 -0
- package/dist/{namespace-DYJZAGzR.d.mts → namespace-CO3DK1v_.d.mts} +42 -42
- package/dist/{namespace-B95uYmZB.d.mts → namespace-CZgcOQTh.d.mts} +52 -52
- package/dist/{namespace-CTsfVI3H.d.mts → namespace-Daq_-170.d.mts} +6 -6
- package/dist/{native-session-supervisor-7ElwM6Is.mjs → native-session-supervisor-DbrqcFq9.mjs} +1 -1
- 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/{orchestrator-shared-Cxk3x8Vs.mjs → orchestrator-shared-yFP8e7d5.mjs} +1 -1
- package/dist/package-DP8lk0-a.mjs +1 -0
- package/dist/{package-MmQvNJ3u.d.mts → package-fwIv7zzj.d.mts} +1 -1
- package/dist/package.json +1 -1
- package/dist/primitive-runtime-Dw6OC8w5.mjs +1 -0
- package/dist/{profile-BMBXUqqh.mjs → profile-r4G32bCH.mjs} +1 -1
- package/dist/{provider-context-DC_eq7es.mjs → provider-context-Ds6GNYnE.mjs} +1 -1
- 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 +2 -2
- 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/{schema-B2bO5Yui.d.mts → schema-DcZifH6p.d.mts} +1 -1
- package/dist/{schema-D6WAI8OL.mjs → schema-atatXwNg.mjs} +1 -1
- package/dist/{schemas-DMMWmWjq.d.mts → schemas-BbFAwUpf.d.mts} +1 -1
- package/dist/{schemas-D4zaFE2p.d.mts → schemas-BqscWIoC.d.mts} +6 -6
- package/dist/{schemas-ByssHRGU2.d.mts → schemas-CTIaU6Rt2.d.mts} +2 -2
- package/dist/{schemas-CscdPqCt.d.mts → schemas-IDGAJ_zv.d.mts} +3 -3
- package/dist/schemas-dNCdjOLB.mjs +1 -0
- package/dist/{schemas-CDBn9MTz.d.mts → schemas-fEoe6H0K.d.mts} +154 -154
- 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 +2 -2
- package/dist/services/adapter-subsystem/index.mjs +1 -1
- package/dist/services/adapter-subsystem/namespace.d.mts +1 -1
- package/dist/services/adapter-subsystem/namespace.mjs +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 +1 -1
- 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/filesystem/namespace.d.mts +6 -6
- package/dist/services/filesystem/schemas.d.mts +3 -3
- package/dist/services/git/namespace.mjs +1 -1
- package/dist/services/git/schemas.mjs +1 -1
- package/dist/services/harness/index.d.mts +6 -6
- package/dist/services/harness/index.mjs +1 -1
- package/dist/services/index.d.mts +150 -150
- 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/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-context/index.mjs +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/messages/namespace.mjs +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/session-events/namespace.mjs +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 +1 -1
- 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/turns/namespace.mjs +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/index.mjs +1 -1
- package/dist/services/settings/namespace.d.mts +2 -2
- package/dist/services/settings/namespace.mjs +1 -1
- package/dist/services/settings/storage/clients-namespace.d.mts +1 -1
- package/dist/services/settings/storage/clients-namespace.mjs +1 -1
- package/dist/services/settings/storage/extension-configs/namespace.d.mts +6 -6
- package/dist/services/settings/storage/index.d.mts +3 -3
- package/dist/services/settings/storage/index.mjs +1 -1
- package/dist/services/settings/storage/providers-namespace.d.mts +1 -1
- package/dist/services/settings/storage/providers-namespace.mjs +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/{session-Bey-bzcX.mjs → session-DApMcL_0.mjs} +1 -1
- package/dist/{session-0nWT4st6.mjs → session-R-wciAdJ.mjs} +1 -1
- package/dist/{skill-N-ttlp1i.mjs → skill-B_VlGon5.mjs} +1 -1
- package/dist/{src-Ck2sbaDa.mjs → src-6n-8M8EU.mjs} +1 -1
- 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-DEQiipxj.mjs → tool-approval-service-DhAqQqev.mjs} +1 -1
- package/dist/tools/index.d.mts +8 -0
- package/dist/tools-DeZIVtxe.mjs +1 -0
- package/dist/{types-BslClRkH.d.mts → types-BB8iIAjZ.d.mts} +1 -1
- package/dist/{types-Cagp7JXb.d.mts → types-CCsvoUTA.d.mts} +254 -255
- package/dist/ui-kernel/index.d.mts +1 -1
- package/dist/ui-kernel/pages/schemas.d.mts +1 -1
- package/dist/{version-DoV_pSzT.mjs → version-SYP_DX4M.mjs} +1 -1
- package/dist/workflow-engine/index.d.mts +29 -35
- 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.d.mts +1 -3
- package/dist/workflow-engine/workflow-orchestrator.mjs +1 -1
- package/dist/{workflow-worker-CojIlB6k.mjs → workflow-worker-DMFhz1q_.mjs} +1 -1
- package/package.json +1 -1
- package/dist/adapter-B5I7Wp4y.mjs +0 -1
- package/dist/await-trigger-DcMVmNW5.mjs +0 -1
- package/dist/canonical-model-BWGkgf3v.mjs +0 -1
- package/dist/compression-DMoeVgKx.mjs +0 -1
- package/dist/contracts/workflow/index.d.mts +0 -3
- package/dist/contracts/workflow/index.mjs +0 -1
- package/dist/index-Cjo24O5I.d.mts +0 -10036
- package/dist/json-value-DtIkQN7g.d.mts +0 -57
- package/dist/loop-gate-handlers-CwU5zAGs.mjs +0 -1
- package/dist/namespace-DibbhCPP.mjs +0 -1
- package/dist/package-rdrXr17q.mjs +0 -1
- package/dist/provider-context-DjSUpHSM.mjs +0 -1
- package/dist/schemas-BWasvfw2.mjs +0 -1
- package/dist/schemas-CE1gbhxu.mjs +0 -1
- package/dist/tools-uAgIrqan.mjs +0 -1
- package/dist/transition-Coowd2dA.d.mts +0 -454
- package/dist/workflow-BCKOJ4UC.mjs +0 -1
- /package/dist/{ajv-B5dPIck0.mjs → ajv-Cx19PP7Q.mjs} +0 -0
- /package/dist/{base-orchestrator-Cw0vpNgB.d.mts → base-orchestrator-BRq4MXa7.d.mts} +0 -0
- /package/dist/{capability-service-XlymTzz1.mjs → capability-service-CHl8rrwb.mjs} +0 -0
- /package/dist/{cleanEnvForAdapter-BooAgM2R.mjs → cleanEnvForAdapter-D32WnVuy.mjs} +0 -0
- /package/dist/{client-CebV_fZc.d.mts → client-D2ZftNb6.d.mts} +0 -0
- /package/dist/{clients-namespace-Bt_VTkEU.d.mts → clients-namespace-CeAB0t06.d.mts} +0 -0
- /package/dist/{config-namespace-CY9leBnE.mjs → config-namespace-DW5KHKPW.mjs} +0 -0
- /package/dist/{config-namespace-DqdFE6zk.d.mts → config-namespace-DloU-hNB.d.mts} +0 -0
- /package/dist/{create-static-mount-DkK28kKW.mjs → create-static-mount-Bi0VpYS8.mjs} +0 -0
- /package/dist/{cross-spawn-CDXy3BjE.mjs → cross-spawn-C58yEvsS.mjs} +0 -0
- /package/dist/{cursor-storage-luQAg7E_.mjs → cursor-storage-CpuT5POU.mjs} +0 -0
- /package/dist/{definition-CuJvtYeG.d.mts → definition-BdxbXbrq.d.mts} +0 -0
- /package/dist/{definition-Cllhr9mi.d.mts → definition-GOb_oOmb.d.mts} +0 -0
- /package/dist/{descriptor-to-package-DdpjpT7n.mjs → descriptor-to-package-D-FNxohm.mjs} +0 -0
- /package/dist/{drizzle-DVTAl7Us.mjs → drizzle-D7dkDEB5.mjs} +0 -0
- /package/dist/{esm-CQG9Pc7n.mjs → esm-CP2zvvlx.mjs} +0 -0
- /package/dist/{event-DguYjV6D.mjs → event-DaXakaHo.mjs} +0 -0
- /package/dist/{execution-target-BR8bLkCR.mjs → execution-target-Da6Vjvba.mjs} +0 -0
- /package/dist/{extension-discovery-CIZn5bkq.d.mts → extension-discovery-Bv5FDtrM.d.mts} +0 -0
- /package/dist/{extension-namespace-v3K0qVry.mjs → extension-namespace-O3sKdnY9.mjs} +0 -0
- /package/dist/{facet-BM4y4aQP.mjs → facet-Q_vgXb23.mjs} +0 -0
- /package/dist/{filesystem-service-Cwp0sWNc.d.mts → filesystem-service-89fN-2Dd.d.mts} +0 -0
- /package/dist/{handler-2bPhRn0u.mjs → handler-BIA3ld4C.mjs} +0 -0
- /package/dist/{host-vY07gek-.mjs → host-DFqmG2qO.mjs} +0 -0
- /package/dist/{identity-BarL3JYI.mjs → identity-CA5MzB19.mjs} +0 -0
- /package/dist/{index-D7Hkmrr3.d.mts → index-BE-yMFTz.d.mts} +0 -0
- /package/dist/{index-Dfi8Rorw.d.mts → index-BUilJdHr.d.mts} +0 -0
- /package/dist/{index-B92mToDo2.d.mts → index-BVhnqzDC2.d.mts} +0 -0
- /package/dist/{index-BvLXySoB2.d.mts → index-BeNVLvtk2.d.mts} +0 -0
- /package/dist/{index-DtwGhFFQ.d.mts → index-BplsE3qw.d.mts} +0 -0
- /package/dist/{index-gAFwNiJT.d.mts → index-BtL_9HBk.d.mts} +0 -0
- /package/dist/{index-CuHqL95P.d.mts → index-CBTp2XuF.d.mts} +0 -0
- /package/dist/{index-DUD7wikz2.d.mts → index-CYZqADXY2.d.mts} +0 -0
- /package/dist/{index-D3ahzHwb.d.mts → index-CfpfkKih.d.mts} +0 -0
- /package/dist/{index-Cr9lh21j.d.mts → index-CkPIPbx9.d.mts} +0 -0
- /package/dist/{index-Y8rMeYYX.d.mts → index-D0RWuwl5.d.mts} +0 -0
- /package/dist/{index-COI1tjAf.d.mts → index-DHHKwLww.d.mts} +0 -0
- /package/dist/{index-C23g_M_J2.d.mts → index-DJSffYTW2.d.mts} +0 -0
- /package/dist/{index-CfIW5biI.d.mts → index-DLPjliGd.d.mts} +0 -0
- /package/dist/{index-OGIC4puQ.d.mts → index-DVgKfgh1.d.mts} +0 -0
- /package/dist/{index-DOOrKin9.d.mts → index-DWqSqcpW.d.mts} +0 -0
- /package/dist/{index-wq7XeqyG.d.mts → index-DdCyeZ59.d.mts} +0 -0
- /package/dist/{index-BjoOSg95.d.mts → index-cFuQpzIm.d.mts} +0 -0
- /package/dist/{index-C4nStEdA.d.mts → index-kOSSuOcK.d.mts} +0 -0
- /package/dist/{index-CpKikwK4.d.mts → index-orAkFukT.d.mts} +0 -0
- /package/dist/{jsonl-transport-CGPgD8iU.mjs → jsonl-transport-Bb8ltqOe.mjs} +0 -0
- /package/dist/{lib-ZKtnbCqH.mjs → lib-BmcGxHXH.mjs} +0 -0
- /package/dist/{materialization-DBXjSiBn.mjs → materialization-DsPIGQP1.mjs} +0 -0
- /package/dist/{model-registry-rYICIwyR.mjs → model-registry-DLeMw3l8.mjs} +0 -0
- /package/dist/{model-registry-C2VXobZj.mjs → model-registry-DQDclqdw.mjs} +0 -0
- /package/dist/{namespace-BsYKEMd8.d.mts → namespace-2G7A4Sza.d.mts} +0 -0
- /package/dist/{namespace-6sIu5nBI2.d.mts → namespace-6u1Uf-iw2.d.mts} +0 -0
- /package/dist/{namespace-KMxsPJwm.d.mts → namespace-B1Bldc48.d.mts} +0 -0
- /package/dist/{namespace-DYSFDC2G.mjs → namespace-CN-Llu7H.mjs} +0 -0
- /package/dist/{namespace-LUNf8zo5.d.mts → namespace-DKnJL0Ja.d.mts} +0 -0
- /package/dist/{namespace-CQ8uza7o.d.mts → namespace-DMhz3yvr.d.mts} +0 -0
- /package/dist/{namespace-Dk4OslmY.d.mts → namespace-DcUwOJ4f.d.mts} +0 -0
- /package/dist/{namespace-BO3tODGC.mjs → namespace-DrpHLJAy.mjs} +0 -0
- /package/dist/{namespace-DBHwyhME.mjs → namespace-FJsnoEQy.mjs} +0 -0
- /package/dist/{namespace-wke7juzy.mjs → namespace-UUw-S7ia.mjs} +0 -0
- /package/dist/{namespace-D2s-4pyg.d.mts → namespace-nQS4XwnT.d.mts} +0 -0
- /package/dist/{namespace-B3ol3pc-.d.mts → namespace-q5dD3acO.d.mts} +0 -0
- /package/dist/{namespace-BdO4e1Fm.mjs → namespace-uGUGfpGQ.mjs} +0 -0
- /package/dist/{namespace-CVMZVqB5.mjs → namespace-zWB-ULrX.mjs} +0 -0
- /package/dist/{orchestrator-shared-ChOdIgh6.d.mts → orchestrator-shared-CbS4ueeq.d.mts} +0 -0
- /package/dist/{out-BoEZjBNz.mjs → out-BUHr98Xe.mjs} +0 -0
- /package/dist/{package-CF_Zm2v4.mjs → package-YQeRE8bV.mjs} +0 -0
- /package/dist/{platform-DnbSvm2u.mjs → platform-CsO-MRJP.mjs} +0 -0
- /package/dist/{providers-Bd7BOZs0.mjs → providers-FEZT2bQG.mjs} +0 -0
- /package/dist/{providers-namespace-5GoTlHXz.d.mts → providers-namespace-B4INLPUc.d.mts} +0 -0
- /package/dist/{quick-lru-6e7I1Bgf.mjs → quick-lru-C7AXdpbU.mjs} +0 -0
- /package/dist/{registry-U_3aYSin.mjs → registry-CwjZvH2s.mjs} +0 -0
- /package/dist/{schema-DHlTAy0N.mjs → schema-Ba64XQjo.mjs} +0 -0
- /package/dist/{schema-introspection-B7xODt4I.mjs → schema-introspection-D5FaI5B_.mjs} +0 -0
- /package/dist/{schemas-CPI00yvh.mjs → schemas-5kegIs9D.mjs} +0 -0
- /package/dist/{schemas-DKncXGnb.d.mts → schemas-9Ifo5zSf.d.mts} +0 -0
- /package/dist/{schemas-ArqQTC0Q.mjs → schemas-9QC3nvYP.mjs} +0 -0
- /package/dist/{schemas-KlH1hB7u.d.mts → schemas-BSAKbVyd.d.mts} +0 -0
- /package/dist/{schemas-DmGRSeIq.d.mts → schemas-BxI5Yq8d.d.mts} +0 -0
- /package/dist/{schemas-BemsLc_V.d.mts → schemas-CRS7tkFP.d.mts} +0 -0
- /package/dist/{schemas-XeIBqwvE.mjs → schemas-DAYPhB5K.mjs} +0 -0
- /package/dist/{schemas-DWfo0wp4.d.mts → schemas-DZfBym73.d.mts} +0 -0
- /package/dist/{schemas-B6tEKf9T.d.mts → schemas-DznsZ0bq.d.mts} +0 -0
- /package/dist/{semver-CIhHqMkw.mjs → semver-ClOD8k8c.mjs} +0 -0
- /package/dist/{server-lifecycle-_AA6EfzL.d.mts → server-lifecycle-5iHxcgBO.d.mts} +0 -0
- /package/dist/{server-lifecycle-C5Z5PSMD.mjs → server-lifecycle-CFQaPTf7.mjs} +0 -0
- /package/dist/{session-lineage-Cht4jbvV.d.mts → session-lineage-D_8W1MI0.d.mts} +0 -0
- /package/dist/{shared-schemas-BEVG96xW.mjs → shared-schemas-jG3EtHZT.mjs} +0 -0
- /package/dist/{src-_VODAJnf.mjs → src-CRDOZl7K.mjs} +0 -0
- /package/dist/{storage-namespace-D5q9CrBp.mjs → storage-namespace-C1JVmZF1.mjs} +0 -0
- /package/dist/{storage-namespace-definition-BffdI5Bz.d.mts → storage-namespace-definition-BPYSLTfN.d.mts} +0 -0
- /package/dist/{storage-namespace-definition-CzXPW45M.mjs → storage-namespace-definition-Df8S3E3r.mjs} +0 -0
- /package/dist/{storage-namespace-Di1A3DMm.d.mts → storage-namespace-gey7EUhM.d.mts} +0 -0
- /package/dist/{supports-color-DcXkvGDF.mjs → supports-color-AnssSSH9.mjs} +0 -0
- /package/dist/{telemetry-Cvi4rxiE.mjs → telemetry-DdbvlZ8s.mjs} +0 -0
- /package/dist/{tray-menu-service-B2AxiQqL.mjs → tray-menu-service-am356993.mjs} +0 -0
- /package/dist/{types-DCvp_swt.d.mts → types-Bj7cOrBQ.d.mts} +0 -0
- /package/dist/{types-CPmOg4X7.d.mts → types-D-GeeSdd.d.mts} +0 -0
- /package/dist/{types-BMS6yfLS.d.mts → types-DhlQpVEb.d.mts} +0 -0
- /package/dist/{types-Bo78h9e3.d.mts → types-xLd-e0wf.d.mts} +0 -0
- /package/dist/{variant-5huHjUTm.mjs → variant-BdNN5edM.mjs} +0 -0
- /package/dist/{window-registry-ofIUQnfo.d.mts → window-registry-CA6AC8n7.d.mts} +0 -0
- /package/dist/{window-registry-PkrFIwX2.mjs → window-registry-LRjWPwr4.mjs} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as PageSurfaceConfig, s as SurfaceId } from "../schemas-
|
|
1
|
+
import { r as PageSurfaceConfig, s as SurfaceId } from "../schemas-CRS7tkFP.mjs";
|
|
2
2
|
import * as _$zod from "zod";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import * as _$_makaio_core0 from "@makaio/framework/core";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as SurfaceCapabilitySchema, c as SurfaceIdSchema, i as SurfaceCapability, l as isPageVisibleOnSurface, n as PageSchemas, o as SurfaceDeclaration, r as PageSurfaceConfig, s as SurfaceId, t as PageMetadata } from "../../schemas-
|
|
1
|
+
import { a as SurfaceCapabilitySchema, c as SurfaceIdSchema, i as SurfaceCapability, l as isPageVisibleOnSurface, n as PageSchemas, o as SurfaceDeclaration, r as PageSurfaceConfig, s as SurfaceId, t as PageMetadata } from "../../schemas-CRS7tkFP.mjs";
|
|
2
2
|
export { PageMetadata, PageSchemas, PageSurfaceConfig, SurfaceCapability, SurfaceCapabilitySchema, SurfaceDeclaration, SurfaceId, SurfaceIdSchema, isPageVisibleOnSurface };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-DTipWd-i.mjs";import{t}from"./semver-
|
|
1
|
+
import{o as e}from"./chunk-DTipWd-i.mjs";import{t}from"./semver-ClOD8k8c.mjs";import{z as n}from"zod";var r=e(t(),1);const i=n.string().min(1).refine(e=>e.trim().length>0&&(0,r.validRange)(e)!==null,{message:`Must be a valid semver range (e.g. ">=1.0.0 <2.0.0", "^1.5.0")`});function a(e,t){return(0,r.satisfies)(e,t,{includePrerelease:!0})}function o(e){let t=(0,r.validRange)(e);return t===`*`||t===`>=0.0.0`||t===`>=0.0.0-0`}const s=n.string().min(1).refine(e=>(0,r.valid)(e)!==null&&!e.startsWith(`v`),{message:`Must be a valid semver version (e.g. "1.0.0")`});export{a as i,i as n,o as r,s as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as WorkflowExecutor, i as WorkflowEngineService, n as createWorkflowEnginePackage, o as registerDrizzleWorkflowStorage, r as workflowEnginePackage, t as WorkflowEngineToken } from "../package-
|
|
1
|
+
import { a as WorkflowExecutor, i as WorkflowEngineService, n as createWorkflowEnginePackage, o as registerDrizzleWorkflowStorage, r as workflowEnginePackage, t as WorkflowEngineToken } from "../package-fwIv7zzj.mjs";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import * as _$_makaio_core0 from "@makaio/framework/core";
|
|
4
4
|
import { IMakaioBus } from "@makaio/framework/bus";
|
|
@@ -954,7 +954,6 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
954
954
|
gate: "gate";
|
|
955
955
|
iterate: "iterate";
|
|
956
956
|
"iterate-chain": "iterate-chain";
|
|
957
|
-
loop: "loop";
|
|
958
957
|
}>;
|
|
959
958
|
path: z.ZodArray<z.ZodString>;
|
|
960
959
|
parentFrameId: z.ZodOptional<z.ZodString>;
|
|
@@ -964,8 +963,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
964
963
|
cancelled: "cancelled";
|
|
965
964
|
running: "running";
|
|
966
965
|
failed: "failed";
|
|
967
|
-
waiting: "waiting";
|
|
968
966
|
skipped: "skipped";
|
|
967
|
+
waiting: "waiting";
|
|
969
968
|
}>;
|
|
970
969
|
attempt: z.ZodDefault<z.ZodNumber>;
|
|
971
970
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1000,7 +999,6 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1000
999
|
gate: "gate";
|
|
1001
1000
|
iterate: "iterate";
|
|
1002
1001
|
"iterate-chain": "iterate-chain";
|
|
1003
|
-
loop: "loop";
|
|
1004
1002
|
}>;
|
|
1005
1003
|
path: z.ZodArray<z.ZodString>;
|
|
1006
1004
|
parentFrameId: z.ZodOptional<z.ZodString>;
|
|
@@ -1010,8 +1008,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1010
1008
|
cancelled: "cancelled";
|
|
1011
1009
|
running: "running";
|
|
1012
1010
|
failed: "failed";
|
|
1013
|
-
waiting: "waiting";
|
|
1014
1011
|
skipped: "skipped";
|
|
1012
|
+
waiting: "waiting";
|
|
1015
1013
|
}>;
|
|
1016
1014
|
attempt: z.ZodDefault<z.ZodNumber>;
|
|
1017
1015
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1043,7 +1041,6 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1043
1041
|
gate: "gate";
|
|
1044
1042
|
iterate: "iterate";
|
|
1045
1043
|
"iterate-chain": "iterate-chain";
|
|
1046
|
-
loop: "loop";
|
|
1047
1044
|
}>;
|
|
1048
1045
|
path: z.ZodArray<z.ZodString>;
|
|
1049
1046
|
parentFrameId: z.ZodOptional<z.ZodString>;
|
|
@@ -1053,8 +1050,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1053
1050
|
cancelled: "cancelled";
|
|
1054
1051
|
running: "running";
|
|
1055
1052
|
failed: "failed";
|
|
1056
|
-
waiting: "waiting";
|
|
1057
1053
|
skipped: "skipped";
|
|
1054
|
+
waiting: "waiting";
|
|
1058
1055
|
}>;
|
|
1059
1056
|
attempt: z.ZodDefault<z.ZodNumber>;
|
|
1060
1057
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
@@ -1081,8 +1078,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1081
1078
|
status: z.ZodEnum<{
|
|
1082
1079
|
cancelled: "cancelled";
|
|
1083
1080
|
rejected: "rejected";
|
|
1084
|
-
waiting: "waiting";
|
|
1085
1081
|
resumed: "resumed";
|
|
1082
|
+
waiting: "waiting";
|
|
1086
1083
|
"timed-out": "timed-out";
|
|
1087
1084
|
}>;
|
|
1088
1085
|
autoAction: z.ZodEnum<{
|
|
@@ -1213,8 +1210,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1213
1210
|
status: z.ZodEnum<{
|
|
1214
1211
|
cancelled: "cancelled";
|
|
1215
1212
|
rejected: "rejected";
|
|
1216
|
-
waiting: "waiting";
|
|
1217
1213
|
resumed: "resumed";
|
|
1214
|
+
waiting: "waiting";
|
|
1218
1215
|
"timed-out": "timed-out";
|
|
1219
1216
|
}>;
|
|
1220
1217
|
autoAction: z.ZodEnum<{
|
|
@@ -1238,8 +1235,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1238
1235
|
status: z.ZodOptional<z.ZodEnum<{
|
|
1239
1236
|
cancelled: "cancelled";
|
|
1240
1237
|
rejected: "rejected";
|
|
1241
|
-
waiting: "waiting";
|
|
1242
1238
|
resumed: "resumed";
|
|
1239
|
+
waiting: "waiting";
|
|
1243
1240
|
"timed-out": "timed-out";
|
|
1244
1241
|
}>>;
|
|
1245
1242
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
@@ -1254,8 +1251,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1254
1251
|
status: z.ZodEnum<{
|
|
1255
1252
|
cancelled: "cancelled";
|
|
1256
1253
|
rejected: "rejected";
|
|
1257
|
-
waiting: "waiting";
|
|
1258
1254
|
resumed: "resumed";
|
|
1255
|
+
waiting: "waiting";
|
|
1259
1256
|
"timed-out": "timed-out";
|
|
1260
1257
|
}>;
|
|
1261
1258
|
autoAction: z.ZodEnum<{
|
|
@@ -1289,8 +1286,8 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1289
1286
|
status: z.ZodEnum<{
|
|
1290
1287
|
cancelled: "cancelled";
|
|
1291
1288
|
rejected: "rejected";
|
|
1292
|
-
waiting: "waiting";
|
|
1293
1289
|
resumed: "resumed";
|
|
1290
|
+
waiting: "waiting";
|
|
1294
1291
|
"timed-out": "timed-out";
|
|
1295
1292
|
}>;
|
|
1296
1293
|
autoAction: z.ZodEnum<{
|
|
@@ -2713,7 +2710,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
2713
2710
|
tableName: "workflow_execution_frames";
|
|
2714
2711
|
dataType: "string";
|
|
2715
2712
|
columnType: "SQLiteText";
|
|
2716
|
-
data: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain"
|
|
2713
|
+
data: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain";
|
|
2717
2714
|
driverParam: string;
|
|
2718
2715
|
notNull: true;
|
|
2719
2716
|
hasDefault: false;
|
|
@@ -2726,7 +2723,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
2726
2723
|
generated: undefined;
|
|
2727
2724
|
}, {}, {
|
|
2728
2725
|
length: number | undefined;
|
|
2729
|
-
$type: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain"
|
|
2726
|
+
$type: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain";
|
|
2730
2727
|
}>;
|
|
2731
2728
|
path: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
2732
2729
|
name: string;
|
|
@@ -2771,7 +2768,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
2771
2768
|
tableName: "workflow_execution_frames";
|
|
2772
2769
|
dataType: "string";
|
|
2773
2770
|
columnType: "SQLiteText";
|
|
2774
|
-
data: "pending" | "completed" | "cancelled" | "running" | "failed" | "
|
|
2771
|
+
data: "pending" | "completed" | "cancelled" | "running" | "failed" | "skipped" | "waiting";
|
|
2775
2772
|
driverParam: string;
|
|
2776
2773
|
notNull: true;
|
|
2777
2774
|
hasDefault: true;
|
|
@@ -2784,7 +2781,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
2784
2781
|
generated: undefined;
|
|
2785
2782
|
}, {}, {
|
|
2786
2783
|
length: number | undefined;
|
|
2787
|
-
$type: "pending" | "completed" | "cancelled" | "running" | "failed" | "
|
|
2784
|
+
$type: "pending" | "completed" | "cancelled" | "running" | "failed" | "skipped" | "waiting";
|
|
2788
2785
|
}>;
|
|
2789
2786
|
attempt: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
2790
2787
|
name: string;
|
|
@@ -3054,7 +3051,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
3054
3051
|
tableName: "workflow_gate_instances";
|
|
3055
3052
|
dataType: "string";
|
|
3056
3053
|
columnType: "SQLiteText";
|
|
3057
|
-
data: "cancelled" | "rejected" | "
|
|
3054
|
+
data: "cancelled" | "rejected" | "resumed" | "waiting" | "timed-out";
|
|
3058
3055
|
driverParam: string;
|
|
3059
3056
|
notNull: true;
|
|
3060
3057
|
hasDefault: true;
|
|
@@ -3067,7 +3064,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
3067
3064
|
generated: undefined;
|
|
3068
3065
|
}, {}, {
|
|
3069
3066
|
length: number | undefined;
|
|
3070
|
-
$type: "cancelled" | "rejected" | "
|
|
3067
|
+
$type: "cancelled" | "rejected" | "resumed" | "waiting" | "timed-out";
|
|
3071
3068
|
}>;
|
|
3072
3069
|
autoAction: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
3073
3070
|
name: "auto_action";
|
|
@@ -4552,7 +4549,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
4552
4549
|
tableName: "worklog_frame_entries";
|
|
4553
4550
|
dataType: "string";
|
|
4554
4551
|
columnType: "SQLiteText";
|
|
4555
|
-
data: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain"
|
|
4552
|
+
data: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain";
|
|
4556
4553
|
driverParam: string;
|
|
4557
4554
|
notNull: true;
|
|
4558
4555
|
hasDefault: false;
|
|
@@ -4565,7 +4562,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
4565
4562
|
generated: undefined;
|
|
4566
4563
|
}, {}, {
|
|
4567
4564
|
length: number | undefined;
|
|
4568
|
-
$type: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain"
|
|
4565
|
+
$type: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain";
|
|
4569
4566
|
}>;
|
|
4570
4567
|
path: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
4571
4568
|
name: string;
|
|
@@ -4591,7 +4588,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
4591
4588
|
tableName: "worklog_frame_entries";
|
|
4592
4589
|
dataType: "string";
|
|
4593
4590
|
columnType: "SQLiteText";
|
|
4594
|
-
data: "pending" | "completed" | "cancelled" | "running" | "failed" | "
|
|
4591
|
+
data: "pending" | "completed" | "cancelled" | "running" | "failed" | "skipped" | "waiting";
|
|
4595
4592
|
driverParam: string;
|
|
4596
4593
|
notNull: true;
|
|
4597
4594
|
hasDefault: false;
|
|
@@ -5025,7 +5022,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
5025
5022
|
tableName: "worklog_gate_events";
|
|
5026
5023
|
dataType: "string";
|
|
5027
5024
|
columnType: "SQLiteText";
|
|
5028
|
-
data: "cancelled" | "rejected" | "
|
|
5025
|
+
data: "cancelled" | "rejected" | "resumed" | "waiting" | "timed-out";
|
|
5029
5026
|
driverParam: string;
|
|
5030
5027
|
notNull: true;
|
|
5031
5028
|
hasDefault: false;
|
|
@@ -5038,7 +5035,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
5038
5035
|
generated: undefined;
|
|
5039
5036
|
}, {}, {
|
|
5040
5037
|
length: number | undefined;
|
|
5041
|
-
$type: "cancelled" | "rejected" | "
|
|
5038
|
+
$type: "cancelled" | "rejected" | "resumed" | "waiting" | "timed-out";
|
|
5042
5039
|
}>;
|
|
5043
5040
|
prompt: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
5044
5041
|
name: "prompt";
|
|
@@ -6216,7 +6213,6 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6216
6213
|
gate: "gate";
|
|
6217
6214
|
iterate: "iterate";
|
|
6218
6215
|
"iterate-chain": "iterate-chain";
|
|
6219
|
-
loop: "loop";
|
|
6220
6216
|
}>;
|
|
6221
6217
|
path: z.ZodArray<z.ZodString>;
|
|
6222
6218
|
parentFrameId: z.ZodOptional<z.ZodString>;
|
|
@@ -6226,8 +6222,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6226
6222
|
cancelled: "cancelled";
|
|
6227
6223
|
running: "running";
|
|
6228
6224
|
failed: "failed";
|
|
6229
|
-
waiting: "waiting";
|
|
6230
6225
|
skipped: "skipped";
|
|
6226
|
+
waiting: "waiting";
|
|
6231
6227
|
}>;
|
|
6232
6228
|
attempt: z.ZodDefault<z.ZodNumber>;
|
|
6233
6229
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
@@ -6262,7 +6258,6 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6262
6258
|
gate: "gate";
|
|
6263
6259
|
iterate: "iterate";
|
|
6264
6260
|
"iterate-chain": "iterate-chain";
|
|
6265
|
-
loop: "loop";
|
|
6266
6261
|
}>;
|
|
6267
6262
|
path: z.ZodArray<z.ZodString>;
|
|
6268
6263
|
parentFrameId: z.ZodOptional<z.ZodString>;
|
|
@@ -6272,8 +6267,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6272
6267
|
cancelled: "cancelled";
|
|
6273
6268
|
running: "running";
|
|
6274
6269
|
failed: "failed";
|
|
6275
|
-
waiting: "waiting";
|
|
6276
6270
|
skipped: "skipped";
|
|
6271
|
+
waiting: "waiting";
|
|
6277
6272
|
}>;
|
|
6278
6273
|
attempt: z.ZodDefault<z.ZodNumber>;
|
|
6279
6274
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
@@ -6305,7 +6300,6 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6305
6300
|
gate: "gate";
|
|
6306
6301
|
iterate: "iterate";
|
|
6307
6302
|
"iterate-chain": "iterate-chain";
|
|
6308
|
-
loop: "loop";
|
|
6309
6303
|
}>;
|
|
6310
6304
|
path: z.ZodArray<z.ZodString>;
|
|
6311
6305
|
parentFrameId: z.ZodOptional<z.ZodString>;
|
|
@@ -6315,8 +6309,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6315
6309
|
cancelled: "cancelled";
|
|
6316
6310
|
running: "running";
|
|
6317
6311
|
failed: "failed";
|
|
6318
|
-
waiting: "waiting";
|
|
6319
6312
|
skipped: "skipped";
|
|
6313
|
+
waiting: "waiting";
|
|
6320
6314
|
}>;
|
|
6321
6315
|
attempt: z.ZodDefault<z.ZodNumber>;
|
|
6322
6316
|
iteration: z.ZodOptional<z.ZodNumber>;
|
|
@@ -6343,8 +6337,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6343
6337
|
status: z.ZodEnum<{
|
|
6344
6338
|
cancelled: "cancelled";
|
|
6345
6339
|
rejected: "rejected";
|
|
6346
|
-
waiting: "waiting";
|
|
6347
6340
|
resumed: "resumed";
|
|
6341
|
+
waiting: "waiting";
|
|
6348
6342
|
"timed-out": "timed-out";
|
|
6349
6343
|
}>;
|
|
6350
6344
|
autoAction: z.ZodEnum<{
|
|
@@ -6475,8 +6469,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6475
6469
|
status: z.ZodEnum<{
|
|
6476
6470
|
cancelled: "cancelled";
|
|
6477
6471
|
rejected: "rejected";
|
|
6478
|
-
waiting: "waiting";
|
|
6479
6472
|
resumed: "resumed";
|
|
6473
|
+
waiting: "waiting";
|
|
6480
6474
|
"timed-out": "timed-out";
|
|
6481
6475
|
}>;
|
|
6482
6476
|
autoAction: z.ZodEnum<{
|
|
@@ -6500,8 +6494,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6500
6494
|
status: z.ZodOptional<z.ZodEnum<{
|
|
6501
6495
|
cancelled: "cancelled";
|
|
6502
6496
|
rejected: "rejected";
|
|
6503
|
-
waiting: "waiting";
|
|
6504
6497
|
resumed: "resumed";
|
|
6498
|
+
waiting: "waiting";
|
|
6505
6499
|
"timed-out": "timed-out";
|
|
6506
6500
|
}>>;
|
|
6507
6501
|
limit: z.ZodDefault<z.ZodNumber>;
|
|
@@ -6516,8 +6510,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6516
6510
|
status: z.ZodEnum<{
|
|
6517
6511
|
cancelled: "cancelled";
|
|
6518
6512
|
rejected: "rejected";
|
|
6519
|
-
waiting: "waiting";
|
|
6520
6513
|
resumed: "resumed";
|
|
6514
|
+
waiting: "waiting";
|
|
6521
6515
|
"timed-out": "timed-out";
|
|
6522
6516
|
}>;
|
|
6523
6517
|
autoAction: z.ZodEnum<{
|
|
@@ -6551,8 +6545,8 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6551
6545
|
status: z.ZodEnum<{
|
|
6552
6546
|
cancelled: "cancelled";
|
|
6553
6547
|
rejected: "rejected";
|
|
6554
|
-
waiting: "waiting";
|
|
6555
6548
|
resumed: "resumed";
|
|
6549
|
+
waiting: "waiting";
|
|
6556
6550
|
"timed-out": "timed-out";
|
|
6557
6551
|
}>;
|
|
6558
6552
|
autoAction: z.ZodEnum<{
|
|
@@ -7442,7 +7436,7 @@ declare const worklogFrameEntriesDual: _$_makaio_storage_drizzle0.DualTable<"wor
|
|
|
7442
7436
|
/** Unique frame identifier within the execution. */frameId: _$_makaio_storage_drizzle0.DualBuilder<_$drizzle_orm0.IsPrimaryKey<_$drizzle_orm0.NotNull<_$drizzle_orm_sqlite_core0.SQLiteTextBuilderInitial<"frame_id", [string, ...string[]], number | undefined>>>, _$drizzle_orm0.IsPrimaryKey<_$drizzle_orm0.NotNull<_$drizzle_orm_pg_core0.PgTextBuilderInitial<"frame_id", [string, ...string[]]>>>>; /** Execution this frame belongs to. */
|
|
7443
7437
|
executionId: _$_makaio_storage_drizzle0.DualBuilder<_$drizzle_orm0.NotNull<_$drizzle_orm_sqlite_core0.SQLiteTextBuilderInitial<"execution_id", [string, ...string[]], number | undefined>>, _$drizzle_orm0.NotNull<_$drizzle_orm_pg_core0.PgTextBuilderInitial<"execution_id", [string, ...string[]]>>>; /** Node identifier from the workflow definition. */
|
|
7444
7438
|
nodeId: _$_makaio_storage_drizzle0.DualBuilder<_$drizzle_orm0.NotNull<_$drizzle_orm_sqlite_core0.SQLiteTextBuilderInitial<"node_id", [string, ...string[]], number | undefined>>, _$drizzle_orm0.NotNull<_$drizzle_orm_pg_core0.PgTextBuilderInitial<"node_id", [string, ...string[]]>>>; /** Node type discriminant. */
|
|
7445
|
-
nodeType: _$_makaio_storage_drizzle0.DualBuilder<_$drizzle_orm0.$Type<_$drizzle_orm0.NotNull<_$drizzle_orm_sqlite_core0.SQLiteTextBuilderInitial<"node_type", [string, ...string[]], number | undefined>>, "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain"
|
|
7439
|
+
nodeType: _$_makaio_storage_drizzle0.DualBuilder<_$drizzle_orm0.$Type<_$drizzle_orm0.NotNull<_$drizzle_orm_sqlite_core0.SQLiteTextBuilderInitial<"node_type", [string, ...string[]], number | undefined>>, "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain">, _$drizzle_orm0.$Type<_$drizzle_orm0.NotNull<_$drizzle_orm_pg_core0.PgTextBuilderInitial<"node_type", [string, ...string[]]>>, "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain">>;
|
|
7446
7440
|
/**
|
|
7447
7441
|
* Ordered path of frame IDs from the root frame to this frame (inclusive).
|
|
7448
7442
|
* Stored as a JSON array for tree correlation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{C as e,N as t,U as n,b as r,d as i,j as a,k as o,q as s,x as c,z as l}from"../primitive-runtime-Dw6OC8w5.mjs";import{a as u,c as d,i as f,l as p,n as m,o as h,r as g,s as _,t as v}from"../package-DP8lk0-a.mjs";import{JsonValueSchema as y,WorkflowFrameStateSchema as b}from"@makaio/framework/contracts";const x=new Set([...b.shape.status.options]);function S(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function C(e){if(!S(e))return!1;for(let t of Object.values(e))if(!S(t)||typeof t.status!=`string`||!x.has(t.status)||`result`in t&&t.result!==void 0&&!y.safeParse(t.result).success)return!1;return!0}function w(e){let t={trigger:S(e.trigger)?e.trigger:{},steps:C(e.steps)?e.steps:{},inputs:y.safeParse(e.inputs).success?e.inputs:{}};return`item`in e&&(t.item=e.item),typeof e.index==`number`&&(t.index=e.index),t}export{f as WorkflowEngineService,v as WorkflowEngineToken,u as WorkflowExecutor,r as WorkflowStorageNamespace,c as WorkflowStorageSubjects,w as buildWorkflowExpressionContextFromResolvedInputs,m as createWorkflowEnginePackage,_ as getWorkflowState,d as initializeWorkflowState,p as patchWorkflowState,h as registerDrizzleWorkflowStorage,i as runShellStep,e as workflowDefinitionsDual,g as workflowEnginePackage,o as workflowExecutionStateDual,a as workflowExecutionStateEventsDual,t as workflowExecutionsDual,l as workflowStepSpansDual,n as worklogFrameEntriesDual,s as worklogSummariesDual};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as createWorkflowEnginePackage, r as workflowEnginePackage, t as WorkflowEngineToken } from "../package-
|
|
1
|
+
import { n as createWorkflowEnginePackage, r as workflowEnginePackage, t as WorkflowEngineToken } from "../package-fwIv7zzj.mjs";
|
|
2
2
|
export { WorkflowEngineToken, createWorkflowEnginePackage, workflowEnginePackage };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,r as t,t as n}from"../package-
|
|
1
|
+
import{n as e,r as t,t as n}from"../package-DP8lk0-a.mjs";export{n as WorkflowEngineToken,e as createWorkflowEnginePackage,t as workflowEnginePackage};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IMakaioBus } from "@makaio/framework/bus";
|
|
2
|
-
import {
|
|
2
|
+
import { StationHandler, WorkflowDefinition, WorkflowRunResult, WorkflowWorkerConfig, WorkflowZodSchemas } from "@makaio/framework/contracts";
|
|
3
3
|
|
|
4
4
|
//#region subsystems/workflow-engine/src/workflow-orchestrator.d.ts
|
|
5
5
|
/**
|
|
@@ -18,8 +18,6 @@ interface LoadedWorkflow {
|
|
|
18
18
|
* Used by the orchestrator to dispatch `station`-type nodes.
|
|
19
19
|
*/
|
|
20
20
|
readonly runtimeHandlers: ReadonlyMap<string, StationHandler>;
|
|
21
|
-
/** Loop gate handler functions keyed by handler name. */
|
|
22
|
-
readonly runtimeLoopGates?: ReadonlyMap<string, LoopGateHandler>;
|
|
23
21
|
}
|
|
24
22
|
/**
|
|
25
23
|
* Input parameters for {@link runWorkflowOrchestrator}.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{J as e,a as t,i as n,m as r,o as i,r as a,t as o,v as s,x as c}from"../primitive-runtime-Dw6OC8w5.mjs";import{WORKFLOW_CANCELLED_REASON as l}from"@makaio/framework/contracts";async function u(t,n,r,i){let a=await h(t,n,r);return await t.request(c.setExecution,{execution:a}),r===`completed`?await t.emit(e.execution.completed,{executionId:n.executionId,workflowId:n.workflowId,totalDuration:0,completedAt:a.completedAt}):await t.emit(e.execution.cancelled,{executionId:n.executionId,workflowId:n.workflowId,reason:i,completedAt:a.completedAt}),r===`cancelled`?{executionId:n.executionId,workflowId:n.workflowId,status:`cancelled`,...i===void 0?{}:{reason:i}}:{executionId:n.executionId,workflowId:n.workflowId,status:`completed`}}function d(e,t){return t.status===`completed`?{executionId:e.executionId,workflowId:e.workflowId,status:`completed`,...t.artifact===void 0?{}:{artifact:t.artifact}}:t.status===`cancelled`?{executionId:e.executionId,workflowId:e.workflowId,status:`cancelled`,...t.reason===void 0?{}:{reason:t.reason}}:t.status===`paused`?{executionId:e.executionId,workflowId:e.workflowId,status:`paused`,pausedAtGateId:t.pausedAtGateId,pausedAtFrameId:t.pausedAtFrameId}:{executionId:e.executionId,workflowId:e.workflowId,status:`failed`,error:t.error}}function f(e){let t,n=()=>{t=r({bus:e.bus,activeExecutions:e.activeExecutions,shellAbortControllers:e.shellAbortControllers,activeRunnerSteps:e.activeRunnerSteps,cancelTimeoutMs:s.cancelTimeoutMs},e.executionId,l).catch(t=>(console.error(`[WorkflowOrchestrator] Failed to persist cancellation for ${e.executionId}:`,t),!1))};return e.signal.addEventListener(`abort`,n,{once:!0}),e.signal.aborted&&n(),async()=>(e.signal.removeEventListener(`abort`,n),t??!1)}async function p(e,t){let n=await e.requestOptional(c.getExecution,{executionId:t});return n.handled?n.data.execution?.startedAt??void 0:void 0}async function m(e,t){return{id:t.executionId,workflowId:t.workflowId,coordinatorSessionId:t.coordinatorSessionId,status:`running`,inputs:t.inputs,config:t.config??{},startedAt:await p(e,t.executionId)??Date.now(),triggerPayload:t.triggerPayload,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},scope:t.scope}}async function h(e,t,n){let r=Date.now();return{id:t.executionId,workflowId:t.workflowId,coordinatorSessionId:t.coordinatorSessionId,status:n,inputs:t.inputs,config:t.config??{},startedAt:await p(e,t.executionId)??r,completedAt:r,triggerPayload:t.triggerPayload,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},scope:t.scope}}async function g(e,r,i,a,s,c,u,d){let f=e.suspensionStrategy===`wait-in-process`?void 0:await _(e.executionId,c,{required:!0}),p=await n({definition:r,execution:i,runContext:a,zodSchema:d?.artifact,bus:c}),m=new t(e.executionId,e.workflowId,r,i,s,c,u,void 0,p,{context:e.context,env:e.env},{suspensionStrategy:e.suspensionStrategy,resumeFrames:f}),h=m.buildExpressionContext(),g=await o(r.root,m,h);return g.status===`failed`?{status:`failed`,error:g.error}:g.status===`paused`?{status:`paused`,pausedAtGateId:g.pausedAtGateId,pausedAtFrameId:g.pausedAtFrameId}:g.status===`cancelled`||u.aborted?{status:`cancelled`,reason:l}:{status:`completed`,artifact:p?.current}}async function _(e,t,n={}){try{let r=await t.requestOptional(c.listFrames,{executionId:e});if(!r.handled){if(n.required===!0)throw Error(`Frame storage handler is required to resume execution '${e}'.`);return}return r.data.frames.length===0?void 0:a(r.data.frames)}catch(e){if(n.required===!0)throw e;return}}function v(e,t){return{executionId:e.executionId,workflowId:e.workflowId,source:e.source,definitionSnapshot:e.source.kind===`definition`?e.definition??t:t,workerManifest:{packages:[]},inputs:e.inputs,config:e.config??{},scope:e.scope,triggerPayload:e.triggerPayload,...e.artifactRef===void 0?{}:{artifactRef:e.artifactRef},...e.executionHints===void 0?{}:{executionHints:e.executionHints},coordinatorSessionId:e.coordinatorSessionId,cancelSubject:e.cancelSubject,context:e.context,env:e.env,createdAt:Date.now(),suspensionStrategy:e.suspensionStrategy}}async function y(t,n,r,i,a){r.status=`paused`,await t.request(c.setExecution,{execution:r}),await t.emit(e.execution.paused,{executionId:n.executionId,workflowId:n.workflowId,pausedAtGateId:i,pausedAtFrameId:a})}async function b(t,n,r,i,a,o){r===`completed`?await t.emit(e.execution.completed,{executionId:n.executionId,workflowId:n.workflowId,totalDuration:a-i.startedAt,completedAt:a}):r===`cancelled`?await t.emit(e.execution.cancelled,{executionId:n.executionId,workflowId:n.workflowId,reason:l,completedAt:a}):await t.emit(e.execution.failed,{executionId:n.executionId,workflowId:n.workflowId,error:o??`Workflow execution failed`,completedAt:a})}async function x(e){let{config:t,loaded:n,bus:r,signal:a}=e,{definition:o}=n;if(a.aborted)return u(r,t,`cancelled`,l);let s=await m(r,t),p=v(t,o);await i(r,s,p,o);let h=new Map(n.runtimeHandlers),_=new Map,x=new Map,S=new Map;_.set(t.executionId,{execution:s,workflow:o,runContext:p,runtimeHandlers:h});let C=f({signal:a,executionId:t.executionId,bus:r,activeExecutions:_,shellAbortControllers:x,activeRunnerSteps:S}),w={status:`completed`},T=!1;try{o.root.nodes.length>0&&(w=await g(t,o,s,p,h,r,a,n.zodSchemas))}catch(e){w={status:`failed`,error:e instanceof Error?e.message:String(e)}}finally{T=await C(),_.clear()}if(T)return d(t,{status:`cancelled`,reason:l});if((a.aborted||s.status===`cancelled`)&&(w={status:`cancelled`,reason:l}),w.status===`paused`)return await y(r,t,s,w.pausedAtGateId,w.pausedAtFrameId),d(t,w);let E=Date.now(),D=w.status===`failed`?w.error:void 0;return s.status=w.status,s.completedAt=E,s.error=D,await r.request(c.setExecution,{execution:s}),await b(r,t,w.status,s,E,D),d(t,w)}export{x as runWorkflowOrchestrator};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{n as r,o as i,t as a}from"./await-trigger-DcMVmNW5.mjs";import{basename as o,join as s}from"node:path";import{WorkerNodeCapabilitiesSchema as c,WorkerNodeSubjects as l,WorkflowWorkerConfigSchema as u}from"@makaio/framework/contracts";import{runWorkflowOrchestrator as d}from"@makaio/framework/workflow-engine/workflow-orchestrator";var f=n(((e,t)=>{t.exports={name:`piscina`,version:`5.1.4`,description:`A fast, efficient Node.js Worker Thread Pool implementation`,main:`./dist/main.js`,types:`./dist/index.d.ts`,exports:{types:`./dist/index.d.ts`,import:`./dist/esm-wrapper.mjs`,require:`./dist/main.js`},engines:{node:`>=20.x`},scripts:{build:`tsc && gen-esm-wrapper . dist/esm-wrapper.mjs`,lint:`eslint`,test:`node scripts/run-tests.js --pattern='test/**/*test.ts'`,"test:ci":`npm run lint && npm run build && npm run test:coverage`,"test:coverage":`node scripts/run-tests.js --coverage --pattern='test/**/*test.ts'`,prepack:`npm run build`,benchmark:`node --allow-natives-syntax benchmark/index.js --scope all`,"benchmark:ci":`node --allow-natives-syntax benchmark/index.js --scope all --reporter json | jq '.[] | .name, .opsSec'`,"benchmark:simple":`node --allow-natives-syntax benchmark/index.js --scope simple:all`,"benchmark:simple:default":`node --allow-natives-syntax benchmark/index.js --scope simple`,"benchmark:simple:async":`node --allow-natives-syntax benchmark/index.js --scope simple:async`,"benchmark:startup":`node --allow-natives-syntax benchmark/index.js --scope startup`,"benchmark:queue":`node --allow-natives-syntax benchmark/index.js --scope queue`},repository:{type:`git`,url:`git+https://github.com/piscinajs/piscina.git`},keywords:[`fast`,`worker threads`,`thread pool`,`wade wilson`],author:`James M Snell <jasnell@gmail.com>`,contributors:[`Anna Henningsen <anna@addaleax.net>`,`Matteo Collina <matteo.collina@gmail.com>`,`Carlos Fuentes <me@metcoder.dev>`],license:`MIT`,devDependencies:{"@types/node":`^22.4.1`,"abort-controller":`^3.0.0`,"bench-node":`^0.7.0`,"concat-stream":`^2.0.0`,eslint:`^9.16.0`,"gen-esm-wrapper":`^1.1.1`,glob:`^11.0.2`,neostandard:`^0.12.0`,tsx:`^4.20.3`,typescript:`5.8.3`},optionalDependencies:{"@napi-rs/nice":`^1.0.4`},bugs:{url:`https://github.com/piscinajs/piscina/issues`},homepage:`https://github.com/piscinajs/piscina#readme`,directories:{example:`examples`,test:`test`}}})),p=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.kFieldCount=e.kResponseCountField=e.kRequestCountField=e.kQueueOptions=e.kValue=e.kTransferable=e.kWorkerData=e.kMovable=void 0,e.kMovable=Symbol(`Piscina.kMovable`),e.kWorkerData=Symbol(`Piscina.kWorkerData`),e.kTransferable=Symbol.for(`Piscina.transferable`),e.kValue=Symbol.for(`Piscina.valueOf`),e.kQueueOptions=Symbol.for(`Piscina.queueOptions`),e.kRequestCountField=0,e.kResponseCountField=1,e.kFieldCount=2})),m=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AbortError=void 0,e.onabort=t,e.AbortError=class extends Error{constructor(e){super(`The task has been aborted`,{cause:e})}get name(){return`AbortError`}};function t(e,t){return`addEventListener`in e?(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)):(e.once(`abort`,t),()=>e.removeListener(`abort`,t))}})),h=n((t=>{Object.defineProperty(t,`__esModule`,{value:!0}),t.commonState=t.READY=void 0,t.isTransferable=a,t.isMovable=o,t.markMovable=s,t.maybeFileURLToPath=c,t.getAvailableParallelism=l,t.promiseResolvers=u;let n=e(`node:url`),r=e(`node:os`),i=p();t.READY=`_WORKER_READY`;function a(e){return typeof e==`object`&&!!e&&i.kTransferable in e&&i.kValue in e}function o(e){return a(e)&&e[i.kMovable]===!0}function s(e){Object.defineProperty(e,i.kMovable,{enumerable:!1,configurable:!0,writable:!0,value:!0})}t.commonState={isWorkerThread:!1,workerData:void 0};function c(e){return e.startsWith(`file:`)?(0,n.fileURLToPath)(new n.URL(e)):e}function l(){return(0,r.availableParallelism)()}function u(){if(Promise.withResolvers!=null)return Promise.withResolvers();let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}})),g=n((t=>{var n=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,`__esModule`,{value:!0}),t.ArrayTaskQueue=void 0;let r=n(e(`node:assert`));t.ArrayTaskQueue=class{constructor(){this.tasks=[]}get size(){return this.tasks.length}shift(){return this.tasks.shift()??null}push(e){this.tasks.push(e)}remove(e){let t=this.tasks.indexOf(e);r.default.notStrictEqual(t,-1),this.tasks.splice(t,1)}}})),_=n((t=>{var n=t&&t.__classPrivateFieldGet||function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},r=t&&t.__classPrivateFieldSet||function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},i=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},a;Object.defineProperty(t,`__esModule`,{value:!0}),t.FixedQueue=void 0;let o=i(e(`node:assert`)),s=2048,c=s-1;var l=class{constructor(){this.bottom=0,this.top=0,this.list=Array(s),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&c)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&c}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&c,e)}remove(e){let t=this.list.indexOf(e);o.default.notStrictEqual(t,-1);let n=t;for(;;){let e=n+1&c;if(this.list[n]=this.list[e],this.list[n]===void 0)break;if(e===t){this.list[n]=void 0;break}n=e}this.top=this.top-1&c}};t.FixedQueue=class{constructor(){a.set(this,0),this.head=this.tail=new l}isEmpty(){return this.head.isEmpty()}push(e){var t;this.head.isFull()&&(this.head=this.head.next=new l),this.head.push(e),r(this,a,(t=n(this,a,`f`),t++,t),`f`)}shift(){var e;let t=this.tail,i=t.shift();return i!==null&&r(this,a,(e=n(this,a,`f`),e--,e),`f`),t.isEmpty()&&t.next!==null&&(this.tail=t.next,t.next=null),i}remove(e){var t;let i=null,o=this.tail;for(;;){if(o.list.includes(e)){o.remove(e),r(this,a,(t=n(this,a,`f`),t--,t),`f`);break}if(o.next===null)break;i=o,o=o.next}o.isEmpty()&&(i===null?o.next!==null&&(this.tail=o.next):o.next===null?this.head=i:i.next=o.next)}get size(){return n(this,a,`f`)}},a=new WeakMap})),v=n((t=>{Object.defineProperty(t,`__esModule`,{value:!0}),t.TaskInfo=t.FixedQueue=t.ArrayTaskQueue=void 0,t.isTaskQueue=l;let n=e(`node:perf_hooks`),r=e(`node:async_hooks`),i=m(),a=h(),o=p();var s=g();Object.defineProperty(t,`ArrayTaskQueue`,{enumerable:!0,get:function(){return s.ArrayTaskQueue}});var c=_();Object.defineProperty(t,`FixedQueue`,{enumerable:!0,get:function(){return c.FixedQueue}});function l(e){return typeof e==`object`&&!!e&&`size`in e&&typeof e.shift==`function`&&typeof e.remove==`function`&&typeof e.push==`function`}let u=0;t.TaskInfo=class extends r.AsyncResource{constructor({task:e,transferList:t,filename:r,name:i,abortSignal:s,triggerAsyncId:c},l){super(`Piscina.Task`,{requireManualDestroy:!0,triggerAsyncId:c}),this.workerInfo=null,this.aborted=!1,this._abortListener=()=>{this.aborted=!0},this._abortCleaner=null,this.callback=l,this.task=e,this.transferList=t,(0,a.isMovable)(e)&&(this.transferList??=[],this.transferList=this.transferList.concat(e[o.kTransferable]),this.task=e[o.kValue]),this.filename=r,this.name=i,this.taskId=u++,this.abortSignal=s,this.created=n.performance.now(),this.started=0}onAbort(e){this._abortListener=()=>{this.aborted=!0,e()}}setAbortListener(e){this._abortCleaner=(0,i.onabort)(e,this._abortListener)}releaseTask(){let e=this.task;return this.task=null,e}onResponse(e){}done(e,t){var n;this.runInAsyncScope(this.callback,null,e,t),this.emitDestroy(),(n=this._abortCleaner)==null||n.call(this)}get[o.kQueueOptions](){return this.task?.[o.kQueueOptions]??null}get interface(){return{taskId:this.taskId,filename:this.filename,name:this.name,created:this.created,isAbortable:this.abortSignal!==null,[o.kQueueOptions]:this[o.kQueueOptions]}}}})),y=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Errors=void 0,e.Errors={ThreadTermination:()=>Error(`Terminating worker thread`),FilenameNotProvided:()=>Error(`filename must be provided to run() or in options object`),TaskQueueAtLimit:()=>Error(`Task queue is at limit`),NoTaskQueueAvailable:()=>Error(`No task queue available and all Workers are busy`),CloseTimeout:()=>Error(`Close operation timed out`)}})),b=n((t=>{var n=t&&t.__classPrivateFieldSet||function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},r=t&&t.__classPrivateFieldGet||function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},i,a;Object.defineProperty(t,`__esModule`,{value:!0}),t.PiscinaHistogramHandler=void 0;let o=e(`node:perf_hooks`);t.PiscinaHistogramHandler=class e{constructor(){i.set(this,void 0),a.set(this,void 0),n(this,i,(0,o.createHistogram)(),`f`),n(this,a,(0,o.createHistogram)(),`f`)}get runTimeSummary(){return e.createHistogramSummary(r(this,i,`f`))}get waitTimeSummary(){return e.createHistogramSummary(r(this,a,`f`))}get runTimeCount(){return r(this,i,`f`).count}recordRunTime(t){r(this,i,`f`).record(e.toHistogramIntegerNano(t))}recordWaitTime(t){r(this,a,`f`).record(e.toHistogramIntegerNano(t))}resetWaitTime(){r(this,a,`f`).reset()}resetRunTime(){r(this,i,`f`).reset()}static createHistogramSummary(e){let{mean:t,stddev:n,min:r,max:i}=e;return{average:t/1e3,mean:t/1e3,stddev:n/1e3,min:r/1e3,max:i/1e3,p0_001:e.percentile(.001)/1e3,p0_01:e.percentile(.01)/1e3,p0_1:e.percentile(.1)/1e3,p1:e.percentile(1)/1e3,p2_5:e.percentile(2.5)/1e3,p10:e.percentile(10)/1e3,p25:e.percentile(25)/1e3,p50:e.percentile(50)/1e3,p75:e.percentile(75)/1e3,p90:e.percentile(90)/1e3,p97_5:e.percentile(97.5)/1e3,p99:e.percentile(99)/1e3,p99_9:e.percentile(99.9)/1e3,p99_99:e.percentile(99.99)/1e3,p99_999:e.percentile(99.999)/1e3}}static toHistogramIntegerNano(e){return Math.max(1,Math.trunc(e*1e3))}},i=new WeakMap,a=new WeakMap})),x=n((t=>{var n=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,`__esModule`,{value:!0}),t.AsynchronouslyCreatedResourcePool=t.AsynchronouslyCreatedResource=void 0;let r=n(e(`node:assert`));t.AsynchronouslyCreatedResource=class{constructor(){this.onreadyListeners=[],this.ondestroyListeners=[]}markAsReady(){let e=this.onreadyListeners;(0,r.default)(e!=null),this.onreadyListeners=null;for(let t of e)t()}isReady(){return this.onreadyListeners==null}onReady(e){if(this.onreadyListeners==null){e();return}this.onreadyListeners.push(e)}onDestroy(e){this.ondestroyListeners!=null&&this.ondestroyListeners.push(e)}markAsDestroyed(){let e=this.ondestroyListeners;(0,r.default)(e!=null),this.ondestroyListeners=null;for(let t of e)t()}isDestroyed(){return this.ondestroyListeners==null}},t.AsynchronouslyCreatedResourcePool=class{constructor(e){this.pendingItems=new Set,this.readyItems=new Set,this.maximumUsage=e,this.onAvailableListeners=[],this.onTaskDoneListeners=[]}add(e){this.pendingItems.add(e),e.onReady(()=>{this.pendingItems.has(e)&&(this.pendingItems.delete(e),this.readyItems.add(e),this.maybeAvailable(e))})}delete(e){this.pendingItems.delete(e),this.readyItems.delete(e)}*[Symbol.iterator](){yield*this.pendingItems,yield*this.readyItems}get size(){return this.pendingItems.size+this.readyItems.size}maybeAvailable(e){if(e.currentUsage()<this.maximumUsage)for(let t of this.onAvailableListeners)t(e)}onAvailable(e){this.onAvailableListeners.push(e)}taskDone(e){for(let t=0;t<this.onTaskDoneListeners.length;t++)this.onTaskDoneListeners[t](e)}onTaskDone(e){this.onTaskDoneListeners.push(e)}getCurrentUsage(){let e=0;for(let t of this.readyItems){let n=t.currentUsage();Number.isFinite(n)&&(e+=n)}return e}}})),S=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LeastBusyBalancer=t;function t(e){let{maximumUsage:t}=e;return(e,n)=>{let r=null,i=t;for(let t of n){if(t.currentUsage===0){r=t;break}t.isRunningAbortableTask||e.isAbortable===!1&&t.currentUsage<i&&(r=t,i=t.currentUsage)}return r}}})),C=n((t=>{var n=t&&t.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),r=t&&t.__exportStar||function(e,t){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(t,r)&&n(t,e,r)},i=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,`__esModule`,{value:!0}),t.AsynchronouslyCreatedResourcePool=t.WorkerInfo=void 0;let a=e(`node:worker_threads`),o=e(`node:perf_hooks`),s=i(e(`node:assert`)),c=y(),l=p(),u=b(),d=x();Object.defineProperty(t,`AsynchronouslyCreatedResourcePool`,{enumerable:!0,get:function(){return d.AsynchronouslyCreatedResourcePool}}),r(S(),t),t.WorkerInfo=class extends d.AsynchronouslyCreatedResource{constructor({worker:e,port:t,enableHistogram:n},r){super(),this.idleTimeout=null,this.lastSeenResponseCount=0,this.terminating=!1,this.destroyed=!1;let{filename:i,...s}=e;this.worker=new a.Worker(i,s),this.port=t,this.onMessage=r,this.port.on(`message`,this._handleResponse.bind(this)),this.taskInfos=new Map,this.sharedBuffer=new Int32Array(new SharedArrayBuffer(l.kFieldCount*Int32Array.BYTES_PER_ELEMENT)),this.histogram=n?(0,o.createHistogram)():null}get id(){return this.worker.threadId}onWorkerMessage(e){this.worker.on(`message`,e)}onWorkerError(e){this.worker.on(`error`,e)}onWorkerExit(e){this.worker.on(`exit`,e)}onPortClose(e){this.port.on(`close`,e)}init(e,t){return this.worker.postMessage(e,t),this}workerRef(){return this.worker.ref(),this}workerUnref(){return this.worker.unref(),this}destroy(){if(!(this.terminating||this.destroyed)){this.terminating=!0,this.clearIdleTimeout(),this.worker.terminate(),this.port.close();for(let e of this.taskInfos.values())e.done(c.Errors.ThreadTermination());this.taskInfos.clear(),this.terminating=!1,this.destroyed=!0,this.markAsDestroyed()}}setIdleTimeout(e,t,...n){this.idleTimeout=setTimeout(e,t,...n).unref()}clearIdleTimeout(){this.idleTimeout!=null&&(clearTimeout(this.idleTimeout),this.idleTimeout=null)}ref(){return this.port.ref(),this}unref(){return this.port.unref(),this}_handleResponse(e){var t;(t=this.histogram)==null||t.record(u.PiscinaHistogramHandler.toHistogramIntegerNano(e?.time)),this.onMessage(e),this.taskInfos.size===0&&this.unref()}postTask(e){(0,s.default)(!this.taskInfos.has(e.taskId)),(0,s.default)(!this.terminating&&!this.destroyed);let t={task:e.releaseTask(),taskId:e.taskId,filename:e.filename,name:e.name,histogramEnabled:this.histogram==null?0:1};try{this.port.postMessage(t,e.transferList),queueMicrotask(()=>this.clearIdleTimeout()),e.workerInfo=this,this.taskInfos.set(e.taskId,e),this.ref(),Atomics.add(this.sharedBuffer,l.kRequestCountField,1),Atomics.notify(this.sharedBuffer,l.kRequestCountField,1)}catch(t){e.done(t)}}processPendingMessages(){if(this.destroyed)return;let e=Atomics.load(this.sharedBuffer,l.kResponseCountField);if(e!==this.lastSeenResponseCount){this.lastSeenResponseCount=e;let t;for(;(t=(0,a.receiveMessageOnPort)(this.port))!=null;)this._handleResponse(t.message)}}isRunningAbortableTask(){if(this.taskInfos.size!==1)return!1;let[[,e]]=this.taskInfos;return e.abortSignal!=null}currentUsage(){return this.isRunningAbortableTask()?1/0:this.taskInfos.size}popTask(e){let t=this.taskInfos.get(e)??null;return t!=null&&this.taskInfos.delete(e),t}get interface(){let e=this;return{get id(){return e.worker.threadId},get currentUsage(){return e.currentUsage()},get isRunningAbortableTask(){return e.isRunningAbortableTask()},get histogram(){return e.histogram==null?null:u.PiscinaHistogramHandler.createHistogramSummary(e.histogram)},get terminating(){return e.terminating},get destroyed(){return e.destroyed},[l.kWorkerData]:e}}}})),w=n((t=>{var n=t&&t.__classPrivateFieldSet||function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},r=t&&t.__classPrivateFieldGet||function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},i,a,o,s;Object.defineProperty(t,`__esModule`,{value:!0}),t.ArrayTaskQueue=t.FixedQueue=t.version=t.queueOptionsSymbol=t.valueSymbol=t.transferableSymbol=t.Piscina=t.workerData=t.isWorkerThread=t.move=void 0;let c=e(`node:worker_threads`),l=e(`node:events`),u=e(`node:path`),d=e(`node:util`),g=e(`node:perf_hooks`),_=e(`node:timers/promises`),x=f();Object.defineProperty(t,`version`,{enumerable:!0,get:function(){return x.version}});let S=p();Object.defineProperty(t,`queueOptionsSymbol`,{enumerable:!0,get:function(){return S.kQueueOptions}}),Object.defineProperty(t,`transferableSymbol`,{enumerable:!0,get:function(){return S.kTransferable}}),Object.defineProperty(t,`valueSymbol`,{enumerable:!0,get:function(){return S.kValue}});let w=v();Object.defineProperty(t,`ArrayTaskQueue`,{enumerable:!0,get:function(){return w.ArrayTaskQueue}}),Object.defineProperty(t,`FixedQueue`,{enumerable:!0,get:function(){return w.FixedQueue}});let T=C(),E=m(),D=b(),O=y(),k=h(),A=(0,k.getAvailableParallelism)(),j={filename:null,name:`default`,minThreads:Math.max(Math.floor(A/2),1),maxThreads:A*1.5,idleTimeout:0,maxQueue:1/0,concurrentTasksPerWorker:1,atomics:`sync`,taskQueue:new w.ArrayTaskQueue,niceIncrement:0,trackUnmanagedFds:!0,closeTimeout:3e4,recordTiming:!0,workerHistogram:!1},M={transferList:void 0,filename:null,signal:null,name:null},N={force:!1};var P=class{constructor(e){i.set(this,void 0),n(this,i,e,`f`)}get[(i=new WeakMap,S.kTransferable)](){return r(this,i,`f`)}get[S.kValue](){return r(this,i,`f`)}},F=class{constructor(e){a.set(this,void 0),n(this,a,e,`f`)}get[(a=new WeakMap,S.kTransferable)](){return r(this,a,`f`).buffer}get[S.kValue](){return r(this,a,`f`)}},I=class{constructor(e,t){this.skipQueue=[],this.completed=0,this.histogram=null,this.start=g.performance.now(),this.inProcessPendingMessages=!1,this.startingUp=!1,this.closingUp=!1,this.workerFailsDuringBootstrap=!1,this.destroying=!1,this.publicInterface=e,this.taskQueue=t.taskQueue??new w.FixedQueue;let n=t.filename?(0,k.maybeFileURLToPath)(t.filename):null;this.options={...j,...t,filename:n,maxQueue:0},this.options.recordTiming&&(this.histogram=new D.PiscinaHistogramHandler),t.maxThreads!==void 0&&this.options.minThreads>=t.maxThreads&&(this.options.minThreads=t.maxThreads),t.minThreads!==void 0&&this.options.maxThreads<=t.minThreads&&(this.options.maxThreads=t.minThreads),t.maxQueue===`auto`?this.options.maxQueue=this.options.maxThreads**2:this.options.maxQueue=t.maxQueue??j.maxQueue,this.balancer=this.options.loadBalancer??(0,T.LeastBusyBalancer)({maximumUsage:this.options.concurrentTasksPerWorker}),this.workers=new T.AsynchronouslyCreatedResourcePool(this.options.concurrentTasksPerWorker),this.workers.onTaskDone(this._onWorkerTaskDone.bind(this)),this.maxCapacity=this.options.maxThreads*this.options.concurrentTasksPerWorker,this.startingUp=!0,this._ensureMinimumWorkers(),this.startingUp=!1,this._needsDrain=!1}_ensureMinimumWorkers(){if(!(this.closingUp||this.destroying))for(;this.workers.size<this.options.minThreads;)this._addNewWorker()}_addNewWorker(){if(this.closingUp===!0)return;let{port1:e,port2:t}=new c.MessageChannel,n=new T.WorkerInfo({worker:{filename:(0,u.resolve)(__dirname,`worker.js`),env:this.options.env,argv:this.options.argv,execArgv:this.options.execArgv,resourceLimits:this.options.resourceLimits,workerData:this.options.workerData,trackUnmanagedFds:this.options.trackUnmanagedFds},port:e,enableHistogram:this.options.workerHistogram},i.bind(this)),r={filename:this.options.filename,name:this.options.name,port:t,sharedBuffer:n.sharedBuffer,atomics:this.options.atomics,niceIncrement:this.options.niceIncrement};n.onDestroy(()=>{this.publicInterface.emit(`workerDestroy`,n.interface)}),n.onWorkerMessage(s.bind(this)),n.onWorkerError(l.bind(this)),n.onWorkerExit(f.bind(this)),n.onPortClose(()=>{n.workerRef()}),this.startingUp===!0?(n.markAsReady(),queueMicrotask(()=>{this.publicInterface.emit(`workerCreate`,n.interface),this._onWorkerReady(n)})):n.onReady(()=>{this.publicInterface.emit(`workerCreate`,n.interface),this._onWorkerReady(n)}),n.init(r,[t]).workerUnref(),this.workers.add(n);function i(e){let{taskId:t,result:r}=e,i=n.popTask(t);if(this.workers.taskDone(n),i==null){let t=Error(`Unexpected message from Worker: ${(0,d.inspect)(e)}`);this.publicInterface.emit(`error`,t)}else i.done(e.error,r);this._processPendingMessages()}function a(){n.currentUsage()===0&&n.unref(),n.isReady()===!1&&n.markAsReady()}function o(e){this.publicInterface.emit(`message`,e)}function s(e){e instanceof Object&&k.READY in e?a():o.call(this,e)}function l(e){this._onError(n,e,!1)}function f(e){if(this.destroying===!1){let t=Error(`worker exited with code: ${e}`);this._onError(n,t,!0)}}}_onError(e,t,n){let r=[...e.taskInfos.values()];if(e.taskInfos.clear(),this._removeWorker(e),e.isReady()&&!this.workerFailsDuringBootstrap?this._ensureMinimumWorkers():this.workerFailsDuringBootstrap=!0,r.length>0)for(let e of r)e.done(t,null);else n||this.publicInterface.emit(`error`,t)}_processPendingMessages(){if(!(this.inProcessPendingMessages||this.options.atomics===`disabled`)){this.inProcessPendingMessages=!0;try{for(let e of this.workers)e.processPendingMessages()}finally{this.inProcessPendingMessages=!1}}}_removeWorker(e){e.destroy(),this.workers.delete(e)}_onWorkerReady(e){this._onWorkerAvailable(e)}_onWorkerTaskDone(e){this._onWorkerAvailable(e)}_onWorkerAvailable(e){let t=null;for(;this.taskQueue.size>0||this.skipQueue.length>0;){let e=this.skipQueue.shift()||this.taskQueue.shift();if(t??=[...this.workers].map(e=>e.interface),!this._distributeTask(e,t))if(this.workers.size<this.options.maxThreads){this._addNewWorker();continue}else break}this.options.idleTimeout!==1/0&&e.currentUsage()===0&&this.workers.size>this.options.minThreads&&e.setIdleTimeout(()=>{e.currentUsage()===0&&this.workers.size>this.options.minThreads&&this._removeWorker(e)},this.options.idleTimeout)}_distributeTask(e,t){var n;if(e.aborted)return!0;let r=this.balancer(e.interface,t);if(r!=null&&r[S.kWorkerData]!=null){let t=g.performance.now();return(n=this.histogram)==null||n.recordWaitTime(t-e.created),e.started=t,r[S.kWorkerData].postTask(e),queueMicrotask(()=>this._maybeDrain()),!0}return e.abortSignal==null?this.taskQueue.push(e):this.skipQueue.push(e),!1}runTask(e,t){let{filename:n,name:r}=t,{transferList:i=[]}=t;if(n??=this.options.filename,r??=this.options.name,typeof n!=`string`)return Promise.reject(O.Errors.FilenameNotProvided());n=(0,k.maybeFileURLToPath)(n);let a;if(this.closingUp||this.destroying){let e=new AbortController;e.abort(`queue is being terminated`),a=e.signal}else a=t.signal??null;let{promise:o,resolve:s,reject:c}=(0,k.promiseResolvers)(),l=new w.TaskInfo({task:e,transferList:i,filename:n,name:r,abortSignal:a,triggerAsyncId:this.publicInterface.asyncResource.asyncId()},(e,t)=>{var n;this.completed++,l.started&&((n=this.histogram)==null||n.recordRunTime(g.performance.now()-l.started)),e===null?s(t):c(e),queueMicrotask(this._maybeDrain.bind(this))});if(a!=null){if(a.aborted)return c(new E.AbortError(a.reason)),o;l.onAbort(()=>{c(new E.AbortError(a.reason)),l.workerInfo==null?this.taskQueue.remove(l):(this._removeWorker(l.workerInfo),this._ensureMinimumWorkers())}),l.setAbortListener(a)}if(this.taskQueue.size>0){let e=this.options.maxQueue+this.pendingCapacity();return this.taskQueue.size>=e?this.options.maxQueue===0?c(O.Errors.NoTaskQueueAvailable()):c(O.Errors.TaskQueueAtLimit()):this.taskQueue.push(l),queueMicrotask(this._maybeDrain.bind(this)),o}let u=[...this.workers.readyItems].map(e=>e.interface);return this._distributeTask(l,u)||(this.workers.size<this.options.maxThreads&&this._addNewWorker(),this.options.maxQueue<=0&&this.pendingCapacity()===0&&c(O.Errors.NoTaskQueueAvailable())),queueMicrotask(this._maybeDrain.bind(this)),o}pendingCapacity(){return this.workers.pendingItems.size*this.options.concurrentTasksPerWorker}_maybeDrain(){let{maxCapacity:e}=this,t=this.workers.getCurrentUsage();e===t?(this._needsDrain=!0,queueMicrotask(()=>this.publicInterface.emit(`needsDrain`))):e>t&&this._needsDrain&&(this._needsDrain=!1,queueMicrotask(()=>this.publicInterface.emit(`drain`)))}async destroy(){for(this.destroying=!0;this.skipQueue.length>0;)this.skipQueue.shift().done(Error(`Terminating worker thread`));for(;this.taskQueue.size>0;)this.taskQueue.shift().done(Error(`Terminating worker thread`));let e=[];for(;this.workers.size>0;){let[t]=this.workers;e.push((0,l.once)(t.worker,`exit`)),this._removeWorker(t)}await Promise.allSettled(e),this.destroying=!1}async close(e){if(this.closingUp=!0,e.force){let e=this.skipQueue.length;for(let t=0;t<e;t++){let e=this.skipQueue.shift();e.workerInfo===null?e.done(new E.AbortError(`pool is closed`)):this.skipQueue.push(e)}let t=this.taskQueue.size;for(let e=0;e<t;e++){let e=this.taskQueue.shift();e.workerInfo===null?e.done(new E.AbortError(`pool is closed`)):this.taskQueue.push(e)}}let t=()=>new Promise(e=>{let t=this.workers.size;if(t===0){e();return}let n=0,r=r=>{r.taskInfos.size===0&&n++,t===n&&e()};this.workers.onTaskDone(r);for(let e of this.workers)r(e),this.workers.onTaskDone(r)}),n=async e=>{throw await(0,_.setTimeout)(e,null,{ref:!1}),O.Errors.CloseTimeout()};try{await Promise.race([t(),n(this.options.closeTimeout)])}catch(e){this.publicInterface.emit(`error`,e)}finally{await this.destroy(),this.publicInterface.emit(`close`),this.closingUp=!1}}},L=class e extends l.EventEmitterAsyncResource{constructor(e={}){if(super({...e,name:`Piscina`}),o.set(this,void 0),s.set(this,null),typeof e.filename!=`string`&&e.filename!=null)throw TypeError(`options.filename must be a string or null`);if(typeof e.name!=`string`&&e.name!=null)throw TypeError(`options.name must be a string or null`);if(e.minThreads!==void 0&&(typeof e.minThreads!=`number`||e.minThreads<0))throw TypeError(`options.minThreads must be a non-negative integer`);if(e.maxThreads!==void 0&&(typeof e.maxThreads!=`number`||e.maxThreads<1))throw TypeError(`options.maxThreads must be a positive integer`);if(e.minThreads!==void 0&&e.maxThreads!==void 0&&e.minThreads>e.maxThreads)throw RangeError(`options.minThreads and options.maxThreads must not conflict`);if(e.idleTimeout!==void 0&&(typeof e.idleTimeout!=`number`||e.idleTimeout<0))throw TypeError(`options.idleTimeout must be a non-negative integer`);if(e.maxQueue!==void 0&&e.maxQueue!==`auto`&&(typeof e.maxQueue!=`number`||e.maxQueue<0))throw TypeError(`options.maxQueue must be a non-negative integer`);if(e.concurrentTasksPerWorker!==void 0&&(typeof e.concurrentTasksPerWorker!=`number`||e.concurrentTasksPerWorker<1))throw TypeError(`options.concurrentTasksPerWorker must be a positive integer`);if(e.atomics!=null&&(typeof e.atomics!=`string`||![`sync`,`async`,`disabled`].includes(e.atomics)))throw TypeError(`options.atomics should be a value of sync, sync or disabled.`);if(e.resourceLimits!==void 0&&(typeof e.resourceLimits!=`object`||e.resourceLimits===null))throw TypeError(`options.resourceLimits must be an object`);if(e.taskQueue!==void 0&&!(0,w.isTaskQueue)(e.taskQueue))throw TypeError(`options.taskQueue must be a TaskQueue object`);if(e.niceIncrement!==void 0&&(typeof e.niceIncrement!=`number`||e.niceIncrement<0&&process.platform!==`win32`))throw TypeError(`options.niceIncrement must be a non-negative integer on Unix systems`);if(e.trackUnmanagedFds!==void 0&&typeof e.trackUnmanagedFds!=`boolean`)throw TypeError(`options.trackUnmanagedFds must be a boolean value`);if(e.closeTimeout!==void 0&&(typeof e.closeTimeout!=`number`||e.closeTimeout<0))throw TypeError(`options.closeTimeout must be a non-negative integer`);if(e.loadBalancer!==void 0&&(typeof e.loadBalancer!=`function`||e.loadBalancer.length<1))throw TypeError(`options.loadBalancer must be a function with at least two args`);if(e.workerHistogram!==void 0&&typeof e.workerHistogram!=`boolean`)throw TypeError(`options.workerHistogram must be a boolean`);n(this,o,new I(this,e),`f`)}run(e,t=M){if(typeof t!=`object`||!t)return Promise.reject(TypeError(`options must be an object`));let{transferList:n,filename:i,name:a,signal:s}=t;return n!==void 0&&!Array.isArray(n)?Promise.reject(TypeError(`transferList argument must be an Array`)):i!=null&&typeof i!=`string`?Promise.reject(TypeError(`filename argument must be a string`)):a!=null&&typeof a!=`string`?Promise.reject(TypeError(`name argument must be a string`)):s!=null&&typeof s!=`object`?Promise.reject(TypeError(`signal argument must be an object`)):r(this,o,`f`).runTask(e,{transferList:n,filename:i,name:a,signal:s})}async close(e=N){if(typeof e!=`object`||!e)throw TypeError(`options must be an object`);let{force:t}=e;return t!==void 0&&typeof t!=`boolean`?Promise.reject(TypeError(`force argument must be a boolean`)):(t??=N.force,r(this,o,`f`).close({force:t}))}destroy(){return r(this,o,`f`).destroy()}[(o=new WeakMap,s=new WeakMap,Symbol.dispose)](){this.close()}[Symbol.asyncDispose](){return this.close()}get maxThreads(){return r(this,o,`f`).options.maxThreads}get minThreads(){return r(this,o,`f`).options.minThreads}get options(){return r(this,o,`f`).options}get threads(){let e=[];for(let t of r(this,o,`f`).workers)e.push(t.worker);return e}get queueSize(){let e=r(this,o,`f`);return Math.max(e.taskQueue.size-e.pendingCapacity(),0)}get completed(){return r(this,o,`f`).completed}get histogram(){if(r(this,s,`f`)==null){let e={get runTime(){return this.histogram?.runTimeSummary},get waitTime(){return this.histogram?.waitTimeSummary},resetRunTime(){var e;(e=this.histogram)==null||e.resetRunTime()},resetWaitTime(){var e;(e=this.histogram)==null||e.resetWaitTime()}};Object.defineProperty(e,`histogram`,{value:r(this,o,`f`).histogram,writable:!1,enumerable:!1,configurable:!1}),n(this,s,e,`f`)}return r(this,s,`f`)}get utilization(){if(r(this,o,`f`).histogram==null)return 0;let e=r(this,o,`f`).histogram.runTimeCount;if(e===0)return 0;let t=this.duration*r(this,o,`f`).options.maxThreads;return r(this,o,`f`).histogram.runTimeSummary.mean/1e3*e/t}get duration(){return g.performance.now()-r(this,o,`f`).start}get needsDrain(){return r(this,o,`f`)._needsDrain}static get isWorkerThread(){return k.commonState.isWorkerThread}static get workerData(){return k.commonState.workerData}static get version(){return x.version}static get Piscina(){return e}static get FixedQueue(){return w.FixedQueue}static get ArrayTaskQueue(){return w.ArrayTaskQueue}static move(e){return typeof e==`object`&&e&&typeof e!=`function`&&((0,k.isTransferable)(e)||(e=d.types.isArrayBufferView(e)?new F(e):new P(e)),(0,k.markMovable)(e)),e}static get transferableSymbol(){return S.kTransferable}static get valueSymbol(){return S.kValue}static get queueOptionsSymbol(){return S.kQueueOptions}};t.default=L,t.Piscina=L,t.move=L.move,t.isWorkerThread=L.isWorkerThread,t.workerData=L.workerData})),T=t(n(((e,t)=>{t.exports=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(w()).default}))(),1),E=T.default;T.default.ArrayTaskQueue,T.default.FixedQueue,T.default.Piscina,T.default.isWorkerThread,T.default.move,T.default.queueOptionsSymbol,T.default.transferableSymbol,T.default.valueSymbol,T.default.version,T.default.workerData;var D=class{pool;constructor(e){this.pool=new E({filename:e.workerEntry,maxThreads:e.maxConcurrency??4,idleTimeout:e.idleTimeoutMs??3e4})}async run(e,t){return this.pool.run(e,{signal:t})}onMessage(e){return this.pool.on(`message`,e),()=>this.pool.off(`message`,e)}async dispose(){await this.pool.destroy()}},O=class{options;manifest;pool;constructor(e){this.options=e,this.manifest=e.manifest}async run(e,t,n){return this.pool??=new D(this.options),this.pool.run({config:e,manifest:n??this.manifest},t)}runWithReadiness(e,t,n){this.pool??=new D(this.options);let r=this.pool,a,o=!1,s,c=new Promise((t,n)=>{s=n,a=r.onMessage(n=>{i(n)&&(n.executionId!==e.executionId||n.cancelSubject!==e.cancelSubject||(o=!0,a?.(),t(n)))})}),l=r.run({config:e,manifest:n??this.manifest},t);return l.then(()=>{o||(o=!0,a?.(),s(Error(`Workflow worker completed before ready signal: ${e.executionId}`)))},e=>{o||(o=!0,a?.(),s(e instanceof Error?e:Error(String(e))))}),{result:l,ready:c}}async dispose(){await this.pool?.dispose()}};function k(e){return e.mode===`source`?s(e.moduleDir,`workflow-worker`,`worker-entry.ts`):s(e.moduleDir,`workflow-worker`,`worker-entry.mjs`)}function A(e,t){let n=t.executionHints?.requirements?.capabilities??[];if(n.length===0)return e;let r=e?.customCapabilities??[];return{...e,customCapabilities:[...new Set([...r,...n])]}}var j=class{options;constructor(e){this.options=e}run(e,t,n,r){let i=n??this.options.manifest,a=A(this.options.requirements,e),o=r?.dispatchMetadata;return this.options.dispatch({config:e,...i!==void 0&&{manifest:i},...a!==void 0&&{requirements:a},...o!==void 0&&{metadata:o}},t)}},M=class{#e;constructor(e){this.#e=e.bus}async run(e,t,n){let i=u.parse(e),o=await r(i);return d({config:await a(i,o,this.#e,t),loaded:o,bus:this.#e,signal:t})}};function N(){return{packages:[]}}function P(e){let t=o(e.runtimeModuleDir)===`src`?`source`:`dist`,n=F({moduleDir:e.runtimeModuleDir,defaultWorkerEntryMode:t,runner:e.workflowRunner,bus:e.bus});return{...n!==void 0&&{workflowRunner:n},executorConfig:{busUrl:e.busUrl,busAuth:{kind:`none`},platformDefaults:e.platformDefaults,makaioHome:e.makaioHome}}}function F(e){let{runner:t}=e;if(t)switch(t.mode){case void 0:case`in-process`:if(e.bus===void 0)throw Error(`InProcessWorkflowRunner requires a bus instance. Pass 'bus' to createNodeWorkflowRunner when runner.mode is 'in-process'.`);return new M({bus:e.bus});case`worker-node`:{let n=e.bus,r=t.dispatch??(n===void 0?void 0:(e,t)=>n.request(l.dispatch,{config:e.config,manifest:e.manifest,requirements:e.requirements,metadata:e.metadata},{signal:t}));if(r===void 0)throw Error(`WorkerNodeRunner requires either a dispatch function or a bus instance. Pass 'bus' to createNodeWorkflowRunner when runner.mode is 'worker-node'.`);return new j({dispatch:r,...t.manifest!==void 0&&{manifest:t.manifest},...t.requirements!==void 0&&{requirements:t.requirements}})}case`piscina`:return new O({workerEntry:t.workerEntry??k({moduleDir:e.moduleDir,mode:t.workerEntryMode??e.defaultWorkerEntryMode}),manifest:t.manifest??N(),maxConcurrency:t.maxConcurrency,idleTimeoutMs:t.idleTimeoutMs})}}function I(e){return e instanceof Error?e:Error(String(e??`WorkerNode wait aborted`))}function L(e){return typeof e.runWithReadiness==`function`}const R={persistentStorage:!0,customCapabilities:[`workflow.local-runtime`,`workflow.thin-runner`],suspensionStrategy:`wait-in-process`};var z=class{options;environment=`piscina`;baseCapabilities;constructor(e){this.options=e,this.baseCapabilities=c.parse({...R,...e.baseCapabilities,suspensionStrategy:e.baseCapabilities?.suspensionStrategy??R.suspensionStrategy})}get id(){return this.options.id}get displayName(){return this.options.displayName}async provision(e){let t=new AbortController,n=L(this.options.runner)?this.options.runner.runWithReadiness(e.workerConfig,t.signal,e.workerManifest):{result:this.options.runner.run(e.workerConfig,t.signal,e.workerManifest),ready:void 0},r=n.result,i=n.ready?.then(e=>({adapters:e.adapters}));return i?.catch(()=>void 0),r.catch(()=>void 0),{nodeId:e.nodeId,...i!==void 0&&{ready:i},waitForResult:async e=>{if(e.aborted)return t.abort(e.reason),Promise.reject(I(e.reason));let n,i=new Promise((e,t)=>{n=t}),a=()=>{t.abort(e.reason),n(I(e.reason))};e.addEventListener(`abort`,a,{once:!0});try{return await Promise.race([r,i])}finally{e.removeEventListener(`abort`,a)}},cancel:e=>(t.abort(e??`WorkerNode cancelled`),Promise.resolve()),terminate:()=>(t.abort(`WorkerNode terminated`),Promise.resolve())}}};export{j as a,M as i,F as n,k as o,P as r,O as s,z as t};
|
|
1
|
+
import{i as e,o as t,t as n}from"./chunk-DTipWd-i.mjs";import{n as r,o as i,t as a}from"./await-trigger-Cjfj0yp_.mjs";import{basename as o,join as s}from"node:path";import{WorkerNodeCapabilitiesSchema as c,WorkerNodeSubjects as l,WorkflowWorkerConfigSchema as u}from"@makaio/framework/contracts";import{runWorkflowOrchestrator as d}from"@makaio/framework/workflow-engine/workflow-orchestrator";var f=n(((e,t)=>{t.exports={name:`piscina`,version:`5.1.4`,description:`A fast, efficient Node.js Worker Thread Pool implementation`,main:`./dist/main.js`,types:`./dist/index.d.ts`,exports:{types:`./dist/index.d.ts`,import:`./dist/esm-wrapper.mjs`,require:`./dist/main.js`},engines:{node:`>=20.x`},scripts:{build:`tsc && gen-esm-wrapper . dist/esm-wrapper.mjs`,lint:`eslint`,test:`node scripts/run-tests.js --pattern='test/**/*test.ts'`,"test:ci":`npm run lint && npm run build && npm run test:coverage`,"test:coverage":`node scripts/run-tests.js --coverage --pattern='test/**/*test.ts'`,prepack:`npm run build`,benchmark:`node --allow-natives-syntax benchmark/index.js --scope all`,"benchmark:ci":`node --allow-natives-syntax benchmark/index.js --scope all --reporter json | jq '.[] | .name, .opsSec'`,"benchmark:simple":`node --allow-natives-syntax benchmark/index.js --scope simple:all`,"benchmark:simple:default":`node --allow-natives-syntax benchmark/index.js --scope simple`,"benchmark:simple:async":`node --allow-natives-syntax benchmark/index.js --scope simple:async`,"benchmark:startup":`node --allow-natives-syntax benchmark/index.js --scope startup`,"benchmark:queue":`node --allow-natives-syntax benchmark/index.js --scope queue`},repository:{type:`git`,url:`git+https://github.com/piscinajs/piscina.git`},keywords:[`fast`,`worker threads`,`thread pool`,`wade wilson`],author:`James M Snell <jasnell@gmail.com>`,contributors:[`Anna Henningsen <anna@addaleax.net>`,`Matteo Collina <matteo.collina@gmail.com>`,`Carlos Fuentes <me@metcoder.dev>`],license:`MIT`,devDependencies:{"@types/node":`^22.4.1`,"abort-controller":`^3.0.0`,"bench-node":`^0.7.0`,"concat-stream":`^2.0.0`,eslint:`^9.16.0`,"gen-esm-wrapper":`^1.1.1`,glob:`^11.0.2`,neostandard:`^0.12.0`,tsx:`^4.20.3`,typescript:`5.8.3`},optionalDependencies:{"@napi-rs/nice":`^1.0.4`},bugs:{url:`https://github.com/piscinajs/piscina/issues`},homepage:`https://github.com/piscinajs/piscina#readme`,directories:{example:`examples`,test:`test`}}})),p=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.kFieldCount=e.kResponseCountField=e.kRequestCountField=e.kQueueOptions=e.kValue=e.kTransferable=e.kWorkerData=e.kMovable=void 0,e.kMovable=Symbol(`Piscina.kMovable`),e.kWorkerData=Symbol(`Piscina.kWorkerData`),e.kTransferable=Symbol.for(`Piscina.transferable`),e.kValue=Symbol.for(`Piscina.valueOf`),e.kQueueOptions=Symbol.for(`Piscina.queueOptions`),e.kRequestCountField=0,e.kResponseCountField=1,e.kFieldCount=2})),m=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.AbortError=void 0,e.onabort=t,e.AbortError=class extends Error{constructor(e){super(`The task has been aborted`,{cause:e})}get name(){return`AbortError`}};function t(e,t){return`addEventListener`in e?(e.addEventListener(`abort`,t,{once:!0}),()=>e.removeEventListener(`abort`,t)):(e.once(`abort`,t),()=>e.removeListener(`abort`,t))}})),h=n((t=>{Object.defineProperty(t,`__esModule`,{value:!0}),t.commonState=t.READY=void 0,t.isTransferable=a,t.isMovable=o,t.markMovable=s,t.maybeFileURLToPath=c,t.getAvailableParallelism=l,t.promiseResolvers=u;let n=e(`node:url`),r=e(`node:os`),i=p();t.READY=`_WORKER_READY`;function a(e){return typeof e==`object`&&!!e&&i.kTransferable in e&&i.kValue in e}function o(e){return a(e)&&e[i.kMovable]===!0}function s(e){Object.defineProperty(e,i.kMovable,{enumerable:!1,configurable:!0,writable:!0,value:!0})}t.commonState={isWorkerThread:!1,workerData:void 0};function c(e){return e.startsWith(`file:`)?(0,n.fileURLToPath)(new n.URL(e)):e}function l(){return(0,r.availableParallelism)()}function u(){if(Promise.withResolvers!=null)return Promise.withResolvers();let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}})),g=n((t=>{var n=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,`__esModule`,{value:!0}),t.ArrayTaskQueue=void 0;let r=n(e(`node:assert`));t.ArrayTaskQueue=class{constructor(){this.tasks=[]}get size(){return this.tasks.length}shift(){return this.tasks.shift()??null}push(e){this.tasks.push(e)}remove(e){let t=this.tasks.indexOf(e);r.default.notStrictEqual(t,-1),this.tasks.splice(t,1)}}})),_=n((t=>{var n=t&&t.__classPrivateFieldGet||function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},r=t&&t.__classPrivateFieldSet||function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},i=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},a;Object.defineProperty(t,`__esModule`,{value:!0}),t.FixedQueue=void 0;let o=i(e(`node:assert`)),s=2048,c=s-1;var l=class{constructor(){this.bottom=0,this.top=0,this.list=Array(s),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&c)===this.bottom}push(e){this.list[this.top]=e,this.top=this.top+1&c}shift(){let e=this.list[this.bottom];return e===void 0?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&c,e)}remove(e){let t=this.list.indexOf(e);o.default.notStrictEqual(t,-1);let n=t;for(;;){let e=n+1&c;if(this.list[n]=this.list[e],this.list[n]===void 0)break;if(e===t){this.list[n]=void 0;break}n=e}this.top=this.top-1&c}};t.FixedQueue=class{constructor(){a.set(this,0),this.head=this.tail=new l}isEmpty(){return this.head.isEmpty()}push(e){var t;this.head.isFull()&&(this.head=this.head.next=new l),this.head.push(e),r(this,a,(t=n(this,a,`f`),t++,t),`f`)}shift(){var e;let t=this.tail,i=t.shift();return i!==null&&r(this,a,(e=n(this,a,`f`),e--,e),`f`),t.isEmpty()&&t.next!==null&&(this.tail=t.next,t.next=null),i}remove(e){var t;let i=null,o=this.tail;for(;;){if(o.list.includes(e)){o.remove(e),r(this,a,(t=n(this,a,`f`),t--,t),`f`);break}if(o.next===null)break;i=o,o=o.next}o.isEmpty()&&(i===null?o.next!==null&&(this.tail=o.next):o.next===null?this.head=i:i.next=o.next)}get size(){return n(this,a,`f`)}},a=new WeakMap})),v=n((t=>{Object.defineProperty(t,`__esModule`,{value:!0}),t.TaskInfo=t.FixedQueue=t.ArrayTaskQueue=void 0,t.isTaskQueue=l;let n=e(`node:perf_hooks`),r=e(`node:async_hooks`),i=m(),a=h(),o=p();var s=g();Object.defineProperty(t,`ArrayTaskQueue`,{enumerable:!0,get:function(){return s.ArrayTaskQueue}});var c=_();Object.defineProperty(t,`FixedQueue`,{enumerable:!0,get:function(){return c.FixedQueue}});function l(e){return typeof e==`object`&&!!e&&`size`in e&&typeof e.shift==`function`&&typeof e.remove==`function`&&typeof e.push==`function`}let u=0;t.TaskInfo=class extends r.AsyncResource{constructor({task:e,transferList:t,filename:r,name:i,abortSignal:s,triggerAsyncId:c},l){super(`Piscina.Task`,{requireManualDestroy:!0,triggerAsyncId:c}),this.workerInfo=null,this.aborted=!1,this._abortListener=()=>{this.aborted=!0},this._abortCleaner=null,this.callback=l,this.task=e,this.transferList=t,(0,a.isMovable)(e)&&(this.transferList??=[],this.transferList=this.transferList.concat(e[o.kTransferable]),this.task=e[o.kValue]),this.filename=r,this.name=i,this.taskId=u++,this.abortSignal=s,this.created=n.performance.now(),this.started=0}onAbort(e){this._abortListener=()=>{this.aborted=!0,e()}}setAbortListener(e){this._abortCleaner=(0,i.onabort)(e,this._abortListener)}releaseTask(){let e=this.task;return this.task=null,e}onResponse(e){}done(e,t){var n;this.runInAsyncScope(this.callback,null,e,t),this.emitDestroy(),(n=this._abortCleaner)==null||n.call(this)}get[o.kQueueOptions](){return this.task?.[o.kQueueOptions]??null}get interface(){return{taskId:this.taskId,filename:this.filename,name:this.name,created:this.created,isAbortable:this.abortSignal!==null,[o.kQueueOptions]:this[o.kQueueOptions]}}}})),y=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.Errors=void 0,e.Errors={ThreadTermination:()=>Error(`Terminating worker thread`),FilenameNotProvided:()=>Error(`filename must be provided to run() or in options object`),TaskQueueAtLimit:()=>Error(`Task queue is at limit`),NoTaskQueueAvailable:()=>Error(`No task queue available and all Workers are busy`),CloseTimeout:()=>Error(`Close operation timed out`)}})),b=n((t=>{var n=t&&t.__classPrivateFieldSet||function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},r=t&&t.__classPrivateFieldGet||function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},i,a;Object.defineProperty(t,`__esModule`,{value:!0}),t.PiscinaHistogramHandler=void 0;let o=e(`node:perf_hooks`);t.PiscinaHistogramHandler=class e{constructor(){i.set(this,void 0),a.set(this,void 0),n(this,i,(0,o.createHistogram)(),`f`),n(this,a,(0,o.createHistogram)(),`f`)}get runTimeSummary(){return e.createHistogramSummary(r(this,i,`f`))}get waitTimeSummary(){return e.createHistogramSummary(r(this,a,`f`))}get runTimeCount(){return r(this,i,`f`).count}recordRunTime(t){r(this,i,`f`).record(e.toHistogramIntegerNano(t))}recordWaitTime(t){r(this,a,`f`).record(e.toHistogramIntegerNano(t))}resetWaitTime(){r(this,a,`f`).reset()}resetRunTime(){r(this,i,`f`).reset()}static createHistogramSummary(e){let{mean:t,stddev:n,min:r,max:i}=e;return{average:t/1e3,mean:t/1e3,stddev:n/1e3,min:r/1e3,max:i/1e3,p0_001:e.percentile(.001)/1e3,p0_01:e.percentile(.01)/1e3,p0_1:e.percentile(.1)/1e3,p1:e.percentile(1)/1e3,p2_5:e.percentile(2.5)/1e3,p10:e.percentile(10)/1e3,p25:e.percentile(25)/1e3,p50:e.percentile(50)/1e3,p75:e.percentile(75)/1e3,p90:e.percentile(90)/1e3,p97_5:e.percentile(97.5)/1e3,p99:e.percentile(99)/1e3,p99_9:e.percentile(99.9)/1e3,p99_99:e.percentile(99.99)/1e3,p99_999:e.percentile(99.999)/1e3}}static toHistogramIntegerNano(e){return Math.max(1,Math.trunc(e*1e3))}},i=new WeakMap,a=new WeakMap})),x=n((t=>{var n=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,`__esModule`,{value:!0}),t.AsynchronouslyCreatedResourcePool=t.AsynchronouslyCreatedResource=void 0;let r=n(e(`node:assert`));t.AsynchronouslyCreatedResource=class{constructor(){this.onreadyListeners=[],this.ondestroyListeners=[]}markAsReady(){let e=this.onreadyListeners;(0,r.default)(e!=null),this.onreadyListeners=null;for(let t of e)t()}isReady(){return this.onreadyListeners==null}onReady(e){if(this.onreadyListeners==null){e();return}this.onreadyListeners.push(e)}onDestroy(e){this.ondestroyListeners!=null&&this.ondestroyListeners.push(e)}markAsDestroyed(){let e=this.ondestroyListeners;(0,r.default)(e!=null),this.ondestroyListeners=null;for(let t of e)t()}isDestroyed(){return this.ondestroyListeners==null}},t.AsynchronouslyCreatedResourcePool=class{constructor(e){this.pendingItems=new Set,this.readyItems=new Set,this.maximumUsage=e,this.onAvailableListeners=[],this.onTaskDoneListeners=[]}add(e){this.pendingItems.add(e),e.onReady(()=>{this.pendingItems.has(e)&&(this.pendingItems.delete(e),this.readyItems.add(e),this.maybeAvailable(e))})}delete(e){this.pendingItems.delete(e),this.readyItems.delete(e)}*[Symbol.iterator](){yield*this.pendingItems,yield*this.readyItems}get size(){return this.pendingItems.size+this.readyItems.size}maybeAvailable(e){if(e.currentUsage()<this.maximumUsage)for(let t of this.onAvailableListeners)t(e)}onAvailable(e){this.onAvailableListeners.push(e)}taskDone(e){for(let t=0;t<this.onTaskDoneListeners.length;t++)this.onTaskDoneListeners[t](e)}onTaskDone(e){this.onTaskDoneListeners.push(e)}getCurrentUsage(){let e=0;for(let t of this.readyItems){let n=t.currentUsage();Number.isFinite(n)&&(e+=n)}return e}}})),S=n((e=>{Object.defineProperty(e,`__esModule`,{value:!0}),e.LeastBusyBalancer=t;function t(e){let{maximumUsage:t}=e;return(e,n)=>{let r=null,i=t;for(let t of n){if(t.currentUsage===0){r=t;break}t.isRunningAbortableTask||e.isAbortable===!1&&t.currentUsage<i&&(r=t,i=t.currentUsage)}return r}}})),C=n((t=>{var n=t&&t.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),r=t&&t.__exportStar||function(e,t){for(var r in e)r!==`default`&&!Object.prototype.hasOwnProperty.call(t,r)&&n(t,e,r)},i=t&&t.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,`__esModule`,{value:!0}),t.AsynchronouslyCreatedResourcePool=t.WorkerInfo=void 0;let a=e(`node:worker_threads`),o=e(`node:perf_hooks`),s=i(e(`node:assert`)),c=y(),l=p(),u=b(),d=x();Object.defineProperty(t,`AsynchronouslyCreatedResourcePool`,{enumerable:!0,get:function(){return d.AsynchronouslyCreatedResourcePool}}),r(S(),t),t.WorkerInfo=class extends d.AsynchronouslyCreatedResource{constructor({worker:e,port:t,enableHistogram:n},r){super(),this.idleTimeout=null,this.lastSeenResponseCount=0,this.terminating=!1,this.destroyed=!1;let{filename:i,...s}=e;this.worker=new a.Worker(i,s),this.port=t,this.onMessage=r,this.port.on(`message`,this._handleResponse.bind(this)),this.taskInfos=new Map,this.sharedBuffer=new Int32Array(new SharedArrayBuffer(l.kFieldCount*Int32Array.BYTES_PER_ELEMENT)),this.histogram=n?(0,o.createHistogram)():null}get id(){return this.worker.threadId}onWorkerMessage(e){this.worker.on(`message`,e)}onWorkerError(e){this.worker.on(`error`,e)}onWorkerExit(e){this.worker.on(`exit`,e)}onPortClose(e){this.port.on(`close`,e)}init(e,t){return this.worker.postMessage(e,t),this}workerRef(){return this.worker.ref(),this}workerUnref(){return this.worker.unref(),this}destroy(){if(!(this.terminating||this.destroyed)){this.terminating=!0,this.clearIdleTimeout(),this.worker.terminate(),this.port.close();for(let e of this.taskInfos.values())e.done(c.Errors.ThreadTermination());this.taskInfos.clear(),this.terminating=!1,this.destroyed=!0,this.markAsDestroyed()}}setIdleTimeout(e,t,...n){this.idleTimeout=setTimeout(e,t,...n).unref()}clearIdleTimeout(){this.idleTimeout!=null&&(clearTimeout(this.idleTimeout),this.idleTimeout=null)}ref(){return this.port.ref(),this}unref(){return this.port.unref(),this}_handleResponse(e){var t;(t=this.histogram)==null||t.record(u.PiscinaHistogramHandler.toHistogramIntegerNano(e?.time)),this.onMessage(e),this.taskInfos.size===0&&this.unref()}postTask(e){(0,s.default)(!this.taskInfos.has(e.taskId)),(0,s.default)(!this.terminating&&!this.destroyed);let t={task:e.releaseTask(),taskId:e.taskId,filename:e.filename,name:e.name,histogramEnabled:this.histogram==null?0:1};try{this.port.postMessage(t,e.transferList),queueMicrotask(()=>this.clearIdleTimeout()),e.workerInfo=this,this.taskInfos.set(e.taskId,e),this.ref(),Atomics.add(this.sharedBuffer,l.kRequestCountField,1),Atomics.notify(this.sharedBuffer,l.kRequestCountField,1)}catch(t){e.done(t)}}processPendingMessages(){if(this.destroyed)return;let e=Atomics.load(this.sharedBuffer,l.kResponseCountField);if(e!==this.lastSeenResponseCount){this.lastSeenResponseCount=e;let t;for(;(t=(0,a.receiveMessageOnPort)(this.port))!=null;)this._handleResponse(t.message)}}isRunningAbortableTask(){if(this.taskInfos.size!==1)return!1;let[[,e]]=this.taskInfos;return e.abortSignal!=null}currentUsage(){return this.isRunningAbortableTask()?1/0:this.taskInfos.size}popTask(e){let t=this.taskInfos.get(e)??null;return t!=null&&this.taskInfos.delete(e),t}get interface(){let e=this;return{get id(){return e.worker.threadId},get currentUsage(){return e.currentUsage()},get isRunningAbortableTask(){return e.isRunningAbortableTask()},get histogram(){return e.histogram==null?null:u.PiscinaHistogramHandler.createHistogramSummary(e.histogram)},get terminating(){return e.terminating},get destroyed(){return e.destroyed},[l.kWorkerData]:e}}}})),w=n((t=>{var n=t&&t.__classPrivateFieldSet||function(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n},r=t&&t.__classPrivateFieldGet||function(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)},i,a,o,s;Object.defineProperty(t,`__esModule`,{value:!0}),t.ArrayTaskQueue=t.FixedQueue=t.version=t.queueOptionsSymbol=t.valueSymbol=t.transferableSymbol=t.Piscina=t.workerData=t.isWorkerThread=t.move=void 0;let c=e(`node:worker_threads`),l=e(`node:events`),u=e(`node:path`),d=e(`node:util`),g=e(`node:perf_hooks`),_=e(`node:timers/promises`),x=f();Object.defineProperty(t,`version`,{enumerable:!0,get:function(){return x.version}});let S=p();Object.defineProperty(t,`queueOptionsSymbol`,{enumerable:!0,get:function(){return S.kQueueOptions}}),Object.defineProperty(t,`transferableSymbol`,{enumerable:!0,get:function(){return S.kTransferable}}),Object.defineProperty(t,`valueSymbol`,{enumerable:!0,get:function(){return S.kValue}});let w=v();Object.defineProperty(t,`ArrayTaskQueue`,{enumerable:!0,get:function(){return w.ArrayTaskQueue}}),Object.defineProperty(t,`FixedQueue`,{enumerable:!0,get:function(){return w.FixedQueue}});let T=C(),E=m(),D=b(),O=y(),k=h(),A=(0,k.getAvailableParallelism)(),j={filename:null,name:`default`,minThreads:Math.max(Math.floor(A/2),1),maxThreads:A*1.5,idleTimeout:0,maxQueue:1/0,concurrentTasksPerWorker:1,atomics:`sync`,taskQueue:new w.ArrayTaskQueue,niceIncrement:0,trackUnmanagedFds:!0,closeTimeout:3e4,recordTiming:!0,workerHistogram:!1},M={transferList:void 0,filename:null,signal:null,name:null},N={force:!1};var P=class{constructor(e){i.set(this,void 0),n(this,i,e,`f`)}get[(i=new WeakMap,S.kTransferable)](){return r(this,i,`f`)}get[S.kValue](){return r(this,i,`f`)}},F=class{constructor(e){a.set(this,void 0),n(this,a,e,`f`)}get[(a=new WeakMap,S.kTransferable)](){return r(this,a,`f`).buffer}get[S.kValue](){return r(this,a,`f`)}},I=class{constructor(e,t){this.skipQueue=[],this.completed=0,this.histogram=null,this.start=g.performance.now(),this.inProcessPendingMessages=!1,this.startingUp=!1,this.closingUp=!1,this.workerFailsDuringBootstrap=!1,this.destroying=!1,this.publicInterface=e,this.taskQueue=t.taskQueue??new w.FixedQueue;let n=t.filename?(0,k.maybeFileURLToPath)(t.filename):null;this.options={...j,...t,filename:n,maxQueue:0},this.options.recordTiming&&(this.histogram=new D.PiscinaHistogramHandler),t.maxThreads!==void 0&&this.options.minThreads>=t.maxThreads&&(this.options.minThreads=t.maxThreads),t.minThreads!==void 0&&this.options.maxThreads<=t.minThreads&&(this.options.maxThreads=t.minThreads),t.maxQueue===`auto`?this.options.maxQueue=this.options.maxThreads**2:this.options.maxQueue=t.maxQueue??j.maxQueue,this.balancer=this.options.loadBalancer??(0,T.LeastBusyBalancer)({maximumUsage:this.options.concurrentTasksPerWorker}),this.workers=new T.AsynchronouslyCreatedResourcePool(this.options.concurrentTasksPerWorker),this.workers.onTaskDone(this._onWorkerTaskDone.bind(this)),this.maxCapacity=this.options.maxThreads*this.options.concurrentTasksPerWorker,this.startingUp=!0,this._ensureMinimumWorkers(),this.startingUp=!1,this._needsDrain=!1}_ensureMinimumWorkers(){if(!(this.closingUp||this.destroying))for(;this.workers.size<this.options.minThreads;)this._addNewWorker()}_addNewWorker(){if(this.closingUp===!0)return;let{port1:e,port2:t}=new c.MessageChannel,n=new T.WorkerInfo({worker:{filename:(0,u.resolve)(__dirname,`worker.js`),env:this.options.env,argv:this.options.argv,execArgv:this.options.execArgv,resourceLimits:this.options.resourceLimits,workerData:this.options.workerData,trackUnmanagedFds:this.options.trackUnmanagedFds},port:e,enableHistogram:this.options.workerHistogram},i.bind(this)),r={filename:this.options.filename,name:this.options.name,port:t,sharedBuffer:n.sharedBuffer,atomics:this.options.atomics,niceIncrement:this.options.niceIncrement};n.onDestroy(()=>{this.publicInterface.emit(`workerDestroy`,n.interface)}),n.onWorkerMessage(s.bind(this)),n.onWorkerError(l.bind(this)),n.onWorkerExit(f.bind(this)),n.onPortClose(()=>{n.workerRef()}),this.startingUp===!0?(n.markAsReady(),queueMicrotask(()=>{this.publicInterface.emit(`workerCreate`,n.interface),this._onWorkerReady(n)})):n.onReady(()=>{this.publicInterface.emit(`workerCreate`,n.interface),this._onWorkerReady(n)}),n.init(r,[t]).workerUnref(),this.workers.add(n);function i(e){let{taskId:t,result:r}=e,i=n.popTask(t);if(this.workers.taskDone(n),i==null){let t=Error(`Unexpected message from Worker: ${(0,d.inspect)(e)}`);this.publicInterface.emit(`error`,t)}else i.done(e.error,r);this._processPendingMessages()}function a(){n.currentUsage()===0&&n.unref(),n.isReady()===!1&&n.markAsReady()}function o(e){this.publicInterface.emit(`message`,e)}function s(e){e instanceof Object&&k.READY in e?a():o.call(this,e)}function l(e){this._onError(n,e,!1)}function f(e){if(this.destroying===!1){let t=Error(`worker exited with code: ${e}`);this._onError(n,t,!0)}}}_onError(e,t,n){let r=[...e.taskInfos.values()];if(e.taskInfos.clear(),this._removeWorker(e),e.isReady()&&!this.workerFailsDuringBootstrap?this._ensureMinimumWorkers():this.workerFailsDuringBootstrap=!0,r.length>0)for(let e of r)e.done(t,null);else n||this.publicInterface.emit(`error`,t)}_processPendingMessages(){if(!(this.inProcessPendingMessages||this.options.atomics===`disabled`)){this.inProcessPendingMessages=!0;try{for(let e of this.workers)e.processPendingMessages()}finally{this.inProcessPendingMessages=!1}}}_removeWorker(e){e.destroy(),this.workers.delete(e)}_onWorkerReady(e){this._onWorkerAvailable(e)}_onWorkerTaskDone(e){this._onWorkerAvailable(e)}_onWorkerAvailable(e){let t=null;for(;this.taskQueue.size>0||this.skipQueue.length>0;){let e=this.skipQueue.shift()||this.taskQueue.shift();if(t??=[...this.workers].map(e=>e.interface),!this._distributeTask(e,t))if(this.workers.size<this.options.maxThreads){this._addNewWorker();continue}else break}this.options.idleTimeout!==1/0&&e.currentUsage()===0&&this.workers.size>this.options.minThreads&&e.setIdleTimeout(()=>{e.currentUsage()===0&&this.workers.size>this.options.minThreads&&this._removeWorker(e)},this.options.idleTimeout)}_distributeTask(e,t){var n;if(e.aborted)return!0;let r=this.balancer(e.interface,t);if(r!=null&&r[S.kWorkerData]!=null){let t=g.performance.now();return(n=this.histogram)==null||n.recordWaitTime(t-e.created),e.started=t,r[S.kWorkerData].postTask(e),queueMicrotask(()=>this._maybeDrain()),!0}return e.abortSignal==null?this.taskQueue.push(e):this.skipQueue.push(e),!1}runTask(e,t){let{filename:n,name:r}=t,{transferList:i=[]}=t;if(n??=this.options.filename,r??=this.options.name,typeof n!=`string`)return Promise.reject(O.Errors.FilenameNotProvided());n=(0,k.maybeFileURLToPath)(n);let a;if(this.closingUp||this.destroying){let e=new AbortController;e.abort(`queue is being terminated`),a=e.signal}else a=t.signal??null;let{promise:o,resolve:s,reject:c}=(0,k.promiseResolvers)(),l=new w.TaskInfo({task:e,transferList:i,filename:n,name:r,abortSignal:a,triggerAsyncId:this.publicInterface.asyncResource.asyncId()},(e,t)=>{var n;this.completed++,l.started&&((n=this.histogram)==null||n.recordRunTime(g.performance.now()-l.started)),e===null?s(t):c(e),queueMicrotask(this._maybeDrain.bind(this))});if(a!=null){if(a.aborted)return c(new E.AbortError(a.reason)),o;l.onAbort(()=>{c(new E.AbortError(a.reason)),l.workerInfo==null?this.taskQueue.remove(l):(this._removeWorker(l.workerInfo),this._ensureMinimumWorkers())}),l.setAbortListener(a)}if(this.taskQueue.size>0){let e=this.options.maxQueue+this.pendingCapacity();return this.taskQueue.size>=e?this.options.maxQueue===0?c(O.Errors.NoTaskQueueAvailable()):c(O.Errors.TaskQueueAtLimit()):this.taskQueue.push(l),queueMicrotask(this._maybeDrain.bind(this)),o}let u=[...this.workers.readyItems].map(e=>e.interface);return this._distributeTask(l,u)||(this.workers.size<this.options.maxThreads&&this._addNewWorker(),this.options.maxQueue<=0&&this.pendingCapacity()===0&&c(O.Errors.NoTaskQueueAvailable())),queueMicrotask(this._maybeDrain.bind(this)),o}pendingCapacity(){return this.workers.pendingItems.size*this.options.concurrentTasksPerWorker}_maybeDrain(){let{maxCapacity:e}=this,t=this.workers.getCurrentUsage();e===t?(this._needsDrain=!0,queueMicrotask(()=>this.publicInterface.emit(`needsDrain`))):e>t&&this._needsDrain&&(this._needsDrain=!1,queueMicrotask(()=>this.publicInterface.emit(`drain`)))}async destroy(){for(this.destroying=!0;this.skipQueue.length>0;)this.skipQueue.shift().done(Error(`Terminating worker thread`));for(;this.taskQueue.size>0;)this.taskQueue.shift().done(Error(`Terminating worker thread`));let e=[];for(;this.workers.size>0;){let[t]=this.workers;e.push((0,l.once)(t.worker,`exit`)),this._removeWorker(t)}await Promise.allSettled(e),this.destroying=!1}async close(e){if(this.closingUp=!0,e.force){let e=this.skipQueue.length;for(let t=0;t<e;t++){let e=this.skipQueue.shift();e.workerInfo===null?e.done(new E.AbortError(`pool is closed`)):this.skipQueue.push(e)}let t=this.taskQueue.size;for(let e=0;e<t;e++){let e=this.taskQueue.shift();e.workerInfo===null?e.done(new E.AbortError(`pool is closed`)):this.taskQueue.push(e)}}let t=()=>new Promise(e=>{let t=this.workers.size;if(t===0){e();return}let n=0,r=r=>{r.taskInfos.size===0&&n++,t===n&&e()};this.workers.onTaskDone(r);for(let e of this.workers)r(e),this.workers.onTaskDone(r)}),n=async e=>{throw await(0,_.setTimeout)(e,null,{ref:!1}),O.Errors.CloseTimeout()};try{await Promise.race([t(),n(this.options.closeTimeout)])}catch(e){this.publicInterface.emit(`error`,e)}finally{await this.destroy(),this.publicInterface.emit(`close`),this.closingUp=!1}}},L=class e extends l.EventEmitterAsyncResource{constructor(e={}){if(super({...e,name:`Piscina`}),o.set(this,void 0),s.set(this,null),typeof e.filename!=`string`&&e.filename!=null)throw TypeError(`options.filename must be a string or null`);if(typeof e.name!=`string`&&e.name!=null)throw TypeError(`options.name must be a string or null`);if(e.minThreads!==void 0&&(typeof e.minThreads!=`number`||e.minThreads<0))throw TypeError(`options.minThreads must be a non-negative integer`);if(e.maxThreads!==void 0&&(typeof e.maxThreads!=`number`||e.maxThreads<1))throw TypeError(`options.maxThreads must be a positive integer`);if(e.minThreads!==void 0&&e.maxThreads!==void 0&&e.minThreads>e.maxThreads)throw RangeError(`options.minThreads and options.maxThreads must not conflict`);if(e.idleTimeout!==void 0&&(typeof e.idleTimeout!=`number`||e.idleTimeout<0))throw TypeError(`options.idleTimeout must be a non-negative integer`);if(e.maxQueue!==void 0&&e.maxQueue!==`auto`&&(typeof e.maxQueue!=`number`||e.maxQueue<0))throw TypeError(`options.maxQueue must be a non-negative integer`);if(e.concurrentTasksPerWorker!==void 0&&(typeof e.concurrentTasksPerWorker!=`number`||e.concurrentTasksPerWorker<1))throw TypeError(`options.concurrentTasksPerWorker must be a positive integer`);if(e.atomics!=null&&(typeof e.atomics!=`string`||![`sync`,`async`,`disabled`].includes(e.atomics)))throw TypeError(`options.atomics should be a value of sync, sync or disabled.`);if(e.resourceLimits!==void 0&&(typeof e.resourceLimits!=`object`||e.resourceLimits===null))throw TypeError(`options.resourceLimits must be an object`);if(e.taskQueue!==void 0&&!(0,w.isTaskQueue)(e.taskQueue))throw TypeError(`options.taskQueue must be a TaskQueue object`);if(e.niceIncrement!==void 0&&(typeof e.niceIncrement!=`number`||e.niceIncrement<0&&process.platform!==`win32`))throw TypeError(`options.niceIncrement must be a non-negative integer on Unix systems`);if(e.trackUnmanagedFds!==void 0&&typeof e.trackUnmanagedFds!=`boolean`)throw TypeError(`options.trackUnmanagedFds must be a boolean value`);if(e.closeTimeout!==void 0&&(typeof e.closeTimeout!=`number`||e.closeTimeout<0))throw TypeError(`options.closeTimeout must be a non-negative integer`);if(e.loadBalancer!==void 0&&(typeof e.loadBalancer!=`function`||e.loadBalancer.length<1))throw TypeError(`options.loadBalancer must be a function with at least two args`);if(e.workerHistogram!==void 0&&typeof e.workerHistogram!=`boolean`)throw TypeError(`options.workerHistogram must be a boolean`);n(this,o,new I(this,e),`f`)}run(e,t=M){if(typeof t!=`object`||!t)return Promise.reject(TypeError(`options must be an object`));let{transferList:n,filename:i,name:a,signal:s}=t;return n!==void 0&&!Array.isArray(n)?Promise.reject(TypeError(`transferList argument must be an Array`)):i!=null&&typeof i!=`string`?Promise.reject(TypeError(`filename argument must be a string`)):a!=null&&typeof a!=`string`?Promise.reject(TypeError(`name argument must be a string`)):s!=null&&typeof s!=`object`?Promise.reject(TypeError(`signal argument must be an object`)):r(this,o,`f`).runTask(e,{transferList:n,filename:i,name:a,signal:s})}async close(e=N){if(typeof e!=`object`||!e)throw TypeError(`options must be an object`);let{force:t}=e;return t!==void 0&&typeof t!=`boolean`?Promise.reject(TypeError(`force argument must be a boolean`)):(t??=N.force,r(this,o,`f`).close({force:t}))}destroy(){return r(this,o,`f`).destroy()}[(o=new WeakMap,s=new WeakMap,Symbol.dispose)](){this.close()}[Symbol.asyncDispose](){return this.close()}get maxThreads(){return r(this,o,`f`).options.maxThreads}get minThreads(){return r(this,o,`f`).options.minThreads}get options(){return r(this,o,`f`).options}get threads(){let e=[];for(let t of r(this,o,`f`).workers)e.push(t.worker);return e}get queueSize(){let e=r(this,o,`f`);return Math.max(e.taskQueue.size-e.pendingCapacity(),0)}get completed(){return r(this,o,`f`).completed}get histogram(){if(r(this,s,`f`)==null){let e={get runTime(){return this.histogram?.runTimeSummary},get waitTime(){return this.histogram?.waitTimeSummary},resetRunTime(){var e;(e=this.histogram)==null||e.resetRunTime()},resetWaitTime(){var e;(e=this.histogram)==null||e.resetWaitTime()}};Object.defineProperty(e,`histogram`,{value:r(this,o,`f`).histogram,writable:!1,enumerable:!1,configurable:!1}),n(this,s,e,`f`)}return r(this,s,`f`)}get utilization(){if(r(this,o,`f`).histogram==null)return 0;let e=r(this,o,`f`).histogram.runTimeCount;if(e===0)return 0;let t=this.duration*r(this,o,`f`).options.maxThreads;return r(this,o,`f`).histogram.runTimeSummary.mean/1e3*e/t}get duration(){return g.performance.now()-r(this,o,`f`).start}get needsDrain(){return r(this,o,`f`)._needsDrain}static get isWorkerThread(){return k.commonState.isWorkerThread}static get workerData(){return k.commonState.workerData}static get version(){return x.version}static get Piscina(){return e}static get FixedQueue(){return w.FixedQueue}static get ArrayTaskQueue(){return w.ArrayTaskQueue}static move(e){return typeof e==`object`&&e&&typeof e!=`function`&&((0,k.isTransferable)(e)||(e=d.types.isArrayBufferView(e)?new F(e):new P(e)),(0,k.markMovable)(e)),e}static get transferableSymbol(){return S.kTransferable}static get valueSymbol(){return S.kValue}static get queueOptionsSymbol(){return S.kQueueOptions}};t.default=L,t.Piscina=L,t.move=L.move,t.isWorkerThread=L.isWorkerThread,t.workerData=L.workerData})),T=t(n(((e,t)=>{t.exports=(e&&e.__importDefault||function(e){return e&&e.__esModule?e:{default:e}})(w()).default}))(),1),E=T.default;T.default.ArrayTaskQueue,T.default.FixedQueue,T.default.Piscina,T.default.isWorkerThread,T.default.move,T.default.queueOptionsSymbol,T.default.transferableSymbol,T.default.valueSymbol,T.default.version,T.default.workerData;var D=class{pool;constructor(e){this.pool=new E({filename:e.workerEntry,maxThreads:e.maxConcurrency??4,idleTimeout:e.idleTimeoutMs??3e4})}async run(e,t){return this.pool.run(e,{signal:t})}onMessage(e){return this.pool.on(`message`,e),()=>this.pool.off(`message`,e)}async dispose(){await this.pool.destroy()}},O=class{options;manifest;pool;constructor(e){this.options=e,this.manifest=e.manifest}async run(e,t,n){return this.pool??=new D(this.options),this.pool.run({config:e,manifest:n??this.manifest},t)}runWithReadiness(e,t,n){this.pool??=new D(this.options);let r=this.pool,a,o=!1,s,c=new Promise((t,n)=>{s=n,a=r.onMessage(n=>{i(n)&&(n.executionId!==e.executionId||n.cancelSubject!==e.cancelSubject||(o=!0,a?.(),t(n)))})}),l=r.run({config:e,manifest:n??this.manifest},t);return l.then(()=>{o||(o=!0,a?.(),s(Error(`Workflow worker completed before ready signal: ${e.executionId}`)))},e=>{o||(o=!0,a?.(),s(e instanceof Error?e:Error(String(e))))}),{result:l,ready:c}}async dispose(){await this.pool?.dispose()}};function k(e){return e.mode===`source`?s(e.moduleDir,`workflow-worker`,`worker-entry.ts`):s(e.moduleDir,`workflow-worker`,`worker-entry.mjs`)}function A(e,t){let n=t.executionHints?.requirements?.capabilities??[];if(n.length===0)return e;let r=e?.customCapabilities??[];return{...e,customCapabilities:[...new Set([...r,...n])]}}var j=class{options;constructor(e){this.options=e}run(e,t,n,r){let i=n??this.options.manifest,a=A(this.options.requirements,e),o=r?.dispatchMetadata;return this.options.dispatch({config:e,...i!==void 0&&{manifest:i},...a!==void 0&&{requirements:a},...o!==void 0&&{metadata:o}},t)}},M=class{#e;constructor(e){this.#e=e.bus}async run(e,t,n){let i=u.parse(e),o=await r(i);return d({config:await a(i,o,this.#e,t),loaded:o,bus:this.#e,signal:t})}};function N(){return{packages:[]}}function P(e){let t=o(e.runtimeModuleDir)===`src`?`source`:`dist`,n=F({moduleDir:e.runtimeModuleDir,defaultWorkerEntryMode:t,runner:e.workflowRunner,bus:e.bus});return{...n!==void 0&&{workflowRunner:n},executorConfig:{busUrl:e.busUrl,busAuth:{kind:`none`},platformDefaults:e.platformDefaults,makaioHome:e.makaioHome}}}function F(e){let{runner:t}=e;if(t)switch(t.mode){case void 0:case`in-process`:if(e.bus===void 0)throw Error(`InProcessWorkflowRunner requires a bus instance. Pass 'bus' to createNodeWorkflowRunner when runner.mode is 'in-process'.`);return new M({bus:e.bus});case`worker-node`:{let n=e.bus,r=t.dispatch??(n===void 0?void 0:(e,t)=>n.request(l.dispatch,{config:e.config,manifest:e.manifest,requirements:e.requirements,metadata:e.metadata},{signal:t}));if(r===void 0)throw Error(`WorkerNodeRunner requires either a dispatch function or a bus instance. Pass 'bus' to createNodeWorkflowRunner when runner.mode is 'worker-node'.`);return new j({dispatch:r,...t.manifest!==void 0&&{manifest:t.manifest},...t.requirements!==void 0&&{requirements:t.requirements}})}case`piscina`:return new O({workerEntry:t.workerEntry??k({moduleDir:e.moduleDir,mode:t.workerEntryMode??e.defaultWorkerEntryMode}),manifest:t.manifest??N(),maxConcurrency:t.maxConcurrency,idleTimeoutMs:t.idleTimeoutMs})}}function I(e){return e instanceof Error?e:Error(String(e??`WorkerNode wait aborted`))}function L(e){return typeof e.runWithReadiness==`function`}const R={persistentStorage:!0,customCapabilities:[`workflow.local-runtime`,`workflow.thin-runner`],suspensionStrategy:`wait-in-process`};var z=class{options;environment=`piscina`;baseCapabilities;constructor(e){this.options=e,this.baseCapabilities=c.parse({...R,...e.baseCapabilities,suspensionStrategy:e.baseCapabilities?.suspensionStrategy??R.suspensionStrategy})}get id(){return this.options.id}get displayName(){return this.options.displayName}async provision(e){let t=new AbortController,n=L(this.options.runner)?this.options.runner.runWithReadiness(e.workerConfig,t.signal,e.workerManifest):{result:this.options.runner.run(e.workerConfig,t.signal,e.workerManifest),ready:void 0},r=n.result,i=n.ready?.then(e=>({adapters:e.adapters}));return i?.catch(()=>void 0),r.catch(()=>void 0),{nodeId:e.nodeId,...i!==void 0&&{ready:i},waitForResult:async e=>{if(e.aborted)return t.abort(e.reason),Promise.reject(I(e.reason));let n,i=new Promise((e,t)=>{n=t}),a=()=>{t.abort(e.reason),n(I(e.reason))};e.addEventListener(`abort`,a,{once:!0});try{return await Promise.race([r,i])}finally{e.removeEventListener(`abort`,a)}},cancel:e=>(t.abort(e??`WorkerNode cancelled`),Promise.resolve()),terminate:()=>(t.abort(`WorkerNode terminated`),Promise.resolve())}}};export{j as a,M as i,F as n,k as o,P as r,O as s,z as t};
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e,a as t,c as n,d as r,f as i,g as a,h as o,i as s,l as c,m as l,o as u,p as d,s as f,st as p,t as m,u as h,v as g}from"./schemas-BWasvfw2.mjs";import"./compression-DMoeVgKx.mjs";import"./provider-context-DjSUpHSM.mjs";import"./contracts/adapter/schemas/session-lineage.mjs";import{createBusNamespace as _}from"@makaio/framework/core";const v={getCapabilities:p,startAgent:g,infer:e,listAgents:a,getAgent:o,stopAgent:l,rehydrateAgent:d,getConfigSchema:i,"agent.created":r,"session.created":h,"session.discovered":m,"session.usage":c,"session.closed":n,log:f,error:u,initialized:t,quota:s},y=_(`adapter`,v),b=y.subjects;export{b as n,v as r,y as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{pathToFileURL as e}from"node:url";import{mkdir as t,rm as n,writeFile as r}from"node:fs/promises";import{basename as i,join as a}from"node:path";import{randomBytes as o}from"node:crypto";import{WorkflowDefinitionSchema as s,WorkflowError as c,WorkflowErrorCode as l}from"@makaio/framework/contracts";import{tmpdir as u}from"node:os";function d(e,t,n=[]){return{type:`makaio.workflow-worker.ready`,executionId:e,cancelSubject:t,adapters:n}}function f(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.type===`makaio.workflow-worker.ready`&&typeof t.executionId==`string`&&typeof t.cancelSubject==`string`&&Array.isArray(t.adapters)&&t.adapters.every(e=>typeof e==`string`)}function p(e){if(typeof e!=`object`||!e)throw new c(l.NOT_EXECUTABLE,`Invalid workflow module default export: expected an object with 'definition' and 'runtimeHandlers', got ${typeof e}.`);let t=e;if(!(t.runtimeHandlers instanceof Map))throw new c(l.NOT_EXECUTABLE,`Invalid workflow module default export: 'runtimeHandlers' must be a Map instance.`);let n=s.safeParse(t.definition);if(!n.success)throw new c(l.NOT_EXECUTABLE,`Invalid workflow module default export: 'definition' must satisfy WorkflowDefinitionSchema. `+n.error.message);let r=m(t.zodSchemas)?t.zodSchemas:void 0,i=t.runtimeLoopGates instanceof Map?t.runtimeLoopGates:void 0;return{definition:n.data,runtimeHandlers:t.runtimeHandlers,...r===void 0?{}:{zodSchemas:r},...i===void 0?{}:{runtimeLoopGates:i}}}function m(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&`gates`in e}async function h(e,s){let c=i(e);if(!c||c===`.`||c===`..`)throw Error(`Invalid workflow source filename: ${e}`);let l=a(u(),`makaio-wf-${o(6).toString(`hex`)}`);await t(l,{recursive:!0});let d=a(l,c.endsWith(`.mjs`)?c:`${c}.mjs`);try{await r(d,s,`utf8`)}catch(e){throw await n(l,{recursive:!0,force:!0}).catch(()=>{}),e}return{tempDir:l,tempPath:d}}function g(e){return typeof e==`object`&&e&&Array.isArray(e.workflows)?e.workflows.map(p):[p(e)]}async function _(t){if(t.kind===`path`)return g((await import(e(t.path).href)).default);let{tempDir:r,tempPath:i}=await h(t.filename,t.source);try{return g((await import(e(i).href)).default)}finally{await n(r,{recursive:!0,force:!0})}}async function v(e){if(e.kind===`definition`)throw new c(l.NOT_EXECUTABLE,`Definition-sourced workers are handled by the workflow executor, not the file loader. Received source: ${JSON.stringify(e)}`);let t=await _(e);if(t.length!==1)throw new c(l.NOT_EXECUTABLE,`loadWorkflowModule expects a single workflow export, but the module exported ${String(t.length)} workflows. Use loadWorkflowModules for bundle exports.`);return t[0]}async function y(e){if(e.source.kind===`definition`){if(e.definition===void 0)throw Error(`Definition-sourced worker config for workflowId "${e.source.workflowId}" is missing the required 'definition' field. Ensure the executor populates WorkflowWorkerConfig.definition before dispatching.`);return{definition:e.definition,runtimeHandlers:new Map}}let t=await v(e.source);return b(e,t),e.definition===void 0?t:{...t,definition:e.definition}}function b(e,t){if(e.workflowId!==e.executionId&&t.definition.id!==e.workflowId)throw new c(l.SOURCE_MISMATCH,`Source-backed workflow for logical workflow '${e.workflowId}' loaded definition '${t.definition.id}'.`)}function x(e){let t=e.indexOf(`.`);if(t<=0||t===e.length-1)throw Error(`Invalid trigger subject: ${e}`);return{subject:e.slice(t+1),$meta:{namespace:e.slice(0,t),isRequest:!1,payload:{},local:!1,channel:!1}}}function S(e,t,n){return new Promise((r,i)=>{if(n.aborted){i(n.reason??Error(`Await-trigger aborted`));return}let a=[];function o(){for(let e of a)e();a.length=0}let s=()=>{o(),i(n.reason??Error(`Await-trigger aborted`))};n.addEventListener(`abort`,s,{once:!0}),a.push(()=>n.removeEventListener(`abort`,s));try{for(let n of t){let t=x(n.subject),i=e.on(t,e=>{o(),r(e.payload)},n.filter?{filter:n.filter}:void 0);a.push(i)}}catch(e){o(),i(e)}})}async function C(e,t,n,r){let i=(t.definition.triggers??[]).filter(e=>e.type===`bus-event`);if(Object.keys(e.triggerPayload).length!==0||i.length===0)return e;let a=await S(n,i,r);return{...e,triggerPayload:a}}export{d as a,_ as i,y as n,f as o,v as r,C as t};
|