botmux 3.16.0 → 3.17.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/dist/.runtime-build-id +1 -1
- package/dist/adapters/backend/riff-backend.d.ts +84 -1
- package/dist/adapters/backend/riff-backend.d.ts.map +1 -1
- package/dist/adapters/backend/riff-backend.js +202 -19
- package/dist/adapters/backend/riff-backend.js.map +1 -1
- package/dist/adapters/backend/sandbox.d.ts +8 -0
- package/dist/adapters/backend/sandbox.d.ts.map +1 -1
- package/dist/adapters/backend/sandbox.js +15 -0
- package/dist/adapters/backend/sandbox.js.map +1 -1
- package/dist/adapters/backend/tmux-backend.d.ts +61 -7
- package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-backend.js +80 -9
- package/dist/adapters/backend/tmux-backend.js.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.d.ts +62 -4
- package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.js +240 -27
- package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
- package/dist/adapters/cli/claude-code.d.ts.map +1 -1
- package/dist/adapters/cli/claude-code.js +4 -2
- package/dist/adapters/cli/claude-code.js.map +1 -1
- package/dist/adapters/cli/coco.d.ts.map +1 -1
- package/dist/adapters/cli/coco.js +27 -0
- 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 +28 -0
- package/dist/adapters/cli/codex-app.js.map +1 -1
- package/dist/adapters/cli/codex.d.ts.map +1 -1
- package/dist/adapters/cli/codex.js +51 -23
- package/dist/adapters/cli/codex.js.map +1 -1
- package/dist/adapters/cli/dsh-tui.d.ts +24 -0
- package/dist/adapters/cli/dsh-tui.d.ts.map +1 -0
- package/dist/adapters/cli/dsh-tui.js +99 -0
- package/dist/adapters/cli/dsh-tui.js.map +1 -0
- package/dist/adapters/cli/dsh.d.ts.map +1 -1
- package/dist/adapters/cli/dsh.js +15 -9
- package/dist/adapters/cli/dsh.js.map +1 -1
- package/dist/adapters/cli/fs-policy.d.ts +98 -1
- package/dist/adapters/cli/fs-policy.d.ts.map +1 -1
- package/dist/adapters/cli/fs-policy.js +182 -7
- package/dist/adapters/cli/fs-policy.js.map +1 -1
- package/dist/adapters/cli/grok.js +16 -18
- package/dist/adapters/cli/grok.js.map +1 -1
- package/dist/adapters/cli/model-catalog-json.d.ts +17 -0
- package/dist/adapters/cli/model-catalog-json.d.ts.map +1 -0
- package/dist/adapters/cli/model-catalog-json.js +43 -0
- package/dist/adapters/cli/model-catalog-json.js.map +1 -0
- package/dist/adapters/cli/oh-my-pi.d.ts +2 -0
- package/dist/adapters/cli/oh-my-pi.d.ts.map +1 -1
- package/dist/adapters/cli/oh-my-pi.js +45 -13
- package/dist/adapters/cli/oh-my-pi.js.map +1 -1
- package/dist/adapters/cli/opencode.js +1 -1
- package/dist/adapters/cli/opencode.js.map +1 -1
- package/dist/adapters/cli/registry.d.ts +2 -1
- package/dist/adapters/cli/registry.d.ts.map +1 -1
- package/dist/adapters/cli/registry.js +6 -1
- package/dist/adapters/cli/registry.js.map +1 -1
- package/dist/adapters/cli/relay.d.ts.map +1 -1
- package/dist/adapters/cli/relay.js +7 -0
- package/dist/adapters/cli/relay.js.map +1 -1
- package/dist/adapters/cli/seed.d.ts.map +1 -1
- package/dist/adapters/cli/seed.js +6 -0
- package/dist/adapters/cli/seed.js.map +1 -1
- package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
- package/dist/adapters/cli/shared-hints.js +20 -14
- package/dist/adapters/cli/shared-hints.js.map +1 -1
- package/dist/adapters/cli/traex.d.ts +4 -0
- package/dist/adapters/cli/traex.d.ts.map +1 -1
- package/dist/adapters/cli/traex.js +153 -0
- package/dist/adapters/cli/traex.js.map +1 -1
- package/dist/adapters/cli/types.d.ts +42 -1
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/autostart.d.ts +6 -0
- package/dist/autostart.d.ts.map +1 -1
- package/dist/autostart.js +21 -1
- package/dist/autostart.js.map +1 -1
- package/dist/bot-registry.d.ts +27 -0
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +62 -2
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli/vc-agent.d.ts.map +1 -1
- package/dist/cli/vc-agent.js +21 -3
- package/dist/cli/vc-agent.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +92 -1
- package/dist/cli.js.map +1 -1
- package/dist/codex-app-runner.js +28 -0
- package/dist/codex-app-runner.js.map +1 -1
- package/dist/core/bot-steer-directive.d.ts +25 -0
- package/dist/core/bot-steer-directive.d.ts.map +1 -0
- package/dist/core/bot-steer-directive.js +47 -0
- package/dist/core/bot-steer-directive.js.map +1 -0
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +102 -18
- 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 +53 -13
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dashboard-rows.d.ts +3 -0
- package/dist/core/dashboard-rows.d.ts.map +1 -1
- package/dist/core/dashboard-rows.js +26 -5
- package/dist/core/dashboard-rows.js.map +1 -1
- package/dist/core/dashboard-url.d.ts +10 -1
- package/dist/core/dashboard-url.d.ts.map +1 -1
- package/dist/core/dashboard-url.js +12 -2
- package/dist/core/dashboard-url.js.map +1 -1
- package/dist/core/dispatch.d.ts.map +1 -1
- package/dist/core/dispatch.js +5 -4
- package/dist/core/dispatch.js.map +1 -1
- package/dist/core/existing-app-server.d.ts +22 -0
- package/dist/core/existing-app-server.d.ts.map +1 -0
- package/dist/core/existing-app-server.js +85 -0
- package/dist/core/existing-app-server.js.map +1 -0
- package/dist/core/native-topic-id.d.ts +9 -0
- package/dist/core/native-topic-id.d.ts.map +1 -0
- package/dist/core/native-topic-id.js +14 -0
- package/dist/core/native-topic-id.js.map +1 -0
- package/dist/core/per-bot-env.d.ts.map +1 -1
- package/dist/core/per-bot-env.js +10 -0
- package/dist/core/per-bot-env.js.map +1 -1
- package/dist/core/plugins/mcp/gateway.d.ts +27 -3
- package/dist/core/plugins/mcp/gateway.d.ts.map +1 -1
- package/dist/core/plugins/mcp/gateway.js +272 -26
- package/dist/core/plugins/mcp/gateway.js.map +1 -1
- package/dist/core/plugins/mcp/host.d.ts +18 -0
- package/dist/core/plugins/mcp/host.d.ts.map +1 -1
- package/dist/core/plugins/mcp/host.js +80 -16
- package/dist/core/plugins/mcp/host.js.map +1 -1
- package/dist/core/plugins/mcp/launch-record.d.ts +14 -0
- package/dist/core/plugins/mcp/launch-record.d.ts.map +1 -0
- package/dist/core/plugins/mcp/launch-record.js +63 -0
- package/dist/core/plugins/mcp/launch-record.js.map +1 -0
- package/dist/core/session-activity.d.ts +11 -0
- package/dist/core/session-activity.d.ts.map +1 -1
- package/dist/core/session-activity.js +23 -0
- package/dist/core/session-activity.js.map +1 -1
- package/dist/core/session-group-birth.d.ts.map +1 -1
- package/dist/core/session-group-birth.js +23 -8
- package/dist/core/session-group-birth.js.map +1 -1
- package/dist/core/session-manager.d.ts +1 -4
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +16 -20
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/shared-adopt.d.ts +20 -0
- package/dist/core/shared-adopt.d.ts.map +1 -0
- package/dist/core/shared-adopt.js +26 -0
- package/dist/core/shared-adopt.js.map +1 -0
- package/dist/core/skills/customize-command.d.ts +7 -0
- package/dist/core/skills/customize-command.d.ts.map +1 -0
- package/dist/core/skills/customize-command.js +303 -0
- package/dist/core/skills/customize-command.js.map +1 -0
- package/dist/core/terminal-write-auth.d.ts +15 -0
- package/dist/core/terminal-write-auth.d.ts.map +1 -1
- package/dist/core/terminal-write-auth.js +15 -0
- package/dist/core/terminal-write-auth.js.map +1 -1
- package/dist/core/terminal-write-frame.d.ts +30 -0
- package/dist/core/terminal-write-frame.d.ts.map +1 -0
- package/dist/core/terminal-write-frame.js +44 -0
- package/dist/core/terminal-write-frame.js.map +1 -0
- package/dist/core/types.d.ts +14 -4
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +6 -8
- package/dist/core/types.js.map +1 -1
- package/dist/core/worker-pool.d.ts +31 -6
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +444 -102
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/core/worker-startup-retry.d.ts +52 -0
- package/dist/core/worker-startup-retry.d.ts.map +1 -0
- package/dist/core/worker-startup-retry.js +68 -0
- package/dist/core/worker-startup-retry.js.map +1 -0
- package/dist/daemon.d.ts +9 -8
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +467 -171
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/autostart-api.d.ts +26 -0
- package/dist/dashboard/autostart-api.d.ts.map +1 -0
- package/dist/dashboard/autostart-api.js +88 -0
- package/dist/dashboard/autostart-api.js.map +1 -0
- package/dist/dashboard/bot-payload.d.ts +5 -0
- package/dist/dashboard/bot-payload.d.ts.map +1 -1
- package/dist/dashboard/bot-payload.js +2 -0
- package/dist/dashboard/bot-payload.js.map +1 -1
- package/dist/dashboard/control-csrf.d.ts +29 -1
- package/dist/dashboard/control-csrf.d.ts.map +1 -1
- package/dist/dashboard/control-csrf.js +49 -10
- package/dist/dashboard/control-csrf.js.map +1 -1
- package/dist/dashboard/customization-api.d.ts +23 -0
- package/dist/dashboard/customization-api.d.ts.map +1 -0
- package/dist/dashboard/customization-api.js +198 -0
- package/dist/dashboard/customization-api.js.map +1 -0
- package/dist/dashboard/debug-terminal.d.ts +13 -1
- package/dist/dashboard/debug-terminal.d.ts.map +1 -1
- package/dist/dashboard/debug-terminal.js +18 -4
- package/dist/dashboard/debug-terminal.js.map +1 -1
- package/dist/dashboard/settings-write-applier.d.ts +0 -23
- package/dist/dashboard/settings-write-applier.d.ts.map +1 -1
- package/dist/dashboard/settings-write-applier.js +7 -28
- package/dist/dashboard/settings-write-applier.js.map +1 -1
- package/dist/dashboard/terminal-control-route.d.ts +32 -0
- package/dist/dashboard/terminal-control-route.d.ts.map +1 -0
- package/dist/dashboard/terminal-control-route.js +70 -0
- package/dist/dashboard/terminal-control-route.js.map +1 -0
- package/dist/dashboard/terminal-control.d.ts +64 -13
- package/dist/dashboard/terminal-control.d.ts.map +1 -1
- package/dist/dashboard/terminal-control.js +77 -14
- package/dist/dashboard/terminal-control.js.map +1 -1
- package/dist/dashboard/terminal-front-proxy.d.ts.map +1 -1
- package/dist/dashboard/terminal-front-proxy.js +41 -9
- package/dist/dashboard/terminal-front-proxy.js.map +1 -1
- package/dist/dashboard/vc-consumer-profiles-api.d.ts +69 -18
- package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -1
- package/dist/dashboard/vc-consumer-profiles-api.js +149 -29
- package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-api.d.ts +34 -2
- package/dist/dashboard/web/agent-workbench-api.d.ts.map +1 -1
- package/dist/dashboard/web/agent-workbench-api.js +39 -4
- package/dist/dashboard/web/agent-workbench-api.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-appearance.d.ts +6 -3
- package/dist/dashboard/web/agent-workbench-appearance.d.ts.map +1 -1
- package/dist/dashboard/web/agent-workbench-appearance.js +7 -4
- package/dist/dashboard/web/agent-workbench-appearance.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-model.d.ts +2 -0
- package/dist/dashboard/web/agent-workbench-model.d.ts.map +1 -1
- package/dist/dashboard/web/agent-workbench-model.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-page.js +2 -2
- package/dist/dashboard/web/agent-workbench-page.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-panes.d.ts +59 -4
- package/dist/dashboard/web/agent-workbench-panes.d.ts.map +1 -1
- package/dist/dashboard/web/agent-workbench-panes.js +493 -85
- package/dist/dashboard/web/agent-workbench-panes.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-session-list.d.ts +11 -7
- package/dist/dashboard/web/agent-workbench-session-list.d.ts.map +1 -1
- package/dist/dashboard/web/agent-workbench-session-list.js +24 -31
- package/dist/dashboard/web/agent-workbench-session-list.js.map +1 -1
- package/dist/dashboard/web/agent-workbench-terminal-control.d.ts +198 -0
- package/dist/dashboard/web/agent-workbench-terminal-control.d.ts.map +1 -0
- package/dist/dashboard/web/agent-workbench-terminal-control.js +292 -0
- package/dist/dashboard/web/agent-workbench-terminal-control.js.map +1 -0
- package/dist/dashboard/web/agent-workbench-view.d.ts +3 -2
- package/dist/dashboard/web/agent-workbench-view.d.ts.map +1 -1
- package/dist/dashboard/web/agent-workbench-view.js +69 -50
- package/dist/dashboard/web/agent-workbench-view.js.map +1 -1
- package/dist/dashboard/web/app.d.ts.map +1 -1
- package/dist/dashboard/web/app.js +58 -7
- package/dist/dashboard/web/app.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts +24 -0
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +191 -16
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts +17 -0
- package/dist/dashboard/web/bot-defaults.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults.js +51 -2
- package/dist/dashboard/web/bot-defaults.js.map +1 -1
- package/dist/dashboard/web/bot-onboarding.d.ts.map +1 -1
- package/dist/dashboard/web/bot-onboarding.js +32 -8
- package/dist/dashboard/web/bot-onboarding.js.map +1 -1
- package/dist/dashboard/web/confirm-modal.d.ts +35 -0
- package/dist/dashboard/web/confirm-modal.d.ts.map +1 -0
- package/dist/dashboard/web/confirm-modal.js +111 -0
- package/dist/dashboard/web/confirm-modal.js.map +1 -0
- package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
- package/dist/dashboard/web/connectors-page.js +2 -1
- package/dist/dashboard/web/connectors-page.js.map +1 -1
- package/dist/dashboard/web/customization-page.d.ts +3 -0
- package/dist/dashboard/web/customization-page.d.ts.map +1 -0
- package/dist/dashboard/web/customization-page.js +315 -0
- package/dist/dashboard/web/customization-page.js.map +1 -0
- package/dist/dashboard/web/dashboard-routes.d.ts.map +1 -1
- package/dist/dashboard/web/dashboard-routes.js +1 -0
- package/dist/dashboard/web/dashboard-routes.js.map +1 -1
- package/dist/dashboard/web/groups-page.d.ts.map +1 -1
- package/dist/dashboard/web/groups-page.js +11 -9
- package/dist/dashboard/web/groups-page.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +226 -42
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/monitor-room.d.ts.map +1 -1
- package/dist/dashboard/web/monitor-room.js +3 -2
- package/dist/dashboard/web/monitor-room.js.map +1 -1
- package/dist/dashboard/web/overview-page.d.ts.map +1 -1
- package/dist/dashboard/web/overview-page.js +98 -63
- package/dist/dashboard/web/overview-page.js.map +1 -1
- package/dist/dashboard/web/roles-page.d.ts.map +1 -1
- package/dist/dashboard/web/roles-page.js +4 -3
- package/dist/dashboard/web/roles-page.js.map +1 -1
- package/dist/dashboard/web/schedules-page.d.ts.map +1 -1
- package/dist/dashboard/web/schedules-page.js +165 -18
- package/dist/dashboard/web/schedules-page.js.map +1 -1
- package/dist/dashboard/web/sessions-kanban.d.ts +2 -0
- package/dist/dashboard/web/sessions-kanban.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-kanban.js +142 -24
- 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 +177 -94
- package/dist/dashboard/web/sessions-page.js.map +1 -1
- package/dist/dashboard/web/sessions.d.ts.map +1 -1
- package/dist/dashboard/web/sessions.js +5 -4
- package/dist/dashboard/web/sessions.js.map +1 -1
- package/dist/dashboard/web/settings-page.d.ts +0 -8
- package/dist/dashboard/web/settings-page.d.ts.map +1 -1
- package/dist/dashboard/web/settings-page.js +185 -65
- package/dist/dashboard/web/settings-page.js.map +1 -1
- package/dist/dashboard/web/skills/skill-library-tab.d.ts +2 -0
- package/dist/dashboard/web/skills/skill-library-tab.d.ts.map +1 -1
- package/dist/dashboard/web/skills/skill-library-tab.js +15 -1
- package/dist/dashboard/web/skills/skill-library-tab.js.map +1 -1
- package/dist/dashboard/web/skills-page.d.ts.map +1 -1
- package/dist/dashboard/web/skills-page.js +5 -4
- package/dist/dashboard/web/skills-page.js.map +1 -1
- package/dist/dashboard/web/store.d.ts +5 -0
- package/dist/dashboard/web/store.d.ts.map +1 -1
- package/dist/dashboard/web/store.js +4 -0
- package/dist/dashboard/web/store.js.map +1 -1
- package/dist/dashboard/web/team-federation-page.d.ts.map +1 -1
- package/dist/dashboard/web/team-federation-page.js +3 -2
- package/dist/dashboard/web/team-federation-page.js.map +1 -1
- package/dist/dashboard/web/toast.d.ts +15 -0
- package/dist/dashboard/web/toast.d.ts.map +1 -0
- package/dist/dashboard/web/toast.js +70 -0
- package/dist/dashboard/web/toast.js.map +1 -0
- package/dist/dashboard/web/v3-components.d.ts.map +1 -1
- package/dist/dashboard/web/v3-components.js +2 -1
- package/dist/dashboard/web/v3-components.js.map +1 -1
- package/dist/dashboard/web/vc-consumer-profiles-section.d.ts +10 -12
- package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -1
- package/dist/dashboard/web/vc-consumer-profiles-section.js +219 -200
- package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -1
- package/dist/dashboard/web/whiteboards-page.d.ts.map +1 -1
- package/dist/dashboard/web/whiteboards-page.js +2 -1
- package/dist/dashboard/web/whiteboards-page.js.map +1 -1
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/agent-workbench-dock-page-LZSUOCEQ.js +1 -0
- package/dist/dashboard-web/chunks/agent-workbench-page-YONDRJU7.js +1 -0
- package/dist/dashboard-web/chunks/bot-defaults-page-X7LV6373.js +1 -0
- package/dist/dashboard-web/chunks/chunk-2PVRDXEL.js +1 -0
- package/dist/dashboard-web/chunks/chunk-53JUKBU2.js +10 -0
- package/dist/dashboard-web/chunks/{chunk-5CJMHTT4.js → chunk-5QX4OYOR.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-NACP7BMR.js → chunk-5VRVJFQR.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-FDZ7WOBW.js → chunk-6ROOZWYV.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-F6KNPF4R.js → chunk-CK22743G.js} +15 -19
- package/dist/dashboard-web/chunks/chunk-CVNIMUPY.js +25 -0
- package/dist/dashboard-web/chunks/chunk-GJC2TMWS.js +2 -0
- package/dist/dashboard-web/chunks/chunk-OT6L6G7R.js +1 -0
- package/dist/dashboard-web/chunks/chunk-QITAMHW6.js +1 -0
- package/dist/dashboard-web/chunks/chunk-RHVFZC5Z.js +1 -0
- package/dist/dashboard-web/chunks/chunk-SOBMN2VY.js +1 -0
- package/dist/dashboard-web/chunks/chunk-SZOB6VK2.js +1 -0
- package/dist/dashboard-web/chunks/chunk-XVIXNQGC.js +44 -0
- package/dist/dashboard-web/chunks/chunk-YUJF34ME.js +1 -0
- package/dist/dashboard-web/chunks/connectors-page-LB2HEJ7F.js +1 -0
- package/dist/dashboard-web/chunks/customization-page-4GXBYLG6.js +105 -0
- package/dist/dashboard-web/chunks/feedback-page-IZQ7VLDG.js +1 -0
- package/dist/dashboard-web/chunks/groups-page-4WCP5OEV.js +8 -0
- package/dist/dashboard-web/chunks/{insights-page-HJFDYR5N.js → insights-page-TXQHIPQL.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-V7PCP47V.js → monitor-room-VBRVWXCM.js} +8 -8
- package/dist/dashboard-web/chunks/monitoring-page-QDDZWERE.js +2 -0
- package/dist/dashboard-web/chunks/office-page-PENFNYPG.js +1 -0
- package/dist/dashboard-web/chunks/overview-page-BZQDP6MP.js +1 -0
- package/dist/dashboard-web/chunks/plugin-page-JX4GSWZS.js +1 -0
- package/dist/dashboard-web/chunks/roles-page-VPNINZNK.js +1 -0
- package/dist/dashboard-web/chunks/schedules-page-BITO6HEA.js +1 -0
- package/dist/dashboard-web/chunks/sessions-page-ZKCOVTD2.js +8 -0
- package/dist/dashboard-web/chunks/settings-page-UT6JDTS6.js +2 -0
- package/dist/dashboard-web/chunks/skills-page-GULXVAJY.js +4 -0
- package/dist/dashboard-web/chunks/team-federation-page-CUUJWGEG.js +1 -0
- package/dist/dashboard-web/chunks/v3-page-5WVJ5AUR.js +94 -0
- package/dist/dashboard-web/chunks/whiteboards-page-FZ2CME4H.js +1 -0
- package/dist/dashboard-web/design-tokens.css +236 -0
- package/dist/dashboard-web/index.html +1 -0
- package/dist/dashboard-web/style.css +1930 -114
- package/dist/dashboard.js +360 -279
- package/dist/dashboard.js.map +1 -1
- package/dist/desktop/renderer/app.js +6 -0
- package/dist/desktop/renderer/app.js.map +1 -1
- package/dist/dsh-runner.js +139 -17
- package/dist/dsh-runner.js.map +1 -1
- package/dist/global-config.d.ts +33 -2
- package/dist/global-config.d.ts.map +1 -1
- package/dist/global-config.js +62 -0
- package/dist/global-config.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +13 -4
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/index.d.ts +27 -3
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +33 -4
- package/dist/i18n/index.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +13 -4
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/card-builder.d.ts +2 -0
- package/dist/im/lark/card-builder.d.ts.map +1 -1
- package/dist/im/lark/card-builder.js +7 -4
- package/dist/im/lark/card-builder.js.map +1 -1
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +135 -20
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +38 -3
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +163 -13
- package/dist/im/lark/event-dispatcher.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 +2 -1
- package/dist/im/lark/v3-blocked-card-handler.js.map +1 -1
- package/dist/im/lark/v3-blocked-card.d.ts +1 -1
- package/dist/im/lark/v3-blocked-card.d.ts.map +1 -1
- package/dist/im/lark/v3-blocked-card.js +14 -0
- package/dist/im/lark/v3-blocked-card.js.map +1 -1
- package/dist/index-core-only.js +2 -0
- package/dist/index-core-only.js.map +1 -1
- package/dist/index-daemon.js +3 -0
- package/dist/index-daemon.js.map +1 -1
- package/dist/platform/binding.d.ts +37 -0
- package/dist/platform/binding.d.ts.map +1 -1
- package/dist/platform/binding.js +15 -0
- package/dist/platform/binding.js.map +1 -1
- package/dist/services/bridge-turn-journal.d.ts +63 -0
- package/dist/services/bridge-turn-journal.d.ts.map +1 -0
- package/dist/services/bridge-turn-journal.js +149 -0
- package/dist/services/bridge-turn-journal.js.map +1 -0
- package/dist/services/bridge-turn-queue.d.ts +8 -1
- package/dist/services/bridge-turn-queue.d.ts.map +1 -1
- package/dist/services/bridge-turn-queue.js +2 -1
- package/dist/services/bridge-turn-queue.js.map +1 -1
- package/dist/services/codex-app-runner-protocol.d.ts +5 -0
- package/dist/services/codex-app-runner-protocol.d.ts.map +1 -1
- package/dist/services/codex-app-runner-protocol.js +5 -0
- package/dist/services/codex-app-runner-protocol.js.map +1 -1
- package/dist/services/customization-store.d.ts +93 -0
- package/dist/services/customization-store.d.ts.map +1 -0
- package/dist/services/customization-store.js +542 -0
- package/dist/services/customization-store.js.map +1 -0
- package/dist/services/file-bridge-path.d.ts.map +1 -1
- package/dist/services/file-bridge-path.js +3 -0
- package/dist/services/file-bridge-path.js.map +1 -1
- package/dist/services/grok-transcript.d.ts.map +1 -1
- package/dist/services/grok-transcript.js +44 -9
- package/dist/services/grok-transcript.js.map +1 -1
- package/dist/services/local-cli-opener.d.ts.map +1 -1
- package/dist/services/local-cli-opener.js +12 -3
- package/dist/services/local-cli-opener.js.map +1 -1
- package/dist/services/model-catalog.d.ts +54 -0
- package/dist/services/model-catalog.d.ts.map +1 -0
- package/dist/services/model-catalog.js +147 -0
- package/dist/services/model-catalog.js.map +1 -0
- package/dist/services/omp-transcript.d.ts +27 -0
- package/dist/services/omp-transcript.d.ts.map +1 -0
- package/dist/services/omp-transcript.js +214 -0
- package/dist/services/omp-transcript.js.map +1 -0
- package/dist/services/platform-team-store.d.ts +16 -8
- package/dist/services/platform-team-store.d.ts.map +1 -1
- package/dist/services/platform-team-store.js +17 -10
- package/dist/services/platform-team-store.js.map +1 -1
- package/dist/services/project-scanner.d.ts.map +1 -1
- package/dist/services/project-scanner.js +13 -8
- package/dist/services/project-scanner.js.map +1 -1
- package/dist/services/resumable-session-discovery.d.ts.map +1 -1
- package/dist/services/resumable-session-discovery.js +117 -35
- package/dist/services/resumable-session-discovery.js.map +1 -1
- package/dist/services/structured-bridge-clis.d.ts +5 -3
- package/dist/services/structured-bridge-clis.d.ts.map +1 -1
- package/dist/services/structured-bridge-clis.js +5 -1
- package/dist/services/structured-bridge-clis.js.map +1 -1
- package/dist/services/vc-meeting-action-gate.d.ts.map +1 -1
- package/dist/services/vc-meeting-action-gate.js +15 -4
- package/dist/services/vc-meeting-action-gate.js.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts +46 -66
- package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-bootstrap.js +33 -292
- package/dist/services/vc-meeting-consumer-profile-bootstrap.js.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-templates.js +3 -3
- package/dist/services/vc-meeting-consumer-profile-templates.js.map +1 -1
- package/dist/services/vc-meeting-delivery-store.d.ts +18 -0
- package/dist/services/vc-meeting-delivery-store.d.ts.map +1 -1
- package/dist/services/vc-meeting-delivery-store.js +55 -0
- package/dist/services/vc-meeting-delivery-store.js.map +1 -1
- package/dist/services/vc-meeting-send-policy.d.ts +21 -1
- package/dist/services/vc-meeting-send-policy.d.ts.map +1 -1
- package/dist/services/vc-meeting-send-policy.js +30 -2
- package/dist/services/vc-meeting-send-policy.js.map +1 -1
- package/dist/services/vc-meeting-shared-consumer-catalog-store.d.ts +78 -0
- package/dist/services/vc-meeting-shared-consumer-catalog-store.d.ts.map +1 -0
- package/dist/services/vc-meeting-shared-consumer-catalog-store.js +227 -0
- package/dist/services/vc-meeting-shared-consumer-catalog-store.js.map +1 -0
- package/dist/services/vc-meeting-shared-consumer-catalog.d.ts +53 -0
- package/dist/services/vc-meeting-shared-consumer-catalog.d.ts.map +1 -0
- package/dist/services/vc-meeting-shared-consumer-catalog.js +161 -0
- package/dist/services/vc-meeting-shared-consumer-catalog.js.map +1 -0
- package/dist/setup/bot-config-editor.d.ts.map +1 -1
- package/dist/setup/bot-config-editor.js +1 -0
- package/dist/setup/bot-config-editor.js.map +1 -1
- package/dist/setup/open-platform-automation.d.ts +20 -0
- package/dist/setup/open-platform-automation.d.ts.map +1 -1
- package/dist/setup/open-platform-automation.js +27 -0
- package/dist/setup/open-platform-automation.js.map +1 -1
- package/dist/skills/customization-bundle.d.ts +83 -0
- package/dist/skills/customization-bundle.d.ts.map +1 -0
- package/dist/skills/customization-bundle.js +214 -0
- package/dist/skills/customization-bundle.js.map +1 -0
- package/dist/skills/definitions.d.ts.map +1 -1
- package/dist/skills/definitions.js +10 -3
- package/dist/skills/definitions.js.map +1 -1
- package/dist/skills/effective-builtins.d.ts +38 -0
- package/dist/skills/effective-builtins.d.ts.map +1 -0
- package/dist/skills/effective-builtins.js +96 -0
- package/dist/skills/effective-builtins.js.map +1 -0
- package/dist/skills/injection-mode.d.ts +4 -1
- package/dist/skills/injection-mode.d.ts.map +1 -1
- package/dist/skills/injection-mode.js +11 -3
- package/dist/skills/injection-mode.js.map +1 -1
- package/dist/skills/installer.d.ts.map +1 -1
- package/dist/skills/installer.js +24 -1
- package/dist/skills/installer.js.map +1 -1
- package/dist/skills/prompt-fragments.d.ts +58 -0
- package/dist/skills/prompt-fragments.d.ts.map +1 -0
- package/dist/skills/prompt-fragments.js +88 -0
- package/dist/skills/prompt-fragments.js.map +1 -0
- package/dist/types.d.ts +51 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/cli-usage-limit.d.ts +50 -0
- package/dist/utils/cli-usage-limit.d.ts.map +1 -1
- package/dist/utils/cli-usage-limit.js +43 -0
- package/dist/utils/cli-usage-limit.js.map +1 -1
- package/dist/utils/idle-detector.d.ts +12 -0
- package/dist/utils/idle-detector.d.ts.map +1 -1
- package/dist/utils/idle-detector.js +88 -2
- package/dist/utils/idle-detector.js.map +1 -1
- package/dist/utils/stuck-detector.d.ts +5 -0
- package/dist/utils/stuck-detector.d.ts.map +1 -1
- package/dist/utils/stuck-detector.js +41 -0
- package/dist/utils/stuck-detector.js.map +1 -1
- package/dist/utils/usage-limit-tracker.d.ts +46 -0
- package/dist/utils/usage-limit-tracker.d.ts.map +1 -0
- package/dist/utils/usage-limit-tracker.js +91 -0
- package/dist/utils/usage-limit-tracker.js.map +1 -0
- package/dist/utils/user-token.js +1 -1
- package/dist/utils/user-token.js.map +1 -1
- package/dist/worker.js +812 -125
- package/dist/worker.js.map +1 -1
- package/dist/workflows/definition.d.ts +14 -14
- package/dist/workflows/events/payloads.d.ts +12 -12
- package/dist/workflows/events/schema.d.ts +164 -164
- package/dist/workflows/migration/v2-to-v3.js +1 -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 +11 -5
- package/dist/workflows/v3/architect.js.map +1 -1
- package/dist/workflows/v3/artifact-contract-declarations.d.ts +22 -0
- package/dist/workflows/v3/artifact-contract-declarations.d.ts.map +1 -0
- package/dist/workflows/v3/artifact-contract-declarations.js +95 -0
- package/dist/workflows/v3/artifact-contract-declarations.js.map +1 -0
- package/dist/workflows/v3/contract.d.ts +1 -0
- package/dist/workflows/v3/contract.d.ts.map +1 -1
- package/dist/workflows/v3/contract.js.map +1 -1
- package/dist/workflows/v3/daemon-run.d.ts +2 -2
- package/dist/workflows/v3/daemon-run.d.ts.map +1 -1
- package/dist/workflows/v3/daemon-run.js +4 -0
- package/dist/workflows/v3/daemon-run.js.map +1 -1
- package/dist/workflows/v3/dag.d.ts +7 -0
- package/dist/workflows/v3/dag.d.ts.map +1 -1
- package/dist/workflows/v3/dag.js +69 -8
- package/dist/workflows/v3/dag.js.map +1 -1
- package/dist/workflows/v3/ephemeral-pool.js +1 -1
- package/dist/workflows/v3/ephemeral-pool.js.map +1 -1
- package/dist/workflows/v3/event-contract.d.ts +3 -1
- package/dist/workflows/v3/event-contract.d.ts.map +1 -1
- package/dist/workflows/v3/host.d.ts.map +1 -1
- package/dist/workflows/v3/host.js +5 -1
- package/dist/workflows/v3/host.js.map +1 -1
- package/dist/workflows/v3/journal.d.ts +1 -1
- package/dist/workflows/v3/journal.d.ts.map +1 -1
- package/dist/workflows/v3/journal.js.map +1 -1
- package/dist/workflows/v3/library-materialize.d.ts.map +1 -1
- package/dist/workflows/v3/library-materialize.js +9 -1
- package/dist/workflows/v3/library-materialize.js.map +1 -1
- package/dist/workflows/v3/library-schema.d.ts +3 -1
- package/dist/workflows/v3/library-schema.d.ts.map +1 -1
- package/dist/workflows/v3/library-schema.js +20 -4
- package/dist/workflows/v3/library-schema.js.map +1 -1
- package/dist/workflows/v3/library-store.d.ts.map +1 -1
- package/dist/workflows/v3/library-store.js +15 -3
- package/dist/workflows/v3/library-store.js.map +1 -1
- package/dist/workflows/v3/run-envelope.d.ts +16 -16
- package/dist/workflows/v3/shared-node-runtime.d.ts +2 -1
- package/dist/workflows/v3/shared-node-runtime.d.ts.map +1 -1
- package/dist/workflows/v3/shared-node-runtime.js +48 -7
- package/dist/workflows/v3/shared-node-runtime.js.map +1 -1
- package/package.json +2 -1
- package/dist/dashboard-web/chunks/agent-workbench-dock-page-IKAC5CFL.js +0 -1
- package/dist/dashboard-web/chunks/agent-workbench-page-M53UN5EB.js +0 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-YKE5SDZF.js +0 -10
- package/dist/dashboard-web/chunks/chunk-22WIADUT.js +0 -2
- package/dist/dashboard-web/chunks/chunk-24ONYQMR.js +0 -1
- package/dist/dashboard-web/chunks/chunk-2W6SCN3M.js +0 -1
- package/dist/dashboard-web/chunks/chunk-4XNJX6B3.js +0 -1
- package/dist/dashboard-web/chunks/chunk-5THX4DI2.js +0 -66
- package/dist/dashboard-web/chunks/chunk-7SZRL6FY.js +0 -1
- package/dist/dashboard-web/chunks/chunk-AGCPF6MT.js +0 -1
- package/dist/dashboard-web/chunks/chunk-FXW3V4JR.js +0 -1
- package/dist/dashboard-web/chunks/chunk-SYC6D5XU.js +0 -1
- package/dist/dashboard-web/chunks/connectors-page-VOISXXII.js +0 -1
- package/dist/dashboard-web/chunks/feedback-page-RN6HRZMS.js +0 -1
- package/dist/dashboard-web/chunks/groups-page-UQT6DCB7.js +0 -8
- package/dist/dashboard-web/chunks/monitoring-page-NKEKVQAP.js +0 -2
- package/dist/dashboard-web/chunks/office-page-GVJF73XW.js +0 -1
- package/dist/dashboard-web/chunks/overview-page-KHLV6VTI.js +0 -1
- package/dist/dashboard-web/chunks/plugin-page-J3OF5IY4.js +0 -1
- package/dist/dashboard-web/chunks/roles-page-WQIRSOLZ.js +0 -1
- package/dist/dashboard-web/chunks/schedules-page-J2DEY2X6.js +0 -1
- package/dist/dashboard-web/chunks/sessions-page-7BQFEA5P.js +0 -8
- package/dist/dashboard-web/chunks/settings-page-BJEIOFJH.js +0 -2
- package/dist/dashboard-web/chunks/skills-page-HGIFR3IU.js +0 -4
- package/dist/dashboard-web/chunks/team-federation-page-MR5ZPL4B.js +0 -1
- package/dist/dashboard-web/chunks/v3-page-GBR5JWPE.js +0 -94
- package/dist/dashboard-web/chunks/whiteboards-page-QAZM4BN3.js +0 -1
- package/dist/services/vc-meeting-consumer-profile-store.d.ts +0 -39
- package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +0 -1
- package/dist/services/vc-meeting-consumer-profile-store.js +0 -191
- package/dist/services/vc-meeting-consumer-profile-store.js.map +0 -1
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Dashboard 私有 API:「会议角色预设」(VC meeting consumer profiles)。
|
|
3
3
|
*
|
|
4
|
+
* 2026-08 起预设目录是**全 fleet 共享**的一份(`~/.botmux/config.json` 的
|
|
5
|
+
* `vcMeetingAgent.consumerCatalog`),不再按 bot 分开配置:
|
|
6
|
+
*
|
|
7
|
+
* - 用户不用再手选「会议事件接收 Bot」——每个开着 VC 的 bot 都处理自己收到的
|
|
8
|
+
* 会议事件,被拉进会的是谁就由谁执行;
|
|
9
|
+
* - 预设条目**不带** `agentAppId`。执行方在读路径合并时才绑定为收到事件的那个
|
|
10
|
+
* bot(services/vc-meeting-shared-consumer-catalog.ts),所以「拉 A 进会却把
|
|
11
|
+
* B 拉进监听群」在数据模型层面就不可表达。
|
|
12
|
+
*
|
|
4
13
|
* 职责边界:本层只做 用户 DTO ↔ canonical 配置 的映射与 HTTP 语义包装;
|
|
5
|
-
*
|
|
6
|
-
* `services/vc-meeting-consumer-
|
|
7
|
-
*
|
|
14
|
+
* revision 乐观并发 / 字段校验的权威在
|
|
15
|
+
* `services/vc-meeting-shared-consumer-catalog-store.ts`,运行时冲突裁决的权威
|
|
16
|
+
* 在 bot-registry resolver——Dashboard 校验只是提前反馈。
|
|
8
17
|
*
|
|
9
18
|
* permissionPreset 是纯 UI 概念,不持久化:保存时映射成 canonical
|
|
10
19
|
* capabilities/ownedSinks 原语;`custom` 只允许复用同 id 既有 policy,
|
|
@@ -12,13 +21,15 @@
|
|
|
12
21
|
*/
|
|
13
22
|
import type { BotConfig } from '../bot-registry.js';
|
|
14
23
|
import type { VcMeetingConsumerProfileConfig, VcMeetingConsumerResponseMode, VcMeetingListenerOutputPlacement } from '../types.js';
|
|
15
|
-
import type {
|
|
24
|
+
import type { VcMeetingSharedConsumerProfile } from '../global-config.js';
|
|
25
|
+
import type { UpdateVcMeetingSharedConsumerCatalogResult, VcMeetingSharedConsumerCatalogFieldError, VcMeetingSharedConsumerCatalogSnapshot } from '../services/vc-meeting-shared-consumer-catalog-store.js';
|
|
16
26
|
import { type VcMeetingConsumerProfileTemplateCatalog, type VcMeetingTemplatePermissionPreset } from '../services/vc-meeting-consumer-profile-templates.js';
|
|
17
27
|
export type VcMeetingPermissionPreset = VcMeetingTemplatePermissionPreset | 'custom';
|
|
28
|
+
/** 字段级错误的形状与 per-bot 时代一致,路径前缀也保持 `profiles[i].*`。 */
|
|
29
|
+
export type VcMeetingConsumerProfileFieldError = VcMeetingSharedConsumerCatalogFieldError;
|
|
18
30
|
export interface VcMeetingConsumerProfileDto {
|
|
19
31
|
id: string;
|
|
20
32
|
label?: string;
|
|
21
|
-
agentAppId: string;
|
|
22
33
|
instructions?: string;
|
|
23
34
|
activityTypes?: string[];
|
|
24
35
|
responseMode: VcMeetingConsumerResponseMode;
|
|
@@ -39,26 +50,57 @@ export interface VcMeetingAgentOptionDto {
|
|
|
39
50
|
/** Is the managed sandbox boundary actually in force? false ⇒ the bot's Lark
|
|
40
51
|
* credential is exposed to untrusted meeting input (informed opt-out). */
|
|
41
52
|
sandboxIsolated: boolean;
|
|
53
|
+
/** 这个 bot 是否接收会议事件(bots.json vcMeetingAgent.enabled)。缺省视为
|
|
54
|
+
* 开启——VC 对每个连着飞书的 bot 默认可用,`enabled: false` 是显式退出。 */
|
|
55
|
+
vcEnabled: boolean;
|
|
56
|
+
/** apiOnly(无飞书连接)的 bot 结构上不可能收会议事件,UI 需要禁用它的开关。 */
|
|
57
|
+
vcEligible: boolean;
|
|
58
|
+
/** Configured per-bot in-meeting output policies (bots.json
|
|
59
|
+
* vcMeetingAgent.meetingConsumer.*). null = unset → daemon default. */
|
|
60
|
+
textOutputPolicy: VcMeetingOutputPolicyValue | null;
|
|
61
|
+
voiceOutputPolicy: VcMeetingOutputPolicyValue | null;
|
|
62
|
+
/** vcMeetingAgent.realtimeVoice.enabled — hard gate for in-meeting voice. */
|
|
63
|
+
realtimeVoiceEnabled: boolean;
|
|
64
|
+
/** per-bot 从共享目录挑的默认角色 id(vcMeetingAgent.meetingConsumer.
|
|
65
|
+
* catalogDefaultConsumerId)。null = 未挑 → 跟随共享目录全局默认。 */
|
|
66
|
+
catalogDefaultConsumerId: string | null;
|
|
67
|
+
/** Effective values after daemon defaults (kept in sync with
|
|
68
|
+
* defaultVcMeetingTextOutputPolicy / defaultVcMeetingVoiceOutputPolicy). */
|
|
69
|
+
effectiveTextOutputPolicy: VcMeetingOutputPolicyValue;
|
|
70
|
+
effectiveVoiceOutputPolicy: VcMeetingOutputPolicyValue;
|
|
71
|
+
}
|
|
72
|
+
export type VcMeetingOutputPolicyValue = 'allow' | 'approval' | 'deny';
|
|
73
|
+
export interface VcMeetingBotOutputPolicyPatch {
|
|
74
|
+
appId: string;
|
|
75
|
+
/** 会议事件接收开关(vcMeetingAgent.enabled)。 */
|
|
76
|
+
vcEnabled: boolean;
|
|
77
|
+
/** null clears the override back to the daemon default. */
|
|
78
|
+
textOutputPolicy: VcMeetingOutputPolicyValue | null;
|
|
79
|
+
voiceOutputPolicy: VcMeetingOutputPolicyValue | null;
|
|
80
|
+
realtimeVoiceEnabled: boolean;
|
|
81
|
+
/** per-bot 从共享目录挑的默认角色 id。null(或空串)= 跟随全局默认。
|
|
82
|
+
* 写到 vcMeetingAgent.meetingConsumer.catalogDefaultConsumerId。 */
|
|
83
|
+
catalogDefaultConsumerId: string | null;
|
|
42
84
|
}
|
|
43
85
|
export interface VcMeetingConsumerProfilesGetBody {
|
|
44
86
|
ok: true;
|
|
45
|
-
listenerBotAppId: string;
|
|
46
87
|
revision: string;
|
|
47
|
-
catalogState:
|
|
88
|
+
catalogState: VcMeetingSharedConsumerCatalogSnapshot['catalogState'];
|
|
48
89
|
defaultMode: 'listenOnly' | 'agents';
|
|
49
90
|
defaultConsumerIds: string[];
|
|
50
91
|
profiles: VcMeetingConsumerProfileDto[];
|
|
51
92
|
agentOptions: VcMeetingAgentOptionDto[];
|
|
52
93
|
/** Versioned, read-only templates. Applying one creates a detached editable profile. */
|
|
53
94
|
templateCatalog: VcMeetingConsumerProfileTemplateCatalog;
|
|
54
|
-
migrationOffer?: VcMeetingConsumerProfilesSnapshot['migrationOffer'];
|
|
55
95
|
}
|
|
56
96
|
export interface VcMeetingConsumerProfilesPutRequest {
|
|
57
|
-
listenerBotAppId: string;
|
|
58
97
|
expectedRevision: string;
|
|
59
98
|
defaultMode: 'listenOnly' | 'agents';
|
|
60
99
|
defaultConsumerIds: string[];
|
|
61
100
|
profiles: VcMeetingConsumerProfileDto[];
|
|
101
|
+
/** Optional per-bot patches applied to bots.json via the locked
|
|
102
|
+
* read-modify-write path after the shared catalog update succeeds. */
|
|
103
|
+
botOutputPolicies?: VcMeetingBotOutputPolicyPatch[];
|
|
62
104
|
}
|
|
63
105
|
export type VcMeetingConsumerProfilesApiResult = {
|
|
64
106
|
status: 200;
|
|
@@ -72,13 +114,14 @@ export type VcMeetingConsumerProfilesApiResult = {
|
|
|
72
114
|
};
|
|
73
115
|
};
|
|
74
116
|
export interface VcMeetingConsumerProfilesApiDeps {
|
|
75
|
-
|
|
76
|
-
|
|
117
|
+
/** 读全局共享目录。同步实现也可以——签名允许两者。 */
|
|
118
|
+
readCatalog(): VcMeetingSharedConsumerCatalogSnapshot | Promise<VcMeetingSharedConsumerCatalogSnapshot>;
|
|
119
|
+
updateCatalog(input: {
|
|
77
120
|
expectedRevision: string;
|
|
78
121
|
defaultMode: 'listenOnly' | 'agents';
|
|
79
122
|
defaultConsumerIds: string[];
|
|
80
|
-
profiles:
|
|
81
|
-
}): Promise<
|
|
123
|
+
profiles: VcMeetingSharedConsumerProfile[];
|
|
124
|
+
}): UpdateVcMeetingSharedConsumerCatalogResult | Promise<UpdateVcMeetingSharedConsumerCatalogResult>;
|
|
82
125
|
loadBotConfigs(): BotConfig[];
|
|
83
126
|
effectiveDefaultWorkingDir(cfg: BotConfig): string | undefined;
|
|
84
127
|
/** Online DaemonInfo botName lookup; undefined when the daemon is offline. */
|
|
@@ -87,17 +130,23 @@ export interface VcMeetingConsumerProfilesApiDeps {
|
|
|
87
130
|
adapterReliableTurnTerminal(cliId: string | undefined, cliPathOverride?: string): boolean;
|
|
88
131
|
managedSideEffectEligible(bot: BotConfig): boolean;
|
|
89
132
|
sandboxIsolated(bot: BotConfig): boolean;
|
|
90
|
-
/** Called after a successful PUT so the live daemon reloads
|
|
133
|
+
/** Called after a successful PUT so the live daemon reloads changed bots.json. */
|
|
91
134
|
reloadDaemons(appIds: string[]): Promise<void>;
|
|
135
|
+
/** Locked read-modify-write of one bot's VC switches in bots.json
|
|
136
|
+
* (vcMeetingAgent.enabled + meetingConsumer.* + realtimeVoice.enabled). */
|
|
137
|
+
applyBotOutputPolicy(patch: VcMeetingBotOutputPolicyPatch): Promise<{
|
|
138
|
+
ok: boolean;
|
|
139
|
+
reason?: string;
|
|
140
|
+
}>;
|
|
92
141
|
}
|
|
93
142
|
/** UI 下拉与 DTO 预检共用;权威列表在 bot-registry 严格校验里。 */
|
|
94
143
|
export declare const VC_MEETING_PROFILE_ACTIVITY_TYPES: readonly ["transcript_received", "chat_received", "participant_joined", "participant_left", "magic_share_started", "magic_share_ended"];
|
|
95
144
|
/** canonical policy → 预设档位;对不上任何档位的既有 policy 显示为 custom。 */
|
|
96
145
|
export declare function deriveVcMeetingPermissionPreset(profile: Pick<VcMeetingConsumerProfileConfig, 'capabilities' | 'ownedSinks' | 'responseMode'>): VcMeetingPermissionPreset;
|
|
97
|
-
export declare function vcMeetingConsumerProfileToDto(profile:
|
|
146
|
+
export declare function vcMeetingConsumerProfileToDto(profile: VcMeetingSharedConsumerProfile): VcMeetingConsumerProfileDto;
|
|
98
147
|
type DtoValidation = {
|
|
99
148
|
ok: true;
|
|
100
|
-
profiles:
|
|
149
|
+
profiles: VcMeetingSharedConsumerProfile[];
|
|
101
150
|
} | {
|
|
102
151
|
ok: false;
|
|
103
152
|
fieldErrors: VcMeetingConsumerProfileFieldError[];
|
|
@@ -107,10 +156,12 @@ type DtoValidation = {
|
|
|
107
156
|
* (role 参与 profileHash,改写会造成不必要的 epoch 变更),新 id 用 id 作
|
|
108
157
|
* role。custom 档只复用同 id 既有 capabilities/ownedSinks,新 id 无可复用
|
|
109
158
|
* policy → fieldError。
|
|
159
|
+
*
|
|
160
|
+
* 输出**不含** `agentAppId`:共享目录不绑定执行方。
|
|
110
161
|
*/
|
|
111
|
-
export declare function vcMeetingConsumerProfilesFromDtos(dtos: readonly VcMeetingConsumerProfileDto[], existing: readonly
|
|
162
|
+
export declare function vcMeetingConsumerProfilesFromDtos(dtos: readonly VcMeetingConsumerProfileDto[], existing: readonly VcMeetingSharedConsumerProfile[]): DtoValidation;
|
|
112
163
|
export declare function buildVcMeetingAgentOptions(deps: Pick<VcMeetingConsumerProfilesApiDeps, 'loadBotConfigs' | 'effectiveDefaultWorkingDir' | 'onlineBotName' | 'isOnline' | 'adapterReliableTurnTerminal' | 'managedSideEffectEligible' | 'sandboxIsolated'>): VcMeetingAgentOptionDto[];
|
|
113
|
-
export declare function handleVcMeetingConsumerProfilesGet(
|
|
164
|
+
export declare function handleVcMeetingConsumerProfilesGet(deps: VcMeetingConsumerProfilesApiDeps): Promise<VcMeetingConsumerProfilesApiResult>;
|
|
114
165
|
export declare function handleVcMeetingConsumerProfilesPut(payload: unknown, deps: VcMeetingConsumerProfilesApiDeps): Promise<VcMeetingConsumerProfilesApiResult>;
|
|
115
166
|
export {};
|
|
116
167
|
//# sourceMappingURL=vc-consumer-profiles-api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-consumer-profiles-api.d.ts","sourceRoot":"","sources":["../../src/dashboard/vc-consumer-profiles-api.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"vc-consumer-profiles-api.d.ts","sourceRoot":"","sources":["../../src/dashboard/vc-consumer-profiles-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -54,7 +54,6 @@ export function vcMeetingConsumerProfileToDto(profile) {
|
|
|
54
54
|
return {
|
|
55
55
|
id: profile.id,
|
|
56
56
|
...(profile.label ? { label: profile.label } : {}),
|
|
57
|
-
agentAppId: profile.agentAppId,
|
|
58
57
|
...(profile.instructions ? { instructions: profile.instructions } : {}),
|
|
59
58
|
...(profile.filter?.activityTypes?.length
|
|
60
59
|
? { activityTypes: [...profile.filter.activityTypes] }
|
|
@@ -69,6 +68,8 @@ export function vcMeetingConsumerProfileToDto(profile) {
|
|
|
69
68
|
* (role 参与 profileHash,改写会造成不必要的 epoch 变更),新 id 用 id 作
|
|
70
69
|
* role。custom 档只复用同 id 既有 capabilities/ownedSinks,新 id 无可复用
|
|
71
70
|
* policy → fieldError。
|
|
71
|
+
*
|
|
72
|
+
* 输出**不含** `agentAppId`:共享目录不绑定执行方。
|
|
72
73
|
*/
|
|
73
74
|
export function vcMeetingConsumerProfilesFromDtos(dtos, existing) {
|
|
74
75
|
const fieldErrors = [];
|
|
@@ -84,10 +85,6 @@ export function vcMeetingConsumerProfilesFromDtos(dtos, existing) {
|
|
|
84
85
|
fieldErrors.push({ path: path('id'), message: 'id 不能为空' });
|
|
85
86
|
return;
|
|
86
87
|
}
|
|
87
|
-
if (typeof dto.agentAppId !== 'string' || !dto.agentAppId.trim()) {
|
|
88
|
-
fieldErrors.push({ path: path('agentAppId'), message: '必须选择一个 Agent' });
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
88
|
if (dto.responseMode !== 'silent' && dto.responseMode !== 'listener_thread') {
|
|
92
89
|
fieldErrors.push({ path: path('responseMode'), message: '输出方式必须是 silent 或 listener_thread' });
|
|
93
90
|
return;
|
|
@@ -155,7 +152,6 @@ export function vcMeetingConsumerProfilesFromDtos(dtos, existing) {
|
|
|
155
152
|
const instructions = dto.instructions?.trim();
|
|
156
153
|
profiles.push({
|
|
157
154
|
id: dto.id.trim(),
|
|
158
|
-
agentAppId: dto.agentAppId.trim(),
|
|
159
155
|
...(label ? { label } : {}),
|
|
160
156
|
role: prior?.role ?? dto.id.trim(),
|
|
161
157
|
...(instructions ? { instructions } : {}),
|
|
@@ -188,6 +184,16 @@ export function buildVcMeetingAgentOptions(deps) {
|
|
|
188
184
|
catch {
|
|
189
185
|
workingDirReady = false;
|
|
190
186
|
}
|
|
187
|
+
const vc = bot.vcMeetingAgent;
|
|
188
|
+
const textOutputPolicy = normalizeOutputPolicy(vc?.meetingConsumer?.textOutputPolicy);
|
|
189
|
+
const voiceOutputPolicy = normalizeOutputPolicy(vc?.meetingConsumer?.voiceOutputPolicy);
|
|
190
|
+
// 实时语音能力默认开启:未配 = 开,只有显式 false 才关(与 daemon 的
|
|
191
|
+
// vcMeetingRealtimeVoiceEnabled 保持同一判定)。语音 WS 仍按需建连,能力开
|
|
192
|
+
// 不等于入会即连。
|
|
193
|
+
const realtimeVoiceEnabled = vc?.realtimeVoice?.enabled !== false;
|
|
194
|
+
// apiOnly(core-only)bot 没有飞书连接,收不到会议事件——与 bot-registry 的
|
|
195
|
+
// vcMeetingAgentConfigActive fail-close 保持同一判定。
|
|
196
|
+
const vcEligible = bot.apiOnly !== true;
|
|
191
197
|
return {
|
|
192
198
|
appId: bot.larkAppId,
|
|
193
199
|
label: bot.displayName || deps.onlineBotName(bot.larkAppId) || bot.name || bot.larkAppId,
|
|
@@ -197,13 +203,99 @@ export function buildVcMeetingAgentOptions(deps) {
|
|
|
197
203
|
reliableTurnTerminal: deps.adapterReliableTurnTerminal(bot.cliId, bot.cliPathOverride),
|
|
198
204
|
managedSideEffectEligible: deps.managedSideEffectEligible(bot),
|
|
199
205
|
sandboxIsolated: deps.sandboxIsolated(bot),
|
|
206
|
+
// 缺省 = 开启:VC 对每个连着飞书的 bot 默认可用,enabled:false 才是退出。
|
|
207
|
+
vcEnabled: vcEligible && vc?.enabled !== false,
|
|
208
|
+
vcEligible,
|
|
209
|
+
textOutputPolicy,
|
|
210
|
+
voiceOutputPolicy,
|
|
211
|
+
realtimeVoiceEnabled,
|
|
212
|
+
catalogDefaultConsumerId: normalizeNonEmptyStringOrNull(vc?.meetingConsumer?.catalogDefaultConsumerId),
|
|
213
|
+
// Mirrors daemon defaultVcMeetingTextOutputPolicy / defaultVcMeetingVoiceOutputPolicy.
|
|
214
|
+
effectiveTextOutputPolicy: textOutputPolicy ?? 'allow',
|
|
215
|
+
effectiveVoiceOutputPolicy: !realtimeVoiceEnabled ? 'deny' : (voiceOutputPolicy ?? 'allow'),
|
|
200
216
|
};
|
|
201
217
|
}).sort((a, b) => (a.appId === b.appId ? 0 : a.appId < b.appId ? -1 : 1));
|
|
202
218
|
}
|
|
219
|
+
function normalizeOutputPolicy(value) {
|
|
220
|
+
return value === 'allow' || value === 'approval' || value === 'deny' ? value : null;
|
|
221
|
+
}
|
|
222
|
+
function normalizeNonEmptyStringOrNull(value) {
|
|
223
|
+
return typeof value === 'string' && value.trim() ? value.trim() : null;
|
|
224
|
+
}
|
|
225
|
+
function parseBotOutputPolicyPatches(raw, knownAppIds, knownProfileIds) {
|
|
226
|
+
if (raw === undefined)
|
|
227
|
+
return { ok: true, patches: [] };
|
|
228
|
+
if (!Array.isArray(raw)) {
|
|
229
|
+
return { ok: false, fieldErrors: [{ path: 'botOutputPolicies', message: 'botOutputPolicies 必须是数组' }] };
|
|
230
|
+
}
|
|
231
|
+
const fieldErrors = [];
|
|
232
|
+
const patches = [];
|
|
233
|
+
const seen = new Set();
|
|
234
|
+
raw.forEach((item, index) => {
|
|
235
|
+
const path = (field) => `botOutputPolicies[${index}].${field}`;
|
|
236
|
+
if (!item || typeof item !== 'object' || Array.isArray(item)) {
|
|
237
|
+
fieldErrors.push({ path: `botOutputPolicies[${index}]`, message: '必须是对象' });
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
const record = item;
|
|
241
|
+
const appId = typeof record.appId === 'string' ? record.appId.trim() : '';
|
|
242
|
+
if (!appId || !knownAppIds.has(appId)) {
|
|
243
|
+
fieldErrors.push({ path: path('appId'), message: '未知的 bot appId' });
|
|
244
|
+
return;
|
|
245
|
+
}
|
|
246
|
+
if (seen.has(appId)) {
|
|
247
|
+
fieldErrors.push({ path: path('appId'), message: '同一 bot 重复出现' });
|
|
248
|
+
return;
|
|
249
|
+
}
|
|
250
|
+
seen.add(appId);
|
|
251
|
+
const parsePolicy = (field) => {
|
|
252
|
+
const value = record[field];
|
|
253
|
+
if (value === null)
|
|
254
|
+
return null;
|
|
255
|
+
if (value === 'allow' || value === 'approval' || value === 'deny')
|
|
256
|
+
return value;
|
|
257
|
+
fieldErrors.push({ path: path(field), message: '必须是 allow/approval/deny 或 null' });
|
|
258
|
+
return undefined;
|
|
259
|
+
};
|
|
260
|
+
const textOutputPolicy = parsePolicy('textOutputPolicy');
|
|
261
|
+
const voiceOutputPolicy = parsePolicy('voiceOutputPolicy');
|
|
262
|
+
if (typeof record.realtimeVoiceEnabled !== 'boolean') {
|
|
263
|
+
fieldErrors.push({ path: path('realtimeVoiceEnabled'), message: '必须是布尔值' });
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
// 老客户端不发 vcEnabled:缺省保持「接收」,与 vcMeetingAgent.enabled 缺省
|
|
267
|
+
// 语义一致,绝不能把没提交这个字段解释成「关闭接收」。
|
|
268
|
+
if (record.vcEnabled !== undefined && typeof record.vcEnabled !== 'boolean') {
|
|
269
|
+
fieldErrors.push({ path: path('vcEnabled'), message: '必须是布尔值' });
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
// per-bot 默认角色:null/缺省 = 跟随全局默认;给了字符串则必须命中本次提交的
|
|
273
|
+
// 目录角色 id(不然存了个悬空默认,会静默回落全局,误导操作者)。
|
|
274
|
+
let catalogDefaultConsumerId = null;
|
|
275
|
+
const rawDefault = record.catalogDefaultConsumerId;
|
|
276
|
+
if (rawDefault !== undefined && rawDefault !== null && rawDefault !== '') {
|
|
277
|
+
if (typeof rawDefault !== 'string' || !knownProfileIds.has(rawDefault)) {
|
|
278
|
+
fieldErrors.push({ path: path('catalogDefaultConsumerId'), message: '必须是本目录中存在的角色 id 或留空' });
|
|
279
|
+
return;
|
|
280
|
+
}
|
|
281
|
+
catalogDefaultConsumerId = rawDefault;
|
|
282
|
+
}
|
|
283
|
+
if (textOutputPolicy === undefined || voiceOutputPolicy === undefined)
|
|
284
|
+
return;
|
|
285
|
+
patches.push({
|
|
286
|
+
appId,
|
|
287
|
+
vcEnabled: record.vcEnabled === undefined ? true : record.vcEnabled,
|
|
288
|
+
textOutputPolicy,
|
|
289
|
+
voiceOutputPolicy,
|
|
290
|
+
realtimeVoiceEnabled: record.realtimeVoiceEnabled,
|
|
291
|
+
catalogDefaultConsumerId,
|
|
292
|
+
});
|
|
293
|
+
});
|
|
294
|
+
return fieldErrors.length > 0 ? { ok: false, fieldErrors } : { ok: true, patches };
|
|
295
|
+
}
|
|
203
296
|
function snapshotBody(snapshot, agentOptions) {
|
|
204
297
|
return {
|
|
205
298
|
ok: true,
|
|
206
|
-
listenerBotAppId: snapshot.listenerBotAppId,
|
|
207
299
|
revision: snapshot.revision,
|
|
208
300
|
catalogState: snapshot.catalogState,
|
|
209
301
|
defaultMode: snapshot.defaultMode,
|
|
@@ -211,22 +303,16 @@ function snapshotBody(snapshot, agentOptions) {
|
|
|
211
303
|
profiles: snapshot.profiles.map(vcMeetingConsumerProfileToDto),
|
|
212
304
|
agentOptions,
|
|
213
305
|
templateCatalog: VC_MEETING_CONSUMER_PROFILE_TEMPLATE_CATALOG,
|
|
214
|
-
...(snapshot.migrationOffer ? { migrationOffer: snapshot.migrationOffer } : {}),
|
|
215
306
|
};
|
|
216
307
|
}
|
|
217
|
-
export async function handleVcMeetingConsumerProfilesGet(
|
|
218
|
-
if (!listenerBotAppId.trim()) {
|
|
219
|
-
return { status: 400, body: { ok: false, error: 'listenerBotAppId_required' } };
|
|
220
|
-
}
|
|
308
|
+
export async function handleVcMeetingConsumerProfilesGet(deps) {
|
|
221
309
|
let snapshot;
|
|
222
310
|
try {
|
|
223
|
-
snapshot = await deps.
|
|
311
|
+
snapshot = await deps.readCatalog();
|
|
224
312
|
}
|
|
225
313
|
catch {
|
|
226
314
|
return { status: 503, body: { ok: false, error: 'config_unavailable' } };
|
|
227
315
|
}
|
|
228
|
-
if (!snapshot)
|
|
229
|
-
return { status: 404, body: { ok: false, error: 'bot_not_in_config' } };
|
|
230
316
|
return { status: 200, body: snapshotBody(snapshot, buildVcMeetingAgentOptions(deps)) };
|
|
231
317
|
}
|
|
232
318
|
export async function handleVcMeetingConsumerProfilesPut(payload, deps) {
|
|
@@ -234,10 +320,6 @@ export async function handleVcMeetingConsumerProfilesPut(payload, deps) {
|
|
|
234
320
|
return { status: 400, body: { ok: false, error: 'bad_json' } };
|
|
235
321
|
}
|
|
236
322
|
const request = payload;
|
|
237
|
-
const listenerBotAppId = typeof request.listenerBotAppId === 'string' ? request.listenerBotAppId.trim() : '';
|
|
238
|
-
if (!listenerBotAppId) {
|
|
239
|
-
return { status: 400, body: { ok: false, error: 'listenerBotAppId_required' } };
|
|
240
|
-
}
|
|
241
323
|
if (typeof request.expectedRevision !== 'string' || !request.expectedRevision) {
|
|
242
324
|
return { status: 400, body: { ok: false, error: 'expectedRevision_required' } };
|
|
243
325
|
}
|
|
@@ -274,13 +356,11 @@ export async function handleVcMeetingConsumerProfilesPut(payload, deps) {
|
|
|
274
356
|
}
|
|
275
357
|
let current;
|
|
276
358
|
try {
|
|
277
|
-
current = await deps.
|
|
359
|
+
current = await deps.readCatalog();
|
|
278
360
|
}
|
|
279
361
|
catch {
|
|
280
362
|
return { status: 503, body: { ok: false, error: 'config_unavailable' } };
|
|
281
363
|
}
|
|
282
|
-
if (!current)
|
|
283
|
-
return { status: 404, body: { ok: false, error: 'bot_not_in_config' } };
|
|
284
364
|
const mapped = vcMeetingConsumerProfilesFromDtos(request.profiles, current.profiles);
|
|
285
365
|
if (!mapped.ok) {
|
|
286
366
|
return {
|
|
@@ -288,9 +368,23 @@ export async function handleVcMeetingConsumerProfilesPut(payload, deps) {
|
|
|
288
368
|
body: { ok: false, error: 'validation_failed', fieldErrors: mapped.fieldErrors },
|
|
289
369
|
};
|
|
290
370
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
371
|
+
let knownAppIds;
|
|
372
|
+
try {
|
|
373
|
+
knownAppIds = new Set(deps.loadBotConfigs().map(bot => bot.larkAppId));
|
|
374
|
+
}
|
|
375
|
+
catch {
|
|
376
|
+
knownAppIds = new Set();
|
|
377
|
+
}
|
|
378
|
+
const parsedPolicies = parseBotOutputPolicyPatches(request.botOutputPolicies, knownAppIds, new Set(mapped.profiles.map(profile => profile.id)));
|
|
379
|
+
if (!parsedPolicies.ok) {
|
|
380
|
+
return {
|
|
381
|
+
status: 422,
|
|
382
|
+
body: { ok: false, error: 'validation_failed', fieldErrors: parsedPolicies.fieldErrors },
|
|
383
|
+
};
|
|
384
|
+
}
|
|
385
|
+
// defaultConsumerIds 原样提交:未知/重复/agents-空组合以及「同时选中两个角色」
|
|
386
|
+
// 由 store 严格拒绝,本层不做静默过滤(与 store 的 fail-loud 语义保持一致)。
|
|
387
|
+
const updated = await deps.updateCatalog({
|
|
294
388
|
expectedRevision: request.expectedRevision,
|
|
295
389
|
defaultMode: request.defaultMode,
|
|
296
390
|
defaultConsumerIds: [...request.defaultConsumerIds],
|
|
@@ -310,17 +404,43 @@ export async function handleVcMeetingConsumerProfilesPut(payload, deps) {
|
|
|
310
404
|
},
|
|
311
405
|
};
|
|
312
406
|
}
|
|
313
|
-
if (updated.reason === 'bot_not_in_config') {
|
|
314
|
-
return { status: 404, body: { ok: false, error: 'bot_not_in_config' } };
|
|
315
|
-
}
|
|
316
407
|
return { status: 503, body: { ok: false, error: 'config_unavailable' } };
|
|
317
408
|
}
|
|
409
|
+
// Per-bot switches go to bots.json through the locked RMW path. The shared
|
|
410
|
+
// catalog is already committed at this point; a policy failure is surfaced
|
|
411
|
+
// loudly (503) so the UI re-GETs and shows what actually landed.
|
|
412
|
+
const policyFailures = [];
|
|
413
|
+
for (const patch of parsedPolicies.patches) {
|
|
414
|
+
try {
|
|
415
|
+
const applied = await deps.applyBotOutputPolicy(patch);
|
|
416
|
+
if (!applied.ok) {
|
|
417
|
+
policyFailures.push({
|
|
418
|
+
path: `botOutputPolicies[${patch.appId}]`,
|
|
419
|
+
message: applied.reason ?? 'write_failed',
|
|
420
|
+
});
|
|
421
|
+
}
|
|
422
|
+
}
|
|
423
|
+
catch (err) {
|
|
424
|
+
policyFailures.push({
|
|
425
|
+
path: `botOutputPolicies[${patch.appId}]`,
|
|
426
|
+
message: err instanceof Error ? err.message : String(err),
|
|
427
|
+
});
|
|
428
|
+
}
|
|
429
|
+
}
|
|
318
430
|
try {
|
|
319
|
-
|
|
431
|
+
// 共享目录不需要 reload:它在 daemon 侧走 mtime 缓存的 live 读,下一个会议
|
|
432
|
+
// 事件自然生效。只有落进 bots.json 的 per-bot 开关需要通知对应 daemon。
|
|
433
|
+
await deps.reloadDaemons(parsedPolicies.patches.map(patch => patch.appId));
|
|
320
434
|
}
|
|
321
435
|
catch {
|
|
322
436
|
// 配置已落盘;reload 失败只影响热加载时效,下次 daemon 重启/重载自然收敛。
|
|
323
437
|
}
|
|
438
|
+
if (policyFailures.length > 0) {
|
|
439
|
+
return {
|
|
440
|
+
status: 503,
|
|
441
|
+
body: { ok: false, error: 'bot_policy_write_failed', fieldErrors: policyFailures },
|
|
442
|
+
};
|
|
443
|
+
}
|
|
324
444
|
return { status: 200, body: snapshotBody(updated.snapshot, buildVcMeetingAgentOptions(deps)) };
|
|
325
445
|
}
|
|
326
446
|
//# sourceMappingURL=vc-consumer-profiles-api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vc-consumer-profiles-api.js","sourceRoot":"","sources":["../../src/dashboard/vc-consumer-profiles-api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vc-consumer-profiles-api.js","sourceRoot":"","sources":["../../src/dashboard/vc-consumer-profiles-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,31 @@ export interface TerminalControlState {
|
|
|
6
6
|
reused?: boolean;
|
|
7
7
|
/** Trusted platform owners have a fixed role, not a releasable takeover lease. */
|
|
8
8
|
fixed?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Which acquisition the lease is currently on. Present only when this login
|
|
11
|
+
* owns a real lease.
|
|
12
|
+
*
|
|
13
|
+
* It carries no authority — it is an equality nonce for compare-and-swap
|
|
14
|
+
* release. The lease lives on (session x login), so a second pane of the SAME
|
|
15
|
+
* login reuses the very same lease: without naming the acquisition, a late
|
|
16
|
+
* compensation for a pane that is already gone would release the lease the
|
|
17
|
+
* user is actively typing into.
|
|
18
|
+
*
|
|
19
|
+
* The value is minted by THIS browser before the takeover goes out (see
|
|
20
|
+
* {@link newTerminalAcquisitionId}) — a server-minted one would only ever come
|
|
21
|
+
* back on a successful response, i.e. never in the one case that needs it.
|
|
22
|
+
*/
|
|
23
|
+
acquisition?: string;
|
|
9
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* A fresh acquisition id for one takeover.
|
|
27
|
+
*
|
|
28
|
+
* Minted BEFORE the POST leaves, which is the whole point: if the response is
|
|
29
|
+
* lost the pane still knows exactly which acquisition it may have caused, and
|
|
30
|
+
* can compensate for that one and no other. Opaque and non-secret — the server
|
|
31
|
+
* only ever compares it for equality against the acquisition it bound.
|
|
32
|
+
*/
|
|
33
|
+
export declare function newTerminalAcquisitionId(): string;
|
|
10
34
|
export interface PreviewInteractionState {
|
|
11
35
|
mode: 'preview' | 'interactive';
|
|
12
36
|
label: string;
|
|
@@ -15,8 +39,16 @@ export interface PreviewInteractionState {
|
|
|
15
39
|
}
|
|
16
40
|
export interface WorkbenchApi {
|
|
17
41
|
getTerminalControl(sessionId: string, signal?: AbortSignal): Promise<TerminalControlState>;
|
|
18
|
-
|
|
19
|
-
|
|
42
|
+
/** `acquisitionId` names THIS takeover. The caller mints it before calling so
|
|
43
|
+
* a lost response still leaves it able to compensate for exactly this
|
|
44
|
+
* acquisition; the server binds it to the lease. */
|
|
45
|
+
takeoverTerminal(sessionId: string, signal?: AbortSignal, acquisitionId?: string): Promise<TerminalControlState>;
|
|
46
|
+
/** `expectedAcquisition` turns the release into a compare-and-swap: the server
|
|
47
|
+
* only gives the lease up while it is still the acquisition the caller names,
|
|
48
|
+
* and answers `control_lease_superseded` once somebody else has taken it over.
|
|
49
|
+
* Compensation paths (a receipt that outlived its pane, a pane closing before
|
|
50
|
+
* its socket ever bridged) must pass it. */
|
|
51
|
+
releaseTerminal(sessionId: string, signal?: AbortSignal, expectedAcquisition?: string): Promise<TerminalControlState>;
|
|
20
52
|
getPreviewInteraction(sessionId: string, signal?: AbortSignal): Promise<PreviewInteractionState>;
|
|
21
53
|
unlockPreview(sessionId: string, signal?: AbortSignal): Promise<PreviewInteractionState>;
|
|
22
54
|
touchPreview(sessionId: string, signal?: AbortSignal): Promise<PreviewInteractionState>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-workbench-api.d.ts","sourceRoot":"","sources":["../../../src/dashboard/web/agent-workbench-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,UAAU,GAAG,YAAY,CAAC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-workbench-api.d.ts","sourceRoot":"","sources":["../../../src/dashboard/web/agent-workbench-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,UAAU,GAAG,YAAY,CAAC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;;;;;;;;;OAaG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAajD;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC3F;;yDAEqD;IACrD,gBAAgB,CACd,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACjC;;;;iDAI6C;IAC7C,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,EACpB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACjC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACjG,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACzF,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACxF,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACvF,YAAY,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAC;IACvE;;;;;;;uEAOmE;IACnE,mBAAmB,CACjB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAC7D;8EAC0E;IAC1E,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE;;;;6BAIyB;IACzB,eAAe,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;CACxE;AAED,qBAAa,iBAAkB,SAAQ,KAAK;aAExB,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;IAC5B,0CAA0C;aAC1B,iBAAiB,CAAC,EAAE,MAAM;gBAH1B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM;IAC5B,0CAA0C;IAC1B,iBAAiB,CAAC,EAAE,MAAM,YAAA;CAK7C;AA8JD,wBAAgB,kBAAkB,CAAC,SAAS,GAAE,OAAO,KAAa,GAAG,YAAY,CA+GhF"}
|