botmux 3.13.0 → 3.14.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 +1 -1
- package/README.md +25 -1
- package/dist/.runtime-build-id +1 -1
- package/dist/adapters/adopt-route.d.ts +58 -0
- package/dist/adapters/adopt-route.d.ts.map +1 -1
- package/dist/adapters/adopt-route.js +136 -0
- package/dist/adapters/adopt-route.js.map +1 -1
- package/dist/adapters/backend/capabilities.js +1 -1
- package/dist/adapters/backend/capabilities.js.map +1 -1
- package/dist/adapters/backend/herdr-backend.d.ts +1 -1
- package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
- package/dist/adapters/backend/herdr-backend.js +2 -1
- package/dist/adapters/backend/herdr-backend.js.map +1 -1
- package/dist/adapters/backend/riff-backend.d.ts +97 -0
- package/dist/adapters/backend/riff-backend.d.ts.map +1 -1
- package/dist/adapters/backend/riff-backend.js +380 -66
- 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 +16 -2
- package/dist/adapters/backend/sandbox.js.map +1 -1
- package/dist/adapters/backend/tmux-backend.d.ts +12 -13
- package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-backend.js +113 -53
- package/dist/adapters/backend/tmux-backend.js.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.d.ts +4 -3
- package/dist/adapters/backend/tmux-pipe-backend.d.ts.map +1 -1
- package/dist/adapters/backend/tmux-pipe-backend.js +12 -9
- package/dist/adapters/backend/tmux-pipe-backend.js.map +1 -1
- package/dist/adapters/backend/zellij-backend.d.ts +2 -3
- package/dist/adapters/backend/zellij-backend.d.ts.map +1 -1
- package/dist/adapters/backend/zellij-backend.js +6 -13
- package/dist/adapters/backend/zellij-backend.js.map +1 -1
- package/dist/adapters/backend/zellij-observe-backend.d.ts +2 -1
- package/dist/adapters/backend/zellij-observe-backend.d.ts.map +1 -1
- package/dist/adapters/backend/zellij-observe-backend.js +6 -3
- package/dist/adapters/backend/zellij-observe-backend.js.map +1 -1
- package/dist/adapters/backend/zmx-backend.d.ts.map +1 -1
- package/dist/adapters/backend/zmx-backend.js +40 -18
- package/dist/adapters/backend/zmx-backend.js.map +1 -1
- package/dist/adapters/cli/claude-code.d.ts.map +1 -1
- package/dist/adapters/cli/claude-code.js +12 -1
- package/dist/adapters/cli/claude-code.js.map +1 -1
- package/dist/adapters/cli/codex.d.ts.map +1 -1
- package/dist/adapters/cli/codex.js +3 -2
- package/dist/adapters/cli/codex.js.map +1 -1
- package/dist/adapters/cli/dsh.d.ts +4 -0
- package/dist/adapters/cli/dsh.d.ts.map +1 -0
- package/dist/adapters/cli/dsh.js +96 -0
- package/dist/adapters/cli/dsh.js.map +1 -0
- package/dist/adapters/cli/fs-policy.d.ts.map +1 -1
- package/dist/adapters/cli/fs-policy.js +5 -0
- package/dist/adapters/cli/fs-policy.js.map +1 -1
- package/dist/adapters/cli/opencode.d.ts +52 -1
- package/dist/adapters/cli/opencode.d.ts.map +1 -1
- package/dist/adapters/cli/opencode.js +117 -76
- package/dist/adapters/cli/opencode.js.map +1 -1
- package/dist/adapters/cli/opencode2.d.ts +4 -0
- package/dist/adapters/cli/opencode2.d.ts.map +1 -0
- package/dist/adapters/cli/opencode2.js +137 -0
- package/dist/adapters/cli/opencode2.js.map +1 -0
- package/dist/adapters/cli/read-isolation.d.ts +1 -1
- package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
- package/dist/adapters/cli/read-isolation.js +5 -2
- package/dist/adapters/cli/read-isolation.js.map +1 -1
- package/dist/adapters/cli/registry.d.ts +7 -1
- package/dist/adapters/cli/registry.d.ts.map +1 -1
- package/dist/adapters/cli/registry.js +19 -6
- package/dist/adapters/cli/registry.js.map +1 -1
- package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
- package/dist/adapters/cli/shared-hints.js +13 -0
- package/dist/adapters/cli/shared-hints.js.map +1 -1
- package/dist/adapters/cli/types.d.ts +24 -3
- package/dist/adapters/cli/types.d.ts.map +1 -1
- package/dist/adapters/hook-command.d.ts +8 -0
- package/dist/adapters/hook-command.d.ts.map +1 -1
- package/dist/adapters/hook-command.js +11 -0
- package/dist/adapters/hook-command.js.map +1 -1
- package/dist/adapters/hook-installer.d.ts +16 -1
- package/dist/adapters/hook-installer.d.ts.map +1 -1
- package/dist/adapters/hook-installer.js +232 -2
- package/dist/adapters/hook-installer.js.map +1 -1
- package/dist/bot-registry.d.ts +116 -8
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +52 -4
- package/dist/bot-registry.js.map +1 -1
- package/dist/cli/pm2-start-transaction.d.ts +14 -0
- package/dist/cli/pm2-start-transaction.d.ts.map +1 -1
- package/dist/cli/pm2-start-transaction.js +25 -9
- package/dist/cli/pm2-start-transaction.js.map +1 -1
- package/dist/cli/restart-failure-notification.d.ts +54 -0
- package/dist/cli/restart-failure-notification.d.ts.map +1 -0
- package/dist/cli/restart-failure-notification.js +142 -0
- package/dist/cli/restart-failure-notification.js.map +1 -0
- package/dist/cli/restart-failure-owner.d.ts +20 -0
- package/dist/cli/restart-failure-owner.d.ts.map +1 -0
- package/dist/cli/restart-failure-owner.js +27 -0
- package/dist/cli/restart-failure-owner.js.map +1 -0
- package/dist/cli/restart-shutdown-preflight.d.ts +24 -0
- package/dist/cli/restart-shutdown-preflight.d.ts.map +1 -0
- package/dist/cli/restart-shutdown-preflight.js +105 -0
- package/dist/cli/restart-shutdown-preflight.js.map +1 -0
- package/dist/cli/send-dispatch.d.ts +26 -0
- package/dist/cli/send-dispatch.d.ts.map +1 -1
- package/dist/cli/send-dispatch.js +30 -0
- package/dist/cli/send-dispatch.js.map +1 -1
- package/dist/cli.d.ts +4 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +665 -399
- package/dist/cli.js.map +1 -1
- package/dist/codex-app-runner.js +38 -15
- package/dist/codex-app-runner.js.map +1 -1
- package/dist/codex-rpc-lifecycle.d.ts +14 -2
- package/dist/codex-rpc-lifecycle.d.ts.map +1 -1
- package/dist/codex-rpc-lifecycle.js +13 -3
- package/dist/codex-rpc-lifecycle.js.map +1 -1
- package/dist/core/ask-broker.d.ts +3 -0
- package/dist/core/ask-broker.d.ts.map +1 -1
- package/dist/core/ask-broker.js +29 -7
- package/dist/core/ask-broker.js.map +1 -1
- package/dist/core/ask-hook/registry.d.ts.map +1 -1
- package/dist/core/ask-hook/registry.js +4 -0
- package/dist/core/ask-hook/registry.js.map +1 -1
- package/dist/core/ask-types.d.ts +5 -1
- package/dist/core/ask-types.d.ts.map +1 -1
- package/dist/core/ask-types.js.map +1 -1
- package/dist/core/browser-restart.d.ts +112 -0
- package/dist/core/browser-restart.d.ts.map +1 -0
- package/dist/core/browser-restart.js +233 -0
- package/dist/core/browser-restart.js.map +1 -0
- package/dist/core/command-handler.d.ts +19 -11
- package/dist/core/command-handler.d.ts.map +1 -1
- package/dist/core/command-handler.js +237 -43
- package/dist/core/command-handler.js.map +1 -1
- package/dist/core/current-turn-provenance.d.ts.map +1 -1
- package/dist/core/current-turn-provenance.js +7 -27
- package/dist/core/current-turn-provenance.js.map +1 -1
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +317 -10
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/dispatch-registry.d.ts.map +1 -1
- package/dist/core/dispatch-registry.js +6 -0
- package/dist/core/dispatch-registry.js.map +1 -1
- package/dist/core/dispatch-report-binding.d.ts +31 -0
- package/dist/core/dispatch-report-binding.d.ts.map +1 -0
- package/dist/core/dispatch-report-binding.js +88 -0
- package/dist/core/dispatch-report-binding.js.map +1 -0
- package/dist/core/doc-comment-prompt.d.ts +2 -0
- package/dist/core/doc-comment-prompt.d.ts.map +1 -1
- package/dist/core/doc-comment-prompt.js +6 -0
- package/dist/core/doc-comment-prompt.js.map +1 -1
- package/dist/core/host-overload-alert.d.ts +25 -1
- package/dist/core/host-overload-alert.d.ts.map +1 -1
- package/dist/core/host-overload-alert.js +69 -8
- package/dist/core/host-overload-alert.js.map +1 -1
- package/dist/core/local-terminal-opener.js +1 -1
- package/dist/core/local-terminal-opener.js.map +1 -1
- package/dist/core/managed-origin-capability.d.ts +7 -6
- package/dist/core/managed-origin-capability.d.ts.map +1 -1
- package/dist/core/managed-origin-capability.js +32 -1
- package/dist/core/managed-origin-capability.js.map +1 -1
- package/dist/core/passthrough-commands.d.ts.map +1 -1
- package/dist/core/passthrough-commands.js +3 -2
- package/dist/core/passthrough-commands.js.map +1 -1
- package/dist/core/plugins/materializer.d.ts.map +1 -1
- package/dist/core/plugins/materializer.js +1 -0
- package/dist/core/plugins/materializer.js.map +1 -1
- package/dist/core/producer-quiescence.d.ts +70 -0
- package/dist/core/producer-quiescence.d.ts.map +1 -0
- package/dist/core/producer-quiescence.js +90 -0
- package/dist/core/producer-quiescence.js.map +1 -0
- package/dist/core/raw-command-write-options.d.ts +10 -0
- package/dist/core/raw-command-write-options.d.ts.map +1 -0
- package/dist/core/raw-command-write-options.js +23 -0
- package/dist/core/raw-command-write-options.js.map +1 -0
- package/dist/core/raw-command-writer.d.ts +4 -0
- package/dist/core/raw-command-writer.d.ts.map +1 -1
- package/dist/core/raw-command-writer.js +15 -6
- package/dist/core/raw-command-writer.js.map +1 -1
- package/dist/core/reply-target.d.ts +11 -0
- package/dist/core/reply-target.d.ts.map +1 -1
- package/dist/core/reply-target.js +22 -7
- package/dist/core/reply-target.js.map +1 -1
- package/dist/core/report-session-relay.d.ts +53 -0
- package/dist/core/report-session-relay.d.ts.map +1 -0
- package/dist/core/report-session-relay.js +116 -0
- package/dist/core/report-session-relay.js.map +1 -0
- package/dist/core/session-discovery.d.ts +5 -0
- package/dist/core/session-discovery.d.ts.map +1 -1
- package/dist/core/session-discovery.js +13 -0
- package/dist/core/session-discovery.js.map +1 -1
- package/dist/core/session-group-birth.d.ts +7 -0
- package/dist/core/session-group-birth.d.ts.map +1 -0
- package/dist/core/session-group-birth.js +145 -0
- package/dist/core/session-group-birth.js.map +1 -0
- package/dist/core/session-manager.d.ts +16 -21
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +140 -21
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/trigger-session.d.ts.map +1 -1
- package/dist/core/trigger-session.js +18 -3
- package/dist/core/trigger-session.js.map +1 -1
- package/dist/core/types.d.ts +18 -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 +63 -11
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +241 -13
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts +33 -0
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +900 -137
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/auth.d.ts +20 -0
- package/dist/dashboard/auth.d.ts.map +1 -1
- package/dist/dashboard/auth.js +86 -1
- package/dist/dashboard/auth.js.map +1 -1
- 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 +4 -1
- package/dist/dashboard/bot-payload.js.map +1 -1
- package/dist/dashboard/federation-spoke-api.d.ts.map +1 -1
- package/dist/dashboard/federation-spoke-api.js +27 -3
- package/dist/dashboard/federation-spoke-api.js.map +1 -1
- package/dist/dashboard/feedback-analytics-api.d.ts +6 -0
- package/dist/dashboard/feedback-analytics-api.d.ts.map +1 -0
- package/dist/dashboard/feedback-analytics-api.js +39 -0
- package/dist/dashboard/feedback-analytics-api.js.map +1 -0
- package/dist/dashboard/session-action-timeout.d.ts +3 -0
- package/dist/dashboard/session-action-timeout.d.ts.map +1 -0
- package/dist/dashboard/session-action-timeout.js +12 -0
- package/dist/dashboard/session-action-timeout.js.map +1 -0
- package/dist/dashboard/vc-consumer-profiles-api.d.ts +9 -3
- package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -1
- package/dist/dashboard/vc-consumer-profiles-api.js +2 -1
- 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 +48 -5
- package/dist/dashboard/web/app.js.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.d.ts +4 -0
- package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
- package/dist/dashboard/web/bot-defaults-page.js +273 -36
- package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
- package/dist/dashboard/web/bot-defaults.d.ts +6 -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/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/feedback-page.d.ts +3 -0
- package/dist/dashboard/web/feedback-page.d.ts.map +1 -0
- package/dist/dashboard/web/feedback-page.js +34 -0
- package/dist/dashboard/web/feedback-page.js.map +1 -0
- package/dist/dashboard/web/groups-page.d.ts.map +1 -1
- package/dist/dashboard/web/groups-page.js +7 -2
- 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 +114 -22
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/team-federation-page.d.ts.map +1 -1
- package/dist/dashboard/web/team-federation-page.js +26 -2
- package/dist/dashboard/web/team-federation-page.js.map +1 -1
- package/dist/dashboard/web/team-federation.d.ts +19 -0
- package/dist/dashboard/web/team-federation.d.ts.map +1 -1
- package/dist/dashboard/web/team-federation.js +3 -0
- package/dist/dashboard/web/team-federation.js.map +1 -1
- package/dist/dashboard/web/update-action.d.ts +8 -0
- package/dist/dashboard/web/update-action.d.ts.map +1 -1
- package/dist/dashboard/web/update-action.js +10 -0
- package/dist/dashboard/web/update-action.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 +58 -9
- package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -1
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-4RENHE7J.js +10 -0
- package/dist/dashboard-web/chunks/chunk-2WQDS65D.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-CU4SUKK3.js → chunk-6O7KXFD2.js} +1 -1
- package/dist/dashboard-web/chunks/chunk-G5XGBCM6.js +1 -0
- package/dist/dashboard-web/chunks/{chunk-6JTZJRQJ.js → chunk-Q2MT4VWH.js} +15 -15
- package/dist/dashboard-web/chunks/{chunk-5QJB24I2.js → chunk-U3ZFSO7E.js} +1 -1
- package/dist/dashboard-web/chunks/connectors-page-2KZO5KSJ.js +1 -0
- package/dist/dashboard-web/chunks/feedback-page-CLVTOLLO.js +1 -0
- package/dist/dashboard-web/chunks/groups-page-HLASRTSY.js +8 -0
- package/dist/dashboard-web/chunks/{insights-page-EVGGJI5L.js → insights-page-4RPU2CRU.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-HRGR2ENP.js → monitor-room-OTKQ2CXK.js} +1 -1
- package/dist/dashboard-web/chunks/monitoring-page-IJPUB6JT.js +2 -0
- package/dist/dashboard-web/chunks/office-page-QSR3J44Y.js +1 -0
- package/dist/dashboard-web/chunks/overview-page-6OK63V4V.js +1 -0
- package/dist/dashboard-web/chunks/roles-page-6NWJMOB5.js +1 -0
- package/dist/dashboard-web/chunks/schedules-page-6I3LNXD4.js +1 -0
- package/dist/dashboard-web/chunks/{sessions-page-DXBCDWCS.js → sessions-page-B2TXGJDO.js} +1 -1
- package/dist/dashboard-web/chunks/settings-page-6KJADSC6.js +2 -0
- package/dist/dashboard-web/chunks/{skills-page-2QAVB2SA.js → skills-page-M2Q6L5CB.js} +1 -1
- package/dist/dashboard-web/chunks/team-federation-page-7I7FDE3B.js +1 -0
- package/dist/dashboard-web/chunks/{v3-page-AY35LKCX.js → v3-page-HQXRL65L.js} +1 -1
- package/dist/dashboard-web/chunks/whiteboards-page-LQKC4TAZ.js +1 -0
- package/dist/dashboard-web/style.css +35 -0
- package/dist/dashboard.js +199 -12
- package/dist/dashboard.js.map +1 -1
- package/dist/desktop/shared/shell-path-probes.d.ts +1 -1
- package/dist/desktop/shared/shell-path-probes.js +2 -2
- package/dist/desktop/shared/shell-path-probes.js.map +1 -1
- package/dist/dsh-runner.d.ts +3 -0
- package/dist/dsh-runner.d.ts.map +1 -0
- package/dist/dsh-runner.js +666 -0
- package/dist/dsh-runner.js.map +1 -0
- package/dist/global-config.d.ts +24 -0
- package/dist/global-config.d.ts.map +1 -1
- package/dist/global-config.js +35 -0
- package/dist/global-config.js.map +1 -1
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +25 -6
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.d.ts.map +1 -1
- package/dist/i18n/zh.js +25 -6
- package/dist/i18n/zh.js.map +1 -1
- package/dist/im/lark/ask-card.d.ts +3 -1
- package/dist/im/lark/ask-card.d.ts.map +1 -1
- package/dist/im/lark/ask-card.js +61 -5
- package/dist/im/lark/ask-card.js.map +1 -1
- package/dist/im/lark/card-builder.d.ts.map +1 -1
- package/dist/im/lark/card-builder.js +13 -6
- package/dist/im/lark/card-builder.js.map +1 -1
- package/dist/im/lark/card-handler.d.ts +2 -1
- package/dist/im/lark/card-handler.d.ts.map +1 -1
- package/dist/im/lark/card-handler.js +145 -5
- package/dist/im/lark/card-handler.js.map +1 -1
- package/dist/im/lark/event-dispatcher.d.ts +18 -0
- package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
- package/dist/im/lark/event-dispatcher.js +36 -9
- package/dist/im/lark/event-dispatcher.js.map +1 -1
- package/dist/im/lark/md-card.d.ts +18 -0
- package/dist/im/lark/md-card.d.ts.map +1 -1
- package/dist/im/lark/md-card.js +21 -0
- package/dist/im/lark/md-card.js.map +1 -1
- package/dist/im/lark/relay-target-routing.d.ts.map +1 -1
- package/dist/im/lark/relay-target-routing.js +3 -2
- package/dist/im/lark/relay-target-routing.js.map +1 -1
- package/dist/im/lark/reply-mode-command.d.ts.map +1 -1
- package/dist/im/lark/reply-mode-command.js +19 -8
- package/dist/im/lark/reply-mode-command.js.map +1 -1
- package/dist/im/lark/skill-feedback-card.d.ts +15 -0
- package/dist/im/lark/skill-feedback-card.d.ts.map +1 -0
- package/dist/im/lark/skill-feedback-card.js +149 -0
- package/dist/im/lark/skill-feedback-card.js.map +1 -0
- package/dist/services/bot-config-store.d.ts +10 -1
- package/dist/services/bot-config-store.d.ts.map +1 -1
- package/dist/services/bot-config-store.js +103 -3
- package/dist/services/bot-config-store.js.map +1 -1
- package/dist/services/bridge-fallback-gate.d.ts +14 -0
- package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
- package/dist/services/bridge-fallback-gate.js +15 -0
- package/dist/services/bridge-fallback-gate.js.map +1 -1
- package/dist/services/codex-reasoning-effort.d.ts +9 -0
- package/dist/services/codex-reasoning-effort.d.ts.map +1 -0
- package/dist/services/codex-reasoning-effort.js +23 -0
- package/dist/services/codex-reasoning-effort.js.map +1 -0
- package/dist/services/codex-service-tier.d.ts +1 -1
- package/dist/services/codex-service-tier.d.ts.map +1 -1
- package/dist/services/codex-transcript.d.ts +9 -0
- package/dist/services/codex-transcript.d.ts.map +1 -1
- package/dist/services/codex-transcript.js +13 -6
- package/dist/services/codex-transcript.js.map +1 -1
- package/dist/services/feed-group-tagger.d.ts +15 -0
- package/dist/services/feed-group-tagger.d.ts.map +1 -0
- package/dist/services/feed-group-tagger.js +348 -0
- package/dist/services/feed-group-tagger.js.map +1 -0
- package/dist/services/feedback-analytics.d.ts +82 -0
- package/dist/services/feedback-analytics.d.ts.map +1 -0
- package/dist/services/feedback-analytics.js +95 -0
- package/dist/services/feedback-analytics.js.map +1 -0
- package/dist/services/feedback-outbox.d.ts +24 -0
- package/dist/services/feedback-outbox.d.ts.map +1 -0
- package/dist/services/feedback-outbox.js +12 -0
- package/dist/services/feedback-outbox.js.map +1 -0
- package/dist/services/feedback-policy-resolver.d.ts +56 -0
- package/dist/services/feedback-policy-resolver.d.ts.map +1 -0
- package/dist/services/feedback-policy-resolver.js +156 -0
- package/dist/services/feedback-policy-resolver.js.map +1 -0
- package/dist/services/feedback-policy.d.ts +41 -0
- package/dist/services/feedback-policy.d.ts.map +1 -0
- package/dist/services/feedback-policy.js +102 -0
- package/dist/services/feedback-policy.js.map +1 -0
- package/dist/services/feedback-webhook-dispatcher.d.ts +76 -0
- package/dist/services/feedback-webhook-dispatcher.d.ts.map +1 -0
- package/dist/services/feedback-webhook-dispatcher.js +237 -0
- package/dist/services/feedback-webhook-dispatcher.js.map +1 -0
- package/dist/services/grant-prefs-store.d.ts +3 -0
- package/dist/services/grant-prefs-store.d.ts.map +1 -1
- package/dist/services/grant-prefs-store.js +30 -1
- package/dist/services/grant-prefs-store.js.map +1 -1
- package/dist/services/groups-store.d.ts +14 -0
- package/dist/services/groups-store.d.ts.map +1 -1
- package/dist/services/groups-store.js +23 -0
- package/dist/services/groups-store.js.map +1 -1
- package/dist/services/local-cli-opener.d.ts +1 -1
- package/dist/services/local-cli-opener.d.ts.map +1 -1
- package/dist/services/local-cli-opener.js +2 -0
- package/dist/services/local-cli-opener.js.map +1 -1
- package/dist/services/prompt-context-store.d.ts +29 -0
- package/dist/services/prompt-context-store.d.ts.map +1 -0
- package/dist/services/prompt-context-store.js +205 -0
- package/dist/services/prompt-context-store.js.map +1 -0
- package/dist/services/session-group-avatar.d.ts +6 -0
- package/dist/services/session-group-avatar.d.ts.map +1 -0
- package/dist/services/session-group-avatar.js +96 -0
- package/dist/services/session-group-avatar.js.map +1 -0
- package/dist/services/session-group-title.d.ts +47 -0
- package/dist/services/session-group-title.d.ts.map +1 -0
- package/dist/services/session-group-title.js +226 -0
- package/dist/services/session-group-title.js.map +1 -0
- package/dist/services/session-groups-store.d.ts +30 -0
- package/dist/services/session-groups-store.d.ts.map +1 -0
- package/dist/services/session-groups-store.js +132 -0
- package/dist/services/session-groups-store.js.map +1 -0
- package/dist/services/session-store.d.ts +58 -0
- package/dist/services/session-store.d.ts.map +1 -1
- package/dist/services/session-store.js +174 -0
- package/dist/services/session-store.js.map +1 -1
- package/dist/services/skill-feedback-store.d.ts +252 -0
- package/dist/services/skill-feedback-store.d.ts.map +1 -0
- package/dist/services/skill-feedback-store.js +795 -0
- package/dist/services/skill-feedback-store.js.map +1 -0
- package/dist/services/skill-registry-store.d.ts +23 -0
- package/dist/services/skill-registry-store.d.ts.map +1 -1
- package/dist/services/skill-registry-store.js +93 -7
- package/dist/services/skill-registry-store.js.map +1 -1
- package/dist/services/team-store.d.ts +4 -0
- package/dist/services/team-store.d.ts.map +1 -1
- package/dist/services/team-store.js +16 -0
- package/dist/services/team-store.js.map +1 -1
- package/dist/services/traex-transcript.d.ts +32 -4
- package/dist/services/traex-transcript.d.ts.map +1 -1
- package/dist/services/traex-transcript.js +116 -8
- package/dist/services/traex-transcript.js.map +1 -1
- package/dist/services/trigger-types.d.ts +1 -1
- package/dist/services/trigger-types.d.ts.map +1 -1
- package/dist/services/trigger-types.js +2 -2
- package/dist/services/trigger-types.js.map +1 -1
- package/dist/services/turn-completion-events.d.ts +57 -0
- package/dist/services/turn-completion-events.d.ts.map +1 -0
- package/dist/services/turn-completion-events.js +179 -0
- package/dist/services/turn-completion-events.js.map +1 -0
- package/dist/services/vc-meeting-consumer-isolation.d.ts +21 -12
- package/dist/services/vc-meeting-consumer-isolation.d.ts.map +1 -1
- package/dist/services/vc-meeting-consumer-isolation.js +25 -19
- package/dist/services/vc-meeting-consumer-isolation.js.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts +8 -2
- package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts.map +1 -1
- package/dist/services/vc-meeting-consumer-profile-bootstrap.js +18 -10
- package/dist/services/vc-meeting-consumer-profile-bootstrap.js.map +1 -1
- package/dist/setup/bot-config-editor.d.ts.map +1 -1
- package/dist/setup/bot-config-editor.js +6 -0
- package/dist/setup/bot-config-editor.js.map +1 -1
- package/dist/setup/cli-availability.d.ts +2 -1
- package/dist/setup/cli-availability.d.ts.map +1 -1
- package/dist/setup/cli-availability.js +2 -1
- package/dist/setup/cli-availability.js.map +1 -1
- package/dist/setup/cli-selection.d.ts +8 -0
- package/dist/setup/cli-selection.d.ts.map +1 -1
- package/dist/setup/cli-selection.js +31 -0
- package/dist/setup/cli-selection.js.map +1 -1
- package/dist/setup/ensure-fonts.d.ts +5 -0
- package/dist/setup/ensure-fonts.d.ts.map +1 -1
- package/dist/setup/ensure-fonts.js +26 -1
- package/dist/setup/ensure-fonts.js.map +1 -1
- package/dist/setup/lark-scopes.json +3 -1
- package/dist/setup/open-platform-automation.d.ts +1 -1
- package/dist/setup/open-platform-automation.d.ts.map +1 -1
- package/dist/setup/open-platform-automation.js +15 -3
- package/dist/setup/open-platform-automation.js.map +1 -1
- package/dist/skills/definitions.d.ts +1 -1
- package/dist/skills/definitions.d.ts.map +1 -1
- package/dist/skills/definitions.js +9 -2
- package/dist/skills/definitions.js.map +1 -1
- package/dist/types.d.ts +10 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/user-token.d.ts +38 -0
- package/dist/utils/user-token.d.ts.map +1 -1
- package/dist/utils/user-token.js +76 -1
- package/dist/utils/user-token.js.map +1 -1
- package/dist/utils/web-terminal-scroll.d.ts +27 -0
- package/dist/utils/web-terminal-scroll.d.ts.map +1 -0
- package/dist/utils/web-terminal-scroll.js +60 -0
- package/dist/utils/web-terminal-scroll.js.map +1 -0
- package/dist/vc-agent/polling-source.d.ts +70 -0
- package/dist/vc-agent/polling-source.d.ts.map +1 -1
- package/dist/vc-agent/polling-source.js +115 -0
- package/dist/vc-agent/polling-source.js.map +1 -1
- package/dist/worker.js +237 -76
- package/dist/worker.js.map +1 -1
- package/dist/workflows/definition.d.ts +22 -22
- package/dist/workflows/events/payloads.d.ts +8 -8
- package/dist/workflows/events/schema.d.ts +20 -20
- package/dist/workflows/migration/v2-run-archive-schema.d.ts +20 -20
- package/package.json +1 -1
- package/dist/dashboard-web/chunks/bot-defaults-page-NQJFJ45Z.js +0 -10
- package/dist/dashboard-web/chunks/chunk-KEEYQ3WF.js +0 -1
- package/dist/dashboard-web/chunks/connectors-page-HADHZXXZ.js +0 -1
- package/dist/dashboard-web/chunks/groups-page-5TYF46RS.js +0 -8
- package/dist/dashboard-web/chunks/monitoring-page-LBU7TTTW.js +0 -2
- package/dist/dashboard-web/chunks/office-page-DF6RRBMN.js +0 -1
- package/dist/dashboard-web/chunks/overview-page-ZB6QH2EX.js +0 -1
- package/dist/dashboard-web/chunks/roles-page-ZBZGHIIF.js +0 -1
- package/dist/dashboard-web/chunks/schedules-page-NQVQC3QY.js +0 -1
- package/dist/dashboard-web/chunks/settings-page-E7NN4NVQ.js +0 -2
- package/dist/dashboard-web/chunks/team-federation-page-VGWL53AE.js +0 -1
- package/dist/dashboard-web/chunks/whiteboards-page-BNWUU4KG.js +0 -1
package/dist/core/ask-broker.js
CHANGED
|
@@ -414,22 +414,27 @@ export function submitAsk(args) {
|
|
|
414
414
|
return 'already_settled';
|
|
415
415
|
if (!isAuthorizedToAnswer(ask, args.by))
|
|
416
416
|
return 'unauthorized';
|
|
417
|
-
//
|
|
417
|
+
// 构建最终答案数组(严格按 ask.questions 规范化,长度恒 = questions.length)
|
|
418
418
|
let answers;
|
|
419
419
|
if (args.selections !== undefined) {
|
|
420
|
-
//
|
|
421
|
-
|
|
420
|
+
// 显式传入:拒绝超出真实问题数的输入(form_value 是外部输入,未绑定真实 question
|
|
421
|
+
// 的额外槽既不能影响确认策略、也不能进入结果);缺失的尾部按空集补齐(兼容旧 form
|
|
422
|
+
// 只回传前 N 问的情形)。随后逐问按 canonical 槽校验单选约束 + key 合法性。
|
|
423
|
+
if (args.selections.length > ask.questions.length)
|
|
424
|
+
return 'stale';
|
|
425
|
+
const canonical = [];
|
|
422
426
|
for (let i = 0; i < ask.questions.length; i++) {
|
|
423
427
|
const q = ask.questions[i];
|
|
424
|
-
const sel =
|
|
428
|
+
const sel = args.selections[i] ?? [];
|
|
425
429
|
if (!q.multiSelect && sel.length !== 1)
|
|
426
430
|
return 'stale';
|
|
427
|
-
// 校验每个选中的 key 必须在该问题的 options 中
|
|
428
431
|
for (const key of sel) {
|
|
429
432
|
if (!q.options.some((o) => o.key === key))
|
|
430
433
|
return 'stale';
|
|
431
434
|
}
|
|
435
|
+
canonical.push([...sel]);
|
|
432
436
|
}
|
|
437
|
+
answers = canonical;
|
|
433
438
|
}
|
|
434
439
|
else {
|
|
435
440
|
// 使用累积的勾选状态
|
|
@@ -443,6 +448,18 @@ export function submitAsk(args) {
|
|
|
443
448
|
}
|
|
444
449
|
answers = built;
|
|
445
450
|
}
|
|
451
|
+
// 空提交二次确认(防手滑):鉴权 + nonce + 单选约束都过了,若「每个问题都允许空集
|
|
452
|
+
// (全多选)」且当前所有问题都没选任何 key,第一次提交先不 settle,返回
|
|
453
|
+
// needs_empty_confirm 让卡片 arm 一个确认按钮;带 confirmEmpty 再点才真正落空答案。
|
|
454
|
+
// 只在全多选时触发:只要有一个单选问题,空集在上面的单选约束里已被判 stale,空提交
|
|
455
|
+
// 本就不是有效答案,不进二次确认(否则 arm 后二次点击必然 stale,形成死路)。
|
|
456
|
+
// answers 已按 questions 规范化(长度恒等、无越界槽),故 every() 只看真实问题。
|
|
457
|
+
if (!args.confirmEmpty
|
|
458
|
+
&& ask.questions.length > 0
|
|
459
|
+
&& ask.questions.every((q) => q.multiSelect)
|
|
460
|
+
&& answers.every((keys) => keys.length === 0)) {
|
|
461
|
+
return 'needs_empty_confirm';
|
|
462
|
+
}
|
|
446
463
|
settle(args.askId, {
|
|
447
464
|
kind: 'answered',
|
|
448
465
|
answers,
|
|
@@ -822,17 +839,22 @@ export function submitAskFromDesktop(args) {
|
|
|
822
839
|
return 'stale';
|
|
823
840
|
if (ask.settled)
|
|
824
841
|
return 'already_settled';
|
|
825
|
-
|
|
842
|
+
// 同 submitAsk:按 ask.questions 规范化,拒绝超长输入、缺失尾部补空集,越界槽不进结果。
|
|
843
|
+
if (args.selections.length > ask.questions.length)
|
|
844
|
+
return 'stale';
|
|
845
|
+
const canonical = [];
|
|
826
846
|
for (let i = 0; i < ask.questions.length; i++) {
|
|
827
847
|
const q = ask.questions[i];
|
|
828
|
-
const sel =
|
|
848
|
+
const sel = args.selections[i] ?? [];
|
|
829
849
|
if (!q.multiSelect && sel.length !== 1)
|
|
830
850
|
return 'stale';
|
|
831
851
|
for (const key of sel) {
|
|
832
852
|
if (!q.options.some((o) => o.key === key))
|
|
833
853
|
return 'stale';
|
|
834
854
|
}
|
|
855
|
+
canonical.push([...sel]);
|
|
835
856
|
}
|
|
857
|
+
const answers = canonical;
|
|
836
858
|
settle(args.askId, {
|
|
837
859
|
kind: 'answered',
|
|
838
860
|
answers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-broker.js","sourceRoot":"","sources":["../../src/core/ask-broker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,oBAAoB,GAGrB,MAAM,wBAAwB,CAAC;AAQhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD;;;;;8EAK8E;AAC9E,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AA6C5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;AACnD,IAAI,UAAU,GAA6B,IAAI,CAAC;AAEhD;;;wBAGwB;AACxB,IAAI,YAAY,GAA2B,IAAI,CAAC;AAEhD;;;+DAG+D;AAC/D,IAAI,kBAAkB,GAAW,oBAAoB,CAAC;AAEtD;mFACmF;AACnF,MAAM,UAAU,kBAAkB,CAAC,KAA6B;IAC9D,YAAY,GAAG,KAAK,CAAC;AACvB,CAAC;AAED;;kCAEkC;AAClC,MAAM,UAAU,2BAA2B,CAAC,EAAU;IACpD,kBAAkB,GAAG,EAAE,CAAC;AAC1B,CAAC;AAmBD;;;;;yDAKyD;AACzD,IAAI,cAAc,GAEP,IAAI,CAAC;AAEhB,uEAAuE;AACvE,MAAM,UAAU,iBAAiB,CAC/B,EAAsH;IAEtH,cAAc,GAAG,EAAE,CAAC;AACtB,CAAC;AAED;;;4EAG4E;AAC5E,SAAS,oBAAoB,CAAC,GAAoB,EAAE,EAAU,EAAE,KAAsB;IACpF,OAAO,cAAc,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC;AACvF,CAAC;AAED;;;iEAGiE;AACjE,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAEpC;0DAC0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,CAAoB;IACpD,UAAU,GAAG,CAAC,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,WAAW,CAAC,KAAqB;IAC/C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC;IAC9C,+DAA+D;IAC/D,2EAA2E;IAC3E,oEAAoE;IACpE,yEAAyE;IACzE,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,qEAAqE;IACrE,+EAA+E;IAC/E,MAAM,SAAS,GACb,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC;QACjC,KAAK,CAAC,SAAS,KAAK,SAAS;QAC7B,KAAK,CAAC,sBAAsB,KAAK,IAAI,CAAC;IACxC,+EAA+E;IAC/E,+EAA+E;IAC/E,+EAA+E;IAC/E,8EAA8E;IAC9E,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,UAAU,EAAE,CAAC;IAClD,8EAA8E;IAC9E,+EAA+E;IAC/E,oEAAoE;IACpE,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAElF,2EAA2E;IAC3E,+EAA+E;IAC/E,+EAA+E;IAC/E,+CAA+C;IAC/C,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;YAClC,6EAA6E;YAC7E,6CAA6C;YAC7C,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,EAAE,CAAC,wCAAwC,QAAQ,CAAC,KAAK,SAAS,MAAM,GAAG,CAAC,CAAC;gBACxF,OAAO,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClF,CAAC;YACD,8EAA8E;YAC9E,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,cAAc,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrE,MAAM,CAAC,IAAI,EAAE,CAAC,4DAA4D,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC5F,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YAClD,CAAC;YACD,yEAAyE;YACzE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,sEAAsE;YACtE,2EAA2E;YAC3E,qEAAqE;YACrE,wEAAwE;YACxE,MAAM,CAAC,IAAI,EAAE,CACX,wCAAwC,MAAM,kBAAkB,QAAQ,CAAC,KAAK,2BAA2B,CAC1G,CAAC;YACF,OAAO,OAAO,CAAC,OAAO,CAAY;gBAChC,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,iEAAiE;gBACzE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK;aACzD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAE/C,OAAO,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE;QACxC,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/F,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACpB,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC;QAExB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAuB,CAAC;QAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,EAAU,CAAC,CAAC;QAEtF,MAAM,GAAG,GAAoB;YAC3B,KAAK;YACL,MAAM;YACN,SAAS;YACT,UAAU;YACV,SAAS;YACT,KAAK;YACL,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS;YACT,UAAU;YACV,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,CAAC,OAAO,CAAC;YAClB,aAAa;YACb,UAAU;SACX,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACxB,yEAAyE;QACzE,qEAAqE;QACrE,IAAI,SAAS,EAAE,CAAC;YACd,mBAAmB,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,CAAC,IAAI,EAAE,CAAC,0CAA0C,KAAK,SAAS,MAAM,aAAa,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;QAC/G,CAAC;QACD,KAAK,cAAc,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;kFAEkF;AAClF,SAAS,YAAY,CAAC,GAAoB,EAAE,KAAqB;IAC/D,OAAO,CACL,GAAG,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QACjC,GAAG,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QACjC,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;QAC3B,GAAG,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa;QACzC,GAAG,CAAC,UAAU,KAAK,CAAC,KAAK,CAAC,UAAU,IAAI,MAAM,CAAC;QAC/C,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAClE,CAAC;AACJ,CAAC;AAED;;;0DAG0D;AAC1D,SAAS,cAAc,CAAC,EAA2B;IACjD,OAAO,IAAI,CAAC,SAAS,CACnB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACb,CAAC,EAAE,CAAC,CAAC,MAAM;QACX,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW;QAClB,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;KAC1C,CAAC,CAAC,CACJ,CAAC;AACJ,CAAC;AAED;;;qCAGqC;AACrC,MAAM,0BAA0B,GAAG,CAAC,CAAC;AACrC,gFAAgF;AAChF,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAE3C;;;;;;;;;;+BAU+B;AAC/B,SAAS,cAAc,CAAC,GAAoB;IAC1C,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,0BAA0B,EAAE,OAAO,EAAE,EAAE,CAAC;YACvE,4EAA4E;YAC5E,0DAA0D;YAC1D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO;YAClC,IAAI,CAAC;gBACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,UAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;oBACxB,GAAG,CAAC,aAAa,GAAG,SAAS,CAAC;oBAC9B,IAAI,GAAG,CAAC,SAAS;wBAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAC9C,CAAC;gBACD,OAAO,CAAC,kDAAkD;YAC5D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,SAAS,GAAG,GAAG,YAAY,gBAAgB,IAAI,GAAG,CAAC,SAAS,CAAC;gBACnE,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7D,IAAI,SAAS,IAAI,OAAO,GAAG,0BAA0B,EAAE,CAAC;oBACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,wBAAwB,GAAG,OAAO,EAAE,4BAA4B,CAAC,CAAC;oBAC3F,MAAM,CAAC,IAAI,EAAE,CACX,eAAe,GAAG,CAAC,KAAK,0BAA0B,OAAO,wBAAwB,GAAG,kBAAkB,OAAO,IAAI,CAClH,CAAC;oBACF,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,sEAAsE;gBACtE,sEAAsE;gBACtE,MAAM,CAAC,IAAI,EAAE,CACX,eAAe,GAAG,CAAC,KAAK,0BAA0B,SAAS,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,eAAe,MAAM,GAAG,EAAE,CAC1H,CAAC;gBACF,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE;oBAChB,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,yBAAyB,GAAG,EAAE;oBAC3D,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK;iBACzD,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;AACP,CAAC;AAED,6EAA6E;AAC7E,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,CAAC,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAClC,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,0DAA0D;AAC1D,SAAS,SAAS,CAAC,MAAc;IAC/B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE;QAAE,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,GAAG,CAAC;IAC1E,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,GAAoB;IAC7C,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC;QAClC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;QACpB,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;QACnB,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,GAAG,CAAC,cAAc,GAAG,MAAM,CAAC;QAC5B,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,8CAA8C;QACrF,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,4CAA4C;QAC9E,SAAS,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,EAAE,CAAC,0DAA0D,GAAG,CAAC,KAAK,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;QACzG,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,IAAI,OAAO,CAAY,CAAC,OAAO,EAAE,EAAE;QACxC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;QACpB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACnG,CAAC,EAAE,SAAS,CAAC,CAAC;QACd,GAAG,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,EAAE,CACX,gDAAgD,GAAG,CAAC,KAAK,SAAS,GAAG,CAAC,MAAM,IAAI;YAChF,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAChG,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,aAAa;YAAE,cAAc,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;iCACiC;AACjC,SAAS,mBAAmB,CAAC,GAAoB;IAC/C,IAAI,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,SAAS;QAAE,OAAO;IAC5C,6EAA6E;IAC7E,uEAAuE;IACvE,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc;QAAE,OAAO;IAC/C,MAAM,SAAS,GAAiB;QAC9B,CAAC,EAAE,CAAC;QACJ,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC,CAAC,CAAC;QAC1F,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,UAAU,EAAE,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/G,CAAC;IACF,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,SAAS,CAAC,IAMzB;IACC,SAAS,EAAE,CAAC;IACZ,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAC;IACzB,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QAAE,OAAO,OAAO,CAAC;IAC7C,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,iBAAiB,CAAC;IAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;QAAE,OAAO,cAAc,CAAC;IAE/D,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ;QAAE,OAAO,OAAO,CAAC;IAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC;IAEtE,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAE,CAAC;IAEpD,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACzB,aAAa;QACb,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,+CAA+C;QAC/C,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,6EAA6E;IAC7E,wEAAwE;IACxE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAEzB,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,IAKzB;IACC,SAAS,EAAE,CAAC;IACZ,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAC;IACzB,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QAAE,OAAO,OAAO,CAAC;IAC7C,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,iBAAiB,CAAC;IAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;QAAE,OAAO,cAAc,CAAC;IAE/D,kBAAkB;IAClB,IAAI,OAA6C,CAAC;IAElD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QAClC,0BAA0B;QAC1B,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,OAAO,CAAC;YACvD,gCAAgC;YAChC,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;gBACtB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;oBAAE,OAAO,OAAO,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,YAAY;QACZ,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;YACnC,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC;gBAAE,OAAO,OAAO,CAAC;YACrD,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,GAAG,KAAK,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE;QACjB,IAAI,EAAE,UAAU;QAChB,OAAO;QACP,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAKjC;IACC,SAAS,EAAE,CAAC;IACZ,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAC;IACzB,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,iBAAiB,CAAC;IAC1C,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,cAAc,CAAC;IAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI;QAAE,OAAO,OAAO,CAAC;IAE1B,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE;QACjB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QACpC,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAItC;IACC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,OAAO;YAAE,SAAS;QAC1B,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;YAAE,SAAS;QAC/C,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;YAAE,SAAS;QACzC,MAAM,OAAO,GACX,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,MAAM,CAAC;QACxE,IAAI,OAAO;YAAE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;uCASuC;AACvC,MAAM,UAAU,aAAa,CAAC,IAK7B;IACC,OAAO,SAAS,CAAC;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC;AAED;;;uEAGuE;AACvE,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,MAAM,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,CAAC,EAAE,EAAE;YACT,IAAI,EAAE,aAAa;YACnB,MAAM;YACN,QAAQ,EAAE,IAAI;YACd,EAAE,EAAE,IAAI;YACR,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;IACL,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,EAAE,CAAC,2BAA2B,GAAG,CAAC,MAAM,oBAAoB,MAAM,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc,IAAI,CAAC,GAAG,EAAE,EAAE,SAAkB;IAC/E,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,EAAE,CAAC,4DAA4D,CAAC,CAAC;QAC5E,OAAO,CAAC,CAAC;IACX,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACvC,yEAAyE;QACzE,sEAAsE;QACtE,IAAI,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS;YAAE,SAAS;QACrD,iEAAiE;QACjE,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE;YAAE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBAAC,GAAG,GAAG,IAAI,CAAC;gBAAC,MAAM;YAAC,CAAC;QACjG,IAAI,GAAG;YAAE,SAAS;QAElB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAuB,CAAC;QAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAS,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,gBAAgB,GAAG,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC;QACxD,4EAA4E;QAC5E,2EAA2E;QAC3E,uEAAuE;QACvE,gEAAgE;QAChE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,gBAAgB;YACpC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE;gBACd,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE;oBACd,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;iBAC1E,CAAC,CAAC;YACL,CAAC,EAAE,SAAS,CAAC,CAAC;QAClB,aAAa,EAAE,KAAK,EAAE,EAAE,CAAC;QAEzB,MAAM,GAAG,GAAoB;YAC3B,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,SAAS,EAAE,IAAI,EAAE,6CAA6C;YAC9D,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,sEAAsE;YACtE,yEAAyE;YACzE,2CAA2C;YAC3C,OAAO,EAAE,gBAAgB;YACzB,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/D,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,EAAE,EAAE,mDAAmD;YAChE,qEAAqE;YACrE,qDAAqD;YACrD,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnG,0EAA0E;YAC1E,uEAAuE;YACvE,aAAa,EAAE,aAAa,IAAI,UAAU,CAAC,GAAG,EAAE,GAAE,CAAC,EAAE,CAAC,CAAC;YACvD,UAAU;SACX,CAAC;QACF,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAAC,CAAC;QACrE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1B,wEAAwE;QACxE,0EAA0E;QAC1E,sEAAsE;QACtE,IAAI,gBAAgB;YAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC5C,QAAQ,EAAE,CAAC;QACX,MAAM,CAAC,IAAI,EAAE,CACX,oCAAoC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,MAAM,aAAa,CAAC,CAAC,SAAS,IAAI;YACxF,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,mCAAmC,CAC7H,CAAC;IACJ,CAAC;IACD,wEAAwE;IACxE,kEAAkE;IAClE,MAAM,CAAC,IAAI,EAAE,CACX,wCAAwC,QAAQ,0BAA0B;QAC1E,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACvC,CAAC;IACF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;2EAG2E;AAC3E,SAAS,MAAM,CAAC,KAAa,EAAE,MAAiB;IAC9C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO;IAEhC,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,0DAA0D;IAC1D,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC1E,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;QACnB,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,GAAG,CAAC,cAAc,GAAG,MAAM,CAAC;QAC5B,GAAG,CAAC,cAAc,GAAG,MAAM,CAAC;QAC5B,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAChC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,mEAAmE;QAC7F,0EAA0E;QAC1E,uEAAuE;QACvE,4EAA4E;QAC5E,4DAA4D;QAC5D,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,CAAC,IAAI,EAAE,CAAC,8CAA8C,KAAK,SAAS,GAAG,CAAC,MAAM,yBAAyB,CAAC,CAAC;QAC/G,4EAA4E;QAC5E,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IACnB,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,GAAG,CAAC,cAAc,GAAG,MAAM,CAAC,CAAC,+DAA+D;IAC5F,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAChC,yEAAyE;IACzE,6EAA6E;IAC7E,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,uEAAuE;IACvE,2CAA2C;IAC3C,SAAS,EAAE,CAAC;IAEZ,6EAA6E;IAC7E,kEAAkE;IAClE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAC5B,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,CAAC,CAAC,MAAM,CAAC,CAAC;QACZ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,EAAE,CACX,eAAe,KAAK,kBAAkB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACzF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;oFACoF;AACpF,SAAS,cAAc,CAAC,GAAoB,EAAE,MAAiB;IAC7D,IAAI,CAAC,UAAU,EAAE,QAAQ;QAAE,OAAO;IAClC,IAAI,CAAC;QACH,KAAK,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7E,MAAM,CAAC,IAAI,EAAE,CACX,eAAe,GAAG,CAAC,KAAK,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAChG,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,EAAE,CACX,eAAe,GAAG,CAAC,KAAK,oBAAoB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC/F,CAAC;IACJ,CAAC;AACH,CAAC;AAED;0EAC0E;AAC1E,SAAS,QAAQ,CAAC,GAAoB;IACpC,MAAM;IACJ,uEAAuE;IACvE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EACjE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAC7D,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EACtD,GAAG,IAAI,EACR,GAAG,GAAG,CAAC;IACR,OAAO;QACL,GAAG,IAAI;QACP,UAAU,EAAE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC,CAAC,CAAC;QAC1F,6EAA6E;QAC7E,6EAA6E;QAC7E,0EAA0E;QAC1E,yEAAyE;QACzE,sEAAsE;QACtE,8EAA8E;QAC9E,YAAY,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC;KAC7C,CAAC;AACJ,CAAC;AAED;;;;iEAIiE;AACjE,SAAS,SAAS;IAChB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,oBAAoB,CAAC;IACjD,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;QAChC,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,cAAc;YAAE,SAAS,CAAC,2BAA2B;QAC5E,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,GAAG,MAAM,EAAE,CAAC;YACzE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,gBAAgB,CAAC,GAAoB;IAC5C,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACxE,GAAG,CAAC,mBAAmB,GAAG,UAAU,CAAC,GAAG,EAAE;QACxC,yEAAyE;QACzE,6CAA6C;QAC7C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc;YAAE,OAAO;QACxD,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,EAAE,CACX,uDAAuD,GAAG,CAAC,KAAK,SAAS,GAAG,CAAC,MAAM,0BAA0B,CAC9G,CAAC;IACJ,CAAC,EAAE,MAAM,CAAC,CAAC;IACX,GAAG,CAAC,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC;AACpC,CAAC;AAED,iFAAiF;AAEjF;kFACkF;AAClF,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,CAAC,EAAE,CAAC;IAC1D,OAAO,CAAC,CAAC;AACX,CAAC;AAED;oEACoE;AACpE,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACrC,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,eAAe;IAC7B,SAAS,EAAE,CAAC;IACZ,MAAM,GAAG,GAAiB,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnC,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAKpC;IACC,SAAS,EAAE,CAAC;IACZ,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,GAAG;QAAE,OAAO,OAAO,CAAC;IACzB,IAAI,GAAG,CAAC,OAAO;QAAE,OAAO,iBAAiB,CAAC;IAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC;QACvD,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;gBAAE,OAAO,OAAO,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE;QACjB,IAAI,EAAE,UAAU;QAChB,OAAO;QACP,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,SAAS;QACxB,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;qCACqC;AACrC,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED;cACc;AACd,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;6EAC6E;AAC7E,MAAM,UAAU,aAAa;IAC3B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,CAAC;IAChB,UAAU,GAAG,IAAI,CAAC;IAClB,cAAc,GAAG,IAAI,CAAC;IACtB,kBAAkB,GAAG,oBAAoB,CAAC,CAAC,4BAA4B;IACvE,4EAA4E;IAC5E,2EAA2E;IAC3E,6CAA6C;IAC7C,YAAY,GAAG,IAAI,CAAC;AACtB,CAAC"}
|
|
1
|
+
{"version":3,"file":"ask-broker.js","sourceRoot":"","sources":["../../src/core/ask-broker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/ask-hook/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/core/ask-hook/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA4BjD,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAExE"}
|
|
@@ -13,6 +13,10 @@ const REGISTRY = {
|
|
|
13
13
|
relay: claude,
|
|
14
14
|
codex,
|
|
15
15
|
opencode,
|
|
16
|
+
// opencode2 的 V2 插件在插件内把新事件流 payload 规范成与 V1 插件相同的
|
|
17
|
+
// `{ hook_event_name: 'question.asked', question_id, session_id, tool_input }`
|
|
18
|
+
// 形状再喂 `botmux hook opencode2`,所以复用同一个解析/作答适配器。
|
|
19
|
+
opencode2: opencode,
|
|
16
20
|
// CoCo (Trae CLI): AskUserQuestion payload is Claude-compatible (parseQuestions
|
|
17
21
|
// reuses claude), but it CANNOT be answered via a hook directive — the answer
|
|
18
22
|
// is delivered by keystroke-driving CoCo's native picker (see coco.ts +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/ask-hook/registry.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,QAAQ,GAAmC;IAC/C,aAAa,EAAE,MAAM;IACrB,2EAA2E;IAC3E,yEAAyE;IACzE,gCAAgC;IAChC,IAAI,EAAE,MAAM;IACZ,8EAA8E;IAC9E,kFAAkF;IAClF,KAAK,EAAE,MAAM;IACb,KAAK;IACL,QAAQ;IACR,gFAAgF;IAChF,8EAA8E;IAC9E,wEAAwE;IACxE,0DAA0D;IAC1D,IAAI;CACL,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/ask-hook/registry.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,kBAAkB,CAAC;AACtC,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,QAAQ,GAAmC;IAC/C,aAAa,EAAE,MAAM;IACrB,2EAA2E;IAC3E,yEAAyE;IACzE,gCAAgC;IAChC,IAAI,EAAE,MAAM;IACZ,8EAA8E;IAC9E,kFAAkF;IAClF,KAAK,EAAE,MAAM;IACb,KAAK;IACL,QAAQ;IACR,mDAAmD;IACnD,+EAA+E;IAC/E,gDAAgD;IAChD,SAAS,EAAE,QAAQ;IACnB,gFAAgF;IAChF,8EAA8E;IAC9E,wEAAwE;IACxE,0DAA0D;IAC1D,IAAI;CACL,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC"}
|
package/dist/core/ask-types.d.ts
CHANGED
|
@@ -158,7 +158,11 @@ export type AskClickOutcome =
|
|
|
158
158
|
/** Ask already settled (race winner exists or timed out). */
|
|
159
159
|
| 'already_settled'
|
|
160
160
|
/** 多选累积:用户勾选/取消某项,尚未 submit——不触发 settle。 */
|
|
161
|
-
| 'toggled'
|
|
161
|
+
| 'toggled'
|
|
162
|
+
/** 空提交二次确认:鉴权 + nonce 校验都通过,但当前一个选项都没勾、且每个问题
|
|
163
|
+
* 都允许空集(全多选),提交极可能是手滑——先不 settle,要求带 confirmEmpty 再点
|
|
164
|
+
* 一次。仅当所有问题都可空时才可能返回;任一单选未选走 `stale`(空非有效答案)。 */
|
|
165
|
+
| 'needs_empty_confirm';
|
|
162
166
|
/** 旧单选语义兼容:仅当"单问且恰好选 1 个"时返回该 key,否则 null。
|
|
163
167
|
* `botmux ask buttons` 子命令与其测试据此保持单选行为不变。 */
|
|
164
168
|
export declare function toLegacySelected(result: AskResult): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-types.d.ts","sourceRoot":"","sources":["../../src/core/ask-types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ask-types.d.ts","sourceRoot":"","sources":["../../src/core/ask-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask-types.js","sourceRoot":"","sources":["../../src/core/ask-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"ask-types.js","sourceRoot":"","sources":["../../src/core/ask-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA0KH;8CAC8C;AAC9C,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;+CAE+C;AAC/C,MAAM,UAAU,aAAa,CAAC,MAAiB;IAC7C,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAC7C,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;AAC3D,CAAC;AAeD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAChC,SAAS,CAAU;IAC5B,YAAY,OAAe,EAAE,SAAkB;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAG9C;IACC,OAAO,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC;AACpD,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/** A restartable browser target. `bundleId` is the macOS CFBundleIdentifier —
|
|
2
|
+
* the single source of truth we quit + relaunch by (no process-name guessing).
|
|
3
|
+
* `openArgs` are passed to `open -b <id> --args …` on relaunch (e.g. Chromium's
|
|
4
|
+
* `--restore-last-session` to force tab restore). */
|
|
5
|
+
export interface BrowserTarget {
|
|
6
|
+
bundleId: string;
|
|
7
|
+
label: string;
|
|
8
|
+
/** Extra argv forwarded on relaunch (Chromium restore flag, etc.). */
|
|
9
|
+
openArgs?: string[];
|
|
10
|
+
/** false ⇒ never offered on the card (config can disable a default). */
|
|
11
|
+
enabled?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/** Config entry shape (all optional except bundleId) — merged over the defaults
|
|
14
|
+
* by bundleId. Kept separate from {@link BrowserTarget} so config validation is
|
|
15
|
+
* explicit and forgiving of missing fields. */
|
|
16
|
+
export interface BrowserTargetConfig {
|
|
17
|
+
bundleId?: unknown;
|
|
18
|
+
label?: unknown;
|
|
19
|
+
openArgs?: unknown;
|
|
20
|
+
enabled?: unknown;
|
|
21
|
+
}
|
|
22
|
+
/** Built-in defaults. Chromium browsers get `--restore-last-session` so a bounce
|
|
23
|
+
* reopens the exact tabs; Arc restores its own state on launch. Order here is
|
|
24
|
+
* the display order on the card. NOT exhaustive by design — extend via config. */
|
|
25
|
+
export declare const DEFAULT_BROWSER_TARGETS: readonly BrowserTarget[];
|
|
26
|
+
/**
|
|
27
|
+
* Merge a config `browserRestartTargets` list over {@link DEFAULT_BROWSER_TARGETS}:
|
|
28
|
+
* - a config entry whose bundleId matches a default OVERRIDES its label/openArgs/
|
|
29
|
+
* enabled (only the fields actually present);
|
|
30
|
+
* - a config entry with a new bundleId is APPENDED (so new browsers need no code);
|
|
31
|
+
* - the result drops anything with `enabled === false`.
|
|
32
|
+
* Pure: no I/O. Invalid/garbage entries (missing/blank bundleId) are ignored so a
|
|
33
|
+
* hand-edited config can't crash the resolver. When `raw` is undefined/empty the
|
|
34
|
+
* built-in defaults are returned unchanged.
|
|
35
|
+
*/
|
|
36
|
+
export declare function resolveBrowserTargets(raw: unknown): BrowserTarget[];
|
|
37
|
+
/** Card button label, e.g. `♻️ 重启 Arc · 6.2 GB`. Memory is optional (unknown
|
|
38
|
+
* ⇒ omit the suffix). Pure. */
|
|
39
|
+
export declare function formatBrowserLabel(label: string, memMB?: number): string;
|
|
40
|
+
/** A running browser found on the host, with its aggregate RSS in MB. */
|
|
41
|
+
export interface RunningBrowser {
|
|
42
|
+
bundleId: string;
|
|
43
|
+
label: string;
|
|
44
|
+
memMB: number;
|
|
45
|
+
openArgs?: string[];
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Probe the host for which of `targets` are installed AND currently holding
|
|
49
|
+
* memory, returning them (in `targets` order) with aggregate RSS in MB. A
|
|
50
|
+
* browser that's installed but not running contributes nothing (no button).
|
|
51
|
+
*
|
|
52
|
+
* Memory is summed over every process whose command line lives under the app's
|
|
53
|
+
* bundle path (helper renderers, GPU process, …) — matched by RESOLVED app path,
|
|
54
|
+
* not a fuzzy name, so "Google Chrome" can't accidentally match "Chrome" text
|
|
55
|
+
* elsewhere. Impure (mdfind + ps). Best-effort: a probe failure yields [].
|
|
56
|
+
*/
|
|
57
|
+
export declare function detectRunningBrowsers(targets: BrowserTarget[], deps?: {
|
|
58
|
+
/** injectable for tests; defaults to the real ps. */
|
|
59
|
+
psList?: () => Promise<string>;
|
|
60
|
+
/** injectable for tests; defaults to the real Spotlight lookup. */
|
|
61
|
+
appPathFor?: (bundleId: string) => Promise<string>;
|
|
62
|
+
/** override the platform gate in tests. */
|
|
63
|
+
platform?: NodeJS.Platform;
|
|
64
|
+
}): Promise<RunningBrowser[]>;
|
|
65
|
+
/** Result of a restart attempt. `relaunched` is best-effort — a failure to
|
|
66
|
+
* reopen still counts the quit as done (memory was freed) but is reported. */
|
|
67
|
+
export interface RestartResult {
|
|
68
|
+
ok: boolean;
|
|
69
|
+
quit: boolean;
|
|
70
|
+
relaunched: boolean;
|
|
71
|
+
error?: string;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Restart a browser by bundle id: graceful `quit` via AppleScript, poll until
|
|
75
|
+
* its processes are gone, then relaunch with `open -b <id>` (+ openArgs). Never
|
|
76
|
+
* SIGKILLs — a browser refusing to quit (unsaved prompt) is left alone and
|
|
77
|
+
* reported rather than force-killed under the user. Impure. `sleep`/`now`/`run`
|
|
78
|
+
* are injectable so the polling loop is unit-testable without real timers.
|
|
79
|
+
*/
|
|
80
|
+
export declare function restartBrowser(target: {
|
|
81
|
+
bundleId: string;
|
|
82
|
+
openArgs?: string[];
|
|
83
|
+
}, opts?: {
|
|
84
|
+
run?: (file: string, args: string[]) => Promise<{
|
|
85
|
+
stdout: string;
|
|
86
|
+
}>;
|
|
87
|
+
isRunning?: (bundleId: string) => Promise<boolean>;
|
|
88
|
+
sleep?: (ms: number) => Promise<void>;
|
|
89
|
+
now?: () => number;
|
|
90
|
+
quitTimeoutMs?: number;
|
|
91
|
+
/** inject the resolved bundle path (tests); defaults to a Spotlight lookup. */
|
|
92
|
+
appPath?: string;
|
|
93
|
+
appPathFor?: (bundleId: string) => Promise<string>;
|
|
94
|
+
}): Promise<RestartResult>;
|
|
95
|
+
/**
|
|
96
|
+
* True when a `ps` command line's EXECUTABLE belongs to the app at `appPath`.
|
|
97
|
+
*
|
|
98
|
+
* A `ps` line is `<argv0> <args...>`; the executable is argv0 at the very start.
|
|
99
|
+
* We anchor on that left boundary — the command (after trimming leading spaces)
|
|
100
|
+
* must BEGIN with `appPath` — instead of scanning for the path anywhere in the
|
|
101
|
+
* line. This is deliberately stricter than a substring/right-boundary match:
|
|
102
|
+
* - a backup copy launched from elsewhere, e.g. `/Volumes/Backup/…/Arc.app/…`,
|
|
103
|
+
* does NOT start with `/Applications/Arc.app` → excluded;
|
|
104
|
+
* - `/Applications/Arc.app-copy/…` is not under `/Applications/Arc.app/` → excluded;
|
|
105
|
+
* - the path appearing as an unrelated ARGUMENT, e.g.
|
|
106
|
+
* `/usr/bin/open -b x /Applications/Arc.app`, is not argv0 → excluded.
|
|
107
|
+
* Bundle-internal helpers (`<app>/Contents/Frameworks/…`) start with `<app>/`, so
|
|
108
|
+
* they match. Prefix-matching (not whitespace-splitting) also tolerates spaces in
|
|
109
|
+
* the app path itself (e.g. `/Applications/Google Chrome.app`). Pure.
|
|
110
|
+
*/
|
|
111
|
+
export declare function commandInApp(command: string, appPath: string): boolean;
|
|
112
|
+
//# sourceMappingURL=browser-restart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-restart.d.ts","sourceRoot":"","sources":["../../src/core/browser-restart.ts"],"names":[],"mappings":"AA6BA;;;sDAGsD;AACtD,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;gDAEgD;AAChD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;mFAEmF;AACnF,eAAO,MAAM,uBAAuB,EAAE,SAAS,aAAa,EAI3D,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,EAAE,CAwBnE;AAED;gCACgC;AAChC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAIxE;AAED,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAYD;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,aAAa,EAAE,EACxB,IAAI,GAAE;IACJ,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,mEAAmE;IACnE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;CACvB,GACL,OAAO,CAAC,cAAc,EAAE,CAAC,CA0B3B;AAED;+EAC+E;AAC/E,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EACjD,IAAI,GAAE;IACJ,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/C,GACL,OAAO,CAAC,aAAa,CAAC,CAkDxB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAOtE"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-restart降压 for the host-overload alert.
|
|
3
|
+
*
|
|
4
|
+
* Motivation: on a dev Mac the real memory hog is almost always a browser
|
|
5
|
+
* (Arc / Chrome / Edge each routinely hold multiple GB), NOT botmux sessions.
|
|
6
|
+
* The overload card's original two buttons (clean zombie / suspend idle) free
|
|
7
|
+
* almost nothing when 僵尸/闲置 are both 0 — the machine is red because a
|
|
8
|
+
* browser is sitting on 6 GB. This module lets the owner bounce a specific
|
|
9
|
+
* browser straight from the alert card, which reliably reclaims that memory
|
|
10
|
+
* (the browser reopens and restores its tabs).
|
|
11
|
+
*
|
|
12
|
+
* Design:
|
|
13
|
+
* - Targets are DATA, never hard-coded control flow. {@link DEFAULT_BROWSER_TARGETS}
|
|
14
|
+
* ships Arc / Chrome / Edge; a global-config `browserRestartTargets` list can
|
|
15
|
+
* override any field by bundleId, disable one (`enabled:false`), or append a
|
|
16
|
+
* brand-new browser (Safari/Brave/Firefox…) with ZERO code change.
|
|
17
|
+
* - Pure helpers ({@link resolveBrowserTargets}, {@link formatBrowserLabel},
|
|
18
|
+
* the action-value codec) have no I/O and are unit-tested. The host probes +
|
|
19
|
+
* the actual quit/relaunch live in {@link detectRunningBrowsers} /
|
|
20
|
+
* {@link restartBrowser}, which shell out via bundle id (precise — never a
|
|
21
|
+
* fuzzy process-name kill).
|
|
22
|
+
* - The card only renders browsers that are BOTH installed AND currently
|
|
23
|
+
* holding memory on THIS host, so the owner never taps a dead button.
|
|
24
|
+
*/
|
|
25
|
+
import { execFile } from 'node:child_process';
|
|
26
|
+
import { promisify } from 'node:util';
|
|
27
|
+
const pExecFile = promisify(execFile);
|
|
28
|
+
/** Built-in defaults. Chromium browsers get `--restore-last-session` so a bounce
|
|
29
|
+
* reopens the exact tabs; Arc restores its own state on launch. Order here is
|
|
30
|
+
* the display order on the card. NOT exhaustive by design — extend via config. */
|
|
31
|
+
export const DEFAULT_BROWSER_TARGETS = [
|
|
32
|
+
{ bundleId: 'company.thebrowser.Browser', label: 'Arc' },
|
|
33
|
+
{ bundleId: 'com.google.Chrome', label: 'Chrome', openArgs: ['--restore-last-session'] },
|
|
34
|
+
{ bundleId: 'com.microsoft.edgemac', label: 'Edge', openArgs: ['--restore-last-session'] },
|
|
35
|
+
];
|
|
36
|
+
/**
|
|
37
|
+
* Merge a config `browserRestartTargets` list over {@link DEFAULT_BROWSER_TARGETS}:
|
|
38
|
+
* - a config entry whose bundleId matches a default OVERRIDES its label/openArgs/
|
|
39
|
+
* enabled (only the fields actually present);
|
|
40
|
+
* - a config entry with a new bundleId is APPENDED (so new browsers need no code);
|
|
41
|
+
* - the result drops anything with `enabled === false`.
|
|
42
|
+
* Pure: no I/O. Invalid/garbage entries (missing/blank bundleId) are ignored so a
|
|
43
|
+
* hand-edited config can't crash the resolver. When `raw` is undefined/empty the
|
|
44
|
+
* built-in defaults are returned unchanged.
|
|
45
|
+
*/
|
|
46
|
+
export function resolveBrowserTargets(raw) {
|
|
47
|
+
const byId = new Map();
|
|
48
|
+
for (const d of DEFAULT_BROWSER_TARGETS)
|
|
49
|
+
byId.set(d.bundleId, { ...d });
|
|
50
|
+
if (Array.isArray(raw)) {
|
|
51
|
+
for (const item of raw) {
|
|
52
|
+
if (!item || typeof item !== 'object')
|
|
53
|
+
continue;
|
|
54
|
+
const c = item;
|
|
55
|
+
const bundleId = typeof c.bundleId === 'string' ? c.bundleId.trim() : '';
|
|
56
|
+
if (!bundleId)
|
|
57
|
+
continue;
|
|
58
|
+
const prev = byId.get(bundleId);
|
|
59
|
+
const merged = prev
|
|
60
|
+
? { ...prev }
|
|
61
|
+
: { bundleId, label: bundleId };
|
|
62
|
+
if (typeof c.label === 'string' && c.label.trim())
|
|
63
|
+
merged.label = c.label.trim();
|
|
64
|
+
if (Array.isArray(c.openArgs) && c.openArgs.every(a => typeof a === 'string')) {
|
|
65
|
+
merged.openArgs = c.openArgs;
|
|
66
|
+
}
|
|
67
|
+
if (typeof c.enabled === 'boolean')
|
|
68
|
+
merged.enabled = c.enabled;
|
|
69
|
+
byId.set(bundleId, merged);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return [...byId.values()].filter(t => t.enabled !== false);
|
|
73
|
+
}
|
|
74
|
+
/** Card button label, e.g. `♻️ 重启 Arc · 6.2 GB`. Memory is optional (unknown
|
|
75
|
+
* ⇒ omit the suffix). Pure. */
|
|
76
|
+
export function formatBrowserLabel(label, memMB) {
|
|
77
|
+
if (memMB === undefined || !Number.isFinite(memMB) || memMB <= 0)
|
|
78
|
+
return `♻️ 重启 ${label}`;
|
|
79
|
+
const mem = memMB >= 1024 ? `${(memMB / 1024).toFixed(1)} GB` : `${Math.round(memMB)} MB`;
|
|
80
|
+
return `♻️ 重启 ${label} · ${mem}`;
|
|
81
|
+
}
|
|
82
|
+
/** Resolve a bundle id to its .app path via Spotlight. Returns '' when the app
|
|
83
|
+
* isn't installed (or Spotlight can't answer). Impure (mdfind). */
|
|
84
|
+
async function appPathForBundleId(bundleId) {
|
|
85
|
+
try {
|
|
86
|
+
const { stdout } = await pExecFile('mdfind', [`kMDItemCFBundleIdentifier == '${bundleId}'`], { timeout: 5_000 });
|
|
87
|
+
const line = stdout.split('\n').map(s => s.trim()).find(s => s.endsWith('.app'));
|
|
88
|
+
return line ?? '';
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return '';
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Probe the host for which of `targets` are installed AND currently holding
|
|
96
|
+
* memory, returning them (in `targets` order) with aggregate RSS in MB. A
|
|
97
|
+
* browser that's installed but not running contributes nothing (no button).
|
|
98
|
+
*
|
|
99
|
+
* Memory is summed over every process whose command line lives under the app's
|
|
100
|
+
* bundle path (helper renderers, GPU process, …) — matched by RESOLVED app path,
|
|
101
|
+
* not a fuzzy name, so "Google Chrome" can't accidentally match "Chrome" text
|
|
102
|
+
* elsewhere. Impure (mdfind + ps). Best-effort: a probe failure yields [].
|
|
103
|
+
*/
|
|
104
|
+
export async function detectRunningBrowsers(targets, deps = {}) {
|
|
105
|
+
// The quit/relaunch path is macOS-only (osascript + `open -b <bundleId>`);
|
|
106
|
+
// on any other platform there's nothing to offer, so skip the probe entirely
|
|
107
|
+
// instead of spawning mdfind/ps for no reason.
|
|
108
|
+
if ((deps.platform ?? process.platform) !== 'darwin')
|
|
109
|
+
return [];
|
|
110
|
+
const psList = deps.psList ?? (async () => (await pExecFile('ps', ['-Axo', 'rss=,command='], { timeout: 8_000, maxBuffer: 32 * 1024 * 1024 })).stdout);
|
|
111
|
+
const appPathFor = deps.appPathFor ?? appPathForBundleId;
|
|
112
|
+
let psOut = '';
|
|
113
|
+
try {
|
|
114
|
+
psOut = await psList();
|
|
115
|
+
}
|
|
116
|
+
catch {
|
|
117
|
+
return [];
|
|
118
|
+
}
|
|
119
|
+
const lines = psOut.split('\n');
|
|
120
|
+
const out = [];
|
|
121
|
+
for (const t of targets) {
|
|
122
|
+
const appPath = await appPathFor(t.bundleId);
|
|
123
|
+
if (!appPath)
|
|
124
|
+
continue; // not installed → no button
|
|
125
|
+
let kb = 0;
|
|
126
|
+
for (const ln of lines) {
|
|
127
|
+
const m = ln.match(/^\s*(\d+)\s+(.*)$/);
|
|
128
|
+
if (!m)
|
|
129
|
+
continue;
|
|
130
|
+
if (commandInApp(m[2], appPath))
|
|
131
|
+
kb += Number(m[1]) || 0;
|
|
132
|
+
}
|
|
133
|
+
const memMB = Math.round(kb / 1024);
|
|
134
|
+
if (memMB <= 0)
|
|
135
|
+
continue; // installed but not running → no button
|
|
136
|
+
out.push({ bundleId: t.bundleId, label: t.label, memMB, ...(t.openArgs ? { openArgs: t.openArgs } : {}) });
|
|
137
|
+
}
|
|
138
|
+
return out;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Restart a browser by bundle id: graceful `quit` via AppleScript, poll until
|
|
142
|
+
* its processes are gone, then relaunch with `open -b <id>` (+ openArgs). Never
|
|
143
|
+
* SIGKILLs — a browser refusing to quit (unsaved prompt) is left alone and
|
|
144
|
+
* reported rather than force-killed under the user. Impure. `sleep`/`now`/`run`
|
|
145
|
+
* are injectable so the polling loop is unit-testable without real timers.
|
|
146
|
+
*/
|
|
147
|
+
export async function restartBrowser(target, opts = {}) {
|
|
148
|
+
const run = opts.run ?? (async (file, args) => pExecFile(file, args, { timeout: 15_000 }));
|
|
149
|
+
const sleep = opts.sleep ?? ((ms) => new Promise(r => setTimeout(r, ms)));
|
|
150
|
+
const now = opts.now ?? (() => Date.now());
|
|
151
|
+
const quitTimeoutMs = opts.quitTimeoutMs ?? 12_000;
|
|
152
|
+
// Resolve the app's bundle path ONCE, up front, and let the liveness probe run
|
|
153
|
+
// `ps` against THAT path for the whole poll loop. This is the fail-safe the
|
|
154
|
+
// review flagged: the previous default was `appPathForBundleId(id) !== '' &&
|
|
155
|
+
// bundleHasProcess(...)`, so a missing/failed mdfind returned '' and the `&&`
|
|
156
|
+
// short-circuited to "not running" — we'd `open` and report ok WITHOUT ever
|
|
157
|
+
// checking ps. Now an unresolvable path or a ps error is treated as "still
|
|
158
|
+
// running" (never gone), so we never blindly relaunch on unknown state.
|
|
159
|
+
const appPath = opts.appPath ?? await (opts.appPathFor ?? appPathForBundleId)(target.bundleId);
|
|
160
|
+
const isRunning = opts.isRunning ?? (async () => {
|
|
161
|
+
if (!appPath)
|
|
162
|
+
return true; // unknown bundle path ⇒ assume running (don't relaunch)
|
|
163
|
+
try {
|
|
164
|
+
const { stdout } = await run('ps', ['-Axo', 'command=']);
|
|
165
|
+
return stdout.split('\n').some(ln => commandInApp(ln, appPath));
|
|
166
|
+
}
|
|
167
|
+
catch {
|
|
168
|
+
return true;
|
|
169
|
+
} // ps error ⇒ assume running (conservative)
|
|
170
|
+
});
|
|
171
|
+
// 1) graceful quit
|
|
172
|
+
try {
|
|
173
|
+
await run('osascript', ['-e', `tell application id "${target.bundleId}" to quit`]);
|
|
174
|
+
}
|
|
175
|
+
catch (err) {
|
|
176
|
+
return { ok: false, quit: false, relaunched: false, error: `quit failed: ${errMsg(err)}` };
|
|
177
|
+
}
|
|
178
|
+
// 2) wait for the app's processes to actually exit before relaunching, or a
|
|
179
|
+
// fast `open` races the still-shutting-down instance and no-ops.
|
|
180
|
+
const deadline = now() + quitTimeoutMs;
|
|
181
|
+
let gone = false;
|
|
182
|
+
while (now() < deadline) {
|
|
183
|
+
await sleep(500);
|
|
184
|
+
if (!(await isRunning(target.bundleId))) {
|
|
185
|
+
gone = true;
|
|
186
|
+
break;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
if (!gone) {
|
|
190
|
+
// Still alive after the grace window — likely an unsaved-changes dialog.
|
|
191
|
+
// Do NOT force-kill: report so the owner can handle it.
|
|
192
|
+
return { ok: false, quit: false, relaunched: false, error: '浏览器未在超时内退出(可能有未保存的弹窗,或进程状态无法确认),已放弃,未强杀' };
|
|
193
|
+
}
|
|
194
|
+
// 3) relaunch
|
|
195
|
+
try {
|
|
196
|
+
const args = ['-b', target.bundleId, ...(target.openArgs && target.openArgs.length ? ['--args', ...target.openArgs] : [])];
|
|
197
|
+
await run('open', args);
|
|
198
|
+
return { ok: true, quit: true, relaunched: true };
|
|
199
|
+
}
|
|
200
|
+
catch (err) {
|
|
201
|
+
return { ok: true, quit: true, relaunched: false, error: `relaunch failed: ${errMsg(err)}` };
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* True when a `ps` command line's EXECUTABLE belongs to the app at `appPath`.
|
|
206
|
+
*
|
|
207
|
+
* A `ps` line is `<argv0> <args...>`; the executable is argv0 at the very start.
|
|
208
|
+
* We anchor on that left boundary — the command (after trimming leading spaces)
|
|
209
|
+
* must BEGIN with `appPath` — instead of scanning for the path anywhere in the
|
|
210
|
+
* line. This is deliberately stricter than a substring/right-boundary match:
|
|
211
|
+
* - a backup copy launched from elsewhere, e.g. `/Volumes/Backup/…/Arc.app/…`,
|
|
212
|
+
* does NOT start with `/Applications/Arc.app` → excluded;
|
|
213
|
+
* - `/Applications/Arc.app-copy/…` is not under `/Applications/Arc.app/` → excluded;
|
|
214
|
+
* - the path appearing as an unrelated ARGUMENT, e.g.
|
|
215
|
+
* `/usr/bin/open -b x /Applications/Arc.app`, is not argv0 → excluded.
|
|
216
|
+
* Bundle-internal helpers (`<app>/Contents/Frameworks/…`) start with `<app>/`, so
|
|
217
|
+
* they match. Prefix-matching (not whitespace-splitting) also tolerates spaces in
|
|
218
|
+
* the app path itself (e.g. `/Applications/Google Chrome.app`). Pure.
|
|
219
|
+
*/
|
|
220
|
+
export function commandInApp(command, appPath) {
|
|
221
|
+
if (!appPath)
|
|
222
|
+
return false;
|
|
223
|
+
const cmd = command.replace(/^\s+/, ''); // argv0 sits at the start of the line
|
|
224
|
+
if (cmd === appPath)
|
|
225
|
+
return true; // executable is exactly the path
|
|
226
|
+
if (cmd.startsWith(appPath + '/'))
|
|
227
|
+
return true; // helper/binary under the bundle
|
|
228
|
+
if (cmd.startsWith(appPath + ' '))
|
|
229
|
+
return true; // path is argv0, followed by args
|
|
230
|
+
return false;
|
|
231
|
+
}
|
|
232
|
+
function errMsg(err) { return err instanceof Error ? err.message : String(err); }
|
|
233
|
+
//# sourceMappingURL=browser-restart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-restart.js","sourceRoot":"","sources":["../../src/core/browser-restart.ts"],"names":[],"mappings":"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"}
|