botmux 2.111.0 → 2.112.0
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/README.en.md +19 -7
- package/README.md +19 -7
- package/dist/adapters/adopt-route.d.ts.map +1 -1
- package/dist/adapters/adopt-route.js +2 -1
- package/dist/adapters/adopt-route.js.map +1 -1
- package/dist/adapters/backend/herdr-backend.d.ts +29 -0
- package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
- package/dist/adapters/backend/herdr-backend.js +167 -0
- package/dist/adapters/backend/herdr-backend.js.map +1 -1
- package/dist/adapters/backend/riff-backend.js +2 -2
- package/dist/adapters/backend/sandbox.d.ts +61 -6
- package/dist/adapters/backend/sandbox.d.ts.map +1 -1
- package/dist/adapters/backend/sandbox.js +235 -43
- package/dist/adapters/backend/sandbox.js.map +1 -1
- package/dist/adapters/backend/tmux-backend.d.ts +1 -0
- package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-backend.js +1 -0
- package/dist/adapters/backend/tmux-backend.js.map +1 -1
- package/dist/adapters/cli/claude-code.d.ts +2 -0
- package/dist/adapters/cli/claude-code.d.ts.map +1 -1
- package/dist/adapters/cli/claude-code.js +7 -0
- package/dist/adapters/cli/claude-code.js.map +1 -1
- package/dist/adapters/cli/codex-app-turn.d.ts +16 -0
- package/dist/adapters/cli/codex-app-turn.d.ts.map +1 -1
- package/dist/adapters/cli/codex-app-turn.js +26 -0
- package/dist/adapters/cli/codex-app-turn.js.map +1 -1
- package/dist/adapters/cli/codex.d.ts.map +1 -1
- package/dist/adapters/cli/codex.js +1 -0
- package/dist/adapters/cli/codex.js.map +1 -1
- package/dist/adapters/cli/grok.d.ts +8 -6
- package/dist/adapters/cli/grok.d.ts.map +1 -1
- package/dist/adapters/cli/grok.js +14 -6
- package/dist/adapters/cli/grok.js.map +1 -1
- package/dist/adapters/cli/read-isolation.d.ts +40 -14
- package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
- package/dist/adapters/cli/read-isolation.js +116 -19
- package/dist/adapters/cli/read-isolation.js.map +1 -1
- package/dist/adapters/cli/runner-control-channel.d.ts +32 -0
- package/dist/adapters/cli/runner-control-channel.d.ts.map +1 -0
- package/dist/adapters/cli/runner-control-channel.js +104 -0
- package/dist/adapters/cli/runner-control-channel.js.map +1 -0
- package/dist/adapters/cli/shared-hints.d.ts +1 -1
- package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
- package/dist/adapters/cli/shared-hints.js +9 -0
- package/dist/adapters/cli/shared-hints.js.map +1 -1
- package/dist/adapters/cli/traex.d.ts.map +1 -1
- package/dist/adapters/cli/traex.js +100 -64
- package/dist/adapters/cli/traex.js.map +1 -1
- package/dist/adapters/cli/types.d.ts +13 -0
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/bot-registry.d.ts +36 -27
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +354 -8
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli/saved-workflow.d.ts +25 -0
- package/dist/cli/saved-workflow.d.ts.map +1 -0
- package/dist/cli/saved-workflow.js +338 -0
- package/dist/cli/saved-workflow.js.map +1 -0
- package/dist/cli/send-dispatch.d.ts +18 -3
- package/dist/cli/send-dispatch.d.ts.map +1 -1
- package/dist/cli/send-dispatch.js +22 -3
- package/dist/cli/send-dispatch.js.map +1 -1
- package/dist/cli/v3-run-cancel.d.ts +47 -0
- package/dist/cli/v3-run-cancel.d.ts.map +1 -0
- package/dist/cli/v3-run-cancel.js +96 -0
- package/dist/cli/v3-run-cancel.js.map +1 -0
- package/dist/cli/vc-agent.d.ts.map +1 -1
- package/dist/cli/vc-agent.js +54 -1
- package/dist/cli/vc-agent.js.map +1 -1
- package/dist/cli/workflow-migration.d.ts +39 -0
- package/dist/cli/workflow-migration.d.ts.map +1 -0
- package/dist/cli/workflow-migration.js +302 -0
- package/dist/cli/workflow-migration.js.map +1 -0
- package/dist/cli/workflow-run-archive.d.ts +29 -0
- package/dist/cli/workflow-run-archive.d.ts.map +1 -0
- package/dist/cli/workflow-run-archive.js +183 -0
- package/dist/cli/workflow-run-archive.js.map +1 -0
- package/dist/cli/workflow.d.ts +5 -10
- package/dist/cli/workflow.d.ts.map +1 -1
- package/dist/cli/workflow.js +85 -764
- package/dist/cli/workflow.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +1018 -191
- package/dist/cli.js.map +1 -1
- package/dist/codex-app-runner.js +30 -21
- package/dist/codex-app-runner.js.map +1 -1
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +21 -9
- package/dist/core/command-handler.js.map +1 -1
- package/dist/core/current-turn-provenance.d.ts +39 -0
- package/dist/core/current-turn-provenance.d.ts.map +1 -0
- package/dist/core/current-turn-provenance.js +122 -0
- package/dist/core/current-turn-provenance.js.map +1 -0
- package/dist/core/daemon-ipc-auth.d.ts +20 -0
- package/dist/core/daemon-ipc-auth.d.ts.map +1 -0
- package/dist/core/daemon-ipc-auth.js +44 -0
- package/dist/core/daemon-ipc-auth.js.map +1 -0
- package/dist/core/daemon-ipc-session-auth.d.ts +37 -0
- package/dist/core/daemon-ipc-session-auth.d.ts.map +1 -0
- package/dist/core/daemon-ipc-session-auth.js +35 -0
- package/dist/core/daemon-ipc-session-auth.js.map +1 -0
- package/dist/core/dashboard-command/index.d.ts +0 -2
- package/dist/core/dashboard-command/index.d.ts.map +1 -1
- package/dist/core/dashboard-command/index.js +2 -2
- package/dist/core/dashboard-command/index.js.map +1 -1
- package/dist/core/dashboard-command/stub.d.ts +1 -1
- package/dist/core/dashboard-command/stub.d.ts.map +1 -1
- package/dist/core/dashboard-command/stub.js +0 -1
- package/dist/core/dashboard-command/stub.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts +11 -2
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +266 -41
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dashboard-secret.d.ts +3 -0
- package/dist/core/dashboard-secret.d.ts.map +1 -0
- package/dist/core/dashboard-secret.js +7 -0
- package/dist/core/dashboard-secret.js.map +1 -0
- package/dist/core/data-dir.d.ts +24 -0
- package/dist/core/data-dir.d.ts.map +1 -0
- package/dist/core/data-dir.js +48 -0
- package/dist/core/data-dir.js.map +1 -0
- package/dist/core/inflight-input-tracker.d.ts +4 -2
- package/dist/core/inflight-input-tracker.d.ts.map +1 -1
- package/dist/core/inflight-input-tracker.js +6 -5
- package/dist/core/inflight-input-tracker.js.map +1 -1
- package/dist/core/inject-queue-policy.d.ts +70 -0
- package/dist/core/inject-queue-policy.d.ts.map +1 -0
- package/dist/core/inject-queue-policy.js +30 -0
- package/dist/core/inject-queue-policy.js.map +1 -0
- package/dist/core/maintenance.d.ts +1 -1
- package/dist/core/maintenance.d.ts.map +1 -1
- package/dist/core/maintenance.js +3 -2
- package/dist/core/maintenance.js.map +1 -1
- package/dist/core/managed-origin-capability.d.ts +30 -0
- package/dist/core/managed-origin-capability.d.ts.map +1 -0
- package/dist/core/managed-origin-capability.js +88 -0
- package/dist/core/managed-origin-capability.js.map +1 -0
- package/dist/core/role-library.d.ts +15 -0
- package/dist/core/role-library.d.ts.map +1 -0
- package/dist/core/role-library.js +75 -0
- package/dist/core/role-library.js.map +1 -0
- package/dist/core/session-cwd.d.ts +14 -0
- package/dist/core/session-cwd.d.ts.map +1 -0
- package/dist/core/session-cwd.js +17 -0
- package/dist/core/session-cwd.js.map +1 -0
- package/dist/core/session-manager.d.ts +4 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +27 -8
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-marker.d.ts +22 -0
- package/dist/core/session-marker.d.ts.map +1 -1
- package/dist/core/session-marker.js +185 -20
- package/dist/core/session-marker.js.map +1 -1
- package/dist/core/slash-inject.d.ts +15 -0
- package/dist/core/slash-inject.d.ts.map +1 -0
- package/dist/core/slash-inject.js +25 -0
- package/dist/core/slash-inject.js.map +1 -0
- package/dist/core/terminal-url.d.ts +1 -0
- package/dist/core/terminal-url.d.ts.map +1 -1
- package/dist/core/terminal-url.js +14 -8
- package/dist/core/terminal-url.js.map +1 -1
- package/dist/core/terminal-write-auth.d.ts +26 -0
- package/dist/core/terminal-write-auth.d.ts.map +1 -1
- package/dist/core/terminal-write-auth.js +48 -3
- package/dist/core/terminal-write-auth.js.map +1 -1
- package/dist/core/trigger-session.d.ts +24 -1
- package/dist/core/trigger-session.d.ts.map +1 -1
- package/dist/core/trigger-session.js +106 -15
- package/dist/core/trigger-session.js.map +1 -1
- package/dist/core/types.d.ts +26 -1
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +10 -0
- package/dist/core/types.js.map +1 -1
- package/dist/core/worker-pool.d.ts +65 -2
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +459 -39
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts +249 -8
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +7383 -1195
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/aggregator.d.ts +1 -1
- package/dist/dashboard/aggregator.d.ts.map +1 -1
- package/dist/dashboard/aggregator.js +2 -2
- package/dist/dashboard/aggregator.js.map +1 -1
- package/dist/dashboard/auth.d.ts +3 -8
- package/dist/dashboard/auth.d.ts.map +1 -1
- package/dist/dashboard/auth.js +63 -22
- package/dist/dashboard/auth.js.map +1 -1
- package/dist/dashboard/bot-onboarding.d.ts +5 -0
- package/dist/dashboard/bot-onboarding.d.ts.map +1 -1
- package/dist/dashboard/bot-onboarding.js +37 -0
- package/dist/dashboard/bot-onboarding.js.map +1 -1
- package/dist/dashboard/connector-api.d.ts.map +1 -1
- package/dist/dashboard/connector-api.js +42 -2
- package/dist/dashboard/connector-api.js.map +1 -1
- package/dist/dashboard/daemon-internal-api.d.ts +0 -2
- package/dist/dashboard/daemon-internal-api.d.ts.map +1 -1
- package/dist/dashboard/daemon-internal-api.js +26 -93
- package/dist/dashboard/daemon-internal-api.js.map +1 -1
- package/dist/dashboard/daemon-internal-client.d.ts.map +1 -1
- package/dist/dashboard/daemon-internal-client.js +2 -3
- package/dist/dashboard/daemon-internal-client.js.map +1 -1
- package/dist/dashboard/federation-api.js +1 -1
- package/dist/dashboard/federation-api.js.map +1 -1
- package/dist/dashboard/federation-spoke-api.js +1 -1
- package/dist/dashboard/federation-spoke-api.js.map +1 -1
- package/dist/dashboard/history-senders.d.ts +3 -0
- package/dist/dashboard/history-senders.d.ts.map +1 -1
- package/dist/dashboard/history-senders.js.map +1 -1
- package/dist/dashboard/http.d.ts +4 -0
- package/dist/dashboard/http.d.ts.map +1 -0
- package/dist/dashboard/http.js +6 -0
- package/dist/dashboard/http.js.map +1 -0
- package/dist/dashboard/registry.d.ts +4 -0
- package/dist/dashboard/registry.d.ts.map +1 -1
- package/dist/dashboard/registry.js.map +1 -1
- package/dist/dashboard/trigger-api.js +1 -1
- package/dist/dashboard/trigger-api.js.map +1 -1
- package/dist/dashboard/v3-runs-api.d.ts +13 -10
- package/dist/dashboard/v3-runs-api.d.ts.map +1 -1
- package/dist/dashboard/v3-runs-api.js +121 -4
- package/dist/dashboard/v3-runs-api.js.map +1 -1
- package/dist/dashboard/vc-consumer-profiles-api.d.ts +105 -0
- package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -0
- package/dist/dashboard/vc-consumer-profiles-api.js +312 -0
- package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -0
- package/dist/dashboard/web/app.d.ts.map +1 -1
- package/dist/dashboard/web/app.js +7 -6
- package/dist/dashboard/web/app.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +9 -14
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-onboarding.d.ts.map +1 -1
- package/dist/dashboard/web/bot-onboarding.js +7 -3
- package/dist/dashboard/web/bot-onboarding.js.map +1 -1
- package/dist/dashboard/web/connectors-page.d.ts +5 -0
- package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
- package/dist/dashboard/web/connectors-page.js +16 -12
- package/dist/dashboard/web/connectors-page.js.map +1 -1
- package/dist/dashboard/web/create-session-entry.d.ts +4 -0
- package/dist/dashboard/web/create-session-entry.d.ts.map +1 -0
- package/dist/dashboard/web/create-session-entry.js +17 -0
- package/dist/dashboard/web/create-session-entry.js.map +1 -0
- package/dist/dashboard/web/dashboard-components.d.ts +5 -0
- package/dist/dashboard/web/dashboard-components.d.ts.map +1 -1
- package/dist/dashboard/web/dashboard-components.js +29 -4
- package/dist/dashboard/web/dashboard-components.js.map +1 -1
- package/dist/dashboard/web/dashboard-routes.d.ts.map +1 -1
- package/dist/dashboard/web/dashboard-routes.js +0 -1
- package/dist/dashboard/web/dashboard-routes.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +192 -382
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/preferences.d.ts +3 -0
- package/dist/dashboard/web/preferences.d.ts.map +1 -1
- package/dist/dashboard/web/preferences.js +18 -0
- package/dist/dashboard/web/preferences.js.map +1 -1
- package/dist/dashboard/web/schedules-page.d.ts.map +1 -1
- package/dist/dashboard/web/schedules-page.js +4 -1
- package/dist/dashboard/web/schedules-page.js.map +1 -1
- package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-page.js +64 -18
- package/dist/dashboard/web/sessions-page.js.map +1 -1
- package/dist/dashboard/web/settings-page.d.ts.map +1 -1
- package/dist/dashboard/web/settings-page.js +2 -1
- package/dist/dashboard/web/settings-page.js.map +1 -1
- package/dist/dashboard/web/v3-api.d.ts +12 -2
- package/dist/dashboard/web/v3-api.d.ts.map +1 -1
- package/dist/dashboard/web/v3-api.js +34 -6
- package/dist/dashboard/web/v3-api.js.map +1 -1
- package/dist/dashboard/web/v3-components.d.ts +6 -0
- package/dist/dashboard/web/v3-components.d.ts.map +1 -1
- package/dist/dashboard/web/v3-components.js +66 -23
- package/dist/dashboard/web/v3-components.js.map +1 -1
- package/dist/dashboard/web/v3-model.js +1 -1
- package/dist/dashboard/web/v3-model.js.map +1 -1
- package/dist/dashboard/web/v3-terminal.js +2 -2
- package/dist/dashboard/web/v3-terminal.js.map +1 -1
- package/dist/dashboard/web/vc-consumer-profiles-section.d.ts +19 -0
- package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -0
- package/dist/dashboard/web/vc-consumer-profiles-section.js +382 -0
- package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -0
- package/dist/dashboard/webhook-routes.d.ts.map +1 -1
- package/dist/dashboard/webhook-routes.js +29 -6
- package/dist/dashboard/webhook-routes.js.map +1 -1
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-RYBL4ZYE.js +4 -0
- package/dist/dashboard-web/chunks/{chunk-OEJIT66L.js → chunk-CMDPZOPK.js} +1 -1
- package/dist/dashboard-web/chunks/chunk-I35DXGM4.js +1 -0
- package/dist/dashboard-web/chunks/chunk-NYZHARIU.js +47 -0
- package/dist/dashboard-web/chunks/chunk-SZOB6VK2.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-YQFXGRSD.js → chunk-YBOHL7T7.js} +1 -1
- package/dist/dashboard-web/chunks/chunk-YWCPDL4S.js +1 -0
- package/dist/dashboard-web/chunks/connectors-page-DAMP7TTV.js +1 -0
- package/dist/dashboard-web/chunks/{groups-page-5AJPPJH2.js → groups-page-BPFA356N.js} +1 -1
- package/dist/dashboard-web/chunks/{insights-page-R3DFECX4.js → insights-page-SHOPHTWY.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-NLMKJLDY.js → monitor-room-PXPJGZCN.js} +1 -1
- package/dist/dashboard-web/chunks/{monitoring-page-EHSOX4GV.js → monitoring-page-4DF54M5Y.js} +1 -1
- package/dist/dashboard-web/chunks/{office-page-OXJKFJ4R.js → office-page-6OHU6KMZ.js} +1 -1
- package/dist/dashboard-web/chunks/{overview-page-GJHIVXJF.js → overview-page-IHIZ6F5M.js} +1 -1
- package/dist/dashboard-web/chunks/{roles-page-6ZODQISW.js → roles-page-JYTBYKEF.js} +1 -1
- package/dist/dashboard-web/chunks/{schedules-page-DAGMHVCH.js → schedules-page-WJ72T7KV.js} +1 -1
- package/dist/dashboard-web/chunks/sessions-page-QC56OIAI.js +3 -0
- package/dist/dashboard-web/chunks/settings-page-TCKWEXTN.js +2 -0
- package/dist/dashboard-web/chunks/{skills-page-J7EVUHXP.js → skills-page-RJJNIECW.js} +1 -1
- package/dist/dashboard-web/chunks/{team-federation-page-YM5JBIII.js → team-federation-page-ZMDX3E7K.js} +1 -1
- package/dist/dashboard-web/chunks/v3-page-VLLAUQ33.js +94 -0
- package/dist/dashboard-web/chunks/{whiteboards-page-75N2U6W4.js → whiteboards-page-NAO53CKM.js} +1 -1
- package/dist/dashboard-web/style.css +363 -274
- package/dist/dashboard.js +194 -78
- package/dist/dashboard.js.map +1 -1
- package/dist/global-config.d.ts +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +12 -87
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +12 -87
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/brand-template.d.ts +15 -0
- package/dist/im/lark/brand-template.d.ts.map +1 -0
- package/dist/im/lark/brand-template.js +114 -0
- package/dist/im/lark/brand-template.js.map +1 -0
- package/dist/im/lark/card-handler.d.ts +6 -3
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +23 -39
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/client.d.ts +8 -2
- package/dist/im/lark/client.d.ts.map +1 -1
- package/dist/im/lark/client.js +33 -31
- package/dist/im/lark/client.js.map +1 -1
- package/dist/im/lark/doc-comment.d.ts +18 -0
- package/dist/im/lark/doc-comment.d.ts.map +1 -1
- package/dist/im/lark/doc-comment.js +119 -5
- package/dist/im/lark/doc-comment.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +18 -2
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +41 -19
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/im/lark/merge-forward.d.ts.map +1 -1
- package/dist/im/lark/merge-forward.js +7 -2
- package/dist/im/lark/merge-forward.js.map +1 -1
- package/dist/im/lark/message-parser.d.ts.map +1 -1
- package/dist/im/lark/message-parser.js +7 -0
- package/dist/im/lark/message-parser.js.map +1 -1
- package/dist/im/lark/overview-card.d.ts +1 -2
- package/dist/im/lark/overview-card.d.ts.map +1 -1
- package/dist/im/lark/overview-card.js +1 -48
- package/dist/im/lark/overview-card.js.map +1 -1
- package/dist/im/lark/v3-blocked-card-handler.d.ts.map +1 -1
- package/dist/im/lark/v3-blocked-card-handler.js +5 -5
- package/dist/im/lark/v3-blocked-card-handler.js.map +1 -1
- package/dist/im/lark/v3-blocked-card.d.ts +1 -0
- package/dist/im/lark/v3-blocked-card.d.ts.map +1 -1
- package/dist/im/lark/v3-blocked-card.js +19 -2
- package/dist/im/lark/v3-blocked-card.js.map +1 -1
- package/dist/im/lark/v3-distillation-card-handler.d.ts +12 -0
- package/dist/im/lark/v3-distillation-card-handler.d.ts.map +1 -0
- package/dist/im/lark/v3-distillation-card-handler.js +107 -0
- package/dist/im/lark/v3-distillation-card-handler.js.map +1 -0
- package/dist/im/lark/v3-distillation-card.d.ts +42 -0
- package/dist/im/lark/v3-distillation-card.d.ts.map +1 -0
- package/dist/im/lark/v3-distillation-card.js +206 -0
- package/dist/im/lark/v3-distillation-card.js.map +1 -0
- package/dist/im/lark/v3-gate-card-handler.d.ts +1 -1
- package/dist/im/lark/v3-gate-card-handler.d.ts.map +1 -1
- package/dist/im/lark/v3-gate-card-handler.js +6 -5
- package/dist/im/lark/v3-gate-card-handler.js.map +1 -1
- package/dist/im/lark/v3-gate-card.d.ts +8 -1
- package/dist/im/lark/v3-gate-card.d.ts.map +1 -1
- package/dist/im/lark/v3-gate-card.js +38 -7
- package/dist/im/lark/v3-gate-card.js.map +1 -1
- package/dist/im/lark/v3-loop-grant-card-handler.d.ts.map +1 -1
- package/dist/im/lark/v3-loop-grant-card-handler.js +3 -4
- package/dist/im/lark/v3-loop-grant-card-handler.js.map +1 -1
- package/dist/im/lark/v3-loop-grant-card.js +1 -1
- package/dist/im/lark/v3-loop-grant-card.js.map +1 -1
- package/dist/im/lark/v3-progress-card-manager.d.ts +79 -0
- package/dist/im/lark/v3-progress-card-manager.d.ts.map +1 -0
- package/dist/im/lark/v3-progress-card-manager.js +444 -0
- package/dist/im/lark/v3-progress-card-manager.js.map +1 -0
- package/dist/im/lark/v3-progress-card.d.ts +26 -0
- package/dist/im/lark/v3-progress-card.d.ts.map +1 -0
- package/dist/im/lark/v3-progress-card.js +211 -0
- package/dist/im/lark/v3-progress-card.js.map +1 -0
- package/dist/im/lark/v3-revisit-grant-card-handler.d.ts.map +1 -1
- package/dist/im/lark/v3-revisit-grant-card-handler.js +3 -4
- package/dist/im/lark/v3-revisit-grant-card-handler.js.map +1 -1
- package/dist/im/lark/v3-revisit-grant-card.js +1 -1
- package/dist/im/lark/v3-revisit-grant-card.js.map +1 -1
- package/dist/im/lark/v3-run-save-card-handler.d.ts +12 -0
- package/dist/im/lark/v3-run-save-card-handler.d.ts.map +1 -0
- package/dist/im/lark/v3-run-save-card-handler.js +160 -0
- package/dist/im/lark/v3-run-save-card-handler.js.map +1 -0
- package/dist/im/lark/v3-run-save-card.d.ts +38 -0
- package/dist/im/lark/v3-run-save-card.d.ts.map +1 -0
- package/dist/im/lark/v3-run-save-card.js +125 -0
- package/dist/im/lark/v3-run-save-card.js.map +1 -0
- package/dist/im/lark/v3-saved-workflow-command.d.ts +36 -0
- package/dist/im/lark/v3-saved-workflow-command.d.ts.map +1 -0
- package/dist/im/lark/v3-saved-workflow-command.js +186 -0
- package/dist/im/lark/v3-saved-workflow-command.js.map +1 -0
- package/dist/im/lark/v3-saved-workflow-handler.d.ts +89 -0
- package/dist/im/lark/v3-saved-workflow-handler.d.ts.map +1 -0
- package/dist/im/lark/v3-saved-workflow-handler.js +212 -0
- package/dist/im/lark/v3-saved-workflow-handler.js.map +1 -0
- package/dist/im/lark/workflow-slash-command.d.ts +7 -110
- package/dist/im/lark/workflow-slash-command.d.ts.map +1 -1
- package/dist/im/lark/workflow-slash-command.js +16 -230
- package/dist/im/lark/workflow-slash-command.js.map +1 -1
- package/dist/index-daemon.js +1 -1
- package/dist/index-daemon.js.map +1 -1
- package/dist/mir-runner.js +11 -15
- package/dist/mir-runner.js.map +1 -1
- package/dist/mira-runner.js +8 -12
- package/dist/mira-runner.js.map +1 -1
- package/dist/services/bridge-turn-queue.d.ts +29 -12
- package/dist/services/bridge-turn-queue.d.ts.map +1 -1
- package/dist/services/bridge-turn-queue.js +59 -23
- package/dist/services/bridge-turn-queue.js.map +1 -1
- package/dist/services/claude-transcript.d.ts +15 -0
- package/dist/services/claude-transcript.d.ts.map +1 -1
- package/dist/services/claude-transcript.js +24 -0
- package/dist/services/claude-transcript.js.map +1 -1
- package/dist/services/codex-bridge-queue.d.ts +13 -2
- package/dist/services/codex-bridge-queue.d.ts.map +1 -1
- package/dist/services/codex-bridge-queue.js +20 -3
- package/dist/services/codex-bridge-queue.js.map +1 -1
- package/dist/services/codex-transcript.d.ts +6 -0
- package/dist/services/codex-transcript.d.ts.map +1 -1
- package/dist/services/codex-transcript.js.map +1 -1
- package/dist/services/grok-transcript.d.ts +3 -2
- package/dist/services/grok-transcript.d.ts.map +1 -1
- package/dist/services/grok-transcript.js +73 -22
- package/dist/services/grok-transcript.js.map +1 -1
- package/dist/services/hook-runner.d.ts.map +1 -1
- package/dist/services/hook-runner.js +26 -3
- package/dist/services/hook-runner.js.map +1 -1
- package/dist/services/schedule-store.d.ts +37 -0
- package/dist/services/schedule-store.d.ts.map +1 -1
- package/dist/services/schedule-store.js +259 -141
- package/dist/services/schedule-store.js.map +1 -1
- package/dist/services/send-policy.d.ts +50 -0
- package/dist/services/send-policy.d.ts.map +1 -1
- package/dist/services/send-policy.js +65 -0
- package/dist/services/send-policy.js.map +1 -1
- package/dist/services/session-lifecycle-hooks.d.ts.map +1 -1
- package/dist/services/session-lifecycle-hooks.js +12 -0
- package/dist/services/session-lifecycle-hooks.js.map +1 -1
- package/dist/services/traex-transcript.d.ts +11 -2
- package/dist/services/traex-transcript.d.ts.map +1 -1
- package/dist/services/traex-transcript.js +142 -8
- package/dist/services/traex-transcript.js.map +1 -1
- package/dist/services/trigger-types.d.ts +6 -1
- package/dist/services/trigger-types.d.ts.map +1 -1
- package/dist/services/trigger-types.js.map +1 -1
- package/dist/services/turn-terminal-deduper.d.ts +14 -0
- package/dist/services/turn-terminal-deduper.d.ts.map +1 -0
- package/dist/services/turn-terminal-deduper.js +34 -0
- package/dist/services/turn-terminal-deduper.js.map +1 -0
- package/dist/services/vc-meeting-action-gate.d.ts +246 -0
- package/dist/services/vc-meeting-action-gate.d.ts.map +1 -0
- package/dist/services/vc-meeting-action-gate.js +756 -0
- package/dist/services/vc-meeting-action-gate.js.map +1 -0
- package/dist/services/vc-meeting-action-store.d.ts +222 -0
- package/dist/services/vc-meeting-action-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-action-store.js +806 -0
- package/dist/services/vc-meeting-action-store.js.map +1 -0
- package/dist/services/vc-meeting-consumer-isolation.d.ts +27 -0
- package/dist/services/vc-meeting-consumer-isolation.d.ts.map +1 -0
- package/dist/services/vc-meeting-consumer-isolation.js +37 -0
- package/dist/services/vc-meeting-consumer-isolation.js.map +1 -0
- package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts +72 -0
- package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts.map +1 -0
- package/dist/services/vc-meeting-consumer-profile-bootstrap.js +343 -0
- package/dist/services/vc-meeting-consumer-profile-bootstrap.js.map +1 -0
- package/dist/services/vc-meeting-consumer-profile-store.d.ts +39 -0
- package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-consumer-profile-store.js +190 -0
- package/dist/services/vc-meeting-consumer-profile-store.js.map +1 -0
- package/dist/services/vc-meeting-daemon-auth.d.ts +29 -0
- package/dist/services/vc-meeting-daemon-auth.d.ts.map +1 -0
- package/dist/services/vc-meeting-daemon-auth.js +117 -0
- package/dist/services/vc-meeting-daemon-auth.js.map +1 -0
- package/dist/services/vc-meeting-delivery-feed.d.ts +52 -0
- package/dist/services/vc-meeting-delivery-feed.d.ts.map +1 -0
- package/dist/services/vc-meeting-delivery-feed.js +231 -0
- package/dist/services/vc-meeting-delivery-feed.js.map +1 -0
- package/dist/services/vc-meeting-delivery-hub-store.d.ts +213 -0
- package/dist/services/vc-meeting-delivery-hub-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-delivery-hub-store.js +1230 -0
- package/dist/services/vc-meeting-delivery-hub-store.js.map +1 -0
- package/dist/services/vc-meeting-delivery-protocol.d.ts +159 -0
- package/dist/services/vc-meeting-delivery-protocol.d.ts.map +1 -0
- package/dist/services/vc-meeting-delivery-protocol.js +443 -0
- package/dist/services/vc-meeting-delivery-protocol.js.map +1 -0
- package/dist/services/vc-meeting-delivery-receiver.d.ts +80 -0
- package/dist/services/vc-meeting-delivery-receiver.d.ts.map +1 -0
- package/dist/services/vc-meeting-delivery-receiver.js +543 -0
- package/dist/services/vc-meeting-delivery-receiver.js.map +1 -0
- package/dist/services/vc-meeting-delivery-store.d.ts +339 -0
- package/dist/services/vc-meeting-delivery-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-delivery-store.js +1024 -0
- package/dist/services/vc-meeting-delivery-store.js.map +1 -0
- package/dist/services/vc-meeting-feed-metadata-store.d.ts +58 -0
- package/dist/services/vc-meeting-feed-metadata-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-feed-metadata-store.js +356 -0
- package/dist/services/vc-meeting-feed-metadata-store.js.map +1 -0
- package/dist/services/vc-meeting-im-reply.d.ts +55 -0
- package/dist/services/vc-meeting-im-reply.d.ts.map +1 -0
- package/dist/services/vc-meeting-im-reply.js +279 -0
- package/dist/services/vc-meeting-im-reply.js.map +1 -0
- package/dist/services/vc-meeting-im-routing.d.ts +131 -0
- package/dist/services/vc-meeting-im-routing.d.ts.map +1 -0
- package/dist/services/vc-meeting-im-routing.js +449 -0
- package/dist/services/vc-meeting-im-routing.js.map +1 -0
- package/dist/services/vc-meeting-listener-message-store.d.ts +23 -0
- package/dist/services/vc-meeting-listener-message-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-listener-message-store.js +142 -0
- package/dist/services/vc-meeting-listener-message-store.js.map +1 -0
- package/dist/services/vc-meeting-member-policy.d.ts +37 -0
- package/dist/services/vc-meeting-member-policy.d.ts.map +1 -0
- package/dist/services/vc-meeting-member-policy.js +102 -0
- package/dist/services/vc-meeting-member-policy.js.map +1 -0
- package/dist/services/vc-meeting-profile-instructions.d.ts +22 -0
- package/dist/services/vc-meeting-profile-instructions.d.ts.map +1 -0
- package/dist/services/vc-meeting-profile-instructions.js +64 -0
- package/dist/services/vc-meeting-profile-instructions.js.map +1 -0
- package/dist/services/vc-meeting-runtime-store.d.ts +63 -0
- package/dist/services/vc-meeting-runtime-store.d.ts.map +1 -1
- package/dist/services/vc-meeting-runtime-store.js +605 -116
- package/dist/services/vc-meeting-runtime-store.js.map +1 -1
- package/dist/services/vc-meeting-send-policy.d.ts +89 -0
- package/dist/services/vc-meeting-send-policy.d.ts.map +1 -0
- package/dist/services/vc-meeting-send-policy.js +150 -0
- package/dist/services/vc-meeting-send-policy.js.map +1 -0
- package/dist/services/vc-meeting-terminal-reconciler.d.ts +93 -0
- package/dist/services/vc-meeting-terminal-reconciler.d.ts.map +1 -0
- package/dist/services/vc-meeting-terminal-reconciler.js +198 -0
- package/dist/services/vc-meeting-terminal-reconciler.js.map +1 -0
- package/dist/setup/open-platform-automation.d.ts +2 -0
- package/dist/setup/open-platform-automation.d.ts.map +1 -1
- package/dist/setup/open-platform-automation.js +1 -0
- package/dist/setup/open-platform-automation.js.map +1 -1
- package/dist/setup/open-platform-outcome.d.ts +50 -0
- package/dist/setup/open-platform-outcome.d.ts.map +1 -0
- package/dist/setup/open-platform-outcome.js +56 -0
- package/dist/setup/open-platform-outcome.js.map +1 -0
- package/dist/setup/setup-args.d.ts +7 -2
- package/dist/setup/setup-args.d.ts.map +1 -1
- package/dist/setup/setup-args.js +21 -5
- package/dist/setup/setup-args.js.map +1 -1
- package/dist/skills/definitions.d.ts.map +1 -1
- package/dist/skills/definitions.js +66 -54
- package/dist/skills/definitions.js.map +1 -1
- package/dist/skills/injection-mode.d.ts +5 -4
- package/dist/skills/injection-mode.d.ts.map +1 -1
- package/dist/skills/injection-mode.js +19 -10
- package/dist/skills/injection-mode.js.map +1 -1
- package/dist/types.d.ts +187 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/canonical-input-hash.d.ts +5 -0
- package/dist/utils/canonical-input-hash.d.ts.map +1 -0
- package/dist/utils/canonical-input-hash.js +43 -0
- package/dist/utils/canonical-input-hash.js.map +1 -0
- package/dist/utils/canonical-json.d.ts +10 -0
- package/dist/utils/canonical-json.d.ts.map +1 -0
- package/dist/utils/canonical-json.js +23 -0
- package/dist/utils/canonical-json.js.map +1 -0
- package/dist/utils/child-env.d.ts +1 -1
- package/dist/utils/child-env.d.ts.map +1 -1
- package/dist/utils/child-env.js +8 -0
- package/dist/utils/child-env.js.map +1 -1
- package/dist/utils/daemon-discovery.d.ts +4 -0
- package/dist/utils/daemon-discovery.d.ts.map +1 -1
- package/dist/utils/daemon-discovery.js +12 -6
- package/dist/utils/daemon-discovery.js.map +1 -1
- package/dist/utils/file-lock.d.ts.map +1 -1
- package/dist/utils/file-lock.js +696 -102
- package/dist/utils/file-lock.js.map +1 -1
- package/dist/utils/fs-durability.d.ts +20 -0
- package/dist/utils/fs-durability.d.ts.map +1 -0
- package/dist/utils/fs-durability.js +84 -0
- package/dist/utils/fs-durability.js.map +1 -0
- package/dist/utils/global-install.d.ts +5 -2
- package/dist/utils/global-install.d.ts.map +1 -1
- package/dist/utils/global-install.js +22 -4
- package/dist/utils/global-install.js.map +1 -1
- package/dist/utils/herdr-web-history.d.ts +12 -0
- package/dist/utils/herdr-web-history.d.ts.map +1 -0
- package/dist/utils/herdr-web-history.js +74 -0
- package/dist/utils/herdr-web-history.js.map +1 -0
- package/dist/utils/herdr-web-terminal-binding.d.ts +39 -0
- package/dist/utils/herdr-web-terminal-binding.d.ts.map +1 -0
- package/dist/utils/herdr-web-terminal-binding.js +56 -0
- package/dist/utils/herdr-web-terminal-binding.js.map +1 -0
- package/dist/utils/pending-input-queue.d.ts +30 -1
- package/dist/utils/pending-input-queue.d.ts.map +1 -1
- package/dist/utils/pending-input-queue.js +45 -5
- package/dist/utils/pending-input-queue.js.map +1 -1
- package/dist/vc-agent/cards.d.ts +49 -4
- package/dist/vc-agent/cards.d.ts.map +1 -1
- package/dist/vc-agent/cards.js +460 -70
- package/dist/vc-agent/cards.js.map +1 -1
- package/dist/vc-agent/polling-source.d.ts +6 -1
- package/dist/vc-agent/polling-source.d.ts.map +1 -1
- package/dist/vc-agent/polling-source.js +17 -4
- package/dist/vc-agent/polling-source.js.map +1 -1
- package/dist/worker.js +1333 -283
- package/dist/worker.js.map +1 -1
- package/dist/workflows/definition.d.ts +28 -35
- package/dist/workflows/definition.d.ts.map +1 -1
- package/dist/workflows/definition.js +7 -24
- package/dist/workflows/definition.js.map +1 -1
- package/dist/workflows/events/payloads.d.ts +28 -28
- package/dist/workflows/events/replay.d.ts +5 -0
- package/dist/workflows/events/replay.d.ts.map +1 -1
- package/dist/workflows/events/replay.js +6 -1
- package/dist/workflows/events/replay.js.map +1 -1
- package/dist/workflows/events/schema.d.ts +663 -663
- package/dist/workflows/events/schema.d.ts.map +1 -1
- package/dist/workflows/events/schema.js +1 -4
- package/dist/workflows/events/schema.js.map +1 -1
- package/dist/workflows/hostExecutors/botmux-schedule.d.ts +5 -4
- package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/botmux-schedule.js +80 -35
- package/dist/workflows/hostExecutors/botmux-schedule.js.map +1 -1
- package/dist/workflows/hostExecutors/feishu-im.d.ts +3 -3
- package/dist/workflows/hostExecutors/feishu-im.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/feishu-im.js +3 -3
- package/dist/workflows/hostExecutors/feishu-im.js.map +1 -1
- package/dist/workflows/hostExecutors/feishu-reply.d.ts +1 -1
- package/dist/workflows/hostExecutors/feishu-reply.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/feishu-reply.js +1 -1
- package/dist/workflows/hostExecutors/feishu-reply.js.map +1 -1
- package/dist/workflows/hostExecutors/feishu-send.d.ts +1 -1
- package/dist/workflows/hostExecutors/feishu-send.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/feishu-send.js +1 -1
- package/dist/workflows/hostExecutors/feishu-send.js.map +1 -1
- package/dist/workflows/hostExecutors/index.d.ts +0 -1
- package/dist/workflows/hostExecutors/index.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/index.js +0 -1
- package/dist/workflows/hostExecutors/index.js.map +1 -1
- package/dist/workflows/hostExecutors/registry.d.ts +1 -1
- package/dist/workflows/hostExecutors/registry.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/types.d.ts +21 -29
- package/dist/workflows/hostExecutors/types.d.ts.map +1 -1
- package/dist/workflows/migration/v2-definition-paths.d.ts +3 -0
- package/dist/workflows/migration/v2-definition-paths.d.ts.map +1 -0
- package/dist/workflows/migration/v2-definition-paths.js +10 -0
- package/dist/workflows/migration/v2-definition-paths.js.map +1 -0
- package/dist/workflows/migration/v2-ledger.d.ts +138 -0
- package/dist/workflows/migration/v2-ledger.d.ts.map +1 -0
- package/dist/workflows/migration/v2-ledger.js +599 -0
- package/dist/workflows/migration/v2-ledger.js.map +1 -0
- package/dist/workflows/migration/v2-migration-service.d.ts +40 -0
- package/dist/workflows/migration/v2-migration-service.d.ts.map +1 -0
- package/dist/workflows/migration/v2-migration-service.js +454 -0
- package/dist/workflows/migration/v2-migration-service.js.map +1 -0
- package/dist/workflows/migration/v2-read-only-ids.d.ts +7 -0
- package/dist/workflows/migration/v2-read-only-ids.d.ts.map +1 -0
- package/dist/workflows/migration/v2-read-only-ids.js +9 -0
- package/dist/workflows/migration/v2-read-only-ids.js.map +1 -0
- package/dist/workflows/migration/v2-run-archive-schema.d.ts +976 -0
- package/dist/workflows/migration/v2-run-archive-schema.d.ts.map +1 -0
- package/dist/workflows/migration/v2-run-archive-schema.js +113 -0
- package/dist/workflows/migration/v2-run-archive-schema.js.map +1 -0
- package/dist/workflows/migration/v2-run-archive.d.ts +92 -0
- package/dist/workflows/migration/v2-run-archive.d.ts.map +1 -0
- package/dist/workflows/migration/v2-run-archive.js +1220 -0
- package/dist/workflows/migration/v2-run-archive.js.map +1 -0
- package/dist/workflows/migration/v2-scanner.d.ts +22 -0
- package/dist/workflows/migration/v2-scanner.d.ts.map +1 -0
- package/dist/workflows/migration/v2-scanner.js +114 -0
- package/dist/workflows/migration/v2-scanner.js.map +1 -0
- package/dist/workflows/migration/v2-to-v3.d.ts +32 -0
- package/dist/workflows/migration/v2-to-v3.d.ts.map +1 -0
- package/dist/workflows/migration/v2-to-v3.js +494 -0
- package/dist/workflows/migration/v2-to-v3.js.map +1 -0
- package/dist/workflows/ops-projection.d.ts.map +1 -1
- package/dist/workflows/ops-projection.js +4 -3
- package/dist/workflows/ops-projection.js.map +1 -1
- package/dist/workflows/shared/idempotency-key.d.ts +19 -0
- package/dist/workflows/shared/idempotency-key.d.ts.map +1 -0
- package/dist/workflows/shared/idempotency-key.js +23 -0
- package/dist/workflows/shared/idempotency-key.js.map +1 -0
- package/dist/workflows/{params.d.ts → shared/params.d.ts} +42 -6
- package/dist/workflows/shared/params.d.ts.map +1 -0
- package/dist/workflows/{params.js → shared/params.js} +91 -4
- package/dist/workflows/shared/params.js.map +1 -0
- package/dist/workflows/shared/provider-reconciler.d.ts +47 -0
- package/dist/workflows/shared/provider-reconciler.d.ts.map +1 -0
- package/dist/workflows/shared/provider-reconciler.js +17 -0
- package/dist/workflows/shared/provider-reconciler.js.map +1 -0
- package/dist/workflows/{spawn-policy.d.ts → shared/sandbox-policy.d.ts} +2 -2
- package/dist/workflows/shared/sandbox-policy.d.ts.map +1 -0
- package/dist/workflows/{spawn-policy.js → shared/sandbox-policy.js} +1 -1
- package/dist/workflows/shared/sandbox-policy.js.map +1 -0
- package/dist/workflows/shared/worker-process.d.ts +29 -0
- package/dist/workflows/shared/worker-process.d.ts.map +1 -0
- package/dist/workflows/shared/worker-process.js +56 -0
- package/dist/workflows/shared/worker-process.js.map +1 -0
- package/dist/workflows/v3/architect.d.ts.map +1 -1
- package/dist/workflows/v3/architect.js +16 -4
- package/dist/workflows/v3/architect.js.map +1 -1
- package/dist/workflows/v3/attempt-ledger.d.ts +23 -0
- package/dist/workflows/v3/attempt-ledger.d.ts.map +1 -0
- package/dist/workflows/v3/attempt-ledger.js +74 -0
- package/dist/workflows/v3/attempt-ledger.js.map +1 -0
- package/dist/workflows/v3/bot-resolve.d.ts +19 -1
- package/dist/workflows/v3/bot-resolve.d.ts.map +1 -1
- package/dist/workflows/v3/bot-resolve.js +129 -3
- package/dist/workflows/v3/bot-resolve.js.map +1 -1
- package/dist/workflows/v3/cli-daemon-command-authority.d.ts +59 -0
- package/dist/workflows/v3/cli-daemon-command-authority.d.ts.map +1 -0
- package/dist/workflows/v3/cli-daemon-command-authority.js +175 -0
- package/dist/workflows/v3/cli-daemon-command-authority.js.map +1 -0
- package/dist/workflows/v3/cli-run.d.ts +27 -0
- package/dist/workflows/v3/cli-run.d.ts.map +1 -1
- package/dist/workflows/v3/cli-run.js +113 -29
- package/dist/workflows/v3/cli-run.js.map +1 -1
- package/dist/workflows/v3/contract.d.ts +16 -16
- package/dist/workflows/v3/contract.d.ts.map +1 -1
- package/dist/workflows/v3/contract.js +15 -11
- package/dist/workflows/v3/contract.js.map +1 -1
- package/dist/workflows/v3/daemon-ipc-auth.d.ts +113 -0
- package/dist/workflows/v3/daemon-ipc-auth.d.ts.map +1 -0
- package/dist/workflows/v3/daemon-ipc-auth.js +294 -0
- package/dist/workflows/v3/daemon-ipc-auth.js.map +1 -0
- package/dist/workflows/v3/daemon-ipc-body.d.ts +30 -0
- package/dist/workflows/v3/daemon-ipc-body.d.ts.map +1 -0
- package/dist/workflows/v3/daemon-ipc-body.js +65 -0
- package/dist/workflows/v3/daemon-ipc-body.js.map +1 -0
- package/dist/workflows/v3/daemon-ipc-client.d.ts +32 -0
- package/dist/workflows/v3/daemon-ipc-client.d.ts.map +1 -0
- package/dist/workflows/v3/daemon-ipc-client.js +74 -0
- package/dist/workflows/v3/daemon-ipc-client.js.map +1 -0
- package/dist/workflows/v3/daemon-run.d.ts +87 -2
- package/dist/workflows/v3/daemon-run.d.ts.map +1 -1
- package/dist/workflows/v3/daemon-run.js +863 -68
- package/dist/workflows/v3/daemon-run.js.map +1 -1
- package/dist/workflows/v3/dag.d.ts +22 -8
- package/dist/workflows/v3/dag.d.ts.map +1 -1
- package/dist/workflows/v3/dag.js +214 -22
- package/dist/workflows/v3/dag.js.map +1 -1
- package/dist/workflows/v3/distillation-compiler.d.ts +36 -0
- package/dist/workflows/v3/distillation-compiler.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-compiler.js +704 -0
- package/dist/workflows/v3/distillation-compiler.js.map +1 -0
- package/dist/workflows/v3/distillation-private-root.d.ts +10 -0
- package/dist/workflows/v3/distillation-private-root.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-private-root.js +34 -0
- package/dist/workflows/v3/distillation-private-root.js.map +1 -0
- package/dist/workflows/v3/distillation-runner.d.ts +64 -0
- package/dist/workflows/v3/distillation-runner.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-runner.js +1028 -0
- package/dist/workflows/v3/distillation-runner.js.map +1 -0
- package/dist/workflows/v3/distillation-schema.d.ts +63 -0
- package/dist/workflows/v3/distillation-schema.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-schema.js +184 -0
- package/dist/workflows/v3/distillation-schema.js.map +1 -0
- package/dist/workflows/v3/distillation-service.d.ts +78 -0
- package/dist/workflows/v3/distillation-service.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-service.js +416 -0
- package/dist/workflows/v3/distillation-service.js.map +1 -0
- package/dist/workflows/v3/distillation-source.d.ts +35 -0
- package/dist/workflows/v3/distillation-source.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-source.js +118 -0
- package/dist/workflows/v3/distillation-source.js.map +1 -0
- package/dist/workflows/v3/distillation-store.d.ts +185 -0
- package/dist/workflows/v3/distillation-store.d.ts.map +1 -0
- package/dist/workflows/v3/distillation-store.js +1127 -0
- package/dist/workflows/v3/distillation-store.js.map +1 -0
- package/dist/workflows/v3/drive-lease.d.ts +7 -0
- package/dist/workflows/v3/drive-lease.d.ts.map +1 -0
- package/dist/workflows/v3/drive-lease.js +10 -0
- package/dist/workflows/v3/drive-lease.js.map +1 -0
- package/dist/workflows/v3/ephemeral-pool.d.ts +1 -1
- package/dist/workflows/v3/ephemeral-pool.d.ts.map +1 -1
- package/dist/workflows/v3/ephemeral-pool.js +222 -37
- package/dist/workflows/v3/ephemeral-pool.js.map +1 -1
- package/dist/workflows/v3/grill-state.d.ts +18 -3
- package/dist/workflows/v3/grill-state.d.ts.map +1 -1
- package/dist/workflows/v3/grill-state.js +22 -5
- package/dist/workflows/v3/grill-state.js.map +1 -1
- package/dist/workflows/v3/host-bindings.d.ts +40 -0
- package/dist/workflows/v3/host-bindings.d.ts.map +1 -0
- package/dist/workflows/v3/host-bindings.js +272 -0
- package/dist/workflows/v3/host-bindings.js.map +1 -0
- package/dist/workflows/v3/host-effect-ledger.d.ts +22 -0
- package/dist/workflows/v3/host-effect-ledger.d.ts.map +1 -0
- package/dist/workflows/v3/host-effect-ledger.js +110 -0
- package/dist/workflows/v3/host-effect-ledger.js.map +1 -0
- package/dist/workflows/v3/host-execution.d.ts +142 -0
- package/dist/workflows/v3/host-execution.d.ts.map +1 -0
- package/dist/workflows/v3/host-execution.js +424 -0
- package/dist/workflows/v3/host-execution.js.map +1 -0
- package/dist/workflows/v3/host.d.ts +46 -10
- package/dist/workflows/v3/host.d.ts.map +1 -1
- package/dist/workflows/v3/host.js +419 -140
- package/dist/workflows/v3/host.js.map +1 -1
- package/dist/workflows/v3/human-gate.d.ts +19 -1
- package/dist/workflows/v3/human-gate.d.ts.map +1 -1
- package/dist/workflows/v3/human-gate.js +145 -19
- package/dist/workflows/v3/human-gate.js.map +1 -1
- package/dist/workflows/v3/journal.d.ts +125 -7
- package/dist/workflows/v3/journal.d.ts.map +1 -1
- package/dist/workflows/v3/journal.js +154 -38
- package/dist/workflows/v3/journal.js.map +1 -1
- package/dist/workflows/v3/library-materialize.d.ts +88 -0
- package/dist/workflows/v3/library-materialize.d.ts.map +1 -0
- package/dist/workflows/v3/library-materialize.js +294 -0
- package/dist/workflows/v3/library-materialize.js.map +1 -0
- package/dist/workflows/v3/library-schema.d.ts +138 -0
- package/dist/workflows/v3/library-schema.d.ts.map +1 -0
- package/dist/workflows/v3/library-schema.js +573 -0
- package/dist/workflows/v3/library-schema.js.map +1 -0
- package/dist/workflows/v3/library-service.d.ts +126 -0
- package/dist/workflows/v3/library-service.d.ts.map +1 -0
- package/dist/workflows/v3/library-service.js +542 -0
- package/dist/workflows/v3/library-service.js.map +1 -0
- package/dist/workflows/v3/library-store.d.ts +124 -0
- package/dist/workflows/v3/library-store.d.ts.map +1 -0
- package/dist/workflows/v3/library-store.js +665 -0
- package/dist/workflows/v3/library-store.js.map +1 -0
- package/dist/workflows/v3/orchestrator.d.ts +9 -1
- package/dist/workflows/v3/orchestrator.d.ts.map +1 -1
- package/dist/workflows/v3/orchestrator.js +2 -1
- package/dist/workflows/v3/orchestrator.js.map +1 -1
- package/dist/workflows/v3/progress-projection.d.ts +99 -0
- package/dist/workflows/v3/progress-projection.d.ts.map +1 -0
- package/dist/workflows/v3/progress-projection.js +197 -0
- package/dist/workflows/v3/progress-projection.js.map +1 -0
- package/dist/workflows/v3/run-envelope.d.ts +1279 -0
- package/dist/workflows/v3/run-envelope.d.ts.map +1 -0
- package/dist/workflows/v3/run-envelope.js +681 -0
- package/dist/workflows/v3/run-envelope.js.map +1 -0
- package/dist/workflows/v3/runtime.d.ts +39 -7
- package/dist/workflows/v3/runtime.d.ts.map +1 -1
- package/dist/workflows/v3/runtime.js +1992 -100
- package/dist/workflows/v3/runtime.js.map +1 -1
- package/dist/workflows/v3/session-relay-client.d.ts +61 -0
- package/dist/workflows/v3/session-relay-client.d.ts.map +1 -0
- package/dist/workflows/v3/session-relay-client.js +92 -0
- package/dist/workflows/v3/session-relay-client.js.map +1 -0
- package/dist/workflows/v3/session-relay.d.ts +66 -0
- package/dist/workflows/v3/session-relay.d.ts.map +1 -0
- package/dist/workflows/v3/session-relay.js +157 -0
- package/dist/workflows/v3/session-relay.js.map +1 -0
- package/dist/workflows/v3/start-intent.d.ts +8 -0
- package/dist/workflows/v3/start-intent.d.ts.map +1 -0
- package/dist/workflows/v3/start-intent.js +34 -0
- package/dist/workflows/v3/start-intent.js.map +1 -0
- package/dist/workflows/v3/state.d.ts +11 -2
- package/dist/workflows/v3/state.d.ts.map +1 -1
- package/dist/workflows/v3/state.js +182 -10
- package/dist/workflows/v3/state.js.map +1 -1
- package/dist/workflows/v3/template-bindings.d.ts +22 -0
- package/dist/workflows/v3/template-bindings.d.ts.map +1 -0
- package/dist/workflows/v3/template-bindings.js +204 -0
- package/dist/workflows/v3/template-bindings.js.map +1 -0
- package/dist/workflows/v3/worker-fence.d.ts +158 -0
- package/dist/workflows/v3/worker-fence.d.ts.map +1 -0
- package/dist/workflows/v3/worker-fence.js +685 -0
- package/dist/workflows/v3/worker-fence.js.map +1 -0
- package/package.json +3 -2
- package/dist/core/dashboard-command/workflows.d.ts +0 -20
- package/dist/core/dashboard-command/workflows.d.ts.map +0 -1
- package/dist/core/dashboard-command/workflows.js +0 -45
- package/dist/core/dashboard-command/workflows.js.map +0 -1
- package/dist/dashboard/web/legacy-workflow-link.d.ts +0 -2
- package/dist/dashboard/web/legacy-workflow-link.d.ts.map +0 -1
- package/dist/dashboard/web/legacy-workflow-link.js +0 -12
- package/dist/dashboard/web/legacy-workflow-link.js.map +0 -1
- package/dist/dashboard/web/legacy-workflow-page.d.ts +0 -3
- package/dist/dashboard/web/legacy-workflow-page.d.ts.map +0 -1
- package/dist/dashboard/web/legacy-workflow-page.js +0 -717
- package/dist/dashboard/web/legacy-workflow-page.js.map +0 -1
- package/dist/dashboard/web/workflow-version-switch.d.ts +0 -8
- package/dist/dashboard/web/workflow-version-switch.d.ts.map +0 -1
- package/dist/dashboard/web/workflow-version-switch.js +0 -9
- package/dist/dashboard/web/workflow-version-switch.js.map +0 -1
- package/dist/dashboard/web/workflows.d.ts +0 -273
- package/dist/dashboard/web/workflows.d.ts.map +0 -1
- package/dist/dashboard/web/workflows.js +0 -436
- package/dist/dashboard/web/workflows.js.map +0 -1
- package/dist/dashboard/workflow-api.d.ts +0 -30
- package/dist/dashboard/workflow-api.d.ts.map +0 -1
- package/dist/dashboard/workflow-api.js +0 -397
- package/dist/dashboard/workflow-api.js.map +0 -1
- package/dist/dashboard/workflow-card-model.d.ts +0 -127
- package/dist/dashboard/workflow-card-model.d.ts.map +0 -1
- package/dist/dashboard/workflow-card-model.js +0 -186
- package/dist/dashboard/workflow-card-model.js.map +0 -1
- package/dist/dashboard/workflows-action-helpers.d.ts +0 -105
- package/dist/dashboard/workflows-action-helpers.d.ts.map +0 -1
- package/dist/dashboard/workflows-action-helpers.js +0 -196
- package/dist/dashboard/workflows-action-helpers.js.map +0 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-7T7DPOV6.js +0 -4
- package/dist/dashboard-web/chunks/chunk-IGXYYRYJ.js +0 -1
- package/dist/dashboard-web/chunks/chunk-ISOD7VDX.js +0 -1
- package/dist/dashboard-web/chunks/chunk-PNK3HQBI.js +0 -37
- package/dist/dashboard-web/chunks/chunk-SRIE4MLQ.js +0 -1
- package/dist/dashboard-web/chunks/connectors-page-UQ4QBE45.js +0 -1
- package/dist/dashboard-web/chunks/legacy-workflow-page-QMC7OZXH.js +0 -2
- package/dist/dashboard-web/chunks/sessions-page-NNZIDHZM.js +0 -3
- package/dist/dashboard-web/chunks/settings-page-LJIXX5LQ.js +0 -2
- package/dist/dashboard-web/chunks/v3-page-YLYVHGKD.js +0 -94
- package/dist/dashboard-web/terminal-replay.html +0 -227
- package/dist/im/lark/workflow-card-handler.d.ts +0 -51
- package/dist/im/lark/workflow-card-handler.d.ts.map +0 -1
- package/dist/im/lark/workflow-card-handler.js +0 -163
- package/dist/im/lark/workflow-card-handler.js.map +0 -1
- package/dist/im/lark/workflow-cards.d.ts +0 -47
- package/dist/im/lark/workflow-cards.d.ts.map +0 -1
- package/dist/im/lark/workflow-cards.js +0 -231
- package/dist/im/lark/workflow-cards.js.map +0 -1
- package/dist/im/lark/workflow-progress-card.d.ts +0 -81
- package/dist/im/lark/workflow-progress-card.d.ts.map +0 -1
- package/dist/im/lark/workflow-progress-card.js +0 -336
- package/dist/im/lark/workflow-progress-card.js.map +0 -1
- package/dist/im/lark/workflows-card.d.ts +0 -102
- package/dist/im/lark/workflows-card.d.ts.map +0 -1
- package/dist/im/lark/workflows-card.js +0 -737
- package/dist/im/lark/workflows-card.js.map +0 -1
- package/dist/workflows/attempt-resume.d.ts +0 -119
- package/dist/workflows/attempt-resume.d.ts.map +0 -1
- package/dist/workflows/attempt-resume.js +0 -392
- package/dist/workflows/attempt-resume.js.map +0 -1
- package/dist/workflows/blob.d.ts +0 -27
- package/dist/workflows/blob.d.ts.map +0 -1
- package/dist/workflows/blob.js +0 -40
- package/dist/workflows/blob.js.map +0 -1
- package/dist/workflows/cancel-run.d.ts +0 -45
- package/dist/workflows/cancel-run.d.ts.map +0 -1
- package/dist/workflows/cancel-run.js +0 -99
- package/dist/workflows/cancel-run.js.map +0 -1
- package/dist/workflows/cancel.d.ts +0 -111
- package/dist/workflows/cancel.d.ts.map +0 -1
- package/dist/workflows/cancel.js +0 -120
- package/dist/workflows/cancel.js.map +0 -1
- package/dist/workflows/catalog.d.ts +0 -60
- package/dist/workflows/catalog.d.ts.map +0 -1
- package/dist/workflows/catalog.js +0 -119
- package/dist/workflows/catalog.js.map +0 -1
- package/dist/workflows/cold-attach.d.ts +0 -30
- package/dist/workflows/cold-attach.d.ts.map +0 -1
- package/dist/workflows/cold-attach.js +0 -40
- package/dist/workflows/cold-attach.js.map +0 -1
- package/dist/workflows/cold-scan.d.ts +0 -21
- package/dist/workflows/cold-scan.d.ts.map +0 -1
- package/dist/workflows/cold-scan.js +0 -70
- package/dist/workflows/cold-scan.js.map +0 -1
- package/dist/workflows/daemon-spawn.d.ts +0 -119
- package/dist/workflows/daemon-spawn.d.ts.map +0 -1
- package/dist/workflows/daemon-spawn.js +0 -564
- package/dist/workflows/daemon-spawn.js.map +0 -1
- package/dist/workflows/effect-input.d.ts +0 -4
- package/dist/workflows/effect-input.d.ts.map +0 -1
- package/dist/workflows/effect-input.js +0 -19
- package/dist/workflows/effect-input.js.map +0 -1
- package/dist/workflows/events/append.d.ts +0 -77
- package/dist/workflows/events/append.d.ts.map +0 -1
- package/dist/workflows/events/append.js +0 -214
- package/dist/workflows/events/append.js.map +0 -1
- package/dist/workflows/events/idempotency.d.ts +0 -77
- package/dist/workflows/events/idempotency.d.ts.map +0 -1
- package/dist/workflows/events/idempotency.js +0 -116
- package/dist/workflows/events/idempotency.js.map +0 -1
- package/dist/workflows/events/index.d.ts +0 -7
- package/dist/workflows/events/index.d.ts.map +0 -1
- package/dist/workflows/events/index.js +0 -7
- package/dist/workflows/events/index.js.map +0 -1
- package/dist/workflows/fanout.d.ts +0 -36
- package/dist/workflows/fanout.d.ts.map +0 -1
- package/dist/workflows/fanout.js +0 -115
- package/dist/workflows/fanout.js.map +0 -1
- package/dist/workflows/hostExecutors/protocol.d.ts +0 -42
- package/dist/workflows/hostExecutors/protocol.d.ts.map +0 -1
- package/dist/workflows/hostExecutors/protocol.js +0 -181
- package/dist/workflows/hostExecutors/protocol.js.map +0 -1
- package/dist/workflows/loader.d.ts +0 -30
- package/dist/workflows/loader.d.ts.map +0 -1
- package/dist/workflows/loader.js +0 -84
- package/dist/workflows/loader.js.map +0 -1
- package/dist/workflows/loop.d.ts +0 -50
- package/dist/workflows/loop.d.ts.map +0 -1
- package/dist/workflows/loop.js +0 -408
- package/dist/workflows/loop.js.map +0 -1
- package/dist/workflows/orchestrator.d.ts +0 -171
- package/dist/workflows/orchestrator.d.ts.map +0 -1
- package/dist/workflows/orchestrator.js +0 -609
- package/dist/workflows/orchestrator.js.map +0 -1
- package/dist/workflows/output-binding.d.ts +0 -77
- package/dist/workflows/output-binding.d.ts.map +0 -1
- package/dist/workflows/output-binding.js +0 -329
- package/dist/workflows/output-binding.js.map +0 -1
- package/dist/workflows/params.d.ts.map +0 -1
- package/dist/workflows/params.js.map +0 -1
- package/dist/workflows/resume.d.ts +0 -263
- package/dist/workflows/resume.d.ts.map +0 -1
- package/dist/workflows/resume.js +0 -808
- package/dist/workflows/resume.js.map +0 -1
- package/dist/workflows/run-id.d.ts +0 -2
- package/dist/workflows/run-id.d.ts.map +0 -1
- package/dist/workflows/run-id.js +0 -7
- package/dist/workflows/run-id.js.map +0 -1
- package/dist/workflows/run-init.d.ts +0 -48
- package/dist/workflows/run-init.d.ts.map +0 -1
- package/dist/workflows/run-init.js +0 -100
- package/dist/workflows/run-init.js.map +0 -1
- package/dist/workflows/runs-dir.d.ts +0 -4
- package/dist/workflows/runs-dir.d.ts.map +0 -1
- package/dist/workflows/runs-dir.js +0 -15
- package/dist/workflows/runs-dir.js.map +0 -1
- package/dist/workflows/runtime.d.ts +0 -215
- package/dist/workflows/runtime.d.ts.map +0 -1
- package/dist/workflows/runtime.js +0 -630
- package/dist/workflows/runtime.js.map +0 -1
- package/dist/workflows/spawn-bot.d.ts +0 -165
- package/dist/workflows/spawn-bot.d.ts.map +0 -1
- package/dist/workflows/spawn-bot.js +0 -215
- package/dist/workflows/spawn-bot.js.map +0 -1
- package/dist/workflows/spawn-policy.d.ts.map +0 -1
- package/dist/workflows/spawn-policy.js.map +0 -1
- package/dist/workflows/system.d.ts +0 -49
- package/dist/workflows/system.d.ts.map +0 -1
- package/dist/workflows/system.js +0 -48
- package/dist/workflows/system.js.map +0 -1
- package/dist/workflows/trigger-from-envelope.d.ts +0 -13
- package/dist/workflows/trigger-from-envelope.d.ts.map +0 -1
- package/dist/workflows/trigger-from-envelope.js +0 -68
- package/dist/workflows/trigger-from-envelope.js.map +0 -1
- package/dist/workflows/trigger-run.d.ts +0 -70
- package/dist/workflows/trigger-run.d.ts.map +0 -1
- package/dist/workflows/trigger-run.js +0 -88
- package/dist/workflows/trigger-run.js.map +0 -1
- package/dist/workflows/wait.d.ts +0 -141
- package/dist/workflows/wait.d.ts.map +0 -1
- package/dist/workflows/wait.js +0 -203
- package/dist/workflows/wait.js.map +0 -1
|
@@ -1,609 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Workflow orchestrator (pure decision layer).
|
|
3
|
-
*
|
|
4
|
-
* Given a current `Snapshot` and the `WorkflowDefinition`, decide what
|
|
5
|
-
* the runtime should do next. Returns a list of `OrchestratorAction`
|
|
6
|
-
* descriptors — the executor (Slice D) is responsible for translating
|
|
7
|
-
* those into event-log writes and side-effect dispatches. Keeping the
|
|
8
|
-
* decision function pure makes the critical-path semantics easy to test
|
|
9
|
-
* without spinning up workers / IM / file IO.
|
|
10
|
-
*
|
|
11
|
-
* v0 scope (UI doc §7 landing #1): focus on the humanGate.stage='before'
|
|
12
|
-
* loop. Retries / cancel coordination / reconcile already live in
|
|
13
|
-
* `resume.ts`; the orchestrator only emits forward-progress decisions
|
|
14
|
-
* and lets resume own recovery.
|
|
15
|
-
*
|
|
16
|
-
* ────────────────────────────────────────────────────────────────────
|
|
17
|
-
* Activity ID convention
|
|
18
|
-
*
|
|
19
|
-
* gate activity: `<runId>::gate::<nodeId>`
|
|
20
|
-
* work activity: `<runId>::work::<nodeId>`
|
|
21
|
-
*
|
|
22
|
-
* One node may own at most one gate (before-gate) and one work
|
|
23
|
-
* activity in v0. After-gates and re-runs are deferred.
|
|
24
|
-
*
|
|
25
|
-
* v0.2 loop body activities are scoped by a `loop::<loopId>.<N>` segment:
|
|
26
|
-
*
|
|
27
|
-
* loop work activity: `<runId>::loop::<loopId>.<N>::work::<bodyNodeId>`
|
|
28
|
-
* loop gate activity: `<runId>::loop::<loopId>.<N>::gate::<bodyNodeId>`
|
|
29
|
-
*
|
|
30
|
-
* `<N>` is the 1-indexed iteration; `<loopId>` is the loop block's
|
|
31
|
-
* nodeId. All segments stay within `SEGMENT_RE` (allows
|
|
32
|
-
* `[A-Za-z0-9._:-]`), so existing `isValidPathSegment` / attempt-
|
|
33
|
-
* sidecar path guards continue to apply without modification.
|
|
34
|
-
* ────────────────────────────────────────────────────────────────────
|
|
35
|
-
*/
|
|
36
|
-
import { topologicalOrder, } from './definition.js';
|
|
37
|
-
// ─── Activity ID helpers ──────────────────────────────────────────────────
|
|
38
|
-
export function gateActivityId(runId, nodeId) {
|
|
39
|
-
return `${runId}::gate::${nodeId}`;
|
|
40
|
-
}
|
|
41
|
-
export function workActivityId(runId, nodeId) {
|
|
42
|
-
return `${runId}::work::${nodeId}`;
|
|
43
|
-
}
|
|
44
|
-
// ─── Loop iteration activity IDs (v0.2) ───────────────────────────────────
|
|
45
|
-
//
|
|
46
|
-
// See /tmp/wf-loop-v02.md §4.2 and the top-of-file ASCII spec.
|
|
47
|
-
//
|
|
48
|
-
// Iteration `N` is 1-indexed. We refuse to encode `N < 1` so callers
|
|
49
|
-
// never accidentally emit `loop::foo.0` ids (the iteration counter is a
|
|
50
|
-
// real loop-state position, not a placeholder).
|
|
51
|
-
export function loopWorkActivityId(runId, loopId, iteration, bodyNodeId) {
|
|
52
|
-
if (!Number.isInteger(iteration) || iteration < 1) {
|
|
53
|
-
throw new Error(`loopWorkActivityId: iteration must be a positive integer (got ${iteration})`);
|
|
54
|
-
}
|
|
55
|
-
return `${runId}::loop::${loopId}.${iteration}::work::${bodyNodeId}`;
|
|
56
|
-
}
|
|
57
|
-
export function loopGateActivityId(runId, loopId, iteration, bodyNodeId) {
|
|
58
|
-
if (!Number.isInteger(iteration) || iteration < 1) {
|
|
59
|
-
throw new Error(`loopGateActivityId: iteration must be a positive integer (got ${iteration})`);
|
|
60
|
-
}
|
|
61
|
-
return `${runId}::loop::${loopId}.${iteration}::gate::${bodyNodeId}`;
|
|
62
|
-
}
|
|
63
|
-
const PLAIN_RE = /^([^:]+(?:::?[^:]+)*?)::(work|gate)::([A-Za-z0-9_.-]+)$/;
|
|
64
|
-
const LOOP_RE = /^(.+)::loop::([A-Za-z0-9_.-]+)\.(\d+)::(work|gate)::([A-Za-z0-9_.-]+)$/;
|
|
65
|
-
export function parseActivityId(s) {
|
|
66
|
-
// Loop form first — the `::loop::` segment is unambiguous and would
|
|
67
|
-
// also accidentally satisfy a greedy plain match if we tried plain
|
|
68
|
-
// first (`runId` would absorb `::loop::<id>.<N>::work`).
|
|
69
|
-
const loopMatch = LOOP_RE.exec(s);
|
|
70
|
-
if (loopMatch) {
|
|
71
|
-
const [, runId, loopId, iterStr, activityKind, nodeId] = loopMatch;
|
|
72
|
-
const iteration = Number(iterStr);
|
|
73
|
-
if (!Number.isFinite(iteration) || iteration < 1)
|
|
74
|
-
return undefined;
|
|
75
|
-
return {
|
|
76
|
-
kind: 'loop',
|
|
77
|
-
runId,
|
|
78
|
-
loopId,
|
|
79
|
-
iteration,
|
|
80
|
-
activityKind: activityKind,
|
|
81
|
-
nodeId,
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
const plainMatch = PLAIN_RE.exec(s);
|
|
85
|
-
if (plainMatch) {
|
|
86
|
-
const [, runId, activityKind, nodeId] = plainMatch;
|
|
87
|
-
return {
|
|
88
|
-
kind: 'plain',
|
|
89
|
-
runId,
|
|
90
|
-
activityKind: activityKind,
|
|
91
|
-
nodeId,
|
|
92
|
-
};
|
|
93
|
-
}
|
|
94
|
-
return undefined;
|
|
95
|
-
}
|
|
96
|
-
// ─── Decision function ───────────────────────────────────────────────────
|
|
97
|
-
/**
|
|
98
|
-
* Pure decision function. Read-only — never throws on graph cycles
|
|
99
|
-
* (the caller is responsible for using `parseWorkflowDefinition` to
|
|
100
|
-
* validate the graph upstream). Returns `[]` when:
|
|
101
|
-
* - run is already terminal (succeeded / failed / cancelled)
|
|
102
|
-
* - all nodes are pending on dependencies / open waits / in-flight
|
|
103
|
-
* activities and no advancement is possible
|
|
104
|
-
*
|
|
105
|
-
* Ordering: node-scoped actions follow topological order so callers
|
|
106
|
-
* see deps-ready nodes first. Run-scoped actions (completeRun*) come
|
|
107
|
-
* only if no per-node actions remain — they're the terminal sweep.
|
|
108
|
-
*/
|
|
109
|
-
export function decideNextActions(snapshot, def) {
|
|
110
|
-
if (snapshot.run.status === 'succeeded' ||
|
|
111
|
-
snapshot.run.status === 'failed' ||
|
|
112
|
-
snapshot.run.status === 'cancelled') {
|
|
113
|
-
return [];
|
|
114
|
-
}
|
|
115
|
-
// cancel-intent short-circuit (v0.1.4-a): once `cancelRequested` for the
|
|
116
|
-
// whole run has been written, we stop emitting fresh dispatches. Letting
|
|
117
|
-
// the loop continue would let late `activitySucceeded` from workers that
|
|
118
|
-
// hadn't yet observed the cancel walk the run past the cancel into a
|
|
119
|
-
// terminal-success — exactly the race that parallel dispatch widens.
|
|
120
|
-
// `cancelWorkflowRun` (called from `cancelWorkflowRunOnDaemon` after this
|
|
121
|
-
// returns []) is responsible for fanning out cancelDelivered →
|
|
122
|
-
// activityCanceled → nodeCanceled → runCanceled.
|
|
123
|
-
if (snapshot.cancelledRunIntent) {
|
|
124
|
-
return [];
|
|
125
|
-
}
|
|
126
|
-
const actions = [];
|
|
127
|
-
const runId = snapshot.run.runId;
|
|
128
|
-
const order = topologicalOrder(def);
|
|
129
|
-
// v0.2: compute loop body membership once so the top-level scheduler
|
|
130
|
-
// skips body nodes (they're dispatched by the loop branch only).
|
|
131
|
-
const bodyOwner = buildBodyOwnerMap(def);
|
|
132
|
-
let failedNodeId;
|
|
133
|
-
let pendingCount = 0;
|
|
134
|
-
// ─── Loop lifecycle + body dispatch pass (v0.2) ──────────────────────
|
|
135
|
-
//
|
|
136
|
-
// For each loop block in topo order, this pass owns:
|
|
137
|
-
// 1. emitting `startLoop` when the loop's `depends` first go green
|
|
138
|
-
// 2. emitting `startLoopIteration` to open each iteration
|
|
139
|
-
// 3. dispatching body activities under loop-iteration activityIds
|
|
140
|
-
// 4. emitting `finishLoopIteration` once the terminator decision
|
|
141
|
-
// attempt settles (approve or reject)
|
|
142
|
-
// 5. emitting `finishLoop` once iteration loop closes (approved /
|
|
143
|
-
// max-iterations-exceeded / non-terminator body failure / decision
|
|
144
|
-
// humanGate timeout)
|
|
145
|
-
//
|
|
146
|
-
// Per codex round 3: lifecycle actions are returned as the SOLE action
|
|
147
|
-
// of the tick so event ordering — `loopStarted` → `loopIterationStarted`
|
|
148
|
-
// → body attempts — is deterministic and never interleaves with body
|
|
149
|
-
// dispatches. Body dispatches batch up only when no lifecycle action
|
|
150
|
-
// fires this tick.
|
|
151
|
-
for (const nodeId of order) {
|
|
152
|
-
const node = def.nodes[nodeId];
|
|
153
|
-
if (node.type !== 'loop')
|
|
154
|
-
continue;
|
|
155
|
-
const loopId = nodeId;
|
|
156
|
-
const loopState = snapshot.loops.get(loopId);
|
|
157
|
-
const depsOk = (node.depends ?? []).every((dep) => snapshot.nodes.get(dep)?.status === 'succeeded');
|
|
158
|
-
// (1) Loop not yet entered.
|
|
159
|
-
if (!loopState) {
|
|
160
|
-
if (!depsOk) {
|
|
161
|
-
pendingCount++;
|
|
162
|
-
continue;
|
|
163
|
-
}
|
|
164
|
-
return [{ kind: 'startLoop', loopId, maxIterations: node.maxIterations }];
|
|
165
|
-
}
|
|
166
|
-
// Loop already finalized — nothing else to do.
|
|
167
|
-
if (loopState.status !== 'running')
|
|
168
|
-
continue;
|
|
169
|
-
// (2) Loop started but no iteration opened yet.
|
|
170
|
-
if (loopState.iteration === 0) {
|
|
171
|
-
return [
|
|
172
|
-
{ kind: 'startLoopIteration', loopId, iteration: 1, prevResolution: 'initial' },
|
|
173
|
-
];
|
|
174
|
-
}
|
|
175
|
-
// Active iteration in progress.
|
|
176
|
-
const currentIter = loopState.iteration;
|
|
177
|
-
const iterState = loopState.iterations[currentIter - 1];
|
|
178
|
-
if (!iterState) {
|
|
179
|
-
pendingCount++;
|
|
180
|
-
continue; // anomalous — shouldn't happen, skip safely
|
|
181
|
-
}
|
|
182
|
-
// (4) Current iteration already has a settled resolution:
|
|
183
|
-
if (iterState.status === 'approved') {
|
|
184
|
-
const outputRef = computeLoopOutputRef(snapshot, runId, node, loopId, currentIter);
|
|
185
|
-
return [
|
|
186
|
-
{
|
|
187
|
-
kind: 'finishLoop',
|
|
188
|
-
loopId,
|
|
189
|
-
finalIteration: currentIter,
|
|
190
|
-
resolution: 'approved',
|
|
191
|
-
outputRef,
|
|
192
|
-
},
|
|
193
|
-
];
|
|
194
|
-
}
|
|
195
|
-
if (iterState.status === 'rejected') {
|
|
196
|
-
if (currentIter < loopState.maxIterations) {
|
|
197
|
-
return [
|
|
198
|
-
{
|
|
199
|
-
kind: 'startLoopIteration',
|
|
200
|
-
loopId,
|
|
201
|
-
iteration: currentIter + 1,
|
|
202
|
-
prevResolution: 'rejected',
|
|
203
|
-
},
|
|
204
|
-
];
|
|
205
|
-
}
|
|
206
|
-
return [
|
|
207
|
-
{
|
|
208
|
-
kind: 'finishLoop',
|
|
209
|
-
loopId,
|
|
210
|
-
finalIteration: currentIter,
|
|
211
|
-
resolution: 'max-iterations-exceeded',
|
|
212
|
-
errorCode: 'LoopMaxIterationsExceeded',
|
|
213
|
-
errorClass: 'userFault',
|
|
214
|
-
},
|
|
215
|
-
];
|
|
216
|
-
}
|
|
217
|
-
if (iterState.status === 'failed' || iterState.status === 'cancelled') {
|
|
218
|
-
// Non-terminator failure already finalized this iteration; close
|
|
219
|
-
// the loop block with `body-failed` resolution (codex Step 3
|
|
220
|
-
// review Medium). `cancelled` is reserved for user-initiated
|
|
221
|
-
// cancel; `body-failed` distinguishes "this loop died because a
|
|
222
|
-
// body node failed" from "user clicked cancel".
|
|
223
|
-
return [
|
|
224
|
-
{
|
|
225
|
-
kind: 'finishLoop',
|
|
226
|
-
loopId,
|
|
227
|
-
finalIteration: currentIter,
|
|
228
|
-
resolution: 'body-failed',
|
|
229
|
-
errorCode: 'LoopBodyFailed',
|
|
230
|
-
errorClass: 'fatal',
|
|
231
|
-
},
|
|
232
|
-
];
|
|
233
|
-
}
|
|
234
|
-
// (3) Iteration is `running` — dispatch body / terminator.
|
|
235
|
-
//
|
|
236
|
-
// Step through body nodes in topo order *within* this iteration.
|
|
237
|
-
// Use a small per-iteration helper map: bodyId → succeeded? so we
|
|
238
|
-
// can resolve intra-body deps without touching the v0.1 node-level
|
|
239
|
-
// status (which never advances for body nodes in v0.2).
|
|
240
|
-
const bodySet = new Set(node.body);
|
|
241
|
-
const bodyDone = new Map();
|
|
242
|
-
let bodyFailureFinish;
|
|
243
|
-
const iterDispatch = [];
|
|
244
|
-
for (const bodyId of orderForBody(order, bodySet)) {
|
|
245
|
-
const bodyNode = def.nodes[bodyId];
|
|
246
|
-
// Intra-body dep check: all body-side deps must have a succeeded
|
|
247
|
-
// activity in *this* iteration; loop-external deps were guaranteed
|
|
248
|
-
// already by the loop block's own `depends` gate.
|
|
249
|
-
const intraDepsOk = (bodyNode.depends ?? [])
|
|
250
|
-
.filter((d) => bodySet.has(d))
|
|
251
|
-
.every((d) => bodyDone.get(d) === true);
|
|
252
|
-
if (!intraDepsOk) {
|
|
253
|
-
pendingCount++;
|
|
254
|
-
continue;
|
|
255
|
-
}
|
|
256
|
-
const isTerminator = bodyId === node.terminate.node;
|
|
257
|
-
const bodyGateActId = loopGateActivityId(runId, loopId, currentIter, bodyId);
|
|
258
|
-
const bodyWorkActId = loopWorkActivityId(runId, loopId, currentIter, bodyId);
|
|
259
|
-
const advance = decideNodeAdvancement(snapshot, bodyNode, bodyId, bodyGateActId, bodyWorkActId);
|
|
260
|
-
if (advance.isSucceeded) {
|
|
261
|
-
bodyDone.set(bodyId, true);
|
|
262
|
-
if (isTerminator) {
|
|
263
|
-
// Terminator settled — read its wait resolution out of the
|
|
264
|
-
// activity attempt, then return `finishLoopIteration` as the
|
|
265
|
-
// sole action this tick so the iteration advances cleanly.
|
|
266
|
-
const decisionAct = snapshot.activities.get(bodyGateActId);
|
|
267
|
-
const lastAt = decisionAct?.attempts[decisionAct.attempts.length - 1];
|
|
268
|
-
const wait = lastAt?.wait?.resolution;
|
|
269
|
-
if (wait &&
|
|
270
|
-
wait.kind === 'resolved' &&
|
|
271
|
-
(wait.resolution === 'approved' || wait.resolution === 'rejected')) {
|
|
272
|
-
return [
|
|
273
|
-
{
|
|
274
|
-
kind: 'finishLoopIteration',
|
|
275
|
-
loopId,
|
|
276
|
-
iteration: currentIter,
|
|
277
|
-
resolution: wait.resolution,
|
|
278
|
-
decisionActivityId: bodyGateActId,
|
|
279
|
-
waitResolvedEventId: wait.eventId,
|
|
280
|
-
by: wait.by,
|
|
281
|
-
comment: wait.comment,
|
|
282
|
-
},
|
|
283
|
-
];
|
|
284
|
-
}
|
|
285
|
-
if (wait && wait.kind === 'deadlineExceeded') {
|
|
286
|
-
return [
|
|
287
|
-
{
|
|
288
|
-
kind: 'finishLoopIteration',
|
|
289
|
-
loopId,
|
|
290
|
-
iteration: currentIter,
|
|
291
|
-
resolution: 'rejected',
|
|
292
|
-
decisionActivityId: bodyGateActId,
|
|
293
|
-
waitResolvedEventId: wait.eventId,
|
|
294
|
-
by: 'system',
|
|
295
|
-
timedOut: true,
|
|
296
|
-
},
|
|
297
|
-
];
|
|
298
|
-
}
|
|
299
|
-
// Decision attempt succeeded but no resolution found — defer.
|
|
300
|
-
pendingCount++;
|
|
301
|
-
}
|
|
302
|
-
continue;
|
|
303
|
-
}
|
|
304
|
-
if (advance.isFailed) {
|
|
305
|
-
if (isTerminator) {
|
|
306
|
-
// Terminator humanGate timed out / failed → finish the loop
|
|
307
|
-
// with `timeout` + WaitDeadlineExceeded (codex Step 3 review
|
|
308
|
-
// Medium — schema invariant requires this errorCode pairing).
|
|
309
|
-
bodyFailureFinish = {
|
|
310
|
-
kind: 'finishLoop',
|
|
311
|
-
loopId,
|
|
312
|
-
finalIteration: currentIter,
|
|
313
|
-
resolution: 'timeout',
|
|
314
|
-
errorCode: 'WaitDeadlineExceeded',
|
|
315
|
-
errorClass: 'userFault',
|
|
316
|
-
};
|
|
317
|
-
}
|
|
318
|
-
else {
|
|
319
|
-
// Non-terminator body node failed (subagent crash / hostExecutor
|
|
320
|
-
// error / non-terminator humanGate.reject = fail-run per
|
|
321
|
-
// /tmp/wf-loop-v02.md §10.8) → close as `body-failed`.
|
|
322
|
-
bodyFailureFinish = {
|
|
323
|
-
kind: 'finishLoop',
|
|
324
|
-
loopId,
|
|
325
|
-
finalIteration: currentIter,
|
|
326
|
-
resolution: 'body-failed',
|
|
327
|
-
errorCode: 'LoopBodyFailed',
|
|
328
|
-
errorClass: 'fatal',
|
|
329
|
-
};
|
|
330
|
-
}
|
|
331
|
-
break; // stop iterating body; we'll close the loop instead
|
|
332
|
-
}
|
|
333
|
-
// Not yet succeeded / failed — accumulate dispatch actions.
|
|
334
|
-
iterDispatch.push(...advance.actions);
|
|
335
|
-
pendingCount += advance.actions.length === 0 ? 1 : 0;
|
|
336
|
-
}
|
|
337
|
-
if (bodyFailureFinish) {
|
|
338
|
-
return [bodyFailureFinish];
|
|
339
|
-
}
|
|
340
|
-
// Body dispatches accumulate into the outer `actions` array; the
|
|
341
|
-
// legacy plain-node pass below will also push into it, so a single
|
|
342
|
-
// tick can dispatch multiple body nodes + plain nodes together.
|
|
343
|
-
// Lifecycle actions never reach this branch (they early-return
|
|
344
|
-
// above).
|
|
345
|
-
for (const a of iterDispatch)
|
|
346
|
-
actions.push(a);
|
|
347
|
-
}
|
|
348
|
-
// ─── Loop terminal propagation ────────────────────────────────────────
|
|
349
|
-
//
|
|
350
|
-
// After the loop branch may have emitted `finishLoop`, the next tick
|
|
351
|
-
// sees `loopState.status` settled but the legacy node-level state
|
|
352
|
-
// machine doesn't know about it. Propagate failed / cancelled loop
|
|
353
|
-
// blocks into `failedNodeId` so the actions.length===0 sweep below
|
|
354
|
-
// can emit `completeRunFailed`. Succeeded loop blocks expose their
|
|
355
|
-
// projected output via `outputs[workActivityId(runId, loopId)]` and
|
|
356
|
-
// are handled naturally by the sink sweep.
|
|
357
|
-
for (const [loopId, loopState] of snapshot.loops) {
|
|
358
|
-
if (loopState.status === 'failed' || loopState.status === 'cancelled') {
|
|
359
|
-
failedNodeId = failedNodeId ?? loopId;
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
// ─── Plain (non-loop, non-body) node pass ────────────────────────────
|
|
363
|
-
//
|
|
364
|
-
// Same logic as v0.1: dispatch gate → dispatch work → settle node.
|
|
365
|
-
// Skips loop blocks (already handled) + decision nodes (only valid in
|
|
366
|
-
// loop body) + body nodes (dispatched only by the loop branch above).
|
|
367
|
-
for (const nodeId of order) {
|
|
368
|
-
const node = def.nodes[nodeId];
|
|
369
|
-
if (node.type === 'loop')
|
|
370
|
-
continue;
|
|
371
|
-
if (node.type === 'decision')
|
|
372
|
-
continue; // validateLoopBlocks guarantees in-body
|
|
373
|
-
if (bodyOwner.has(nodeId))
|
|
374
|
-
continue; // dispatched by loop branch
|
|
375
|
-
const nstatus = snapshot.nodes.get(nodeId)?.status ?? 'idle';
|
|
376
|
-
if (nstatus === 'succeeded' || nstatus === 'skipped' || nstatus === 'cancelled') {
|
|
377
|
-
continue;
|
|
378
|
-
}
|
|
379
|
-
if (nstatus === 'failed') {
|
|
380
|
-
failedNodeId = failedNodeId ?? nodeId;
|
|
381
|
-
continue;
|
|
382
|
-
}
|
|
383
|
-
// Dependencies gate dispatch. Loop blocks are treated as "succeeded"
|
|
384
|
-
// for the purpose of downstream deps when their snapshot status is
|
|
385
|
-
// 'succeeded'. This is how `${review-loop.output.x}` and direct
|
|
386
|
-
// body-node refs become resolvable for downstream plain nodes.
|
|
387
|
-
const depsOk = (node.depends ?? []).every((dep) => {
|
|
388
|
-
const depNode = def.nodes[dep];
|
|
389
|
-
if (depNode?.type === 'loop') {
|
|
390
|
-
return snapshot.loops.get(dep)?.status === 'succeeded';
|
|
391
|
-
}
|
|
392
|
-
return snapshot.nodes.get(dep)?.status === 'succeeded';
|
|
393
|
-
});
|
|
394
|
-
if (!depsOk) {
|
|
395
|
-
pendingCount++;
|
|
396
|
-
continue;
|
|
397
|
-
}
|
|
398
|
-
const gateActId = gateActivityId(runId, nodeId);
|
|
399
|
-
const workActId = workActivityId(runId, nodeId);
|
|
400
|
-
const advance = decideNodeAdvancement(snapshot, node, nodeId, gateActId, workActId);
|
|
401
|
-
if (advance.isSucceeded) {
|
|
402
|
-
for (const a of advance.actions)
|
|
403
|
-
actions.push(a);
|
|
404
|
-
continue;
|
|
405
|
-
}
|
|
406
|
-
if (advance.isFailed) {
|
|
407
|
-
for (const a of advance.actions)
|
|
408
|
-
actions.push(a);
|
|
409
|
-
// completeNodeFailed action records nodeId in actions; the
|
|
410
|
-
// downstream sweep uses node.status='failed' from the next
|
|
411
|
-
// replay to fail the run.
|
|
412
|
-
continue;
|
|
413
|
-
}
|
|
414
|
-
for (const a of advance.actions)
|
|
415
|
-
actions.push(a);
|
|
416
|
-
if (advance.actions.length === 0)
|
|
417
|
-
pendingCount++;
|
|
418
|
-
}
|
|
419
|
-
if (actions.length === 0) {
|
|
420
|
-
if (failedNodeId) {
|
|
421
|
-
actions.push({ kind: 'completeRunFailed', failedNodeId });
|
|
422
|
-
}
|
|
423
|
-
else if (pendingCount === 0) {
|
|
424
|
-
const sinks = findSinks(def);
|
|
425
|
-
if (sinks.length === 1) {
|
|
426
|
-
const sinkId = sinks[0];
|
|
427
|
-
const sinkNode = def.nodes[sinkId];
|
|
428
|
-
const sinkActId = workActivityId(runId, sinkId);
|
|
429
|
-
const sinkOutput = sinkNode?.type === 'loop'
|
|
430
|
-
? snapshot.outputs.get(sinkActId) // loopFinished projection (codex Step 2)
|
|
431
|
-
: snapshot.outputs.get(sinkActId);
|
|
432
|
-
if (sinkOutput) {
|
|
433
|
-
actions.push({
|
|
434
|
-
kind: 'completeRunSucceeded',
|
|
435
|
-
outputRef: sinkOutput,
|
|
436
|
-
sinkNodeId: sinkId,
|
|
437
|
-
});
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
}
|
|
442
|
-
return actions;
|
|
443
|
-
}
|
|
444
|
-
/**
|
|
445
|
-
* Per-node advancement decision used by both the top-level scheduler
|
|
446
|
-
* (plain nodes) and the v0.2 loop branch (body / decision nodes). The
|
|
447
|
-
* caller supplies the gate and work activityIds so the same logic
|
|
448
|
-
* applies to plain `runId::work::node` ids and loop iteration
|
|
449
|
-
* `runId::loop::loopId.N::work::node` ids without leaking the
|
|
450
|
-
* activityId convention into this helper.
|
|
451
|
-
*
|
|
452
|
-
* Returns the actions the caller should emit plus a small status
|
|
453
|
-
* triplet — exactly one of `isSucceeded` / `isFailed` is true when
|
|
454
|
-
* the node has reached its terminal; otherwise the call is "pending"
|
|
455
|
-
* (in-flight) and the returned actions are dispatch instructions for
|
|
456
|
-
* gate/work that haven't yet been emitted.
|
|
457
|
-
*/
|
|
458
|
-
function decideNodeAdvancement(snapshot, node, nodeId, gateActId, workActId) {
|
|
459
|
-
const actions = [];
|
|
460
|
-
// Decision node: gate-only. Both reject and approve resolve to
|
|
461
|
-
// `activitySucceeded` per wait.ts decision-mode (see N2 in
|
|
462
|
-
// /tmp/wf-loop-v02.md §4.3); only humanGate timeout produces a
|
|
463
|
-
// failed activity.
|
|
464
|
-
if (node.type === 'decision') {
|
|
465
|
-
const gateAct = snapshot.activities.get(gateActId);
|
|
466
|
-
if (!gateAct) {
|
|
467
|
-
actions.push({
|
|
468
|
-
kind: 'dispatchGate',
|
|
469
|
-
nodeId,
|
|
470
|
-
activityId: gateActId,
|
|
471
|
-
humanGate: node.humanGate,
|
|
472
|
-
});
|
|
473
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
474
|
-
}
|
|
475
|
-
if (gateAct.status === 'succeeded') {
|
|
476
|
-
return { actions, isSucceeded: true, isFailed: false };
|
|
477
|
-
}
|
|
478
|
-
if (gateAct.status === 'failed' || gateAct.status === 'timedOut') {
|
|
479
|
-
return { actions, isSucceeded: false, isFailed: true };
|
|
480
|
-
}
|
|
481
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
482
|
-
}
|
|
483
|
-
// Loop blocks are not handled by this helper.
|
|
484
|
-
if (node.type === 'loop') {
|
|
485
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
486
|
-
}
|
|
487
|
-
const gateAct = snapshot.activities.get(gateActId);
|
|
488
|
-
const workAct = snapshot.activities.get(workActId);
|
|
489
|
-
if (node.humanGate) {
|
|
490
|
-
if (!gateAct) {
|
|
491
|
-
actions.push({
|
|
492
|
-
kind: 'dispatchGate',
|
|
493
|
-
nodeId,
|
|
494
|
-
activityId: gateActId,
|
|
495
|
-
humanGate: node.humanGate,
|
|
496
|
-
});
|
|
497
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
498
|
-
}
|
|
499
|
-
if (gateAct.status === 'failed' || gateAct.status === 'timedOut') {
|
|
500
|
-
actions.push({
|
|
501
|
-
kind: 'completeNodeFailed',
|
|
502
|
-
nodeId,
|
|
503
|
-
lastActivityId: gateActId,
|
|
504
|
-
errorClass: 'userFault',
|
|
505
|
-
});
|
|
506
|
-
return { actions, isSucceeded: false, isFailed: true };
|
|
507
|
-
}
|
|
508
|
-
if (gateAct.status !== 'succeeded') {
|
|
509
|
-
// gate in-flight — caller treats this as pending
|
|
510
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
511
|
-
}
|
|
512
|
-
// gate cleared → fall through to work
|
|
513
|
-
}
|
|
514
|
-
if (!workAct) {
|
|
515
|
-
actions.push({
|
|
516
|
-
kind: 'dispatchWork',
|
|
517
|
-
nodeId,
|
|
518
|
-
activityId: workActId,
|
|
519
|
-
node,
|
|
520
|
-
});
|
|
521
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
522
|
-
}
|
|
523
|
-
if (workAct.status === 'succeeded') {
|
|
524
|
-
const output = snapshot.outputs.get(workActId);
|
|
525
|
-
if (output) {
|
|
526
|
-
actions.push({
|
|
527
|
-
kind: 'completeNodeSucceeded',
|
|
528
|
-
nodeId,
|
|
529
|
-
lastActivityId: workActId,
|
|
530
|
-
outputRef: output,
|
|
531
|
-
});
|
|
532
|
-
return { actions, isSucceeded: true, isFailed: false };
|
|
533
|
-
}
|
|
534
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
535
|
-
}
|
|
536
|
-
if (workAct.status === 'failed' || workAct.status === 'timedOut') {
|
|
537
|
-
const errorClass = workAct.status === 'timedOut' ? 'retryable' : deriveErrorClass(workAct);
|
|
538
|
-
actions.push({
|
|
539
|
-
kind: 'completeNodeFailed',
|
|
540
|
-
nodeId,
|
|
541
|
-
lastActivityId: workActId,
|
|
542
|
-
errorClass,
|
|
543
|
-
});
|
|
544
|
-
return { actions, isSucceeded: false, isFailed: true };
|
|
545
|
-
}
|
|
546
|
-
// running / waiting / acquired / effectAttempting — pending.
|
|
547
|
-
return { actions, isSucceeded: false, isFailed: false };
|
|
548
|
-
}
|
|
549
|
-
/**
|
|
550
|
-
* Build `bodyNodeId → owningLoopId` map for fast carve-out lookups.
|
|
551
|
-
* Mirrors `validateLoopBlocks`'s body collection but built every tick
|
|
552
|
-
* because the orchestrator is a pure function and doesn't carry state.
|
|
553
|
-
*/
|
|
554
|
-
function buildBodyOwnerMap(def) {
|
|
555
|
-
const owner = new Map();
|
|
556
|
-
for (const [id, node] of Object.entries(def.nodes)) {
|
|
557
|
-
if (node.type !== 'loop')
|
|
558
|
-
continue;
|
|
559
|
-
for (const bodyId of node.body)
|
|
560
|
-
owner.set(bodyId, id);
|
|
561
|
-
}
|
|
562
|
-
return owner;
|
|
563
|
-
}
|
|
564
|
-
/**
|
|
565
|
-
* Filter a workflow-level topological order down to body nodes only,
|
|
566
|
-
* preserving the global order. Used to dispatch body nodes inside an
|
|
567
|
-
* active loop iteration in deterministic order.
|
|
568
|
-
*/
|
|
569
|
-
function orderForBody(allOrder, bodySet) {
|
|
570
|
-
return allOrder.filter((id) => bodySet.has(id));
|
|
571
|
-
}
|
|
572
|
-
/**
|
|
573
|
-
* Resolve `loop.output.from` to the OutputRef of the body node's
|
|
574
|
-
* latest successful iteration so `finishLoop` can carry it forward.
|
|
575
|
-
* Returns `undefined` if the loop did not declare `output.from`, or if
|
|
576
|
-
* the body node hasn't produced a succeeded output in `iteration` yet
|
|
577
|
-
* (which shouldn't happen if the terminator already approved — but
|
|
578
|
-
* defensive against partial replay state).
|
|
579
|
-
*/
|
|
580
|
-
function computeLoopOutputRef(snapshot, runId, loopNode, loopId, iteration) {
|
|
581
|
-
const from = loopNode.output?.from;
|
|
582
|
-
if (!from)
|
|
583
|
-
return undefined;
|
|
584
|
-
const bodyWorkActId = loopWorkActivityId(runId, loopId, iteration, from);
|
|
585
|
-
return snapshot.outputs.get(bodyWorkActId);
|
|
586
|
-
}
|
|
587
|
-
// ─── Helpers ─────────────────────────────────────────────────────────────
|
|
588
|
-
function deriveErrorClass(activity) {
|
|
589
|
-
const last = activity.attempts[activity.attempts.length - 1];
|
|
590
|
-
return last?.error?.errorClass ?? 'fatal';
|
|
591
|
-
}
|
|
592
|
-
function findSinks(def) {
|
|
593
|
-
const bodyOwner = buildBodyOwnerMap(def);
|
|
594
|
-
// Only consider top-level (non-body) nodes when computing sinks. Body
|
|
595
|
-
// nodes are dispatched by their owning loop block; the outside view of
|
|
596
|
-
// a loop is "the loop block itself produces output" so body nodes must
|
|
597
|
-
// never count as workflow-level sinks even if no peer depends on them
|
|
598
|
-
// directly. (`reviewDecision` is the canonical example — nothing
|
|
599
|
-
// outside the loop depends on it, but it's structurally internal.)
|
|
600
|
-
const referenced = new Set();
|
|
601
|
-
for (const [id, node] of Object.entries(def.nodes)) {
|
|
602
|
-
if (bodyOwner.has(id))
|
|
603
|
-
continue;
|
|
604
|
-
for (const dep of node.depends ?? [])
|
|
605
|
-
referenced.add(dep);
|
|
606
|
-
}
|
|
607
|
-
return Object.keys(def.nodes).filter((id) => !bodyOwner.has(id) && !referenced.has(id));
|
|
608
|
-
}
|
|
609
|
-
//# sourceMappingURL=orchestrator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/workflows/orchestrator.ts"],"names":[],"mappings":"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"}
|