botmux 3.5.2 → 3.6.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 +56 -396
- package/README.md +55 -396
- package/dist/.runtime-build-id +1 -0
- package/dist/adapters/cli/claude-code.d.ts +6 -0
- package/dist/adapters/cli/claude-code.d.ts.map +1 -1
- package/dist/adapters/cli/claude-code.js +197 -11
- package/dist/adapters/cli/claude-code.js.map +1 -1
- package/dist/adapters/cli/coco.js +4 -4
- package/dist/adapters/cli/coco.js.map +1 -1
- package/dist/adapters/cli/codex-app.d.ts.map +1 -1
- package/dist/adapters/cli/codex-app.js +9 -6
- package/dist/adapters/cli/codex-app.js.map +1 -1
- package/dist/adapters/cli/codex.js +5 -5
- package/dist/adapters/cli/codex.js.map +1 -1
- package/dist/adapters/cli/fs-policy.d.ts.map +1 -1
- package/dist/adapters/cli/fs-policy.js +5 -7
- package/dist/adapters/cli/fs-policy.js.map +1 -1
- package/dist/adapters/cli/grok.d.ts +2 -1
- package/dist/adapters/cli/grok.d.ts.map +1 -1
- package/dist/adapters/cli/grok.js +2 -1
- package/dist/adapters/cli/grok.js.map +1 -1
- package/dist/adapters/cli/hermes.d.ts.map +1 -1
- package/dist/adapters/cli/hermes.js +8 -4
- package/dist/adapters/cli/hermes.js.map +1 -1
- package/dist/adapters/cli/mtr.d.ts.map +1 -1
- package/dist/adapters/cli/mtr.js +3 -2
- package/dist/adapters/cli/mtr.js.map +1 -1
- package/dist/adapters/cli/opencode.d.ts.map +1 -1
- package/dist/adapters/cli/opencode.js +5 -4
- package/dist/adapters/cli/opencode.js.map +1 -1
- package/dist/adapters/cli/relay.js +2 -2
- package/dist/adapters/cli/relay.js.map +1 -1
- package/dist/adapters/cli/runner-input.d.ts +2 -2
- package/dist/adapters/cli/runner-input.d.ts.map +1 -1
- package/dist/adapters/cli/runner-input.js +9 -6
- package/dist/adapters/cli/runner-input.js.map +1 -1
- package/dist/adapters/cli/seed.d.ts.map +1 -1
- package/dist/adapters/cli/seed.js +2 -1
- package/dist/adapters/cli/seed.js.map +1 -1
- package/dist/adapters/cli/traex.d.ts.map +1 -1
- package/dist/adapters/cli/traex.js +3 -2
- package/dist/adapters/cli/traex.js.map +1 -1
- package/dist/adapters/cli/types.d.ts +25 -18
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/bot-registry.d.ts +28 -0
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +75 -0
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +272 -86
- package/dist/cli.js.map +1 -1
- package/dist/codex-app-runner.js +85 -192
- package/dist/codex-app-runner.js.map +1 -1
- package/dist/config.d.ts +0 -16
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -30
- package/dist/config.js.map +1 -1
- package/dist/core/ask-broker.d.ts +12 -0
- package/dist/core/ask-broker.d.ts.map +1 -1
- package/dist/core/ask-broker.js +41 -0
- package/dist/core/ask-broker.js.map +1 -1
- package/dist/core/bot-turn-mutation-gate.d.ts +24 -0
- package/dist/core/bot-turn-mutation-gate.d.ts.map +1 -0
- package/dist/core/bot-turn-mutation-gate.js +369 -0
- package/dist/core/bot-turn-mutation-gate.js.map +1 -0
- package/dist/core/command-handler.d.ts +5 -0
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +38 -16
- package/dist/core/command-handler.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +330 -57
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dashboard-rows.d.ts +8 -0
- package/dist/core/dashboard-rows.d.ts.map +1 -1
- package/dist/core/dashboard-rows.js.map +1 -1
- package/dist/core/host-overload-alert.d.ts +157 -0
- package/dist/core/host-overload-alert.d.ts.map +1 -0
- package/dist/core/host-overload-alert.js +251 -0
- package/dist/core/host-overload-alert.js.map +1 -0
- package/dist/core/passthrough-commands.d.ts +8 -0
- package/dist/core/passthrough-commands.d.ts.map +1 -1
- package/dist/core/passthrough-commands.js +19 -0
- package/dist/core/passthrough-commands.js.map +1 -1
- package/dist/core/restart-coordinator.d.ts +28 -0
- package/dist/core/restart-coordinator.d.ts.map +1 -0
- package/dist/core/restart-coordinator.js +82 -0
- package/dist/core/restart-coordinator.js.map +1 -0
- package/dist/core/restart-followup-policy.d.ts +112 -0
- package/dist/core/restart-followup-policy.d.ts.map +1 -0
- package/dist/core/restart-followup-policy.js +49 -0
- package/dist/core/restart-followup-policy.js.map +1 -0
- package/dist/core/role-library.d.ts +1 -1
- package/dist/core/role-library.js +1 -1
- package/dist/core/session-cwd.d.ts.map +1 -1
- package/dist/core/session-cwd.js +8 -0
- package/dist/core/session-cwd.js.map +1 -1
- package/dist/core/session-discovery.d.ts +14 -0
- package/dist/core/session-discovery.d.ts.map +1 -1
- package/dist/core/session-discovery.js +25 -0
- package/dist/core/session-discovery.js.map +1 -1
- package/dist/core/session-liveness.d.ts +15 -0
- package/dist/core/session-liveness.d.ts.map +1 -0
- package/dist/core/session-liveness.js +76 -0
- package/dist/core/session-liveness.js.map +1 -0
- package/dist/core/session-row-enrichment.d.ts +15 -0
- package/dist/core/session-row-enrichment.d.ts.map +1 -0
- package/dist/core/session-row-enrichment.js +93 -0
- package/dist/core/session-row-enrichment.js.map +1 -0
- package/dist/core/slash-inject.js +1 -1
- package/dist/core/slash-inject.js.map +1 -1
- package/dist/core/trigger-final-suppression.d.ts +24 -0
- package/dist/core/trigger-final-suppression.d.ts.map +1 -0
- package/dist/core/trigger-final-suppression.js +97 -0
- package/dist/core/trigger-final-suppression.js.map +1 -0
- package/dist/core/trigger-session.d.ts.map +1 -1
- package/dist/core/trigger-session.js +64 -4
- package/dist/core/trigger-session.js.map +1 -1
- package/dist/core/types.d.ts +6 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/worker-pool.d.ts +20 -0
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +283 -32
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts +5 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +520 -35
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/aggregator.d.ts +1 -0
- package/dist/dashboard/aggregator.d.ts.map +1 -1
- package/dist/dashboard/aggregator.js +34 -6
- package/dist/dashboard/aggregator.js.map +1 -1
- package/dist/dashboard/bot-payload.d.ts +3 -0
- package/dist/dashboard/bot-payload.d.ts.map +1 -1
- package/dist/dashboard/bot-payload.js +3 -0
- package/dist/dashboard/bot-payload.js.map +1 -1
- package/dist/dashboard/compat.d.ts +102 -2
- package/dist/dashboard/compat.d.ts.map +1 -1
- package/dist/dashboard/compat.js +78 -14
- package/dist/dashboard/compat.js.map +1 -1
- package/dist/dashboard/connector-api.d.ts.map +1 -1
- package/dist/dashboard/connector-api.js +1 -0
- package/dist/dashboard/connector-api.js.map +1 -1
- package/dist/dashboard/desktop-asks.d.ts +21 -0
- package/dist/dashboard/desktop-asks.d.ts.map +1 -0
- package/dist/dashboard/desktop-asks.js +49 -0
- package/dist/dashboard/desktop-asks.js.map +1 -0
- package/dist/dashboard/public-redact.d.ts +7 -0
- package/dist/dashboard/public-redact.d.ts.map +1 -1
- package/dist/dashboard/public-redact.js +35 -3
- package/dist/dashboard/public-redact.js.map +1 -1
- package/dist/dashboard/session-presentation.d.ts +16 -0
- package/dist/dashboard/session-presentation.d.ts.map +1 -0
- package/dist/dashboard/session-presentation.js +62 -0
- package/dist/dashboard/session-presentation.js.map +1 -0
- package/dist/dashboard/settings-write-applier.d.ts +2 -1
- package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
- package/dist/dashboard/settings-write-applier.js +19 -1
- package/dist/dashboard/settings-write-applier.js.map +1 -1
- package/dist/dashboard/trigger-api.d.ts.map +1 -1
- package/dist/dashboard/trigger-api.js +19 -1
- package/dist/dashboard/trigger-api.js.map +1 -1
- package/dist/dashboard/vc-consumer-profiles-api.d.ts +7 -2
- package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -1
- package/dist/dashboard/vc-consumer-profiles-api.js +13 -0
- package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -1
- package/dist/dashboard/web/app.d.ts.map +1 -1
- package/dist/dashboard/web/app.js +18 -5
- package/dist/dashboard/web/app.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +97 -35
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts +3 -0
- package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults.js.map +1 -1
- package/dist/dashboard/web/client-shell.d.ts +29 -0
- package/dist/dashboard/web/client-shell.d.ts.map +1 -0
- package/dist/dashboard/web/client-shell.js +89 -0
- package/dist/dashboard/web/client-shell.js.map +1 -0
- package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
- package/dist/dashboard/web/connectors-page.js +5 -1
- package/dist/dashboard/web/connectors-page.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +100 -8
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/preferences.d.ts +7 -0
- package/dist/dashboard/web/preferences.d.ts.map +1 -1
- package/dist/dashboard/web/preferences.js +32 -0
- package/dist/dashboard/web/preferences.js.map +1 -1
- package/dist/dashboard/web/sessions-kanban.d.ts +1 -1
- package/dist/dashboard/web/sessions-kanban.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-kanban.js +1 -1
- package/dist/dashboard/web/sessions-kanban.js.map +1 -1
- package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-page.js +77 -23
- package/dist/dashboard/web/sessions-page.js.map +1 -1
- package/dist/dashboard/web/sessions.d.ts +4 -0
- package/dist/dashboard/web/sessions.d.ts.map +1 -1
- package/dist/dashboard/web/sessions.js +14 -1
- package/dist/dashboard/web/sessions.js.map +1 -1
- package/dist/dashboard/web/settings-page.d.ts +6 -0
- package/dist/dashboard/web/settings-page.d.ts.map +1 -1
- package/dist/dashboard/web/settings-page.js +55 -30
- package/dist/dashboard/web/settings-page.js.map +1 -1
- package/dist/dashboard/web/store.d.ts +1 -2
- package/dist/dashboard/web/store.d.ts.map +1 -1
- package/dist/dashboard/web/store.js +69 -20
- package/dist/dashboard/web/store.js.map +1 -1
- package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -1
- package/dist/dashboard/web/vc-consumer-profiles-section.js +128 -42
- package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -1
- package/dist/dashboard/webhook-routes.d.ts.map +1 -1
- package/dist/dashboard/webhook-routes.js +9 -2
- 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-VQMPUJ4Y.js +10 -0
- package/dist/dashboard-web/chunks/chunk-AGCPF6MT.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-KPQAUX7V.js → chunk-JMRGZQDB.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-R7IAKAYX.js → chunk-NP4JUBGS.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-NRL6CVAS.js → chunk-P327LXOT.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-X2L65IOM.js → chunk-SNKATZWK.js} +15 -15
- package/dist/dashboard-web/chunks/connectors-page-DOY4J3ZL.js +1 -0
- package/dist/dashboard-web/chunks/{groups-page-6DKXBYOM.js → groups-page-74TS2DIH.js} +1 -1
- package/dist/dashboard-web/chunks/{insights-page-NWARTJ6J.js → insights-page-AYCO65JC.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-AGX3XRJX.js → monitor-room-YKYLTSAN.js} +1 -1
- package/dist/dashboard-web/chunks/{monitoring-page-GGGIWN4C.js → monitoring-page-QBIUNRBR.js} +1 -1
- package/dist/dashboard-web/chunks/{office-page-6SIVKSK3.js → office-page-4PH2A26P.js} +1 -1
- package/dist/dashboard-web/chunks/overview-page-H73D5UT4.js +1 -0
- package/dist/dashboard-web/chunks/{roles-page-WE2YB7KN.js → roles-page-U4BTOQ7F.js} +1 -1
- package/dist/dashboard-web/chunks/{schedules-page-TB3I24XN.js → schedules-page-RHRHX7R7.js} +1 -1
- package/dist/dashboard-web/chunks/sessions-page-VSC6AM5G.js +2 -0
- package/dist/dashboard-web/chunks/settings-page-LF3RKM5P.js +2 -0
- package/dist/dashboard-web/chunks/{skills-page-3QAT2IWD.js → skills-page-SYOIGGXH.js} +1 -1
- package/dist/dashboard-web/chunks/{team-federation-page-K4VVAVAK.js → team-federation-page-RMBLASTW.js} +1 -1
- package/dist/dashboard-web/chunks/{v3-page-V6IOJR2B.js → v3-page-XJXKKJRN.js} +1 -1
- package/dist/dashboard-web/chunks/{whiteboards-page-V6CGKRNX.js → whiteboards-page-K3YVSTHJ.js} +1 -1
- package/dist/dashboard-web/style.css +551 -0
- package/dist/dashboard.js +153 -9
- package/dist/dashboard.js.map +1 -1
- package/dist/global-config.d.ts +11 -0
- package/dist/global-config.d.ts.map +1 -1
- package/dist/global-config.js +23 -0
- package/dist/global-config.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +5 -0
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +5 -0
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/card-builder.d.ts +1 -1
- package/dist/im/lark/card-builder.js +1 -1
- package/dist/im/lark/card-handler.d.ts +10 -0
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +163 -17
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/client.d.ts +11 -0
- package/dist/im/lark/client.d.ts.map +1 -1
- package/dist/im/lark/client.js +47 -18
- package/dist/im/lark/client.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +13 -0
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +20 -0
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/im/lark/identity-cache.d.ts +25 -1
- package/dist/im/lark/identity-cache.d.ts.map +1 -1
- package/dist/im/lark/identity-cache.js +47 -1
- package/dist/im/lark/identity-cache.js.map +1 -1
- package/dist/im/lark/overload-nonce.d.ts +19 -0
- package/dist/im/lark/overload-nonce.d.ts.map +1 -0
- package/dist/im/lark/overload-nonce.js +72 -0
- package/dist/im/lark/overload-nonce.js.map +1 -0
- package/dist/im/lark/v3-progress-card.d.ts.map +1 -1
- package/dist/im/lark/v3-progress-card.js +5 -0
- package/dist/im/lark/v3-progress-card.js.map +1 -1
- package/dist/services/async-trigger-state.d.ts +82 -0
- package/dist/services/async-trigger-state.d.ts.map +1 -0
- package/dist/services/async-trigger-state.js +95 -0
- package/dist/services/async-trigger-state.js.map +1 -0
- package/dist/services/async-trigger-store.d.ts +28 -0
- package/dist/services/async-trigger-store.d.ts.map +1 -0
- package/dist/services/async-trigger-store.js +120 -0
- package/dist/services/async-trigger-store.js.map +1 -0
- package/dist/services/bot-config-store.d.ts.map +1 -1
- package/dist/services/bot-config-store.js +34 -2
- package/dist/services/bot-config-store.js.map +1 -1
- package/dist/services/bridge-fallback-gate.d.ts +32 -0
- package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
- package/dist/services/bridge-fallback-gate.js +39 -0
- package/dist/services/bridge-fallback-gate.js.map +1 -1
- package/dist/services/bridge-turn-queue.d.ts.map +1 -1
- package/dist/services/bridge-turn-queue.js +15 -1
- package/dist/services/bridge-turn-queue.js.map +1 -1
- package/dist/services/card-prefs-store.d.ts +4 -0
- package/dist/services/card-prefs-store.d.ts.map +1 -1
- package/dist/services/card-prefs-store.js +8 -0
- package/dist/services/card-prefs-store.js.map +1 -1
- package/dist/services/claude-transcript.d.ts +23 -0
- package/dist/services/claude-transcript.d.ts.map +1 -1
- package/dist/services/claude-transcript.js +33 -0
- package/dist/services/claude-transcript.js.map +1 -1
- package/dist/services/codex-app-runner-protocol.d.ts +61 -0
- package/dist/services/codex-app-runner-protocol.d.ts.map +1 -0
- package/dist/services/codex-app-runner-protocol.js +170 -0
- package/dist/services/codex-app-runner-protocol.js.map +1 -0
- package/dist/services/codex-app-turn-controller.d.ts +72 -0
- package/dist/services/codex-app-turn-controller.d.ts.map +1 -0
- package/dist/services/codex-app-turn-controller.js +524 -0
- package/dist/services/codex-app-turn-controller.js.map +1 -0
- package/dist/services/codex-runner-freshness.d.ts +39 -0
- package/dist/services/codex-runner-freshness.d.ts.map +1 -0
- package/dist/services/codex-runner-freshness.js +78 -0
- package/dist/services/codex-runner-freshness.js.map +1 -0
- package/dist/services/connector-store.d.ts +6 -0
- package/dist/services/connector-store.d.ts.map +1 -1
- package/dist/services/connector-store.js.map +1 -1
- package/dist/services/grant-store.d.ts.map +1 -1
- package/dist/services/grant-store.js +16 -0
- package/dist/services/grant-store.js.map +1 -1
- package/dist/services/hermes-transcript.d.ts +1 -0
- package/dist/services/hermes-transcript.d.ts.map +1 -1
- package/dist/services/hermes-transcript.js +49 -0
- package/dist/services/hermes-transcript.js.map +1 -1
- package/dist/services/schedule-split-migration.d.ts +2 -0
- package/dist/services/schedule-split-migration.d.ts.map +1 -0
- package/dist/services/schedule-split-migration.js +159 -0
- package/dist/services/schedule-split-migration.js.map +1 -0
- package/dist/services/schedule-store.d.ts +28 -4
- package/dist/services/schedule-store.d.ts.map +1 -1
- package/dist/services/schedule-store.js +118 -33
- package/dist/services/schedule-store.js.map +1 -1
- package/dist/services/trigger-types.d.ts +18 -1
- package/dist/services/trigger-types.d.ts.map +1 -1
- package/dist/services/trigger-types.js +3 -0
- package/dist/services/trigger-types.js.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-store.js +1 -0
- package/dist/services/vc-meeting-consumer-profile-store.js.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-templates.d.ts +32 -0
- package/dist/services/vc-meeting-consumer-profile-templates.d.ts.map +1 -0
- package/dist/services/vc-meeting-consumer-profile-templates.js +106 -0
- package/dist/services/vc-meeting-consumer-profile-templates.js.map +1 -0
- package/dist/services/vc-meeting-delivery-feed.d.ts +1 -1
- package/dist/services/vc-meeting-delivery-feed.d.ts.map +1 -1
- package/dist/services/vc-meeting-delivery-feed.js +2 -1
- package/dist/services/vc-meeting-delivery-feed.js.map +1 -1
- package/dist/services/vc-meeting-delivery-hub-store.d.ts +3 -1
- package/dist/services/vc-meeting-delivery-hub-store.d.ts.map +1 -1
- package/dist/services/vc-meeting-delivery-hub-store.js +11 -0
- package/dist/services/vc-meeting-delivery-hub-store.js.map +1 -1
- package/dist/services/vc-meeting-delivery-protocol.d.ts +9 -2
- package/dist/services/vc-meeting-delivery-protocol.d.ts.map +1 -1
- package/dist/services/vc-meeting-delivery-protocol.js +10 -1
- package/dist/services/vc-meeting-delivery-protocol.js.map +1 -1
- package/dist/services/vc-meeting-delivery-receiver.d.ts.map +1 -1
- package/dist/services/vc-meeting-delivery-receiver.js +10 -1
- package/dist/services/vc-meeting-delivery-receiver.js.map +1 -1
- package/dist/services/vc-meeting-delivery-store.d.ts +12 -2
- package/dist/services/vc-meeting-delivery-store.d.ts.map +1 -1
- package/dist/services/vc-meeting-delivery-store.js +14 -2
- package/dist/services/vc-meeting-delivery-store.js.map +1 -1
- package/dist/services/vc-meeting-im-reply.d.ts +2 -1
- package/dist/services/vc-meeting-im-reply.d.ts.map +1 -1
- package/dist/services/vc-meeting-im-reply.js +19 -3
- package/dist/services/vc-meeting-im-reply.js.map +1 -1
- package/dist/services/vc-meeting-listener-output-protocol.d.ts +27 -0
- package/dist/services/vc-meeting-listener-output-protocol.d.ts.map +1 -0
- package/dist/services/vc-meeting-listener-output-protocol.js +58 -0
- package/dist/services/vc-meeting-listener-output-protocol.js.map +1 -0
- package/dist/services/vc-meeting-listener-topic-store.d.ts +31 -0
- package/dist/services/vc-meeting-listener-topic-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-listener-topic-store.js +120 -0
- package/dist/services/vc-meeting-listener-topic-store.js.map +1 -0
- package/dist/services/vc-meeting-runtime-store.d.ts +2 -1
- package/dist/services/vc-meeting-runtime-store.d.ts.map +1 -1
- package/dist/services/vc-meeting-runtime-store.js +8 -0
- package/dist/services/vc-meeting-runtime-store.js.map +1 -1
- package/dist/services/vc-meeting-send-policy.d.ts +8 -1
- package/dist/services/vc-meeting-send-policy.d.ts.map +1 -1
- package/dist/services/vc-meeting-send-policy.js +8 -0
- package/dist/services/vc-meeting-send-policy.js.map +1 -1
- package/dist/types.d.ts +40 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/allowed-users-apply.d.ts +76 -0
- package/dist/utils/allowed-users-apply.d.ts.map +1 -0
- package/dist/utils/allowed-users-apply.js +123 -0
- package/dist/utils/allowed-users-apply.js.map +1 -0
- package/dist/utils/allowed-users-cache.d.ts +29 -0
- package/dist/utils/allowed-users-cache.d.ts.map +1 -0
- package/dist/utils/allowed-users-cache.js +82 -0
- package/dist/utils/allowed-users-cache.js.map +1 -0
- package/dist/utils/child-env.d.ts +2 -1
- package/dist/utils/child-env.d.ts.map +1 -1
- package/dist/utils/child-env.js +2 -1
- package/dist/utils/child-env.js.map +1 -1
- package/dist/utils/cli-usage-limit.d.ts +27 -1
- package/dist/utils/cli-usage-limit.d.ts.map +1 -1
- package/dist/utils/cli-usage-limit.js +92 -20
- package/dist/utils/cli-usage-limit.js.map +1 -1
- package/dist/utils/input-gate.d.ts +2 -0
- package/dist/utils/input-gate.d.ts.map +1 -1
- package/dist/utils/input-gate.js +2 -0
- package/dist/utils/input-gate.js.map +1 -1
- package/dist/utils/runtime-build-id.d.ts +21 -0
- package/dist/utils/runtime-build-id.d.ts.map +1 -0
- package/dist/utils/runtime-build-id.js +83 -0
- package/dist/utils/runtime-build-id.js.map +1 -0
- package/dist/utils/terminal-renderer.d.ts +3 -3
- package/dist/utils/terminal-renderer.js +3 -3
- package/dist/vc-agent/cards.d.ts.map +1 -1
- package/dist/vc-agent/cards.js +21 -1
- package/dist/vc-agent/cards.js.map +1 -1
- package/dist/worker.js +601 -179
- package/dist/worker.js.map +1 -1
- package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +1 -1
- package/dist/workflows/hostExecutors/botmux-schedule.js +13 -1
- package/dist/workflows/hostExecutors/botmux-schedule.js.map +1 -1
- package/dist/workflows/migration/v2-run-archive-schema.d.ts +20 -20
- package/dist/workflows/migration/v2-to-v3.d.ts.map +1 -1
- package/dist/workflows/migration/v2-to-v3.js +5 -1
- package/dist/workflows/migration/v2-to-v3.js.map +1 -1
- package/dist/workflows/v3/architect.d.ts.map +1 -1
- package/dist/workflows/v3/architect.js +1 -0
- package/dist/workflows/v3/architect.js.map +1 -1
- package/dist/workflows/v3/cli-run.d.ts +9 -0
- package/dist/workflows/v3/cli-run.d.ts.map +1 -1
- package/dist/workflows/v3/cli-run.js +17 -2
- package/dist/workflows/v3/cli-run.js.map +1 -1
- package/dist/workflows/v3/goal-cli.d.ts +58 -0
- package/dist/workflows/v3/goal-cli.d.ts.map +1 -0
- package/dist/workflows/v3/goal-cli.js +430 -0
- package/dist/workflows/v3/goal-cli.js.map +1 -0
- package/dist/workflows/v3/library-materialize.d.ts.map +1 -1
- package/dist/workflows/v3/library-materialize.js +5 -1
- package/dist/workflows/v3/library-materialize.js.map +1 -1
- package/dist/workflows/v3/library-schema.d.ts +21 -0
- package/dist/workflows/v3/library-schema.d.ts.map +1 -1
- package/dist/workflows/v3/library-schema.js +95 -1
- package/dist/workflows/v3/library-schema.js.map +1 -1
- package/dist/workflows/v3/progress-projection.d.ts +3 -0
- package/dist/workflows/v3/progress-projection.d.ts.map +1 -1
- package/dist/workflows/v3/progress-projection.js +23 -1
- package/dist/workflows/v3/progress-projection.js.map +1 -1
- package/dist/workflows/v3/run-envelope.d.ts +46 -1
- package/dist/workflows/v3/run-envelope.d.ts.map +1 -1
- package/dist/workflows/v3/run-envelope.js +32 -1
- package/dist/workflows/v3/run-envelope.js.map +1 -1
- package/package.json +2 -2
- package/dist/dashboard-web/chunks/bot-defaults-page-AUKV7P4L.js +0 -10
- package/dist/dashboard-web/chunks/chunk-SZOB6VK2.js +0 -1
- package/dist/dashboard-web/chunks/connectors-page-HDQFEXZI.js +0 -1
- package/dist/dashboard-web/chunks/overview-page-FVR3NKAF.js +0 -1
- package/dist/dashboard-web/chunks/sessions-page-KOOOASIL.js +0 -2
- package/dist/dashboard-web/chunks/settings-page-IEBR7TGN.js +0 -2
- package/dist/utils/screen-analyzer.d.ts +0 -75
- package/dist/utils/screen-analyzer.d.ts.map +0 -1
- package/dist/utils/screen-analyzer.js +0 -333
- package/dist/utils/screen-analyzer.js.map +0 -1
package/dist/core/ask-broker.js
CHANGED
|
@@ -381,6 +381,47 @@ export function getAskSnapshot(askId) {
|
|
|
381
381
|
const a = pending.get(askId);
|
|
382
382
|
return a ? snapshot(a) : undefined;
|
|
383
383
|
}
|
|
384
|
+
/** List unsettled asks for Desktop / dashboard aggregation (read-only snapshots). */
|
|
385
|
+
export function listPendingAsks() {
|
|
386
|
+
gcSettled();
|
|
387
|
+
const out = [];
|
|
388
|
+
for (const ask of pending.values()) {
|
|
389
|
+
if (!ask.settled)
|
|
390
|
+
out.push(snapshot(ask));
|
|
391
|
+
}
|
|
392
|
+
return out;
|
|
393
|
+
}
|
|
394
|
+
/**
|
|
395
|
+
* Desktop / trusted-host answer path. Bypasses canTalk (no Feishu openId) —
|
|
396
|
+
* caller must be authenticated as the local dashboard/desktop operator.
|
|
397
|
+
*/
|
|
398
|
+
export function submitAskFromDesktop(args) {
|
|
399
|
+
gcSettled();
|
|
400
|
+
const ask = pending.get(args.askId);
|
|
401
|
+
if (!ask)
|
|
402
|
+
return 'stale';
|
|
403
|
+
if (ask.settled)
|
|
404
|
+
return 'already_settled';
|
|
405
|
+
const answers = args.selections;
|
|
406
|
+
for (let i = 0; i < ask.questions.length; i++) {
|
|
407
|
+
const q = ask.questions[i];
|
|
408
|
+
const sel = answers[i] ?? [];
|
|
409
|
+
if (!q.multiSelect && sel.length !== 1)
|
|
410
|
+
return 'stale';
|
|
411
|
+
for (const key of sel) {
|
|
412
|
+
if (!q.options.some((o) => o.key === key))
|
|
413
|
+
return 'stale';
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
settle(args.askId, {
|
|
417
|
+
kind: 'answered',
|
|
418
|
+
answers,
|
|
419
|
+
by: args.by ?? 'desktop',
|
|
420
|
+
comment: null,
|
|
421
|
+
timedOut: false,
|
|
422
|
+
});
|
|
423
|
+
return 'accepted';
|
|
424
|
+
}
|
|
384
425
|
/** Read a pending ask by id — for tests only. Returns a snapshot; mutating it
|
|
385
426
|
* has no effect on broker state. */
|
|
386
427
|
export function _getPending(askId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-broker.js","sourceRoot":"","sources":["../../src/core/ask-broker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ask-broker.js","sourceRoot":"","sources":["../../src/core/ask-broker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare function withBotTurnAdmission<T>(larkAppId: string, action: () => Promise<T> | T): Promise<T>;
|
|
2
|
+
export declare function withBotTurnMutation<T>(larkAppId: string, action: () => Promise<T> | T): Promise<T>;
|
|
3
|
+
export type BoundedBotTurnMutationResult<T> = {
|
|
4
|
+
acquired: true;
|
|
5
|
+
value: T;
|
|
6
|
+
} | {
|
|
7
|
+
acquired: false;
|
|
8
|
+
reason: 'timeout' | 'upgrade_conflict';
|
|
9
|
+
};
|
|
10
|
+
export declare function tryWithBotTurnMutation<T>(larkAppId: string, acquireTimeoutMs: number, action: () => Promise<T> | T): Promise<BoundedBotTurnMutationResult<T>>;
|
|
11
|
+
/**
|
|
12
|
+
* Start an independent admission branch from fire-and-forget code. Normal
|
|
13
|
+
* same-bot nesting is intentionally reentrant and MUST be awaited by its
|
|
14
|
+
* caller; JavaScript cannot infer whether a returned Promise was floated.
|
|
15
|
+
* Detached callers clear both contexts and acquire a fresh counted root lease.
|
|
16
|
+
*/
|
|
17
|
+
export declare function runDetachedBotTurnAdmission<T>(larkAppId: string, action: () => Promise<T> | T): Promise<T>;
|
|
18
|
+
/** Fire-and-forget counterpart for exclusive lifecycle mutations. A detached
|
|
19
|
+
* mutation inside an admission waits for that admission to drain; one inside a
|
|
20
|
+
* mutation waits for the parent mutation to reopen the gate. Do not await this
|
|
21
|
+
* helper from the parent scope whose lease it must wait on. */
|
|
22
|
+
export declare function runDetachedBotTurnMutation<T>(larkAppId: string, action: () => Promise<T> | T): Promise<T>;
|
|
23
|
+
export declare function __testOnly_resetBotTurnMutationGates(): void;
|
|
24
|
+
//# sourceMappingURL=bot-turn-mutation-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bot-turn-mutation-gate.d.ts","sourceRoot":"","sources":["../../src/core/bot-turn-mutation-gate.ts"],"names":[],"mappings":"AA2KA,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3B,OAAO,CAAC,CAAC,CAAC,CA6CZ;AAoDD,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3B,OAAO,CAAC,CAAC,CAAC,CAiBZ;AAED,MAAM,MAAM,4BAA4B,CAAC,CAAC,IACtC;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAC5B;IAAE,QAAQ,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,CAAA;CAAE,CAAC;AAgFhE,wBAAsB,sBAAsB,CAAC,CAAC,EAC5C,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3B,OAAO,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CA4C1C;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,EAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3B,OAAO,CAAC,CAAC,CAAC,CAGZ;AAED;;;+DAG+D;AAC/D,wBAAgB,0BAA0B,CAAC,CAAC,EAC1C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAC3B,OAAO,CAAC,CAAC,CAAC,CAGZ;AAED,wBAAgB,oCAAoC,IAAI,IAAI,CAE3D"}
|
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-bot admission/drain gate for mutations that replace every live worker
|
|
3
|
+
* generation (currently read-isolation). JavaScript's single thread makes the
|
|
4
|
+
* check+increment and close+publish edges atomic, while the waiters cover all
|
|
5
|
+
* intervening awaits in inbound/HTTP turn preparation.
|
|
6
|
+
*/
|
|
7
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
8
|
+
const gates = new Map();
|
|
9
|
+
const admissionContext = new AsyncLocalStorage();
|
|
10
|
+
const mutationContext = new AsyncLocalStorage();
|
|
11
|
+
function stateFor(larkAppId) {
|
|
12
|
+
let state = gates.get(larkAppId);
|
|
13
|
+
if (!state) {
|
|
14
|
+
state = { activeAdmissions: 0, mutating: false, openWaiters: [], drainWaiters: [] };
|
|
15
|
+
gates.set(larkAppId, state);
|
|
16
|
+
}
|
|
17
|
+
return state;
|
|
18
|
+
}
|
|
19
|
+
function waitUntilOpen(state) {
|
|
20
|
+
return state.mutating
|
|
21
|
+
? new Promise(resolve => state.openWaiters.push({ wake: resolve }))
|
|
22
|
+
: Promise.resolve();
|
|
23
|
+
}
|
|
24
|
+
function waitUntilDrained(state) {
|
|
25
|
+
return state.activeAdmissions > 0
|
|
26
|
+
? new Promise(resolve => state.drainWaiters.push({ wake: resolve }))
|
|
27
|
+
: Promise.resolve();
|
|
28
|
+
}
|
|
29
|
+
function wakeAll(waiters) {
|
|
30
|
+
const pending = waiters.splice(0);
|
|
31
|
+
for (const waiter of pending)
|
|
32
|
+
waiter.wake();
|
|
33
|
+
}
|
|
34
|
+
function shouldQueueAdmissionUpgrade(lease) {
|
|
35
|
+
return lease !== undefined
|
|
36
|
+
&& !lease.ownerFinished
|
|
37
|
+
&& (lease.active || lease.pendingUpgrades > 0);
|
|
38
|
+
}
|
|
39
|
+
/** Serialize mutations that inherit the same admission lease. The first
|
|
40
|
+
* caller keeps the original synchronous close edge; later callers wait on the
|
|
41
|
+
* lease-local queue instead of snapshotting `active=false` and becoming an
|
|
42
|
+
* unrelated mutation that would wait for its own outer admission forever. */
|
|
43
|
+
function acquireAdmissionUpgrade(lease) {
|
|
44
|
+
lease.pendingUpgrades++;
|
|
45
|
+
if (!lease.upgradeLocked) {
|
|
46
|
+
lease.upgradeLocked = true;
|
|
47
|
+
return undefined;
|
|
48
|
+
}
|
|
49
|
+
return new Promise(resolve => lease.upgradeWaiters.push({ wake: resolve }));
|
|
50
|
+
}
|
|
51
|
+
function releaseAdmissionUpgrade(lease) {
|
|
52
|
+
lease.pendingUpgrades--;
|
|
53
|
+
const next = lease.upgradeWaiters.shift();
|
|
54
|
+
if (next) {
|
|
55
|
+
// Ownership transfers directly to the next queued mutation. Keep the lock
|
|
56
|
+
// set until that caller releases it, so sibling actions cannot overlap.
|
|
57
|
+
next.wake();
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
lease.upgradeLocked = false;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/** Deadline-aware admission-upgrade queue acquisition. A waiter that times
|
|
64
|
+
* out before ownership transfer is removed from the exact lease-local queue.
|
|
65
|
+
* If transfer wins the race at an already-expired wall clock, the caller owns
|
|
66
|
+
* the slot only long enough to release it; its mutation action never runs. */
|
|
67
|
+
function acquireAdmissionUpgradeBefore(lease, deadlineMs) {
|
|
68
|
+
const remaining = deadlineMs - Date.now();
|
|
69
|
+
if (remaining <= 0)
|
|
70
|
+
return { status: 'timed_out' };
|
|
71
|
+
lease.pendingUpgrades++;
|
|
72
|
+
if (!lease.upgradeLocked) {
|
|
73
|
+
lease.upgradeLocked = true;
|
|
74
|
+
return { status: 'acquired' };
|
|
75
|
+
}
|
|
76
|
+
const result = new Promise(resolve => {
|
|
77
|
+
let settled = false;
|
|
78
|
+
let timer;
|
|
79
|
+
const waiter = {
|
|
80
|
+
wake: () => {
|
|
81
|
+
if (settled)
|
|
82
|
+
return;
|
|
83
|
+
settled = true;
|
|
84
|
+
clearTimeout(timer);
|
|
85
|
+
resolve(Date.now() < deadlineMs ? 'acquired' : 'expired_owner');
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
lease.upgradeWaiters.push(waiter);
|
|
89
|
+
timer = setTimeout(() => {
|
|
90
|
+
if (settled)
|
|
91
|
+
return;
|
|
92
|
+
settled = true;
|
|
93
|
+
const index = lease.upgradeWaiters.indexOf(waiter);
|
|
94
|
+
if (index >= 0) {
|
|
95
|
+
lease.upgradeWaiters.splice(index, 1);
|
|
96
|
+
lease.pendingUpgrades--;
|
|
97
|
+
resolve('timed_out');
|
|
98
|
+
}
|
|
99
|
+
}, remaining);
|
|
100
|
+
});
|
|
101
|
+
return { status: 'queued', result };
|
|
102
|
+
}
|
|
103
|
+
/** Cancellable condition wait used only by bounded acquisition. Timeout
|
|
104
|
+
* removes the exact waiter, so it cannot resume later and run a stale shutdown
|
|
105
|
+
* after its caller already reported refusal. */
|
|
106
|
+
function waitUntilBefore(waiters, ready, deadlineMs) {
|
|
107
|
+
if (Date.now() >= deadlineMs)
|
|
108
|
+
return Promise.resolve(false);
|
|
109
|
+
if (ready())
|
|
110
|
+
return Promise.resolve(true);
|
|
111
|
+
const remaining = deadlineMs - Date.now();
|
|
112
|
+
if (remaining <= 0)
|
|
113
|
+
return Promise.resolve(false);
|
|
114
|
+
return new Promise(resolve => {
|
|
115
|
+
let settled = false;
|
|
116
|
+
let timer;
|
|
117
|
+
const waiter = {
|
|
118
|
+
wake: () => {
|
|
119
|
+
if (settled)
|
|
120
|
+
return;
|
|
121
|
+
settled = true;
|
|
122
|
+
clearTimeout(timer);
|
|
123
|
+
resolve(Date.now() < deadlineMs);
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
waiters.push(waiter);
|
|
127
|
+
timer = setTimeout(() => {
|
|
128
|
+
if (settled)
|
|
129
|
+
return;
|
|
130
|
+
settled = true;
|
|
131
|
+
const index = waiters.indexOf(waiter);
|
|
132
|
+
if (index >= 0)
|
|
133
|
+
waiters.splice(index, 1);
|
|
134
|
+
resolve(false);
|
|
135
|
+
}, remaining);
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
export async function withBotTurnAdmission(larkAppId, action) {
|
|
139
|
+
// A mutation already owns the bot exclusively. Re-entering an admission
|
|
140
|
+
// boundary from that mutation must not wait for the gate it owns.
|
|
141
|
+
const inheritedMutation = mutationContext.getStore()?.get(larkAppId);
|
|
142
|
+
if (inheritedMutation?.active)
|
|
143
|
+
return action();
|
|
144
|
+
const inherited = admissionContext.getStore();
|
|
145
|
+
// Some admitted event paths delegate to triggerSessionTurn, which is also a
|
|
146
|
+
// public admission boundary. Treat that nested call as part of the outer
|
|
147
|
+
// lease; otherwise a mutation that closed the gate while the outer handler
|
|
148
|
+
// awaited would make the handler wait on itself and deadlock the drain.
|
|
149
|
+
const inheritedLease = inherited?.get(larkAppId);
|
|
150
|
+
if (inheritedLease?.active)
|
|
151
|
+
return action();
|
|
152
|
+
const state = stateFor(larkAppId);
|
|
153
|
+
// A mutation may finish and another queued mutation may close the gate again
|
|
154
|
+
// before this continuation runs, so re-check after every wake.
|
|
155
|
+
while (state.mutating)
|
|
156
|
+
await waitUntilOpen(state);
|
|
157
|
+
state.activeAdmissions++;
|
|
158
|
+
const lease = {
|
|
159
|
+
active: true,
|
|
160
|
+
ownerFinished: false,
|
|
161
|
+
pendingUpgrades: 0,
|
|
162
|
+
upgradeLocked: false,
|
|
163
|
+
upgradeWaiters: [],
|
|
164
|
+
};
|
|
165
|
+
try {
|
|
166
|
+
const next = new Map(inherited ?? []);
|
|
167
|
+
next.set(larkAppId, lease);
|
|
168
|
+
return await admissionContext.run(next, action);
|
|
169
|
+
}
|
|
170
|
+
finally {
|
|
171
|
+
// AsyncLocalStorage descendants can outlive the awaited action when code
|
|
172
|
+
// starts fire-and-forget work. They retain this object, so revoke it before
|
|
173
|
+
// decrementing the drain count; a detached continuation must acquire a new
|
|
174
|
+
// admission instead of impersonating a still-live nested call.
|
|
175
|
+
// An admitted handler may upgrade itself to a mutation. The upgrade
|
|
176
|
+
// temporarily releases and later reacquires this exact lease; only the
|
|
177
|
+
// still-active owner decrements it here.
|
|
178
|
+
lease.ownerFinished = true;
|
|
179
|
+
if (lease.active) {
|
|
180
|
+
lease.active = false;
|
|
181
|
+
state.activeAdmissions--;
|
|
182
|
+
if (state.activeAdmissions === 0) {
|
|
183
|
+
wakeAll(state.drainWaiters);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
async function runBotTurnMutation(larkAppId, state, inheritedAdmission, action) {
|
|
189
|
+
// Explicit abandon actions are discovered inside already-admitted message
|
|
190
|
+
// and card handlers. Upgrade that admission instead of nesting and
|
|
191
|
+
// deadlocking: release only this handler's lease, drain every other turn,
|
|
192
|
+
// perform the mutation, then atomically reacquire the outer lease before the
|
|
193
|
+
// gate is reopened. The caller may safely finish delivery/logging under its
|
|
194
|
+
// original admission after the exclusive state change.
|
|
195
|
+
const upgrading = inheritedAdmission?.active === true;
|
|
196
|
+
if (upgrading) {
|
|
197
|
+
inheritedAdmission.active = false;
|
|
198
|
+
state.activeAdmissions--;
|
|
199
|
+
if (state.activeAdmissions === 0) {
|
|
200
|
+
wakeAll(state.drainWaiters);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
while (state.mutating)
|
|
204
|
+
await waitUntilOpen(state);
|
|
205
|
+
state.mutating = true;
|
|
206
|
+
await waitUntilDrained(state);
|
|
207
|
+
const mutationLease = { active: true };
|
|
208
|
+
try {
|
|
209
|
+
const next = new Map(mutationContext.getStore() ?? []);
|
|
210
|
+
next.set(larkAppId, mutationLease);
|
|
211
|
+
return await mutationContext.run(next, action);
|
|
212
|
+
}
|
|
213
|
+
finally {
|
|
214
|
+
// Detached descendants retain the AsyncLocalStorage map. Revoke the
|
|
215
|
+
// mutable lease before reopening the gate so they cannot impersonate the
|
|
216
|
+
// completed mutation later.
|
|
217
|
+
mutationLease.active = false;
|
|
218
|
+
// Reacquire before waking queued admissions/mutations. This keeps the
|
|
219
|
+
// remainder of an upgraded outer handler inside the admission lifetime and
|
|
220
|
+
// prevents its finally block from double-decrementing the gate.
|
|
221
|
+
if (upgrading && !inheritedAdmission.ownerFinished) {
|
|
222
|
+
state.activeAdmissions++;
|
|
223
|
+
inheritedAdmission.active = true;
|
|
224
|
+
}
|
|
225
|
+
state.mutating = false;
|
|
226
|
+
wakeAll(state.openWaiters);
|
|
227
|
+
// Keep the state object stable. Resolved admission waiters resume in later
|
|
228
|
+
// promise jobs and still hold this object; deleting it here would let a new
|
|
229
|
+
// caller create a second gate and bypass those about-to-reacquire waiters.
|
|
230
|
+
// The key space is bounded by configured bot ids.
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
export async function withBotTurnMutation(larkAppId, action) {
|
|
234
|
+
const inheritedMutation = mutationContext.getStore()?.get(larkAppId);
|
|
235
|
+
if (inheritedMutation?.active)
|
|
236
|
+
return action();
|
|
237
|
+
const state = stateFor(larkAppId);
|
|
238
|
+
const inheritedAdmission = admissionContext.getStore()?.get(larkAppId);
|
|
239
|
+
if (shouldQueueAdmissionUpgrade(inheritedAdmission)) {
|
|
240
|
+
const waiting = acquireAdmissionUpgrade(inheritedAdmission);
|
|
241
|
+
if (waiting)
|
|
242
|
+
await waiting;
|
|
243
|
+
try {
|
|
244
|
+
return await runBotTurnMutation(larkAppId, state, inheritedAdmission, action);
|
|
245
|
+
}
|
|
246
|
+
finally {
|
|
247
|
+
releaseAdmissionUpgrade(inheritedAdmission);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
return runBotTurnMutation(larkAppId, state, inheritedAdmission, action);
|
|
251
|
+
}
|
|
252
|
+
/** Acquire one exact mutation lease within a single absolute deadline.
|
|
253
|
+
*
|
|
254
|
+
* Unlike Promise.race around `withBotTurnMutation`, this removes a timed-out
|
|
255
|
+
* waiter and rolls back a gate already closed while admissions were draining.
|
|
256
|
+
* Therefore `action` can never run after `{ acquired:false }` was returned.
|
|
257
|
+
*
|
|
258
|
+
* A same-bot admission may upgrade only when no other mutation already owns
|
|
259
|
+
* the gate. Returning `upgrade_conflict` leaves that admission untouched; this
|
|
260
|
+
* keeps the bounded path safe without resuming an admission concurrently with
|
|
261
|
+
* a mutation it had temporarily released for. */
|
|
262
|
+
async function runBoundedBotTurnMutation(larkAppId, state, inheritedAdmission, deadlineMs, action) {
|
|
263
|
+
const upgrading = inheritedAdmission?.active === true;
|
|
264
|
+
if (upgrading && state.mutating) {
|
|
265
|
+
return { acquired: false, reason: 'upgrade_conflict' };
|
|
266
|
+
}
|
|
267
|
+
if (upgrading) {
|
|
268
|
+
inheritedAdmission.active = false;
|
|
269
|
+
state.activeAdmissions--;
|
|
270
|
+
if (state.activeAdmissions === 0)
|
|
271
|
+
wakeAll(state.drainWaiters);
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
while (state.mutating) {
|
|
275
|
+
if (!await waitUntilBefore(state.openWaiters, () => !state.mutating, deadlineMs)) {
|
|
276
|
+
return { acquired: false, reason: 'timeout' };
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
if (Date.now() >= deadlineMs) {
|
|
281
|
+
if (upgrading && !inheritedAdmission.ownerFinished) {
|
|
282
|
+
state.activeAdmissions++;
|
|
283
|
+
inheritedAdmission.active = true;
|
|
284
|
+
}
|
|
285
|
+
return { acquired: false, reason: 'timeout' };
|
|
286
|
+
}
|
|
287
|
+
state.mutating = true;
|
|
288
|
+
const drained = await waitUntilBefore(state.drainWaiters, () => state.activeAdmissions === 0, deadlineMs);
|
|
289
|
+
if (!drained || Date.now() >= deadlineMs) {
|
|
290
|
+
if (upgrading && !inheritedAdmission.ownerFinished) {
|
|
291
|
+
state.activeAdmissions++;
|
|
292
|
+
inheritedAdmission.active = true;
|
|
293
|
+
}
|
|
294
|
+
state.mutating = false;
|
|
295
|
+
wakeAll(state.openWaiters);
|
|
296
|
+
return { acquired: false, reason: 'timeout' };
|
|
297
|
+
}
|
|
298
|
+
const mutationLease = { active: true };
|
|
299
|
+
try {
|
|
300
|
+
const next = new Map(mutationContext.getStore() ?? []);
|
|
301
|
+
next.set(larkAppId, mutationLease);
|
|
302
|
+
if (Date.now() >= deadlineMs) {
|
|
303
|
+
return { acquired: false, reason: 'timeout' };
|
|
304
|
+
}
|
|
305
|
+
const value = await mutationContext.run(next, action);
|
|
306
|
+
return { acquired: true, value };
|
|
307
|
+
}
|
|
308
|
+
finally {
|
|
309
|
+
mutationLease.active = false;
|
|
310
|
+
if (upgrading && !inheritedAdmission.ownerFinished) {
|
|
311
|
+
state.activeAdmissions++;
|
|
312
|
+
inheritedAdmission.active = true;
|
|
313
|
+
}
|
|
314
|
+
state.mutating = false;
|
|
315
|
+
wakeAll(state.openWaiters);
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
export async function tryWithBotTurnMutation(larkAppId, acquireTimeoutMs, action) {
|
|
319
|
+
const inheritedMutation = mutationContext.getStore()?.get(larkAppId);
|
|
320
|
+
if (inheritedMutation?.active) {
|
|
321
|
+
return { acquired: true, value: await action() };
|
|
322
|
+
}
|
|
323
|
+
const state = stateFor(larkAppId);
|
|
324
|
+
const inheritedAdmission = admissionContext.getStore()?.get(larkAppId);
|
|
325
|
+
const deadlineMs = Date.now() + Math.max(0, acquireTimeoutMs);
|
|
326
|
+
if (shouldQueueAdmissionUpgrade(inheritedAdmission)) {
|
|
327
|
+
const ticket = acquireAdmissionUpgradeBefore(inheritedAdmission, deadlineMs);
|
|
328
|
+
if (ticket.status === 'timed_out') {
|
|
329
|
+
return { acquired: false, reason: 'timeout' };
|
|
330
|
+
}
|
|
331
|
+
if (ticket.status === 'queued') {
|
|
332
|
+
const result = await ticket.result;
|
|
333
|
+
if (result === 'timed_out') {
|
|
334
|
+
return { acquired: false, reason: 'timeout' };
|
|
335
|
+
}
|
|
336
|
+
if (result === 'expired_owner') {
|
|
337
|
+
releaseAdmissionUpgrade(inheritedAdmission);
|
|
338
|
+
return { acquired: false, reason: 'timeout' };
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
try {
|
|
342
|
+
return await runBoundedBotTurnMutation(larkAppId, state, inheritedAdmission, deadlineMs, action);
|
|
343
|
+
}
|
|
344
|
+
finally {
|
|
345
|
+
releaseAdmissionUpgrade(inheritedAdmission);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
return runBoundedBotTurnMutation(larkAppId, state, inheritedAdmission, deadlineMs, action);
|
|
349
|
+
}
|
|
350
|
+
/**
|
|
351
|
+
* Start an independent admission branch from fire-and-forget code. Normal
|
|
352
|
+
* same-bot nesting is intentionally reentrant and MUST be awaited by its
|
|
353
|
+
* caller; JavaScript cannot infer whether a returned Promise was floated.
|
|
354
|
+
* Detached callers clear both contexts and acquire a fresh counted root lease.
|
|
355
|
+
*/
|
|
356
|
+
export function runDetachedBotTurnAdmission(larkAppId, action) {
|
|
357
|
+
return admissionContext.run(new Map(), () => mutationContext.run(new Map(), () => withBotTurnAdmission(larkAppId, action)));
|
|
358
|
+
}
|
|
359
|
+
/** Fire-and-forget counterpart for exclusive lifecycle mutations. A detached
|
|
360
|
+
* mutation inside an admission waits for that admission to drain; one inside a
|
|
361
|
+
* mutation waits for the parent mutation to reopen the gate. Do not await this
|
|
362
|
+
* helper from the parent scope whose lease it must wait on. */
|
|
363
|
+
export function runDetachedBotTurnMutation(larkAppId, action) {
|
|
364
|
+
return admissionContext.run(new Map(), () => mutationContext.run(new Map(), () => withBotTurnMutation(larkAppId, action)));
|
|
365
|
+
}
|
|
366
|
+
export function __testOnly_resetBotTurnMutationGates() {
|
|
367
|
+
gates.clear();
|
|
368
|
+
}
|
|
369
|
+
//# sourceMappingURL=bot-turn-mutation-gate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bot-turn-mutation-gate.js","sourceRoot":"","sources":["../../src/core/bot-turn-mutation-gate.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,11 @@ export { DAEMON_COMMANDS, PASSTHROUGH_COMMANDS };
|
|
|
17
17
|
* that pollutes the dashboard's session list. Handle them without a session.
|
|
18
18
|
*/
|
|
19
19
|
export declare const SESSIONLESS_DAEMON_COMMANDS: Set<string>;
|
|
20
|
+
/** Apply the machine-wide prefix used only by `/group` and `/g`, then keep the
|
|
21
|
+
* existing Lark headroom. The legacy limit is measured in UTF-16 code units;
|
|
22
|
+
* iterating by code point keeps that limit without slicing an emoji's
|
|
23
|
+
* surrogate pair. */
|
|
24
|
+
export declare function formatSlashGroupName(name: string, prefix?: string): string;
|
|
20
25
|
/**
|
|
21
26
|
* Daemon commands that operate on an ALREADY-EXISTING session and must never
|
|
22
27
|
* pre-create one. `/rename` renames the current session — with no session there
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-handler.d.ts","sourceRoot":"","sources":["../../src/core/command-handler.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAkBxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,EAAmH,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChL,OAAO,EAA8D,KAAK,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACtI,OAAO,EAAuB,KAAK,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAMnG,OAAO,EAEoB,KAAK,eAAe,EAC9C,MAAM,+BAA+B,CAAC;AAmCvC,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAchD,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAA4D,MAAM,2BAA2B,CAAC;AAC5I,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,CAAC;AAEjD;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,aAAkI,CAAC;
|
|
1
|
+
{"version":3,"file":"command-handler.d.ts","sourceRoot":"","sources":["../../src/core/command-handler.ts"],"names":[],"mappings":"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"}
|