@wrongstack/cli 0.297.0 → 0.298.1
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/{acp-A5OSIU2P.js → acp-S4LZQB66.js} +91 -23
- package/dist/{auth-CJWQJVRH.js → auth-NLLGEYQR.js} +3 -3
- package/dist/boot/governance-evidence-candidate.d.ts +3 -0
- package/dist/boot/governance-shadow-bridge.d.ts +19 -0
- package/dist/boot/governance-trace-context.d.ts +64 -0
- package/dist/boot/tui-session-resume.d.ts +10 -1
- package/dist/chimera-reviewer-policy.d.ts +89 -1
- package/dist/chimera-subagent-ladder.d.ts +72 -0
- package/dist/{chunk-AZESNNIC.js → chunk-4HH3YGG4.js} +3 -3
- package/dist/{chunk-QUNHS6O3.js → chunk-4U3DMA2Y.js} +2 -2
- package/dist/{chunk-IHBYBYGA.js → chunk-A6Q5KGLV.js} +51 -18
- package/dist/{chunk-ABXK4VVY.js → chunk-ARWGQUB3.js} +2 -1
- package/dist/{chunk-7JABKXET.js → chunk-C5GH4YBL.js} +1018 -175
- package/dist/{chunk-TADVX644.js → chunk-GO3TJICK.js} +11 -2
- package/dist/{chunk-JBTFWWKV.js → chunk-I2BM6FK6.js} +9 -4
- package/dist/{chunk-AXVZMEWG.js → chunk-I5MEUFDI.js} +2 -2
- package/dist/{chunk-XWEGWYDU.js → chunk-PEKUKUCH.js} +4 -71
- package/dist/chunk-U3SS4NRH.js +10 -0
- package/dist/{chunk-QZKWRNIP.js → chunk-V3XH6XBJ.js} +12 -9
- package/dist/{cli-main-GOY5YGVL.js → cli-main-7QLL2PY6.js} +957 -271
- package/dist/cli-main-helpers.d.ts +42 -2
- package/dist/{execution-A4PGK4XV.js → execution-HJ643JGZ.js} +834 -676
- package/dist/execution-chimera-cascade.d.ts +7 -1
- package/dist/execution-chimera-review.d.ts +35 -0
- package/dist/fleet/host-types.d.ts +6 -1
- package/dist/fleet-statusline.d.ts +1 -0
- package/dist/governance-V2Z42RBE.js +65 -0
- package/dist/governance-hq-telemetry.d.ts +17 -0
- package/dist/{hq-GBPGXIR5.js → hq-WO6CLUSI.js} +2 -2
- package/dist/hq-server/auth.d.ts +33 -2
- package/dist/hq-server/login-attempt-store.d.ts +73 -0
- package/dist/hq-server/routes/auth-handlers.d.ts +73 -5
- package/dist/hq-server/routes.d.ts +5 -5
- package/dist/hq-server/types.d.ts +36 -2
- package/dist/hq-server/utils.d.ts +51 -6
- package/dist/{hq-server-YQUUMTPU.js → hq-server-6TSAORAC.js} +2 -2
- package/dist/hq-server.d.ts +10 -0
- package/dist/index.js +52 -24
- package/dist/live-settings-input.d.ts +4 -3
- package/dist/plugin-management.d.ts +3 -8
- package/dist/{plugin-usage-OU6X6LM3.js → plugin-usage-VTL7ZTVC.js} +2 -2
- package/dist/{plugins-4LJ5IUBI.js → plugins-ETY6W3DC.js} +3 -3
- package/dist/settings-menu.d.ts +1 -1
- package/dist/slash-commands/fallback.d.ts +2 -0
- package/dist/slash-commands/goal-refiner.d.ts +1 -1
- package/dist/subcommands/handlers/acp-connection-gate.d.ts +20 -0
- package/dist/subcommands/handlers/governance.d.ts +8 -0
- package/dist/{update-YC4TYW2Y.js → update-MV6TUACD.js} +3 -3
- package/dist/utils/win32-cmd.d.ts +9 -6
- package/dist/{version-help-DROHZRW6.js → version-help-ASKQYXDJ.js} +2 -2
- package/dist/{webui-server-XKFUOKMJ.js → webui-server-PCLSXX6L.js} +10 -3
- package/dist/wiring/brain-and-orchestration.d.ts +2 -0
- package/dist/wiring/provider-runtime-setup.d.ts +2 -2
- package/package.json +24 -23
- package/dist/acp-A5OSIU2P.js.map +0 -7
- package/dist/acp-registry-cache.d.ts.map +0 -1
- package/dist/acp-server-agent.d.ts.map +0 -1
- package/dist/arg-parser.d.ts.map +0 -1
- package/dist/audit-2ZSFGNIF.js.map +0 -7
- package/dist/auth-CJWQJVRH.js.map +0 -7
- package/dist/auth-menu/add-provider.d.ts.map +0 -1
- package/dist/auth-menu/anthropic-oauth.d.ts.map +0 -1
- package/dist/auth-menu/auth-menu-audit.d.ts.map +0 -1
- package/dist/auth-menu/direct.d.ts.map +0 -1
- package/dist/auth-menu/github-copilot-oauth.d.ts.map +0 -1
- package/dist/auth-menu/helpers.d.ts.map +0 -1
- package/dist/auth-menu/index.d.ts.map +0 -1
- package/dist/auth-menu/local-presets.d.ts.map +0 -1
- package/dist/auth-menu/local.d.ts.map +0 -1
- package/dist/auth-menu/loopback-server.d.ts.map +0 -1
- package/dist/auth-menu/oauth-menu.d.ts.map +0 -1
- package/dist/auth-menu/openai-codex-oauth.d.ts.map +0 -1
- package/dist/auth-menu/panel-service.d.ts.map +0 -1
- package/dist/auth-menu/provider-menu.d.ts.map +0 -1
- package/dist/auth-menu/shared.d.ts.map +0 -1
- package/dist/auth-menu/top-menu.d.ts.map +0 -1
- package/dist/auth-menu/types.d.ts.map +0 -1
- package/dist/auth-menu.d.ts.map +0 -1
- package/dist/bench-7ZDWSNEF.js.map +0 -7
- package/dist/boot/auto-discover-providers.d.ts.map +0 -1
- package/dist/boot/brain-decision-log.d.ts.map +0 -1
- package/dist/boot/config-backup-recovery.d.ts.map +0 -1
- package/dist/boot/container-wiring.d.ts.map +0 -1
- package/dist/boot/dispatch-singleshot.d.ts.map +0 -1
- package/dist/boot/dispatch-tui.d.ts.map +0 -1
- package/dist/boot/dispatch-webui.d.ts.map +0 -1
- package/dist/boot/event-wiring.d.ts.map +0 -1
- package/dist/boot/execution-mode.d.ts.map +0 -1
- package/dist/boot/launch-banner.d.ts.map +0 -1
- package/dist/boot/launch-menu.d.ts.map +0 -1
- package/dist/boot/short-circuit-desktop.d.ts.map +0 -1
- package/dist/boot/short-circuit-flags.d.ts.map +0 -1
- package/dist/boot/short-circuit-hq.d.ts.map +0 -1
- package/dist/boot/simpleui-full-auto.d.ts.map +0 -1
- package/dist/boot/system-prompt-builder.d.ts.map +0 -1
- package/dist/boot/system-prompt.d.ts.map +0 -1
- package/dist/boot/tool-registry.d.ts.map +0 -1
- package/dist/boot/tui-coordinator-callbacks.d.ts.map +0 -1
- package/dist/boot/tui-coordinator-setup.d.ts.map +0 -1
- package/dist/boot/tui-debug-stream.d.ts.map +0 -1
- package/dist/boot/tui-goal-wiring.d.ts.map +0 -1
- package/dist/boot/tui-live-sessions.d.ts.map +0 -1
- package/dist/boot/tui-project-picker-callback.d.ts.map +0 -1
- package/dist/boot/tui-project-spawn.d.ts.map +0 -1
- package/dist/boot/tui-project-switch.d.ts.map +0 -1
- package/dist/boot/tui-runtime-state.d.ts.map +0 -1
- package/dist/boot/tui-sdd-callback.d.ts.map +0 -1
- package/dist/boot/tui-session-resume.d.ts.map +0 -1
- package/dist/boot/tui-settings-adapter.d.ts.map +0 -1
- package/dist/boot-config.d.ts.map +0 -1
- package/dist/boot.d.ts.map +0 -1
- package/dist/brain-menu/panel-service.d.ts.map +0 -1
- package/dist/chimera-review-task.d.ts.map +0 -1
- package/dist/chimera-reviewer-policy.d.ts.map +0 -1
- package/dist/chronicle-QQEQFSSE.js.map +0 -7
- package/dist/chunk-5N34EWJR.js.map +0 -7
- package/dist/chunk-66T43Q4Y.js.map +0 -7
- package/dist/chunk-7JABKXET.js.map +0 -7
- package/dist/chunk-7OCVIDC7.js.map +0 -7
- package/dist/chunk-ABXK4VVY.js.map +0 -7
- package/dist/chunk-AXVZMEWG.js.map +0 -7
- package/dist/chunk-AZESNNIC.js.map +0 -7
- package/dist/chunk-BGFM3PD7.js.map +0 -7
- package/dist/chunk-DPJZQCVP.js.map +0 -7
- package/dist/chunk-F4PEGAJZ.js.map +0 -7
- package/dist/chunk-IHBYBYGA.js.map +0 -7
- package/dist/chunk-JBSQ7ONN.js.map +0 -7
- package/dist/chunk-JBTFWWKV.js.map +0 -7
- package/dist/chunk-JUHRI6OV.js.map +0 -7
- package/dist/chunk-JW75HY4F.js.map +0 -7
- package/dist/chunk-OP47B3IX.js.map +0 -7
- package/dist/chunk-PJHET45A.js.map +0 -7
- package/dist/chunk-Q5GTM25S.js.map +0 -7
- package/dist/chunk-QD544J2B.js.map +0 -7
- package/dist/chunk-QUNHS6O3.js.map +0 -7
- package/dist/chunk-QZKWRNIP.js.map +0 -7
- package/dist/chunk-TADVX644.js.map +0 -7
- package/dist/chunk-TGDHN4LM.js.map +0 -7
- package/dist/chunk-TYO2OVAD.js.map +0 -7
- package/dist/chunk-VCYZ3WZV.js.map +0 -7
- package/dist/chunk-VJUEZZYB.js +0 -29
- package/dist/chunk-VJUEZZYB.js.map +0 -7
- package/dist/chunk-WHOIR577.js.map +0 -7
- package/dist/chunk-XJXDOF63.js.map +0 -7
- package/dist/chunk-XTIXVJXP.js.map +0 -7
- package/dist/chunk-XWEGWYDU.js.map +0 -7
- package/dist/chunk-YWUPHRGB.js.map +0 -7
- package/dist/cli-bundled-prompts.d.ts.map +0 -1
- package/dist/cli-bundled-skills.d.ts.map +0 -1
- package/dist/cli-context.d.ts.map +0 -1
- package/dist/cli-entry-main.d.ts.map +0 -1
- package/dist/cli-entry-point.d.ts.map +0 -1
- package/dist/cli-eternal-flag.d.ts.map +0 -1
- package/dist/cli-main-GOY5YGVL.js.map +0 -7
- package/dist/cli-main-helpers.d.ts.map +0 -1
- package/dist/cli-main.d.ts.map +0 -1
- package/dist/cli-update-notice.d.ts.map +0 -1
- package/dist/config-doctor.d.ts.map +0 -1
- package/dist/config-history.d.ts.map +0 -1
- package/dist/context-limit.d.ts.map +0 -1
- package/dist/context-overflow-diagnostic.d.ts.map +0 -1
- package/dist/diag-doctor-OQ3AA63O.js.map +0 -7
- package/dist/diff-renderer.d.ts.map +0 -1
- package/dist/execute-deps.d.ts.map +0 -1
- package/dist/execution-A4PGK4XV.js.map +0 -7
- package/dist/execution-chimera-ask.d.ts +0 -10
- package/dist/execution-chimera-ask.d.ts.map +0 -1
- package/dist/execution-chimera-cascade.d.ts.map +0 -1
- package/dist/execution-cleanup.d.ts.map +0 -1
- package/dist/execution-kanban-dispatch.d.ts.map +0 -1
- package/dist/execution-repl-fleet-callbacks.d.ts.map +0 -1
- package/dist/execution-storage-observability.d.ts.map +0 -1
- package/dist/execution-tui-next-step-callbacks.d.ts.map +0 -1
- package/dist/execution.d.ts.map +0 -1
- package/dist/export-TPORYVRZ.js.map +0 -7
- package/dist/fleet/host-acp-runner-cache.d.ts.map +0 -1
- package/dist/fleet/host-acp.d.ts.map +0 -1
- package/dist/fleet/host-concurrency.d.ts.map +0 -1
- package/dist/fleet/host-context.d.ts.map +0 -1
- package/dist/fleet/host-director-builder.d.ts.map +0 -1
- package/dist/fleet/host-director-event-bridges.d.ts.map +0 -1
- package/dist/fleet/host-director-services.d.ts.map +0 -1
- package/dist/fleet/host-event-bridge.d.ts.map +0 -1
- package/dist/fleet/host-helpers.d.ts.map +0 -1
- package/dist/fleet/host-learning-tracker.d.ts.map +0 -1
- package/dist/fleet/host-learning.d.ts.map +0 -1
- package/dist/fleet/host-lifecycle-events.d.ts.map +0 -1
- package/dist/fleet/host-paths.d.ts.map +0 -1
- package/dist/fleet/host-provider.d.ts.map +0 -1
- package/dist/fleet/host-session-writer.d.ts.map +0 -1
- package/dist/fleet/host-shadow-pass.d.ts.map +0 -1
- package/dist/fleet/host-spawn-types.d.ts.map +0 -1
- package/dist/fleet/host-status.d.ts.map +0 -1
- package/dist/fleet/host-subagent-factory.d.ts.map +0 -1
- package/dist/fleet/host-supervisor.d.ts.map +0 -1
- package/dist/fleet/host-task-result-report.d.ts.map +0 -1
- package/dist/fleet/host-types.d.ts.map +0 -1
- package/dist/fleet/host.d.ts.map +0 -1
- package/dist/fleet/routing.d.ts.map +0 -1
- package/dist/fleet/status-broadcast.d.ts.map +0 -1
- package/dist/fleet/supervisor-registry.d.ts.map +0 -1
- package/dist/fleet-statusline.d.ts.map +0 -1
- package/dist/goal-host.d.ts.map +0 -1
- package/dist/hooks-wiring.d.ts.map +0 -1
- package/dist/hq-GBPGXIR5.js.map +0 -7
- package/dist/hq-command-controller.d.ts.map +0 -1
- package/dist/hq-publisher.d.ts.map +0 -1
- package/dist/hq-recovery-html.d.ts.map +0 -1
- package/dist/hq-server/audit-actor.d.ts.map +0 -1
- package/dist/hq-server/auth-state.d.ts.map +0 -1
- package/dist/hq-server/auth.d.ts.map +0 -1
- package/dist/hq-server/preflight.d.ts.map +0 -1
- package/dist/hq-server/project-root.d.ts.map +0 -1
- package/dist/hq-server/routes/auth-handlers.d.ts.map +0 -1
- package/dist/hq-server/routes/session-handlers.d.ts.map +0 -1
- package/dist/hq-server/routes/system-handlers.d.ts.map +0 -1
- package/dist/hq-server/routes.d.ts.map +0 -1
- package/dist/hq-server/snapshot.d.ts.map +0 -1
- package/dist/hq-server/startup.d.ts.map +0 -1
- package/dist/hq-server/trust-boundary.d.ts.map +0 -1
- package/dist/hq-server/types.d.ts.map +0 -1
- package/dist/hq-server/utils.d.ts.map +0 -1
- package/dist/hq-server/ws.d.ts.map +0 -1
- package/dist/hq-server-YQUUMTPU.js.map +0 -7
- package/dist/hq-server.d.ts.map +0 -1
- package/dist/hq-static-serve.d.ts.map +0 -1
- package/dist/hq-ttl-U2FAYFAT.js.map +0 -7
- package/dist/hq-tunnel-RFKGC4HI.js.map +0 -7
- package/dist/hq-tunnel.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -7
- package/dist/init-E2NDDOHI.js.map +0 -7
- package/dist/input-reader.d.ts.map +0 -1
- package/dist/kanban-dispatch-route.d.ts.map +0 -1
- package/dist/kanban-hq-sync.d.ts.map +0 -1
- package/dist/kanban-run-mirror-EKVNGXWW.js.map +0 -7
- package/dist/launch-hints.d.ts.map +0 -1
- package/dist/live-settings-input.d.ts.map +0 -1
- package/dist/mailbox-bridge-bootstrap.d.ts.map +0 -1
- package/dist/mailbox-serve-DBOOOOWZ.js.map +0 -7
- package/dist/mcp-CYLPUEHC.js.map +0 -7
- package/dist/mcp-serve.d.ts.map +0 -1
- package/dist/modeldiag-HENYJ4N7.js.map +0 -7
- package/dist/multi-agent.d.ts.map +0 -1
- package/dist/next-task-predictor.d.ts.map +0 -1
- package/dist/permission-prompt.d.ts.map +0 -1
- package/dist/permissions-FNYLZIL4.js.map +0 -7
- package/dist/picker-key-state.d.ts.map +0 -1
- package/dist/picker-model-picker.d.ts.map +0 -1
- package/dist/picker-ui.d.ts.map +0 -1
- package/dist/picker.d.ts.map +0 -1
- package/dist/plugin-api-factory.d.ts.map +0 -1
- package/dist/plugin-management.d.ts.map +0 -1
- package/dist/plugin-usage-OU6X6LM3.js.map +0 -7
- package/dist/plugins-4LJ5IUBI.js.map +0 -7
- package/dist/pre-launch/launch-prompts.d.ts.map +0 -1
- package/dist/pre-launch/project-check.d.ts.map +0 -1
- package/dist/pre-launch.d.ts.map +0 -1
- package/dist/preflight.d.ts.map +0 -1
- package/dist/profile-config-path.d.ts.map +0 -1
- package/dist/project-BLQ3ALVL.js.map +0 -7
- package/dist/project-manifest-GE25PW4S.js.map +0 -7
- package/dist/project-picker-BOCWHBXP.js.map +0 -7
- package/dist/project-picker.d.ts.map +0 -1
- package/dist/projects-XE76NFNZ.js.map +0 -7
- package/dist/provider-config-utils.d.ts.map +0 -1
- package/dist/provider-helpers.d.ts.map +0 -1
- package/dist/provider-id.d.ts.map +0 -1
- package/dist/providers-models-GDELBHZK.js.map +0 -7
- package/dist/quick-VIO2BEHS.js.map +0 -7
- package/dist/renderer.d.ts.map +0 -1
- package/dist/repl-auto-proceed.d.ts.map +0 -1
- package/dist/repl-client-registration.d.ts.map +0 -1
- package/dist/repl-input.d.ts.map +0 -1
- package/dist/repl-options.d.ts.map +0 -1
- package/dist/repl-rendering.d.ts.map +0 -1
- package/dist/repl-suggestions.d.ts.map +0 -1
- package/dist/repl.d.ts.map +0 -1
- package/dist/replay-KCTXNMZQ.js.map +0 -7
- package/dist/rewind-EJMVFVLS.js.map +0 -7
- package/dist/sdd-runtime-AIJCJGWC.js.map +0 -7
- package/dist/services/autonomy-mode.d.ts.map +0 -1
- package/dist/services/commit-message.d.ts.map +0 -1
- package/dist/services/dispatch-classifier.d.ts.map +0 -1
- package/dist/services/mcp-management.d.ts.map +0 -1
- package/dist/services/project-facts.d.ts.map +0 -1
- package/dist/services/project-manifest.d.ts.map +0 -1
- package/dist/services/sdd/project-context.d.ts.map +0 -1
- package/dist/services/sdd/spec-detection.d.ts.map +0 -1
- package/dist/services/sdd/state.d.ts.map +0 -1
- package/dist/services/sdd/task-manager.d.ts.map +0 -1
- package/dist/services/sdd-runtime.d.ts.map +0 -1
- package/dist/services/statusline-config.d.ts.map +0 -1
- package/dist/services/suggestion-store.d.ts.map +0 -1
- package/dist/session-event-wiring.d.ts.map +0 -1
- package/dist/session-stats.d.ts.map +0 -1
- package/dist/sessions-config-NLCMK3BY.js.map +0 -7
- package/dist/settings-menu.d.ts.map +0 -1
- package/dist/shutdown-cleanup.d.ts.map +0 -1
- package/dist/simpleui-dist-JIFGUJO7.js.map +0 -7
- package/dist/simpleui-dist.d.ts.map +0 -1
- package/dist/slash-commands/acp.d.ts.map +0 -1
- package/dist/slash-commands/agent-improve.d.ts.map +0 -1
- package/dist/slash-commands/agents.d.ts.map +0 -1
- package/dist/slash-commands/audit.d.ts.map +0 -1
- package/dist/slash-commands/auth.d.ts.map +0 -1
- package/dist/slash-commands/autonomy.d.ts.map +0 -1
- package/dist/slash-commands/brain.d.ts.map +0 -1
- package/dist/slash-commands/btw.d.ts.map +0 -1
- package/dist/slash-commands/clear.d.ts.map +0 -1
- package/dist/slash-commands/codebase-reindex.d.ts.map +0 -1
- package/dist/slash-commands/collab.d.ts.map +0 -1
- package/dist/slash-commands/command-context.d.ts.map +0 -1
- package/dist/slash-commands/commit-llm.d.ts.map +0 -1
- package/dist/slash-commands/compact.d.ts.map +0 -1
- package/dist/slash-commands/context.d.ts.map +0 -1
- package/dist/slash-commands/coordinator.d.ts.map +0 -1
- package/dist/slash-commands/delegate.d.ts.map +0 -1
- package/dist/slash-commands/design.d.ts.map +0 -1
- package/dist/slash-commands/dev.d.ts.map +0 -1
- package/dist/slash-commands/diag-stats.d.ts.map +0 -1
- package/dist/slash-commands/dispatch-llm.d.ts.map +0 -1
- package/dist/slash-commands/doctor.d.ts.map +0 -1
- package/dist/slash-commands/enhance.d.ts.map +0 -1
- package/dist/slash-commands/ensemble.d.ts.map +0 -1
- package/dist/slash-commands/f-keys.d.ts.map +0 -1
- package/dist/slash-commands/fallback.d.ts.map +0 -1
- package/dist/slash-commands/fix-classifier.d.ts.map +0 -1
- package/dist/slash-commands/fix.d.ts.map +0 -1
- package/dist/slash-commands/fleet.d.ts.map +0 -1
- package/dist/slash-commands/git.d.ts.map +0 -1
- package/dist/slash-commands/gitid.d.ts.map +0 -1
- package/dist/slash-commands/goal-refiner.d.ts.map +0 -1
- package/dist/slash-commands/goal.d.ts.map +0 -1
- package/dist/slash-commands/health.d.ts.map +0 -1
- package/dist/slash-commands/help.d.ts.map +0 -1
- package/dist/slash-commands/helpers.d.ts.map +0 -1
- package/dist/slash-commands/hq.d.ts.map +0 -1
- package/dist/slash-commands/index.d.ts.map +0 -1
- package/dist/slash-commands/init.d.ts.map +0 -1
- package/dist/slash-commands/interrupt.d.ts.map +0 -1
- package/dist/slash-commands/kanban-agent-helpers.d.ts.map +0 -1
- package/dist/slash-commands/kanban-format.d.ts.map +0 -1
- package/dist/slash-commands/kanban-help.d.ts.map +0 -1
- package/dist/slash-commands/kanban.d.ts.map +0 -1
- package/dist/slash-commands/mailbox-demo.d.ts.map +0 -1
- package/dist/slash-commands/mailbox-serve.d.ts.map +0 -1
- package/dist/slash-commands/mailbox.d.ts.map +0 -1
- package/dist/slash-commands/mcp-utils.d.ts.map +0 -1
- package/dist/slash-commands/mcp.d.ts.map +0 -1
- package/dist/slash-commands/memory-compact.d.ts.map +0 -1
- package/dist/slash-commands/memory-flags.d.ts.map +0 -1
- package/dist/slash-commands/memory-formatters.d.ts.map +0 -1
- package/dist/slash-commands/memory.d.ts.map +0 -1
- package/dist/slash-commands/metrics.d.ts.map +0 -1
- package/dist/slash-commands/mode.d.ts.map +0 -1
- package/dist/slash-commands/modelcaps.d.ts.map +0 -1
- package/dist/slash-commands/models.d.ts.map +0 -1
- package/dist/slash-commands/mouse.d.ts.map +0 -1
- package/dist/slash-commands/next.d.ts.map +0 -1
- package/dist/slash-commands/plan.d.ts.map +0 -1
- package/dist/slash-commands/plugin.d.ts.map +0 -1
- package/dist/slash-commands/profile.d.ts.map +0 -1
- package/dist/slash-commands/project-utils.d.ts.map +0 -1
- package/dist/slash-commands/project.d.ts.map +0 -1
- package/dist/slash-commands/provider-status.d.ts.map +0 -1
- package/dist/slash-commands/prune.d.ts.map +0 -1
- package/dist/slash-commands/refiner.d.ts.map +0 -1
- package/dist/slash-commands/review.d.ts.map +0 -1
- package/dist/slash-commands/sdd/rendering.d.ts.map +0 -1
- package/dist/slash-commands/sdd-command-helpers.d.ts.map +0 -1
- package/dist/slash-commands/sdd-format.d.ts.map +0 -1
- package/dist/slash-commands/sdd.d.ts.map +0 -1
- package/dist/slash-commands/security.d.ts.map +0 -1
- package/dist/slash-commands/session.d.ts.map +0 -1
- package/dist/slash-commands/setmodel.d.ts.map +0 -1
- package/dist/slash-commands/settings.d.ts.map +0 -1
- package/dist/slash-commands/shadow.d.ts.map +0 -1
- package/dist/slash-commands/slash-deep-help.d.ts.map +0 -1
- package/dist/slash-commands/spawn-agents.d.ts.map +0 -1
- package/dist/slash-commands/statusline.d.ts.map +0 -1
- package/dist/slash-commands/suggest.d.ts.map +0 -1
- package/dist/slash-commands/suggestion-store.d.ts.map +0 -1
- package/dist/slash-commands/supervisor.d.ts.map +0 -1
- package/dist/slash-commands/surfaces.d.ts.map +0 -1
- package/dist/slash-commands/tasks.d.ts.map +0 -1
- package/dist/slash-commands/techstack.d.ts.map +0 -1
- package/dist/slash-commands/telegram-pairing.d.ts.map +0 -1
- package/dist/slash-commands/telegram-settings.d.ts.map +0 -1
- package/dist/slash-commands/telegram-setup.d.ts.map +0 -1
- package/dist/slash-commands/todos.d.ts.map +0 -1
- package/dist/slash-commands/tool.d.ts.map +0 -1
- package/dist/slash-commands/tools.d.ts.map +0 -1
- package/dist/slash-commands/tuneup.d.ts.map +0 -1
- package/dist/slash-commands/working-dir.d.ts.map +0 -1
- package/dist/slash-commands/worktree.d.ts.map +0 -1
- package/dist/slash-commands/yolo.d.ts.map +0 -1
- package/dist/spinner.d.ts.map +0 -1
- package/dist/subcommands/contracts.d.ts.map +0 -1
- package/dist/subcommands/handlers/acp.d.ts.map +0 -1
- package/dist/subcommands/handlers/audit.d.ts.map +0 -1
- package/dist/subcommands/handlers/auth-local-help.d.ts.map +0 -1
- package/dist/subcommands/handlers/auth.d.ts.map +0 -1
- package/dist/subcommands/handlers/bench-run-help.d.ts.map +0 -1
- package/dist/subcommands/handlers/bench.d.ts.map +0 -1
- package/dist/subcommands/handlers/chronicle.d.ts.map +0 -1
- package/dist/subcommands/handlers/config-history.d.ts.map +0 -1
- package/dist/subcommands/handlers/diag-doctor.d.ts.map +0 -1
- package/dist/subcommands/handlers/export.d.ts.map +0 -1
- package/dist/subcommands/handlers/helpers.d.ts.map +0 -1
- package/dist/subcommands/handlers/hq.d.ts.map +0 -1
- package/dist/subcommands/handlers/init.d.ts.map +0 -1
- package/dist/subcommands/handlers/mailbox-serve.d.ts.map +0 -1
- package/dist/subcommands/handlers/mcp.d.ts.map +0 -1
- package/dist/subcommands/handlers/model-smoke-test.d.ts.map +0 -1
- package/dist/subcommands/handlers/modeldiag-profiles.d.ts.map +0 -1
- package/dist/subcommands/handlers/modeldiag.d.ts.map +0 -1
- package/dist/subcommands/handlers/models-add-help.d.ts.map +0 -1
- package/dist/subcommands/handlers/per-subcommand-deep-help-table.d.ts.map +0 -1
- package/dist/subcommands/handlers/per-subcommand-help-data.d.ts.map +0 -1
- package/dist/subcommands/handlers/per-subcommand-help-table.d.ts.map +0 -1
- package/dist/subcommands/handlers/per-subcommand-help-types.d.ts.map +0 -1
- package/dist/subcommands/handlers/per-subcommand-help.d.ts.map +0 -1
- package/dist/subcommands/handlers/permissions.d.ts.map +0 -1
- package/dist/subcommands/handlers/plugin-usage.d.ts.map +0 -1
- package/dist/subcommands/handlers/project.d.ts.map +0 -1
- package/dist/subcommands/handlers/projects.d.ts.map +0 -1
- package/dist/subcommands/handlers/providers-models.d.ts.map +0 -1
- package/dist/subcommands/handlers/quick.d.ts.map +0 -1
- package/dist/subcommands/handlers/replay.d.ts.map +0 -1
- package/dist/subcommands/handlers/rewind.d.ts.map +0 -1
- package/dist/subcommands/handlers/sessions-config.d.ts.map +0 -1
- package/dist/subcommands/handlers/sessions-fleet.d.ts.map +0 -1
- package/dist/subcommands/handlers/tools-skills.d.ts.map +0 -1
- package/dist/subcommands/handlers/update.d.ts.map +0 -1
- package/dist/subcommands/handlers/version-help.d.ts.map +0 -1
- package/dist/subcommands/index.d.ts.map +0 -1
- package/dist/theme.d.ts.map +0 -1
- package/dist/tools-skills-UNKLOB7M.js.map +0 -7
- package/dist/tui-thinking-word.d.ts.map +0 -1
- package/dist/tuneup.d.ts.map +0 -1
- package/dist/update-YC4TYW2Y.js.map +0 -7
- package/dist/update-check-UMYTOH7Z.js.map +0 -7
- package/dist/update-check.d.ts.map +0 -1
- package/dist/utils/delay-format.d.ts.map +0 -1
- package/dist/utils/hq-ttl.d.ts.map +0 -1
- package/dist/utils/win32-cmd.d.ts.map +0 -1
- package/dist/utils.d.ts.map +0 -1
- package/dist/version-help-DROHZRW6.js.map +0 -7
- package/dist/version.d.ts.map +0 -1
- package/dist/webui-server/client-registration.d.ts.map +0 -1
- package/dist/webui-server/connection-handler.d.ts.map +0 -1
- package/dist/webui-server/context-breakdown.d.ts.map +0 -1
- package/dist/webui-server/contracts.d.ts.map +0 -1
- package/dist/webui-server/cost-helpers.d.ts.map +0 -1
- package/dist/webui-server/kanban-host-adapter.d.ts.map +0 -1
- package/dist/webui-server/kanban-run-mirror.d.ts.map +0 -1
- package/dist/webui-server/kanban-supervisor.d.ts.map +0 -1
- package/dist/webui-server/lifecycle.d.ts.map +0 -1
- package/dist/webui-server/listen-helpers.d.ts.map +0 -1
- package/dist/webui-server/logger-shim.d.ts.map +0 -1
- package/dist/webui-server/node-pty-loader.d.ts.map +0 -1
- package/dist/webui-server/prefs-seeding.d.ts.map +0 -1
- package/dist/webui-server/privileged-actions.d.ts.map +0 -1
- package/dist/webui-server/provider-config.d.ts.map +0 -1
- package/dist/webui-server/session-start-payload.d.ts.map +0 -1
- package/dist/webui-server/setup-events.d.ts.map +0 -1
- package/dist/webui-server/static-serve.d.ts.map +0 -1
- package/dist/webui-server/stream-coalescer.d.ts.map +0 -1
- package/dist/webui-server/terminal-log-view.d.ts.map +0 -1
- package/dist/webui-server-XKFUOKMJ.js.map +0 -7
- package/dist/webui-server-options.d.ts.map +0 -1
- package/dist/webui-server.d.ts.map +0 -1
- package/dist/wiring/brain-and-orchestration.d.ts.map +0 -1
- package/dist/wiring/codebase-index.d.ts.map +0 -1
- package/dist/wiring/command-host-adapters.d.ts.map +0 -1
- package/dist/wiring/command-host-state.d.ts.map +0 -1
- package/dist/wiring/controllers.d.ts.map +0 -1
- package/dist/wiring/dep-watcher-bridge.d.ts.map +0 -1
- package/dist/wiring/dep-watcher.d.ts.map +0 -1
- package/dist/wiring/design-studio.d.ts.map +0 -1
- package/dist/wiring/director-setup.d.ts.map +0 -1
- package/dist/wiring/eternal-command-handlers.d.ts.map +0 -1
- package/dist/wiring/fleet-command-handlers.d.ts.map +0 -1
- package/dist/wiring/hq-telemetry.d.ts.map +0 -1
- package/dist/wiring/lifecycle-plugins.d.ts.map +0 -1
- package/dist/wiring/mailbox-bridge-bootstrap.d.ts.map +0 -1
- package/dist/wiring/management-tools.d.ts.map +0 -1
- package/dist/wiring/metrics.d.ts.map +0 -1
- package/dist/wiring/pipeline.d.ts.map +0 -1
- package/dist/wiring/plugins.d.ts.map +0 -1
- package/dist/wiring/provider-runtime-setup.d.ts.map +0 -1
- package/dist/wiring/provider-runtime.d.ts.map +0 -1
- package/dist/wiring/provider-status.d.ts.map +0 -1
- package/dist/wiring/provider-utility-tools.d.ts.map +0 -1
- package/dist/wiring/provider.d.ts.map +0 -1
- package/dist/wiring/replay.d.ts.map +0 -1
- package/dist/wiring/runtime-controller-deps.d.ts.map +0 -1
- package/dist/wiring/runtime-dispatch-state.d.ts.map +0 -1
- package/dist/wiring/runtime-lifecycle-deps.d.ts.map +0 -1
- package/dist/wiring/runtime-picker-deps.d.ts.map +0 -1
- package/dist/wiring/sage.d.ts.map +0 -1
- package/dist/wiring/sdd-handlers.d.ts.map +0 -1
- package/dist/wiring/security-command.d.ts.map +0 -1
- package/dist/wiring/session-command-handlers.d.ts.map +0 -1
- package/dist/wiring/session-registry.d.ts.map +0 -1
- package/dist/wiring/session.d.ts.map +0 -1
- package/dist/wiring/slash-commands.d.ts.map +0 -1
- package/dist/wiring/to-execute-deps.d.ts.map +0 -1
- package/dist/wiring/tools.d.ts.map +0 -1
package/dist/tuneup.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tuneup.d.ts","sourceRoot":"","sources":["../src/tuneup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"update-check.d.ts","sourceRoot":"","sources":["../src/update-check.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,KAAK,SAAS,GAAG,MAAM,MAAM,CAAC;AAG9B,MAAM,MAAM,iBAAiB,GAAG,YAAY,GAAG,iBAAiB,CAAC;AAOjE,yDAAyD;AACzD,wBAAgB,SAAS,CAAC,MAAM,GAAE,SAA0B,GAAG,MAAM,CAMpE;AAWD,qDAAqD;AACrD,wBAAgB,cAAc,IAAI,MAAM,CAYvC;AA0CD,8FAA8F;AAC9F,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CASrD;AAgDD;;;4EAG4E;AAC5E,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACxE,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,iBAAiB,EAC9B,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,GAC/B,OAAO,CAAC,MAAM,CAAC,CAAC;AA6BnB,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAC5C,kGAAkG;IAClG,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACpC;AAED,4FAA4F;AAC5F,wBAAsB,cAAc,CAClC,eAAe,CAAC,EAAE,WAAW,GAAG,qBAAqB,GAAG,SAAS,EACjE,YAAY,CAAC,EAAE,SAAS,GAAG,SAAS,GACnC,OAAO,CAAC,UAAU,CAAC,CAgDrB;AAED,qEAAqE;AACrE,wBAAsB,qBAAqB,CACzC,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,EAChC,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAC7B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAMxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"delay-format.d.ts","sourceRoot":"","sources":["../../src/utils/delay-format.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAI9C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hq-ttl.d.ts","sourceRoot":"","sources":["../../src/utils/hq-ttl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAWH,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CA6BzD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"win32-cmd.d.ts","sourceRoot":"","sources":["../../src/utils/win32-cmd.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,wBAAwB,EAAE,IAAI,CAAC;CAChC;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,SAAS,MAAM,EAAO,GAC3B,sBAAsB,CAQxB"}
|
package/dist/utils.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAIxC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAE3E;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAU9C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE;IACD,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;IACrD,KAAK,CAAC,EACF,MAAM,GACN;QACE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7B,SAAS,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QAChC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAChC,GACD,SAAS,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,EACD,KAAK,EAAE;IACL,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACxB,GACA;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CA4B/C"}
|
package/dist/version.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,WAAW,QAAmB,CAAC;AAE5C,QAAA,IAAI,WAAW,QAAU,CAAC;AAU1B,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client-registration.d.ts","sourceRoot":"","sources":["../../src/webui-server/client-registration.ts"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAGlG,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,OAAO,CAAC;IAC/B,eAAe,EAAE,MAAM,OAAO,CAAC;IAC/B,UAAU,CAAC,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC/C,SAAS,CAAC,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC7C,cAAc,CAAC,EAAE,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,2BAA2B;IAC1C,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,SAAS,EAAE,OAAO,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/D,MAAM,EAAE,OAAO,yBAAyB,EAAE,QAAQ,CAAC;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;CAC7C;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACnC,UAAU,IAAI,IAAI,CAAC;CACpB;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,2BAA2B,GAChC,uBAAuB,CA4BzB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"connection-handler.d.ts","sourceRoot":"","sources":["../../src/webui-server/connection-handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAMlC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEvE,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,SAAS,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACzC,gBAAgB,EAAE,MAAM,MAAM,CAAC;IAC/B,WAAW,EAAE,oBAAoB,CAAC;IAClC,YAAY,EAAE,qBAAqB,CAAC;IACpC,eAAe,EAAE,wBAAwB,CAAC;IAC1C,gBAAgB,EAAE,yBAAyB,GAAG,IAAI,CAAC;IACnD,eAAe,EAAE,wBAAwB,CAAC;IAC1C,eAAe,EAAE,wBAAwB,CAAC;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,cAAc,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7F,aAAa,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/F,gBAAgB,EAAE,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAClD,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC7C,wBAAwB,EAAE,CACxB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,UAAU,CAAC,EAAE,OAAO,KACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtC,UAAU,CAAC,EACP,CAAC,MAAM,OAAO,CAAC;QACb,QAAQ,EAAE,OAAO,EAAE,CAAC;QACpB,MAAM,CAAC,EAAE,SAAS,YAAY,EAAE,GAAG,SAAS,CAAC;QAC7C,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC;KAC3B,GAAG,IAAI,CAAC,CAAC,GACV,SAAS,CAAC;IACd,iBAAiB,CAAC,EACd,CAAC,MAAM,OAAO,CAAC,OAAO,+BAA+B,EAAE,mBAAmB,EAAE,CAAC,CAAC,GAC9E,SAAS,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,qBAAqB,GAC1B,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CA2FxD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-breakdown.d.ts","sourceRoot":"","sources":["../../src/webui-server/context-breakdown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/webui-server/contracts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cost-helpers.d.ts","sourceRoot":"","sources":["../../src/webui-server/cost-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kanban-host-adapter.d.ts","sourceRoot":"","sources":["../../src/webui-server/kanban-host-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGhF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAIlE,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EAEpB,KAAK,eAAe,EACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAEpD,UAAU,wBAAwB;IAChC,IAAI,EAAE;QACJ,KAAK,EAAE,KAAK,CAAC;QACb,MAAM,EAAE,QAAQ,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACjC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC/B,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;QACtC,kBAAkB,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;QAC9C,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;KAClC,CAAC;IACF,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC;IACpD,gFAAgF;IAChF,SAAS,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACzD,WAAW,EAAE,oBAAoB,CAAC;IAClC,gBAAgB,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACpD,sEAAsE;IACtE,eAAe,CAAC,EAAE,eAAe,GAAG,SAAS,CAAC;CAC/C;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,wBAAwB,GAAG,uBAAuB,CAkLjG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kanban-run-mirror.d.ts","sourceRoot":"","sources":["../../src/webui-server/kanban-run-mirror.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,6BAA6B,EAC7B,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,GACzB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"kanban-supervisor.d.ts","sourceRoot":"","sources":["../../src/webui-server/kanban-supervisor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,KAAK,+BAA+B,GACrC,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/webui-server/lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,2BAA2B,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,GAC5B,MAAM,0BAA0B,CAAC;AAElC,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"listen-helpers.d.ts","sourceRoot":"","sources":["../../src/webui-server/listen-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,UAAU,YAAY;IACpB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC3D,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC7D;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;CACtB,GAAG,OAAO,CAAC,IAAI,CAAC,CAYhB;AAED,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;CACtB,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CA6B9B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger-shim.d.ts","sourceRoot":"","sources":["../../src/webui-server/logger-shim.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAiBrD;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,EAAE,MAoB3B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"node-pty-loader.d.ts","sourceRoot":"","sources":["../../src/webui-server/node-pty-loader.ts"],"names":[],"mappings":"AAKA,UAAU,mBAAmB;IAC3B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,MAAM,OAAO,CAmDrG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prefs-seeding.d.ts","sourceRoot":"","sources":["../../src/webui-server/prefs-seeding.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAEL,SAAS,EAIV,MAAM,0BAA0B,CAAC;AAElC,UAAU,eAAe;IACvB,KAAK,EAAE;QAAE,GAAG,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAA;KAAE,CAAC;IAClD,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EACN;QACE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;QACxD,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QACtC,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACzC,yBAAyB,CAAC,EAAE,iBAAiB,EAAE,GAAG,SAAS,CAAC;QAC5D,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACnC,WAAW,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;QAChD,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC/B,GACD,SAAS,CAAC;CACf;AAED,KAAK,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,CAAC;AAErB,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAW3E;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,YAAY,CAAC;IACjC,YAAY,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,eAAe,GAAG,YAAY,CA6EtE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"privileged-actions.d.ts","sourceRoot":"","sources":["../../src/webui-server/privileged-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC1H,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,0BAA0B,CAAC;AAElC,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,aAAa,EACvB,MAAM,EAAE;IACN,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC,GAAG,SAAS,CAAC;CACnF,GACA,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAc/C;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,aAAa,GAAG,oBAAoB,CAOpF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider-config.d.ts","sourceRoot":"","sources":["../../src/webui-server/provider-config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAU7D,OAAO,EACL,aAAa,EACb,SAAS,EACT,aAAa,EACb,MAAM,EACN,aAAa,GACd,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,wBAAgB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,GAAG,kBAAkB,CAMjF;AAED,wBAAsB,kBAAkB,CACtC,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAGzC;AAED,wBAAsB,aAAa,CACjC,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,CAWf;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChE;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,gBAAgB,EAAE,MAAM,GAAG,SAAS,EACpC,kBAAkB,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GACxD,mBAAmB,CAQrB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session-start-payload.d.ts","sourceRoot":"","sources":["../../src/webui-server/session-start-payload.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,qEAAqE;AACrE,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;AAExC,yEAAyE;AACzE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE,CAAC;IACxB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IAC5C,aAAa,CAAC,EAAE,OAAO,+BAA+B,EAAE,0BAA0B,GAAG,SAAS,CAAC;IAC/F,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,UAAU,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,MAAM,wBAAwB,GAAG,CACrC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,UAAU,CAAC,EAAE,OAAO,KACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,uBAAuB,GAC5B,wBAAwB,CAoE1B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-events.d.ts","sourceRoot":"","sources":["../../src/webui-server/setup-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EACL,yBAAyB,EACzB,KAAK,cAAc,EAEpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE,CAAC;IACxB,yBAAyB,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAC5F,SAAS,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAC7D,cAAc,EAAE,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7F,gBAAgB,EAAE,MAAM,MAAM,CAAC;IAC/B,cAAc,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAC;IAClD,kBAAkB,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAC1D,iBAAiB,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;IACxD,kBAAkB,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAC;IAC1D,qBAAqB,EAAE,eAAe,CAAC,uBAAuB,CAAC,CAAC;IAChE,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC7C,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,kBAAkB,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACtE;AAED,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,IAAI,CA6EnE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"static-serve.d.ts","sourceRoot":"","sources":["../../src/webui-server/static-serve.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stream-coalescer.d.ts","sourceRoot":"","sources":["../../src/webui-server/stream-coalescer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB,MAAM,0BAA0B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-log-view.d.ts","sourceRoot":"","sources":["../../src/webui-server/terminal-log-view.ts"],"names":[],"mappings":"AAMA,KAAK,aAAa,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;AAElD,UAAU,aAAa;IACrB,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,aAAa,CAAC;IACrB,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,aAAa,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IAC1C,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IACtF,eAAe,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACjE;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,MAAM,IAAI,IAAI,CAAC;IACf,IAAI,IAAI,IAAI,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,GAAE,6BAAkC,GAC1C,sBAAsB,CA4DxB"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/webui-server.ts", "../src/webui-server/client-registration.ts", "../src/webui-server/connection-handler.ts", "../src/webui-server/kanban-host-adapter.ts", "../src/webui-server/kanban-supervisor.ts", "../src/webui-server/lifecycle.ts", "../src/webui-server/listen-helpers.ts", "../src/webui-server/logger-shim.ts", "../src/webui-server/node-pty-loader.ts", "../src/webui-server/prefs-seeding.ts", "../src/webui-server/provider-config.ts", "../src/webui-server/session-start-payload.ts", "../src/webui-server/cost-helpers.ts", "../src/webui-server/setup-events.ts", "../src/webui-server/static-serve.ts", "../src/webui-server/stream-coalescer.ts", "../src/webui-server/terminal-log-view.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * CLI embedded WebUI server \u2014 the backend behind `wrongstack --webui`.\n *\n * `runWebUI(opts)` boots a WebSocket bridge (and, when the webui package\n * is built, the static HTTP frontend) over the *same* agent/events/\n * session instances the REPL and eternal-autonomy loop use, then routes\n * browser messages through a `handleMessage` switch.\n *\n * Most self-contained concerns live under `webui-server/*`; this file now\n * assembles CLI-owned instances, route contexts, WebSocket lifecycle, and the\n * embedded shared router.\n *\n * Public surface: `runWebUI` plus WS message shapes.\n */\nimport type { Server as HttpServer } from 'node:http';\nimport { findPackageJSON } from 'node:module';\nimport * as os from 'node:os';\nimport * as path from 'node:path';\nimport type { Context } from '@wrongstack/core/agent';\nimport { TOKENS } from '@wrongstack/core/kernel';\nimport { createCompatibilityTrustBoundary, DefaultSecretScrubber } from '@wrongstack/core/security';\nimport { SkillInstaller } from '@wrongstack/core/skills';\nimport { PromptUsageStore, watchProviderConfig } from '@wrongstack/core/storage';\nimport type { ProviderConfig } from '@wrongstack/core/types';\nimport {\n resolveWstackPaths,\n startSharedHeapWatchdog,\n wstackGlobalRoot,\n} from '@wrongstack/core/utils';\nimport { toErrorMessage } from '@wrongstack/core/utils/error';\nimport { makeProviderFromConfig } from '@wrongstack/providers';\nimport {\n type BrainHandlerContext,\n buildSddWizardDeps,\n buildWebUIAccessUrl,\n type CustomModeStore,\n createCustomModeStore,\n createEmbeddedMessageRouter,\n createEmbeddedProviderOperations,\n createMailboxRouteHandlers,\n type DesignContext,\n type EmbeddedAgentConfigContext,\n type EmbeddedConversationContext,\n type EmbeddedProjectContext,\n type EmbeddedProviderContext,\n type EmbeddedSessionContext,\n envFlag,\n findFreePort,\n GoalWebSocketHandler,\n type IntrospectionRouteContext,\n type PendingConfirm,\n type PrefsHandlerContext,\n type PromptsContext,\n resolveAuthToken,\n SddBoardWebSocketHandler,\n SddWizardWebSocketHandler,\n type SkillsContext,\n SpecsWebSocketHandler,\n TerminalWebSocketHandler,\n WorktreeWebSocketHandler,\n} from '@wrongstack/webui-server';\nimport { WebSocket, WebSocketServer } from 'ws';\nimport { createWebuiClientRegistration } from './webui-server/client-registration.js';\nimport type {\n WSClientMessage as EmbeddedWSClientMessage,\n WSServerMessage as EmbeddedWSServerMessage,\n} from './webui-server/contracts.js';\nexport type WSClientMessage = EmbeddedWSClientMessage;\nexport type WSServerMessage = EmbeddedWSServerMessage;\n\nimport {\n type ConnectedClient,\n createConnectionHandler,\n} from './webui-server/connection-handler.js';\nimport { createCliKanbanHostRoutes } from './webui-server/kanban-host-adapter.js';\nimport { createKanbanRunMirror } from './webui-server/kanban-run-mirror.js';\nimport { createKanbanSupervisor } from './webui-server/kanban-supervisor.js';\nimport {\n announceWebuiReady,\n createWebuiShutdown,\n registerWebuiInstance,\n registerWebuiSignalHandlers,\n} from './webui-server/lifecycle.js';\nimport { startDeferredHttpListen, startIpv6LoopbackProxy } from './webui-server/listen-helpers.js';\nimport { consoleLogger } from './webui-server/logger-shim.js';\nimport { createNodePtyLoader } from './webui-server/node-pty-loader.js';\nimport { createPrefsSeeding, seedConfigToMeta } from './webui-server/prefs-seeding.js';\nimport {\n createProviderConfigStore,\n getVault,\n loadSavedProviders,\n} from './webui-server/provider-config.js';\nimport { createSessionStartPayloadBuilder } from './webui-server/session-start-payload.js';\nimport { createSetupEvents } from './webui-server/setup-events.js';\nimport { startStaticServe } from './webui-server/static-serve.js';\nimport { createStreamCoalescer } from './webui-server/stream-coalescer.js';\nimport { startBoundedTerminalLogView } from './webui-server/terminal-log-view.js';\n\nimport type { CliWebUIOptions } from './webui-server-options.js';\n\nexport type { CliWebUIOptions } from './webui-server-options.js';\nexport async function runWebUI(opts: CliWebUIOptions): Promise<void> {\n const trustBoundary =\n opts.trustBoundary ??\n createCompatibilityTrustBoundary({ policyId: 'cli-webui-trusted-host-compat-v1' });\n const host = opts.host ?? process.env['WEBUI_HOST'] ?? process.env['WS_HOST'] ?? '127.0.0.1';\n const publicUrl = opts.publicUrl ?? process.env['WEBUI_PUBLIC_URL'];\n const publicWsUrl = opts.publicWsUrl ?? process.env['WEBUI_PUBLIC_WS_URL'];\n const requireToken = opts.requireToken ?? envFlag('WEBUI_REQUIRE_TOKEN');\n const surface = opts.surface ?? 'webui';\n const surfaceDefaults = surface === 'simpleui' ? { http: 3466 } : { http: 3456 };\n const requestedHttpPort = opts.httpPort ?? opts.port ?? surfaceDefaults.http;\n // Auto-advance past busy ports (unless WEBUI_STRICT_PORT) so this works\n // alongside other WebUI instances. WS shares the HTTP port (single-port\n // design), so only one port is resolved.\n const strictPort =\n process.env['WEBUI_STRICT_PORT'] === '1' || process.env['WEBUI_STRICT_PORT'] === 'true';\n let httpPort = requestedHttpPort;\n if (!strictPort) {\n httpPort = await findFreePort(host, requestedHttpPort);\n }\n const wsPort = httpPort; // shared port \u2014 kept for onListening/announce compat\n const globalRoot = opts.globalConfigPath\n ? path.dirname(opts.globalConfigPath)\n : wstackGlobalRoot();\n // Keep older embedders/tests that only provide globalConfigPath working.\n // The CLI supplies profileConfigPath, but treating it as the sole source\n // caused startup to reject before the HTTP/WS server could report errors.\n const profileConfigPath =\n opts.profileConfigPath ?? opts.globalConfigPath ?? path.join(globalRoot, 'config.json');\n // Per-connection message rate limit. OFF by default \u2014 this is a local,\n // single-user tool and the limit (which counted pings/list calls too) was\n // tripping during normal use. Opt back in by setting WEBUI_RATE_LIMIT to a\n // positive messages-per-60s number (useful only when exposing on a LAN).\n const rateLimitMax = Number.parseInt(process.env['WEBUI_RATE_LIMIT'] ?? '0', 10);\n const clients = new Map<WebSocket, ConnectedClient>();\n // Pending permission confirmations keyed by toolUseId. When the agent emits\n // tool.confirm_needed, we stash its resolver here and forward the prompt to\n // the browser; the client's tool.confirm_result resolves it. This is what\n // makes approvals appear in the WebUI instead of the terminal.\n const pendingConfirms = new Map<string, PendingConfirm>();\n const secretScrubber = new DefaultSecretScrubber();\n let abortController: AbortController | null = null;\n // Per-WebSocket abort controllers. The legacy single-slot `abortController`\n // above is the project-switch path's view (it always aborts the in-flight\n // run, no matter which socket initiated the switch) \u2014 kept for behavior\n // parity. The per-socket map scopes `case 'abort'` and `handleUserMessage`\n // so a second browser tab or a rapid same-tab abort cannot kill another\n // socket's run. Both are kept in sync.\n const abortControllers = new Map<WebSocket, AbortController>();\n\n const profileDir = path.dirname(profileConfigPath);\n // Custom context modes are profile-scoped and shared with the standalone server.\n let customModeStoreP: Promise<CustomModeStore> | null = null;\n const getCustomModeStore = (): Promise<CustomModeStore> => {\n customModeStoreP ??= (async () => {\n const store = createCustomModeStore(profileDir);\n await store.load();\n return store;\n })();\n return customModeStoreP;\n };\n\n // Goal handler \u2014 manages Goal lifecycle via WS messages.\n // Initialized here so it can be used in the connection handler and message switch.\n const goalStoreDir = opts.projectRoot\n ? path.join(opts.projectRoot, '.wrongstack', 'goal')\n : path.join(os.tmpdir(), '.wrongstack', 'goal');\n // KanbanRunMirror \u2014 projects live SDD (via the shared bus) and Goal (via\n // the handler callback below) runs into kanban boards, so the kanban view is\n // the unified live surface. Needs a project root (kanban boards are project-scoped).\n const kanbanRunMirror = opts.projectRoot\n ? createKanbanRunMirror({\n projectRoot: opts.projectRoot,\n events: opts.events,\n broadcast,\n log: (m) => consoleLogger.info(m),\n })\n : null;\n const kanbanSupervisor = opts.projectRoot\n ? createKanbanSupervisor({\n projectRoot: opts.projectRoot,\n broadcast,\n ...(opts.onKanbanDispatch ? { dispatchTask: opts.onKanbanDispatch } : {}),\n log: (message) => consoleLogger.info(message),\n })\n : null;\n const stopKanbanSupervisorMemoryStats = kanbanSupervisor\n ? startSharedHeapWatchdog({\n collectStats: () => {\n const stats = kanbanSupervisor.getStats();\n return {\n kanbanSupervisorSnapshots: stats.snapshots,\n kanbanSupervisorScheduledBoards: stats.scheduledBoards,\n kanbanSupervisorAgentCooldowns: stats.agentCooldowns,\n kanbanSupervisorRunningAgents: stats.runningAgents,\n };\n },\n })\n : undefined;\n const goalHandler = new GoalWebSocketHandler(\n opts.agent,\n opts.agent.ctx as Context,\n consoleLogger,\n goalStoreDir,\n opts.events,\n opts.projectRoot,\n kanbanRunMirror ? (graphId, state) => kanbanRunMirror.onGoalState(graphId, state) : undefined,\n );\n const worktreeHandler = new WorktreeWebSocketHandler(opts.events, consoleLogger);\n\n const loadNodePtyViaWebui = createNodePtyLoader(import.meta.url, consoleLogger);\n const terminalHandler = new TerminalWebSocketHandler(\n () => (opts.agent.ctx as Context).cwd ?? opts.projectRoot ?? process.cwd(),\n consoleLogger,\n loadNodePtyViaWebui as ConstructorParameters<typeof TerminalWebSocketHandler>[2],\n undefined,\n trustBoundary,\n );\n\n // Specs handler \u2014 FORGE-style dependency board over the shared per-project\n // SDD stores (where /sdd persists specs + task graphs).\n const specsPaths = opts.projectRoot\n ? resolveWstackPaths({ projectRoot: opts.projectRoot })\n : null;\n const specsHandler = new SpecsWebSocketHandler(\n specsPaths?.projectSpecs ?? path.join(os.tmpdir(), '.wrongstack', 'specs'),\n specsPaths?.projectTaskGraphs ?? path.join(os.tmpdir(), '.wrongstack', 'task-graphs'),\n );\n\n // SDD live board handler \u2014 same process as the run, so it streams instantly\n // off the shared EventBus (no disk polling) and steers via Kanban IPC.\n // Lifecycle deps enable Clean / Rollback / Destroy from the WebUI (same as\n // standalone server) \u2014 without them those buttons only report \"unavailable\".\n const sddBoardHandler = new SddBoardWebSocketHandler(\n specsPaths?.projectSddBoards ?? path.join(os.tmpdir(), '.wrongstack', 'sdd-boards'),\n opts.events,\n specsPaths && opts.projectRoot\n ? {\n projectRoot: opts.projectRoot,\n paths: {\n projectSpecs: specsPaths.projectSpecs,\n projectTaskGraphs: specsPaths.projectTaskGraphs,\n projectSddSession: specsPaths.projectSddSession,\n projectSddBoards: specsPaths.projectSddBoards,\n },\n }\n : undefined,\n { trustBoundary, logger: consoleLogger },\n );\n\n // SDD wizard \u2014 interactive \"New SDD Project\" flow. Available only when the\n // host threaded its director-backed subagent factory (so the run uses the\n // same fleet as `/sdd execute`). The interview turns + run share that factory.\n const sddWizardHandler =\n opts.sddSubagentFactory && specsPaths\n ? new SddWizardWebSocketHandler(\n buildSddWizardDeps({\n agent: opts.agent,\n events: opts.events,\n projectRoot: opts.projectRoot ?? process.cwd(),\n subagentFactory: opts.sddSubagentFactory,\n // Failure supervisor parity with /sdd execute \u2014 omit only when\n // the host never bound a BrainArbiter.\n ...(opts.brain ? { brain: opts.brain } : {}),\n paths: {\n projectSpecs: specsPaths.projectSpecs,\n projectTaskGraphs: specsPaths.projectTaskGraphs,\n projectSddBoards: specsPaths.projectSddBoards,\n projectDir: specsPaths.projectDir,\n projectSddSession: specsPaths.projectSddSession,\n },\n }),\n )\n : null;\n\n // \u2500\u2500 Settings parity with the TUI \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n // Seed agent.ctx.meta from config.json on startup, then snapshot/persist\n // via the prefs handlers. Extracted to prefs-seeding.ts (PR 8 of Issue #30).\n await seedConfigToMeta(opts);\n if (typeof opts.agent.ctx?.meta?.['yolo'] === 'boolean') {\n opts.onYoloSwitch?.(opts.agent.ctx.meta['yolo']);\n }\n\n const { prefSnapshot, persistPrefs } = createPrefsSeeding(opts);\n\n // Captured once at startup so stats.get can report elapsed time since the\n // session was opened, rather than the hardcoded 0 it used to send.\n const sessionStartedAt = Date.now();\n\n // session.start payload builder \u2014 cost rates + max-context enrichment.\n // PR 11 of Issue #30: extracted to `./webui-server/session-start-payload.ts`.\n const buildSessionStartPayload = createSessionStartPayloadBuilder(opts);\n\n // \u2500\u2500 Client (REPL/TUI/WebUI) registration \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n // Mailbox presence + HQ telemetry for this WebUI instance. PR 10 of\n // Issue #30: extracted to `./webui-server/client-registration.ts`.\n const { register: registerWebuiClient, unregister: unregisterWebuiClient } =\n createWebuiClientRegistration({\n projectRoot: opts.projectRoot,\n appConfig: opts.appConfig,\n events: opts.events,\n hqSessionId: opts.session.id,\n getSessionId: () => opts.agent.ctx.session?.id ?? opts.session.id,\n // Two-way HQ control for the WebUI client: steer/btw/queue/broadcast\n // land in the project mailbox (the WebUI's agent reads it like any\n // other surface), and abort tears down every in-flight run on this\n // instance. Without this block the WebUI would be HQ-invisible to the\n // Control tab \u2014 telemetry only.\n hqControl: {\n interruptLeader: () => {\n let aborted = false;\n if (abortController) {\n abortController.abort();\n abortController = null;\n aborted = true;\n }\n for (const c of abortControllers.values()) {\n c.abort();\n aborted = true;\n }\n abortControllers.clear();\n return aborted;\n },\n allowRunCommand: () => opts.hqAllowExec === true,\n },\n });\n\n // Register immediately (fire-and-forget so it doesn't block server startup)\n registerWebuiClient();\n\n // Generate auth token for WS connections and HTTP /ws-auth endpoint.\n // The token is passed to the frontend via the URL query param, which the\n // frontend then exchanges for an HttpOnly cookie via /ws-auth?token=...\n // This closes C-598 (query-string token exposure) after the first request.\n const wsToken = resolveAuthToken(opts.accessToken);\n const publicHostnames = [publicUrl, publicWsUrl]\n .map((value) => {\n if (!value) return undefined;\n try {\n return new URL(value).hostname;\n } catch {\n return undefined;\n }\n })\n .filter((value): value is string => Boolean(value));\n const accessUrl = buildWebUIAccessUrl({\n host,\n port: httpPort,\n token: wsToken,\n publicUrl,\n });\n\n // Serve the React frontend over HTTP so `wrongstack --webui` is a one-command\n // launch (open the printed URL) instead of only a WS bridge. The dist\n // discovery + HTTP server bring-up live in\n // `webui-server/static-serve.ts`; we just hand it the options and\n // wire the open-browser callback on top. If the webui package\n // isn't built, `startStaticServe` returns null and we degrade\n // gracefully to WS-only (the original behavior).\n // Captured from the status block below so `POST /api/fleet/ping` can trigger\n // an immediate fleet re-broadcast (push-on-write from a TUI/REPL).\n let fleetBroadcastCli: (() => Promise<void>) | null = null;\n const httpServer = await startStaticServe({\n host,\n httpPort,\n globalRoot,\n distDir: opts.frontendDistDir,\n ensureDistDeps: {\n resolvePackageJson: (id) => {\n const packageJson = findPackageJSON(id, import.meta.url);\n if (!packageJson) throw new Error(`Package not found: ${id}`);\n return packageJson;\n },\n },\n onFleetPing: () => {\n void fleetBroadcastCli?.();\n },\n onTechStackEvent: (event) => broadcast(event),\n // Read through the live agent context so a mid-session model switch or a\n // credential hot-reload takes effect on the next analyze.\n getLlm: () =>\n opts.agent.ctx.provider && opts.agent.ctx.model\n ? { provider: opts.agent.ctx.provider, model: opts.agent.ctx.model }\n : undefined,\n projectRoot: opts.projectRoot,\n publicWsUrl,\n apiToken: wsToken,\n requireToken,\n // SimpleUI only: defer listen until after the WebSocketServer is\n // attached, so a WS upgrade request cannot arrive between listen()\n // and the WS handler registration.\n deferListen: surface === 'simpleui',\n });\n\n // 20 MiB to leave headroom for image attachments (base64-inflated) in\n // user_message payloads. Keep in sync with webui-server's WS_MAX_PAYLOAD \u2014\n // both servers speak the same protocol and must accept the same messages.\n //\n // Single-port design: when the HTTP server is available, the WS server\n // attaches to it via { server: httpServer } so a single listen() binds\n // both the HTTP frontend and the WS upgrade handler on the same port.\n // When the frontend isn't built (httpServer === null), fall back to a\n // standalone WS listener on the same port.\n //\n // For SimpleUI, deferListen suppressed the internal listen() so we call\n // it here after creating the WSS \u2014 preventing the WS upgrade race.\n const wss = httpServer\n ? new WebSocketServer({ server: httpServer.server, maxPayload: 20 * 1024 * 1024 })\n : new WebSocketServer({ port: httpPort, host, maxPayload: 20 * 1024 * 1024 });\n\n // SimpleUI: start listening now that the WS handler is registered.\n // Await with an error handler so EADDRINUSE (race between findFreePort\n // and this listen) propagates as a rejected promise instead of a silent\n // crash \u2014 the caller's .catch handler (dispatch-webui.ts:349) reports\n // the error gracefully.\n if (httpServer && surface === 'simpleui') {\n await startDeferredHttpListen({\n server: httpServer.server,\n host,\n httpPort,\n logger: consoleLogger,\n });\n }\n\n // \u2500\u2500 IPv6 loopback secondary listen \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n // Chrome/Edge on Windows resolve `localhost` to [::1] BEFORE 127.0.0.1. A\n // v4-only bind then makes the WebSocket upgrade to ws://localhost:PORT fail\n // with ECONNREFUSED: the HTTP page still loads (browsers retry v4 for the\n // navigation) but the WS does NOT retry, so SimpleUI/WebUI shows \"WebSocket\n // connection failed\" and never comes up.\n //\n // A Node http.Server binds a single address \u2014 calling `.listen()` twice on\n // the already-listening primary throws ERR_SERVER_ALREADY_LISTEN. So bring\n // up the IPv6 loopback with a SECOND server that forwards its HTTP requests\n // and WS upgrades onto the primary; the shared WebSocketServer (attached via\n // {server: httpServer.server}) then serves both loopback families, so\n // `localhost` AND `127.0.0.1` work. Best-effort: EAFNOSUPPORT/EADDRNOTAVAIL/\n // EADDRINUSE (no usable IPv6 loopback, or already bound) must never take down\n // the authoritative v4 listener.\n let ipv6LoopbackServer: HttpServer | null = null;\n if (httpServer && host === '127.0.0.1') {\n ipv6LoopbackServer = await startIpv6LoopbackProxy({\n primary: httpServer.server,\n httpPort,\n logger: consoleLogger,\n });\n }\n\n console.log(`[WebUI] WebSocket server starting on ws://${host}:${httpPort}`);\n\n if (httpServer) {\n announceWebuiReady({\n surface,\n server: httpServer.server,\n host,\n httpPort,\n open: !!opts.open,\n wsToken,\n publicUrl,\n });\n } else {\n console.warn(\n `[WebUI] Frontend not served (run \\`pnpm --filter @wrongstack/webui build\\`). ` +\n `WS bridge still active on ws://${host}:${httpPort}.`,\n );\n }\n\n // Record this instance so it shows up in `wstack --webui --list` /\n // ~/.wrongstack/webui-instances.json alongside standalone instances.\n const registryBaseDir = globalRoot;\n if (opts.projectRoot) {\n registerWebuiInstance({\n pid: process.pid,\n surface,\n host,\n httpPort,\n publicUrl,\n projectRoot: opts.projectRoot,\n startedAt: new Date().toISOString(),\n registryBaseDir,\n });\n }\n // Auth token is delivered through the printed first-load URL and then\n // exchanged for an HttpOnly cookie by /ws-auth.\n\n // Subscribe to events once\n const eventUnsubscribers: Array<() => void> = [];\n\n const currentSessionId = (): string => opts.agent.ctx.session?.id ?? opts.session.id;\n const sessionPayload = <T extends Record<string, unknown>>(\n payload: T,\n ): T & { sessionId: string } => {\n const provided = payload['sessionId'];\n const sessionId =\n typeof provided === 'string' && provided.length > 0 ? provided : currentSessionId();\n return { ...payload, sessionId };\n };\n\n // Coalesce high-volume live events on the server before they hit every\n // connected browser tab. PR 9 of Issue #30: extracted to\n // `./webui-server/stream-coalescer.ts`.\n const {\n queueTextDelta,\n queueThinkingDelta,\n queueToolProgress,\n flushThinkingDelta,\n flushAllStreamBuffers,\n } = createStreamCoalescer({ broadcast, sessionPayload });\n\n // \u2500\u2500 Event arming \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n // Every EventBus \u2192 browser broadcast subscription (incl. the fleet\n // concurrency gauge state). PR 12 of Issue #30: extracted to\n // `./webui-server/setup-events.ts`.\n const setupEvents = createSetupEvents({\n events: opts.events,\n agent: opts.agent,\n subscribeEternalIteration: opts.subscribeEternalIteration,\n broadcast,\n sessionPayload,\n currentSessionId,\n queueTextDelta,\n queueThinkingDelta,\n queueToolProgress,\n flushThinkingDelta,\n flushAllStreamBuffers,\n pendingConfirms,\n secretScrubber,\n getClients: () => clients,\n eventUnsubscribers,\n globalConfigPath: path.join(globalRoot, 'config.json'),\n onFleetBroadcaster: (fn) => {\n fleetBroadcastCli = fn;\n },\n });\n\n // Shared state for the extracted ws-handler groups (PR 5 of #30).\n // `send`/`broadcast` are hoisted function declarations, so capturing\n // them here is safe even though they're defined further down.\n const wsHandlerCtx: EmbeddedProviderContext = {\n providerStore: createProviderConfigStore(\n profileConfigPath,\n // Use the in-memory merged config providers so the WebUI sees the\n // same provider list the agent uses. Without this, providers stored\n // only in the project-local config (config.local.json) would be\n // invisible to the WebUI's saved-providers panel because the store\n // reads exclusively from the global config file.\n () => (opts.appConfig?.providers as Record<string, ProviderConfig> | undefined) ?? {},\n ),\n modelsRegistry: opts.modelsRegistry,\n send,\n broadcast,\n log: (m) => console.log(m),\n };\n const embeddedProviderOperations = createEmbeddedProviderOperations(wsHandlerCtx);\n\n // Hot-reload provider credentials when config.json changes on disk (another\n // terminal's `wstack auth`, a provider panel in a different window, or a\n // manual edit). Rebuild the live agent's provider so the next message uses\n // the new key without a server restart, and re-broadcast the saved-providers\n // projection so every connected panel re-renders. Mirrors the live-swap that\n // `handleModelSwitch` already does. Escape hatch: WRONGSTACK_DISABLE_CONFIG_WATCH=1.\n //\n // Watches the ACTIVE PROFILE config (~/.wrongstack/profiles/<name>/config.json)\n // where all user settings, providers, and routing configs live.\n const watchConfigPath = profileConfigPath;\n let credentialWatcherClose: (() => void) | undefined;\n if (watchConfigPath && process.env['WRONGSTACK_DISABLE_CONFIG_WATCH'] !== '1') {\n let lastActiveCfg = JSON.stringify(\n opts.appConfig?.providers?.[opts.agent.ctx.provider.id] ?? null,\n );\n let lastUiLocale = opts.appConfig?.uiLocale;\n const watcher = watchProviderConfig(\n watchConfigPath,\n // Vault key lives at ~/.wrongstack/.key (derived from globalConfigPath),\n // not inside the profile directory \u2014 resolve via global root to stay correct.\n getVault(opts.globalConfigPath),\n (snapshot) => {\n // Best-effort: refresh the in-memory providers ref the panel reads from\n // (skipped silently when appConfig is frozen \u2014 the broadcast below still\n // pushes the fresh map, so panels stay correct either way).\n try {\n if (opts.appConfig && !Object.isFrozen(opts.appConfig)) {\n opts.appConfig.providers = snapshot.providers;\n if (snapshot.uiLocale) opts.appConfig.uiLocale = snapshot.uiLocale;\n }\n } catch {\n /* frozen / read-only appConfig \u2014 ignore */\n }\n // Propagate routing/config changes to ConfigStore so running workers\n // pick them up (independent of the provider-credential path below).\n const routingChanged =\n snapshot.fallbackModels !== undefined ||\n snapshot.fallbackProfiles !== undefined ||\n snapshot.favoriteModels !== undefined ||\n snapshot.favoriteModelsOnly !== undefined ||\n snapshot.modelMatrix !== undefined ||\n snapshot.fallbackAuto !== undefined;\n if (routingChanged) {\n const configStore = opts.agent.container?.safeResolve?.(TOKENS.ConfigStore) as\n | import('@wrongstack/core/types').ConfigStore\n | undefined;\n configStore?.update({\n ...(snapshot.fallbackModels !== undefined\n ? { fallbackModels: snapshot.fallbackModels }\n : {}),\n ...(snapshot.fallbackProfiles !== undefined\n ? { fallbackProfiles: snapshot.fallbackProfiles }\n : {}),\n ...(snapshot.favoriteModels !== undefined\n ? { favoriteModels: snapshot.favoriteModels }\n : {}),\n ...(snapshot.favoriteModelsOnly !== undefined\n ? { favoriteModelsOnly: snapshot.favoriteModelsOnly }\n : {}),\n ...(snapshot.modelMatrix !== undefined ? { modelMatrix: snapshot.modelMatrix } : {}),\n ...(snapshot.fallbackAuto !== undefined ? { fallbackAuto: snapshot.fallbackAuto } : {}),\n } as never);\n }\n embeddedProviderOperations.broadcastSaved(snapshot.providers);\n\n // Display language live-propagation: when another surface writes\n // Config.uiLocale (desktop shell, standalone WebUI, or another\n // embedded WebUI), push it through the same prefs path the frontend\n // already uses for instant i18n re-render.\n if (snapshot.uiLocale !== lastUiLocale) {\n lastUiLocale = snapshot.uiLocale;\n if (snapshot.uiLocale) {\n opts.agent.ctx.meta['uiLocale'] = snapshot.uiLocale;\n broadcast({ type: 'prefs.updated', payload: { uiLocale: snapshot.uiLocale } });\n }\n }\n\n const activeId = opts.agent.ctx.provider.id;\n const newCfgStr = JSON.stringify(snapshot.providers[activeId] ?? null);\n if (newCfgStr === lastActiveCfg) return; // active provider creds unchanged\n lastActiveCfg = newCfgStr;\n try {\n const newCfg = snapshot.providers[activeId] ?? {\n type: activeId,\n ...(snapshot.apiKey !== undefined ? { apiKey: snapshot.apiKey } : {}),\n ...(snapshot.baseUrl !== undefined ? { baseUrl: snapshot.baseUrl } : {}),\n };\n const oldMax = opts.agent.ctx.provider.capabilities?.maxContext;\n const prov = makeProviderFromConfig(activeId, { ...newCfg, type: activeId });\n // Key-only change keeps the same model/context window \u2014 preserve the\n // resolved maxContext instead of falling back to the family default.\n if (oldMax != null && prov.capabilities) prov.capabilities.maxContext = oldMax;\n opts.agent.ctx.provider = prov;\n console.log(`[WebUI] Provider credentials reloaded from config.json (${activeId})`);\n } catch (err) {\n console.warn(\n `[WebUI] Credential hot-reload failed for ${activeId}: ${toErrorMessage(err)}`,\n );\n }\n },\n {\n warn: (m) =>\n console.warn(\n JSON.stringify({\n level: 'warn',\n event: 'webui.config_watcher',\n message: m,\n timestamp: new Date().toISOString(),\n }),\n ),\n },\n );\n credentialWatcherClose = watcher.close;\n }\n\n const brainCtx: BrainHandlerContext = {\n brainSettings: opts.brainSettings,\n brainRuntime: opts.brainRuntime,\n getBrainLog: opts.getBrainLog,\n // Prefer the host-supplied arbiter; otherwise resolve the one bound\n // in the agent container (if any). Mirrors the former inline lookup.\n resolveArbiter: () =>\n opts.brain ??\n (opts.agent.container.has(TOKENS.BrainArbiter)\n ? opts.agent.container.resolve(TOKENS.BrainArbiter)\n : undefined),\n getSessionId: currentSessionId,\n send,\n };\n\n const introspectionConfigStore = opts.agent.container?.safeResolve?.(TOKENS.ConfigStore);\n const introspectionCtx: IntrospectionRouteContext = {\n agent: opts.agent,\n modelsRegistry: opts.modelsRegistry,\n configStore: introspectionConfigStore,\n getConfig: () => {\n const cfg = introspectionConfigStore?.get() ?? opts.appConfig;\n if (!cfg)\n throw new Error(\n 'Introspection route requires a config but neither ConfigStore nor opts.appConfig is available',\n );\n return cfg;\n },\n getProjectRoot: () =>\n opts.projectRoot ?? (opts.agent.ctx as { projectRoot?: string }).projectRoot ?? '',\n getSessionId: currentSessionId,\n getSessionStartedAt: () => sessionStartedAt,\n getModeId: () => opts.modeId ?? 'default',\n send,\n };\n\n // Shared skills handlers context. The CLI passes its own skillLoader; the\n // installer (backing install/uninstall/update) is constructed here the same\n // way the standalone WebUI server does. Absent skillLoader \u21D2 skills feature\n // disabled and the handlers respond with an \"enabled: false\" payload.\n const skillsProjectRoot =\n opts.projectRoot ?? (opts.agent.ctx as { projectRoot?: string }).projectRoot ?? '';\n const skillsPaths = skillsProjectRoot\n ? resolveWstackPaths({\n projectRoot: skillsProjectRoot,\n globalRoot,\n })\n : undefined;\n const skillsCtx: SkillsContext = {\n skillLoader: opts.skillLoader,\n skillInstaller: opts.skillLoader\n ? new SkillInstaller({\n manifestPath: path.join(skillsPaths?.configDir ?? profileDir, 'installed-skills.json'),\n projectSkillsDir:\n skillsPaths?.inProjectSkills ?? path.join(skillsProjectRoot, '.wrongstack', 'skills'),\n globalSkillsDir: skillsPaths?.globalSkills ?? path.join(profileDir, 'skills'),\n projectHash: skillsPaths?.projectHash ?? '',\n skillLoader: opts.skillLoader,\n })\n : undefined,\n projectRoot: skillsProjectRoot,\n projectSkillsDir: skillsPaths?.inProjectSkills,\n globalSkillsDir: skillsPaths?.globalSkills,\n };\n\n // Prompt library context \u2014 shared handlers, one source of truth with the\n // standalone server. Absent promptLoader \u21D2 handlers respond \"unavailable\".\n const promptsCtx: PromptsContext = {\n promptLoader: opts.promptLoader,\n promptUsage: new PromptUsageStore(\n skillsPaths?.promptUsage ?? path.join(profileDir, 'prompt-usage.json'),\n ),\n };\n\n // Design Studio context \u2014 same project root, live agent ctx so design.use\n // pins the active kit for the next turn.\n const designCtx: DesignContext = {\n projectRoot: skillsProjectRoot,\n agentMeta: opts.agent.ctx,\n };\n\n const agentConfigCtx: EmbeddedAgentConfigContext = {\n agent: opts.agent,\n modeStore: opts.modeStore,\n loadSavedProviders: () => loadSavedProviders(profileConfigPath),\n buildSessionStart: (overrides) => buildSessionStartPayload(overrides),\n modelsRegistry: opts.modelsRegistry,\n memoryStore: opts.memoryStore,\n getConfig: () => opts.appConfig,\n onMaxContextResolved: opts.onModelContextResolved,\n persistPrefs,\n send,\n broadcast,\n log: (m) => console.log(m),\n };\n\n const prefsCtx: PrefsHandlerContext = {\n meta: opts.agent.ctx.meta,\n snapshot: prefSnapshot,\n persist: persistPrefs,\n setYolo: opts.onYoloSwitch,\n setAutonomy: opts.onAutonomySwitch,\n pendingConfirms,\n configStore: opts.agent.container?.safeResolve?.(TOKENS.ConfigStore),\n send,\n broadcast,\n };\n\n // Project add/select are disabled in WebUI; `opts` remains shared because\n // projects.list and working_dir.set still read the live project root/config.\n const projectsCtx: EmbeddedProjectContext = {\n opts,\n abortControllers,\n abortLegacyRun: () => {\n if (abortController) {\n abortController.abort();\n abortController = null;\n }\n },\n buildSessionStart: (overrides) => buildSessionStartPayload(overrides),\n send,\n broadcast,\n log: (m) => console.log(m),\n };\n\n const mailboxRoutes = createMailboxRouteHandlers({\n getProjectRoot: () =>\n opts.projectRoot ??\n (opts.agent.ctx as { projectRoot?: string | undefined }).projectRoot ??\n '',\n getGlobalRoot: () => (opts.globalConfigPath ? path.dirname(opts.globalConfigPath) : ''),\n events: opts.events,\n });\n\n // `opts` is passed by reference so the session handlers read live\n // agent.ctx.session / opts.sessionStore at call time.\n const sessionsCtx: EmbeddedSessionContext = {\n opts,\n buildSessionStart: (overrides) => buildSessionStartPayload(overrides),\n getCustomModeStore,\n send,\n broadcast,\n log: (m) => console.log(m),\n };\n\n // Connection-level cases (user_message/abort/ping/tool.confirm_result).\n // `opts` is by reference so `user_message` runs the live agent; the two\n // maps are the SAME instances the connection/close handlers mutate.\n const connectionCtx: EmbeddedConversationContext = {\n agent: opts.agent,\n abortControllers,\n pendingConfirms,\n send,\n broadcast,\n log: (m) => console.log(m),\n };\n // \u2500\u2500 Message router \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n // Canonical route-family dispatcher with CLI host capabilities.\n const kanbanHostRoutes = createCliKanbanHostRoutes({\n opts,\n send,\n broadcast,\n goalHandler,\n ...(kanbanSupervisor ? { kanbanSupervisor } : {}),\n ...(kanbanRunMirror ? { kanbanRunMirror } : {}),\n });\n let signalShutdown: (() => void) | undefined;\n const shutdown = (): void => signalShutdown?.();\n const handleMessage = createEmbeddedMessageRouter({\n trustBoundary,\n opts,\n logger: consoleLogger,\n send,\n sendResult,\n sessionPayload,\n currentSessionId,\n shutdown,\n providerCtx: wsHandlerCtx,\n brainCtx,\n introspectionCtx,\n skillsCtx,\n promptsCtx,\n designCtx,\n agentConfigCtx,\n prefsCtx,\n projectCtx: projectsCtx,\n mailboxRoutes,\n sessionCtx: sessionsCtx,\n conversationCtx: connectionCtx,\n goalHandler,\n specsHandler,\n sddBoardHandler,\n sddWizardHandler,\n worktreeHandler,\n terminalHandler,\n kanbanHostRoutes,\n statusTracker: opts.statusTracker,\n });\n\n const terminalLogView = startBoundedTerminalLogView();\n const stopped = new Promise<void>((resolve) => {\n let listeningAnnounced = false;\n const announceListening = () => {\n if (listeningAnnounced) return;\n listeningAnnounced = true;\n console.log(`[WebUI] WebSocket server running on ws://${host}:${httpPort}`);\n try {\n setupEvents();\n opts.onListening?.({ httpPort, wsPort, host, url: accessUrl });\n } catch (err) {\n consoleLogger.error('setup_events_failed', { message: toErrorMessage(err) });\n }\n };\n wss.on('listening', announceListening);\n // SimpleUI deliberately binds the shared HTTP server before the rest of\n // the route contexts are assembled. In that path the WebSocketServer's\n // `listening` event may already have fired before this handler exists.\n if (httpServer?.server.listening || wss.address()) queueMicrotask(announceListening);\n\n // WebSocket connection handler \u2014 per-tab error handling, auth, client\n // registration, rate limiting, message dispatch, close cleanup, and the\n // initial session.start push. PR 14 of Issue #30: extracted to\n // `./webui-server/connection-handler.ts`.\n wss.on(\n 'connection',\n createConnectionHandler({\n host,\n wsToken,\n requireToken,\n publicHostnames,\n publicWsUrl,\n clients,\n currentSessionId,\n goalHandler,\n specsHandler,\n sddBoardHandler,\n sddWizardHandler,\n worktreeHandler,\n terminalHandler,\n rateLimitMax,\n send,\n sessionPayload,\n handleMessage,\n abortControllers,\n pendingConfirms,\n buildSessionStartPayload,\n loadReplay: async () => {\n const activeSession = opts.agent.ctx.session ?? opts.session;\n await activeSession.flush().catch(() => undefined);\n if (opts.sessionStore) {\n const data = await opts.sessionStore.load(activeSession.id);\n // `events` feeds the audit markers; the load already parsed them.\n return { messages: data.messages, events: data.events, usage: data.usage };\n }\n const usage = opts.agent.ctx.tokenCounter.total();\n return { messages: opts.agent.ctx.messages, usage };\n },\n // Reads the on-disk transcripts when the in-memory ring is cold, which\n // it always is after a resume \u2014 the ring only holds what this process\n // watched happen.\n loadAgentSessions: async () => (await opts.agentTranscripts?.loadSessionsFromDisk()) ?? [],\n needsSetup: opts.needsSetup ?? false,\n }),\n );\n\n wss.on('error', (err) => {\n console.error(\n JSON.stringify({\n level: 'error',\n event: 'webui_server.error',\n message: err instanceof Error ? err.message : String(err),\n timestamp: new Date().toISOString(),\n }),\n );\n });\n\n // Graceful shutdown (extracted to webui-server/lifecycle.ts, PR 7 of\n // #30). Idempotent: every runWebUI call registers its own SIGINT/SIGTERM\n // handlers, so a signal after this server already stopped (multiple\n // servers per process \u2014 tests, /webui restarts) must not re-run teardown\n // or fire a second unregister against a gone registry. The teardown\n // sequence (abort in-flight runs \u2192 unsubscribe events \u2192 close clients \u2192\n // unregister \u2192 close HTTP/WS \u2192 resolve) lives in lifecycle.ts; the\n // run-loop state stays here and is threaded in as callbacks.\n signalShutdown = createWebuiShutdown({\n abortInFlight: () => {\n // Both the legacy single slot (project-switch path) and every\n // per-socket controller must be aborted \u2014 they are independent.\n if (abortController) {\n abortController.abort();\n abortController = null;\n }\n for (const c of abortControllers.values()) c.abort();\n abortControllers.clear();\n },\n unsubscribeEvents: () => {\n flushAllStreamBuffers();\n for (const unsub of eventUnsubscribers) unsub();\n },\n disposeResources: () => {\n credentialWatcherClose?.();\n credentialWatcherClose = undefined;\n goalHandler.dispose();\n sddBoardHandler.dispose();\n worktreeHandler.dispose();\n terminalHandler.dispose();\n kanbanRunMirror?.dispose();\n kanbanSupervisor?.dispose();\n void stopKanbanSupervisorMemoryStats?.();\n unregisterWebuiClient();\n },\n closeClients: () => {\n for (const [ws] of clients) ws.close();\n clients.clear();\n },\n closeHttpServer: () => {\n ipv6LoopbackServer?.close();\n httpServer?.server.close();\n },\n wss,\n pid: process.pid,\n registryBaseDir,\n onStopped: () => {\n terminalLogView.redraw();\n terminalLogView.stop();\n opts.onExit?.();\n resolve();\n },\n });\n\n registerWebuiSignalHandlers(signalShutdown);\n });\n\n function send(ws: WebSocket, msg: WSServerMessage): void {\n if (ws.readyState === WebSocket.OPEN) {\n ws.send(JSON.stringify(msg));\n }\n }\n\n function broadcast(msg: WSServerMessage): void {\n const data = JSON.stringify(msg);\n for (const [ws] of clients) {\n if (ws.readyState === WebSocket.OPEN) {\n try {\n ws.send(data);\n } catch {\n // Client disconnected between the readyState check and the send\n // \u2014 let the 'close' handler remove it from the map naturally.\n }\n }\n }\n }\n\n // ---- Config I/O helpers (delegated to webui-server/provider-config) ----\n\n function sendResult(ws: WebSocket, success: boolean, message: string): void {\n send(ws, { type: 'key.operation_result', payload: { success, message } });\n }\n\n return stopped.finally(() => terminalLogView.stop());\n}\n", "import type { HqClientCapability } from '@wrongstack/core/hq';\nimport { createWebuiClientPresence } from '@wrongstack/webui-server';\nimport { createHqCommandDispatcher, type HqCommandController } from '../hq-command-controller.js';\nimport { startCliHqConnection } from '../hq-publisher.js';\n\nexport interface WebuiHqControlHooks {\n interruptLeader: () => boolean;\n allowRunCommand: () => boolean;\n spawnAgent?: HqCommandController['spawnAgent'];\n killFleet?: HqCommandController['killFleet'];\n terminateAgent?: HqCommandController['terminateAgent'];\n}\n\nexport interface WebuiClientRegistrationDeps {\n projectRoot: string | undefined;\n appConfig: import('@wrongstack/core/types').Config | undefined;\n events: import('@wrongstack/core/kernel').EventBus;\n hqSessionId: string;\n getSessionId: () => string;\n hqControl?: WebuiHqControlHooks | undefined;\n}\n\nexport interface WebuiClientRegistration {\n register(): Promise<string | null>;\n unregister(): void;\n}\n\nexport function createWebuiClientRegistration(\n deps: WebuiClientRegistrationDeps,\n): WebuiClientRegistration {\n const control = deps.hqControl;\n return createWebuiClientPresence({\n projectRoot: deps.projectRoot,\n appConfig: deps.appConfig,\n events: deps.events,\n hqSessionId: deps.hqSessionId,\n getSessionId: deps.getSessionId,\n startHqConnection: (options) =>\n startCliHqConnection({\n ...options,\n capabilities: options.capabilities as HqClientCapability[],\n }),\n ...(control\n ? {\n createCommandHandler: (mailbox) =>\n createHqCommandDispatcher({\n steerMailbox: mailbox,\n interruptLeader: control.interruptLeader,\n allowRunCommand: control.allowRunCommand,\n sessionTag: deps.getSessionId,\n ...(control.spawnAgent ? { spawnAgent: control.spawnAgent } : {}),\n ...(control.killFleet ? { killFleet: control.killFleet } : {}),\n ...(control.terminateAgent ? { terminateAgent: control.terminateAgent } : {}),\n }),\n }\n : {}),\n });\n}\n", "import type { IncomingMessage } from 'node:http';\nimport type { Message, SessionEvent, Usage } from '@wrongstack/core/types';\nimport type {\n GoalWebSocketHandler,\n PendingConfirm,\n SddBoardWebSocketHandler,\n SddWizardWebSocketHandler,\n SpecsWebSocketHandler,\n TerminalWebSocketHandler,\n WorktreeWebSocketHandler,\n} from '@wrongstack/webui-server';\nimport {\n createConnectionLifecycle,\n verifyClient as verifyWsClient,\n} from '@wrongstack/webui-server';\nimport { buildReplayPayload, decodeProtocolFrame } from '@wrongstack/webui-server/protocol';\nimport type { WebSocket } from 'ws';\nimport type { WSClientMessage, WSServerMessage } from './contracts.js';\n\nexport interface ConnectedClient {\n ws: WebSocket;\n sessionId: string | null;\n}\n\nexport interface ConnectionHandlerDeps {\n host: string;\n wsToken: string;\n requireToken: boolean;\n publicHostnames: string[];\n publicWsUrl: string | undefined;\n clients: Map<WebSocket, ConnectedClient>;\n currentSessionId: () => string;\n goalHandler: GoalWebSocketHandler;\n specsHandler: SpecsWebSocketHandler;\n sddBoardHandler: SddBoardWebSocketHandler;\n sddWizardHandler: SddWizardWebSocketHandler | null;\n worktreeHandler: WorktreeWebSocketHandler;\n terminalHandler: TerminalWebSocketHandler;\n rateLimitMax: number;\n send: (ws: WebSocket, msg: WSServerMessage) => void;\n sessionPayload: <T extends Record<string, unknown>>(payload: T) => T & { sessionId: string };\n handleMessage: (ws: WebSocket, client: ConnectedClient, msg: WSClientMessage) => Promise<void>;\n abortControllers: Map<WebSocket, AbortController>;\n pendingConfirms: Map<string, PendingConfirm>;\n buildSessionStartPayload: (\n overrides?: Record<string, unknown>,\n needsSetup?: boolean,\n ) => Promise<Record<string, unknown>>;\n loadReplay?:\n | (() => Promise<{\n messages: Message[];\n events?: readonly SessionEvent[] | undefined;\n usage?: Usage | undefined;\n } | null>)\n | undefined;\n loadAgentSessions?:\n | (() => Promise<import('@wrongstack/core/coordination').AgentVirtualSession[]>)\n | undefined;\n needsSetup: boolean;\n}\n\nexport function createConnectionHandler(\n deps: ConnectionHandlerDeps,\n): (ws: WebSocket, req: IncomingMessage) => Promise<void> {\n const clientHandlers = [\n deps.goalHandler,\n deps.specsHandler,\n deps.sddBoardHandler,\n ...(deps.sddWizardHandler ? [deps.sddWizardHandler] : []),\n deps.worktreeHandler,\n deps.terminalHandler,\n ];\n\n return createConnectionLifecycle<ConnectedClient, IncomingMessage, WSClientMessage>({\n clients: deps.clients,\n pendingConfirms: deps.pendingConfirms,\n // \u2500\u2500 Auth trust model \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n // Three layered defenses (see verifyClient in @wrongstack/webui-server/ws-auth):\n // 1. DNS-rebinding guard (Host header must be loopback on loopback bind)\n // 2. Shared-token auth via Cookie (ws_token) or URL query param (?token=)\n // 3. Loopback bootstrap: when requireToken=false (default) AND the server\n // is bound to a loopback interface, browser clients bypass token auth\n // entirely \u2014 the Origin header being http://localhost is sufficient.\n //\n // COOKIE PERSISTENCE AFTER TOKEN ROTATION:\n // The HttpOnly ws_token cookie, once set by /ws-auth, survives a process\n // restart. On the next process the expectedToken is a fresh random value,\n // so the old cookie alone would fail the token check. However, on a\n // loopback bind with requireToken=false (default), the loopback-bootstrap\n // path at layer 3 accepts the connection before the cookie is ever\n // compared \u2014 the old cookie is harmless because no token is needed.\n //\n // This means a token rotation (e.g. the operator sets a new accessToken\n // in config) does NOT invalidate already-distributed cookies for loopback\n // clients. The mitigating factors:\n // - Loopback bind + requireToken=false already trusts any local process\n // that can reach 127.0.0.1 \u2014 a trivial perimeter.\n // - A LAN/0.0.0.0 bind with requireToken=true DOES enforce cookie\n // matching against the new expectedToken on every reconnect.\n // If stronger isolation is needed, set requireToken=true or rebind the\n // server to a non-loopback interface with token enforcement.\n authenticate: (ws, req) => {\n const allowed = verifyWsClient({\n origin: req.headers.origin,\n url: req.url ?? '/',\n hostHeader: req.headers.host,\n remoteAddress: req.socket.remoteAddress,\n cookieHeader: req.headers.cookie,\n wsHost: deps.host,\n expectedToken: deps.wsToken,\n requireToken: deps.requireToken,\n allowedHostnames: deps.publicHostnames,\n allowBrowserUrlToken: Boolean(deps.publicWsUrl),\n });\n if (!allowed) ws.close(4003, 'Forbidden');\n return allowed;\n },\n createClient: (ws) => ({ ws, sessionId: deps.currentSessionId() }),\n // Enrich parse-failure / unknown-type logs with per-connection identity\n // so operators can identify which client sent a malformed frame. The\n // `connectionId`/`sessionId` fields are read from the `client` argument\n // directly inside `logRejection`; the CLI's `ConnectedClient` only has\n // `sessionId` (no per-socket `connId`), so the verbose payload carries\n // `sessionId` only. Server-wide identity (`agentId`/`projectRoot`) isn't\n // in scope at this handler and is omitted.\n verboseWsLogging: true,\n registerClient: (ws) => {\n for (const handler of clientHandlers) handler.addClient(ws);\n },\n decode: (raw) => decodeProtocolFrame(raw, 'client'),\n dispatch: deps.handleMessage,\n send: deps.send,\n sessionPayload: deps.sessionPayload,\n rateLimitMax: deps.rateLimitMax,\n onClose: (ws) => deps.abortControllers.delete(ws),\n buildInitialPayload: async () => {\n const payload = { ...(await deps.buildSessionStartPayload({}, deps.needsSetup)) };\n try {\n const replay = await deps.loadReplay?.();\n if (replay) Object.assign(payload, buildReplayPayload(replay));\n } catch {\n // Replay is best-effort.\n console.debug('[WebUI] Failed to load replay');\n }\n try {\n const sessions = await deps.loadAgentSessions?.();\n if (sessions?.length) payload['agentSessions'] = sessions;\n } catch {\n // Worker replay is independently best-effort.\n console.debug('[WebUI] Failed to load agent sessions');\n }\n return payload;\n },\n });\n}\n", "import type { Agent } from '@wrongstack/core/agent';\nimport type { AgentFactory, BrainArbiter } from '@wrongstack/core/coordination';\nimport type { PhaseTemplate } from '@wrongstack/core/goal';\nimport { PhaseGraphBuilder } from '@wrongstack/core/goal';\nimport type { EventBus } from '@wrongstack/core/kernel';\nimport type { Config, SkillLoader } from '@wrongstack/core/types';\nimport { resolveWstackPaths } from '@wrongstack/core/utils';\nimport { exportBoardToTaskGraph } from '@wrongstack/kanban';\nimport { TaskGraphStore } from '@wrongstack/sdd';\nimport {\n type GoalWebSocketHandler,\n type KanbanHostRouteHandlers,\n type KanbanRunMirror,\n startSddRunFromGraph,\n type WSServerMessage,\n} from '@wrongstack/webui-server';\nimport type { WebSocket } from 'ws';\nimport type { KanbanSupervisor } from './kanban-supervisor.js';\n\nexport type KanbanSupervisorPort = KanbanSupervisor;\n\ninterface CliKanbanHostAdapterDeps {\n opts: {\n agent: Agent;\n events: EventBus;\n projectRoot?: string | undefined;\n appConfig?: Config | undefined;\n skillLoader?: SkillLoader | undefined;\n sddSubagentFactory?: AgentFactory | undefined;\n brain?: BrainArbiter | undefined;\n };\n send: (ws: WebSocket, msg: WSServerMessage) => void;\n /** Optional broadcast so every client sees sdd.run.started / kanban updates. */\n broadcast?: ((msg: WSServerMessage) => void) | undefined;\n goalHandler: GoalWebSocketHandler;\n kanbanSupervisor?: KanbanSupervisorPort | undefined;\n /** Bind launch-from-board SDD runs onto the existing kanban board. */\n kanbanRunMirror?: KanbanRunMirror | undefined;\n}\n\nexport function createCliKanbanHostRoutes(deps: CliKanbanHostAdapterDeps): KanbanHostRouteHandlers {\n const { opts, send, goalHandler } = deps;\n let isolatedSeq = 0;\n\n /** Isolated read-only turn for acceptance verifier / supervisor splitter. */\n const runIsolatedTurn = opts.sddSubagentFactory\n ? async (prompt: string, name: string): Promise<string> => {\n const result = await opts.sddSubagentFactory!({\n id: `sdd-kanban-${name.toLowerCase().replace(/\\s+/g, '-')}-${isolatedSeq++}`,\n role: 'executor',\n name,\n disabledTools: ['delegate', 'write', 'edit', 'patch', 'bash', 'exec'],\n allowedCapabilities: ['fs.read', 'net.outbound'],\n });\n try {\n const res = await result.agent.run([{ type: 'text', text: prompt }]);\n return res.finalText ?? '';\n } finally {\n await result.dispose?.();\n }\n }\n : undefined;\n\n return {\n meta: async (ws) => {\n const tools = (opts.agent.ctx.tools ?? []).map((tool) => ({\n name: tool.name,\n description: (tool as { description?: string }).description ?? '',\n }));\n const skills = opts.skillLoader\n ? (await opts.skillLoader.list()).map((skill) => ({\n name: skill.name,\n description: skill.description,\n source: skill.source,\n }))\n : [];\n send(ws, {\n type: 'kanban.meta',\n payload: {\n success: true,\n data: {\n tools,\n skills,\n fallbackProfiles: opts.appConfig?.fallbackProfiles ?? {},\n sessionProvider: opts.agent.ctx.provider,\n sessionModel: opts.agent.ctx.model,\n },\n },\n });\n },\n supervisorStatus: async (ws, msg) => {\n const boardId = (msg.payload as { boardId?: string } | undefined)?.boardId;\n if (!boardId || !deps.kanbanSupervisor) {\n send(ws, {\n type: 'kanban.supervisor.status',\n payload: { success: false, error: 'Kanban supervisor is unavailable.' },\n });\n return;\n }\n const snapshot =\n deps.kanbanSupervisor.getSnapshot(boardId) ??\n (await deps.kanbanSupervisor.auditNow(boardId))[0];\n send(ws, {\n type: 'kanban.supervisor.status',\n payload: { success: true, data: snapshot ?? null },\n });\n },\n supervisorAudit: async (ws, msg) => {\n const boardId = (msg.payload as { boardId?: string } | undefined)?.boardId;\n if (!deps.kanbanSupervisor) {\n send(ws, {\n type: 'kanban.supervisor.audit',\n payload: { success: false, error: 'Kanban supervisor is unavailable.' },\n });\n return;\n }\n const snapshots = await deps.kanbanSupervisor.auditNow(boardId);\n send(ws, {\n type: 'kanban.supervisor.audit',\n payload: { success: true, data: boardId ? (snapshots[0] ?? null) : snapshots },\n });\n },\n runStart: async (ws, msg) => {\n const payload = (msg.payload ?? {}) as {\n boardId?: string;\n engine?: string;\n autonomous?: boolean;\n };\n const boardId = payload.boardId;\n const engine =\n payload.engine === 'goal' ? 'goal' : payload.engine === 'sdd' ? 'sdd' : undefined;\n const projectRoot = opts.projectRoot ?? '';\n const failRun = (error: string) =>\n send(ws, { type: 'kanban.run.start', payload: { success: false, error } });\n if (!boardId || !engine) return failRun('boardId and engine required');\n if (!projectRoot) return failRun('No project root');\n try {\n const exported = await exportBoardToTaskGraph(projectRoot, boardId, {\n preserveOriginTaskIds: true,\n });\n if (!exported) return failRun(`Board not found: ${boardId}`);\n if (exported.graph.nodes.size === 0) return failRun('Board has no tasks to run');\n if (engine === 'goal') {\n // Launch-from-board: next Goal projection reuses THIS board for phase 0.\n deps.kanbanRunMirror?.bindGoalNext(boardId);\n const graph = await PhaseGraphBuilder.fromTaskGraph(exported.graph, {\n title: exported.board.title,\n description: exported.board.description ?? exported.board.title,\n });\n const phases: PhaseTemplate[] = Array.from(graph.phases.values()).map((phase) => ({\n name: phase.name,\n description: phase.description,\n priority: phase.priority,\n estimateHours: phase.estimateHours,\n parallelizable: phase.parallelizable,\n taskTemplates: Array.from(phase.taskGraph.nodes.values()).map((task) => ({\n title: task.title,\n description: task.description,\n type: task.type,\n priority: task.priority,\n estimateHours: task.estimateHours ?? 0,\n ...(task.tags ? { tags: task.tags } : {}),\n })),\n }));\n await goalHandler.handleMessage(ws, {\n type: 'goal.start',\n payload: {\n title: exported.board.title,\n phases,\n autonomous: payload.autonomous ?? false,\n },\n });\n send(ws, {\n type: 'kanban.run.start',\n payload: { success: true, data: { engine: 'goal', boardId } },\n });\n return;\n }\n if (!opts.sddSubagentFactory) {\n return failRun('SDD runs need the multi-agent host, which is not available here.');\n }\n const paths = resolveWstackPaths({ projectRoot });\n const taskStore = new TaskGraphStore({ baseDir: paths.projectTaskGraphs });\n await taskStore.save(exported.graph);\n // Bind BEFORE start so the first snapshot lands on this board, not a new one.\n // runId is only known after startSddRunFromGraph \u2014 bind once we have it.\n const handle = await startSddRunFromGraph(\n exported.graph,\n {\n agent: opts.agent,\n events: opts.events,\n projectRoot,\n subagentFactory: opts.sddSubagentFactory,\n projectSddBoards: paths.projectSddBoards,\n taskStore,\n ...(opts.brain ? { brain: opts.brain } : {}),\n ...(runIsolatedTurn ? { runIsolatedTurn } : {}),\n },\n { worktrees: true },\n );\n deps.kanbanRunMirror?.bind('sdd', handle.runId, boardId);\n void handle.completion.catch(() => {});\n const started = {\n type: 'sdd.run.started' as const,\n payload: { runId: handle.runId, graphId: exported.graph.id },\n };\n // Notify the requesting client AND every peer (SDD Hub tab switch).\n send(ws, started);\n deps.broadcast?.(started);\n send(ws, {\n type: 'kanban.run.start',\n payload: { success: true, data: { engine: 'sdd', boardId, runId: handle.runId } },\n });\n } catch (err) {\n failRun(err instanceof Error ? err.message : String(err));\n }\n },\n };\n}\n", "export {\n createKanbanSupervisor,\n type KanbanSupervisor,\n type KanbanSupervisorDeps,\n type KanbanSupervisorDispatchOptions,\n} from '@wrongstack/webui-server';\n", "export {\n announceWebuiReady,\n createWebuiShutdown,\n registerWebuiInstance,\n registerWebuiSignalHandlers,\n type AnnounceWebuiReadyParams,\n type RegisterWebuiInstanceDeps,\n type RegisterWebuiInstanceParams,\n type WebuiShutdownResources,\n} from '@wrongstack/webui-server';\n\nexport type { WebUIInstanceRecord } from '@wrongstack/webui-server';\n", "import * as http from 'node:http';\n\ninterface ListenLogger {\n warn(event: string, fields: Record<string, unknown>): void;\n error(event: string, fields: Record<string, unknown>): void;\n}\n\nexport async function startDeferredHttpListen(args: {\n server: http.Server;\n host: string;\n httpPort: number;\n logger: ListenLogger;\n}): Promise<void> {\n const { server, host, httpPort, logger } = args;\n await new Promise<void>((resolveListen, rejectListen) => {\n server.listen(httpPort, host, () => resolveListen());\n server.once('error', rejectListen);\n });\n server.on('error', (err: Error) => {\n logger.error('http_server_error', {\n message: err.message,\n port: httpPort,\n });\n });\n}\n\nexport async function startIpv6LoopbackProxy(args: {\n primary: http.Server;\n httpPort: number;\n logger: ListenLogger;\n}): Promise<http.Server | null> {\n const { primary, httpPort, logger } = args;\n const v6 = http.createServer();\n v6.on('request', (req, res) => primary.emit('request', req, res));\n v6.on('upgrade', (req, socket, head) => primary.emit('upgrade', req, socket, head));\n const logIpv6Error = (err: NodeJS.ErrnoException): void => {\n if (err.code === 'EAFNOSUPPORT' || err.code === 'EADDRNOTAVAIL' || err.code === 'EADDRINUSE') {\n logger.warn('ipv6_loopback_unavailable', { code: err.code, port: httpPort });\n return;\n }\n logger.error('http_server_error', { message: err.message, port: httpPort });\n };\n v6.on('error', logIpv6Error);\n const ipv6Listening = await new Promise<boolean>((resolveListen) => {\n const onListening = () => {\n v6.off('error', onInitialError);\n resolveListen(true);\n };\n const onInitialError = () => {\n v6.off('listening', onListening);\n resolveListen(false);\n };\n v6.once('listening', onListening);\n v6.once('error', onInitialError);\n v6.listen(httpPort, '::1');\n });\n if (!ipv6Listening) return null;\n console.log(`[WebUI] Also listening on http://[::1]:${httpPort}`);\n return v6;\n}\n", "// PR 1 of Issue #30 (webui-server 8-PR refactor): extract\n// the inlined `Logger` shim into its own file.\n//\n// Why this split:\n//\n// - The shim is a stand-in for the real `Logger` while\n// the CLI module is consumed by other CLI modules\n// (GoalWebSocketHandler in particular) that don't\n// import the full `@wrongstack/core` tree. Lifting it\n// makes that \"stand-in\" status explicit: this file is\n// the CLI's structured-log adapter.\n//\n// - Once extracted, the shim can be unit-tested in\n// isolation: pin the JSON shape, pin the level\n// mapping, pin the `child()` self-return. None of\n// these were testable while the shim was buried\n// between L88 and L113 of `webui-server.ts`.\n//\n// - `webui-server.ts` loses 25 lines of unrelated\n// boilerplate. The next two PRs (cost-helpers,\n// context-breakdown) follow the same template.\n//\n// What is *not* in this file:\n//\n// - The `structuredLine` helper. It is exported and\n// remains private to this module; nothing outside the\n// shim needs it.\n\nimport type { Logger } from '@wrongstack/core/types';\n\n/**\n * Structured-log line shape used by the CLI webui-server\n * shim. The line is one JSON object per write, with a\n * stable `event: 'webui.goal'` discriminator so the\n * TUI/WebUI log filter can route these to a dedicated\n * goal channel.\n */\nconst structuredLine = (level: string, message: string): string =>\n JSON.stringify({\n level,\n event: 'webui.goal',\n message,\n timestamp: new Date().toISOString(),\n });\n\n/**\n * Console-backed `Logger` adapter for the CLI. Routes each\n * level to the matching `console.*` method and wraps the\n * message in a structured JSON line. The `child()` method\n * returns the same logger \u2014 the CLI shim does not maintain\n * a binding chain.\n */\nexport const consoleLogger: Logger = {\n level: 'debug',\n error(msg: string, _ctx?: unknown) {\n console.error(structuredLine('error', msg));\n },\n warn(msg: string, _ctx?: unknown) {\n console.warn(structuredLine('warn', msg));\n },\n info(msg: string, _ctx?: unknown) {\n console.log(structuredLine('info', msg));\n },\n debug(msg: string, _ctx?: unknown) {\n console.debug(structuredLine('debug', msg));\n },\n trace(msg: string, _ctx?: unknown) {\n console.debug(structuredLine('trace', msg));\n },\n child(_bindings: Record<string, unknown>): Logger {\n return this;\n },\n};\n", "import { existsSync } from 'node:fs';\nimport { createRequire } from 'node:module';\nimport * as path from 'node:path';\nimport { fileURLToPath } from 'node:url';\n\ninterface NodePtyLoaderLogger {\n debug?: (message: string) => void;\n}\n\nexport function createNodePtyLoader(importMetaUrl: string, logger: NodePtyLoaderLogger): () => unknown {\n const requireFromCli = createRequire(importMetaUrl);\n let cachedNodePty: unknown;\n\n return () => {\n if (cachedNodePty !== undefined) return cachedNodePty;\n // Strategy 1: resolve webui via its main export, then walk to package.json.\n try {\n const webuiEntry = requireFromCli.resolve('@wrongstack/webui');\n const webuiDir = webuiEntry.replace(/[\\\\/]dist.*$/, '');\n const webuiPkgJson = path.join(webuiDir, 'package.json');\n cachedNodePty = createRequire(webuiPkgJson)('node-pty');\n if (cachedNodePty) {\n logger.debug?.(`[terminal] node-pty loaded via webui package (${webuiDir})`);\n return cachedNodePty;\n }\n } catch (err) {\n logger.debug?.(`[terminal] webui-route failed: ${(err as Error).message}`);\n }\n // Strategy 2: direct require from CLI's own resolution root.\n try {\n cachedNodePty = requireFromCli('node-pty');\n logger.debug?.('[terminal] node-pty loaded via direct requireFromCli');\n return cachedNodePty;\n } catch (err) {\n logger.debug?.(`[terminal] direct require failed: ${(err as Error).message}`);\n }\n // Strategy 3: workspace root node_modules/node-pty.\n try {\n const cliPkgJson = path.join(path.dirname(fileURLToPath(importMetaUrl)), '..', 'package.json');\n let dir = path.dirname(cliPkgJson);\n for (let i = 0; i < 6; i++) {\n const candidate = path.join(dir, 'node_modules', 'node-pty');\n if (existsSync(candidate)) {\n cachedNodePty = createRequire(candidate)('node-pty');\n if (cachedNodePty) {\n logger.debug?.(`[terminal] node-pty loaded via workspace root (${candidate})`);\n return cachedNodePty;\n }\n }\n const parent = path.dirname(dir);\n if (parent === dir) break;\n dir = parent;\n }\n } catch (err) {\n logger.debug?.(`[terminal] workspace-root walk failed: ${(err as Error).message}`);\n }\n cachedNodePty = null;\n logger.debug?.('[terminal] node-pty resolution failed; terminal panel will report \"unavailable\"');\n return cachedNodePty;\n };\n}\n", "import * as fs from 'node:fs/promises';\nimport * as path from 'node:path';\nimport { DefaultSecretVault } from '@wrongstack/core/security';\nimport type { Config } from '@wrongstack/core/types';\nimport type { ModelBlackoutRule } from '@wrongstack/core/models';\nimport {\n type ConfigWriteLockHolder,\n PREF_KEYS,\n persistPrefsToConfig,\n prefSnapshot as snapshotPrefs,\n seedContextMeta,\n} from '@wrongstack/webui-server';\n\ninterface CliWebUIOptions {\n agent: { ctx: { meta: Record<string, unknown> } };\n globalConfigPath?: string | undefined;\n profileConfigPath: string;\n appConfig?:\n | {\n fallbackModels?: string[] | undefined;\n fallbackProfiles?: Record<string, string[]> | undefined;\n favoriteModels?: string[] | undefined;\n favoriteModelsOnly?: boolean | undefined;\n modelAvailabilitySchedule?: ModelBlackoutRule[] | undefined;\n fallbackAuto?: boolean | undefined;\n modelMatrix?: Config['modelMatrix'] | undefined;\n uiLocale?: string | undefined;\n }\n | undefined;\n}\n\ntype PrefSnapshot = Record<string, unknown>;\n\nexport { PREF_KEYS };\n\nexport async function seedConfigToMeta(opts: CliWebUIOptions): Promise<void> {\n let config = opts.appConfig as Config | undefined;\n if (!config || Object.keys(config).length === 0) {\n if (!opts.profileConfigPath) return;\n try {\n config = JSON.parse(await fs.readFile(opts.profileConfigPath, 'utf8')) as Config;\n } catch {\n return;\n }\n }\n seedContextMeta(config, { meta: opts.agent.ctx.meta });\n}\n\nexport interface PrefsSeeding {\n prefSnapshot: () => PrefSnapshot;\n persistPrefs: (payload: PrefSnapshot) => Promise<void>;\n}\n\nexport function createPrefsSeeding(opts: CliWebUIOptions): PrefsSeeding {\n const writeLock: ConfigWriteLockHolder = { lock: Promise.resolve() };\n\n const patchLiveAppConfig = (patch: NonNullable<CliWebUIOptions['appConfig']>): void => {\n if (!opts.appConfig) return;\n opts.appConfig = { ...opts.appConfig, ...patch };\n };\n\n const persistPrefs = async (payload: PrefSnapshot): Promise<void> => {\n if (Array.isArray(payload['fallbackModels'])) {\n patchLiveAppConfig({ fallbackModels: payload['fallbackModels'] as string[] });\n }\n if (\n payload['fallbackProfiles'] &&\n typeof payload['fallbackProfiles'] === 'object' &&\n !Array.isArray(payload['fallbackProfiles'])\n ) {\n patchLiveAppConfig({\n fallbackProfiles: payload['fallbackProfiles'] as Record<string, string[]>,\n });\n }\n if (Array.isArray(payload['favoriteModels'])) {\n patchLiveAppConfig({ favoriteModels: payload['favoriteModels'] as string[] });\n }\n if (typeof payload['favoriteModelsOnly'] === 'boolean') {\n patchLiveAppConfig({ favoriteModelsOnly: payload['favoriteModelsOnly'] });\n }\n if (Array.isArray(payload['modelAvailabilitySchedule'])) {\n patchLiveAppConfig({\n modelAvailabilitySchedule: payload['modelAvailabilitySchedule'] as ModelBlackoutRule[],\n });\n }\n if (typeof payload['fallbackAuto'] === 'boolean') {\n patchLiveAppConfig({ fallbackAuto: payload['fallbackAuto'] });\n }\n if (typeof payload['uiLocale'] === 'string') {\n patchLiveAppConfig({ uiLocale: payload['uiLocale'] });\n }\n if (\n payload['modelMatrix'] &&\n typeof payload['modelMatrix'] === 'object' &&\n !Array.isArray(payload['modelMatrix'])\n ) {\n patchLiveAppConfig({ modelMatrix: payload['modelMatrix'] as Config['modelMatrix'] });\n }\n if (!opts.profileConfigPath) return;\n\n const globalRoot = opts.globalConfigPath\n ? path.dirname(opts.globalConfigPath)\n : path.dirname(opts.profileConfigPath);\n const vault = new DefaultSecretVault({ keyFile: path.join(globalRoot, '.key') });\n await persistPrefsToConfig(\n {\n profileConfigPath: opts.profileConfigPath,\n vault,\n logger: {\n warn(message) {\n console.error(\n JSON.stringify({\n level: 'warn',\n event: 'webui.prefs.persist_failed',\n message,\n timestamp: new Date().toISOString(),\n }),\n );\n },\n },\n },\n writeLock,\n payload,\n );\n };\n\n return {\n prefSnapshot: () => snapshotPrefs(opts.agent.ctx.meta),\n persistPrefs,\n };\n}\n", "import * as path from 'node:path';\nimport { DefaultSecretVault } from '@wrongstack/core/security';\nimport type { ProviderConfig } from '@wrongstack/core/types';\nimport { loadConfigProviders, mutateConfigProviders } from '../provider-config-utils.js';\n\n// Re-export the provider-record transforms the webui handlers need, so\n// callers have a single import surface for\n// \"webui provider config\" instead of juggling this module *and*\n// ../provider-config-utils.js. The transforms themselves stay in the\n// broadly-shared provider-config-utils.js (auth-menu, slash-commands,\n// subcommands all use it); this is a facade re-export, not a move.\n// PR 4 follow-up of Issue #30.\nexport {\n expectDefined,\n maskedKey,\n normalizeKeys,\n nowIso,\n writeKeysBack,\n} from '../provider-config-utils.js';\n\n/**\n * PR 4 of Issue #30 (webui-server 8-PR refactor):\n * provider-config IO.\n *\n * Before this PR, the two helpers below were inlined\n * at the bottom of `webui-server.ts` as closure-captured\n * helpers that read `opts.globalConfigPath` from the\n * surrounding `runWebUI` scope. The helpers themselves\n * are pure: given a config path and a vault, they\n * load or save the providers map. The `globalConfigPath`\n * closure capture is what made them untestable in\n * isolation.\n *\n * After this PR, the helpers live in their own module\n * with explicit parameters. `runWebUI` is the only\n * caller; it now constructs the helpers at the call\n * site or threads `globalConfigPath` through a thin\n * adapter.\n *\n * Note: `writeKeysBack` and `normalizeKeys` (used by\n * the per-handler key ops) are *already* imported from\n * `@wrongstack/webui-server`. This PR does not move\n * them \u2014 they were never inlined in `webui-server.ts`.\n * Per the plan body's update after PR #51, they are\n * not part of this extraction.\n */\n\nexport function getVault(globalConfigPath: string | undefined): DefaultSecretVault {\n const configDir = path.dirname(globalConfigPath ?? '');\n const parentDir = path.dirname(configDir);\n const globalRoot = path.basename(parentDir) === 'profiles' ? path.dirname(parentDir) : configDir;\n const keyFile = path.join(globalRoot, '.key');\n return new DefaultSecretVault({ keyFile });\n}\n\nexport async function loadSavedProviders(\n globalConfigPath: string | undefined,\n): Promise<Record<string, ProviderConfig>> {\n if (!globalConfigPath) return {};\n return loadConfigProviders(globalConfigPath, getVault(globalConfigPath));\n}\n\nexport async function saveProviders(\n globalConfigPath: string | undefined,\n providers: Record<string, ProviderConfig>,\n): Promise<void> {\n if (!globalConfigPath) return;\n await mutateConfigProviders(\n globalConfigPath,\n getVault(globalConfigPath),\n (existing: Record<string, ProviderConfig>) => {\n // Replace the entire providers map.\n for (const key of Object.keys(existing)) delete existing[key];\n Object.assign(existing, providers);\n },\n );\n}\n\n/**\n * A provider-config store bound to one `globalConfigPath`.\n *\n * PR 4 follow-up of Issue #30: the provider ws-handlers used to take a\n * raw `globalConfigPath` and call `loadSavedProviders`/`saveProviders`\n * with it on every operation. Binding the path once into a small\n * `load`/`save` object (mirrors the standalone server's\n * `createProviderConfigIO`) removes the repeated path threading and\n * gives callers a single dependency to mock.\n */\nexport interface ProviderConfigStore {\n load(): Promise<Record<string, ProviderConfig>>;\n save(providers: Record<string, ProviderConfig>): Promise<void>;\n}\n\n/**\n * Build a {@link ProviderConfigStore} for `globalConfigPath`. When the\n * path is undefined the store is a no-op (load \u21D2 `{}`, save \u21D2 nothing),\n * matching the underlying helpers' behaviour.\n *\n * @param configProvidersRef Optional callback that returns the in-memory\n * merged `config.providers` map (from the boot config loader which merges\n * global + project-local configs). When provided, `load()` returns from\n * this ref instead of re-reading the single global config file on disk.\n * This prevents a mismatch where providers stored in the project-local\n * config (`config.local.json`) are visible to the agent but invisible\n * to the WebUI's saved-providers panel.\n */\nexport function createProviderConfigStore(\n globalConfigPath: string | undefined,\n configProvidersRef?: () => Record<string, ProviderConfig>,\n): ProviderConfigStore {\n return {\n load: () =>\n configProvidersRef\n ? Promise.resolve(configProvidersRef())\n : loadSavedProviders(globalConfigPath),\n save: (providers) => saveProviders(globalConfigPath, providers),\n };\n}\n", "/**\n * session.start payload builder for the CLI WebUI bridge.\n *\n * Builds the payload enriched with per-model cost rates and max-context cap.\n * Used by the initial connect handler and every broadcast path (model.switch,\n * mode.switch, session.resume, etc.) so the frontend always has the correct\n * cost rates for live computation.\n *\n * PR 11 of Issue #30: extracted from `webui-server.ts`.\n */\nimport * as path from 'node:path';\nimport type { Context } from '@wrongstack/core/agent';\nimport type { ModelsRegistry } from '@wrongstack/core/types';\nimport { DEFAULT_CONTEXT_WINDOW_MODE_ID } from '@wrongstack/core/types';\nimport { protocolAdvertisement } from '@wrongstack/webui-server/protocol';\nimport type { UpdateInfo } from '../update-check.js';\nimport { getCostRates } from './cost-helpers.js';\n\n/** @see UpdateInfo in ../update-check.ts for the canonical shape. */\nexport type BootUpdateInfo = UpdateInfo;\n\n/** The slice of `CliWebUIOptions` the payload builder actually reads. */\nexport interface SessionStartPayloadDeps {\n agent: { ctx: Context };\n session: { id: string };\n modelsRegistry?: ModelsRegistry | undefined;\n statusTracker?: import('@wrongstack/core/coordination').ProviderModelStatusTracker | undefined;\n modeId?: string | undefined;\n projectRoot?: string | undefined;\n updateInfo?: BootUpdateInfo | undefined;\n}\n\nexport type BuildSessionStartPayload = (\n overrides?: Record<string, unknown>,\n needsSetup?: boolean,\n) => Promise<Record<string, unknown>>;\n\n/**\n * Callers pass optional overrides for fields that vary per context\n * (reset, mode, replayMessages, etc.).\n */\nexport function createSessionStartPayloadBuilder(\n deps: SessionStartPayloadDeps,\n): BuildSessionStartPayload {\n return async function buildSessionStartPayload(\n overrides?: Record<string, unknown>,\n needsSetup = false,\n ) {\n let maxContext = 0;\n let inputCost = 0;\n let outputCost = 0;\n let cacheReadCost = 0;\n const updateInfo = deps.updateInfo;\n try {\n if (deps.modelsRegistry) {\n const m = await deps.modelsRegistry.getModel(\n deps.agent.ctx.provider.id,\n deps.agent.ctx.model,\n );\n const registryMax = m?.capabilities.maxContext;\n // Fall back to the live provider's capabilities if the registry has no override.\n // The provider is the authoritative source for the model's default context window.\n maxContext = registryMax ?? deps.agent.ctx.provider.capabilities?.maxContext ?? 0;\n const rates = getCostRates(m);\n inputCost = rates.input;\n outputCost = rates.output;\n cacheReadCost = rates.cacheRead;\n } else {\n // No registry \u2014 use the provider's default capabilities directly.\n maxContext = deps.agent.ctx.provider.capabilities?.maxContext ?? 0;\n }\n } catch {\n /* best-effort; cost stays $0 */\n }\n // The last pre-flight token estimate \u2014 drives the context-fill bar in the\n // WebUI. Emitting it here ensures the bar is accurate on reconnect/refresh\n // instead of staying at 0% until the next ctx.pct event.\n const lastInputTokens =\n typeof deps.agent.ctx.lastRequestTokens === 'number' && deps.agent.ctx.lastRequestTokens > 0\n ? deps.agent.ctx.lastRequestTokens\n : 0;\n\n return {\n sessionId: deps.agent.ctx.session?.id ?? deps.session.id,\n model: deps.agent.ctx.model,\n provider: deps.agent.ctx.provider.id,\n mode: deps.modeId ?? 'default',\n projectName: deps.projectRoot ? path.basename(deps.projectRoot) : undefined,\n // Frontend reads `projectRoot` from session.start (ws-handlers setEnv) \u2014\n // omitting it left the store's projectRoot empty after a project switch.\n projectRoot:\n deps.projectRoot ?? (deps.agent.ctx as { projectRoot?: string }).projectRoot ?? '',\n cwd: deps.projectRoot ?? (deps.agent.ctx as { projectRoot?: string }).projectRoot ?? '',\n needsSetup, // true when provider/model not configured and running in --webui mode\n contextMode: String(\n deps.agent.ctx.meta?.['contextWindowMode'] ?? DEFAULT_CONTEXT_WINDOW_MODE_ID,\n ),\n maxContext,\n inputCost,\n outputCost,\n cacheReadCost,\n lastInputTokens,\n providerStatuses: deps.statusTracker?.getAllStatuses() ?? [],\n appVersion: updateInfo?.current,\n latestVersion: updateInfo?.latest,\n updateAvailable: updateInfo?.outdated ?? false,\n updateCheckFailed: updateInfo?.checkFailed ?? false,\n ...protocolAdvertisement(),\n ...overrides,\n };\n };\n}\n", "export {\n computeUsageCost,\n getCostRates,\n type CostRates,\n type TokenUsage,\n} from '@wrongstack/webui-server';\n", "import type { Context } from '@wrongstack/core/agent';\nimport type { EventBus } from '@wrongstack/core/kernel';\nimport type { JournalEntry } from '@wrongstack/core/goal';\nimport type { SecretScrubber } from '@wrongstack/core/types';\nimport {\n createEternalSubscription,\n type PendingConfirm,\n setupEvents as setupCanonicalEvents,\n} from '@wrongstack/webui-server';\nimport type { StreamCoalescer } from './stream-coalescer.js';\n\nexport interface SetupEventsDeps {\n events: EventBus;\n agent: { ctx: Context };\n subscribeEternalIteration?: ((fn: (entry: JournalEntry) => void) => () => void) | undefined;\n broadcast: (msg: { type: string; payload: unknown }) => void;\n sessionPayload: <T extends Record<string, unknown>>(payload: T) => T & { sessionId: string };\n currentSessionId: () => string;\n queueTextDelta: StreamCoalescer['queueTextDelta'];\n queueThinkingDelta: StreamCoalescer['queueThinkingDelta'];\n queueToolProgress: StreamCoalescer['queueToolProgress'];\n flushThinkingDelta: StreamCoalescer['flushThinkingDelta'];\n flushAllStreamBuffers: StreamCoalescer['flushAllStreamBuffers'];\n pendingConfirms: Map<string, PendingConfirm>;\n secretScrubber: SecretScrubber;\n getClients: Parameters<typeof createEternalSubscription>[2];\n eventUnsubscribers: Array<() => void>;\n globalConfigPath?: string | undefined;\n onFleetBroadcaster?: ((fn: () => Promise<void>) => void) | undefined;\n}\n\n/** CLI adapter around the canonical EventBus\u2192WebSocket subscription graph. */\nexport function createSetupEvents(deps: SetupEventsDeps): () => void {\n let fleetConcurrency = 0;\n let fleetConcurrencyMax = 4;\n const emitConcurrency = (): void => {\n deps.broadcast({\n type: 'fleet.concurrency_update',\n payload: deps.sessionPayload({ fleetConcurrency, fleetConcurrencyMax }),\n });\n };\n\n return function setupEvents(): void {\n for (const unsubscribe of deps.eventUnsubscribers) unsubscribe();\n deps.eventUnsubscribers.length = 0;\n\n // Lightweight embedders and server tests may provide only the provider/model\n // portion of Context. Event projection has no need to require metadata.\n const maxIterations = deps.agent.ctx?.meta?.['maxIterations'];\n const disposeCanonical = setupCanonicalEvents({\n events: deps.events,\n broadcast: (_clients, message) => deps.broadcast(message),\n clients: deps.getClients() as never,\n config: {\n tools: {\n ...(typeof maxIterations === 'number' ? { maxIterations } : {}),\n },\n },\n context: deps.agent.ctx,\n pendingConfirms: deps.pendingConfirms,\n globalConfigPath: deps.globalConfigPath,\n onFleetBroadcaster: deps.onFleetBroadcaster,\n projection: {\n scrubObject: (value) => deps.secretScrubber.scrubObject(value),\n queueTextDelta: deps.queueTextDelta,\n queueThinkingDelta: deps.queueThinkingDelta,\n queueToolProgress: (payload) => deps.queueToolProgress(payload as never),\n flushThinkingDelta: deps.flushThinkingDelta,\n flushAllStreamBuffers: deps.flushAllStreamBuffers,\n },\n });\n deps.eventUnsubscribers.push(disposeCanonical);\n\n deps.broadcast({\n type: 'subagent.event',\n payload: deps.sessionPayload({\n kind: 'leader_updated',\n subagentId: 'leader',\n isLeader: true,\n name: 'Leader',\n status: 'running',\n }),\n });\n emitConcurrency();\n\n deps.eventUnsubscribers.push(\n deps.events.on('concurrency.changed', (event) => {\n fleetConcurrencyMax = Math.max(1, event.n);\n emitConcurrency();\n }),\n deps.events.on('subagent.spawned', () => {\n fleetConcurrency += 1;\n emitConcurrency();\n }),\n deps.events.on('subagent.task_completed', () => {\n fleetConcurrency = Math.max(0, fleetConcurrency - 1);\n emitConcurrency();\n }),\n );\n\n if (deps.subscribeEternalIteration) {\n const subscription = createEternalSubscription(\n deps.subscribeEternalIteration,\n (_clients, message) => deps.broadcast(message),\n deps.getClients,\n );\n deps.eventUnsubscribers.push(() => subscription.dispose());\n }\n };\n}\n", "export {\n ensureDistDir,\n resolveDistDir,\n startStaticServe,\n type EnsureDistDeps,\n type ResolveDistOptions,\n type StaticServeDeps,\n type StaticServeHandle,\n type StaticServeOptions,\n} from '@wrongstack/webui-server';\n", "export {\n createStreamCoalescer,\n type StreamCoalescer,\n type StreamCoalescerDeps,\n type ToolProgressPayload,\n} from '@wrongstack/webui-server';\n", "import { format } from 'node:util';\n\nconst DEFAULT_MAX_LINES = 5;\nconst DEFAULT_REFRESH_MS = 5_000;\nconst CLEAR_VISIBLE_TERMINAL = '\\x1b[2J\\x1b[H';\n\ntype ConsoleMethod = (...args: unknown[]) => void;\n\ninterface ConsoleTarget {\n log: ConsoleMethod;\n info: ConsoleMethod;\n warn: ConsoleMethod;\n error: ConsoleMethod;\n debug: ConsoleMethod;\n}\n\nexport interface BoundedTerminalLogViewOptions {\n maxLines?: number | undefined;\n refreshMs?: number | undefined;\n isTTY?: boolean | undefined;\n consoleTarget?: ConsoleTarget | undefined;\n write?: ((chunk: string) => void) | undefined;\n setIntervalFn?: ((callback: () => void, delay: number) => NodeJS.Timeout) | undefined;\n clearIntervalFn?: ((timer: NodeJS.Timeout) => void) | undefined;\n}\n\nexport interface BoundedTerminalLogView {\n readonly enabled: boolean;\n redraw(): void;\n stop(): void;\n}\n\n/**\n * Periodically redraw an interactive WebUI/SimpleUI terminal with only its\n * newest physical log lines. Non-TTY output is deliberately untouched so\n * redirected output and log collectors retain the complete append-only log.\n */\nexport function startBoundedTerminalLogView(\n options: BoundedTerminalLogViewOptions = {},\n): BoundedTerminalLogView {\n const isTTY = options.isTTY ?? process.stdout.isTTY === true;\n if (!isTTY) {\n return { enabled: false, redraw: () => {}, stop: () => {} };\n }\n\n const maxLines = Math.max(1, Math.trunc(options.maxLines ?? DEFAULT_MAX_LINES));\n const refreshMs = Math.max(100, Math.trunc(options.refreshMs ?? DEFAULT_REFRESH_MS));\n const target = options.consoleTarget ?? console;\n const write = options.write ?? ((chunk: string) => process.stdout.write(chunk));\n const setIntervalFn = options.setIntervalFn ?? setInterval;\n const clearIntervalFn = options.clearIntervalFn ?? clearInterval;\n const lines: string[] = [];\n let stopped = false;\n\n const originals: Record<keyof ConsoleTarget, ConsoleMethod> = {\n log: target.log,\n info: target.info,\n warn: target.warn,\n error: target.error,\n debug: target.debug,\n };\n const wrappers = {} as Record<keyof ConsoleTarget, ConsoleMethod>;\n\n const remember = (args: unknown[]): void => {\n for (const line of format(...args).split(/\\r?\\n/u)) {\n lines.push(line);\n if (lines.length > maxLines) lines.shift();\n }\n };\n\n for (const level of Object.keys(originals) as Array<keyof ConsoleTarget>) {\n const original = originals[level];\n const wrapper: ConsoleMethod = (...args) => {\n remember(args);\n original.apply(target, args);\n };\n wrappers[level] = wrapper;\n target[level] = wrapper;\n }\n\n const redraw = (): void => {\n if (stopped || lines.length === 0) return;\n write(`${CLEAR_VISIBLE_TERMINAL}${lines.join('\\n')}\\n`);\n };\n const timer = setIntervalFn(redraw, refreshMs);\n timer.unref?.();\n\n return {\n enabled: true,\n redraw,\n stop: () => {\n if (stopped) return;\n stopped = true;\n clearIntervalFn(timer);\n for (const level of Object.keys(originals) as Array<keyof ConsoleTarget>) {\n if (target[level] === wrappers[level]) target[level] = originals[level];\n }\n },\n };\n}\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;AAeA,SAAS,uBAAuB;AAChC,YAAY,QAAQ;AACpB,YAAYA,WAAU;AAEtB,SAAS,cAAc;AACvB,SAAS,kCAAkC,6BAA6B;AACxE,SAAS,sBAAsB;AAC/B,SAAS,kBAAkB,2BAA2B;AAEtD;AAAA,EACE,sBAAAC;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,8BAA8B;AACvC;AAAA,EAEE;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAOA;AAAA,EACA;AAAA,EACA;AAAA,EAKA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,WAAW,uBAAuB;;;AC5D3C,SAAS,iCAAiC;AA0BnC,SAAS,8BACd,MACyB;AACzB,QAAM,UAAU,KAAK;AACrB,SAAO,0BAA0B;AAAA,IAC/B,aAAa,KAAK;AAAA,IAClB,WAAW,KAAK;AAAA,IAChB,QAAQ,KAAK;AAAA,IACb,aAAa,KAAK;AAAA,IAClB,cAAc,KAAK;AAAA,IACnB,mBAAmB,CAAC,YAClB,qBAAqB;AAAA,MACnB,GAAG;AAAA,MACH,cAAc,QAAQ;AAAA,IACxB,CAAC;AAAA,IACH,GAAI,UACA;AAAA,MACE,sBAAsB,CAAC,YACrB,0BAA0B;AAAA,QACxB,cAAc;AAAA,QACd,iBAAiB,QAAQ;AAAA,QACzB,iBAAiB,QAAQ;AAAA,QACzB,YAAY,KAAK;AAAA,QACjB,GAAI,QAAQ,aAAa,EAAE,YAAY,QAAQ,WAAW,IAAI,CAAC;AAAA,QAC/D,GAAI,QAAQ,YAAY,EAAE,WAAW,QAAQ,UAAU,IAAI,CAAC;AAAA,QAC5D,GAAI,QAAQ,iBAAiB,EAAE,gBAAgB,QAAQ,eAAe,IAAI,CAAC;AAAA,MAC7E,CAAC;AAAA,IACL,IACA,CAAC;AAAA,EACP,CAAC;AACH;;;AC9CA;AAAA,EACE;AAAA,EACA,gBAAgB;AAAA,OACX;AACP,SAAS,oBAAoB,2BAA2B;AA8CjD,SAAS,wBACd,MACwD;AACxD,QAAM,iBAAiB;AAAA,IACrB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,GAAI,KAAK,mBAAmB,CAAC,KAAK,gBAAgB,IAAI,CAAC;AAAA,IACvD,KAAK;AAAA,IACL,KAAK;AAAA,EACP;AAEA,SAAO,0BAA6E;AAAA,IAClF,SAAS,KAAK;AAAA,IACd,iBAAiB,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IA0BtB,cAAc,CAAC,IAAI,QAAQ;AACzB,YAAM,UAAU,eAAe;AAAA,QAC7B,QAAQ,IAAI,QAAQ;AAAA,QACpB,KAAK,IAAI,OAAO;AAAA,QAChB,YAAY,IAAI,QAAQ;AAAA,QACxB,eAAe,IAAI,OAAO;AAAA,QAC1B,cAAc,IAAI,QAAQ;AAAA,QAC1B,QAAQ,KAAK;AAAA,QACb,eAAe,KAAK;AAAA,QACpB,cAAc,KAAK;AAAA,QACnB,kBAAkB,KAAK;AAAA,QACvB,sBAAsB,QAAQ,KAAK,WAAW;AAAA,MAChD,CAAC;AACD,UAAI,CAAC,QAAS,IAAG,MAAM,MAAM,WAAW;AACxC,aAAO;AAAA,IACT;AAAA,IACA,cAAc,CAAC,QAAQ,EAAE,IAAI,WAAW,KAAK,iBAAiB,EAAE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQhE,kBAAkB;AAAA,IAClB,gBAAgB,CAAC,OAAO;AACtB,iBAAW,WAAW,eAAgB,SAAQ,UAAU,EAAE;AAAA,IAC5D;AAAA,IACA,QAAQ,CAAC,QAAQ,oBAAoB,KAAK,QAAQ;AAAA,IAClD,UAAU,KAAK;AAAA,IACf,MAAM,KAAK;AAAA,IACX,gBAAgB,KAAK;AAAA,IACrB,cAAc,KAAK;AAAA,IACnB,SAAS,CAAC,OAAO,KAAK,iBAAiB,OAAO,EAAE;AAAA,IAChD,qBAAqB,YAAY;AAC/B,YAAM,UAAU,EAAE,GAAI,MAAM,KAAK,yBAAyB,CAAC,GAAG,KAAK,UAAU,EAAG;AAChF,UAAI;AACF,cAAM,SAAS,MAAM,KAAK,aAAa;AACvC,YAAI,OAAQ,QAAO,OAAO,SAAS,mBAAmB,MAAM,CAAC;AAAA,MAC/D,QAAQ;AAEN,gBAAQ,MAAM,+BAA+B;AAAA,MAC/C;AACA,UAAI;AACF,cAAM,WAAW,MAAM,KAAK,oBAAoB;AAChD,YAAI,UAAU,OAAQ,SAAQ,eAAe,IAAI;AAAA,MACnD,QAAQ;AAEN,gBAAQ,MAAM,uCAAuC;AAAA,MACvD;AACA,aAAO;AAAA,IACT;AAAA,EACF,CAAC;AACH;;;ACvJA,SAAS,yBAAyB;AAGlC,SAAS,0BAA0B;AACnC,SAAS,8BAA8B;AACvC,SAAS,sBAAsB;AAC/B;AAAA,EAIE;AAAA,OAEK;AAyBA,SAAS,0BAA0B,MAAyD;AACjG,QAAM,EAAE,MAAM,MAAM,YAAY,IAAI;AACpC,MAAI,cAAc;AAGlB,QAAM,kBAAkB,KAAK,qBACzB,OAAO,QAAgB,SAAkC;AACvD,UAAM,SAAS,MAAM,KAAK,mBAAoB;AAAA,MAC5C,IAAI,cAAc,KAAK,YAAY,EAAE,QAAQ,QAAQ,GAAG,CAAC,IAAI,aAAa;AAAA,MAC1E,MAAM;AAAA,MACN;AAAA,MACA,eAAe,CAAC,YAAY,SAAS,QAAQ,SAAS,QAAQ,MAAM;AAAA,MACpE,qBAAqB,CAAC,WAAW,cAAc;AAAA,IACjD,CAAC;AACD,QAAI;AACF,YAAM,MAAM,MAAM,OAAO,MAAM,IAAI,CAAC,EAAE,MAAM,QAAQ,MAAM,OAAO,CAAC,CAAC;AACnE,aAAO,IAAI,aAAa;AAAA,IAC1B,UAAE;AACA,YAAM,OAAO,UAAU;AAAA,IACzB;AAAA,EACF,IACA;AAEJ,SAAO;AAAA,IACL,MAAM,OAAO,OAAO;AAClB,YAAM,SAAS,KAAK,MAAM,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,UAAU;AAAA,QACxD,MAAM,KAAK;AAAA,QACX,aAAc,KAAkC,eAAe;AAAA,MACjE,EAAE;AACF,YAAM,SAAS,KAAK,eACf,MAAM,KAAK,YAAY,KAAK,GAAG,IAAI,CAAC,WAAW;AAAA,QAC9C,MAAM,MAAM;AAAA,QACZ,aAAa,MAAM;AAAA,QACnB,QAAQ,MAAM;AAAA,MAChB,EAAE,IACF,CAAC;AACL,WAAK,IAAI;AAAA,QACP,MAAM;AAAA,QACN,SAAS;AAAA,UACP,SAAS;AAAA,UACT,MAAM;AAAA,YACJ;AAAA,YACA;AAAA,YACA,kBAAkB,KAAK,WAAW,oBAAoB,CAAC;AAAA,YACvD,iBAAiB,KAAK,MAAM,IAAI;AAAA,YAChC,cAAc,KAAK,MAAM,IAAI;AAAA,UAC/B;AAAA,QACF;AAAA,MACF,CAAC;AAAA,IACH;AAAA,IACA,kBAAkB,OAAO,IAAI,QAAQ;AACnC,YAAM,UAAW,IAAI,SAA8C;AACnE,UAAI,CAAC,WAAW,CAAC,KAAK,kBAAkB;AACtC,aAAK,IAAI;AAAA,UACP,MAAM;AAAA,UACN,SAAS,EAAE,SAAS,OAAO,OAAO,oCAAoC;AAAA,QACxE,CAAC;AACD;AAAA,MACF;AACA,YAAM,WACJ,KAAK,iBAAiB,YAAY,OAAO,MACxC,MAAM,KAAK,iBAAiB,SAAS,OAAO,GAAG,CAAC;AACnD,WAAK,IAAI;AAAA,QACP,MAAM;AAAA,QACN,SAAS,EAAE,SAAS,MAAM,MAAM,YAAY,KAAK;AAAA,MACnD,CAAC;AAAA,IACH;AAAA,IACA,iBAAiB,OAAO,IAAI,QAAQ;AAClC,YAAM,UAAW,IAAI,SAA8C;AACnE,UAAI,CAAC,KAAK,kBAAkB;AAC1B,aAAK,IAAI;AAAA,UACP,MAAM;AAAA,UACN,SAAS,EAAE,SAAS,OAAO,OAAO,oCAAoC;AAAA,QACxE,CAAC;AACD;AAAA,MACF;AACA,YAAM,YAAY,MAAM,KAAK,iBAAiB,SAAS,OAAO;AAC9D,WAAK,IAAI;AAAA,QACP,MAAM;AAAA,QACN,SAAS,EAAE,SAAS,MAAM,MAAM,UAAW,UAAU,CAAC,KAAK,OAAQ,UAAU;AAAA,MAC/E,CAAC;AAAA,IACH;AAAA,IACA,UAAU,OAAO,IAAI,QAAQ;AAC3B,YAAM,UAAW,IAAI,WAAW,CAAC;AAKjC,YAAM,UAAU,QAAQ;AACxB,YAAM,SACJ,QAAQ,WAAW,SAAS,SAAS,QAAQ,WAAW,QAAQ,QAAQ;AAC1E,YAAM,cAAc,KAAK,eAAe;AACxC,YAAM,UAAU,CAAC,UACf,KAAK,IAAI,EAAE,MAAM,oBAAoB,SAAS,EAAE,SAAS,OAAO,MAAM,EAAE,CAAC;AAC3E,UAAI,CAAC,WAAW,CAAC,OAAQ,QAAO,QAAQ,6BAA6B;AACrE,UAAI,CAAC,YAAa,QAAO,QAAQ,iBAAiB;AAClD,UAAI;AACF,cAAM,WAAW,MAAM,uBAAuB,aAAa,SAAS;AAAA,UAClE,uBAAuB;AAAA,QACzB,CAAC;AACD,YAAI,CAAC,SAAU,QAAO,QAAQ,oBAAoB,OAAO,EAAE;AAC3D,YAAI,SAAS,MAAM,MAAM,SAAS,EAAG,QAAO,QAAQ,2BAA2B;AAC/E,YAAI,WAAW,QAAQ;AAErB,eAAK,iBAAiB,aAAa,OAAO;AAC1C,gBAAM,QAAQ,MAAM,kBAAkB,cAAc,SAAS,OAAO;AAAA,YAClE,OAAO,SAAS,MAAM;AAAA,YACtB,aAAa,SAAS,MAAM,eAAe,SAAS,MAAM;AAAA,UAC5D,CAAC;AACD,gBAAM,SAA0B,MAAM,KAAK,MAAM,OAAO,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW;AAAA,YAChF,MAAM,MAAM;AAAA,YACZ,aAAa,MAAM;AAAA,YACnB,UAAU,MAAM;AAAA,YAChB,eAAe,MAAM;AAAA,YACrB,gBAAgB,MAAM;AAAA,YACtB,eAAe,MAAM,KAAK,MAAM,UAAU,MAAM,OAAO,CAAC,EAAE,IAAI,CAAC,UAAU;AAAA,cACvE,OAAO,KAAK;AAAA,cACZ,aAAa,KAAK;AAAA,cAClB,MAAM,KAAK;AAAA,cACX,UAAU,KAAK;AAAA,cACf,eAAe,KAAK,iBAAiB;AAAA,cACrC,GAAI,KAAK,OAAO,EAAE,MAAM,KAAK,KAAK,IAAI,CAAC;AAAA,YACzC,EAAE;AAAA,UACJ,EAAE;AACF,gBAAM,YAAY,cAAc,IAAI;AAAA,YAClC,MAAM;AAAA,YACN,SAAS;AAAA,cACP,OAAO,SAAS,MAAM;AAAA,cACtB;AAAA,cACA,YAAY,QAAQ,cAAc;AAAA,YACpC;AAAA,UACF,CAAC;AACD,eAAK,IAAI;AAAA,YACP,MAAM;AAAA,YACN,SAAS,EAAE,SAAS,MAAM,MAAM,EAAE,QAAQ,QAAQ,QAAQ,EAAE;AAAA,UAC9D,CAAC;AACD;AAAA,QACF;AACA,YAAI,CAAC,KAAK,oBAAoB;AAC5B,iBAAO,QAAQ,kEAAkE;AAAA,QACnF;AACA,cAAM,QAAQ,mBAAmB,EAAE,YAAY,CAAC;AAChD,cAAM,YAAY,IAAI,eAAe,EAAE,SAAS,MAAM,kBAAkB,CAAC;AACzE,cAAM,UAAU,KAAK,SAAS,KAAK;AAGnC,cAAM,SAAS,MAAM;AAAA,UACnB,SAAS;AAAA,UACT;AAAA,YACE,OAAO,KAAK;AAAA,YACZ,QAAQ,KAAK;AAAA,YACb;AAAA,YACA,iBAAiB,KAAK;AAAA,YACtB,kBAAkB,MAAM;AAAA,YACxB;AAAA,YACA,GAAI,KAAK,QAAQ,EAAE,OAAO,KAAK,MAAM,IAAI,CAAC;AAAA,YAC1C,GAAI,kBAAkB,EAAE,gBAAgB,IAAI,CAAC;AAAA,UAC/C;AAAA,UACA,EAAE,WAAW,KAAK;AAAA,QACpB;AACA,aAAK,iBAAiB,KAAK,OAAO,OAAO,OAAO,OAAO;AACvD,aAAK,OAAO,WAAW,MAAM,MAAM;AAAA,QAAC,CAAC;AACrC,cAAM,UAAU;AAAA,UACd,MAAM;AAAA,UACN,SAAS,EAAE,OAAO,OAAO,OAAO,SAAS,SAAS,MAAM,GAAG;AAAA,QAC7D;AAEA,aAAK,IAAI,OAAO;AAChB,aAAK,YAAY,OAAO;AACxB,aAAK,IAAI;AAAA,UACP,MAAM;AAAA,UACN,SAAS,EAAE,SAAS,MAAM,MAAM,EAAE,QAAQ,OAAO,SAAS,OAAO,OAAO,MAAM,EAAE;AAAA,QAClF,CAAC;AAAA,MACH,SAAS,KAAK;AACZ,gBAAQ,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG,CAAC;AAAA,MAC1D;AAAA,IACF;AAAA,EACF;AACF;;;AC1NA;AAAA,EACE;AAAA,OAIK;;;ACLP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAKK;;;ACTP,YAAY,UAAU;AAOtB,eAAsB,wBAAwB,MAK5B;AAChB,QAAM,EAAE,QAAQ,MAAM,UAAU,OAAO,IAAI;AAC3C,QAAM,IAAI,QAAc,CAAC,eAAe,iBAAiB;AACvD,WAAO,OAAO,UAAU,MAAM,MAAM,cAAc,CAAC;AACnD,WAAO,KAAK,SAAS,YAAY;AAAA,EACnC,CAAC;AACD,SAAO,GAAG,SAAS,CAAC,QAAe;AACjC,WAAO,MAAM,qBAAqB;AAAA,MAChC,SAAS,IAAI;AAAA,MACb,MAAM;AAAA,IACR,CAAC;AAAA,EACH,CAAC;AACH;AAEA,eAAsB,uBAAuB,MAIb;AAC9B,QAAM,EAAE,SAAS,UAAU,OAAO,IAAI;AACtC,QAAM,KAAU,kBAAa;AAC7B,KAAG,GAAG,WAAW,CAAC,KAAK,QAAQ,QAAQ,KAAK,WAAW,KAAK,GAAG,CAAC;AAChE,KAAG,GAAG,WAAW,CAAC,KAAK,QAAQ,SAAS,QAAQ,KAAK,WAAW,KAAK,QAAQ,IAAI,CAAC;AAClF,QAAM,eAAe,CAAC,QAAqC;AACzD,QAAI,IAAI,SAAS,kBAAkB,IAAI,SAAS,mBAAmB,IAAI,SAAS,cAAc;AAC5F,aAAO,KAAK,6BAA6B,EAAE,MAAM,IAAI,MAAM,MAAM,SAAS,CAAC;AAC3E;AAAA,IACF;AACA,WAAO,MAAM,qBAAqB,EAAE,SAAS,IAAI,SAAS,MAAM,SAAS,CAAC;AAAA,EAC5E;AACA,KAAG,GAAG,SAAS,YAAY;AAC3B,QAAM,gBAAgB,MAAM,IAAI,QAAiB,CAAC,kBAAkB;AAClE,UAAM,cAAc,MAAM;AACxB,SAAG,IAAI,SAAS,cAAc;AAC9B,oBAAc,IAAI;AAAA,IACpB;AACA,UAAM,iBAAiB,MAAM;AAC3B,SAAG,IAAI,aAAa,WAAW;AAC/B,oBAAc,KAAK;AAAA,IACrB;AACA,OAAG,KAAK,aAAa,WAAW;AAChC,OAAG,KAAK,SAAS,cAAc;AAC/B,OAAG,OAAO,UAAU,KAAK;AAAA,EAC3B,CAAC;AACD,MAAI,CAAC,cAAe,QAAO;AAC3B,UAAQ,IAAI,0CAA0C,QAAQ,EAAE;AAChE,SAAO;AACT;;;ACtBA,IAAM,iBAAiB,CAAC,OAAe,YACrC,KAAK,UAAU;AAAA,EACb;AAAA,EACA,OAAO;AAAA,EACP;AAAA,EACA,YAAW,oBAAI,KAAK,GAAE,YAAY;AACpC,CAAC;AASI,IAAM,gBAAwB;AAAA,EACnC,OAAO;AAAA,EACP,MAAM,KAAa,MAAgB;AACjC,YAAQ,MAAM,eAAe,SAAS,GAAG,CAAC;AAAA,EAC5C;AAAA,EACA,KAAK,KAAa,MAAgB;AAChC,YAAQ,KAAK,eAAe,QAAQ,GAAG,CAAC;AAAA,EAC1C;AAAA,EACA,KAAK,KAAa,MAAgB;AAChC,YAAQ,IAAI,eAAe,QAAQ,GAAG,CAAC;AAAA,EACzC;AAAA,EACA,MAAM,KAAa,MAAgB;AACjC,YAAQ,MAAM,eAAe,SAAS,GAAG,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,KAAa,MAAgB;AACjC,YAAQ,MAAM,eAAe,SAAS,GAAG,CAAC;AAAA,EAC5C;AAAA,EACA,MAAM,WAA4C;AAChD,WAAO;AAAA,EACT;AACF;;;ACxEA,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B,YAAY,UAAU;AACtB,SAAS,qBAAqB;AAMvB,SAAS,oBAAoB,eAAuB,QAA4C;AACrG,QAAM,iBAAiB,cAAc,aAAa;AAClD,MAAI;AAEJ,SAAO,MAAM;AACX,QAAI,kBAAkB,OAAW,QAAO;AAExC,QAAI;AACF,YAAM,aAAa,eAAe,QAAQ,mBAAmB;AAC7D,YAAM,WAAW,WAAW,QAAQ,gBAAgB,EAAE;AACtD,YAAM,eAAoB,UAAK,UAAU,cAAc;AACvD,sBAAgB,cAAc,YAAY,EAAE,UAAU;AACtD,UAAI,eAAe;AACjB,eAAO,QAAQ,iDAAiD,QAAQ,GAAG;AAC3E,eAAO;AAAA,MACT;AAAA,IACF,SAAS,KAAK;AACZ,aAAO,QAAQ,kCAAmC,IAAc,OAAO,EAAE;AAAA,IAC3E;AAEA,QAAI;AACF,sBAAgB,eAAe,UAAU;AACzC,aAAO,QAAQ,sDAAsD;AACrE,aAAO;AAAA,IACT,SAAS,KAAK;AACZ,aAAO,QAAQ,qCAAsC,IAAc,OAAO,EAAE;AAAA,IAC9E;AAEA,QAAI;AACF,YAAM,aAAkB,UAAU,aAAQ,cAAc,aAAa,CAAC,GAAG,MAAM,cAAc;AAC7F,UAAI,MAAW,aAAQ,UAAU;AACjC,eAAS,IAAI,GAAG,IAAI,GAAG,KAAK;AAC1B,cAAM,YAAiB,UAAK,KAAK,gBAAgB,UAAU;AAC3D,YAAI,WAAW,SAAS,GAAG;AACzB,0BAAgB,cAAc,SAAS,EAAE,UAAU;AACnD,cAAI,eAAe;AACjB,mBAAO,QAAQ,kDAAkD,SAAS,GAAG;AAC7E,mBAAO;AAAA,UACT;AAAA,QACF;AACA,cAAM,SAAc,aAAQ,GAAG;AAC/B,YAAI,WAAW,IAAK;AACpB,cAAM;AAAA,MACR;AAAA,IACF,SAAS,KAAK;AACZ,aAAO,QAAQ,0CAA2C,IAAc,OAAO,EAAE;AAAA,IACnF;AACA,oBAAgB;AAChB,WAAO,QAAQ,iFAAiF;AAChG,WAAO;AAAA,EACT;AACF;;;AC5DA,YAAY,QAAQ;AACpB,YAAYC,WAAU;AACtB,SAAS,0BAA0B;AAGnC;AAAA,EAEE;AAAA,EACA;AAAA,EACA,gBAAgB;AAAA,EAChB;AAAA,OACK;AAwBP,eAAsB,iBAAiB,MAAsC;AAC3E,MAAI,SAAS,KAAK;AAClB,MAAI,CAAC,UAAU,OAAO,KAAK,MAAM,EAAE,WAAW,GAAG;AAC/C,QAAI,CAAC,KAAK,kBAAmB;AAC7B,QAAI;AACF,eAAS,KAAK,MAAM,MAAS,YAAS,KAAK,mBAAmB,MAAM,CAAC;AAAA,IACvE,QAAQ;AACN;AAAA,IACF;AAAA,EACF;AACA,kBAAgB,QAAQ,EAAE,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC;AACvD;AAOO,SAAS,mBAAmB,MAAqC;AACtE,QAAM,YAAmC,EAAE,MAAM,QAAQ,QAAQ,EAAE;AAEnE,QAAM,qBAAqB,CAAC,UAA2D;AACrF,QAAI,CAAC,KAAK,UAAW;AACrB,SAAK,YAAY,EAAE,GAAG,KAAK,WAAW,GAAG,MAAM;AAAA,EACjD;AAEA,QAAM,eAAe,OAAO,YAAyC;AACnE,QAAI,MAAM,QAAQ,QAAQ,gBAAgB,CAAC,GAAG;AAC5C,yBAAmB,EAAE,gBAAgB,QAAQ,gBAAgB,EAAc,CAAC;AAAA,IAC9E;AACA,QACE,QAAQ,kBAAkB,KAC1B,OAAO,QAAQ,kBAAkB,MAAM,YACvC,CAAC,MAAM,QAAQ,QAAQ,kBAAkB,CAAC,GAC1C;AACA,yBAAmB;AAAA,QACjB,kBAAkB,QAAQ,kBAAkB;AAAA,MAC9C,CAAC;AAAA,IACH;AACA,QAAI,MAAM,QAAQ,QAAQ,gBAAgB,CAAC,GAAG;AAC5C,yBAAmB,EAAE,gBAAgB,QAAQ,gBAAgB,EAAc,CAAC;AAAA,IAC9E;AACA,QAAI,OAAO,QAAQ,oBAAoB,MAAM,WAAW;AACtD,yBAAmB,EAAE,oBAAoB,QAAQ,oBAAoB,EAAE,CAAC;AAAA,IAC1E;AACA,QAAI,MAAM,QAAQ,QAAQ,2BAA2B,CAAC,GAAG;AACvD,yBAAmB;AAAA,QACjB,2BAA2B,QAAQ,2BAA2B;AAAA,MAChE,CAAC;AAAA,IACH;AACA,QAAI,OAAO,QAAQ,cAAc,MAAM,WAAW;AAChD,yBAAmB,EAAE,cAAc,QAAQ,cAAc,EAAE,CAAC;AAAA,IAC9D;AACA,QAAI,OAAO,QAAQ,UAAU,MAAM,UAAU;AAC3C,yBAAmB,EAAE,UAAU,QAAQ,UAAU,EAAE,CAAC;AAAA,IACtD;AACA,QACE,QAAQ,aAAa,KACrB,OAAO,QAAQ,aAAa,MAAM,YAClC,CAAC,MAAM,QAAQ,QAAQ,aAAa,CAAC,GACrC;AACA,yBAAmB,EAAE,aAAa,QAAQ,aAAa,EAA2B,CAAC;AAAA,IACrF;AACA,QAAI,CAAC,KAAK,kBAAmB;AAE7B,UAAM,aAAa,KAAK,mBACf,cAAQ,KAAK,gBAAgB,IAC7B,cAAQ,KAAK,iBAAiB;AACvC,UAAM,QAAQ,IAAI,mBAAmB,EAAE,SAAc,WAAK,YAAY,MAAM,EAAE,CAAC;AAC/E,UAAM;AAAA,MACJ;AAAA,QACE,mBAAmB,KAAK;AAAA,QACxB;AAAA,QACA,QAAQ;AAAA,UACN,KAAK,SAAS;AACZ,oBAAQ;AAAA,cACN,KAAK,UAAU;AAAA,gBACb,OAAO;AAAA,gBACP,OAAO;AAAA,gBACP;AAAA,gBACA,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,cACpC,CAAC;AAAA,YACH;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AAAA,IACL,cAAc,MAAM,cAAc,KAAK,MAAM,IAAI,IAAI;AAAA,IACrD;AAAA,EACF;AACF;;;AClIA,YAAYC,WAAU;AACtB,SAAS,sBAAAC,2BAA0B;AA8C5B,SAAS,SAAS,kBAA0D;AACjF,QAAM,YAAiB,cAAQ,oBAAoB,EAAE;AACrD,QAAM,YAAiB,cAAQ,SAAS;AACxC,QAAM,aAAkB,eAAS,SAAS,MAAM,aAAkB,cAAQ,SAAS,IAAI;AACvF,QAAM,UAAe,WAAK,YAAY,MAAM;AAC5C,SAAO,IAAIC,oBAAmB,EAAE,QAAQ,CAAC;AAC3C;AAEA,eAAsB,mBACpB,kBACyC;AACzC,MAAI,CAAC,iBAAkB,QAAO,CAAC;AAC/B,SAAO,oBAAoB,kBAAkB,SAAS,gBAAgB,CAAC;AACzE;AAEA,eAAsB,cACpB,kBACA,WACe;AACf,MAAI,CAAC,iBAAkB;AACvB,QAAM;AAAA,IACJ;AAAA,IACA,SAAS,gBAAgB;AAAA,IACzB,CAAC,aAA6C;AAE5C,iBAAW,OAAO,OAAO,KAAK,QAAQ,EAAG,QAAO,SAAS,GAAG;AAC5D,aAAO,OAAO,UAAU,SAAS;AAAA,IACnC;AAAA,EACF;AACF;AA8BO,SAAS,0BACd,kBACA,oBACqB;AACrB,SAAO;AAAA,IACL,MAAM,MACJ,qBACI,QAAQ,QAAQ,mBAAmB,CAAC,IACpC,mBAAmB,gBAAgB;AAAA,IACzC,MAAM,CAAC,cAAc,cAAc,kBAAkB,SAAS;AAAA,EAChE;AACF;;;AC3GA,YAAYC,WAAU;AAGtB,SAAS,sCAAsC;AAC/C,SAAS,6BAA6B;;;ACdtC;AAAA,EACE;AAAA,EACA;AAAA,OAGK;;;ADoCA,SAAS,iCACd,MAC0B;AAC1B,SAAO,eAAe,yBACpB,WACA,aAAa,OACb;AACA,QAAI,aAAa;AACjB,QAAI,YAAY;AAChB,QAAI,aAAa;AACjB,QAAI,gBAAgB;AACpB,UAAM,aAAa,KAAK;AACxB,QAAI;AACF,UAAI,KAAK,gBAAgB;AACvB,cAAM,IAAI,MAAM,KAAK,eAAe;AAAA,UAClC,KAAK,MAAM,IAAI,SAAS;AAAA,UACxB,KAAK,MAAM,IAAI;AAAA,QACjB;AACA,cAAM,cAAc,GAAG,aAAa;AAGpC,qBAAa,eAAe,KAAK,MAAM,IAAI,SAAS,cAAc,cAAc;AAChF,cAAM,QAAQ,aAAa,CAAC;AAC5B,oBAAY,MAAM;AAClB,qBAAa,MAAM;AACnB,wBAAgB,MAAM;AAAA,MACxB,OAAO;AAEL,qBAAa,KAAK,MAAM,IAAI,SAAS,cAAc,cAAc;AAAA,MACnE;AAAA,IACF,QAAQ;AAAA,IAER;AAIA,UAAM,kBACJ,OAAO,KAAK,MAAM,IAAI,sBAAsB,YAAY,KAAK,MAAM,IAAI,oBAAoB,IACvF,KAAK,MAAM,IAAI,oBACf;AAEN,WAAO;AAAA,MACL,WAAW,KAAK,MAAM,IAAI,SAAS,MAAM,KAAK,QAAQ;AAAA,MACtD,OAAO,KAAK,MAAM,IAAI;AAAA,MACtB,UAAU,KAAK,MAAM,IAAI,SAAS;AAAA,MAClC,MAAM,KAAK,UAAU;AAAA,MACrB,aAAa,KAAK,cAAmB,eAAS,KAAK,WAAW,IAAI;AAAA;AAAA;AAAA,MAGlE,aACE,KAAK,eAAgB,KAAK,MAAM,IAAiC,eAAe;AAAA,MAClF,KAAK,KAAK,eAAgB,KAAK,MAAM,IAAiC,eAAe;AAAA,MACrF;AAAA;AAAA,MACA,aAAa;AAAA,QACX,KAAK,MAAM,IAAI,OAAO,mBAAmB,KAAK;AAAA,MAChD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,kBAAkB,KAAK,eAAe,eAAe,KAAK,CAAC;AAAA,MAC3D,YAAY,YAAY;AAAA,MACxB,eAAe,YAAY;AAAA,MAC3B,iBAAiB,YAAY,YAAY;AAAA,MACzC,mBAAmB,YAAY,eAAe;AAAA,MAC9C,GAAG,sBAAsB;AAAA,MACzB,GAAG;AAAA,IACL;AAAA,EACF;AACF;;;AE3GA;AAAA,EACE;AAAA,EAEA,eAAe;AAAA,OACV;AAwBA,SAAS,kBAAkB,MAAmC;AACnE,MAAI,mBAAmB;AACvB,MAAI,sBAAsB;AAC1B,QAAM,kBAAkB,MAAY;AAClC,SAAK,UAAU;AAAA,MACb,MAAM;AAAA,MACN,SAAS,KAAK,eAAe,EAAE,kBAAkB,oBAAoB,CAAC;AAAA,IACxE,CAAC;AAAA,EACH;AAEA,SAAO,SAAS,cAAoB;AAClC,eAAW,eAAe,KAAK,mBAAoB,aAAY;AAC/D,SAAK,mBAAmB,SAAS;AAIjC,UAAM,gBAAgB,KAAK,MAAM,KAAK,OAAO,eAAe;AAC5D,UAAM,mBAAmB,qBAAqB;AAAA,MAC5C,QAAQ,KAAK;AAAA,MACb,WAAW,CAAC,UAAU,YAAY,KAAK,UAAU,OAAO;AAAA,MACxD,SAAS,KAAK,WAAW;AAAA,MACzB,QAAQ;AAAA,QACN,OAAO;AAAA,UACL,GAAI,OAAO,kBAAkB,WAAW,EAAE,cAAc,IAAI,CAAC;AAAA,QAC/D;AAAA,MACF;AAAA,MACA,SAAS,KAAK,MAAM;AAAA,MACpB,iBAAiB,KAAK;AAAA,MACtB,kBAAkB,KAAK;AAAA,MACvB,oBAAoB,KAAK;AAAA,MACzB,YAAY;AAAA,QACV,aAAa,CAAC,UAAU,KAAK,eAAe,YAAY,KAAK;AAAA,QAC7D,gBAAgB,KAAK;AAAA,QACrB,oBAAoB,KAAK;AAAA,QACzB,mBAAmB,CAAC,YAAY,KAAK,kBAAkB,OAAgB;AAAA,QACvE,oBAAoB,KAAK;AAAA,QACzB,uBAAuB,KAAK;AAAA,MAC9B;AAAA,IACF,CAAC;AACD,SAAK,mBAAmB,KAAK,gBAAgB;AAE7C,SAAK,UAAU;AAAA,MACb,MAAM;AAAA,MACN,SAAS,KAAK,eAAe;AAAA,QAC3B,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,UAAU;AAAA,QACV,MAAM;AAAA,QACN,QAAQ;AAAA,MACV,CAAC;AAAA,IACH,CAAC;AACD,oBAAgB;AAEhB,SAAK,mBAAmB;AAAA,MACtB,KAAK,OAAO,GAAG,uBAAuB,CAAC,UAAU;AAC/C,8BAAsB,KAAK,IAAI,GAAG,MAAM,CAAC;AACzC,wBAAgB;AAAA,MAClB,CAAC;AAAA,MACD,KAAK,OAAO,GAAG,oBAAoB,MAAM;AACvC,4BAAoB;AACpB,wBAAgB;AAAA,MAClB,CAAC;AAAA,MACD,KAAK,OAAO,GAAG,2BAA2B,MAAM;AAC9C,2BAAmB,KAAK,IAAI,GAAG,mBAAmB,CAAC;AACnD,wBAAgB;AAAA,MAClB,CAAC;AAAA,IACH;AAEA,QAAI,KAAK,2BAA2B;AAClC,YAAM,eAAe;AAAA,QACnB,KAAK;AAAA,QACL,CAAC,UAAU,YAAY,KAAK,UAAU,OAAO;AAAA,QAC7C,KAAK;AAAA,MACP;AACA,WAAK,mBAAmB,KAAK,MAAM,aAAa,QAAQ,CAAC;AAAA,IAC3D;AAAA,EACF;AACF;;;AC7GA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OAMK;;;ACTP;AAAA,EACE;AAAA,OAIK;;;ACLP,SAAS,cAAc;AAEvB,IAAM,oBAAoB;AAC1B,IAAM,qBAAqB;AAC3B,IAAM,yBAAyB;AAiCxB,SAAS,4BACd,UAAyC,CAAC,GAClB;AACxB,QAAM,QAAQ,QAAQ,SAAS,QAAQ,OAAO,UAAU;AACxD,MAAI,CAAC,OAAO;AACV,WAAO,EAAE,SAAS,OAAO,QAAQ,MAAM;AAAA,IAAC,GAAG,MAAM,MAAM;AAAA,IAAC,EAAE;AAAA,EAC5D;AAEA,QAAM,WAAW,KAAK,IAAI,GAAG,KAAK,MAAM,QAAQ,YAAY,iBAAiB,CAAC;AAC9E,QAAM,YAAY,KAAK,IAAI,KAAK,KAAK,MAAM,QAAQ,aAAa,kBAAkB,CAAC;AACnF,QAAM,SAAS,QAAQ,iBAAiB;AACxC,QAAM,QAAQ,QAAQ,UAAU,CAAC,UAAkB,QAAQ,OAAO,MAAM,KAAK;AAC7E,QAAM,gBAAgB,QAAQ,iBAAiB;AAC/C,QAAM,kBAAkB,QAAQ,mBAAmB;AACnD,QAAM,QAAkB,CAAC;AACzB,MAAI,UAAU;AAEd,QAAM,YAAwD;AAAA,IAC5D,KAAK,OAAO;AAAA,IACZ,MAAM,OAAO;AAAA,IACb,MAAM,OAAO;AAAA,IACb,OAAO,OAAO;AAAA,IACd,OAAO,OAAO;AAAA,EAChB;AACA,QAAM,WAAW,CAAC;AAElB,QAAM,WAAW,CAAC,SAA0B;AAC1C,eAAW,QAAQ,OAAO,GAAG,IAAI,EAAE,MAAM,QAAQ,GAAG;AAClD,YAAM,KAAK,IAAI;AACf,UAAI,MAAM,SAAS,SAAU,OAAM,MAAM;AAAA,IAC3C;AAAA,EACF;AAEA,aAAW,SAAS,OAAO,KAAK,SAAS,GAAiC;AACxE,UAAM,WAAW,UAAU,KAAK;AAChC,UAAM,UAAyB,IAAI,SAAS;AAC1C,eAAS,IAAI;AACb,eAAS,MAAM,QAAQ,IAAI;AAAA,IAC7B;AACA,aAAS,KAAK,IAAI;AAClB,WAAO,KAAK,IAAI;AAAA,EAClB;AAEA,QAAM,SAAS,MAAY;AACzB,QAAI,WAAW,MAAM,WAAW,EAAG;AACnC,UAAM,GAAG,sBAAsB,GAAG,MAAM,KAAK,IAAI,CAAC;AAAA,CAAI;AAAA,EACxD;AACA,QAAM,QAAQ,cAAc,QAAQ,SAAS;AAC7C,QAAM,QAAQ;AAEd,SAAO;AAAA,IACL,SAAS;AAAA,IACT;AAAA,IACA,MAAM,MAAM;AACV,UAAI,QAAS;AACb,gBAAU;AACV,sBAAgB,KAAK;AACrB,iBAAW,SAAS,OAAO,KAAK,SAAS,GAAiC;AACxE,YAAI,OAAO,KAAK,MAAM,SAAS,KAAK,EAAG,QAAO,KAAK,IAAI,UAAU,KAAK;AAAA,MACxE;AAAA,IACF;AAAA,EACF;AACF;;;AhBEA,eAAsB,SAAS,MAAsC;AACnE,QAAM,gBACJ,KAAK,iBACL,iCAAiC,EAAE,UAAU,mCAAmC,CAAC;AACnF,QAAM,OAAO,KAAK,QAAQ,QAAQ,IAAI,YAAY,KAAK,QAAQ,IAAI,SAAS,KAAK;AACjF,QAAM,YAAY,KAAK,aAAa,QAAQ,IAAI,kBAAkB;AAClE,QAAM,cAAc,KAAK,eAAe,QAAQ,IAAI,qBAAqB;AACzE,QAAM,eAAe,KAAK,gBAAgB,QAAQ,qBAAqB;AACvE,QAAM,UAAU,KAAK,WAAW;AAChC,QAAM,kBAAkB,YAAY,aAAa,EAAE,MAAM,KAAK,IAAI,EAAE,MAAM,KAAK;AAC/E,QAAM,oBAAoB,KAAK,YAAY,KAAK,QAAQ,gBAAgB;AAIxE,QAAM,aACJ,QAAQ,IAAI,mBAAmB,MAAM,OAAO,QAAQ,IAAI,mBAAmB,MAAM;AACnF,MAAI,WAAW;AACf,MAAI,CAAC,YAAY;AACf,eAAW,MAAM,aAAa,MAAM,iBAAiB;AAAA,EACvD;AACA,QAAM,SAAS;AACf,QAAM,aAAa,KAAK,mBACf,cAAQ,KAAK,gBAAgB,IAClC,iBAAiB;AAIrB,QAAM,oBACJ,KAAK,qBAAqB,KAAK,oBAAyB,WAAK,YAAY,aAAa;AAKxF,QAAM,eAAe,OAAO,SAAS,QAAQ,IAAI,kBAAkB,KAAK,KAAK,EAAE;AAC/E,QAAM,UAAU,oBAAI,IAAgC;AAKpD,QAAM,kBAAkB,oBAAI,IAA4B;AACxD,QAAM,iBAAiB,IAAI,sBAAsB;AACjD,MAAI,kBAA0C;AAO9C,QAAM,mBAAmB,oBAAI,IAAgC;AAE7D,QAAM,aAAkB,cAAQ,iBAAiB;AAEjD,MAAI,mBAAoD;AACxD,QAAM,qBAAqB,MAAgC;AACzD,0BAAsB,YAAY;AAChC,YAAM,QAAQ,sBAAsB,UAAU;AAC9C,YAAM,MAAM,KAAK;AACjB,aAAO;AAAA,IACT,GAAG;AACH,WAAO;AAAA,EACT;AAIA,QAAM,eAAe,KAAK,cACjB,WAAK,KAAK,aAAa,eAAe,MAAM,IAC5C,WAAQ,UAAO,GAAG,eAAe,MAAM;AAIhD,QAAM,kBAAkB,KAAK,cACzB,sBAAsB;AAAA,IACpB,aAAa,KAAK;AAAA,IAClB,QAAQ,KAAK;AAAA,IACb;AAAA,IACA,KAAK,CAAC,MAAM,cAAc,KAAK,CAAC;AAAA,EAClC,CAAC,IACD;AACJ,QAAM,mBAAmB,KAAK,cAC1B,uBAAuB;AAAA,IACrB,aAAa,KAAK;AAAA,IAClB;AAAA,IACA,GAAI,KAAK,mBAAmB,EAAE,cAAc,KAAK,iBAAiB,IAAI,CAAC;AAAA,IACvE,KAAK,CAAC,YAAY,cAAc,KAAK,OAAO;AAAA,EAC9C,CAAC,IACD;AACJ,QAAM,kCAAkC,mBACpC,wBAAwB;AAAA,IACtB,cAAc,MAAM;AAClB,YAAM,QAAQ,iBAAiB,SAAS;AACxC,aAAO;AAAA,QACL,2BAA2B,MAAM;AAAA,QACjC,iCAAiC,MAAM;AAAA,QACvC,gCAAgC,MAAM;AAAA,QACtC,+BAA+B,MAAM;AAAA,MACvC;AAAA,IACF;AAAA,EACF,CAAC,IACD;AACJ,QAAM,cAAc,IAAI;AAAA,IACtB,KAAK;AAAA,IACL,KAAK,MAAM;AAAA,IACX;AAAA,IACA;AAAA,IACA,KAAK;AAAA,IACL,KAAK;AAAA,IACL,kBAAkB,CAAC,SAAS,UAAU,gBAAgB,YAAY,SAAS,KAAK,IAAI;AAAA,EACtF;AACA,QAAM,kBAAkB,IAAI,yBAAyB,KAAK,QAAQ,aAAa;AAE/E,QAAM,sBAAsB,oBAAoB,YAAY,KAAK,aAAa;AAC9E,QAAM,kBAAkB,IAAI;AAAA,IAC1B,MAAO,KAAK,MAAM,IAAgB,OAAO,KAAK,eAAe,QAAQ,IAAI;AAAA,IACzE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAIA,QAAM,aAAa,KAAK,cACpBC,oBAAmB,EAAE,aAAa,KAAK,YAAY,CAAC,IACpD;AACJ,QAAM,eAAe,IAAI;AAAA,IACvB,YAAY,gBAAqB,WAAQ,UAAO,GAAG,eAAe,OAAO;AAAA,IACzE,YAAY,qBAA0B,WAAQ,UAAO,GAAG,eAAe,aAAa;AAAA,EACtF;AAMA,QAAM,kBAAkB,IAAI;AAAA,IAC1B,YAAY,oBAAyB,WAAQ,UAAO,GAAG,eAAe,YAAY;AAAA,IAClF,KAAK;AAAA,IACL,cAAc,KAAK,cACf;AAAA,MACE,aAAa,KAAK;AAAA,MAClB,OAAO;AAAA,QACL,cAAc,WAAW;AAAA,QACzB,mBAAmB,WAAW;AAAA,QAC9B,mBAAmB,WAAW;AAAA,QAC9B,kBAAkB,WAAW;AAAA,MAC/B;AAAA,IACF,IACA;AAAA,IACJ,EAAE,eAAe,QAAQ,cAAc;AAAA,EACzC;AAKA,QAAM,mBACJ,KAAK,sBAAsB,aACvB,IAAI;AAAA,IACF,mBAAmB;AAAA,MACjB,OAAO,KAAK;AAAA,MACZ,QAAQ,KAAK;AAAA,MACb,aAAa,KAAK,eAAe,QAAQ,IAAI;AAAA,MAC7C,iBAAiB,KAAK;AAAA;AAAA;AAAA,MAGtB,GAAI,KAAK,QAAQ,EAAE,OAAO,KAAK,MAAM,IAAI,CAAC;AAAA,MAC1C,OAAO;AAAA,QACL,cAAc,WAAW;AAAA,QACzB,mBAAmB,WAAW;AAAA,QAC9B,kBAAkB,WAAW;AAAA,QAC7B,YAAY,WAAW;AAAA,QACvB,mBAAmB,WAAW;AAAA,MAChC;AAAA,IACF,CAAC;AAAA,EACH,IACA;AAKN,QAAM,iBAAiB,IAAI;AAC3B,MAAI,OAAO,KAAK,MAAM,KAAK,OAAO,MAAM,MAAM,WAAW;AACvD,SAAK,eAAe,KAAK,MAAM,IAAI,KAAK,MAAM,CAAC;AAAA,EACjD;AAEA,QAAM,EAAE,cAAc,aAAa,IAAI,mBAAmB,IAAI;AAI9D,QAAM,mBAAmB,KAAK,IAAI;AAIlC,QAAM,2BAA2B,iCAAiC,IAAI;AAKtE,QAAM,EAAE,UAAU,qBAAqB,YAAY,sBAAsB,IACvE,8BAA8B;AAAA,IAC5B,aAAa,KAAK;AAAA,IAClB,WAAW,KAAK;AAAA,IAChB,QAAQ,KAAK;AAAA,IACb,aAAa,KAAK,QAAQ;AAAA,IAC1B,cAAc,MAAM,KAAK,MAAM,IAAI,SAAS,MAAM,KAAK,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAM/D,WAAW;AAAA,MACT,iBAAiB,MAAM;AACrB,YAAI,UAAU;AACd,YAAI,iBAAiB;AACnB,0BAAgB,MAAM;AACtB,4BAAkB;AAClB,oBAAU;AAAA,QACZ;AACA,mBAAW,KAAK,iBAAiB,OAAO,GAAG;AACzC,YAAE,MAAM;AACR,oBAAU;AAAA,QACZ;AACA,yBAAiB,MAAM;AACvB,eAAO;AAAA,MACT;AAAA,MACA,iBAAiB,MAAM,KAAK,gBAAgB;AAAA,IAC9C;AAAA,EACF,CAAC;AAGH,sBAAoB;AAMpB,QAAM,UAAU,iBAAiB,KAAK,WAAW;AACjD,QAAM,kBAAkB,CAAC,WAAW,WAAW,EAC5C,IAAI,CAAC,UAAU;AACd,QAAI,CAAC,MAAO,QAAO;AACnB,QAAI;AACF,aAAO,IAAI,IAAI,KAAK,EAAE;AAAA,IACxB,QAAQ;AACN,aAAO;AAAA,IACT;AAAA,EACF,CAAC,EACA,OAAO,CAAC,UAA2B,QAAQ,KAAK,CAAC;AACpD,QAAM,YAAY,oBAAoB;AAAA,IACpC;AAAA,IACA,MAAM;AAAA,IACN,OAAO;AAAA,IACP;AAAA,EACF,CAAC;AAWD,MAAI,oBAAkD;AACtD,QAAM,aAAa,MAAM,iBAAiB;AAAA,IACxC;AAAA,IACA;AAAA,IACA;AAAA,IACA,SAAS,KAAK;AAAA,IACd,gBAAgB;AAAA,MACd,oBAAoB,CAAC,OAAO;AAC1B,cAAM,cAAc,gBAAgB,IAAI,YAAY,GAAG;AACvD,YAAI,CAAC,YAAa,OAAM,IAAI,MAAM,sBAAsB,EAAE,EAAE;AAC5D,eAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA,aAAa,MAAM;AACjB,WAAK,oBAAoB;AAAA,IAC3B;AAAA,IACA,kBAAkB,CAAC,UAAU,UAAU,KAAK;AAAA;AAAA;AAAA,IAG5C,QAAQ,MACN,KAAK,MAAM,IAAI,YAAY,KAAK,MAAM,IAAI,QACtC,EAAE,UAAU,KAAK,MAAM,IAAI,UAAU,OAAO,KAAK,MAAM,IAAI,MAAM,IACjE;AAAA,IACN,aAAa,KAAK;AAAA,IAClB;AAAA,IACA,UAAU;AAAA,IACV;AAAA;AAAA;AAAA;AAAA,IAIA,aAAa,YAAY;AAAA,EAC3B,CAAC;AAcD,QAAM,MAAM,aACR,IAAI,gBAAgB,EAAE,QAAQ,WAAW,QAAQ,YAAY,KAAK,OAAO,KAAK,CAAC,IAC/E,IAAI,gBAAgB,EAAE,MAAM,UAAU,MAAM,YAAY,KAAK,OAAO,KAAK,CAAC;AAO9E,MAAI,cAAc,YAAY,YAAY;AACxC,UAAM,wBAAwB;AAAA,MAC5B,QAAQ,WAAW;AAAA,MACnB;AAAA,MACA;AAAA,MACA,QAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAiBA,MAAI,qBAAwC;AAC5C,MAAI,cAAc,SAAS,aAAa;AACtC,yBAAqB,MAAM,uBAAuB;AAAA,MAChD,SAAS,WAAW;AAAA,MACpB;AAAA,MACA,QAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAEA,UAAQ,IAAI,6CAA6C,IAAI,IAAI,QAAQ,EAAE;AAE3E,MAAI,YAAY;AACd,uBAAmB;AAAA,MACjB;AAAA,MACA,QAAQ,WAAW;AAAA,MACnB;AAAA,MACA;AAAA,MACA,MAAM,CAAC,CAAC,KAAK;AAAA,MACb;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,OAAO;AACL,YAAQ;AAAA,MACN,+GACoC,IAAI,IAAI,QAAQ;AAAA,IACtD;AAAA,EACF;AAIA,QAAM,kBAAkB;AACxB,MAAI,KAAK,aAAa;AACpB,0BAAsB;AAAA,MACpB,KAAK,QAAQ;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,aAAa,KAAK;AAAA,MAClB,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,MAClC;AAAA,IACF,CAAC;AAAA,EACH;AAKA,QAAM,qBAAwC,CAAC;AAE/C,QAAM,mBAAmB,MAAc,KAAK,MAAM,IAAI,SAAS,MAAM,KAAK,QAAQ;AAClF,QAAM,iBAAiB,CACrB,YAC8B;AAC9B,UAAM,WAAW,QAAQ,WAAW;AACpC,UAAM,YACJ,OAAO,aAAa,YAAY,SAAS,SAAS,IAAI,WAAW,iBAAiB;AACpF,WAAO,EAAE,GAAG,SAAS,UAAU;AAAA,EACjC;AAKA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI,sBAAsB,EAAE,WAAW,eAAe,CAAC;AAMvD,QAAM,cAAc,kBAAkB;AAAA,IACpC,QAAQ,KAAK;AAAA,IACb,OAAO,KAAK;AAAA,IACZ,2BAA2B,KAAK;AAAA,IAChC;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY,MAAM;AAAA,IAClB;AAAA,IACA,kBAAuB,WAAK,YAAY,aAAa;AAAA,IACrD,oBAAoB,CAAC,OAAO;AAC1B,0BAAoB;AAAA,IACtB;AAAA,EACF,CAAC;AAKD,QAAM,eAAwC;AAAA,IAC5C,eAAe;AAAA,MACb;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAMA,MAAO,KAAK,WAAW,aAA4D,CAAC;AAAA,IACtF;AAAA,IACA,gBAAgB,KAAK;AAAA,IACrB;AAAA,IACA;AAAA,IACA,KAAK,CAAC,MAAM,QAAQ,IAAI,CAAC;AAAA,EAC3B;AACA,QAAM,6BAA6B,iCAAiC,YAAY;AAWhF,QAAM,kBAAkB;AACxB,MAAI;AACJ,MAAI,mBAAmB,QAAQ,IAAI,iCAAiC,MAAM,KAAK;AAC7E,QAAI,gBAAgB,KAAK;AAAA,MACvB,KAAK,WAAW,YAAY,KAAK,MAAM,IAAI,SAAS,EAAE,KAAK;AAAA,IAC7D;AACA,QAAI,eAAe,KAAK,WAAW;AACnC,UAAM,UAAU;AAAA,MACd;AAAA;AAAA;AAAA,MAGA,SAAS,KAAK,gBAAgB;AAAA,MAC9B,CAAC,aAAa;AAIZ,YAAI;AACF,cAAI,KAAK,aAAa,CAAC,OAAO,SAAS,KAAK,SAAS,GAAG;AACtD,iBAAK,UAAU,YAAY,SAAS;AACpC,gBAAI,SAAS,SAAU,MAAK,UAAU,WAAW,SAAS;AAAA,UAC5D;AAAA,QACF,QAAQ;AAAA,QAER;AAGA,cAAM,iBACJ,SAAS,mBAAmB,UAC5B,SAAS,qBAAqB,UAC9B,SAAS,mBAAmB,UAC5B,SAAS,uBAAuB,UAChC,SAAS,gBAAgB,UACzB,SAAS,iBAAiB;AAC5B,YAAI,gBAAgB;AAClB,gBAAM,cAAc,KAAK,MAAM,WAAW,cAAc,OAAO,WAAW;AAG1E,uBAAa,OAAO;AAAA,YAClB,GAAI,SAAS,mBAAmB,SAC5B,EAAE,gBAAgB,SAAS,eAAe,IAC1C,CAAC;AAAA,YACL,GAAI,SAAS,qBAAqB,SAC9B,EAAE,kBAAkB,SAAS,iBAAiB,IAC9C,CAAC;AAAA,YACL,GAAI,SAAS,mBAAmB,SAC5B,EAAE,gBAAgB,SAAS,eAAe,IAC1C,CAAC;AAAA,YACL,GAAI,SAAS,uBAAuB,SAChC,EAAE,oBAAoB,SAAS,mBAAmB,IAClD,CAAC;AAAA,YACL,GAAI,SAAS,gBAAgB,SAAY,EAAE,aAAa,SAAS,YAAY,IAAI,CAAC;AAAA,YAClF,GAAI,SAAS,iBAAiB,SAAY,EAAE,cAAc,SAAS,aAAa,IAAI,CAAC;AAAA,UACvF,CAAU;AAAA,QACZ;AACA,mCAA2B,eAAe,SAAS,SAAS;AAM5D,YAAI,SAAS,aAAa,cAAc;AACtC,yBAAe,SAAS;AACxB,cAAI,SAAS,UAAU;AACrB,iBAAK,MAAM,IAAI,KAAK,UAAU,IAAI,SAAS;AAC3C,sBAAU,EAAE,MAAM,iBAAiB,SAAS,EAAE,UAAU,SAAS,SAAS,EAAE,CAAC;AAAA,UAC/E;AAAA,QACF;AAEA,cAAM,WAAW,KAAK,MAAM,IAAI,SAAS;AACzC,cAAM,YAAY,KAAK,UAAU,SAAS,UAAU,QAAQ,KAAK,IAAI;AACrE,YAAI,cAAc,cAAe;AACjC,wBAAgB;AAChB,YAAI;AACF,gBAAM,SAAS,SAAS,UAAU,QAAQ,KAAK;AAAA,YAC7C,MAAM;AAAA,YACN,GAAI,SAAS,WAAW,SAAY,EAAE,QAAQ,SAAS,OAAO,IAAI,CAAC;AAAA,YACnE,GAAI,SAAS,YAAY,SAAY,EAAE,SAAS,SAAS,QAAQ,IAAI,CAAC;AAAA,UACxE;AACA,gBAAM,SAAS,KAAK,MAAM,IAAI,SAAS,cAAc;AACrD,gBAAM,OAAO,uBAAuB,UAAU,EAAE,GAAG,QAAQ,MAAM,SAAS,CAAC;AAG3E,cAAI,UAAU,QAAQ,KAAK,aAAc,MAAK,aAAa,aAAa;AACxE,eAAK,MAAM,IAAI,WAAW;AAC1B,kBAAQ,IAAI,2DAA2D,QAAQ,GAAG;AAAA,QACpF,SAAS,KAAK;AACZ,kBAAQ;AAAA,YACN,4CAA4C,QAAQ,KAAK,eAAe,GAAG,CAAC;AAAA,UAC9E;AAAA,QACF;AAAA,MACF;AAAA,MACA;AAAA,QACE,MAAM,CAAC,MACL,QAAQ;AAAA,UACN,KAAK,UAAU;AAAA,YACb,OAAO;AAAA,YACP,OAAO;AAAA,YACP,SAAS;AAAA,YACT,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,UACpC,CAAC;AAAA,QACH;AAAA,MACJ;AAAA,IACF;AACA,6BAAyB,QAAQ;AAAA,EACnC;AAEA,QAAM,WAAgC;AAAA,IACpC,eAAe,KAAK;AAAA,IACpB,cAAc,KAAK;AAAA,IACnB,aAAa,KAAK;AAAA;AAAA;AAAA,IAGlB,gBAAgB,MACd,KAAK,UACJ,KAAK,MAAM,UAAU,IAAI,OAAO,YAAY,IACzC,KAAK,MAAM,UAAU,QAAQ,OAAO,YAAY,IAChD;AAAA,IACN,cAAc;AAAA,IACd;AAAA,EACF;AAEA,QAAM,2BAA2B,KAAK,MAAM,WAAW,cAAc,OAAO,WAAW;AACvF,QAAM,mBAA8C;AAAA,IAClD,OAAO,KAAK;AAAA,IACZ,gBAAgB,KAAK;AAAA,IACrB,aAAa;AAAA,IACb,WAAW,MAAM;AACf,YAAM,MAAM,0BAA0B,IAAI,KAAK,KAAK;AACpD,UAAI,CAAC;AACH,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AACF,aAAO;AAAA,IACT;AAAA,IACA,gBAAgB,MACd,KAAK,eAAgB,KAAK,MAAM,IAAiC,eAAe;AAAA,IAClF,cAAc;AAAA,IACd,qBAAqB,MAAM;AAAA,IAC3B,WAAW,MAAM,KAAK,UAAU;AAAA,IAChC;AAAA,EACF;AAMA,QAAM,oBACJ,KAAK,eAAgB,KAAK,MAAM,IAAiC,eAAe;AAClF,QAAM,cAAc,oBAChBA,oBAAmB;AAAA,IACjB,aAAa;AAAA,IACb;AAAA,EACF,CAAC,IACD;AACJ,QAAM,YAA2B;AAAA,IAC/B,aAAa,KAAK;AAAA,IAClB,gBAAgB,KAAK,cACjB,IAAI,eAAe;AAAA,MACjB,cAAmB,WAAK,aAAa,aAAa,YAAY,uBAAuB;AAAA,MACrF,kBACE,aAAa,mBAAwB,WAAK,mBAAmB,eAAe,QAAQ;AAAA,MACtF,iBAAiB,aAAa,gBAAqB,WAAK,YAAY,QAAQ;AAAA,MAC5E,aAAa,aAAa,eAAe;AAAA,MACzC,aAAa,KAAK;AAAA,IACpB,CAAC,IACD;AAAA,IACJ,aAAa;AAAA,IACb,kBAAkB,aAAa;AAAA,IAC/B,iBAAiB,aAAa;AAAA,EAChC;AAIA,QAAM,aAA6B;AAAA,IACjC,cAAc,KAAK;AAAA,IACnB,aAAa,IAAI;AAAA,MACf,aAAa,eAAoB,WAAK,YAAY,mBAAmB;AAAA,IACvE;AAAA,EACF;AAIA,QAAM,YAA2B;AAAA,IAC/B,aAAa;AAAA,IACb,WAAW,KAAK,MAAM;AAAA,EACxB;AAEA,QAAM,iBAA6C;AAAA,IACjD,OAAO,KAAK;AAAA,IACZ,WAAW,KAAK;AAAA,IAChB,oBAAoB,MAAM,mBAAmB,iBAAiB;AAAA,IAC9D,mBAAmB,CAAC,cAAc,yBAAyB,SAAS;AAAA,IACpE,gBAAgB,KAAK;AAAA,IACrB,aAAa,KAAK;AAAA,IAClB,WAAW,MAAM,KAAK;AAAA,IACtB,sBAAsB,KAAK;AAAA,IAC3B;AAAA,IACA;AAAA,IACA;AAAA,IACA,KAAK,CAAC,MAAM,QAAQ,IAAI,CAAC;AAAA,EAC3B;AAEA,QAAM,WAAgC;AAAA,IACpC,MAAM,KAAK,MAAM,IAAI;AAAA,IACrB,UAAU;AAAA,IACV,SAAS;AAAA,IACT,SAAS,KAAK;AAAA,IACd,aAAa,KAAK;AAAA,IAClB;AAAA,IACA,aAAa,KAAK,MAAM,WAAW,cAAc,OAAO,WAAW;AAAA,IACnE;AAAA,IACA;AAAA,EACF;AAIA,QAAM,cAAsC;AAAA,IAC1C;AAAA,IACA;AAAA,IACA,gBAAgB,MAAM;AACpB,UAAI,iBAAiB;AACnB,wBAAgB,MAAM;AACtB,0BAAkB;AAAA,MACpB;AAAA,IACF;AAAA,IACA,mBAAmB,CAAC,cAAc,yBAAyB,SAAS;AAAA,IACpE;AAAA,IACA;AAAA,IACA,KAAK,CAAC,MAAM,QAAQ,IAAI,CAAC;AAAA,EAC3B;AAEA,QAAM,gBAAgB,2BAA2B;AAAA,IAC/C,gBAAgB,MACd,KAAK,eACJ,KAAK,MAAM,IAA6C,eACzD;AAAA,IACF,eAAe,MAAO,KAAK,mBAAwB,cAAQ,KAAK,gBAAgB,IAAI;AAAA,IACpF,QAAQ,KAAK;AAAA,EACf,CAAC;AAID,QAAM,cAAsC;AAAA,IAC1C;AAAA,IACA,mBAAmB,CAAC,cAAc,yBAAyB,SAAS;AAAA,IACpE;AAAA,IACA;AAAA,IACA;AAAA,IACA,KAAK,CAAC,MAAM,QAAQ,IAAI,CAAC;AAAA,EAC3B;AAKA,QAAM,gBAA6C;AAAA,IACjD,OAAO,KAAK;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,KAAK,CAAC,MAAM,QAAQ,IAAI,CAAC;AAAA,EAC3B;AAGA,QAAM,mBAAmB,0BAA0B;AAAA,IACjD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAI,mBAAmB,EAAE,iBAAiB,IAAI,CAAC;AAAA,IAC/C,GAAI,kBAAkB,EAAE,gBAAgB,IAAI,CAAC;AAAA,EAC/C,CAAC;AACD,MAAI;AACJ,QAAM,WAAW,MAAY,iBAAiB;AAC9C,QAAM,gBAAgB,4BAA4B;AAAA,IAChD;AAAA,IACA;AAAA,IACA,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA,YAAY;AAAA,IACZ,iBAAiB;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe,KAAK;AAAA,EACtB,CAAC;AAED,QAAM,kBAAkB,4BAA4B;AACpD,QAAM,UAAU,IAAI,QAAc,CAAC,YAAY;AAC7C,QAAI,qBAAqB;AACzB,UAAM,oBAAoB,MAAM;AAC9B,UAAI,mBAAoB;AACxB,2BAAqB;AACrB,cAAQ,IAAI,4CAA4C,IAAI,IAAI,QAAQ,EAAE;AAC1E,UAAI;AACF,oBAAY;AACZ,aAAK,cAAc,EAAE,UAAU,QAAQ,MAAM,KAAK,UAAU,CAAC;AAAA,MAC/D,SAAS,KAAK;AACZ,sBAAc,MAAM,uBAAuB,EAAE,SAAS,eAAe,GAAG,EAAE,CAAC;AAAA,MAC7E;AAAA,IACF;AACA,QAAI,GAAG,aAAa,iBAAiB;AAIrC,QAAI,YAAY,OAAO,aAAa,IAAI,QAAQ,EAAG,gBAAe,iBAAiB;AAMnF,QAAI;AAAA,MACF;AAAA,MACA,wBAAwB;AAAA,QACtB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,YAAY,YAAY;AACtB,gBAAM,gBAAgB,KAAK,MAAM,IAAI,WAAW,KAAK;AACrD,gBAAM,cAAc,MAAM,EAAE,MAAM,MAAM,MAAS;AACjD,cAAI,KAAK,cAAc;AACrB,kBAAM,OAAO,MAAM,KAAK,aAAa,KAAK,cAAc,EAAE;AAE1D,mBAAO,EAAE,UAAU,KAAK,UAAU,QAAQ,KAAK,QAAQ,OAAO,KAAK,MAAM;AAAA,UAC3E;AACA,gBAAM,QAAQ,KAAK,MAAM,IAAI,aAAa,MAAM;AAChD,iBAAO,EAAE,UAAU,KAAK,MAAM,IAAI,UAAU,MAAM;AAAA,QACpD;AAAA;AAAA;AAAA;AAAA,QAIA,mBAAmB,YAAa,MAAM,KAAK,kBAAkB,qBAAqB,KAAM,CAAC;AAAA,QACzF,YAAY,KAAK,cAAc;AAAA,MACjC,CAAC;AAAA,IACH;AAEA,QAAI,GAAG,SAAS,CAAC,QAAQ;AACvB,cAAQ;AAAA,QACN,KAAK,UAAU;AAAA,UACb,OAAO;AAAA,UACP,OAAO;AAAA,UACP,SAAS,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG;AAAA,UACxD,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,QACpC,CAAC;AAAA,MACH;AAAA,IACF,CAAC;AAUD,qBAAiB,oBAAoB;AAAA,MACnC,eAAe,MAAM;AAGnB,YAAI,iBAAiB;AACnB,0BAAgB,MAAM;AACtB,4BAAkB;AAAA,QACpB;AACA,mBAAW,KAAK,iBAAiB,OAAO,EAAG,GAAE,MAAM;AACnD,yBAAiB,MAAM;AAAA,MACzB;AAAA,MACA,mBAAmB,MAAM;AACvB,8BAAsB;AACtB,mBAAW,SAAS,mBAAoB,OAAM;AAAA,MAChD;AAAA,MACA,kBAAkB,MAAM;AACtB,iCAAyB;AACzB,iCAAyB;AACzB,oBAAY,QAAQ;AACpB,wBAAgB,QAAQ;AACxB,wBAAgB,QAAQ;AACxB,wBAAgB,QAAQ;AACxB,yBAAiB,QAAQ;AACzB,0BAAkB,QAAQ;AAC1B,aAAK,kCAAkC;AACvC,8BAAsB;AAAA,MACxB;AAAA,MACA,cAAc,MAAM;AAClB,mBAAW,CAAC,EAAE,KAAK,QAAS,IAAG,MAAM;AACrC,gBAAQ,MAAM;AAAA,MAChB;AAAA,MACA,iBAAiB,MAAM;AACrB,4BAAoB,MAAM;AAC1B,oBAAY,OAAO,MAAM;AAAA,MAC3B;AAAA,MACA;AAAA,MACA,KAAK,QAAQ;AAAA,MACb;AAAA,MACA,WAAW,MAAM;AACf,wBAAgB,OAAO;AACvB,wBAAgB,KAAK;AACrB,aAAK,SAAS;AACd,gBAAQ;AAAA,MACV;AAAA,IACF,CAAC;AAED,gCAA4B,cAAc;AAAA,EAC5C,CAAC;AAED,WAAS,KAAK,IAAe,KAA4B;AACvD,QAAI,GAAG,eAAe,UAAU,MAAM;AACpC,SAAG,KAAK,KAAK,UAAU,GAAG,CAAC;AAAA,IAC7B;AAAA,EACF;AAEA,WAAS,UAAU,KAA4B;AAC7C,UAAM,OAAO,KAAK,UAAU,GAAG;AAC/B,eAAW,CAAC,EAAE,KAAK,SAAS;AAC1B,UAAI,GAAG,eAAe,UAAU,MAAM;AACpC,YAAI;AACF,aAAG,KAAK,IAAI;AAAA,QACd,QAAQ;AAAA,QAGR;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAIA,WAAS,WAAW,IAAe,SAAkB,SAAuB;AAC1E,SAAK,IAAI,EAAE,MAAM,wBAAwB,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;AAAA,EAC1E;AAEA,SAAO,QAAQ,QAAQ,MAAM,gBAAgB,KAAK,CAAC;AACrD;",
|
|
6
|
-
"names": ["path", "resolveWstackPaths", "path", "path", "DefaultSecretVault", "DefaultSecretVault", "path", "resolveWstackPaths"]
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webui-server-options.d.ts","sourceRoot":"","sources":["../src/webui-server-options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webui-server.d.ts","sourceRoot":"","sources":["../src/webui-server.ts"],"names":[],"mappings":"AA+DA,OAAO,KAAK,EACV,eAAe,IAAI,uBAAuB,EAC1C,eAAe,IAAI,uBAAuB,EAC3C,MAAM,6BAA6B,CAAC;AACrC,MAAM,MAAM,eAAe,GAAG,uBAAuB,CAAC;AACtD,MAAM,MAAM,eAAe,GAAG,uBAAuB,CAAC;AA8BtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE,YAAY,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,wBAAsB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAk6BnE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brain-and-orchestration.d.ts","sourceRoot":"","sources":["../../src/wiring/brain-and-orchestration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codebase-index.d.ts","sourceRoot":"","sources":["../../src/wiring/codebase-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAA2B,MAAM,wBAAwB,CAAC;AAC/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAarE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,cAAc,GAAG,SAAS,CAAA;KAAE,CAAC;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,cAAc,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAmF3F"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"command-host-adapters.d.ts","sourceRoot":"","sources":["../../src/wiring/command-host-adapters.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,KAAK,gBAAgB,GAAG,uBAAuB,CAAC;AAEhD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,YAAY,CAAC;IAC3B,mBAAmB,EAAE;QACnB,YAAY,CAAC,EACT,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,GACpE,SAAS,CAAC;KACf,CAAC;IACF,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,IAAI,CAAC,gBAAgB,EAAE,aAAa,GAAG,SAAS,CAAC,CA4CpD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"command-host-state.d.ts","sourceRoot":"","sources":["../../src/wiring/command-host-state.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,OAAO,EAAc,KAAK,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAgBvD,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,WAAW,EAAE,MAAM,QAAQ,GAAG,IAAI,CAAC;IACnC,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,QAAQ,CAAC;IACjB,UAAU,EAAE;QAAE,OAAO,EAAE,aAAa,GAAG,SAAS,CAAA;KAAE,CAAC;IACnD,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,WAAW,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,YAAY,GAAG,SAAS,CAAC;IAChC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,gBAAgB,EAAE;QAAE,OAAO,CAAC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;QAAC,OAAO,CAAC,IAAI,OAAO,CAAA;KAAE,CAAC;CAC7E;AAED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,qBAAqB;;;;;;;;;;;iBAwBxC,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAYnC,OAAO,KAAG,OAAO;;6BASzB,MAAM;2BACR,MAAM;;;GA8B5B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"controllers.d.ts","sourceRoot":"","sources":["../../src/wiring/controllers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAML,KAAK,gBAAgB,EACtB,MAAM,kCAAkC,CAAC;AAI1C,MAAM,WAAW,qBAAqB;IACpC,oEAAoE;IACpE,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACzC;AAED,wBAAgB,2BAA2B,CAAC,WAAW,GAAE,kBAA0B,GAAG,qBAAqB,CAO1G;AAID,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,OAAO,CAAC;IAC3B,uEAAuE;IACvE,YAAY,CAAC,EACT,CAAC,CAAC,IAAI,EAAE;QAAE,YAAY,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,GAC9E,SAAS,CAAC;IACd,0EAA0E;IAC1E,YAAY,CAAC,EACT,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,GACpE,SAAS,CAAC;IACd,oEAAoE;IACpE,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,yEAAyE;IACzE,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAED,wBAAgB,yBAAyB,IAAI,mBAAmB,CAM/D;AAID,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAQzE;AAID,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;CACpC;AAED,wBAAgB,6BAA6B,IAAI,uBAAuB,CAOvE;AAID,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrC,GAAG,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAKjE;AAED;;;GAGG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC;IACzD,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,cAAc,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,IAAI,CAAC;IACvD,eAAe,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE,CAAC,CAkBD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dep-watcher-bridge.d.ts","sourceRoot":"","sources":["../../src/wiring/dep-watcher-bridge.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAMxD,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IACjD,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE;QAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAAC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAC;IACrE,gBAAgB,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,2BAA2B;IAC1C,8EAA8E;IAC9E,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;CAC5C;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,yBAAyB,GAC9B,2BAA2B,CAiC7B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dep-watcher.d.ts","sourceRoot":"","sources":["../../src/wiring/dep-watcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAMxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,QAAQ,CAAC;IACjB,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,gBAAgB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,4BAA4B,GAAG,IAAI,CAqFjF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"design-studio.d.ts","sourceRoot":"","sources":["../../src/wiring/design-studio.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGtE,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,uBAAuB,GAAG,IAAI,CAMvE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"director-setup.d.ts","sourceRoot":"","sources":["../../src/wiring/director-setup.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAE/F,OAAO,EAAE,KAAK,mBAAmB,EAA6B,MAAM,+BAA+B,CAAC;AAEpG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAM1D;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,8BAA8B,EAAE,YAAY,CAAC;CAC9D;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,QAAQ,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,YAAY,EAAE,OAAO,8BAA8B,EAAE,YAAY,CAAC;IAClE,kBAAkB,EAAE,OAAO,CAAC;IAC5B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,aAAa,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC5C,cAAc,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC7C,gBAAgB,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,uBAAuB,EAAE,YAAY,KAAK,IAAI,CAAC,CAAC;IACrF,yBAAyB,EAAE,CAAC,KAAK,EAAE,OAAO,uBAAuB,EAAE,YAAY,KAAK,IAAI,CAAC;IACzF,cAAc,EAAE,GAAG,CAAC,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC,CAAC;IACpD,sBAAsB,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACvD,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,mBAAmB,CAAC;CACnC;AAMD;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,oBAAoB,GAAG,sBAAsB,CAkH3F"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"eternal-command-handlers.d.ts","sourceRoot":"","sources":["../../src/wiring/eternal-command-handlers.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC1F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,KAAK,gBAAgB,GAAG,uBAAuB,CAAC;AAEhD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IAClD,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,mBAAmB,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,WAAW,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,OAAO,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IACxC,cAAc,EAAE,cAAc,CAAC;IAC/B,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE,qBAAqB,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACzE,KAAK,EAAE,YAAY,GAAG,SAAS,CAAC;IAChC,eAAe,EAAE,MAAM,YAAY,CAAC;IACpC,eAAe,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9C,eAAe,EAAE;QAAE,OAAO,EAAE,YAAY,CAAA;KAAE,CAAC;IAC3C,gBAAgB,EAAE,MAAM,qBAAqB,GAAG,IAAI,CAAC;IACrD,gBAAgB,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC1D,iBAAiB,EAAE,MAAM,qBAAqB,GAAG,IAAI,CAAC;IACtD,iBAAiB,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;CAC5D,GAAG,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,gBAAgB,GAAG,eAAe,CAAC,CAyD5E"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fleet-command-handlers.d.ts","sourceRoot":"","sources":["../../src/wiring/fleet-command-handlers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAGnE,KAAK,gBAAgB,GAAG,uBAAuB,CAAC;AAChD,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,gBAAgB,EACd,SAAS,GACT,gBAAgB,GAChB,UAAU,GACV,SAAS,GACT,eAAe,GACf,cAAc,GACd,aAAa,GACb,kBAAkB,GAClB,cAAc,GACd,YAAY,GACZ,cAAc,GACd,YAAY,CACf,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,MAAM,QAAQ,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,QAAQ,CAAC;IACjB,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,yBAAyB,GAC/B,oBAAoB,CA+EtB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hq-telemetry.d.ts","sourceRoot":"","sources":["../../src/wiring/hq-telemetry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACxF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AASvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IACjC,kBAAkB,CAAC,EAAE,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;CACxE;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,QAAQ,CAAC;IACjB,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACxC,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,GAAG,GAAG,SAAS,CAAC;IACzB,YAAY,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAC9C,YAAY,EAAE,aAAa,CAAC;IAC5B,gBAAgB,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;IACjC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACjD,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,mBAAmB,CAAC,CAAC;CACrE;AAED,MAAM,WAAW,iBAAiB;IAChC,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,WAAW,EAAE,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC;CAC3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,oBAAoB,GAAG,iBAAiB,CAoM9E"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-plugins.d.ts","sourceRoot":"","sources":["../../src/wiring/lifecycle-plugins.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mailbox-bridge-bootstrap.d.ts","sourceRoot":"","sources":["../../src/wiring/mailbox-bridge-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,gCAAgC,CAAC;AAExC,oDAAoD;AACpD,eAAO,MAAM,uBAAuB,kBAAkB,CAAC;AAEvD;;;;;;;;;GASG;AACH,wBAAsB,+BAA+B,CAAC,MAAM,EAAE;IAC5D,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,SAAS,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAAC;IACpC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,GAAG,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,SAAS,CAAC;CACrD,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CA+DtC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACxC,mBAAmB,GAAG,IAAI,CAM5B"}
|