@makaio/framework 1.0.0-dev-1782480236258 → 1.0.0-dev-1783355411417
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.makaio-build.json +2 -2
- package/dist/adapter-BRxCc72E.mjs +1 -0
- package/dist/adapters/index.d.mts +11 -2
- package/dist/adapters/index.mjs +1 -1
- package/dist/adapters/node.d.mts +1 -1
- package/dist/{base-orchestrator-Cw0vpNgB.d.mts → base-orchestrator-BNysGvaM.d.mts} +70 -2
- package/dist/bus/index.d.mts +39 -1
- package/dist/bus/index.mjs +1 -1
- package/dist/bus-D-ioC0DE.mjs +1 -0
- package/dist/bus-rgUFuO2a.mjs +2 -0
- package/dist/{client-BcfR-LJC.mjs → client-BgUjVbXX.mjs} +1 -1
- package/dist/contracts/adapter/index.d.mts +1 -1
- 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/client/index.d.mts +1 -1
- package/dist/contracts/client/index.mjs +1 -1
- package/dist/contracts/config/index.d.mts +6 -6
- package/dist/contracts/extension/index.d.mts +2 -2
- package/dist/contracts/facet/index.d.mts +1 -1
- package/dist/contracts/index.d.mts +14 -14
- package/dist/contracts/index.mjs +1 -1
- package/dist/contracts/materialization/index.d.mts +3 -3
- package/dist/contracts/provider/index.d.mts +1 -1
- package/dist/contracts/session/index.d.mts +3 -3
- package/dist/contracts/session/index.mjs +1 -1
- package/dist/contracts/workflow/index.d.mts +2 -2
- package/dist/contracts/workflow/index.mjs +1 -1
- package/dist/{definition-DePb3ke-.d.mts → definition-b9jyJqPD.d.mts} +1 -1
- package/dist/drizzle/0021_m_mr8e1j84.sql +3 -0
- package/dist/drizzle/0022_m_mr8i4ky3.sql +43 -0
- package/dist/drizzle/meta/_journal.json +14 -0
- package/dist/{handler-2bPhRn0u.mjs → handler-BFNvtv5t.mjs} +1 -1
- package/dist/handlers-v47Gbsr1.mjs +57 -0
- package/dist/hooks/index.d.mts +8 -0
- package/dist/hooks/index.mjs +1 -1
- package/dist/{index-BhOLtp0B.d.mts → index-31vR1sxk.d.mts} +47 -29
- package/dist/{index-Clqt7Nm3.d.mts → index-3J0HZlPH.d.mts} +372 -87
- package/dist/{index-D4gn93gL.d.mts → index-3X0368CL.d.mts} +12 -12
- package/dist/{index-gAFwNiJT.d.mts → index-BYfSAJRC.d.mts} +64 -0
- package/dist/{index-B1XsbrAr.d.mts → index-BwGfdbI0.d.mts} +6 -6
- package/dist/{index-D8ScOpus.d.mts → index-C5C1tk9f.d.mts} +222 -9
- package/dist/{index-Cvjnj7Zh.d.mts → index-C6Ys8pxt.d.mts} +5 -5
- package/dist/{index-mU2lnU7O.d.mts → index-CqCe7Phc.d.mts} +6 -6
- package/dist/{index-Cyi7y_aG.d.mts → index-D6aAzr32.d.mts} +20 -20
- package/dist/{index-wfSedMR9.d.mts → index-D7rWAEY0.d.mts} +2 -1
- package/dist/{index-CYHWOXUm.d.mts → index-DEzdNQum.d.mts} +1 -1
- package/dist/{index-DsLpP5ek.d.mts → index-DQYj8-53.d.mts} +1 -1
- package/dist/{index-0WhPbKnH.d.mts → index-DV4nRk0h.d.mts} +21 -21
- package/dist/{index-C6SLILCZ.d.mts → index-DvHYpi-J.d.mts} +378 -176
- package/dist/{index-BMbmoarE.d.mts → index-O08Q2ikz.d.mts} +8 -8
- package/dist/kernel/extension/index.d.mts +1 -1
- package/dist/kernel/index.d.mts +2 -2
- package/dist/kernel/observability/index.d.mts +1 -1
- package/dist/{lib-Ba55od_d.mjs → lib-BOmKyjWD.mjs} +1 -1
- package/dist/{lib-CM_BUxN8.mjs → lib-DLZYp5z3.mjs} +1 -1
- package/dist/{loop-gate-handlers-BLoGCWMQ.mjs → loop-gate-handlers-Bjmat-K3.mjs} +1 -1
- package/dist/{namespace-CGxFYDlK.d.mts → namespace-B4cV_pk3.d.mts} +32 -32
- package/dist/{namespace-LUNf8zo5.d.mts → namespace-D1_9WVCo.d.mts} +157 -0
- package/dist/{namespace-BsYKEMd8.d.mts → namespace-DAj_riOn.d.mts} +138 -0
- package/dist/{namespace-BeMGmLrp.d.mts → namespace-DhDY0juT.d.mts} +75 -9
- package/dist/{namespace-Bmi5bjm4.d.mts → namespace-DmqoDDRD.d.mts} +156 -20
- package/dist/namespace-dFBD2ZmS.mjs +1 -0
- package/dist/node/transports/index.d.mts +8 -0
- package/dist/node/transports/index.mjs +2 -2
- package/dist/orchestrator-shared-ChygCvR1.mjs +1 -0
- package/dist/{orchestrator-shared-ChOdIgh6.d.mts → orchestrator-shared-DFLb1otg.d.mts} +9 -3
- package/dist/package-BmRhhi-3.mjs +1 -0
- package/dist/package.json +1 -1
- package/dist/runtime-node/index.mjs +1 -1
- package/dist/schema-7aKBGB7S.mjs +1 -0
- package/dist/{schema-DHlTAy0N.mjs → schema-CHp6I33k.mjs} +1 -1
- package/dist/{schema-Bf_ZNjif.d.mts → schema-DLNBajAV.d.mts} +23 -1
- package/dist/{schemas-D512XweP.d.mts → schemas-DMMWmWjq.d.mts} +4 -4
- package/dist/schemas-DZGnr9Tl.mjs +1 -0
- package/dist/{schemas-C6TVJ80V2.d.mts → schemas-DuuVuhHX2.d.mts} +2 -2
- package/dist/schemas-ftgVeWIG.mjs +1 -0
- package/dist/scoped-bus-CZId-Df8.mjs +1 -0
- package/dist/services/adapter-subsystem/index.d.mts +2 -2
- package/dist/services/adapter-subsystem/namespace.d.mts +1 -1
- package/dist/services/execution-target/index.d.mts +1 -1
- package/dist/services/filesystem/namespace.d.mts +6 -6
- package/dist/services/filesystem/schemas.d.mts +3 -3
- package/dist/services/harness/index.d.mts +1 -1
- package/dist/services/harness/index.mjs +1 -1
- package/dist/services/index.d.mts +103 -34
- 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 +73 -6
- package/dist/services/log-import/index.mjs +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.d.mts +56 -2
- package/dist/services/log-import/namespace.mjs +1 -1
- package/dist/services/log-import/schemas.d.mts +45 -1
- package/dist/services/log-import/schemas.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 +8 -8
- package/dist/services/session/index.mjs +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/storage/schema.mjs +1 -1
- package/dist/services/session/testing/index.mjs +9 -4
- 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/settings/namespace.d.mts +5 -5
- package/dist/services/settings/storage/extension-configs/namespace.d.mts +3 -3
- package/dist/services/subagent-template/index.d.mts +1 -1
- package/dist/services/subagent-template/schemas.d.mts +1 -1
- package/dist/services/tool-approval/index.mjs +1 -1
- package/dist/services/tools/index.mjs +1 -1
- package/dist/services/turn/index.d.mts +1 -1
- package/dist/services/turn/namespace.d.mts +1 -1
- package/dist/services/turn/schemas.d.mts +89 -0
- package/dist/services/turn/schemas.mjs +1 -1
- package/dist/session-CKWfn3oc.mjs +1 -0
- package/dist/session-DCbJwYEU.mjs +69 -0
- package/dist/{session-lineage-5-wRBzuC.d.mts → session-lineage-DR-9DU-U.d.mts} +1 -1
- package/dist/storage/drizzle/index.d.mts +1 -1
- package/dist/storage/drizzle/index.mjs +1 -1
- package/dist/{tool-approval-service-DEQiipxj.mjs → tool-approval-service-MU_DmJsf.mjs} +1 -1
- package/dist/tools-BrNm-een.mjs +1 -0
- package/dist/{transition-CBjccCMw.d.mts → transition-Dq41YCkc.d.mts} +1 -1
- package/dist/{types-InWSdi-V.d.mts → types-BMlzmWp6.d.mts} +11 -1
- package/dist/{types-8rhArs_K.d.mts → types-C76EP81O.d.mts} +136 -93
- package/dist/ui-components/index.mjs +1 -1
- package/dist/{workflow-BqH6ar-D.mjs → workflow-C1z7I5CI.mjs} +1 -1
- package/dist/workflow-engine/index.d.mts +12 -12
- package/dist/workflow-engine/index.mjs +1 -1
- package/dist/workflow-engine/package.mjs +1 -1
- package/dist/workflow-engine/workflow-orchestrator.mjs +1 -1
- package/package.json +1 -1
- package/dist/adapter-DaQqmKOJ.mjs +0 -1
- package/dist/bus-BgodbPl9.mjs +0 -2
- package/dist/bus-HgaFcCZ1.mjs +0 -1
- package/dist/handlers-BAycjV02.mjs +0 -41
- package/dist/namespace-C-piH3w4.mjs +0 -1
- package/dist/orchestrator-shared-Cxk3x8Vs.mjs +0 -1
- package/dist/package-B1AXe-oz.mjs +0 -1
- package/dist/schema-D6WAI8OL.mjs +0 -1
- package/dist/schemas-ArqQTC0Q.mjs +0 -1
- package/dist/schemas-uID59wR8.mjs +0 -1
- package/dist/scoped-bus-H3xMYR0E.mjs +0 -1
- package/dist/session-0nWT4st6.mjs +0 -39
- package/dist/session-DH-ja8Ka.mjs +0 -1
- package/dist/tools-DFOsOboy.mjs +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{C as e,g as t,w as n}from"./artifact-CGjnoyCC.mjs";import{i as r,r as i,t as a}from"./json-value-DmU8ibo_.mjs";import{a as o}from"./visibility-Cb62p9bv.mjs";import"./credential-ref-YWQQENEo.mjs";import{t as s}from"./provider-context-CqMgPOWF.mjs";import{a as c,o as l}from"./schemas-CuG17U3L.mjs";import{z as u}from"zod";import{createBusNamespace as d,getFullSubjectForSubjectDefinition as f,observability as ee}from"@makaio/framework/core";const p=u.enum([`wait-in-process`,`exit-and-redispatch`,`exit-and-resume`]),te=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`path`),path:u.string().min(1)}).strict(),u.object({kind:u.literal(`source`),filename:u.string().min(1),source:u.string()}).strict()]),m=u.object({source:te.optional(),requirements:u.object({isolation:u.enum([`local`,`container`,`remote`]).optional(),capabilities:u.array(u.string()).optional()}).catchall(r).optional(),providers:u.record(u.string(),r).optional()}).catchall(r),h=u.object({kind:u.string().min(1),id:u.string().min(1)});function ne(e){return`${ie(e.kind)}:${ie(e.id)}`}function re(e){let t=ae(e);if(t<1)throw Error(`Invalid artifact ref key: ${e}`);let n=oe(e.slice(t+1));if(n.length===0)throw Error(`Invalid artifact ref key (empty id): ${e}`);return{kind:oe(e.slice(0,t)),id:n}}function ie(e){return e.replace(/\\/g,`\\\\`).replace(/:/g,`\\:`)}function ae(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(t){t=!1;continue}if(r===`\\`){t=!0;continue}if(r===`:`)return n}return-1}function oe(e){let t=``,n=!1;for(let r of e){if(n){if(r!==`\\`&&r!==`:`)throw Error(`Invalid artifact ref key component: ${e}`);t+=r,n=!1;continue}if(r===`\\`){n=!0;continue}t+=r}if(n)throw Error(`Invalid artifact ref key component: ${e}`);return t}const g=u.union([u.string(),u.number(),u.boolean(),u.null()]),se=u.union([g,u.object({$in:u.array(g)}).strict(),u.object({$ne:g}).strict(),u.object({$exists:u.boolean()}).strict(),u.object({$startsWith:u.string()}).strict(),u.object({$endsWith:u.string()}).strict()]),ce=u.record(u.string(),se),_=u.object({type:u.literal(`bus-event`),subject:u.string(),filter:ce.optional(),filterExpression:u.string().optional()}),le=u.object({type:u.literal(`extension`),extensionType:u.string().regex(/^[a-z0-9-]+:[a-z0-9._-]+$/),config:a.optional()}),v=u.discriminatedUnion(`type`,[u.object({type:u.literal(`manual`)}),u.object({type:u.literal(`cron`),schedule:u.string(),timezone:u.string().optional()}),u.object({type:u.literal(`webhook`),event:u.string(),branch:u.string().optional(),repo:u.string().optional()}),le,_]),y=u.discriminatedUnion(`type`,[u.object({type:u.literal(`global`)}).strict(),u.object({type:u.literal(`workspace`),id:u.string().min(1)}).strict(),u.object({type:u.literal(`session`),id:u.string().min(1)}).strict(),u.object({type:u.literal(`external`),kind:u.string().min(1),id:u.string().min(1)}).strict()]),b=u.string().min(1),x=u.object({kind:u.string().min(1),schemaVersion:u.string().min(1),scope:n,resolve:u.string().min(1).optional(),create:u.string().min(1).optional(),statusPath:u.string().min(1).optional()}),ue=u.object({kind:u.string().min(1),schemaVersion:u.string().min(1),scope:n,dataExpression:u.string().optional()}),de=u.object({file:u.string().min(1),line:u.number().int().positive().optional(),column:u.number().int().positive().optional()}),S=u.enum([`station`,`delegate-agent`,`delegate-role`,`parallel`,`gate`,`iterate`,`iterate-chain`,`loop`,`sequence`]),fe=u.enum([`all-settled`,`fail-fast`]),C=u.object({id:u.string().min(1),when:b.optional(),skip:b.optional(),writes:u.array(ue).optional()}),w=u.lazy(()=>u.discriminatedUnion(`type`,[E,pe,me,he,ge,_e,ve,be,T])),T=C.extend({type:u.literal(`sequence`),nodes:u.lazy(()=>u.array(w))}),E=C.extend({type:u.literal(`station`),prompt:u.string().min(1),role:u.string().min(1).optional(),outputSchema:i.optional(),timeoutMs:u.number().int().positive().optional(),completion:c.optional()}),pe=C.extend({type:u.literal(`delegate-agent`),agentId:u.string().min(1),inputExpression:u.string().optional(),outputSchema:i.optional()}),me=C.extend({type:u.literal(`delegate-role`),role:u.string().min(1),prompt:u.string().min(1),outputSchema:i.optional(),timeoutMs:u.number().int().positive().optional(),completion:c.optional()}),he=C.extend({type:u.literal(`parallel`),mode:fe.optional(),branches:u.record(u.string().min(1),u.lazy(()=>T))}),ge=C.extend({type:u.literal(`gate`),prompt:u.string().min(1),title:u.string().optional(),autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().int().positive().nullable(),resumeSchema:i.optional()}),_e=C.extend({type:u.literal(`iterate`),collection:u.string().min(1),body:u.lazy(()=>T),concurrency:u.number().int().nonnegative().optional()}),ve=C.extend({type:u.literal(`iterate-chain`),collection:u.string().min(1),body:u.lazy(()=>T)}),ye=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`pass`)}).strict(),u.object({kind:u.literal(`loop`)}).strict(),u.object({kind:u.literal(`escalate`),reason:u.string().min(1)}).strict()]),be=C.extend({type:u.literal(`loop`),maxRounds:u.number().int().positive(),body:u.lazy(()=>T),gate:u.object({handler:u.string().min(1),input:u.string().min(1).optional(),config:r.optional(),escalation:u.object({title:u.string().optional(),prompt:u.string().min(1),resumeSchema:i.optional(),autoAction:u.enum([`approve`,`reject`]).default(`reject`),timeoutMs:u.number().int().positive().nullable().default(null)}).strict().optional()}).strict()}),xe=u.object({factoryId:u.string().min(1),preview:u.array(u.lazy(()=>w)).optional(),sourceLocation:de.optional()}),D=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`editor`)}).strict(),u.object({kind:u.literal(`extension`),extension:u.string().min(1),externalId:u.string().min(1).optional(),syncedAt:u.string().datetime().optional(),metadata:a.default({})}).strict()]),O=u.object({schema:i,initial:r.optional()}),k=u.object({id:u.string().min(1),name:u.string().optional(),description:u.string().optional(),inputSchema:i.optional(),configSchema:i.optional(),outputSchema:i.optional(),state:O.optional(),artifact:x.optional(),root:T,triggers:u.array(v).optional(),scope:y.default({type:`global`}),canvasLayout:u.record(u.string(),r).optional(),source:D.optional(),executionHints:m.optional()}),A=u.enum([`pending`,`running`,`paused`,`completed`,`failed`,`cancelled`]),j=u.object({id:u.string(),workflowId:u.string(),coordinatorSessionId:u.string().optional(),status:A,inputs:r,config:a.optional(),startedAt:u.number(),completedAt:u.number().optional(),error:u.string().optional(),reason:u.string().optional(),triggerPayload:a.optional(),scope:y,artifactRef:h.optional()}),M=u.object({frameId:u.string(),nodeId:u.string(),nodeType:S,path:u.array(u.string()),parentFrameId:u.string().optional(),status:u.enum([`pending`,`running`,`waiting`,`completed`,`failed`,`skipped`,`cancelled`]),attempt:u.number().int().nonnegative().default(0),iteration:u.number().int().nonnegative().optional(),branchKey:u.string().optional(),output:r.optional(),error:u.string().optional(),startedAt:u.number().optional(),completedAt:u.number().optional()}),N=u.enum([`waiting`,`resumed`,`rejected`,`timed-out`,`cancelled`]),Se=u.object({executionId:u.string(),nodeId:u.string(),frameId:u.string(),schema:i,prompt:u.string().optional(),status:N,autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().int().positive().nullable(),resumeData:r.optional(),reason:u.string().optional(),createdAt:u.number(),resolvedAt:u.number().optional()}),P=u.object({adapterName:u.string().min(1),model:u.string().optional(),reasoningEffort:o.optional(),harnessId:u.string().optional(),systemPrompt:u.string().optional(),contextMode:l.optional(),providerContext:s.optional(),completion:c.optional()}),Ce=P,we=u.object({scope:y.optional()}),Te=u.object({startedAt:u.number(),id:u.string()}),Ee=1,De=500,Oe=50,ke=u.object({workflowId:u.string().min(1).optional(),scope:y.optional(),status:A.optional(),artifactRef:h.optional(),limit:u.number().int().min(1).max(500).default(50),cursor:Te.optional()}).refine(e=>e.workflowId!==void 0||e.scope!==void 0||e.artifactRef!==void 0,{message:`Either workflowId, scope, or artifactRef is required.`}),Ae=200,je=100,Me=10,Ne=u.object({refs:u.array(h).min(1).max(200),limitPerRef:u.number().int().min(1).max(100).default(10)}),Pe=u.object({executionId:u.string().min(1).optional(),status:N.optional(),limit:u.number().int().min(1).max(500).default(50)}).refine(e=>e.executionId!==void 0||e.status!==void 0,{message:`Either executionId or status is required.`}),F=u.enum([`station`,`delegate-agent`,`delegate-role`,`gate`]),Fe=u.enum([`station`]),Ie=u.object({input:u.number().int().nonnegative(),output:u.number().int().nonnegative(),cached:u.number().int().nonnegative().optional()}),Le=u.object({duration:u.number().nonnegative(),tokenUsage:Ie.optional(),estimatedCost:u.number().nonnegative().optional(),toolCalls:u.number().int().nonnegative().optional()}),Re=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`none`)}).strict(),u.object({kind:u.literal(`hmac`),secret:u.string().min(1)}).strict()]),ze=u.object({cwd:u.string().min(1),env:u.record(u.string(),u.string()).optional()}),Be=u.object({executionId:u.string().min(1),stepId:u.string().min(1),reason:u.string().optional()});function Ve(e){let t=e.indexOf(`.`);if(t<=0||t===e.length-1)throw Error(`Invalid step cancel subject: ${e}`);return{subject:e.slice(t+1),$meta:{namespace:e.slice(0,t),isRequest:!1,payload:{},local:!1,channel:!1}}}const He=u.object({executionId:u.string().min(1),reason:u.string().optional()});function Ue(e){let t=e.indexOf(`.`);if(t<=0||t===e.length-1)throw Error(`Invalid workflow cancel subject: ${e}`);return{subject:e.slice(t+1),$meta:{namespace:e.slice(0,t),isRequest:!1,payload:{},local:!1,channel:!1}}}const We=u.object({stepId:u.string().min(1),executionId:u.string().min(1),workflowId:u.string().min(1),coordinatorSessionId:u.string().min(1),stepType:Fe,stepDefinition:E,resolvedInputs:a,busUrl:u.string().optional(),busAuth:Re.default({kind:`none`}),platformDefaults:ze,cancelSubject:u.string().min(1)}).superRefine((e,t)=>{e.stepType!==e.stepDefinition.type&&t.addIssue({code:`custom`,path:[`stepDefinition`,`type`],message:`stepDefinition.type must match stepType (${e.stepType})`})}),Ge=`Workflow cancelled`,Ke=u.object({status:u.enum([`completed`,`failed`]),output:r.optional(),error:u.string().optional(),telemetry:Le}),qe=u.enum([`running`,`completed`,`failed`,`skipped`]),I=u.object({executionId:u.string().min(1),frameId:u.string().min(1),stepId:u.string().min(1),stepType:F,status:qe,startedAt:u.number().optional(),completedAt:u.number().optional(),durationMs:u.number().nonnegative().optional(),inputTokens:u.number().int().nonnegative().optional(),outputTokens:u.number().int().nonnegative().optional(),estimatedCost:u.number().nonnegative().optional(),toolCallCount:u.number().int().nonnegative().optional(),input:u.string().optional(),output:u.string().optional()}),Je=u.enum([`triggered-by`,`feedback-loop`,`rerun-of`]),L=u.object({sourceExecutionId:u.string().min(1),targetExecutionId:u.string().min(1),linkType:Je,metadata:u.record(u.string(),u.unknown()).optional()}),Ye=u.object({sourceExecutionId:u.string().min(1).optional(),targetExecutionId:u.string().min(1).optional()}).refine(e=>e.sourceExecutionId!==void 0||e.targetExecutionId!==void 0,{message:`Either sourceExecutionId or targetExecutionId is required.`}),Xe={RUN_CONTEXT_NOT_FOUND:`WORKFLOW_RUN_CONTEXT_NOT_FOUND`,SNAPSHOT_UNAVAILABLE:`WORKFLOW_SNAPSHOT_UNAVAILABLE`,SOURCE_MISMATCH:`WORKFLOW_SOURCE_MISMATCH`,NOT_EXECUTABLE:`WORKFLOW_NOT_EXECUTABLE`,HANDLER_UNAVAILABLE:`WORKFLOW_HANDLER_UNAVAILABLE`};var Ze=class extends Error{code;constructor(e,t){super(t),this.code=e,this.name=`WorkflowError`}};const R=u.string().refine(e=>e===``||e.startsWith(`/`),{message:`JSON Patch paths must be empty or start with "/".`}),Qe=u.object({op:u.enum([`add`,`replace`,`test`]),path:R,value:r}).strict(),$e=u.object({op:u.literal(`remove`),path:R}).strict(),et=u.object({op:u.enum([`move`,`copy`]),path:R,from:R}).strict(),z=u.discriminatedUnion(`op`,[Qe,$e,et]),tt=u.object({type:u.literal(`artifact-query`),query:t,select:u.enum([`latest`,`all`]),optional:u.boolean().optional()}),nt=u.object({type:u.literal(`bus-request`),subject:u.string().min(1),payload:u.record(u.string(),u.unknown()).optional(),optional:u.boolean().optional()}),rt=u.discriminatedUnion(`type`,[tt,nt]),it=u.object({type:u.literal(`artifact`),kind:u.string().min(1),schemaVersion:u.string().min(1),scope:n,metadata:u.record(u.string(),u.unknown()).optional()}),at=u.object({type:u.literal(`bus-event`),subject:u.string().min(1),payload:u.record(u.string(),u.unknown()).optional()}),ot=u.discriminatedUnion(`type`,[it,at]),st=u.object({content:u.string(),metadata:u.record(u.string(),u.unknown()).optional()}),ct=u.object({sources:u.record(u.string(),st)}),lt=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`none`)}).strict(),u.object({kind:u.literal(`hmac`),secret:u.string().min(1)}).strict()]),B=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`path`),path:u.string().min(1)}).strict(),u.object({kind:u.literal(`source`),filename:u.string().min(1),source:u.string()}).strict(),u.object({kind:u.literal(`definition`),workflowId:u.string().min(1)}).strict()]),ut=u.object({source:B,definition:k.optional(),executionId:u.string().min(1),workflowId:u.string().min(1),triggerPayload:a.default({}),inputs:r.default({}),config:a.optional(),artifactRef:h.optional(),scope:y.default({type:`global`}),busUrl:u.string().optional(),busAuth:lt.default({kind:`none`}),context:u.object({repoPath:u.string().min(1),makaioHome:u.string().min(1),os:u.enum([`darwin`,`linux`,`win32`]),arch:u.string().min(1),worktree:u.string().optional()}),env:u.record(u.string(),u.string()).default({}),coordinatorSessionId:u.string().min(1),executionHints:m.optional(),cancelSubject:u.string().min(1),suspensionStrategy:p.default(`wait-in-process`)}),V=u.object({executionId:u.string().min(1),workflowId:u.string().min(1)}),dt=u.discriminatedUnion(`status`,[V.extend({status:u.literal(`completed`),artifact:e.optional()}).strict(),V.extend({status:u.literal(`failed`),error:u.string().min(1)}).strict(),V.extend({status:u.literal(`cancelled`),reason:u.string().min(1).optional()}).strict(),V.extend({status:u.literal(`paused`),pausedAtGateId:u.string().min(1),pausedAtFrameId:u.string().min(1)}).strict()]),ft=u.object({name:u.string().min(1),importPath:u.string().min(1)}),pt=u.object({packages:u.array(ft).default([])}),mt=u.object({executionId:u.string().min(1),workflowId:u.string().min(1),source:B,definitionSnapshot:k.optional(),workerManifest:pt.default({packages:[]}),inputs:r.default({}),config:a.optional(),scope:y.default({type:`global`}),triggerPayload:a.default({}),artifactRef:h.optional(),coordinatorSessionId:u.string().min(1),executionHints:m.optional(),dispatchMetadata:a.optional(),cancelSubject:u.string().min(1),context:u.object({repoPath:u.string().min(1),makaioHome:u.string().min(1),os:u.enum([`darwin`,`linux`,`win32`]),arch:u.string().min(1),worktree:u.string().optional()}),env:u.record(u.string(),u.string()).default({}),createdAt:u.number(),suspensionStrategy:p.default(`wait-in-process`)}).superRefine((e,t)=>{e.source.kind===`definition`&&e.definitionSnapshot===void 0&&t.addIssue({code:u.ZodIssueCode.custom,path:[`definitionSnapshot`],message:`definitionSnapshot is required when source.kind is "definition"`})}),H=u.object({executionId:u.string().min(1),workflowId:u.string().min(1),workflowName:u.string().optional(),status:u.enum([`pending`,`running`,`paused`,`completed`,`failed`,`cancelled`]),startedAt:u.number(),completedAt:u.number().optional(),durationMs:u.number().nonnegative().optional(),totalInputTokens:u.number().int().nonnegative().optional(),totalOutputTokens:u.number().int().nonnegative().optional(),totalEstimatedCost:u.number().nonnegative().optional(),error:u.string().optional(),failedNodeId:u.string().optional()}),ht=u.object({executionId:u.string().min(1),frameId:u.string().min(1),nodeId:u.string().min(1),nodeType:F,path:u.array(u.string()),status:u.enum([`pending`,`running`,`waiting`,`completed`,`failed`,`skipped`,`cancelled`]),attempt:u.number().int().nonnegative(),iteration:u.number().int().nonnegative().optional(),branchKey:u.string().optional(),startedAt:u.number().optional(),completedAt:u.number().optional(),durationMs:u.number().nonnegative().optional(),inputTokens:u.number().int().nonnegative().optional(),outputTokens:u.number().int().nonnegative().optional(),estimatedCost:u.number().nonnegative().optional(),error:u.string().optional()}),gt=u.object({executionId:u.string().min(1),frameId:u.string().min(1),nodeId:u.string().min(1),artifact:x,revision:u.string().min(1).optional(),writtenAt:u.number()}),_t=u.object({executionId:u.string().min(1),nodeId:u.string().min(1),frameId:u.string().min(1),status:u.enum([`waiting`,`resumed`,`rejected`,`timed-out`,`cancelled`]),prompt:u.string().optional(),openedAt:u.number(),resolvedAt:u.number().optional(),resumeData:r.optional()}),vt=u.object({executionId:u.string().min(1),inputTokens:u.number().int().nonnegative(),outputTokens:u.number().int().nonnegative(),cachedTokens:u.number().int().nonnegative().optional(),estimatedCost:u.number().nonnegative(),byModel:u.record(u.string(),u.object({inputTokens:u.number().int().nonnegative(),outputTokens:u.number().int().nonnegative(),estimatedCost:u.number().nonnegative()})).optional()}),yt=u.object({total:u.number().int().nonnegative(),byStatus:u.object({pending:u.number().int().nonnegative(),running:u.number().int().nonnegative(),paused:u.number().int().nonnegative(),completed:u.number().int().nonnegative(),failed:u.number().int().nonnegative(),cancelled:u.number().int().nonnegative()}),totalDurationMs:u.number().nonnegative(),totalInputTokens:u.number().int().nonnegative(),totalOutputTokens:u.number().int().nonnegative(),totalEstimatedCost:u.number().nonnegative()}),bt=u.object({executionId:u.string().min(1),frameId:u.string().min(1),factoryId:u.string().min(1),materializedNodeIds:u.array(u.string().min(1)),factoryInput:i.optional(),materializedAt:u.number()}),xt=u.object({message:u.string().min(1),details:u.string().min(1).optional(),kind:u.string().min(1).optional(),metadata:r.optional()}).strict(),U=u.object({executionId:u.string(),stepId:u.string(),stepType:u.enum([`station`,`delegate-agent`,`delegate-role`,`gate`])}),W=U.extend({stepType:u.literal(`gate`)}),St=u.discriminatedUnion(`source`,[W.extend({frameId:u.string(),action:u.enum([`approve`,`reject`]),source:u.literal(`user`),reason:u.string().optional()}),W.extend({frameId:u.string(),action:u.enum([`approve`,`reject`]),source:u.literal(`timeout`)}),W.extend({frameId:u.string(),source:u.literal(`cancelled`)})]),Ct=W.extend({workflowId:u.string(),workflowName:u.string(),title:u.string(),message:u.string(),autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().nullable(),openedAt:u.number()}),wt={getDefinition:{request:u.object({id:u.string()}),response:u.object({workflow:k.nullable()})},setDefinition:{request:u.object({workflow:k}),response:u.object({id:u.string()})},deleteDefinition:{request:u.object({id:u.string()}),response:u.object({deleted:u.boolean()})},listDefinitions:{request:we,response:u.object({workflows:u.array(k)})},"definition.created":k,"definition.updated":k,"definition.deleted":u.object({id:u.string()}),start:{request:u.object({workflowId:u.string(),input:r.optional(),config:r.optional(),artifactRef:h.optional(),scope:y.optional(),executionHints:m.optional(),parentSessionId:u.string().optional(),triggerPayload:a.optional()}),response:u.object({executionId:u.string()})},rerun:{request:u.object({executionId:u.string().min(1),mode:u.enum([`snapshot`,`current`]),input:r.optional(),config:r.optional(),artifactRef:h.optional(),scope:y.optional(),executionHints:m.optional(),parentSessionId:u.string().optional(),triggerPayload:a.optional(),reason:u.string().min(1).optional()}),response:u.object({executionId:u.string()})},cancel:{request:u.object({executionId:u.string(),reason:u.string().optional()}),response:u.object({cancelled:u.boolean()})},getExecution:{request:u.object({executionId:u.string()}),response:u.object({execution:j.nullable()})},listExecutions:{request:ke,response:u.object({executions:u.array(j)})},listExecutionsByArtifactRefs:{request:Ne,response:u.object({executionsByRef:u.record(u.string(),u.array(j))})},listSpans:{request:u.object({executionId:u.string()}),response:u.object({spans:u.array(I)})},listGateInstances:{request:Pe,response:u.object({gates:u.array(Se)})},setExecutionLink:{request:u.object({link:L}),response:u.object({id:u.string()})},listExecutionLinks:{request:Ye,response:u.object({links:u.array(L)})},listFrames:{request:u.object({executionId:u.string().min(1)}),response:u.object({frames:u.array(M)})},listTriggerTypes:{request:u.object({}),response:u.object({triggerTypes:u.array(u.object({type:u.string(),displayName:u.string(),icon:u.string(),category:u.string(),description:u.string().optional(),configJsonSchema:i,outputJsonSchema:i,source:u.string()}))})},runFile:{request:u.object({filePath:u.string().min(1),triggerPayload:a.optional(),scope:y.optional()}),response:u.object({executionId:u.string()})},resolveRole:{request:u.object({roleId:u.string().min(1)}),response:P},resolveAgent:{request:u.object({agentId:u.string().min(1)}),response:Ce},getRunContext:{request:u.object({executionId:u.string().min(1)}),response:mt},"execution.started":u.object({executionId:u.string(),workflowId:u.string(),coordinatorSessionId:u.string().optional(),startedAt:u.number().nonnegative().optional(),artifactRef:h.optional()}),"execution.completed":u.object({executionId:u.string(),workflowId:u.string(),totalDuration:u.number(),completedAt:u.number().nonnegative().optional()}),"execution.failed":u.object({executionId:u.string(),workflowId:u.string(),error:u.string(),failedStepId:u.string().optional(),completedAt:u.number().nonnegative().optional()}),"execution.cancelled":u.object({executionId:u.string(),workflowId:u.string(),reason:u.string().optional(),completedAt:u.number().nonnegative().optional()}),"execution.progress":u.object({executionId:u.string().min(1),workflowId:u.string().min(1),frameId:u.string().min(1),nodeId:u.string().min(1),progress:xt,emittedAt:u.number().int().nonnegative()}),"execution.paused":ee.schema(u.object({executionId:u.string(),workflowId:u.string(),pausedAtGateId:u.string().min(1),pausedAtFrameId:u.string().min(1)}),{traceAll:!0}),"step.beforeStart":U,"step.started":U.extend({sessionId:u.string().optional(),subagentId:u.string().optional()}),"step.completed":U.extend({result:r.optional(),duration:u.number()}),"step.failed":U.extend({error:u.string()}),"step.skipped":U.extend({reason:u.string().optional(),condition:u.string().optional()}),"gate.requested":Ct,"gate.awaitApproval":{request:Ct,response:u.object({action:u.enum([`approve`,`reject`]),source:u.enum([`user`,`timeout`]),reason:u.string().optional()})},"gate.respond":{request:u.object({executionId:u.string(),gateId:u.string(),action:u.enum([`approve`,`reject`]),frameId:u.string().optional(),resumeData:r,reason:u.string().optional()}),response:u.object({accepted:u.boolean()})},"gate.resolved":St,"frame.started":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),nodeType:S,path:u.array(u.string()),parentFrameId:u.string().optional(),startedAt:u.number().nonnegative().optional()}),"frame.completed":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),output:r.optional(),duration:u.number().nonnegative().optional(),completedAt:u.number().nonnegative().optional()}),"frame.failed":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),error:u.string(),duration:u.number().nonnegative().optional(),completedAt:u.number().nonnegative().optional()}),"frame.sessionLinked":u.object({executionId:u.string(),frameId:u.string(),sessionId:u.string()}).strict(),"gate.suspended":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),schema:i,prompt:u.string().optional(),title:u.string().optional(),autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().nullable(),openedAt:u.number()}),"gate.resumed":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),resumeData:r}),"dynamic.materialized":u.object({executionId:u.string(),frameId:u.string(),factoryId:u.string().min(1),materializedNodes:u.number().int().nonnegative()}),"artifact.updated":u.object({executionId:u.string(),frameId:u.string(),artifactRef:u.object({kind:u.string().min(1),id:u.string().min(1)}),paths:u.array(u.string()),operation:u.string().min(1),revision:u.string().min(1).optional()}),"worklog.get":{request:u.object({executionId:u.string().min(1)}),response:u.object({summary:H.nullable()})},"worklog.list":{request:u.object({workflowId:u.string().min(1).optional(),status:A.optional(),limit:u.number().int().positive().optional(),offset:u.number().int().nonnegative().optional()}),response:u.object({items:u.array(H),total:u.number().int().nonnegative()})},"worklog.stats":{request:u.object({workflowId:u.string().min(1).optional(),since:u.number().int().nonnegative().optional(),until:u.number().int().nonnegative().optional()}),response:u.object({stats:yt})},"worklog.changed":u.object({executionId:u.string().min(1)}),"state.get":{request:u.object({executionId:u.string().min(1)}),response:u.object({executionId:u.string().min(1),sequence:u.number().int().nonnegative(),value:r})},"state.patch":{request:u.object({executionId:u.string().min(1),expectedSequence:u.number().int().nonnegative(),patch:u.array(z),nextValue:r}),response:u.object({executionId:u.string().min(1),sequence:u.number().int().positive(),value:r})},"state.updated":u.object({executionId:u.string().min(1),sequence:u.number().int().positive(),patch:u.array(z),value:r,updatedAt:u.number().int().positive()})},Tt=d(`workflow`,wt),Et=Tt.subjects;function Dt(e,t){G(e,t,void 0,0,[],`root`,void 0,void 0)}function G(e,t,n,r,i,a,o,s){let c={parent:n,depth:r,ancestors:i,relationship:a,...o!==void 0&&{index:o},...s!==void 0&&{branchKey:s}};if(t.enter?.(e,c)===!1)return;let l=[...i,e.id],u=r+1;switch(e.type){case`sequence`:{let n=e;for(let r=0;r<n.nodes.length;r++)G(n.nodes[r],t,e,u,l,`sequence-child`,r,void 0);break}case`parallel`:{let n=e;for(let[r,i]of Object.entries(n.branches))G(i,t,e,u,l,`parallel-branch`,void 0,r);break}case`iterate`:G(e.body,t,e,u,l,`iterate-body`,void 0,void 0);break;case`iterate-chain`:G(e.body,t,e,u,l,`iterate-chain-body`,void 0,void 0);break;case`loop`:G(e.body,t,e,u,l,`loop-body`,void 0,void 0);break}t.leave?.(e,c)}function Ot(e){switch(e){case`station`:case`delegate-agent`:case`delegate-role`:case`gate`:return`leaf`;case`parallel`:case`iterate`:case`iterate-chain`:case`loop`:return`control`;case`sequence`:return`structural`}}function kt(e,t,n){return e===`parallel-branch`&&t!==void 0?[{kind:`branch`,key:t}]:e===`sequence-child`&&n!==void 0?[{kind:`index`,value:n}]:e===`iterate-body`||e===`iterate-chain-body`||e===`loop-body`?[{kind:`body`}]:[]}function At(e){return e.replace(/\\/g,`\\\\`).replace(/\//g,`\\/`)}function jt(e){return e.map(e=>{switch(e.kind){case`node`:return`n:${At(e.id)}`;case`branch`:return`b:${At(e.key)}`;case`index`:return`i:${e.value}`;case`body`:return`body`}}).join(`/`)}function Mt(e){let t=[],n=[],r=new Map,i=[],a=[],o=[];return Dt(e.root,{enter(e,s){let c=kt(s.relationship,s.branchKey,s.index),l={kind:`node`,id:e.id};i.push(...c,l),o.push(c.length+1);let u=[...i],d=jt(u),f=a.at(-1);if(t.push({key:d,nodeId:e.id,type:e.type,role:Ot(e.type),path:u,parentKey:f,...s.branchKey!==void 0&&{branchKey:s.branchKey}}),f!==void 0&&s.parent!==void 0)switch(s.parent.type){case`sequence`:{n.push({sourceKey:f,targetKey:d,kind:`contains`});let e=r.get(f);e!==void 0&&n.push({sourceKey:e,targetKey:d,kind:`sequence`}),r.set(f,d);break}case`parallel`:n.push({sourceKey:f,targetKey:d,kind:`branch`});break;case`iterate`:case`iterate-chain`:case`loop`:n.push({sourceKey:f,targetKey:d,kind:`body`});break;default:n.push({sourceKey:f,targetKey:d,kind:`contains`});break}a.push(d)},leave(){let e=o.pop()??0;i.splice(i.length-e,e),a.pop()}}),{nodes:t,edges:n}}function K(e){return q(e.body.nodes,e.id)}function q(e,t){for(let n of e){if(n.type===`loop`)return`Nested loop '${n.id}' found inside loop '${t}' — V1 does not support nested loops`;if(n.type===`sequence`){let e=q(n.nodes,t);if(e)return e}if(n.type===`parallel`)for(let e of Object.values(n.branches)){let n=q(e.nodes,t);if(n)return n}if(n.type===`iterate`||n.type===`iterate-chain`){let e=n.body,r=q(e.nodes,t);if(r)return r}}}const J=new WeakMap,Nt=new WeakMap;function Y(e){let{$schema:t,...n}=u.toJSONSchema(e);return n}function X(e,t,n){let r=J.get(e);if(r!==void 0&&t.set(e.id,r),e.type===`sequence`)for(let r of e.nodes)X(r,t,n);else if(e.type===`parallel`)for(let r of Object.values(e.branches))X(r,t,n);else if(e.type===`iterate`)X(e.body,t,n);else if(e.type===`iterate-chain`)X(e.body,t,n);else if(e.type===`loop`){if(n!==void 0){let t=Nt.get(e);t!==void 0&&n.set(e.gate.handler,t)}X(e.body,t,n)}}function Pt(e,t,n){let r={id:e,type:`station`,prompt:e,...n?.when!==void 0&&{when:n.when},...n?.skip!==void 0&&{skip:n.skip}};return J.set(r,t),r}function Ft(e,t,n){return{id:e,type:`delegate-agent`,agentId:t.agentId,...t.inputExpression!==void 0&&{inputExpression:t.inputExpression},...t.outputSchema!==void 0&&{outputSchema:t.outputSchema},...n?.when!==void 0&&{when:n.when},...n?.skip!==void 0&&{skip:n.skip}}}function It(e,t,n){return{id:e,type:`delegate-role`,role:t,prompt:n?.prompt??e,...n?.when!==void 0&&{when:n.when},...n?.skip!==void 0&&{skip:n.skip},...n?.outputSchema!==void 0&&{outputSchema:n.outputSchema},...n?.timeoutMs!==void 0&&{timeoutMs:n.timeoutMs},...n?.completion!==void 0&&{completion:n.completion}}}function Lt(e,t){return{id:e,type:`gate`,prompt:t.prompt,autoAction:t.autoAction,timeoutMs:t.timeoutMs,...t.title!==void 0&&{title:t.title},...t.resume!==void 0&&{resumeSchema:Y(t.resume)}}}function Rt(e,t,n){let r=`${e}__item`,i={id:r,type:`station`,prompt:r},a={id:e,type:`iterate`,collection:n.collection,body:{id:`${e}__body`,type:`sequence`,nodes:[i]},...n.concurrency!==void 0&&{concurrency:n.concurrency},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}};return J.set(i,t),a}function zt(e,t,n){return{id:e,type:`iterate-chain`,collection:n.collection,body:{id:`${e}__body`,type:`sequence`,nodes:t},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}}}function Bt(e,t,n){let r={id:e,type:`loop`,maxRounds:n.maxRounds,body:{id:`${e}__body`,type:`sequence`,nodes:t},gate:Vt(n),...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}},i=K(r);if(i!==void 0)throw Error(i);return Nt.set(r,n.gate.evaluate),r}function Vt(e){let t=e.gate.escalation;return{handler:e.gate.handler,...e.gate.input!==void 0&&{input:e.gate.input},...e.gate.config!==void 0&&{config:e.gate.config},...t!==void 0&&{escalation:{prompt:t.prompt,autoAction:t.autoAction??`reject`,timeoutMs:t.timeoutMs??null,...t.title!==void 0&&{title:t.title},...t.resumeSchema!==void 0&&{resumeSchema:t.resumeSchema}}}}}function Ht(e){return{type:`bus-event`,subject:f(e.subject),...e.filter!==void 0&&{filter:e.filter},...e.filterExpression!==void 0&&{filterExpression:e.filterExpression}}}function Ut(){return{type:`manual`}}function Wt(e){return{type:`cron`,schedule:e.schedule,...e.timezone!==void 0&&{timezone:e.timezone}}}function Gt(e){return{type:`webhook`,event:e.event,...e.branch!==void 0&&{branch:e.branch},...e.repo!==void 0&&{repo:e.repo}}}function Kt(e){return{type:`extension`,extensionType:e.extensionType,...e.config!==void 0&&{config:e.config}}}function Z(e,t){if(e.has(t))throw Error(`Duplicate step ID: ${t}`);e.add(t)}function Q(e,t){if(Z(e,t.id),t.type===`sequence`)for(let n of t.nodes)Q(e,n);else if(t.type===`parallel`)for(let n of Object.values(t.branches))Q(e,n);else (t.type===`iterate`||t.type===`iterate-chain`||t.type===`loop`)&&Q(e,t.body)}function qt(e,t,n,r,i){let a={};return t.forEach((t,o)=>{if(t.id.length===0)throw Error(`parallel branch at index ${o} has an empty ID`);let s=t.id,c=`${e}__${s}`;Q(n,t),Z(n,c),X(t,r,i),a[s]={id:c,type:`sequence`,nodes:[t]}}),a}function Jt(e,t,n,r,i){let a=`${e}__body`,o=`${e}__item`;Z(r,a),Z(r,o),i.set(o,t);let s={id:o,type:`station`,prompt:o};return{id:e,type:`iterate`,collection:n.collection,body:{id:a,type:`sequence`,nodes:[s]},...n.concurrency!==void 0&&{concurrency:n.concurrency},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}}}function Yt(e,t,n){return t.resume!==void 0&&(n[e]=t.resume),{id:e,type:`gate`,prompt:t.prompt,autoAction:t.autoAction,timeoutMs:t.timeoutMs,...t.title!==void 0&&{title:t.title},...t.resume!==void 0&&{resumeSchema:Y(t.resume)}}}function Xt(e,t,n,r,i,a){let o=`${e}__body`;Z(r,o);for(let e of t)Q(r,e),X(e,i,a);return{id:e,type:`iterate-chain`,collection:n.collection,body:{id:o,type:`sequence`,nodes:t},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}}}function Zt(e,t,n,r,i,a){let o=`${e}__body`;Z(r,o);for(let e of t)Q(r,e),X(e,i,a);let s={id:e,type:`loop`,maxRounds:n.maxRounds,body:{id:o,type:`sequence`,nodes:t},gate:Vt(n),...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}},c=K(s);if(c!==void 0)throw Error(c);return a.set(n.gate.handler,n.gate.evaluate),s}function Qt(e,t){e.input=n=>(t.zodSchemas.input=n,t.definition.inputSchema=Y(n),e),e.config=n=>(t.zodSchemas.config=n,t.definition.configSchema=Y(n),e),e.output=n=>(t.zodSchemas.output=n,t.definition.outputSchema=Y(n),e),e.artifact=n=>(n.schema!==void 0&&(t.zodSchemas.artifact=n.schema),t.definition.artifact={kind:n.kind,schemaVersion:n.schemaVersion,scope:n.scope,...n.resolve!==void 0&&{resolve:n.resolve},...n.create!==void 0&&{create:n.create},...n.statusPath!==void 0&&{statusPath:n.statusPath}},e),e.state=e=>(t.definition.state={schema:e.schema,...e.initial!==void 0&&{initial:e.initial}},$(t))}function $t(e,t){let{rootNodes:n,runtimeHandlers:r,runtimeLoopGates:i,registeredIds:a,zodGates:o}=t;e.station=(t,i,o)=>(Z(a,t),n.push({id:t,type:`station`,prompt:t,...o?.when!==void 0&&{when:o.when},...o?.skip!==void 0&&{skip:o.skip}}),r.set(t,i),e),e.delegateToAgent=(t,r,i)=>{Z(a,t);let o={id:t,type:`delegate-agent`,agentId:r.agentId,...r.inputExpression!==void 0&&{inputExpression:r.inputExpression},...r.outputSchema!==void 0&&{outputSchema:r.outputSchema},...i?.when!==void 0&&{when:i.when},...i?.skip!==void 0&&{skip:i.skip}};return n.push(o),e},e.delegateToRole=(t,r,i)=>(Z(a,t),n.push({id:t,type:`delegate-role`,role:r,prompt:i?.prompt??t,...i?.when!==void 0&&{when:i.when},...i?.skip!==void 0&&{skip:i.skip},...i?.outputSchema!==void 0&&{outputSchema:i.outputSchema},...i?.timeoutMs!==void 0&&{timeoutMs:i.timeoutMs},...i?.completion!==void 0&&{completion:i.completion}}),e),e.parallel=(t,o,s)=>(Z(a,t),n.push({id:t,type:`parallel`,mode:o.mode??`all-settled`,branches:qt(t,s,a,r,i),...o.when!==void 0&&{when:o.when},...o.skip!==void 0&&{skip:o.skip}}),e),e.gate=(t,r)=>(Z(a,t),n.push(Yt(t,r,o)),e),e.iterate=(t,i,o)=>(Z(a,t),n.push(Jt(t,i,o,a,r)),e),e.iterateChain=(t,o,s)=>(Z(a,t),n.push(Xt(t,o,s,a,r,i)),e),e.loop=(t,o,s)=>(Z(a,t),n.push(Zt(t,o,s,a,r,i)),e),e.addNode=e=>en(e,a,r,i,n)}function en(e,t,n,r,i){Q(t,e),X(e,n,r),i.push(e)}function $(e){let t={id:e.definition.id,definition:e.definition,runtimeHandlers:e.runtimeHandlers,runtimeFactories:e.runtimeFactories,runtimeLoopGates:e.runtimeLoopGates,source:void 0,get zodSchemas(){return e.zodSchemas},addTrigger(t){return e.triggers.push(t),$(e)}};return Qt(t,e),$t(t,e),t}function tn(e,t){let n=[],r=new Map,i=new Map,a=new Set,o={},s={gates:o},c=new Map,l=t?.triggers?[...t.triggers]:[];return $({rootNodes:n,runtimeHandlers:r,runtimeFactories:c,runtimeLoopGates:i,registeredIds:a,zodGates:o,zodSchemas:s,definition:{id:e,...t?.name!==void 0&&{name:t.name},...t?.description!==void 0&&{description:t.description},root:{id:`${e}__root`,type:`sequence`,nodes:n},triggers:l,scope:{type:`global`}},triggers:l})}function nn(e){if(e.workflows.length===0)throw Error(`defineWorkflowBundle: workflows must not be empty`);return{workflows:Object.freeze([...e.workflows])}}const rn=u.enum([`artifact.created`,`artifact.revised`,`artifact.status.changed`]),an=u.record(u.string(),r),on=u.object({type:u.string().min(1),input:u.record(u.string(),r).optional(),executionHints:m.optional()}),sn=u.object({id:u.string().min(1),description:u.string().optional(),on:rn,when:an.optional(),action:on,enabled:u.boolean().default(!0)});export{L as $,Ce as $t,ht as A,x as At,B,M as Bt,Tt as C,Te as Ct,gt as D,le as Dt,Et as E,Ne as Et,pt as F,pe as Ft,ct as G,_e as Gt,tt as H,ge as Ht,ft as I,me as It,st as J,C as Jt,ot as K,we as Kt,dt as L,xe as Lt,yt as M,b as Mt,vt as N,D as Nt,bt as O,Pe as Ot,mt as P,k as Pt,Ye as Q,he as Qt,lt as R,j as Rt,Dt as S,Ee as St,wt as T,A as Tt,at as U,N as Ut,it as V,Se as Vt,nt as W,ve as Wt,Ze as X,S as Xt,z as Y,w as Yt,Xe as Z,fe as Zt,Bt as _,Me as _t,nn as a,v as an,Ke as at,K as b,Oe as bt,Wt as c,ne as cn,Le as ct,Gt as d,p as dn,He as dt,P as en,Je as et,Ft as f,Fe as ft,zt as g,_ as gt,Rt as h,Ue as ht,sn as i,E as in,We as it,_t as j,ue as jt,H as k,ye as kt,Kt as l,m as ln,Ie as lt,Lt as m,Ve as mt,an as n,de as nn,qe as nt,tn as o,h as on,Re as ot,It as p,F as pt,rt as q,be as qt,rn as r,O as rn,Be as rt,Ht as s,re as sn,ze as st,on as t,T as tn,I as tt,Ut as u,te as un,Ge as ut,Pt as v,je as vt,xt as w,ke as wt,Mt as x,De as xt,Y as y,Ae as yt,ut as z,y as zt};
|
|
1
|
+
import{C as e,g as t,w as n}from"./artifact-CGjnoyCC.mjs";import{i as r,r as i,t as a}from"./json-value-DmU8ibo_.mjs";import{a as o}from"./visibility-Cb62p9bv.mjs";import"./credential-ref-YWQQENEo.mjs";import{t as s}from"./provider-context-CqMgPOWF.mjs";import{a as c,o as l}from"./schemas-CuG17U3L.mjs";import{z as u}from"zod";import{createBusNamespace as d,getFullSubjectForSubjectDefinition as f,observability as ee}from"@makaio/framework/core";const p=u.enum([`wait-in-process`,`exit-and-redispatch`,`exit-and-resume`]),te=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`path`),path:u.string().min(1)}).strict(),u.object({kind:u.literal(`source`),filename:u.string().min(1),source:u.string()}).strict()]),m=u.object({source:te.optional(),requirements:u.object({isolation:u.enum([`local`,`container`,`remote`]).optional(),capabilities:u.array(u.string()).optional()}).catchall(r).optional(),providers:u.record(u.string(),r).optional()}).catchall(r),h=u.object({kind:u.string().min(1),id:u.string().min(1)});function ne(e){return`${ie(e.kind)}:${ie(e.id)}`}function re(e){let t=ae(e);if(t<1)throw Error(`Invalid artifact ref key: ${e}`);let n=oe(e.slice(t+1));if(n.length===0)throw Error(`Invalid artifact ref key (empty id): ${e}`);return{kind:oe(e.slice(0,t)),id:n}}function ie(e){return e.replace(/\\/g,`\\\\`).replace(/:/g,`\\:`)}function ae(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(t){t=!1;continue}if(r===`\\`){t=!0;continue}if(r===`:`)return n}return-1}function oe(e){let t=``,n=!1;for(let r of e){if(n){if(r!==`\\`&&r!==`:`)throw Error(`Invalid artifact ref key component: ${e}`);t+=r,n=!1;continue}if(r===`\\`){n=!0;continue}t+=r}if(n)throw Error(`Invalid artifact ref key component: ${e}`);return t}const g=u.union([u.string(),u.number(),u.boolean(),u.null()]),se=u.union([g,u.object({$in:u.array(g)}).strict(),u.object({$ne:g}).strict(),u.object({$exists:u.boolean()}).strict(),u.object({$startsWith:u.string()}).strict(),u.object({$endsWith:u.string()}).strict()]),ce=u.record(u.string(),se),_=u.object({type:u.literal(`bus-event`),subject:u.string(),filter:ce.optional(),filterExpression:u.string().optional()}),le=u.object({type:u.literal(`extension`),extensionType:u.string().regex(/^[a-z0-9-]+:[a-z0-9._-]+$/),config:a.optional()}),v=u.discriminatedUnion(`type`,[u.object({type:u.literal(`manual`)}),u.object({type:u.literal(`cron`),schedule:u.string(),timezone:u.string().optional()}),u.object({type:u.literal(`webhook`),event:u.string(),branch:u.string().optional(),repo:u.string().optional()}),le,_]),y=u.discriminatedUnion(`type`,[u.object({type:u.literal(`global`)}).strict(),u.object({type:u.literal(`workspace`),id:u.string().min(1)}).strict(),u.object({type:u.literal(`session`),id:u.string().min(1)}).strict(),u.object({type:u.literal(`external`),kind:u.string().min(1),id:u.string().min(1)}).strict()]),b=u.string().min(1),x=u.object({kind:u.string().min(1),schemaVersion:u.string().min(1),scope:n,resolve:u.string().min(1).optional(),create:u.string().min(1).optional(),statusPath:u.string().min(1).optional()}),ue=u.object({kind:u.string().min(1),schemaVersion:u.string().min(1),scope:n,dataExpression:u.string().optional()}),de=u.object({file:u.string().min(1),line:u.number().int().positive().optional(),column:u.number().int().positive().optional()}),S=u.enum([`station`,`delegate-agent`,`delegate-role`,`parallel`,`gate`,`iterate`,`iterate-chain`,`loop`,`sequence`]),fe=u.enum([`all-settled`,`fail-fast`]),C=u.object({id:u.string().min(1),when:b.optional(),skip:b.optional(),writes:u.array(ue).optional()}),w=u.lazy(()=>u.discriminatedUnion(`type`,[E,pe,me,he,ge,_e,ve,be,T])),T=C.extend({type:u.literal(`sequence`),nodes:u.lazy(()=>u.array(w))}),E=C.extend({type:u.literal(`station`),prompt:u.string().min(1),role:u.string().min(1).optional(),outputSchema:i.optional(),timeoutMs:u.number().int().positive().optional(),completion:c.optional()}),pe=C.extend({type:u.literal(`delegate-agent`),agentId:u.string().min(1),inputExpression:u.string().optional(),outputSchema:i.optional()}),me=C.extend({type:u.literal(`delegate-role`),role:u.string().min(1),prompt:u.string().min(1),outputSchema:i.optional(),timeoutMs:u.number().int().positive().optional(),completion:c.optional()}),he=C.extend({type:u.literal(`parallel`),mode:fe.optional(),branches:u.record(u.string().min(1),u.lazy(()=>T))}),ge=C.extend({type:u.literal(`gate`),prompt:u.string().min(1),title:u.string().optional(),autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().int().positive().nullable(),resumeSchema:i.optional()}),_e=C.extend({type:u.literal(`iterate`),collection:u.string().min(1),body:u.lazy(()=>T),concurrency:u.number().int().nonnegative().optional()}),ve=C.extend({type:u.literal(`iterate-chain`),collection:u.string().min(1),body:u.lazy(()=>T)}),ye=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`pass`)}).strict(),u.object({kind:u.literal(`loop`)}).strict(),u.object({kind:u.literal(`escalate`),reason:u.string().min(1)}).strict()]),be=C.extend({type:u.literal(`loop`),maxRounds:u.number().int().positive(),body:u.lazy(()=>T),gate:u.object({handler:u.string().min(1),input:u.string().min(1).optional(),config:r.optional(),escalation:u.object({title:u.string().optional(),prompt:u.string().min(1),resumeSchema:i.optional(),autoAction:u.enum([`approve`,`reject`]).default(`reject`),timeoutMs:u.number().int().positive().nullable().default(null)}).strict().optional()}).strict()}),xe=u.object({factoryId:u.string().min(1),preview:u.array(u.lazy(()=>w)).optional(),sourceLocation:de.optional()}),D=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`editor`)}).strict(),u.object({kind:u.literal(`extension`),extension:u.string().min(1),externalId:u.string().min(1).optional(),syncedAt:u.string().datetime().optional(),metadata:a.default({})}).strict()]),O=u.object({schema:i,initial:r.optional()}),k=u.object({id:u.string().min(1),name:u.string().optional(),description:u.string().optional(),inputSchema:i.optional(),configSchema:i.optional(),outputSchema:i.optional(),state:O.optional(),artifact:x.optional(),root:T,triggers:u.array(v).optional(),scope:y.default({type:`global`}),canvasLayout:u.record(u.string(),r).optional(),source:D.optional(),executionHints:m.optional()}),A=u.enum([`pending`,`running`,`paused`,`completed`,`failed`,`cancelled`]),j=u.object({id:u.string(),workflowId:u.string(),coordinatorSessionId:u.string().optional(),status:A,inputs:r,config:a.optional(),startedAt:u.number(),completedAt:u.number().optional(),error:u.string().optional(),reason:u.string().optional(),triggerPayload:a.optional(),scope:y,artifactRef:h.optional()}),M=u.object({frameId:u.string(),nodeId:u.string(),nodeType:S,path:u.array(u.string()),parentFrameId:u.string().optional(),status:u.enum([`pending`,`running`,`waiting`,`completed`,`failed`,`skipped`,`cancelled`]),attempt:u.number().int().nonnegative().default(0),iteration:u.number().int().nonnegative().optional(),branchKey:u.string().optional(),output:r.optional(),error:u.string().optional(),startedAt:u.number().optional(),completedAt:u.number().optional()}),N=u.enum([`waiting`,`resumed`,`rejected`,`timed-out`,`cancelled`]),Se=u.object({executionId:u.string(),nodeId:u.string(),frameId:u.string(),schema:i,prompt:u.string().optional(),status:N,autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().int().positive().nullable(),resumeData:r.optional(),reason:u.string().optional(),createdAt:u.number(),resolvedAt:u.number().optional()}),P=u.object({adapterName:u.string().min(1),model:u.string().optional(),reasoningEffort:o.optional(),harnessId:u.string().optional(),systemPrompt:u.string().optional(),contextMode:l.optional(),providerContext:s.optional(),completion:c.optional()}),Ce=P,we=u.object({scope:y.optional()}),Te=u.object({startedAt:u.number(),id:u.string()}),Ee=1,De=500,Oe=50,ke=u.object({workflowId:u.string().min(1).optional(),scope:y.optional(),status:A.optional(),artifactRef:h.optional(),limit:u.number().int().min(1).max(500).default(50),cursor:Te.optional()}).refine(e=>e.workflowId!==void 0||e.scope!==void 0||e.artifactRef!==void 0,{message:`Either workflowId, scope, or artifactRef is required.`}),Ae=200,je=100,Me=10,Ne=u.object({refs:u.array(h).min(1).max(200),limitPerRef:u.number().int().min(1).max(100).default(10)}),Pe=u.object({executionId:u.string().min(1).optional(),status:N.optional(),limit:u.number().int().min(1).max(500).default(50)}).refine(e=>e.executionId!==void 0||e.status!==void 0,{message:`Either executionId or status is required.`}),F=u.enum([`station`,`delegate-agent`,`delegate-role`,`gate`]),Fe=u.enum([`station`]),Ie=u.object({input:u.number().int().nonnegative(),output:u.number().int().nonnegative(),cached:u.number().int().nonnegative().optional()}),Le=u.object({duration:u.number().nonnegative(),tokenUsage:Ie.optional(),estimatedCost:u.number().nonnegative().optional(),toolCalls:u.number().int().nonnegative().optional()}),Re=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`none`)}).strict(),u.object({kind:u.literal(`hmac`),secret:u.string().min(1)}).strict()]),ze=u.object({cwd:u.string().min(1),env:u.record(u.string(),u.string()).optional()}),Be=u.object({executionId:u.string().min(1),stepId:u.string().min(1),reason:u.string().optional()});function Ve(e){let t=e.indexOf(`.`);if(t<=0||t===e.length-1)throw Error(`Invalid step cancel subject: ${e}`);return{subject:e.slice(t+1),$meta:{namespace:e.slice(0,t),isRequest:!1,payload:{},local:!1,channel:!1}}}const He=u.object({executionId:u.string().min(1),reason:u.string().optional()});function Ue(e){let t=e.indexOf(`.`);if(t<=0||t===e.length-1)throw Error(`Invalid workflow cancel subject: ${e}`);return{subject:e.slice(t+1),$meta:{namespace:e.slice(0,t),isRequest:!1,payload:{},local:!1,channel:!1}}}const We=u.object({stepId:u.string().min(1),executionId:u.string().min(1),workflowId:u.string().min(1),coordinatorSessionId:u.string().min(1),stepType:Fe,stepDefinition:E,resolvedInputs:a,busUrl:u.string().optional(),busAuth:Re.default({kind:`none`}),platformDefaults:ze,cancelSubject:u.string().min(1)}).superRefine((e,t)=>{e.stepType!==e.stepDefinition.type&&t.addIssue({code:`custom`,path:[`stepDefinition`,`type`],message:`stepDefinition.type must match stepType (${e.stepType})`})}),Ge=`Workflow cancelled`,Ke=u.object({status:u.enum([`completed`,`failed`]),output:r.optional(),error:u.string().optional(),telemetry:Le}),qe=u.enum([`running`,`completed`,`failed`,`skipped`]),I=u.object({executionId:u.string().min(1),frameId:u.string().min(1),stepId:u.string().min(1),stepType:F,status:qe,startedAt:u.number().optional(),completedAt:u.number().optional(),durationMs:u.number().nonnegative().optional(),inputTokens:u.number().int().nonnegative().optional(),outputTokens:u.number().int().nonnegative().optional(),estimatedCost:u.number().nonnegative().optional(),toolCallCount:u.number().int().nonnegative().optional(),input:u.string().optional(),output:u.string().optional()}),Je=u.enum([`triggered-by`,`feedback-loop`,`rerun-of`]),L=u.object({sourceExecutionId:u.string().min(1),targetExecutionId:u.string().min(1),linkType:Je,metadata:u.record(u.string(),u.unknown()).optional()}),Ye=u.object({sourceExecutionId:u.string().min(1).optional(),targetExecutionId:u.string().min(1).optional()}).refine(e=>e.sourceExecutionId!==void 0||e.targetExecutionId!==void 0,{message:`Either sourceExecutionId or targetExecutionId is required.`}),Xe={RUN_CONTEXT_NOT_FOUND:`WORKFLOW_RUN_CONTEXT_NOT_FOUND`,SNAPSHOT_UNAVAILABLE:`WORKFLOW_SNAPSHOT_UNAVAILABLE`,SOURCE_MISMATCH:`WORKFLOW_SOURCE_MISMATCH`,NOT_EXECUTABLE:`WORKFLOW_NOT_EXECUTABLE`,HANDLER_UNAVAILABLE:`WORKFLOW_HANDLER_UNAVAILABLE`};var Ze=class extends Error{code;constructor(e,t){super(t),this.code=e,this.name=`WorkflowError`}};const R=u.string().refine(e=>e===``||e.startsWith(`/`),{message:`JSON Patch paths must be empty or start with "/".`}),Qe=u.object({op:u.enum([`add`,`replace`,`test`]),path:R,value:r}).strict(),$e=u.object({op:u.literal(`remove`),path:R}).strict(),et=u.object({op:u.enum([`move`,`copy`]),path:R,from:R}).strict(),z=u.discriminatedUnion(`op`,[Qe,$e,et]),tt=u.object({type:u.literal(`artifact-query`),query:t,select:u.enum([`latest`,`all`]),optional:u.boolean().optional()}),nt=u.object({type:u.literal(`bus-request`),subject:u.string().min(1),payload:u.record(u.string(),u.unknown()).optional(),optional:u.boolean().optional()}),rt=u.discriminatedUnion(`type`,[tt,nt]),it=u.object({type:u.literal(`artifact`),kind:u.string().min(1),schemaVersion:u.string().min(1),scope:n,metadata:u.record(u.string(),u.unknown()).optional()}),at=u.object({type:u.literal(`bus-event`),subject:u.string().min(1),payload:u.record(u.string(),u.unknown()).optional()}),ot=u.discriminatedUnion(`type`,[it,at]),st=u.object({content:u.string(),metadata:u.record(u.string(),u.unknown()).optional()}),ct=u.object({sources:u.record(u.string(),st)}),lt=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`none`)}).strict(),u.object({kind:u.literal(`hmac`),secret:u.string().min(1)}).strict()]),B=u.discriminatedUnion(`kind`,[u.object({kind:u.literal(`path`),path:u.string().min(1)}).strict(),u.object({kind:u.literal(`source`),filename:u.string().min(1),source:u.string()}).strict(),u.object({kind:u.literal(`definition`),workflowId:u.string().min(1)}).strict()]),ut=u.object({source:B,definition:k.optional(),executionId:u.string().min(1),workflowId:u.string().min(1),triggerPayload:a.default({}),inputs:r.default({}),config:a.optional(),artifactRef:h.optional(),scope:y.default({type:`global`}),busUrl:u.string().optional(),busAuth:lt.default({kind:`none`}),context:u.object({repoPath:u.string().min(1),makaioHome:u.string().min(1),os:u.enum([`darwin`,`linux`,`win32`]),arch:u.string().min(1),worktree:u.string().optional()}),env:u.record(u.string(),u.string()).default({}),coordinatorSessionId:u.string().min(1),executionHints:m.optional(),cancelSubject:u.string().min(1),suspensionStrategy:p.default(`wait-in-process`)}),V=u.object({executionId:u.string().min(1),workflowId:u.string().min(1)}),dt=u.discriminatedUnion(`status`,[V.extend({status:u.literal(`completed`),artifact:e.optional()}).strict(),V.extend({status:u.literal(`failed`),error:u.string().min(1)}).strict(),V.extend({status:u.literal(`cancelled`),reason:u.string().min(1).optional()}).strict(),V.extend({status:u.literal(`paused`),pausedAtGateId:u.string().min(1),pausedAtFrameId:u.string().min(1)}).strict()]),ft=u.object({name:u.string().min(1),importPath:u.string().min(1)}),pt=u.object({packages:u.array(ft).default([])}),mt=u.object({executionId:u.string().min(1),workflowId:u.string().min(1),source:B,definitionSnapshot:k.optional(),workerManifest:pt.default({packages:[]}),inputs:r.default({}),config:a.optional(),scope:y.default({type:`global`}),triggerPayload:a.default({}),artifactRef:h.optional(),coordinatorSessionId:u.string().min(1),executionHints:m.optional(),dispatchMetadata:a.optional(),cancelSubject:u.string().min(1),context:u.object({repoPath:u.string().min(1),makaioHome:u.string().min(1),os:u.enum([`darwin`,`linux`,`win32`]),arch:u.string().min(1),worktree:u.string().optional()}),env:u.record(u.string(),u.string()).default({}),createdAt:u.number(),suspensionStrategy:p.default(`wait-in-process`)}).superRefine((e,t)=>{e.source.kind===`definition`&&e.definitionSnapshot===void 0&&t.addIssue({code:u.ZodIssueCode.custom,path:[`definitionSnapshot`],message:`definitionSnapshot is required when source.kind is "definition"`})}),H=u.object({executionId:u.string().min(1),workflowId:u.string().min(1),workflowName:u.string().optional(),status:u.enum([`pending`,`running`,`paused`,`completed`,`failed`,`cancelled`]),startedAt:u.number(),completedAt:u.number().optional(),durationMs:u.number().nonnegative().optional(),totalInputTokens:u.number().int().nonnegative().optional(),totalOutputTokens:u.number().int().nonnegative().optional(),totalEstimatedCost:u.number().nonnegative().optional(),error:u.string().optional(),failedNodeId:u.string().optional()}),ht=u.object({executionId:u.string().min(1),frameId:u.string().min(1),nodeId:u.string().min(1),nodeType:F,path:u.array(u.string()),status:u.enum([`pending`,`running`,`waiting`,`completed`,`failed`,`skipped`,`cancelled`]),attempt:u.number().int().nonnegative(),iteration:u.number().int().nonnegative().optional(),branchKey:u.string().optional(),startedAt:u.number().optional(),completedAt:u.number().optional(),durationMs:u.number().nonnegative().optional(),inputTokens:u.number().int().nonnegative().optional(),outputTokens:u.number().int().nonnegative().optional(),estimatedCost:u.number().nonnegative().optional(),error:u.string().optional()}),gt=u.object({executionId:u.string().min(1),frameId:u.string().min(1),nodeId:u.string().min(1),artifact:x,revision:u.string().min(1).optional(),writtenAt:u.number()}),_t=u.object({executionId:u.string().min(1),nodeId:u.string().min(1),frameId:u.string().min(1),status:u.enum([`waiting`,`resumed`,`rejected`,`timed-out`,`cancelled`]),prompt:u.string().optional(),openedAt:u.number(),resolvedAt:u.number().optional(),resumeData:r.optional()}),vt=u.object({executionId:u.string().min(1),inputTokens:u.number().int().nonnegative(),outputTokens:u.number().int().nonnegative(),cachedTokens:u.number().int().nonnegative().optional(),estimatedCost:u.number().nonnegative(),byModel:u.record(u.string(),u.object({inputTokens:u.number().int().nonnegative(),outputTokens:u.number().int().nonnegative(),estimatedCost:u.number().nonnegative()})).optional()}),yt=u.object({total:u.number().int().nonnegative(),byStatus:u.object({pending:u.number().int().nonnegative(),running:u.number().int().nonnegative(),paused:u.number().int().nonnegative(),completed:u.number().int().nonnegative(),failed:u.number().int().nonnegative(),cancelled:u.number().int().nonnegative()}),totalDurationMs:u.number().nonnegative(),totalInputTokens:u.number().int().nonnegative(),totalOutputTokens:u.number().int().nonnegative(),totalEstimatedCost:u.number().nonnegative()}),bt=u.object({executionId:u.string().min(1),frameId:u.string().min(1),factoryId:u.string().min(1),materializedNodeIds:u.array(u.string().min(1)),factoryInput:i.optional(),materializedAt:u.number()}),xt=u.object({message:u.string().min(1),details:u.string().min(1).optional(),kind:u.string().min(1).optional(),metadata:r.optional()}).strict(),U=u.object({executionId:u.string(),stepId:u.string(),stepType:u.enum([`station`,`delegate-agent`,`delegate-role`,`gate`])}),W=U.extend({stepType:u.literal(`gate`)}),St=u.discriminatedUnion(`source`,[W.extend({frameId:u.string(),action:u.enum([`approve`,`reject`]),source:u.literal(`user`),reason:u.string().optional()}),W.extend({frameId:u.string(),action:u.enum([`approve`,`reject`]),source:u.literal(`timeout`)}),W.extend({frameId:u.string(),source:u.literal(`cancelled`)})]),Ct=W.extend({workflowId:u.string(),workflowName:u.string(),title:u.string(),message:u.string(),autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().nullable(),openedAt:u.number()}),wt={getDefinition:{request:u.object({id:u.string()}),response:u.object({workflow:k.nullable()})},setDefinition:{request:u.object({workflow:k}),response:u.object({id:u.string()})},deleteDefinition:{request:u.object({id:u.string()}),response:u.object({deleted:u.boolean()})},listDefinitions:{request:we,response:u.object({workflows:u.array(k)})},"definition.created":k,"definition.updated":k,"definition.deleted":u.object({id:u.string()}),start:{request:u.object({workflowId:u.string(),input:r.optional(),config:r.optional(),artifactRef:h.optional(),scope:y.optional(),executionHints:m.optional(),parentSessionId:u.string().optional(),triggerPayload:a.optional()}),response:u.object({executionId:u.string()})},rerun:{request:u.object({executionId:u.string().min(1),mode:u.enum([`snapshot`,`current`]),input:r.optional(),config:r.optional(),artifactRef:h.optional(),scope:y.optional(),executionHints:m.optional(),parentSessionId:u.string().optional(),triggerPayload:a.optional(),reason:u.string().min(1).optional()}),response:u.object({executionId:u.string()})},cancel:{request:u.object({executionId:u.string(),reason:u.string().optional()}),response:u.object({cancelled:u.boolean()})},getExecution:{request:u.object({executionId:u.string()}),response:u.object({execution:j.nullable()})},listExecutions:{request:ke,response:u.object({executions:u.array(j)})},listExecutionsByArtifactRefs:{request:Ne,response:u.object({executionsByRef:u.record(u.string(),u.array(j))})},listSpans:{request:u.object({executionId:u.string()}),response:u.object({spans:u.array(I)})},listGateInstances:{request:Pe,response:u.object({gates:u.array(Se)})},setExecutionLink:{request:u.object({link:L}),response:u.object({id:u.string()})},listExecutionLinks:{request:Ye,response:u.object({links:u.array(L)})},listFrames:{request:u.object({executionId:u.string().min(1)}),response:u.object({frames:u.array(M)})},listTriggerTypes:{request:u.object({}),response:u.object({triggerTypes:u.array(u.object({type:u.string(),displayName:u.string(),icon:u.string(),category:u.string(),description:u.string().optional(),configJsonSchema:i,outputJsonSchema:i,source:u.string()}))})},runFile:{request:u.object({filePath:u.string().min(1),triggerPayload:a.optional(),scope:y.optional()}),response:u.object({executionId:u.string()})},registerExternalExecution:{request:u.object({name:u.string().min(1),scope:y.optional(),artifactRef:h.optional(),input:r.optional(),triggerPayload:a.optional()}),response:u.object({executionId:u.string()})},completeExternalExecution:{request:u.object({executionId:u.string().min(1),status:u.enum([`completed`,`failed`,`cancelled`]),error:u.string().min(1).optional(),reason:u.string().min(1).optional(),completedAt:u.number().nonnegative().optional()}).superRefine((e,t)=>{e.status===`failed`&&e.error===void 0&&t.addIssue({code:u.ZodIssueCode.custom,message:`status 'failed' requires a non-empty 'error' message`,path:[`error`]}),e.status===`cancelled`&&e.reason===void 0&&t.addIssue({code:u.ZodIssueCode.custom,message:`status 'cancelled' requires a non-empty 'reason' string`,path:[`reason`]}),e.status===`completed`&&e.error!==void 0&&t.addIssue({code:u.ZodIssueCode.custom,message:`status 'completed' must not carry an 'error'`,path:[`error`]}),e.status===`completed`&&e.reason!==void 0&&t.addIssue({code:u.ZodIssueCode.custom,message:`status 'completed' must not carry a 'reason'`,path:[`reason`]})}),response:u.object({success:u.boolean()})},resolveRole:{request:u.object({roleId:u.string().min(1)}),response:P},resolveAgent:{request:u.object({agentId:u.string().min(1)}),response:Ce},getRunContext:{request:u.object({executionId:u.string().min(1)}),response:mt},"execution.started":u.object({executionId:u.string(),workflowId:u.string(),coordinatorSessionId:u.string().optional(),startedAt:u.number().nonnegative().optional(),artifactRef:h.optional()}),"execution.completed":u.object({executionId:u.string(),workflowId:u.string(),totalDuration:u.number(),completedAt:u.number().nonnegative().optional()}),"execution.failed":u.object({executionId:u.string(),workflowId:u.string(),error:u.string(),failedStepId:u.string().optional(),completedAt:u.number().nonnegative().optional()}),"execution.cancelled":u.object({executionId:u.string(),workflowId:u.string(),reason:u.string().optional(),completedAt:u.number().nonnegative().optional()}),"execution.progress":u.object({executionId:u.string().min(1),workflowId:u.string().min(1),frameId:u.string().min(1),nodeId:u.string().min(1),progress:xt,emittedAt:u.number().int().nonnegative()}),"execution.paused":ee.schema(u.object({executionId:u.string(),workflowId:u.string(),pausedAtGateId:u.string().min(1),pausedAtFrameId:u.string().min(1)}),{traceAll:!0}),"step.beforeStart":U,"step.started":U.extend({sessionId:u.string().optional(),subagentId:u.string().optional()}),"step.completed":U.extend({result:r.optional(),duration:u.number()}),"step.failed":U.extend({error:u.string()}),"step.skipped":U.extend({reason:u.string().optional(),condition:u.string().optional()}),"gate.requested":Ct,"gate.awaitApproval":{request:Ct,response:u.object({action:u.enum([`approve`,`reject`]),source:u.enum([`user`,`timeout`]),reason:u.string().optional()})},"gate.respond":{request:u.object({executionId:u.string(),gateId:u.string(),action:u.enum([`approve`,`reject`]),frameId:u.string().optional(),resumeData:r,reason:u.string().optional()}),response:u.object({accepted:u.boolean()})},"gate.resolved":St,"frame.started":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),nodeType:S,path:u.array(u.string()),parentFrameId:u.string().optional(),startedAt:u.number().nonnegative().optional()}),"frame.completed":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),output:r.optional(),duration:u.number().nonnegative().optional(),completedAt:u.number().nonnegative().optional()}),"frame.failed":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),error:u.string(),duration:u.number().nonnegative().optional(),completedAt:u.number().nonnegative().optional()}),"frame.sessionLinked":u.object({executionId:u.string(),frameId:u.string(),sessionId:u.string()}).strict(),"gate.suspended":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),schema:i,prompt:u.string().optional(),title:u.string().optional(),autoAction:u.enum([`approve`,`reject`]),timeoutMs:u.number().nullable(),openedAt:u.number()}),"gate.resumed":u.object({executionId:u.string(),frameId:u.string(),nodeId:u.string(),resumeData:r}),"dynamic.materialized":u.object({executionId:u.string(),frameId:u.string(),factoryId:u.string().min(1),materializedNodes:u.number().int().nonnegative()}),"artifact.updated":u.object({executionId:u.string(),frameId:u.string(),artifactRef:u.object({kind:u.string().min(1),id:u.string().min(1)}),paths:u.array(u.string()),operation:u.string().min(1),revision:u.string().min(1).optional()}),"worklog.get":{request:u.object({executionId:u.string().min(1)}),response:u.object({summary:H.nullable()})},"worklog.list":{request:u.object({workflowId:u.string().min(1).optional(),status:A.optional(),limit:u.number().int().positive().optional(),offset:u.number().int().nonnegative().optional()}),response:u.object({items:u.array(H),total:u.number().int().nonnegative()})},"worklog.stats":{request:u.object({workflowId:u.string().min(1).optional(),since:u.number().int().nonnegative().optional(),until:u.number().int().nonnegative().optional()}),response:u.object({stats:yt})},"worklog.changed":u.object({executionId:u.string().min(1)}),"state.get":{request:u.object({executionId:u.string().min(1)}),response:u.object({executionId:u.string().min(1),sequence:u.number().int().nonnegative(),value:r})},"state.patch":{request:u.object({executionId:u.string().min(1),expectedSequence:u.number().int().nonnegative(),patch:u.array(z),nextValue:r}),response:u.object({executionId:u.string().min(1),sequence:u.number().int().positive(),value:r})},"state.updated":u.object({executionId:u.string().min(1),sequence:u.number().int().positive(),patch:u.array(z),value:r,updatedAt:u.number().int().positive()})},Tt=d(`workflow`,wt),Et=Tt.subjects;function Dt(e,t){G(e,t,void 0,0,[],`root`,void 0,void 0)}function G(e,t,n,r,i,a,o,s){let c={parent:n,depth:r,ancestors:i,relationship:a,...o!==void 0&&{index:o},...s!==void 0&&{branchKey:s}};if(t.enter?.(e,c)===!1)return;let l=[...i,e.id],u=r+1;switch(e.type){case`sequence`:{let n=e;for(let r=0;r<n.nodes.length;r++)G(n.nodes[r],t,e,u,l,`sequence-child`,r,void 0);break}case`parallel`:{let n=e;for(let[r,i]of Object.entries(n.branches))G(i,t,e,u,l,`parallel-branch`,void 0,r);break}case`iterate`:G(e.body,t,e,u,l,`iterate-body`,void 0,void 0);break;case`iterate-chain`:G(e.body,t,e,u,l,`iterate-chain-body`,void 0,void 0);break;case`loop`:G(e.body,t,e,u,l,`loop-body`,void 0,void 0);break}t.leave?.(e,c)}function Ot(e){switch(e){case`station`:case`delegate-agent`:case`delegate-role`:case`gate`:return`leaf`;case`parallel`:case`iterate`:case`iterate-chain`:case`loop`:return`control`;case`sequence`:return`structural`}}function kt(e,t,n){return e===`parallel-branch`&&t!==void 0?[{kind:`branch`,key:t}]:e===`sequence-child`&&n!==void 0?[{kind:`index`,value:n}]:e===`iterate-body`||e===`iterate-chain-body`||e===`loop-body`?[{kind:`body`}]:[]}function At(e){return e.replace(/\\/g,`\\\\`).replace(/\//g,`\\/`)}function jt(e){return e.map(e=>{switch(e.kind){case`node`:return`n:${At(e.id)}`;case`branch`:return`b:${At(e.key)}`;case`index`:return`i:${e.value}`;case`body`:return`body`}}).join(`/`)}function Mt(e){let t=[],n=[],r=new Map,i=[],a=[],o=[];return Dt(e.root,{enter(e,s){let c=kt(s.relationship,s.branchKey,s.index),l={kind:`node`,id:e.id};i.push(...c,l),o.push(c.length+1);let u=[...i],d=jt(u),f=a.at(-1);if(t.push({key:d,nodeId:e.id,type:e.type,role:Ot(e.type),path:u,parentKey:f,...s.branchKey!==void 0&&{branchKey:s.branchKey}}),f!==void 0&&s.parent!==void 0)switch(s.parent.type){case`sequence`:{n.push({sourceKey:f,targetKey:d,kind:`contains`});let e=r.get(f);e!==void 0&&n.push({sourceKey:e,targetKey:d,kind:`sequence`}),r.set(f,d);break}case`parallel`:n.push({sourceKey:f,targetKey:d,kind:`branch`});break;case`iterate`:case`iterate-chain`:case`loop`:n.push({sourceKey:f,targetKey:d,kind:`body`});break;default:n.push({sourceKey:f,targetKey:d,kind:`contains`});break}a.push(d)},leave(){let e=o.pop()??0;i.splice(i.length-e,e),a.pop()}}),{nodes:t,edges:n}}function K(e){return q(e.body.nodes,e.id)}function q(e,t){for(let n of e){if(n.type===`loop`)return`Nested loop '${n.id}' found inside loop '${t}' — V1 does not support nested loops`;if(n.type===`sequence`){let e=q(n.nodes,t);if(e)return e}if(n.type===`parallel`)for(let e of Object.values(n.branches)){let n=q(e.nodes,t);if(n)return n}if(n.type===`iterate`||n.type===`iterate-chain`){let e=n.body,r=q(e.nodes,t);if(r)return r}}}const J=new WeakMap,Nt=new WeakMap;function Y(e){let{$schema:t,...n}=u.toJSONSchema(e);return n}function X(e,t,n){let r=J.get(e);if(r!==void 0&&t.set(e.id,r),e.type===`sequence`)for(let r of e.nodes)X(r,t,n);else if(e.type===`parallel`)for(let r of Object.values(e.branches))X(r,t,n);else if(e.type===`iterate`)X(e.body,t,n);else if(e.type===`iterate-chain`)X(e.body,t,n);else if(e.type===`loop`){if(n!==void 0){let t=Nt.get(e);t!==void 0&&n.set(e.gate.handler,t)}X(e.body,t,n)}}function Pt(e,t,n){let r={id:e,type:`station`,prompt:e,...n?.when!==void 0&&{when:n.when},...n?.skip!==void 0&&{skip:n.skip}};return J.set(r,t),r}function Ft(e,t,n){return{id:e,type:`delegate-agent`,agentId:t.agentId,...t.inputExpression!==void 0&&{inputExpression:t.inputExpression},...t.outputSchema!==void 0&&{outputSchema:t.outputSchema},...n?.when!==void 0&&{when:n.when},...n?.skip!==void 0&&{skip:n.skip}}}function It(e,t,n){return{id:e,type:`delegate-role`,role:t,prompt:n?.prompt??e,...n?.when!==void 0&&{when:n.when},...n?.skip!==void 0&&{skip:n.skip},...n?.outputSchema!==void 0&&{outputSchema:n.outputSchema},...n?.timeoutMs!==void 0&&{timeoutMs:n.timeoutMs},...n?.completion!==void 0&&{completion:n.completion}}}function Lt(e,t){return{id:e,type:`gate`,prompt:t.prompt,autoAction:t.autoAction,timeoutMs:t.timeoutMs,...t.title!==void 0&&{title:t.title},...t.resume!==void 0&&{resumeSchema:Y(t.resume)}}}function Rt(e,t,n){let r=`${e}__item`,i={id:r,type:`station`,prompt:r},a={id:e,type:`iterate`,collection:n.collection,body:{id:`${e}__body`,type:`sequence`,nodes:[i]},...n.concurrency!==void 0&&{concurrency:n.concurrency},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}};return J.set(i,t),a}function zt(e,t,n){return{id:e,type:`iterate-chain`,collection:n.collection,body:{id:`${e}__body`,type:`sequence`,nodes:t},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}}}function Bt(e,t,n){let r={id:e,type:`loop`,maxRounds:n.maxRounds,body:{id:`${e}__body`,type:`sequence`,nodes:t},gate:Vt(n),...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}},i=K(r);if(i!==void 0)throw Error(i);return Nt.set(r,n.gate.evaluate),r}function Vt(e){let t=e.gate.escalation;return{handler:e.gate.handler,...e.gate.input!==void 0&&{input:e.gate.input},...e.gate.config!==void 0&&{config:e.gate.config},...t!==void 0&&{escalation:{prompt:t.prompt,autoAction:t.autoAction??`reject`,timeoutMs:t.timeoutMs??null,...t.title!==void 0&&{title:t.title},...t.resumeSchema!==void 0&&{resumeSchema:t.resumeSchema}}}}}function Ht(e){return{type:`bus-event`,subject:f(e.subject),...e.filter!==void 0&&{filter:e.filter},...e.filterExpression!==void 0&&{filterExpression:e.filterExpression}}}function Ut(){return{type:`manual`}}function Wt(e){return{type:`cron`,schedule:e.schedule,...e.timezone!==void 0&&{timezone:e.timezone}}}function Gt(e){return{type:`webhook`,event:e.event,...e.branch!==void 0&&{branch:e.branch},...e.repo!==void 0&&{repo:e.repo}}}function Kt(e){return{type:`extension`,extensionType:e.extensionType,...e.config!==void 0&&{config:e.config}}}function Z(e,t){if(e.has(t))throw Error(`Duplicate step ID: ${t}`);e.add(t)}function Q(e,t){if(Z(e,t.id),t.type===`sequence`)for(let n of t.nodes)Q(e,n);else if(t.type===`parallel`)for(let n of Object.values(t.branches))Q(e,n);else (t.type===`iterate`||t.type===`iterate-chain`||t.type===`loop`)&&Q(e,t.body)}function qt(e,t,n,r,i){let a={};return t.forEach((t,o)=>{if(t.id.length===0)throw Error(`parallel branch at index ${o} has an empty ID`);let s=t.id,c=`${e}__${s}`;Q(n,t),Z(n,c),X(t,r,i),a[s]={id:c,type:`sequence`,nodes:[t]}}),a}function Jt(e,t,n,r,i){let a=`${e}__body`,o=`${e}__item`;Z(r,a),Z(r,o),i.set(o,t);let s={id:o,type:`station`,prompt:o};return{id:e,type:`iterate`,collection:n.collection,body:{id:a,type:`sequence`,nodes:[s]},...n.concurrency!==void 0&&{concurrency:n.concurrency},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}}}function Yt(e,t,n){return t.resume!==void 0&&(n[e]=t.resume),{id:e,type:`gate`,prompt:t.prompt,autoAction:t.autoAction,timeoutMs:t.timeoutMs,...t.title!==void 0&&{title:t.title},...t.resume!==void 0&&{resumeSchema:Y(t.resume)}}}function Xt(e,t,n,r,i,a){let o=`${e}__body`;Z(r,o);for(let e of t)Q(r,e),X(e,i,a);return{id:e,type:`iterate-chain`,collection:n.collection,body:{id:o,type:`sequence`,nodes:t},...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}}}function Zt(e,t,n,r,i,a){let o=`${e}__body`;Z(r,o);for(let e of t)Q(r,e),X(e,i,a);let s={id:e,type:`loop`,maxRounds:n.maxRounds,body:{id:o,type:`sequence`,nodes:t},gate:Vt(n),...n.when!==void 0&&{when:n.when},...n.skip!==void 0&&{skip:n.skip}},c=K(s);if(c!==void 0)throw Error(c);return a.set(n.gate.handler,n.gate.evaluate),s}function Qt(e,t){e.input=n=>(t.zodSchemas.input=n,t.definition.inputSchema=Y(n),e),e.config=n=>(t.zodSchemas.config=n,t.definition.configSchema=Y(n),e),e.output=n=>(t.zodSchemas.output=n,t.definition.outputSchema=Y(n),e),e.artifact=n=>(n.schema!==void 0&&(t.zodSchemas.artifact=n.schema),t.definition.artifact={kind:n.kind,schemaVersion:n.schemaVersion,scope:n.scope,...n.resolve!==void 0&&{resolve:n.resolve},...n.create!==void 0&&{create:n.create},...n.statusPath!==void 0&&{statusPath:n.statusPath}},e),e.state=e=>(t.definition.state={schema:e.schema,...e.initial!==void 0&&{initial:e.initial}},$(t))}function $t(e,t){let{rootNodes:n,runtimeHandlers:r,runtimeLoopGates:i,registeredIds:a,zodGates:o}=t;e.station=(t,i,o)=>(Z(a,t),n.push({id:t,type:`station`,prompt:t,...o?.when!==void 0&&{when:o.when},...o?.skip!==void 0&&{skip:o.skip}}),r.set(t,i),e),e.delegateToAgent=(t,r,i)=>{Z(a,t);let o={id:t,type:`delegate-agent`,agentId:r.agentId,...r.inputExpression!==void 0&&{inputExpression:r.inputExpression},...r.outputSchema!==void 0&&{outputSchema:r.outputSchema},...i?.when!==void 0&&{when:i.when},...i?.skip!==void 0&&{skip:i.skip}};return n.push(o),e},e.delegateToRole=(t,r,i)=>(Z(a,t),n.push({id:t,type:`delegate-role`,role:r,prompt:i?.prompt??t,...i?.when!==void 0&&{when:i.when},...i?.skip!==void 0&&{skip:i.skip},...i?.outputSchema!==void 0&&{outputSchema:i.outputSchema},...i?.timeoutMs!==void 0&&{timeoutMs:i.timeoutMs},...i?.completion!==void 0&&{completion:i.completion}}),e),e.parallel=(t,o,s)=>(Z(a,t),n.push({id:t,type:`parallel`,mode:o.mode??`all-settled`,branches:qt(t,s,a,r,i),...o.when!==void 0&&{when:o.when},...o.skip!==void 0&&{skip:o.skip}}),e),e.gate=(t,r)=>(Z(a,t),n.push(Yt(t,r,o)),e),e.iterate=(t,i,o)=>(Z(a,t),n.push(Jt(t,i,o,a,r)),e),e.iterateChain=(t,o,s)=>(Z(a,t),n.push(Xt(t,o,s,a,r,i)),e),e.loop=(t,o,s)=>(Z(a,t),n.push(Zt(t,o,s,a,r,i)),e),e.addNode=e=>en(e,a,r,i,n)}function en(e,t,n,r,i){Q(t,e),X(e,n,r),i.push(e)}function $(e){let t={id:e.definition.id,definition:e.definition,runtimeHandlers:e.runtimeHandlers,runtimeFactories:e.runtimeFactories,runtimeLoopGates:e.runtimeLoopGates,source:void 0,get zodSchemas(){return e.zodSchemas},addTrigger(t){return e.triggers.push(t),$(e)}};return Qt(t,e),$t(t,e),t}function tn(e,t){let n=[],r=new Map,i=new Map,a=new Set,o={},s={gates:o},c=new Map,l=t?.triggers?[...t.triggers]:[];return $({rootNodes:n,runtimeHandlers:r,runtimeFactories:c,runtimeLoopGates:i,registeredIds:a,zodGates:o,zodSchemas:s,definition:{id:e,...t?.name!==void 0&&{name:t.name},...t?.description!==void 0&&{description:t.description},root:{id:`${e}__root`,type:`sequence`,nodes:n},triggers:l,scope:{type:`global`}},triggers:l})}function nn(e){if(e.workflows.length===0)throw Error(`defineWorkflowBundle: workflows must not be empty`);return{workflows:Object.freeze([...e.workflows])}}const rn=u.enum([`artifact.created`,`artifact.revised`,`artifact.status.changed`]),an=u.record(u.string(),r),on=u.object({type:u.string().min(1),input:u.record(u.string(),r).optional(),executionHints:m.optional()}),sn=u.object({id:u.string().min(1),description:u.string().optional(),on:rn,when:an.optional(),action:on,enabled:u.boolean().default(!0)});export{L as $,Ce as $t,ht as A,x as At,B,M as Bt,Tt as C,Te as Ct,gt as D,le as Dt,Et as E,Ne as Et,pt as F,pe as Ft,ct as G,_e as Gt,tt as H,ge as Ht,ft as I,me as It,st as J,C as Jt,ot as K,we as Kt,dt as L,xe as Lt,yt as M,b as Mt,vt as N,D as Nt,bt as O,Pe as Ot,mt as P,k as Pt,Ye as Q,he as Qt,lt as R,j as Rt,Dt as S,Ee as St,wt as T,A as Tt,at as U,N as Ut,it as V,Se as Vt,nt as W,ve as Wt,Ze as X,S as Xt,z as Y,w as Yt,Xe as Z,fe as Zt,Bt as _,Me as _t,nn as a,v as an,Ke as at,K as b,Oe as bt,Wt as c,ne as cn,Le as ct,Gt as d,p as dn,He as dt,P as en,Je as et,Ft as f,Fe as ft,zt as g,_ as gt,Rt as h,Ue as ht,sn as i,E as in,We as it,_t as j,ue as jt,H as k,ye as kt,Kt as l,m as ln,Ie as lt,Lt as m,Ve as mt,an as n,de as nn,qe as nt,tn as o,h as on,Re as ot,It as p,F as pt,rt as q,be as qt,rn as r,O as rn,Be as rt,Ht as s,re as sn,ze as st,on as t,T as tn,I as tt,Ut as u,te as un,Ge as ut,Pt as v,je as vt,xt as w,ke as wt,Mt as x,De as xt,Y as y,Ae as yt,ut as z,y as zt};
|
|
@@ -4,12 +4,12 @@ import * as _$_makaio_core0 from "@makaio/framework/core";
|
|
|
4
4
|
import { IMakaioBus } from "@makaio/framework/bus";
|
|
5
5
|
import * as _$_makaio_contracts0 from "@makaio/framework/contracts";
|
|
6
6
|
import { JsonPatchOperation, JsonValue, WorkflowExecutionSchema, WorkflowListQuerySchema } from "@makaio/framework/contracts";
|
|
7
|
-
import * as _$_makaio_storage_core0 from "@makaio/framework/storage";
|
|
8
7
|
import * as _$drizzle_orm_sqlite_core0 from "drizzle-orm/sqlite-core";
|
|
9
8
|
import * as _$drizzle_orm_pg_core0 from "drizzle-orm/pg-core";
|
|
10
9
|
import * as _$_makaio_storage_drizzle0 from "@makaio/framework/storage/drizzle";
|
|
11
10
|
import { MakaioDatabase } from "@makaio/framework/storage/drizzle";
|
|
12
11
|
import * as _$drizzle_orm0 from "drizzle-orm";
|
|
12
|
+
import * as _$_makaio_storage_core0 from "@makaio/framework/storage";
|
|
13
13
|
import { WorkflowExpressionContext } from "@makaio/framework/expression";
|
|
14
14
|
|
|
15
15
|
//#region subsystems/workflow-engine/src/storage/namespace.d.ts
|
|
@@ -946,10 +946,10 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
946
946
|
frameId: z.ZodString;
|
|
947
947
|
nodeId: z.ZodString;
|
|
948
948
|
nodeType: z.ZodEnum<{
|
|
949
|
-
sequence: "sequence";
|
|
950
949
|
station: "station";
|
|
951
950
|
"delegate-agent": "delegate-agent";
|
|
952
951
|
"delegate-role": "delegate-role";
|
|
952
|
+
sequence: "sequence";
|
|
953
953
|
parallel: "parallel";
|
|
954
954
|
gate: "gate";
|
|
955
955
|
iterate: "iterate";
|
|
@@ -992,10 +992,10 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
992
992
|
frameId: z.ZodString;
|
|
993
993
|
nodeId: z.ZodString;
|
|
994
994
|
nodeType: z.ZodEnum<{
|
|
995
|
-
sequence: "sequence";
|
|
996
995
|
station: "station";
|
|
997
996
|
"delegate-agent": "delegate-agent";
|
|
998
997
|
"delegate-role": "delegate-role";
|
|
998
|
+
sequence: "sequence";
|
|
999
999
|
parallel: "parallel";
|
|
1000
1000
|
gate: "gate";
|
|
1001
1001
|
iterate: "iterate";
|
|
@@ -1035,10 +1035,10 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
1035
1035
|
frameId: z.ZodString;
|
|
1036
1036
|
nodeId: z.ZodString;
|
|
1037
1037
|
nodeType: z.ZodEnum<{
|
|
1038
|
-
sequence: "sequence";
|
|
1039
1038
|
station: "station";
|
|
1040
1039
|
"delegate-agent": "delegate-agent";
|
|
1041
1040
|
"delegate-role": "delegate-role";
|
|
1041
|
+
sequence: "sequence";
|
|
1042
1042
|
parallel: "parallel";
|
|
1043
1043
|
gate: "gate";
|
|
1044
1044
|
iterate: "iterate";
|
|
@@ -2713,7 +2713,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
2713
2713
|
tableName: "workflow_execution_frames";
|
|
2714
2714
|
dataType: "string";
|
|
2715
2715
|
columnType: "SQLiteText";
|
|
2716
|
-
data: "
|
|
2716
|
+
data: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain" | "loop";
|
|
2717
2717
|
driverParam: string;
|
|
2718
2718
|
notNull: true;
|
|
2719
2719
|
hasDefault: false;
|
|
@@ -2726,7 +2726,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
2726
2726
|
generated: undefined;
|
|
2727
2727
|
}, {}, {
|
|
2728
2728
|
length: number | undefined;
|
|
2729
|
-
$type: "
|
|
2729
|
+
$type: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain" | "loop";
|
|
2730
2730
|
}>;
|
|
2731
2731
|
path: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
2732
2732
|
name: string;
|
|
@@ -4552,7 +4552,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
4552
4552
|
tableName: "worklog_frame_entries";
|
|
4553
4553
|
dataType: "string";
|
|
4554
4554
|
columnType: "SQLiteText";
|
|
4555
|
-
data: "
|
|
4555
|
+
data: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain" | "loop";
|
|
4556
4556
|
driverParam: string;
|
|
4557
4557
|
notNull: true;
|
|
4558
4558
|
hasDefault: false;
|
|
@@ -4565,7 +4565,7 @@ declare const WorkflowStorageNamespace: _$_makaio_storage_core0.StorageNamespace
|
|
|
4565
4565
|
generated: undefined;
|
|
4566
4566
|
}, {}, {
|
|
4567
4567
|
length: number | undefined;
|
|
4568
|
-
$type: "
|
|
4568
|
+
$type: "station" | "delegate-agent" | "delegate-role" | "sequence" | "parallel" | "gate" | "iterate" | "iterate-chain" | "loop";
|
|
4569
4569
|
}>;
|
|
4570
4570
|
path: _$drizzle_orm_sqlite_core0.SQLiteColumn<{
|
|
4571
4571
|
name: string;
|
|
@@ -6208,10 +6208,10 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6208
6208
|
frameId: z.ZodString;
|
|
6209
6209
|
nodeId: z.ZodString;
|
|
6210
6210
|
nodeType: z.ZodEnum<{
|
|
6211
|
-
sequence: "sequence";
|
|
6212
6211
|
station: "station";
|
|
6213
6212
|
"delegate-agent": "delegate-agent";
|
|
6214
6213
|
"delegate-role": "delegate-role";
|
|
6214
|
+
sequence: "sequence";
|
|
6215
6215
|
parallel: "parallel";
|
|
6216
6216
|
gate: "gate";
|
|
6217
6217
|
iterate: "iterate";
|
|
@@ -6254,10 +6254,10 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6254
6254
|
frameId: z.ZodString;
|
|
6255
6255
|
nodeId: z.ZodString;
|
|
6256
6256
|
nodeType: z.ZodEnum<{
|
|
6257
|
-
sequence: "sequence";
|
|
6258
6257
|
station: "station";
|
|
6259
6258
|
"delegate-agent": "delegate-agent";
|
|
6260
6259
|
"delegate-role": "delegate-role";
|
|
6260
|
+
sequence: "sequence";
|
|
6261
6261
|
parallel: "parallel";
|
|
6262
6262
|
gate: "gate";
|
|
6263
6263
|
iterate: "iterate";
|
|
@@ -6297,10 +6297,10 @@ declare const WorkflowStorageSubjects: _$_makaio_core0.BusSubjects<_$_makaio_cor
|
|
|
6297
6297
|
frameId: z.ZodString;
|
|
6298
6298
|
nodeId: z.ZodString;
|
|
6299
6299
|
nodeType: z.ZodEnum<{
|
|
6300
|
-
sequence: "sequence";
|
|
6301
6300
|
station: "station";
|
|
6302
6301
|
"delegate-agent": "delegate-agent";
|
|
6303
6302
|
"delegate-role": "delegate-role";
|
|
6303
|
+
sequence: "sequence";
|
|
6304
6304
|
parallel: "parallel";
|
|
6305
6305
|
gate: "gate";
|
|
6306
6306
|
iterate: "iterate";
|
|
@@ -7442,7 +7442,7 @@ declare const worklogFrameEntriesDual: _$_makaio_storage_drizzle0.DualTable<"wor
|
|
|
7442
7442
|
/** 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
7443
|
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
7444
|
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>>, "
|
|
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" | "loop">, _$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" | "loop">>;
|
|
7446
7446
|
/**
|
|
7447
7447
|
* Ordered path of frame IDs from the root frame to this frame (inclusive).
|
|
7448
7448
|
* Stored as a JSON array for tree correlation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{C as e,F as t,G as n,N as r,S as i,T as a,V as o,Y as s,j as c,v as l}from"../loop-gate-handlers-Bjmat-K3.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-BmRhhi-3.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,i as WorkflowStorageNamespace,e as WorkflowStorageSubjects,w as buildWorkflowExpressionContextFromResolvedInputs,m as createWorkflowEnginePackage,_ as getWorkflowState,d as initializeWorkflowState,p as patchWorkflowState,h as registerDrizzleWorkflowStorage,l as runShellStep,a as workflowDefinitionsDual,g as workflowEnginePackage,c as workflowExecutionStateDual,r as workflowExecutionStateEventsDual,t as workflowExecutionsDual,o as workflowStepSpansDual,n as worklogFrameEntriesDual,s as worklogSummariesDual};
|
|
@@ -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-BmRhhi-3.mjs";export{n as WorkflowEngineToken,e as createWorkflowEnginePackage,t as workflowEnginePackage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{C as e,Z as t,a as n,b as r,i,m as a,n as o,o as s,s as c,t as l}from"../loop-gate-handlers-Bjmat-K3.mjs";import{WORKFLOW_CANCELLED_REASON as u}from"@makaio/framework/contracts";async function d(n,r,i,a){let o=await g(n,r,i);return await n.request(e.setExecution,{execution:o}),i===`completed`?await n.emit(t.execution.completed,{executionId:r.executionId,workflowId:r.workflowId,totalDuration:0,completedAt:o.completedAt}):await n.emit(t.execution.cancelled,{executionId:r.executionId,workflowId:r.workflowId,reason:a,completedAt:o.completedAt}),i===`cancelled`?{executionId:r.executionId,workflowId:r.workflowId,status:`cancelled`,...a===void 0?{}:{reason:a}}:{executionId:r.executionId,workflowId:r.workflowId,status:`completed`}}function f(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 p(e){let t,n=()=>{t=a({bus:e.bus,activeExecutions:e.activeExecutions,shellAbortControllers:e.shellAbortControllers,activeRunnerSteps:e.activeRunnerSteps,cancelTimeoutMs:r.cancelTimeoutMs},e.executionId,u).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 m(t,n){let r=await t.requestOptional(e.getExecution,{executionId:n});return r.handled?r.data.execution?.startedAt??void 0:void 0}async function h(e,t){return{id:t.executionId,workflowId:t.workflowId,coordinatorSessionId:t.coordinatorSessionId,status:`running`,inputs:t.inputs,config:t.config??{},startedAt:await m(e,t.executionId)??Date.now(),triggerPayload:t.triggerPayload,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},scope:t.scope}}async function g(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 m(e,t.executionId)??r,completedAt:r,triggerPayload:t.triggerPayload,...t.artifactRef===void 0?{}:{artifactRef:t.artifactRef},scope:t.scope}}async function _(e,t,r,i,a,c,l,d,f){let p=e.suspensionStrategy===`wait-in-process`?void 0:await v(e.executionId,l,{required:!0}),m=await n({definition:t,execution:r,runContext:i,zodSchema:f?.artifact,bus:l}),h=new s(e.executionId,e.workflowId,t,r,a,l,d,void 0,m,{context:e.context,env:e.env},{suspensionStrategy:e.suspensionStrategy,resumeFrames:p,runtimeLoopGates:c}),g=h.buildExpressionContext(),_=await o(t.root,h,g);return _.status===`failed`?{status:`failed`,error:_.error}:_.status===`paused`?{status:`paused`,pausedAtGateId:_.pausedAtGateId,pausedAtFrameId:_.pausedAtFrameId}:_.status===`cancelled`||d.aborted?{status:`cancelled`,reason:u}:{status:`completed`,artifact:m?.current}}async function v(t,n,r={}){try{let a=await n.requestOptional(e.listFrames,{executionId:t});if(!a.handled){if(r.required===!0)throw Error(`Frame storage handler is required to resume execution '${t}'.`);return}return a.data.frames.length===0?void 0:i(a.data.frames)}catch(e){if(r.required===!0)throw e;return}}function y(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 b(n,r,i,a,o){i.status=`paused`,await n.request(e.setExecution,{execution:i}),await n.emit(t.execution.paused,{executionId:r.executionId,workflowId:r.workflowId,pausedAtGateId:a,pausedAtFrameId:o})}async function x(e,n,r,i,a,o){r===`completed`?await e.emit(t.execution.completed,{executionId:n.executionId,workflowId:n.workflowId,totalDuration:a-i.startedAt,completedAt:a}):r===`cancelled`?await e.emit(t.execution.cancelled,{executionId:n.executionId,workflowId:n.workflowId,reason:u,completedAt:a}):await e.emit(t.execution.failed,{executionId:n.executionId,workflowId:n.workflowId,error:o??`Workflow execution failed`,completedAt:a})}async function S(t){let{config:n,loaded:r,bus:i,signal:a}=t,{definition:o}=r;if(a.aborted)return d(i,n,`cancelled`,u);let s=await h(i,n),m=y(n,o);await c(i,s,m,o);let g=new Map(r.runtimeHandlers),v=r.runtimeLoopGates??new Map,S=new Map,C=new Map,w=new Map;S.set(n.executionId,{execution:s,workflow:o,runContext:m,runtimeHandlers:g,runtimeLoopGates:new Map(v)});let T=p({signal:a,executionId:n.executionId,bus:i,activeExecutions:S,shellAbortControllers:C,activeRunnerSteps:w}),E={status:`completed`},D=!1;try{o.root.nodes.length>0&&(l(o,v),E=await _(n,o,s,m,g,v,i,a,r.zodSchemas))}catch(e){E={status:`failed`,error:e instanceof Error?e.message:String(e)}}finally{D=await T(),S.clear()}if(D)return f(n,{status:`cancelled`,reason:u});if((a.aborted||s.status===`cancelled`)&&(E={status:`cancelled`,reason:u}),E.status===`paused`)return await b(i,n,s,E.pausedAtGateId,E.pausedAtFrameId),f(n,E);let O=Date.now(),k=E.status===`failed`?E.error:void 0;return s.status=E.status,s.completedAt=O,s.error=k,await i.request(e.setExecution,{execution:s}),await x(i,n,E.status,s,O,k),f(n,E)}export{S as runWorkflowOrchestrator};
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as e,a as t,c as n,ct as r,d as i,f as a,g as o,h as s,i as c,l,m as u,o as d,p as f,s as p,t as m,u as h,v as g}from"./schemas-uID59wR8.mjs";import"./compression-C5JAWdgZ.mjs";import"./provider-context-CqMgPOWF.mjs";import"./contracts/adapter/schemas/session-lineage.mjs";import{createBusNamespace as _}from"@makaio/framework/core";const v={getCapabilities:r,startAgent:g,infer:e,listAgents:o,getAgent:s,stopAgent:u,rehydrateAgent:f,getConfigSchema:a,"agent.created":i,"session.created":h,"session.discovered":m,"session.usage":l,"session.closed":n,log:p,error:d,initialized:t,quota:c},y=_(`adapter`,v),b=y.subjects;export{b as n,v as r,y as t};
|
package/dist/bus-BgodbPl9.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{z as e}from"zod";import{webcrypto as t}from"node:crypto";function n(e){if(typeof e!=`object`||!e)return!1;let t=e;return`$in`in t||`$ne`in t||`$exists`in t||`$startsWith`in t||`$endsWith`in t}function r(t){return typeof t==`object`&&!!t&&`request`in t&&`response`in t&&t.request instanceof e.ZodType&&t.response instanceof e.ZodType}function i(e){return typeof e==`object`&&!!e&&`__channel`in e&&e.__channel===!0&&`schema`in e}function a(e){return{__channel:!0,schema:e}}function o(e){return typeof e==`object`&&!!e&&`__local`in e&&e.__local===!0&&`schema`in e}function s(e){return{__local:!0,schema:e}}function c(e){return typeof e==`object`&&!!e&&`__defaultTransports`in e&&(e.__defaultTransports===`all`||e.__defaultTransports===`local-only`)&&`schema`in e}function l(e,t){return{__defaultTransports:t,schema:e}}function u(e){return typeof e==`object`&&!!e&&`__collectorOnly`in e&&e.__collectorOnly===!0&&`schema`in e}function d(e){return{__collectorOnly:!0,schema:e}}function f(e){return o(e)||u(e)||i(e)||c(e)?e.schema:e}function p(e,t,n){let a={};for(let[s,l]of Object.entries(t)){let t=s.split(`.`),u=a;for(let e=0;e<t.length-1;e++)u[t[e]]??={},u=u[t[e]];let d=o(l),p=i(l),m=c(l)?l.__defaultTransports:n,h={subject:s,$meta:{namespace:e,isRequest:r(f(l)),local:d,channel:p,...m!==void 0&&{defaultTransports:m}}};u[t[t.length-1]]=h}return a.$all={subject:`*`,$meta:{namespace:e,isRequest:!1,local:!1,channel:!1}},a}function m(e){return`${e.$meta.namespace}.${e.subject}`}function h(e,t,n){let r=n?.defaultTransports,i;if(n!==void 0){let{defaultTransports:e,...t}=n;i=Object.keys(t).length>0?t:void 0}return{name:e,subjects:p(e,t,r),schemas:t,...i===void 0?{}:{options:i},...r===void 0?{}:{defaultTransports:r}}}e.object({cwd:e.string(),env:e.record(e.string(),e.string()),platform:e.enum([`posix`,`windows`]),signal:e.custom().optional(),constraints:e.record(e.string(),e.unknown()).optional(),sessionId:e.string().optional(),subagentId:e.string().optional(),subagentDepth:e.number().optional()});var g=class extends Error{subject;constructor(e,t){super(e),this.subject=t,this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}};const _=`makaio.observability`;function v(e){let t=e.meta()?.[_];if(typeof t!=`object`||!t)return;let n=t;return n.kind===`schema`||n.kind===`field`?n:void 0}function y(e,t){return e.meta({...e.meta(),[_]:t})}function ee(t){if(t instanceof e.ZodOptional||t instanceof e.ZodNullable||t instanceof e.ZodDefault||t instanceof e.ZodCatch||t instanceof e.ZodReadonly)return t.unwrap()}function te(e){let t=e;for(;t;){let e=v(t);if(e?.kind===`field`)return e;t=ee(t)}}function ne(e){let t=v(e);if(t?.kind===`schema`)return{traceAll:t.traceAll}}function re(e){let t=te(e);if(t)return{visibility:t.visibility,attributeName:t.attributeName}}const ie={schema(e,t){return y(e,{kind:`schema`,traceAll:t.traceAll})},field(e,t){return y(e,{kind:`field`,visibility:t.visibility,attributeName:t.attributeName})},hidden(e){return y(e,{kind:`field`,visibility:`hidden`})},count(e,t){return y(e,{kind:`field`,visibility:`count`,attributeName:t})},attribute(e,t){return y(e,{kind:`field`,visibility:`attribute`,attributeName:t})}};function b(e,t){if(t===`*`)return!0;if(!t.endsWith(`*`))return e===t;if(t.endsWith(`:*`)){let n=t.slice(0,-2);return e.startsWith(n+`:`)}if(t.endsWith(`.*`)){let n=t.slice(0,-2);return e.startsWith(n+`.`)}return!1}function x(e,t){for(let n of t)if(b(e,n))return!0;return!1}function ae(e,t){if(e==null)return;let n=t.split(`.`),r=e;for(let e of n){if(typeof r!=`object`||!r)return;r=r[e]}return r}function oe(e,t){if(n(t)){if(`$in`in t)return t.$in.includes(e);if(`$ne`in t)return e!==t.$ne;if(`$exists`in t){let n=e!==void 0;return t.$exists?n:!n}return`$startsWith`in t?typeof e==`string`&&e.startsWith(t.$startsWith):`$endsWith`in t?typeof e==`string`&&e.endsWith(t.$endsWith):!1}return e===t}function S(e,t){for(let[n,r]of Object.entries(t))if(!oe(ae(e,n),r))return!1;return!0}function se(e,t){if(!(!e&&!t))return e?t?{...e,...t}:e:t}var C=class extends g{subject;constructor(e,t){super(e),this.subject=t,this.name=this.constructor.name,Error.captureStackTrace?.(this,this.constructor)}},ce=class extends C{constructor(e){super(`Authentication failed for channel endpoint "${e}"`,e),this.name=`ChannelAuthError`}},le=class extends C{constructor(e){super(`Channel "${e}" is closed`,e),this.name=`ChannelClosedError`}},ue=class extends C{constructor(e){super(`Subject "${e}" is channel-only and cannot be used on the public bus. Use a DirectChannel instead.`,e),this.name=`ChannelOnlyError`}},de=class extends C{constructor(e){super(`Subject "${e}" is local-only and cannot be invoked over a transport. Register a non-local handler on each node that needs to respond to this subject.`,e),this.name=`LocalSubjectError`}};const fe=`NO_HANDLER`;var w=class extends C{code=fe;constructor(e){super(`No handler registered for request subject "${e}"`,e)}},pe=class extends C{cause;constructor(e,t,n){super(`Request to "${e}" failed: ${t}`,e),this.cause=n,n&&(this.cause=n)}},me=class extends C{timeoutMs;constructor(e,t){super(`Request to "${e}" timed out after ${t}ms`,e),this.timeoutMs=t}},he=class extends C{zodError;constructor(e,t){let n=t.issues.map(e=>`${e.path.join(`.`)}: ${e.message}`);super(`Validation failed for subject "${e}":\n${n.join(`
|
|
2
|
-
`)}`,e),this.zodError=t}};function ge(e,t){if(!(e instanceof Error))return!1;if(e instanceof w)return e.subject===t;let n=e;return n.code===`NO_HANDLER`?n.subject===t:!1}function T(e){return`subject`in e&&`namespace`in e?`${e.namespace}.${e.subject}`:null}function _e(e,t){return e<t?-1:+(e>t)}function ve(e,t){return e.transportRegistry.names().filter(e=>e!==t).sort((e,t)=>_e(String(e),String(t))).map(t=>({name:t,transport:e.transportRegistry.getTransport(t)})).filter(e=>e.transport!==void 0)}function ye(e,t){return ve(e,t).filter(({transport:e})=>e.isReady?.()!==!1)}const be=new Set([`message`,`name`,`stack`,`cause`,`subject`,`code`]);function E(e){if(!(e instanceof Error))return{message:typeof e==`string`?e:`Unknown error`};let t={message:e.message},n=e.cause instanceof Error?e.cause:e,r=`code`in e?e:n;`code`in r&&typeof r.code==`string`&&(t.code=r.code);let i=`subject`in e?e.subject:void 0,a=`subject`in n?n.subject:void 0;typeof i==`string`?t.subject=i:typeof a==`string`&&(t.subject=a);for(let e of Object.keys(n)){if(be.has(e))continue;let r=Object.getOwnPropertyDescriptor(n,e)?.value;typeof r==`function`||r===void 0||typeof r==`bigint`||typeof r==`symbol`||(t.data??={},t.data[e]=r)}return t}async function D(e,t,n){try{await e.send({type:`response`,correlationId:t.correlationId,error:E(n)})}catch(e){console.error(`[TransportRegistry] Failed to send error response:`,e)}}function xe(e){let t=Error(e.message);if(e.code&&(t.code=e.code),e.subject&&(t.subject=e.subject),e.data)for(let[n,r]of Object.entries(e.data))t[n]=r;return t}const O=Object.freeze({local:!0}),k=Object.freeze({local:!1});function Se(e,t,n,r){if(n.size>0&&e&&!x(e,n))return!1;if(e&&t!==void 0){for(let[n,i]of r)if((n===e||x(e,new Set([n])))&&!S(t,i))return!1}return!0}function Ce(e,t){if(e.type===`response`){let n=e;return n.error?t.reject(n.correlationId,xe(n.error)):t.resolve(n.correlationId,n.result),!0}if(e.type===`broadcast-response`){let n=e;return n.error?t.reject(n.correlationId,xe(n.error)):t.resolve(n.correlationId,n.results??[]),!0}return!1}function we(e){return e.type===`request`}function Te(e){return e.type===`broadcast`}function Ee(e,t,n,r){return we(e)||Te(e)?t.track(e.correlationId,n,r):Promise.resolve(!0)}function De(e){let t=typeof e==`object`&&e?e:{};return{message:e instanceof Error?e.message:typeof t.message==`string`?t.message:String(e),code:t.code,subject:typeof t.subject==`string`?t.subject:void 0,data:t.data}}function Oe(e){if(e.length===0)return[];if(e.length===1)return e[0].slice();let t=[];for(let n of e)for(let e of n)t.push(e);return t.sort((e,t)=>t.priority-e.priority),t}function A(e,t,n,r=`strict`,i){if(process.env.NODE_ENV===`production`||r===`skip`)return;let a=n.safeParse(t);if(!a.success){if(r===`lenient`){if(i)try{i({subject:e,payload:t,issues:a.error.issues})}catch(t){console.error(`[BUS] onSchemaViolation callback threw for "${e}":`,t)}return}throw console.error(`Payload validation failed for subject "${e}":`,JSON.stringify(t)),new he(e,a.error)}}function ke(e,t,n){let{mode:i,onViolation:a}=e.namespaceRegistry.getValidationConfig(t);if(i===`skip`)return;let o=e.namespaceRegistry.getSchema(t);!o||r(o)||A(t,n,o,i,a)}function Ae(e){let t=!e,n=new URL(e??`ws://localhost:6252/bus`);if(t){let e=parseInt(n.port,10);return{href:`${n.protocol}//${n.hostname}:${e}${n.pathname}`,port:e,isDefault:!0}}let r=n.port?parseInt(n.port,10):void 0;return{href:n.href,port:r,isDefault:!1}}function je(e,t){let{mode:n,onViolation:i}=e.namespaceRegistry.getValidationConfig(t);if(n===`skip`)return{requestSchema:void 0,responseSchema:void 0,mode:n,onViolation:void 0};let a=e.namespaceRegistry.getSchema(t);return!a||!r(a)?{requestSchema:void 0,responseSchema:void 0,mode:n,onViolation:i}:{requestSchema:a.request,responseSchema:a.response,mode:n,onViolation:i}}function Me(e,t,n){n.requestSchema&&A(e,t,n.requestSchema,n.mode,n.onViolation)}function j(e,t,n){n.responseSchema&&A(e,t,n.responseSchema,n.mode,n.onViolation)}function Ne(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>>1;e[i].priority>=t.priority?n=i+1:r=i}e.splice(n,0,t)}function Pe(e,t,n,r){let i=new Set,a=e.requestHandlers.get(r);if(a)for(let e of a)i.add(e.priority);let o=e.eventHandlers.has(r),s=e.remoteRequestHandlers.get(r);if(s)for(let e of s)e.transport!==t&&i.add(e.priority);let c=e.remoteEventHandlers.get(r),l=c!==void 0&&(c.size>1||c.size===1&&!c.has(t));return i.size===0&&!o&&!l?Promise.resolve(n.unsubscribe(r)).catch(e=>{console.debug(`[AdvertisedState] unsubscribe propagation failed`,{transport:t,subject:r,error:e})}):Promise.resolve(n.subscribe(r,void 0,[...i])).catch(e=>{console.debug(`[AdvertisedState] subscribe propagation failed`,{transport:t,subject:r,priorities:[...i],error:e})})}function M(e,t,n){let r=[];for(let i of e.transportRegistry.names()){if(t!==null&&i===t)continue;let a=e.transportRegistry.getTransport(i);if(a)for(let t of n)r.push(Pe(e,String(i),a,t))}return r.length>0?Promise.allSettled(r).then(()=>void 0):Promise.resolve()}async function Fe(e,t,n,r){let i=new Set;for(let t of e.requestHandlers.keys())i.add(t);for(let t of e.eventHandlers.keys())i.add(t);for(let t of e.remoteRequestHandlers.keys())i.add(t);for(let t of e.remoteEventHandlers.keys())i.add(t);let a=String(t),o=[];for(let t of i)o.push(Pe(e,a,n,t));await Promise.allSettled(o),!r?.aborted&&n.isReady?.()!==!1&&n.ready!==void 0&&Promise.resolve(n.send({type:`subscribe-sync-complete`})).catch(e=>{console.debug(`[AdvertisedState] subscribe-sync-complete send failed`,{transport:a,error:e})})}const N=new Set;function Ie(e,t,n){if(process.env.NODE_ENV===`production`||process.env.MAKAIO_DEBUG!==`true`||t.subject.includes(`*`)||t.$meta.namespace.startsWith(`channel:`)||e.namespaceRegistry.getSchema(n)!==void 0||N.has(n))return;N.add(n);let r=t.$meta.namespace;console.warn(`[MakaioBus] Subject '${n}' used but namespace '${r}' is not registered. Validation and local-subject routing are disabled. Call registerNamespace() at boot.`)}const Le=process.env.NODE_ENV===`test`?()=>N.clear():void 0,Re=Symbol(`onPropagationPromise`);function ze(e){return e?.[Re]}async function Be(e){await(ze(e)??Promise.resolve())}function Ve(e,t,n,r,i){let a=e[t];a.has(n)||a.set(n,[]),Ne(a.get(n),{handler:r,priority:i})}function He(e,t,n,r){let i=e[t],a=i.get(n);if(a){let e=a.findIndex(e=>e.handler===r);e!==-1&&a.splice(e,1),a.length===0&&i.delete(n)}}function P(e,t,n,r){let i=t.subject,a=m(t),o=t.$meta.isRequest,s=i.includes(`*`)||i.includes(`:`),c=s&&!o;s||Ie(e,t,a);let l=r?.filter?e=>{if(S(e.payload,r.filter))return n(e)}:n,u=s?r?.handlerKind:void 0,d=u===`both`?[`eventHandlers`,`requestHandlers`]:u===`event`?[`eventHandlers`]:u===`request`?[`requestHandlers`]:c?[`eventHandlers`,`requestHandlers`]:o?[`requestHandlers`]:[`eventHandlers`],f=r?.priority??0;for(let t of d)Ve(e,t,a,l,f);let p=M(e,null,[a]),h=()=>{for(let t of d)He(e,t,a,l);M(e,null,[a])};return h[Re]=p,h}let F,I;function Ue(e){if(e<0||e>1024)throw RangeError(`Wrong ID size`);!F||F.length<e?(F=Buffer.allocUnsafe(e*128),t.getRandomValues(F),I=0):I+e>F.length&&(t.getRandomValues(F),I=0),I+=e}function L(e=21){Ue(e|=0);let t=``;for(let n=I-e;n<I;n++)t+=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`[F[n]&63];return t}function R(e){return e===void 0?!1:Array.isArray(e)?e.length===0:e.size===0}function We(e,t,n){if(n.$meta.local)return[];let r=m(n);if(e.namespaceRegistry.isCollectorOnlySubject(r))return[];if(t===void 0)return n.$meta.defaultTransports===`local-only`?[]:ye(e).map(({transport:e})=>e);let i=Array.isArray(t)?t:Array.from(t);if(R(t))return[];let a=[];for(let t of i){let n=e.transportRegistry.getTransport(t);if(!n){console.warn(`Transport "${String(t)}" not found for request "${r}"`);continue}a.push(n)}return a}function Ge(e,t,n,r){if(r!==void 0)return r;let i=t.$meta.defaultTransports;if(i!==void 0)return i===`local-only`?[]:void 0;if(e.namespaceRegistry.getDefaultTransports(n)===`local-only`)return[]}const Ke=1e3,z=new Set;function qe(e){if(z.size>=Ke){Ke/2;let e=0;for(let t of z)if(z.delete(t),e++,e>=500)break}z.add(e)}function Je(){process.env.NODE_ENV!==`production`&&z.clear()}function B(e,t,n,r,i,a,o){if(process.env.NODE_ENV===`production`||e.anyHandlers.size===0)return;if(o!==void 0){if(z.has(o))return;qe(o)}let s={type:t,subject:n,namespace:r,payload:i,messageId:a,correlationId:o};for(let t of e.anyHandlers)Promise.resolve().then(()=>t(s)).catch(e=>{console.error(`[${a}] Error in __onAny handler:`,e)})}function V(e){return e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`&&Number.isFinite(e)}function Ye(e){if(V(e))return!0;if(!Array.isArray(e)||!e.every(V))return!1;if(e.length<=1)return!0;let t=e[0]===null?`null`:typeof e[0];return e.every(e=>(e===null?`null`:typeof e)===t)}function Xe(e){return Array.isArray(e)||typeof e==`string`?e.length:e===void 0?void 0:1}function Ze(t){if(t instanceof e.ZodObject)return t.shape}function Qe(e,t){let n=ne(e),r=Ze(e),i={};if(!r||typeof t!=`object`||!t)return i;let a=t;for(let[e,t]of Object.entries(r)){let r=re(t);if(r?.visibility===`hidden`)continue;let o=a[e];if(r?.visibility===`count`){let t=Xe(o);if(t!==void 0){let n=r.attributeName??e;i[n]=t}continue}if(n?.traceAll){if(V(o)){let t=r?.attributeName??e;i[t]=o}}else if(r?.visibility===`attribute`&&V(o)){let t=r.attributeName??e;i[t]=o}}return i}function $e(e){let{projectorRegistry:t,message:n}=e;if(!t)return;let r=t.get(n.namespace,n.subject);if(r)return r.project({payload:n.payload,namespace:n.namespace,subject:n.subject,messageType:n.type})}function et(t){let{message:n,namespaceRegistry:i}=t,a=T(n);if(!a)return;let o=i.getSchema(a);if(o)return r(o)?o.request:o instanceof e.ZodType?o:void 0}function tt(e){let t={};for(let[n,r]of Object.entries(e))Ye(r)&&(t[n]=r);return t}function H(e,t){if(e.messageObservers.size!==0)for(let n of e.messageObservers)Promise.resolve().then(()=>n(t)).catch(e=>{console.error(`[${t.messageId}] Error in bus message observer:`,e)})}function nt(e){let{message:t,direction:n,observedAt:r,machineId:i}=e,a=$e(e),o;if(a!==void 0)o=a;else{let n=et(e);o=n?Qe(n,t.payload):{}}return[{factId:`${t.messageId}:${n}`,observedAt:r,...i===void 0?{}:{machineId:i},namespace:t.namespace,subject:t.subject,messageType:t.type,direction:n,messageId:t.messageId,...t.correlationId===void 0?{}:{correlationId:t.correlationId},attributes:tt(o)}]}function rt(e,t){let n=e.interceptorHandlers.get(t);return!n||n.length===0?[]:n.map(e=>e.handler)}function it(e,t,n,r,i){let a=rt(e,t);return a.length===0?{stopped:!1,payload:n}:at(a,t,n,r,i)}async function at(e,t,n,r,i){let a=n,o=!1;for(let n of e){if(o)break;await n({subject:t,get payload(){return a},messageId:r,correlationId:i,stopPropagation(){o=!0},replacePayload(e){a=e},next(){}})}return{stopped:o,payload:a}}function ot(e,t){let{eventHandlers:n}=e,r=[];for(let[e,i]of n)b(t,e)&&r.push(i);return Oe(r).map(e=>e.handler)}async function st(e,t,n){let{correlationId:r,messageId:i}=t,a=[];for(let o of e)a.push(Promise.resolve().then(()=>o(t)).catch(e=>{let t=r?`[${r}][${i}]`:`[${i}]`;throw console.error(`${t} Error in event handler for "${n}":`,e),e}));await Promise.all(a)}async function U(e,t,n,r){let i=t.subject,a=m(t);Ie(e,t,a);let o=r?.messageId??L(),s=r?.correlationId,c=Ge(e,t,a,r?.transports),l=t.$meta.local||e.namespaceRegistry.isCollectorOnlySubject(a)||R(c);ke(e,a,n);let u=it(e,a,n,o,s),d=u instanceof Promise?await u:u;if(d.stopped)return;let f=d.payload,p=ot(e,a);B(e,`event`,a,t.$meta.namespace,f,o,s),H(e,{type:`event`,namespace:t.$meta.namespace,subject:i,payload:f,messageId:o,correlationId:s,transport:r?.transport,localOnly:l}),p.length>0&&await st(p,{payload:f,messageId:o,correlationId:s,subject:a,isRequest:!1,transport:r?.transport,origin:r?.transport?k:O},a);let h=We(e,c,t);if(h.length>0){let e=[];for(let n of h)e.push(n.send({type:`event`,subject:i,namespace:t.$meta.namespace,payload:f,messageId:o,correlationId:s}).catch(e=>{let t=s?`[${s}][${o}]`:`[${o}]`;console.error(`${t} Error sending event "${i}" to transport:`,e)}));await Promise.all(e)}}function ct(e,t,n,r){let i=m(t),a=r?.priority??0;e.interceptorHandlers.has(i)||e.interceptorHandlers.set(i,[]);let o=r?.filter?e=>{if(S(e.payload,r.filter))return n(e)}:n;return Ne(e.interceptorHandlers.get(i),{handler:o,priority:a}),()=>{let t=e.interceptorHandlers.get(i);if(t){let n=t.findIndex(e=>e.handler===o);n!==-1&&t.splice(n,1),t.length===0&&e.interceptorHandlers.delete(i)}}}var W=class extends Error{constructor(e){super(e),this.name=`TimeoutError`}},lt=class extends Error{constructor(e){super(),this.name=`AbortError`,this.message=e}};const ut=e=>globalThis.DOMException===void 0?new lt(e):new DOMException(e),dt=e=>{let t=e.reason===void 0?ut(`This operation was aborted.`):e.reason;return t instanceof Error?t:ut(t)};function ft(e,t){let{milliseconds:n,fallback:r,message:i,customTimers:a={setTimeout,clearTimeout}}=t,o,s=new Promise((s,c)=>{if(typeof n!=`number`||Math.sign(n)!==1)throw TypeError(`Expected \`milliseconds\` to be a positive number, got \`${n}\``);if(t.signal){let{signal:e}=t;e.aborted&&c(dt(e)),e.addEventListener(`abort`,()=>{c(dt(e))})}if(n===1/0){e.then(s,c);return}let l=new W;o=a.setTimeout.call(void 0,()=>{if(r){try{s(r())}catch(e){c(e)}return}typeof e.cancel==`function`&&e.cancel(),i===!1?s():i instanceof Error?c(i):(l.message=i??`Promise timed out after ${n} milliseconds`,c(l))},n),(async()=>{try{s(await e)}catch(e){c(e)}})()}).finally(()=>{s.clear()});return s.clear=()=>{a.clearTimeout.call(void 0,o),o=void 0},s}function G(e){return e instanceof Error?e:Error(typeof e==`string`?e:`Request aborted`)}async function K(e,t,n){if(t!==0)return ft(e,{milliseconds:t,signal:n});if(!n)return e;if(n.aborted)throw G(n.reason);return new Promise((t,r)=>{let i=()=>{r(G(n.reason))};n.addEventListener(`abort`,i,{once:!0}),e.then(t,r).finally(()=>{n.removeEventListener(`abort`,i)})})}function pt(e,t){let{requestHandlers:n}=e,r=[];for(let[e,i]of n)b(t,e)&&r.push(i);return Oe(r)}function mt(e,t){return pt(e,t).map(e=>e.handler)}function ht(e,t){let{remoteRequestHandlers:n}=e,r=[];for(let[e,i]of n)b(t,e)&&r.push(...i);return r.sort((e,t)=>t.priority-e.priority),r}function gt(e,t){let n=[...e.map(e=>({...e,kind:`local`})),...t.map(e=>({...e,kind:`remote`}))];return n.sort((e,t)=>t.priority===e.priority?e.kind===`local`&&t.kind===`remote`?-1:+(e.kind===`remote`&&t.kind===`local`):t.priority-e.priority),n}function _t(e,t,n){if(!n||n.length===0)return[...t];let r=new Set(n),i=t.filter(e=>r.has(e.transport));return i.length>0?i:[...new Set(n)].filter(t=>{let n=e.transportRegistry.getTransport(t);return n?n.isReady?.()!==!1:!1}).map(e=>({transport:e,priority:0}))}async function q(e,t,n,r,i,a,o){if(i>=r.length){if(o!==void 0)throw o;return{handled:!1}}let s=r[i];return s.kind===`local`?vt(e,t,n,s,r,i+1,a,o):yt(e,t,n,s,r,i+1,a,o)}async function vt(e,t,n,r,i,a,o,s){let c=t.subject,l,u=!1,d,f=n,p={isRequest:!0,get payload(){return f},get result(){return u?l:void 0},messageId:o.messageId,correlationId:o.correlationId,transport:o.transport,origin:o.transport?k:O,...o.signal!==void 0&&{signal:o.signal},setResult:e=>{l=e,u=!0},extendResult:e=>{l={...u?l:{},...e},u=!0},replacePayload:e=>{f=e},next:()=>{let n=(async()=>{let n=await q(e,t,f,i,a,o,s);n.handled&&!u&&(l=n.value,u=!0)})();return d??=n,n}};try{if(await r.handler(p),d!==void 0)await d;else if(!u){let n=await q(e,t,f,i,a,o,s);n.handled&&(l=n.value,u=!0)}}catch(e){throw e instanceof pe?e:new pe(c,e instanceof Error?e.message:String(e),e instanceof Error?e:void 0)}return{handled:u,value:l}}async function yt(e,t,n,r,i,a,o,s){let c=t.subject,l=t.$meta.namespace,u=`${l}.${c}`,d=o.deadline??(o.timeout>0?Date.now()+o.timeout:void 0),f=d===void 0?o.timeout:Math.max(0,d-Date.now()),p={...o,deadline:d};if(d!==void 0&&f===0)return q(e,t,n,i,a,p,s);let m=e.transportRegistry.getTransport(r.transport);if(!m)return q(e,t,n,i,a,p,s);let h={type:`request`,subject:c,namespace:l,payload:n,correlationId:o.correlationId,messageId:o.messageId,timeout:f,priority:(()=>{if(a<2)return o.priority;let e=i[a-2].priority;return e===r.priority?e+1:e})(),deadline:d},{signal:g}=o;try{if(g?.aborted)throw G(g.reason);return{handled:!0,value:await K(m.send(h,f),f,g)}}catch(l){if(g?.aborted)throw m.cancelRequest?.(o.correlationId,l instanceof Error?l:G(g.reason)),l instanceof Error?l:G(g.reason);return ge(l,u)?q(e,t,n,i,a,p,s):(console.error(`[${o.correlationId}][${o.messageId}] Error sending request "${c}" via transport '${r.transport}':`,l),q(e,t,n,i,a,p,s??l))}}async function bt(e,t,n,r){let i=m(t),a=pt(e,i),o=gt(a,t.$meta.local||r.localOnly?[]:_t(e,ht(e,i),r.allowedTransports)),s=r.priority,c=s===void 0?0:o.findIndex(e=>e.priority<s);if(!t.$meta.local&&!r.localOnly){let o=e.transportRegistry.getPendingReady();if(o.length>0){await K(Promise.allSettled(o),r.timeout,r.signal);let s=gt(a,_t(e,ht(e,i),r.allowedTransports));if(s.length===0)return{handled:!1};let c=r.priority,l=c===void 0?0:s.findIndex(e=>e.priority<c);return l===-1?{handled:!1}:q(e,t,n,s,l,r)}}return c===-1||o.length===0?{handled:!1}:q(e,t,n,o,c,r)}const xt=6e4;function St(e,t,n,r){return t.$meta.local?!0:R(Ge(e,t,n,r))}function Ct(e){if(e===void 0)return;let t=Array.isArray(e)?e:Array.from(e);return t.length>0?t.map(String):void 0}async function J(e,t,n,r){let i=t.subject,a=m(t);Ie(e,t,a);let o=r?.messageId??L(),s=r?.correlationId??L(),c=r?.timeout??6e4,l=r?.signal,u=St(e,t,a,r?.transports),d=je(e,a);Me(a,n,d),B(e,`request`,i,t.$meta.namespace,n,o,s),H(e,{type:`request`,namespace:t.$meta.namespace,subject:i,payload:n,messageId:o,correlationId:s,transport:r?.transport,localOnly:u});let f=Ct(r?.transports),p;try{p=await K(bt(e,t,n,{allowedTransports:f,correlationId:s,messageId:o,timeout:c,signal:l,localOnly:u}),c,l)}catch(e){throw e instanceof W?new me(i,c):e}if(!p.handled)throw new w(a);let h=p.value;return j(a,h,d),h}async function wt(e,t,n,r){try{return{handled:!0,data:await J(e,t,n,r)}}catch(e){if(e instanceof w)return{handled:!1};throw e}}var Tt=class extends Error{constructor(){super(`once() was aborted via AbortSignal`),this.name=`OnceAbortError`}},Et=class extends Error{constructor(e,t){super(`once() timed out after ${t}ms waiting for subject: ${e}`),this.name=`OnceTimeoutError`}};function Dt(e,t,n){if(typeof n==`function`){let r=n,i=null;return i=P(e,t,(e=>{let t=i;return i=null,t?.(),r(e)})),()=>{i&&=(i(),null)}}let r=n;return new Promise((n,i)=>{let a=null,o=null,s=null,c=r?.signal,l=()=>{o&&=(clearTimeout(o),null),c&&s&&(c.removeEventListener(`abort`,s),s=null),a&&=(a(),null)};if(c){if(c.aborted){l(),i(new Tt);return}s=()=>{l(),i(new Tt)},c.addEventListener(`abort`,s,{once:!0})}a=P(e,t,(e=>{l(),n(e)}),r?.filter?{filter:r.filter}:void 0);let u=ze(a),d=()=>{r?.timeoutMs&&a!==null&&(o=setTimeout(()=>{l(),i(new Et(m(t),r.timeoutMs))},r.timeoutMs))};u?u.then(d,d):d()})}function Ot(e,t,n,r,i){let a=`anonymous`,o=!1,s;return{isRequest:!0,payload:e,messageId:t,correlationId:n,transport:i,origin:i?k:O,get result(){return s},identify:e=>{a=e},setResult:e=>{o||(o=!0,s=e,r(a,e))},extendResult:e=>{o?Object.assign(s,e):(s={...e},o=!0,r(a,s))},next:async()=>{},replacePayload:()=>{}}}async function kt(e,t){let n=[],r=Ot(t.payload,t.messageId,t.correlationId,(e,t)=>{n.push({nodeId:e,payload:t})},t.transport);try{await e(r)}catch(e){return console.error(`[${t.correlationId}][${t.messageId}] Broadcast handler error for "${t.subjectKey}":`,e),[]}for(let e of n)j(t.fullSubjectKey,e.payload,t.validationCtx);return n}async function At(e,t,n,r){let i=t.subject,a=m(t),o=r?.messageId??L(),s=r?.correlationId??L(),c=r?.timeout??6e4,l=r?.signal,u=je(e,a),d=Ge(e,t,a,r?.transports),f=t.$meta.local||e.namespaceRegistry.isCollectorOnlySubject(a)||R(d);Me(a,n,u),B(e,`broadcast`,i,t.$meta.namespace,n,o,s),H(e,{type:`broadcast`,namespace:t.$meta.namespace,subject:i,payload:n,messageId:o,correlationId:s,transport:r?.transport,localOnly:f});let p=[],h=mt(e,a),g=d===void 0?t.$meta.local?[]:ye(e).map(({transport:e})=>e):We(e,d,t),_=h.map(async e=>{let t=await kt(e,{payload:n,messageId:o,correlationId:s,subjectKey:i,fullSubjectKey:a,transport:r?.transport,validationCtx:u});p.push(...t)}),v=g.map(async e=>{try{let r=await e.send({type:`broadcast`,subject:i,namespace:t.$meta.namespace,payload:n,correlationId:s,messageId:o,timeout:c},c);for(let e of r)j(a,e.payload,u),p.push({nodeId:e.nodeId,payload:e.payload})}catch(e){console.error(`[${s}][${o}] Broadcast transport error for "${i}":`,e)}});try{await K(Promise.all([..._,...v]),c,l)}catch(e){throw e instanceof W?new me(i,c):e}return p}function Y(e,t,n){if(!t?.$meta)throw Error(`Invalid subject definition provided to ${e}()`);if(t.$meta.channel)throw new ue(String(t.subject));if(n){let e=t?.$meta?.namespace??`(NO NAMESPACE)`;if(e!==n)throw Error(`Subject namespace ${e} does not match scoped bus namespace ${n}`)}if(e===`emit`){if(t.$meta.isRequest)throw Error(`Cannot emit to request subjects. Use event subjects only.`);if(t.subject?.includes(`*`))throw Error(`Emitting wildcard subjects is not allowed. Use concrete subject keys only.`)}if(e===`intercept`){if(t.$meta.isRequest===!0)throw Error(`intercept() only supports event subjects, not request subjects. Use middleware for requests.`);if(t.subject?.includes(`*`))throw Error(`intercept() requires exact subjects, not wildcards. Wildcards are only supported for on().`)}}function X(e,t){let n=se(e,t?.filter);return!n||Object.keys(n).length===0?t:{...t,filter:n}}function Z(e,t,n){return{namespace:t,getFilter(){return n},withFilter:(r=>Z(e,t,se(n,r))),on(r,i,a){return Y(`on`,r,t),P(e,r,i,X(n,a))},intercept(r,i,a){return Y(`intercept`,r,t),ct(e,r,i,X(n,a))},once:((r,i)=>{if(Y(`once`,r,t),typeof i==`function`){let t=i,a=null;return a=P(e,r,(e=>{let n=a;return a=null,n?.(),t(e)}),X(n,void 0)),()=>{a&&=(a(),null)}}return Dt(e,r,X(n,i))}),async emit(n,r){return Y(`emit`,n,t),U(e,n,r)},async request(n,r){return Y(`request`,n,t),J(e,n,r)},async requestOptional(n,r){return Y(`request`,n,t),wt(e,n,r)}}}function jt(e,t){let n=t,r=gn({context:e,namespace:n});return{namespace:n,emit:r.emit,on:r.on,intercept:r.intercept,once:r.once,request:r.request,requestOptional:r.requestOptional,withFilter:(t=>Z(e,n,t)),getContext:()=>e}}const Q=new WeakMap;function Mt(e){let t=e._def.values;if(t)return new Set(t.map(e=>`literal:${typeof e}:${String(e)}`))}function Nt(e){let t=e._def.checks;return Array.isArray(t)&&t.length>0}function Pt(t,n=!1){let r=new Set,i=t;for(;i instanceof e.ZodOptional||i instanceof e.ZodNullable||i instanceof e.ZodDefault||i instanceof e.ZodReadonly;){if(i instanceof e.ZodDefault)return;i instanceof e.ZodOptional&&r.add(`undefined`),i instanceof e.ZodNullable&&r.add(`null`),i=i.unwrap()}if(!(n&&Nt(i))){if(i instanceof e.ZodLiteral){let e=Mt(i);if(!e)return;for(let t of e)r.add(t);return r}if(i instanceof e.ZodString)r.add(`string`);else if(i instanceof e.ZodNumber)r.add(`number`);else if(i instanceof e.ZodBoolean)r.add(`boolean`);else if(i instanceof e.ZodBigInt)r.add(`bigint`);else if(i instanceof e.ZodDate)r.add(`date`);else return;return r}}function Ft(e,t){let n=Pt(e,!0),r=Pt(t);if(!n||!r)return!1;for(let e of r){if(n.has(e))continue;let t=e.startsWith(`literal:`)?e.slice(8).split(`:`,1)[0]:e;if(!n.has(t))return!1}return!0}function It(e){let t=e._def.checks;return Array.isArray(t)&&t.length>0}function Lt(e){let t=Q.get(e);if(t)return t;let n=new Map(Object.entries(e.shape).map(([e,t])=>[e,t]));return Q.set(e,n),n}function Rt(e,t,n){if(!It(e))return;let r=Lt(e);for(let[e,i]of Object.entries(t)){let t=r.get(e);if(t&&!Ft(t,i))throw Error(`[MakaioBus] Cannot extend ${n}: field '${e}' overrides an incompatible refined schema field`)}}function zt(e,t){It(e)&&Q.set(t,Lt(e))}function Bt(t,n){if(!(t instanceof e.ZodObject)){let e=t?.constructor?.name??typeof t;throw Error(`[MakaioBus] Cannot extend ${n}: schema is not a ZodObject (got ${e})`)}}function Vt(e,t,n){Rt(e,t,n);let r=e.safeExtend(t),i=e.meta(),a=i?r.meta(i):r;return zt(e,a),a}function Ht(e,t){let n=Ut(e.toLowerCase(),t.toLowerCase());return n===0?Ut(e,t):n}function Ut(e,t){if(e===t)return 0;let n=Array.from(e),r=Array.from(t),i=Math.min(n.length,r.length);for(let e=0;e<i;e+=1){let t=n[e].codePointAt(0),i=r[e].codePointAt(0);if(t!==i)return(t??0)<(i??0)?-1:1}return n.length-r.length}const Wt=async(e,t)=>{if(!e)throw Error(`Namespace not initialized yet`);let{MakaioBus:n}=await import(`./bus-HgaFcCZ1.mjs`),{createScopedBus:r}=await import(`./scoped-bus-H3xMYR0E.mjs`),i=t??n.getContext();if(!i)throw Error(`No MakaioBus context available. Please provide a context when calling scopedBus().`);return r(i,e)};function Gt(e,t,n){let r=Array.from(t.keys()),i=Array.from(n.keys()),a=i.filter(e=>!t.has(e)),o=r.filter(e=>!n.has(e)),s=i.filter(e=>{let r=t.get(e),i=n.get(e);return r!==void 0&&i!==void 0&&!Kt(r,i)});if(a.length===0&&o.length===0&&s.length===0)return;let c=[];a.length>0&&c.push(`new subjects: ${a.join(`, `)}`),o.length>0&&c.push(`missing subjects: ${o.join(`, `)}`),s.length>0&&c.push(`changed schemas: ${s.join(`, `)}`),console.warn(`[MakaioBus] Namespace '${e}' already registered with different schemas. ${c.join(`; `)}. This usually indicates a namespace collision between packages.`)}function Kt(e,t){let n=qt(e),r=qt(t);return typeof n==`string`&&typeof r==`string`?n===r:e===t}function qt(t){try{let n=r(t)?{request:e.toJSONSchema(t.request),response:e.toJSONSchema(t.response)}:e.toJSONSchema(t);return JSON.stringify(n)}catch{return t}}function Jt(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,f(r));return t}function Yt(e){return e?.busValidationMode===`lenient`?{mode:`lenient`,onViolation:e.onSchemaViolation}:e?.busValidationMode===`skip`?{mode:`skip`}:{mode:`strict`}}function Xt(e,t,n){t.mode===n.mode&&t.onViolation===n.onViolation||console.warn(`[MakaioBus] Namespace '${e}' already registered with different validation settings. Existing mode: ${t.mode}; incoming mode: ${n.mode}. This usually indicates a namespace collision between packages.`)}const Zt=()=>{let e=new Map,t=new Map,n=new Map,a=new Map,s=new Set,c=new Set,l=new Map,d=new Map;return{registerNamespace(r){let{name:p,schemas:m,options:h}=r,g=Jt(m),_=e.get(p);if(_)return Gt(p,t.get(p)??new Map,g),Xt(p,l.get(p)??{mode:`strict`},Yt(h)),_;l.set(p,Yt(h)),t.set(p,g);for(let[e,t]of Object.entries(m)){let l=`${p}.${e}`,m=o(t),h=u(t),_=i(t),v=g.get(e)??f(t);n.set(l,v),a.set(l,{namespace:p,subject:e,fullSubject:l,schema:v,local:m,collectorOnly:h,channel:_}),m&&s.add(l),h&&c.add(l),r.defaultTransports&&d.set(l,r.defaultTransports)}let v={name:p,subjects:r.subjects,scopedBus:e=>Wt(p,e)};return e.set(p,v),v},registerNamespaces(e){for(let t of e)this.registerNamespace(t)},getSchema(e){let t=typeof e==`string`?e:m(e);return n.get(t)},listRegisteredSubjects(){return Array.from(a.values()).map(e=>({...e,schema:r(e.schema)?{...e.schema}:e.schema})).sort((e,t)=>Ht(e.fullSubject,t.fullSubject))},getRegisteredSubject(e){return a.get(e)},isRequestSubject(e){let t=n.get(e);return t?r(t):!1},isLocalSubject(e){return s.has(e)},isCollectorOnlySubject(e){return c.has(e)},getDefaultTransports(e){return d.get(e)??`all`},getValidationConfig(e){let t;for(let[n,r]of l)(e===n||e.startsWith(n+`.`))&&(!t||n.length>t.namespace.length)&&(t={namespace:n,config:r});return t?.config??{mode:`strict`}},extendSubjectSchema(e,t){let i=n.get(e);if(!i)throw Error(`[MakaioBus] Cannot extend subject '${e}': not registered. Ensure the owning namespace is imported before calling extendSubject().`);if(r(i)){let r=t;r.request&&Bt(i.request,`'${e}' request`),r.response&&Bt(i.response,`'${e}' response`);let o={request:r.request?Vt(i.request,r.request,`'${e}' request`):i.request,response:r.response?Vt(i.response,r.response,`'${e}' response`):i.response};n.set(e,o);let s=a.get(e);s&&a.set(e,{...s,schema:o})}else{Bt(i,`'${e}'`);let r=Vt(i,t,`'${e}'`);n.set(e,r);let o=a.get(e);o&&a.set(e,{...o,schema:r})}},__resetNamespaces:process.env.NODE_ENV===`test`?()=>{e.clear(),t.clear(),n.clear(),a.clear(),s.clear(),c.clear(),l.clear(),d.clear()}:void 0}},Qt=(e,t)=>({subject:e.subject,$meta:{namespace:e.namespace,isRequest:t,payload:{},local:!1,channel:!1}}),$t=(e,t)=>ye(e,t),en=async(e,t,n,r)=>{let i=T(n);if(i){if(e.namespaceRegistry.isLocalSubject(i)){console.warn(`[TransportRegistry] Dropping inbound event '${i}' from transport '${String(t)}': subject is local-only and cannot be invoked remotely.`);return}if(!e.namespaceRegistry.isCollectorOnlySubject(i)){let r=$t(e,t),a=await Promise.allSettled(r.map(async({transport:e})=>e.send(n)));for(let[e,t]of a.entries())t.status===`rejected`&&console.error(`[TransportRegistry] Failed to relay event '${i}' to transport '${String(r[e].name)}':`,t.reason)}await U(e,Qt(n,!1),n.payload,{messageId:n.messageId,correlationId:n.correlationId,transports:[],transport:r})}},tn=async(e,t,n,r,i)=>{let a=T(r),o=r.timeout??6e4;if(!a){await D(n,r,Error(`Invalid subject in request message`));return}if(e.namespaceRegistry.isLocalSubject(a)){await D(n,r,new de(a));return}let s=Qt(r,!0);try{let t=await bt(e,s,r.payload,{correlationId:r.correlationId,messageId:r.messageId,timeout:o,deadline:r.deadline,priority:r.priority,transport:i});if(!t.handled){await D(n,r,new w(a));return}await n.send({type:`response`,correlationId:r.correlationId,result:t.value})}catch(e){await D(n,r,e)}},$=async(e,t,n,r)=>{if(e.onBroadcastResults){e.onBroadcastResults(t,n,r);return}let i={type:`broadcast-response`,correlationId:t,...n.length>0?{results:n}:{},...r?{error:r}:{}};await e.send(i)},nn=async(e,t,n,r,i)=>{let a=T(r),o=r.timeout??6e4;if(!a){await $(n,r.correlationId,[],E(Error(`Invalid subject in broadcast message`)));return}if(e.namespaceRegistry.isLocalSubject(a)){await $(n,r.correlationId,[],E(new de(a)));return}try{let s=[],c,l=At(e,Qt(r,!0),r.payload,{messageId:r.messageId,correlationId:r.correlationId,timeout:o,transports:[],transport:i}).then(e=>s.push(...e)).catch(e=>{c=E(e)}),u=$t(e,t).map(async({name:e,transport:t})=>{try{s.push(...await t.send(r,o))}catch(t){console.error(`[TransportRegistry] Failed to relay broadcast '${a}' to transport '${String(e)}':`,t)}});await Promise.all([l,...u]),await $(n,r.correlationId,s,c)}catch(e){await $(n,r.correlationId,[],E(e))}},rn=async(e,t,n)=>{for(let[r,i]of Object.entries(n.subjects)){let n=String(t),a=e.remoteRequestHandlers.get(r),o=a?a.filter(e=>e.transport!==n):[];for(let e of i)o.push({transport:n,priority:e});if(o.length>0?e.remoteRequestHandlers.set(r,o):e.remoteRequestHandlers.delete(r),i.length===0){let t=e.remoteEventHandlers.get(r)??new Set;t.add(n),e.remoteEventHandlers.set(r,t)}else e.remoteEventHandlers.get(r)?.delete(n)}await M(e,t,Object.keys(n.subjects))},an=async(e,t,n)=>{let r=String(t);for(let t of Object.keys(n.subjects)){let n=e.remoteRequestHandlers.get(t);if(n){let i=n.filter(e=>e.transport!==r);i.length===0?e.remoteRequestHandlers.delete(t):e.remoteRequestHandlers.set(t,i)}e.remoteEventHandlers.get(t)?.delete(r)}await M(e,t,Object.keys(n.subjects))},on=(e,t)=>{let n=new Set;for(let[r,i]of e.remoteRequestHandlers){let a=i.filter(e=>e.transport!==t);a.length===0?e.remoteRequestHandlers.delete(r):e.remoteRequestHandlers.set(r,a),n.add(r)}for(let[r,i]of e.remoteEventHandlers)i.has(t)&&(i.delete(t),n.add(r));n.size>0&&M(e,t,[...n])},sn=(e,t,n)=>{if(n===void 0)return;e.set(t,n);let r=()=>{e.get(t)===n&&e.delete(t)};n.then(r,r)},cn=e=>{let t=new Map,n,r=new Map,i=async(t,n,r,i)=>{try{if(r.type===`subscribe-sync-complete`||r.type===`subscription-ack`)return;if(r.type===`subscribe`){await rn(e,t,r);return}if(r.type===`unsubscribe`){await an(e,t,r);return}let a=i?{...i,transportName:i.transportName||String(t)}:{transportName:String(t)};r.type===`event`?await en(e,t,r,a):r.type===`request`?await tn(e,t,n,r,a):r.type===`broadcast`&&await nn(e,t,n,r,a)}catch(e){console.error(`[TransportRegistry] Unhandled error processing transport message:`,e)}};return{registerTransport(a,o){let s=t.get(a);s&&(console.warn(`[TransportRegistry] Replacing existing transport '${a}'. This unsubscribes the old transport's handler - if unintended, use a different name.`),on(e,String(a)),s.syncAbort.abort(),s.unsubscribe(),s.transport.onNewReadySession=void 0,s.transport.onConnected=void 0,s.transport.onDisconnected=void 0,r.delete(a));let c=o.onReceive(async(e,t)=>{await i(a,o,e,t)}),l=new AbortController;return t.set(a,{transport:o,unsubscribe:c,syncAbort:l}),sn(r,a,o.ready),o.onNewReadySession=e=>sn(r,a,e),o.onConnected=()=>n?.onConnected(String(a)),o.onDisconnected=()=>n?.onDisconnected(String(a)),Fe(e,a,o,l.signal),{unregister:()=>{let n=t.get(a);n?.transport===o&&(n.syncAbort.abort(),n.unsubscribe(),t.delete(a),r.delete(a),o.onNewReadySession=void 0,o.onConnected=void 0,o.onDisconnected=void 0,on(e,String(a)))},ready:o.ready??Promise.resolve()}},getTransport(e){return t.get(e)?.transport},all(){return Array.from(t.values(),e=>e.transport)},names(){return Array.from(t.keys())},getPendingReady(){return Array.from(r.values())},setLifecycleEmitter(e){n=e}}};function ln(e,t){return{subject:e,register(n){return n.extendSubject(e,t)}}}function un(e,t,n){let r=m(t);return e.namespaceRegistry.extendSubjectSchema(r,n),t}const dn={connected:s(e.object({transport:e.string()})),disconnected:s(e.object({transport:e.string()}))};function fn(e,t){e.transportRegistry.setLifecycleEmitter({onConnected(n){U(e,t.connected,{transport:n}).catch(e=>{console.error(`[bus] lifecycle emit error on connected:`,e)})},onDisconnected(n){U(e,t.disconnected,{transport:n}).catch(e=>{console.error(`[bus] lifecycle emit error on disconnected:`,e)})}})}const pn=()=>{let e={eventHandlers:new Map,requestHandlers:new Map,interceptorHandlers:new Map,anyHandlers:new Set,messageObservers:new Set,transportRegistry:void 0,namespaceRegistry:Zt(),remoteRequestHandlers:new Map,remoteEventHandlers:new Map};return e.transportRegistry=cn(e),e},mn=e=>{let t=new Map,n=!1,r=null,i=null,a=null,o=()=>n||r!==null,s=e=>e.every(e=>t.get(e.transport.name)===e),c=async e=>{for(let n of e)try{n.unregister()}catch(e){console.error(`[bus.connect] Failed to unregister '${n.transport.name}' during rollback:`,e)}finally{t.get(n.transport.name)===n&&t.delete(n.transport.name)}await Promise.allSettled(e.map(e=>e.transport.disconnect()))},l=e=>{i===e&&(i=null)},u=async e=>{e?.awaitReady!==!1&&i&&await i},d=()=>{let e=!1,t=!1,n,r,i,a=new Promise((e,t)=>{n=e,r=t}),o=new Promise(e=>{i=e});return a.catch(()=>void 0),{promise:a,cancelSignal:o,resolve:()=>{t||(t=!0,n())},reject:e=>{t||(t=!0,r(e))},cancel:()=>{e||(e=!0,i(),t||(t=!0,n()))},isCanceled:()=>e}},f=(e,t)=>{let n=t instanceof Error?t.message:String(t),r=Error(`Failed to connect transport "${e}": ${n}`,{cause:t});if(typeof t==`object`&&t){let e=t,n=r;`code`in e&&(n.code=e.code),`status`in e&&(n.status=e.status)}return r},p=async(e,t)=>{await c(e),t()},m=async(e,t,n,r)=>{n(r),l(t),await c(e)},h=(e,t)=>{let n=Promise.all(e.map(e=>e.ready.catch(t=>{throw console.error(`[bus.connect] Transport '${e.transport.name}' ready failed:`,t),t}))).then(()=>{});return n.catch(()=>void 0),Promise.race([n,t.cancelSignal])};return{registerTransport:n=>{if(o())throw Error(`[bus.connect] Cannot register transport '${n.name}' after connect() has started; create a new bus instance or use the shared transport registry directly`);let r=e.transportRegistry.registerTransport(n.name,n);return t.set(n.name,{transport:n,unregister:r.unregister,get ready(){return n.ready??r.ready}}),r},unregisterTransport:e=>{let n=t.get(e);n&&(n.unregister(),t.delete(e))},get ready(){return i??Promise.resolve()},disconnect:()=>{n=!1,a?.cancel(),a=null,r=null,i=null;for(let{transport:e,unregister:n}of t.values()){try{Promise.resolve(e.disconnect()).catch(()=>{})}catch{}n()}t.clear()},reconnect:async()=>{let e=Array.from(t.values()).filter(e=>typeof e.transport.reconnect==`function`),n=await Promise.allSettled(e.map(e=>Promise.resolve().then(()=>e.transport.reconnect())));for(let[t,r]of n.entries())r.status===`rejected`&&console.error(`[bus] reconnect failed for transport '${e[t].transport.name}':`,r.reason)},connect:async e=>{if(n){await u(e);return}if(r){await r,await u(e);return}let o=Array.from(t.values());if(o.length===0)return;let c=d();i=c.promise,a=c;let l=null,g=!1;r=(async()=>{try{await Promise.all(o.map(async e=>{try{await e.transport.connect()}catch(t){throw f(e.transport.name,t)}}))}catch(e){throw await m(o,c.promise,c.reject,e),e}if(!s(o)){await p(o,c.resolve);return}n=!0;try{let t=h(o,c),r=async()=>{if(!(!n||c.isCanceled())&&(await t,!(!n||c.isCanceled()))){if(!s(o)){await p(o,c.resolve);return}c.resolve()}};e?.awaitReady===!1?(l=r(),g=!0,l.catch(async e=>{console.error(`[bus.connect] Background ready failed:`,e),await m(o,c.promise,c.reject,e),n=!1}).finally(()=>{l=null,a===c&&(a=null)})):(l=r(),await l)}catch(e){throw n=!1,await m(o,c.promise,c.reject,e),e}})().finally(()=>{r=null,!g&&a===c&&(a=null),l=null}),await r}}};function hn(e){e.eventHandlers.clear(),e.requestHandlers.clear(),e.interceptorHandlers.clear(),e.anyHandlers.clear(),e.messageObservers.clear(),e.remoteRequestHandlers.clear(),e.remoteEventHandlers.clear(),Je()}function gn(e){let{context:t=pn(),namespace:n,transports:r}=e??{},i=mn(t),a={namespace:n,on:(e,r,i)=>(Y(`on`,e,n),P(t,e,r,i)),intercept:(e,r,i)=>(Y(`intercept`,e,n),ct(t,e,r,i)),once:(e,r)=>(Y(`once`,e,n),Dt(t,e,r)),emit:async(e,r,i)=>(Y(`emit`,e,n),U(t,e,r,i)),request:async(e,r,i)=>(Y(`request`,e,n),J(t,e,r,i)),requestOptional:async(e,r,i)=>(Y(`request`,e,n),wt(t,e,r,i)),broadcast:async(e,r,i)=>(Y(`request`,e,n),At(t,e,r,i)),scoped:(e,n)=>jt(n??t,e.name),withFilter:e=>Z(t,n??``,e),...i,getContext:()=>t,getSchema:e=>t.namespaceRegistry.getSchema(e),registerNamespace:e=>t.namespaceRegistry.registerNamespace(e),registerNamespaces:e=>t.namespaceRegistry.registerNamespaces(e),extendSubject:(e,r)=>{if(n&&e.$meta.namespace!==n)throw Error(`Subject namespace ${e.$meta.namespace} does not match scoped bus namespace ${n}`);return un(t,e,r)},observeMessages:e=>(t.messageObservers.add(e),()=>{t.messageObservers.delete(e)}),__onAny:e=>process.env.NODE_ENV===`production`?()=>{}:(t.anyHandlers.add(e),()=>{t.anyHandlers.delete(e)}),__resetHandlers:process.env.NODE_ENV===`test`?()=>hn(t):void 0};Object.defineProperty(a,`ready`,{get(){return i.ready},enumerable:!0,configurable:!0}),fn(t,a.registerNamespace(h(`bus:lifecycle`,dn)).subjects);for(let e of r??[])a.registerTransport(e);return a}const _n=gn();export{fe as A,x as B,Ee as C,he as D,ge as E,ce as F,d as G,ie as H,C as I,a as J,l as K,ae as L,de as M,ue as N,me as O,le as P,S as R,Se as S,T,h as U,b as V,m as W,r as Y,Ae as _,ln as a,Ce as b,Z as c,xt as d,U as f,Le as g,Be as h,dn as i,w as j,pe as k,Tt as l,P as m,pn as n,un as o,nt as p,s as q,gn as r,jt as s,_n as t,J as u,O as v,xe as w,De as x,k as y,se as z};
|
package/dist/bus-HgaFcCZ1.mjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./bus-BgodbPl9.mjs";export{e as MakaioBus};
|