@ashlr/hub 3.22.0 → 3.22.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/CHANGELOG.md +27 -0
- package/README.md +5 -5
- package/dist/authority-surface.json +16 -11
- package/dist/build-identity.json +2 -2
- package/dist/cli/verify-safety-sources.d.ts +4 -0
- package/dist/cli/verify-safety-sources.js +41 -0
- package/dist/cli/verify-safety-sources.js.map +1 -0
- package/dist/cli/verify-safety.js +16 -1
- package/dist/cli/verify-safety.js.map +1 -1
- package/dist/core/decide/needs-you.d.ts +3 -1
- package/dist/core/decide/needs-you.js +52 -28
- package/dist/core/decide/needs-you.js.map +1 -1
- package/dist/core/fleet/fleet-control-model.d.ts +2 -1
- package/dist/core/fleet/fleet-control-model.js +5 -0
- package/dist/core/fleet/fleet-control-model.js.map +1 -1
- package/dist/core/fleet/fleet-control-types.d.ts +11 -1
- package/dist/core/fleet/fleet-control.d.ts +4 -0
- package/dist/core/fleet/fleet-control.js +23 -1
- package/dist/core/fleet/fleet-control.js.map +1 -1
- package/dist/core/fleet/quota.js +1 -1
- package/dist/core/fleet/quota.js.map +1 -1
- package/dist/core/universe/builtins/preparation/manifest.json +1 -1
- package/dist/core/universe/builtins/preparation/preparation-bridge.mjs +4 -2
- package/dist/core/universe/builtins/preparation/preparation-verification-fixtures.mjs +3 -1
- package/dist/core/web/public/next/assets/ActionMenu-Z14OhnFI.js +2 -0
- package/dist/core/web/public/next/assets/ActionMenu-Z14OhnFI.js.map +1 -0
- package/dist/core/web/public/next/assets/Advanced-fUyq-fpH.js +2 -0
- package/dist/core/web/public/next/assets/Advanced-fUyq-fpH.js.map +1 -0
- package/dist/core/web/public/next/assets/AgentDetailScreen-C8h--Nah.js +2 -0
- package/dist/core/web/public/next/assets/AgentDetailScreen-C8h--Nah.js.map +1 -0
- package/dist/core/web/public/next/assets/AgentToolsSheet-BP3h-UbZ.js +2 -0
- package/dist/core/web/public/next/assets/AgentToolsSheet-BP3h-UbZ.js.map +1 -0
- package/dist/core/web/public/next/assets/AgentToolsStrip--hf18knJ.js +2 -0
- package/dist/core/web/public/next/assets/AgentToolsStrip--hf18knJ.js.map +1 -0
- package/dist/core/web/public/next/assets/AgentsScreen-BR-j0Fzd.js +2 -0
- package/dist/core/web/public/next/assets/AgentsScreen-BR-j0Fzd.js.map +1 -0
- package/dist/core/web/public/next/assets/AgentsSection-OKKOuYed.js +3 -0
- package/dist/core/web/public/next/assets/AgentsSection-OKKOuYed.js.map +1 -0
- package/dist/core/web/public/next/assets/App-ttVrZYp5.js +8 -0
- package/dist/core/web/public/next/assets/App-ttVrZYp5.js.map +1 -0
- package/dist/core/web/public/next/assets/AppsSection-sqsXqENO.js +2 -0
- package/dist/core/web/public/next/assets/AppsSection-sqsXqENO.js.map +1 -0
- package/dist/core/web/public/next/assets/AreaTrend-LVgaB49b.js +2 -0
- package/dist/core/web/public/next/assets/AreaTrend-LVgaB49b.js.map +1 -0
- package/dist/core/web/public/next/assets/AutomationsSection-BITmxjuB.js +2 -0
- package/dist/core/web/public/next/assets/AutomationsSection-BITmxjuB.js.map +1 -0
- package/dist/core/web/public/next/assets/AutonomyOffState-nO9lIcCv.js +3 -0
- package/dist/core/web/public/next/assets/AutonomyOffState-nO9lIcCv.js.map +1 -0
- package/dist/core/web/public/next/assets/AutonomySection-DWYUPDP6.js +2 -0
- package/dist/core/web/public/next/assets/AutonomySection-DWYUPDP6.js.map +1 -0
- package/dist/core/web/public/next/assets/AutonomyStatus-C4Yp1JTY.js +2 -0
- package/dist/core/web/public/next/assets/AutonomyStatus-C4Yp1JTY.js.map +1 -0
- package/dist/core/web/public/next/assets/BranchBar-CkiZSNqB.js +2 -0
- package/dist/core/web/public/next/assets/BranchBar-CkiZSNqB.js.map +1 -0
- package/dist/core/web/public/next/assets/BrowserPanel-CECVGJBS.js +7 -0
- package/dist/core/web/public/next/assets/BrowserPanel-CECVGJBS.js.map +1 -0
- package/dist/core/web/public/next/assets/BudgetControl-De1TPzvX.js +2 -0
- package/dist/core/web/public/next/assets/BudgetControl-De1TPzvX.js.map +1 -0
- package/dist/core/web/public/next/assets/Button-CstSJwha.js +2 -0
- package/dist/core/web/public/next/assets/Button-CstSJwha.js.map +1 -0
- package/dist/core/web/public/next/assets/CapacityStrip-nIJcB_lA.js +2 -0
- package/dist/core/web/public/next/assets/CapacityStrip-nIJcB_lA.js.map +1 -0
- package/dist/core/web/public/next/assets/ChangesPaneHost-Bnj_NcRa.js +16 -0
- package/dist/core/web/public/next/assets/ChangesPaneHost-Bnj_NcRa.js.map +1 -0
- package/dist/core/web/public/next/assets/ChartFrame-Dljee9y6.js +2 -0
- package/dist/core/web/public/next/assets/ChartFrame-Dljee9y6.js.map +1 -0
- package/dist/core/web/public/next/assets/ChatPanes-x_ySUIyR.js +2 -0
- package/dist/core/web/public/next/assets/ChatPanes-x_ySUIyR.js.map +1 -0
- package/dist/core/web/public/next/assets/ChatSection-CXJa8QOi.js +3 -0
- package/dist/core/web/public/next/assets/ChatSection-CXJa8QOi.js.map +1 -0
- package/dist/core/web/public/next/assets/ChecksPanel-D9r8koxq.js +5 -0
- package/dist/core/web/public/next/assets/ChecksPanel-D9r8koxq.js.map +1 -0
- package/dist/core/web/public/next/assets/CloudBudgetForm-D5ajpoMe.js +2 -0
- package/dist/core/web/public/next/assets/CloudBudgetForm-D5ajpoMe.js.map +1 -0
- package/dist/core/web/public/next/assets/CommandPalette-ONyqYZzt.js +3 -0
- package/dist/core/web/public/next/assets/CommandPalette-ONyqYZzt.js.map +1 -0
- package/dist/core/web/public/next/assets/CommandSection-DxNIibnI.js +3 -0
- package/dist/core/web/public/next/assets/CommandSection-DxNIibnI.js.map +1 -0
- package/dist/core/web/public/next/assets/CommandWorkflowForm-Bz3PuZXH.js +9 -0
- package/dist/core/web/public/next/assets/CommandWorkflowForm-Bz3PuZXH.js.map +1 -0
- package/dist/core/web/public/next/assets/CommandWorkflowPicker-COVyeer0.js +3 -0
- package/dist/core/web/public/next/assets/CommandWorkflowPicker-COVyeer0.js.map +1 -0
- package/dist/core/web/public/next/assets/CompareDialog-PVqv0Tx9.js +4 -0
- package/dist/core/web/public/next/assets/CompareDialog-PVqv0Tx9.js.map +1 -0
- package/dist/core/web/public/next/assets/ComputerControl-DkSIUrYm.js +2 -0
- package/dist/core/web/public/next/assets/ComputerControl-DkSIUrYm.js.map +1 -0
- package/dist/core/web/public/next/assets/ConfirmDialog-CdCzzk0I.js +2 -0
- package/dist/core/web/public/next/assets/ConfirmDialog-CdCzzk0I.js.map +1 -0
- package/dist/core/web/public/next/assets/DeleteChatDialog-BTzOgqho.js +2 -0
- package/dist/core/web/public/next/assets/DeleteChatDialog-BTzOgqho.js.map +1 -0
- package/dist/core/web/public/next/assets/DevinStopDialog-CGsDqfan.js +2 -0
- package/dist/core/web/public/next/assets/DevinStopDialog-CGsDqfan.js.map +1 -0
- package/dist/core/web/public/next/assets/Dialog-DDHg9cuT.js +2 -0
- package/dist/core/web/public/next/assets/Dialog-DDHg9cuT.js.map +1 -0
- package/dist/core/web/public/next/assets/DiffPane-BR3HU7pC.js +2 -0
- package/dist/core/web/public/next/assets/DiffPane-BR3HU7pC.js.map +1 -0
- package/dist/core/web/public/next/assets/DiffViewer-hJK75qko.js +2 -0
- package/dist/core/web/public/next/assets/DiffViewer-hJK75qko.js.map +1 -0
- package/dist/core/web/public/next/assets/DockHost-DhOosHbo.js +2 -0
- package/dist/core/web/public/next/assets/DockHost-DhOosHbo.js.map +1 -0
- package/dist/core/web/public/next/assets/EmptyState-CGVr0VO2.js +2 -0
- package/dist/core/web/public/next/assets/EmptyState-CGVr0VO2.js.map +1 -0
- package/dist/core/web/public/next/assets/Epistemic-tp0ZNAKZ.js +2 -0
- package/dist/core/web/public/next/assets/Epistemic-tp0ZNAKZ.js.map +1 -0
- package/dist/core/web/public/next/assets/EvidenceTimeline-YmKIoxNx.js +2 -0
- package/dist/core/web/public/next/assets/EvidenceTimeline-YmKIoxNx.js.map +1 -0
- package/dist/core/web/public/next/assets/FilesPane-CoNjfkPP.js +2 -0
- package/dist/core/web/public/next/assets/FilesPane-CoNjfkPP.js.map +1 -0
- package/dist/core/web/public/next/assets/FleetScreen-CstwycnB.js +2 -0
- package/dist/core/web/public/next/assets/FleetScreen-CstwycnB.js.map +1 -0
- package/dist/core/web/public/next/assets/FleetSection-D0xk0s5J.js +5 -0
- package/dist/core/web/public/next/assets/FleetSection-D0xk0s5J.js.map +1 -0
- package/dist/core/web/public/next/assets/Funnel-UPrk7fcy.js +2 -0
- package/dist/core/web/public/next/assets/Funnel-UPrk7fcy.js.map +1 -0
- package/dist/core/web/public/next/assets/GearTray-BSjga1J_.js +2 -0
- package/dist/core/web/public/next/assets/GearTray-BSjga1J_.js.map +1 -0
- package/dist/core/web/public/next/assets/GitDialogs-ekwzxl76.js +2 -0
- package/dist/core/web/public/next/assets/GitDialogs-ekwzxl76.js.map +1 -0
- package/dist/core/web/public/next/assets/GrowthSection-Dh-gnkgc.js +3 -0
- package/dist/core/web/public/next/assets/GrowthSection-Dh-gnkgc.js.map +1 -0
- package/dist/core/web/public/next/assets/HandoffDialog-BDiyA3u-.js +2 -0
- package/dist/core/web/public/next/assets/HandoffDialog-BDiyA3u-.js.map +1 -0
- package/dist/core/web/public/next/assets/HomeBody-Ce3HBIEb.js +3 -0
- package/dist/core/web/public/next/assets/HomeBody-Ce3HBIEb.js.map +1 -0
- package/dist/core/web/public/next/assets/HomeSeats-BFLCWCFp.js +2 -0
- package/dist/core/web/public/next/assets/HomeSeats-BFLCWCFp.js.map +1 -0
- package/dist/core/web/public/next/assets/Input-Cpn9uYj2.js +2 -0
- package/dist/core/web/public/next/assets/Input-Cpn9uYj2.js.map +1 -0
- package/dist/core/web/public/next/assets/LaunchDialog-CrPEf652.js +9 -0
- package/dist/core/web/public/next/assets/LaunchDialog-CrPEf652.js.map +1 -0
- package/dist/core/web/public/next/assets/LeaderCard-Dhq-w_Mf.js +2 -0
- package/dist/core/web/public/next/assets/LeaderCard-Dhq-w_Mf.js.map +1 -0
- package/dist/core/web/public/next/assets/LeaderConversation-CiWqhsoa.js +3 -0
- package/dist/core/web/public/next/assets/LeaderConversation-CiWqhsoa.js.map +1 -0
- package/dist/core/web/public/next/assets/LeaderScreen-Z5KPjxBV.js +2 -0
- package/dist/core/web/public/next/assets/LeaderScreen-Z5KPjxBV.js.map +1 -0
- package/dist/core/web/public/next/assets/LessonsPanel-B6XVKAPE.js +2 -0
- package/dist/core/web/public/next/assets/LessonsPanel-B6XVKAPE.js.map +1 -0
- package/dist/core/web/public/next/assets/LiveTimer-B8t2iX5h.js +2 -0
- package/dist/core/web/public/next/assets/LiveTimer-B8t2iX5h.js.map +1 -0
- package/dist/core/web/public/next/assets/LocalSeatBadge-HMxIrMiL.js +2 -0
- package/dist/core/web/public/next/assets/LocalSeatBadge-HMxIrMiL.js.map +1 -0
- package/dist/core/web/public/next/assets/MatrixHeatmap-BlFI5oao.js +2 -0
- package/dist/core/web/public/next/assets/MatrixHeatmap-BlFI5oao.js.map +1 -0
- package/dist/core/web/public/next/assets/McpSection-snZNKexW.js +2 -0
- package/dist/core/web/public/next/assets/McpSection-snZNKexW.js.map +1 -0
- package/dist/core/web/public/next/assets/MessageMarkdown-CS0mAtSs.js +3 -0
- package/dist/core/web/public/next/assets/MessageMarkdown-CS0mAtSs.js.map +1 -0
- package/dist/core/web/public/next/assets/MessageMarkdownRenderer-D5R-zr-W.js +72 -0
- package/dist/core/web/public/next/assets/MessageMarkdownRenderer-D5R-zr-W.js.map +1 -0
- package/dist/core/web/public/next/assets/Meter-VXI75VNe.js +2 -0
- package/dist/core/web/public/next/assets/Meter-VXI75VNe.js.map +1 -0
- package/dist/core/web/public/next/assets/MicButton-DORAXsUU.js +2 -0
- package/dist/core/web/public/next/assets/MicButton-DORAXsUU.js.map +1 -0
- package/dist/core/web/public/next/assets/MindSection-DZLHz29Q.js +3 -0
- package/dist/core/web/public/next/assets/MindSection-DZLHz29Q.js.map +1 -0
- package/dist/core/web/public/next/assets/MobileComposer-B8nWsIJO.js +2 -0
- package/dist/core/web/public/next/assets/MobileComposer-B8nWsIJO.js.map +1 -0
- package/dist/core/web/public/next/assets/MobileGuardSheet-BRwOfD9o.js +2 -0
- package/dist/core/web/public/next/assets/MobileGuardSheet-BRwOfD9o.js.map +1 -0
- package/dist/core/web/public/next/assets/MobileRuntime-kMob_MjB.js +3 -0
- package/dist/core/web/public/next/assets/MobileRuntime-kMob_MjB.js.map +1 -0
- package/dist/core/web/public/next/assets/MoreScreen-92dC6Bj7.js +2 -0
- package/dist/core/web/public/next/assets/MoreScreen-92dC6Bj7.js.map +1 -0
- package/dist/core/web/public/next/assets/MultiModelBar-BhAUUQOq.js +7 -0
- package/dist/core/web/public/next/assets/MultiModelBar-BhAUUQOq.js.map +1 -0
- package/dist/core/web/public/next/assets/MutationTokenDialog-DlY2VLVh.js +2 -0
- package/dist/core/web/public/next/assets/MutationTokenDialog-DlY2VLVh.js.map +1 -0
- package/dist/core/web/public/next/assets/NeedsYouDrawer-BH0ffbht.js +3 -0
- package/dist/core/web/public/next/assets/NeedsYouDrawer-BH0ffbht.js.map +1 -0
- package/dist/core/web/public/next/assets/NeedsYouList-CI_Dy-hi.js +2 -0
- package/dist/core/web/public/next/assets/NeedsYouList-CI_Dy-hi.js.map +1 -0
- package/dist/core/web/public/next/assets/NeedsYouScreen-CvDiEphJ.js +2 -0
- package/dist/core/web/public/next/assets/NeedsYouScreen-CvDiEphJ.js.map +1 -0
- package/dist/core/web/public/next/assets/NewAgentScreen-BpTRKp9z.js +2 -0
- package/dist/core/web/public/next/assets/NewAgentScreen-BpTRKp9z.js.map +1 -0
- package/dist/core/web/public/next/assets/NewChatDialog-O1LwwBc4.js +4 -0
- package/dist/core/web/public/next/assets/NewChatDialog-O1LwwBc4.js.map +1 -0
- package/dist/core/web/public/next/assets/OnboardingFlow-uMNBVHvK.js +3 -0
- package/dist/core/web/public/next/assets/OnboardingFlow-uMNBVHvK.js.map +1 -0
- package/dist/core/web/public/next/assets/OnboardingGate-sdzxSPZF.js +3 -0
- package/dist/core/web/public/next/assets/OnboardingGate-sdzxSPZF.js.map +1 -0
- package/dist/core/web/public/next/assets/PlaybooksSection-CnWfwZv8.js +9 -0
- package/dist/core/web/public/next/assets/PlaybooksSection-CnWfwZv8.js.map +1 -0
- package/dist/core/web/public/next/assets/PreviewPane-D1WaefIG.js +2 -0
- package/dist/core/web/public/next/assets/PreviewPane-D1WaefIG.js.map +1 -0
- package/dist/core/web/public/next/assets/ProviderLogo-g2YWCmNY.js +2 -0
- package/dist/core/web/public/next/assets/ProviderLogo-g2YWCmNY.js.map +1 -0
- package/dist/core/web/public/next/assets/RailStatus-OrvAuyzs.js +2 -0
- package/dist/core/web/public/next/assets/RailStatus-OrvAuyzs.js.map +1 -0
- package/dist/core/web/public/next/assets/ReasoningPane-BARDPl4-.js +2 -0
- package/dist/core/web/public/next/assets/ReasoningPane-BARDPl4-.js.map +1 -0
- package/dist/core/web/public/next/assets/ReasoningSheet-rPTXyt-b.js +2 -0
- package/dist/core/web/public/next/assets/ReasoningSheet-rPTXyt-b.js.map +1 -0
- package/dist/core/web/public/next/assets/RefreshIndicator-D96C9qiH.js +2 -0
- package/dist/core/web/public/next/assets/RefreshIndicator-D96C9qiH.js.map +1 -0
- package/dist/core/web/public/next/assets/RemoteMobileApp-DfDjiBTR.js +2 -0
- package/dist/core/web/public/next/assets/RemoteMobileApp-DfDjiBTR.js.map +1 -0
- package/dist/core/web/public/next/assets/ResourcePoolConsoleApp-CcfULh_p.js +7 -0
- package/dist/core/web/public/next/assets/ResourcePoolConsoleApp-CcfULh_p.js.map +1 -0
- package/dist/core/web/public/next/assets/ResourcesChrome-DuEa7WOo.css +1 -0
- package/dist/core/web/public/next/assets/ResourcesChrome-e9ifgnWf.js +3 -0
- package/dist/core/web/public/next/assets/ResourcesChrome-e9ifgnWf.js.map +1 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-DOv_mxpe.js +3 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-DOv_mxpe.js.map +1 -0
- package/dist/core/web/public/next/assets/ReviewMenu-Ba3saQlX.js +2 -0
- package/dist/core/web/public/next/assets/ReviewMenu-Ba3saQlX.js.map +1 -0
- package/dist/core/web/public/next/assets/RouteErrorBoundary-BaJ1ZePy.js +2 -0
- package/dist/core/web/public/next/assets/RouteErrorBoundary-BaJ1ZePy.js.map +1 -0
- package/dist/core/web/public/next/assets/RunInCloudAction-DRSX84Jy.js +2 -0
- package/dist/core/web/public/next/assets/RunInCloudAction-DRSX84Jy.js.map +1 -0
- package/dist/core/web/public/next/assets/RunInDevinAction-BMji-YN2.js +2 -0
- package/dist/core/web/public/next/assets/RunInDevinAction-BMji-YN2.js.map +1 -0
- package/dist/core/web/public/next/assets/SchedulingEvidence-xxjV6HF_.js +2 -0
- package/dist/core/web/public/next/assets/SchedulingEvidence-xxjV6HF_.js.map +1 -0
- package/dist/core/web/public/next/assets/ScreenHost-Dv6z76Ta.js +3 -0
- package/dist/core/web/public/next/assets/ScreenHost-Dv6z76Ta.js.map +1 -0
- package/dist/core/web/public/next/assets/SeatSelector-YRNdNpP8.js +3 -0
- package/dist/core/web/public/next/assets/SeatSelector-YRNdNpP8.js.map +1 -0
- package/dist/core/web/public/next/assets/Segmented-BA8RmKYq.js +2 -0
- package/dist/core/web/public/next/assets/Segmented-BA8RmKYq.js.map +1 -0
- package/dist/core/web/public/next/assets/Select-B8GqZOX9.js +2 -0
- package/dist/core/web/public/next/assets/Select-B8GqZOX9.js.map +1 -0
- package/dist/core/web/public/next/assets/SessionGate-CnASHl7g.js +2 -0
- package/dist/core/web/public/next/assets/SessionGate-CnASHl7g.js.map +1 -0
- package/dist/core/web/public/next/assets/SessionInsightChip-DIKfih6i.js +2 -0
- package/dist/core/web/public/next/assets/SessionInsightChip-DIKfih6i.js.map +1 -0
- package/dist/core/web/public/next/assets/SessionSearch-K6lvMlji.js +2 -0
- package/dist/core/web/public/next/assets/SessionSearch-K6lvMlji.js.map +1 -0
- package/dist/core/web/public/next/assets/SettingsSection-C-c3f_6J.js +2 -0
- package/dist/core/web/public/next/assets/SettingsSection-C-c3f_6J.js.map +1 -0
- package/dist/core/web/public/next/assets/SetupChecklist-DAbAdrX4.js +2 -0
- package/dist/core/web/public/next/assets/SetupChecklist-DAbAdrX4.js.map +1 -0
- package/dist/core/web/public/next/assets/ShadowDecisions-C41uRSw4.js +3 -0
- package/dist/core/web/public/next/assets/ShadowDecisions-C41uRSw4.js.map +1 -0
- package/dist/core/web/public/next/assets/Sheet-Bk64-Hlt.js +2 -0
- package/dist/core/web/public/next/assets/Sheet-Bk64-Hlt.js.map +1 -0
- package/dist/core/web/public/next/assets/ShortcutsOverlay-CcP96zqy.js +2 -0
- package/dist/core/web/public/next/assets/ShortcutsOverlay-CcP96zqy.js.map +1 -0
- package/dist/core/web/public/next/assets/Sidebar-sSNKd57n.js +3 -0
- package/dist/core/web/public/next/assets/Sidebar-sSNKd57n.js.map +1 -0
- package/dist/core/web/public/next/assets/SkipToContent-BynsXs9i.js +2 -0
- package/dist/core/web/public/next/assets/SkipToContent-BynsXs9i.js.map +1 -0
- package/dist/core/web/public/next/assets/Slider-DS5HrVzl.js +2 -0
- package/dist/core/web/public/next/assets/Slider-DS5HrVzl.js.map +1 -0
- package/dist/core/web/public/next/assets/SourcesPane-QffcyDfA.js +2 -0
- package/dist/core/web/public/next/assets/SourcesPane-QffcyDfA.js.map +1 -0
- package/dist/core/web/public/next/assets/SourcesPanel-DlttePk7.js +2 -0
- package/dist/core/web/public/next/assets/SourcesPanel-DlttePk7.js.map +1 -0
- package/dist/core/web/public/next/assets/StatTile-mYm1GPj7.js +2 -0
- package/dist/core/web/public/next/assets/StatTile-mYm1GPj7.js.map +1 -0
- package/dist/core/web/public/next/assets/StatusBadge-Yz7S3kZ2.js +2 -0
- package/dist/core/web/public/next/assets/StatusBadge-Yz7S3kZ2.js.map +1 -0
- package/dist/core/web/public/next/assets/StepBand-Bdkv7iGd.js +2 -0
- package/dist/core/web/public/next/assets/StepBand-Bdkv7iGd.js.map +1 -0
- package/dist/core/web/public/next/assets/Surface-DVOAKl2g.js +2 -0
- package/dist/core/web/public/next/assets/Surface-DVOAKl2g.js.map +1 -0
- package/dist/core/web/public/next/assets/Swimlane-CeMBD_FC.js +2 -0
- package/dist/core/web/public/next/assets/Swimlane-CeMBD_FC.js.map +1 -0
- package/dist/core/web/public/next/assets/Switch-Cqc_bSoh.js +2 -0
- package/dist/core/web/public/next/assets/Switch-Cqc_bSoh.js.map +1 -0
- package/dist/core/web/public/next/assets/Tag-BvOxSxYi.js +2 -0
- package/dist/core/web/public/next/assets/Tag-BvOxSxYi.js.map +1 -0
- package/dist/core/web/public/next/assets/TerminalPane-D3f02aI4.js +3 -0
- package/dist/core/web/public/next/assets/TerminalPane-D3f02aI4.js.map +1 -0
- package/dist/core/web/public/next/assets/TerminalPane-XZ5n3Pns.js +26 -0
- package/dist/core/web/public/next/assets/TerminalPane-XZ5n3Pns.js.map +1 -0
- package/dist/core/web/public/next/assets/ThinkingBlock-DZNlOGaV.js +2 -0
- package/dist/core/web/public/next/assets/ThinkingBlock-DZNlOGaV.js.map +1 -0
- package/dist/core/web/public/next/assets/UniverseConsoleApp-CzBI6Upl.js +2 -0
- package/dist/core/web/public/next/assets/UniverseConsoleApp-CzBI6Upl.js.map +1 -0
- package/dist/core/web/public/next/assets/UniverseView-Dsi3Kk8o.js +9 -0
- package/dist/core/web/public/next/assets/UniverseView-Dsi3Kk8o.js.map +1 -0
- package/dist/core/web/public/next/assets/UsageSection-rVvLat9z.js +3 -0
- package/dist/core/web/public/next/assets/UsageSection-rVvLat9z.js.map +1 -0
- package/dist/core/web/public/next/assets/UsePlaybookAction-B4XAzSeI.js +2 -0
- package/dist/core/web/public/next/assets/UsePlaybookAction-B4XAzSeI.js.map +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-BmckthwC.css +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-DjPpZLo1.js +3 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-DjPpZLo1.js.map +1 -0
- package/dist/core/web/public/next/assets/VerseMobileApp-ePNuVERe.js +3 -0
- package/dist/core/web/public/next/assets/VerseMobileApp-ePNuVERe.js.map +1 -0
- package/dist/core/web/public/next/assets/VerseShared-Bf-XTHCh.js +2 -0
- package/dist/core/web/public/next/assets/VerseShared-Bf-XTHCh.js.map +1 -0
- package/dist/core/web/public/next/assets/VoiceHud-BG5FV2h0.js +2 -0
- package/dist/core/web/public/next/assets/VoiceHud-BG5FV2h0.js.map +1 -0
- package/dist/core/web/public/next/assets/VoiceInput-k3vB_FxV.js +2 -0
- package/dist/core/web/public/next/assets/VoiceInput-k3vB_FxV.js.map +1 -0
- package/dist/core/web/public/next/assets/WikiSection-DeBKNqd6.js +2 -0
- package/dist/core/web/public/next/assets/WikiSection-DeBKNqd6.js.map +1 -0
- package/dist/core/web/public/next/assets/Workspace-CvwS2-RN.js +6 -0
- package/dist/core/web/public/next/assets/Workspace-CvwS2-RN.js.map +1 -0
- package/dist/core/web/public/next/assets/actions-Dg6UJTLn.js +2 -0
- package/dist/core/web/public/next/assets/actions-Dg6UJTLn.js.map +1 -0
- package/dist/core/web/public/next/assets/agent-tools-client-DmJq7zlr.js +2 -0
- package/dist/core/web/public/next/assets/agent-tools-client-DmJq7zlr.js.map +1 -0
- package/dist/core/web/public/next/assets/agents-focus-B1LKhUVg.js +2 -0
- package/dist/core/web/public/next/assets/agents-focus-B1LKhUVg.js.map +1 -0
- package/dist/core/web/public/next/assets/app-version-Cb1z8iCO.js +2 -0
- package/dist/core/web/public/next/assets/app-version-Cb1z8iCO.js.map +1 -0
- package/dist/core/web/public/next/assets/apps-model-_chbcQeN.js +2 -0
- package/dist/core/web/public/next/assets/apps-model-_chbcQeN.js.map +1 -0
- package/dist/core/web/public/next/assets/ask-seat-O60AydbV.js +2 -0
- package/dist/core/web/public/next/assets/ask-seat-O60AydbV.js.map +1 -0
- package/dist/core/web/public/next/assets/authority-model-BeDDHF22.js +2 -0
- package/dist/core/web/public/next/assets/authority-model-BeDDHF22.js.map +1 -0
- package/dist/core/web/public/next/assets/automations-focus-BXaRZ8nX.js +2 -0
- package/dist/core/web/public/next/assets/automations-focus-BXaRZ8nX.js.map +1 -0
- package/dist/core/web/public/next/assets/budget-queries-Nvx0H2XE.js +2 -0
- package/dist/core/web/public/next/assets/budget-queries-Nvx0H2XE.js.map +1 -0
- package/dist/core/web/public/next/assets/capacity-strip-model-CBMJ2U-w.js +2 -0
- package/dist/core/web/public/next/assets/capacity-strip-model-CBMJ2U-w.js.map +1 -0
- package/dist/core/web/public/next/assets/charts-DT9PYS49.js +2 -0
- package/dist/core/web/public/next/assets/charts-DT9PYS49.js.map +1 -0
- package/dist/core/web/public/next/assets/chat-pane-data-CfbpeAYX.js +2 -0
- package/dist/core/web/public/next/assets/chat-pane-data-CfbpeAYX.js.map +1 -0
- package/dist/core/web/public/next/assets/checkpoint-queries-BKD2evmX.js +2 -0
- package/dist/core/web/public/next/assets/checkpoint-queries-BKD2evmX.js.map +1 -0
- package/dist/core/web/public/next/assets/cloud-queries-CsU54eNn.js +2 -0
- package/dist/core/web/public/next/assets/cloud-queries-CsU54eNn.js.map +1 -0
- package/dist/core/web/public/next/assets/command-catalog-B0ApAGD0.js +2 -0
- package/dist/core/web/public/next/assets/command-catalog-B0ApAGD0.js.map +1 -0
- package/dist/core/web/public/next/assets/composer-queries-D1H4E0Ye.js +2 -0
- package/dist/core/web/public/next/assets/composer-queries-D1H4E0Ye.js.map +1 -0
- package/dist/core/web/public/next/assets/connectivity-xQ0Nh0j3.js +2 -0
- package/dist/core/web/public/next/assets/connectivity-xQ0Nh0j3.js.map +1 -0
- package/dist/core/web/public/next/assets/context-queries-bnI3P0Wt.js +2 -0
- package/dist/core/web/public/next/assets/context-queries-bnI3P0Wt.js.map +1 -0
- package/dist/core/web/public/next/assets/control-queries-BG53otwz.js +2 -0
- package/dist/core/web/public/next/assets/control-queries-BG53otwz.js.map +1 -0
- package/dist/core/web/public/next/assets/copy-setup-COMDnur3.js +2 -0
- package/dist/core/web/public/next/assets/copy-setup-COMDnur3.js.map +1 -0
- package/dist/core/web/public/next/assets/deep-link-CqOP-JEm.js +2 -0
- package/dist/core/web/public/next/assets/deep-link-CqOP-JEm.js.map +1 -0
- package/dist/core/web/public/next/assets/device-permissions-DpsJJcUW.js +2 -0
- package/dist/core/web/public/next/assets/device-permissions-DpsJJcUW.js.map +1 -0
- package/dist/core/web/public/next/assets/devin-queries-BSEOfLuZ.js +2 -0
- package/dist/core/web/public/next/assets/devin-queries-BSEOfLuZ.js.map +1 -0
- package/dist/core/web/public/next/assets/dock-icons-DK7QcBXJ.js +2 -0
- package/dist/core/web/public/next/assets/dock-icons-DK7QcBXJ.js.map +1 -0
- package/dist/core/web/public/next/assets/dock-panes-DvQ6t4Nl.js +2 -0
- package/dist/core/web/public/next/assets/dock-panes-DvQ6t4Nl.js.map +1 -0
- package/dist/core/web/public/next/assets/fleet-control-queries-BL-Vlf85.js +2 -0
- package/dist/core/web/public/next/assets/fleet-control-queries-BL-Vlf85.js.map +1 -0
- package/dist/core/web/public/next/assets/fleet-queries-eacERnLm.js +2 -0
- package/dist/core/web/public/next/assets/fleet-queries-eacERnLm.js.map +1 -0
- package/dist/core/web/public/next/assets/fleet-state-DfKcuo4A.js +3 -0
- package/dist/core/web/public/next/assets/fleet-state-DfKcuo4A.js.map +1 -0
- package/dist/core/web/public/next/assets/focus-trap-BZeH0rVB.js +2 -0
- package/dist/core/web/public/next/assets/focus-trap-BZeH0rVB.js.map +1 -0
- package/dist/core/web/public/next/assets/git-model-C1I4z_iQ.js +5 -0
- package/dist/core/web/public/next/assets/git-model-C1I4z_iQ.js.map +1 -0
- package/dist/core/web/public/next/assets/global-w7KDTTi0.js +3 -0
- package/dist/core/web/public/next/assets/global-w7KDTTi0.js.map +1 -0
- package/dist/core/web/public/next/assets/guarded-action-J9umcJgI.js +3 -0
- package/dist/core/web/public/next/assets/guarded-action-J9umcJgI.js.map +1 -0
- package/dist/core/web/public/next/assets/guarded-runners-Da5yA9Im.js +2 -0
- package/dist/core/web/public/next/assets/guarded-runners-Da5yA9Im.js.map +1 -0
- package/dist/core/web/public/next/assets/health-queries-D3HgrdU_.js +2 -0
- package/dist/core/web/public/next/assets/health-queries-D3HgrdU_.js.map +1 -0
- package/dist/core/web/public/next/assets/icons-C3G-y5j2.js +2 -0
- package/dist/core/web/public/next/assets/icons-C3G-y5j2.js.map +1 -0
- package/dist/core/web/public/next/assets/index-BC5Uslm5.js +11 -0
- package/dist/core/web/public/next/assets/index-BC5Uslm5.js.map +1 -0
- package/dist/core/web/public/next/assets/jev-queries-D6JNU-s6.js +2 -0
- package/dist/core/web/public/next/assets/jev-queries-D6JNU-s6.js.map +1 -0
- package/dist/core/web/public/next/assets/ladder-queries-BnYWjJoi.js +2 -0
- package/dist/core/web/public/next/assets/ladder-queries-BnYWjJoi.js.map +1 -0
- package/dist/core/web/public/next/assets/leader-focus-C6LVWgYI.js +2 -0
- package/dist/core/web/public/next/assets/leader-focus-C6LVWgYI.js.map +1 -0
- package/dist/core/web/public/next/assets/live-model-BPyZCTr1.js +2 -0
- package/dist/core/web/public/next/assets/live-model-BPyZCTr1.js.map +1 -0
- package/dist/core/web/public/next/assets/mobile-actions-avKNGddD.js +2 -0
- package/dist/core/web/public/next/assets/mobile-actions-avKNGddD.js.map +1 -0
- package/dist/core/web/public/next/assets/mobile-toast-BqSzGmw1.js +2 -0
- package/dist/core/web/public/next/assets/mobile-toast-BqSzGmw1.js.map +1 -0
- package/dist/core/web/public/next/assets/multimodel-flows-DOHsEKUG.js +7 -0
- package/dist/core/web/public/next/assets/multimodel-flows-DOHsEKUG.js.map +1 -0
- package/dist/core/web/public/next/assets/multimodel-queries-xmBBUT6n.js +2 -0
- package/dist/core/web/public/next/assets/multimodel-queries-xmBBUT6n.js.map +1 -0
- package/dist/core/web/public/next/assets/mutations-CdLi0erM.js +2 -0
- package/dist/core/web/public/next/assets/mutations-CdLi0erM.js.map +1 -0
- package/dist/core/web/public/next/assets/nav-CUXtg-Iw.js +2 -0
- package/dist/core/web/public/next/assets/nav-CUXtg-Iw.js.map +1 -0
- package/dist/core/web/public/next/assets/needs-you-actions-B2tjWO-0.js +2 -0
- package/dist/core/web/public/next/assets/needs-you-actions-B2tjWO-0.js.map +1 -0
- package/dist/core/web/public/next/assets/needs-you-model-DL9EEd2L.js +2 -0
- package/dist/core/web/public/next/assets/needs-you-model-DL9EEd2L.js.map +1 -0
- package/dist/core/web/public/next/assets/open-terminal-BfbxGoYQ.js +2 -0
- package/dist/core/web/public/next/assets/open-terminal-BfbxGoYQ.js.map +1 -0
- package/dist/core/web/public/next/assets/open-terminal-request-BT1UE0fz.js +2 -0
- package/dist/core/web/public/next/assets/open-terminal-request-BT1UE0fz.js.map +1 -0
- package/dist/core/web/public/next/assets/overnight-queries-cjjogTzn.js +2 -0
- package/dist/core/web/public/next/assets/overnight-queries-cjjogTzn.js.map +1 -0
- package/dist/core/web/public/next/assets/palette-handoff-XL2WWc9I.js +2 -0
- package/dist/core/web/public/next/assets/palette-handoff-XL2WWc9I.js.map +1 -0
- package/dist/core/web/public/next/assets/panes-5GU8cuI9.js +3 -0
- package/dist/core/web/public/next/assets/panes-5GU8cuI9.js.map +1 -0
- package/dist/core/web/public/next/assets/path-display-ZSzKoo8T.js +2 -0
- package/dist/core/web/public/next/assets/path-display-ZSzKoo8T.js.map +1 -0
- package/dist/core/web/public/next/assets/playbook-composer-D04tqOmU.js +2 -0
- package/dist/core/web/public/next/assets/playbook-composer-D04tqOmU.js.map +1 -0
- package/dist/core/web/public/next/assets/playbook-focus-DD1VIfkd.js +2 -0
- package/dist/core/web/public/next/assets/playbook-focus-DD1VIfkd.js.map +1 -0
- package/dist/core/web/public/next/assets/playbooks-queries-X7NGzpIn.js +2 -0
- package/dist/core/web/public/next/assets/playbooks-queries-X7NGzpIn.js.map +1 -0
- package/dist/core/web/public/next/assets/preloaded-6hKNGuRp.js +2 -0
- package/dist/core/web/public/next/assets/preloaded-6hKNGuRp.js.map +1 -0
- package/dist/core/web/public/next/assets/primitives-6nAFZkcg.js +1 -0
- package/dist/core/web/public/next/assets/pwa-BzXJXtDt.js +2 -0
- package/dist/core/web/public/next/assets/pwa-BzXJXtDt.js.map +1 -0
- package/dist/core/web/public/next/assets/queries-PgZlvFqO.js +2 -0
- package/dist/core/web/public/next/assets/queries-PgZlvFqO.js.map +1 -0
- package/dist/core/web/public/next/assets/reasoning-pref-BS0PSZ8d.js +2 -0
- package/dist/core/web/public/next/assets/reasoning-pref-BS0PSZ8d.js.map +1 -0
- package/dist/core/web/public/next/assets/remote-session-Bu-dtRcS.js +3 -0
- package/dist/core/web/public/next/assets/remote-session-Bu-dtRcS.js.map +1 -0
- package/dist/core/web/public/next/assets/resolved-store-UYN2k9My.js +2 -0
- package/dist/core/web/public/next/assets/resolved-store-UYN2k9My.js.map +1 -0
- package/dist/core/web/public/next/assets/resources-queries-XfQ8w9In.js +2 -0
- package/dist/core/web/public/next/assets/resources-queries-XfQ8w9In.js.map +1 -0
- package/dist/core/web/public/next/assets/reveal-anchor-3ZUTtB8Q.js +2 -0
- package/dist/core/web/public/next/assets/reveal-anchor-3ZUTtB8Q.js.map +1 -0
- package/dist/core/web/public/next/assets/sheet-DP8ByDWU.js +2 -0
- package/dist/core/web/public/next/assets/sheet-DP8ByDWU.js.map +1 -0
- package/dist/core/web/public/next/assets/slots-DWlj_c7i.js +3 -0
- package/dist/core/web/public/next/assets/slots-DWlj_c7i.js.map +1 -0
- package/dist/core/web/public/next/assets/sources-queries-Cjk1rpDU.js +4 -0
- package/dist/core/web/public/next/assets/sources-queries-Cjk1rpDU.js.map +1 -0
- package/dist/core/web/public/next/assets/sse-Z3U8XhDI.js +2 -0
- package/dist/core/web/public/next/assets/sse-Z3U8XhDI.js.map +1 -0
- package/dist/core/web/public/next/assets/surface-data-hufdOfpz.js +2 -0
- package/dist/core/web/public/next/assets/surface-data-hufdOfpz.js.map +1 -0
- package/dist/core/web/public/next/assets/surface-prefetch-CFtP8imB.js +2 -0
- package/dist/core/web/public/next/assets/surface-prefetch-CFtP8imB.js.map +1 -0
- package/dist/core/web/public/next/assets/terminal-client-CCSvMeEv.js +2 -0
- package/dist/core/web/public/next/assets/terminal-client-CCSvMeEv.js.map +1 -0
- package/dist/core/web/public/next/assets/terminal-icons-Dx6neM-J.js +2 -0
- package/dist/core/web/public/next/assets/terminal-icons-Dx6neM-J.js.map +1 -0
- package/dist/core/web/public/next/assets/terminal-view-BSieiQvi.js +6 -0
- package/dist/core/web/public/next/assets/terminal-view-BSieiQvi.js.map +1 -0
- package/dist/core/web/public/next/assets/thread-data-Cd2DZffn.js +2 -0
- package/dist/core/web/public/next/assets/thread-data-Cd2DZffn.js.map +1 -0
- package/dist/core/web/public/next/assets/ui-parts-wvov2ktB.js +2 -0
- package/dist/core/web/public/next/assets/ui-parts-wvov2ktB.js.map +1 -0
- package/dist/core/web/public/next/assets/usage-queries-nZjJ1aky.js +2 -0
- package/dist/core/web/public/next/assets/usage-queries-nZjJ1aky.js.map +1 -0
- package/dist/core/web/public/next/assets/use-chat-activity-_tBmEPPN.js +2 -0
- package/dist/core/web/public/next/assets/use-chat-activity-_tBmEPPN.js.map +1 -0
- package/dist/core/web/public/next/assets/use-guarded-action-DKKjhPKG.js +2 -0
- package/dist/core/web/public/next/assets/use-guarded-action-DKKjhPKG.js.map +1 -0
- package/dist/core/web/public/next/assets/use-ticker-w1c3SOqK.js +2 -0
- package/dist/core/web/public/next/assets/use-ticker-w1c3SOqK.js.map +1 -0
- package/dist/core/web/public/next/assets/use-token-gate-h5QAERLT.js +2 -0
- package/dist/core/web/public/next/assets/use-token-gate-h5QAERLT.js.map +1 -0
- package/dist/core/web/public/next/assets/useAutoSeat-Dpbn0XUv.js +2 -0
- package/dist/core/web/public/next/assets/useAutoSeat-Dpbn0XUv.js.map +1 -0
- package/dist/core/web/public/next/assets/useOnboarding-VoV1LcuJ.js +2 -0
- package/dist/core/web/public/next/assets/useOnboarding-VoV1LcuJ.js.map +1 -0
- package/dist/core/web/public/next/assets/useSeatHealth-DuSaKdIs.js +2 -0
- package/dist/core/web/public/next/assets/useSeatHealth-DuSaKdIs.js.map +1 -0
- package/dist/core/web/public/next/assets/useSeatsRefresh-DFaR1jSz.js +2 -0
- package/dist/core/web/public/next/assets/useSeatsRefresh-DFaR1jSz.js.map +1 -0
- package/dist/core/web/public/next/assets/useVerseSession-BOsgJzT5.js +2 -0
- package/dist/core/web/public/next/assets/useVerseSession-BOsgJzT5.js.map +1 -0
- package/dist/core/web/public/next/assets/useVerseTranscript-BN_fMz6x.js +2 -0
- package/dist/core/web/public/next/assets/useVerseTranscript-BN_fMz6x.js.map +1 -0
- package/dist/core/web/public/next/assets/verse-bootstrap-query-B3vFD9XK.js +2 -0
- package/dist/core/web/public/next/assets/verse-bootstrap-query-B3vFD9XK.js.map +1 -0
- package/dist/core/web/public/next/assets/verse-icons-vSkflmRB.js +2 -0
- package/dist/core/web/public/next/assets/verse-icons-vSkflmRB.js.map +1 -0
- package/dist/core/web/public/next/assets/warmup-D9MjYs5S.js +3 -0
- package/dist/core/web/public/next/assets/warmup-D9MjYs5S.js.map +1 -0
- package/dist/core/web/public/next/assets/wiki-focus-De8-E48Z.js +2 -0
- package/dist/core/web/public/next/assets/wiki-focus-De8-E48Z.js.map +1 -0
- package/dist/core/web/public/next/index.html +1 -1
- package/dist/release-dependency-inventory.json +1 -1
- package/package.json +1 -1
- package/dist/core/web/public/next/assets/ActionMenu-CebJFKYy.js +0 -2
- package/dist/core/web/public/next/assets/ActionMenu-CebJFKYy.js.map +0 -1
- package/dist/core/web/public/next/assets/Advanced-Dr9aVbXV.js +0 -2
- package/dist/core/web/public/next/assets/Advanced-Dr9aVbXV.js.map +0 -1
- package/dist/core/web/public/next/assets/AgentDetailScreen-DCVf81Vo.js +0 -2
- package/dist/core/web/public/next/assets/AgentDetailScreen-DCVf81Vo.js.map +0 -1
- package/dist/core/web/public/next/assets/AgentToolsSheet-C3SbvEiV.js +0 -2
- package/dist/core/web/public/next/assets/AgentToolsSheet-C3SbvEiV.js.map +0 -1
- package/dist/core/web/public/next/assets/AgentToolsStrip-CZNxj_Iv.js +0 -2
- package/dist/core/web/public/next/assets/AgentToolsStrip-CZNxj_Iv.js.map +0 -1
- package/dist/core/web/public/next/assets/AgentsScreen-zLj4gzPR.js +0 -2
- package/dist/core/web/public/next/assets/AgentsScreen-zLj4gzPR.js.map +0 -1
- package/dist/core/web/public/next/assets/AgentsSection-CIo_nRmi.js +0 -3
- package/dist/core/web/public/next/assets/AgentsSection-CIo_nRmi.js.map +0 -1
- package/dist/core/web/public/next/assets/App-CPKNuUdC.js +0 -8
- package/dist/core/web/public/next/assets/App-CPKNuUdC.js.map +0 -1
- package/dist/core/web/public/next/assets/AppsSection-D2F2CM-E.js +0 -2
- package/dist/core/web/public/next/assets/AppsSection-D2F2CM-E.js.map +0 -1
- package/dist/core/web/public/next/assets/AreaTrend-DiZu8bjc.js +0 -2
- package/dist/core/web/public/next/assets/AreaTrend-DiZu8bjc.js.map +0 -1
- package/dist/core/web/public/next/assets/AutomationsSection-B4rBNUyo.js +0 -2
- package/dist/core/web/public/next/assets/AutomationsSection-B4rBNUyo.js.map +0 -1
- package/dist/core/web/public/next/assets/AutonomyOffState-DEznxI-Q.js +0 -3
- package/dist/core/web/public/next/assets/AutonomyOffState-DEznxI-Q.js.map +0 -1
- package/dist/core/web/public/next/assets/AutonomySection-Dq5n3gs7.js +0 -2
- package/dist/core/web/public/next/assets/AutonomySection-Dq5n3gs7.js.map +0 -1
- package/dist/core/web/public/next/assets/AutonomyStatus-Uydy6-pZ.js +0 -2
- package/dist/core/web/public/next/assets/AutonomyStatus-Uydy6-pZ.js.map +0 -1
- package/dist/core/web/public/next/assets/BranchBar-BzUmUM_j.js +0 -2
- package/dist/core/web/public/next/assets/BranchBar-BzUmUM_j.js.map +0 -1
- package/dist/core/web/public/next/assets/BrowserPanel-C_VI6Awi.js +0 -7
- package/dist/core/web/public/next/assets/BrowserPanel-C_VI6Awi.js.map +0 -1
- package/dist/core/web/public/next/assets/BudgetControl-B23rNAuC.js +0 -2
- package/dist/core/web/public/next/assets/BudgetControl-B23rNAuC.js.map +0 -1
- package/dist/core/web/public/next/assets/Button-DJY_Pu5B.js +0 -2
- package/dist/core/web/public/next/assets/Button-DJY_Pu5B.js.map +0 -1
- package/dist/core/web/public/next/assets/CapacityStrip-B5Yj2PhZ.js +0 -2
- package/dist/core/web/public/next/assets/CapacityStrip-B5Yj2PhZ.js.map +0 -1
- package/dist/core/web/public/next/assets/ChangesPaneHost-LsUonc7P.js +0 -16
- package/dist/core/web/public/next/assets/ChangesPaneHost-LsUonc7P.js.map +0 -1
- package/dist/core/web/public/next/assets/ChartFrame-CakjKkPx.js +0 -2
- package/dist/core/web/public/next/assets/ChartFrame-CakjKkPx.js.map +0 -1
- package/dist/core/web/public/next/assets/ChatPanes-DgKskpXb.js +0 -2
- package/dist/core/web/public/next/assets/ChatPanes-DgKskpXb.js.map +0 -1
- package/dist/core/web/public/next/assets/ChatSection-DXpzV1NW.js +0 -3
- package/dist/core/web/public/next/assets/ChatSection-DXpzV1NW.js.map +0 -1
- package/dist/core/web/public/next/assets/ChecksPanel-BeCJVOJC.js +0 -5
- package/dist/core/web/public/next/assets/ChecksPanel-BeCJVOJC.js.map +0 -1
- package/dist/core/web/public/next/assets/CloudBudgetForm-4SWIGJLs.js +0 -2
- package/dist/core/web/public/next/assets/CloudBudgetForm-4SWIGJLs.js.map +0 -1
- package/dist/core/web/public/next/assets/CommandPalette-B4QaFGY5.js +0 -3
- package/dist/core/web/public/next/assets/CommandPalette-B4QaFGY5.js.map +0 -1
- package/dist/core/web/public/next/assets/CommandSection-8TFjYitt.js +0 -3
- package/dist/core/web/public/next/assets/CommandSection-8TFjYitt.js.map +0 -1
- package/dist/core/web/public/next/assets/CommandWorkflowForm-B2ooVjof.js +0 -9
- package/dist/core/web/public/next/assets/CommandWorkflowForm-B2ooVjof.js.map +0 -1
- package/dist/core/web/public/next/assets/CommandWorkflowPicker-C09vJiUG.js +0 -3
- package/dist/core/web/public/next/assets/CommandWorkflowPicker-C09vJiUG.js.map +0 -1
- package/dist/core/web/public/next/assets/CompareDialog-CaopnGI0.js +0 -4
- package/dist/core/web/public/next/assets/CompareDialog-CaopnGI0.js.map +0 -1
- package/dist/core/web/public/next/assets/ComputerControl-BflC6wd1.js +0 -2
- package/dist/core/web/public/next/assets/ComputerControl-BflC6wd1.js.map +0 -1
- package/dist/core/web/public/next/assets/ConfirmDialog-CTeMFavv.js +0 -2
- package/dist/core/web/public/next/assets/ConfirmDialog-CTeMFavv.js.map +0 -1
- package/dist/core/web/public/next/assets/DeleteChatDialog-B2bUTuZ9.js +0 -2
- package/dist/core/web/public/next/assets/DeleteChatDialog-B2bUTuZ9.js.map +0 -1
- package/dist/core/web/public/next/assets/DevinStopDialog-DPP34cna.js +0 -2
- package/dist/core/web/public/next/assets/DevinStopDialog-DPP34cna.js.map +0 -1
- package/dist/core/web/public/next/assets/Dialog-r4j4R4b6.js +0 -2
- package/dist/core/web/public/next/assets/Dialog-r4j4R4b6.js.map +0 -1
- package/dist/core/web/public/next/assets/DiffPane-CKnpzqaU.js +0 -2
- package/dist/core/web/public/next/assets/DiffPane-CKnpzqaU.js.map +0 -1
- package/dist/core/web/public/next/assets/DiffViewer-BzQ7245p.js +0 -2
- package/dist/core/web/public/next/assets/DiffViewer-BzQ7245p.js.map +0 -1
- package/dist/core/web/public/next/assets/DockHost-BCZtC_lm.js +0 -2
- package/dist/core/web/public/next/assets/DockHost-BCZtC_lm.js.map +0 -1
- package/dist/core/web/public/next/assets/EmptyState-Cwpga8L9.js +0 -2
- package/dist/core/web/public/next/assets/EmptyState-Cwpga8L9.js.map +0 -1
- package/dist/core/web/public/next/assets/Epistemic-BBwXv-C1.js +0 -2
- package/dist/core/web/public/next/assets/Epistemic-BBwXv-C1.js.map +0 -1
- package/dist/core/web/public/next/assets/EvidenceTimeline-hAENJQCa.js +0 -2
- package/dist/core/web/public/next/assets/EvidenceTimeline-hAENJQCa.js.map +0 -1
- package/dist/core/web/public/next/assets/FilesPane-CrPN5zlx.js +0 -2
- package/dist/core/web/public/next/assets/FilesPane-CrPN5zlx.js.map +0 -1
- package/dist/core/web/public/next/assets/FleetScreen-Cz9HQ-st.js +0 -2
- package/dist/core/web/public/next/assets/FleetScreen-Cz9HQ-st.js.map +0 -1
- package/dist/core/web/public/next/assets/FleetSection-CmZKQ1rr.js +0 -5
- package/dist/core/web/public/next/assets/FleetSection-CmZKQ1rr.js.map +0 -1
- package/dist/core/web/public/next/assets/Funnel-Cfg55EZp.js +0 -2
- package/dist/core/web/public/next/assets/Funnel-Cfg55EZp.js.map +0 -1
- package/dist/core/web/public/next/assets/GearTray-D-Mhc8TJ.js +0 -2
- package/dist/core/web/public/next/assets/GearTray-D-Mhc8TJ.js.map +0 -1
- package/dist/core/web/public/next/assets/GitDialogs-e-7RQEGv.js +0 -2
- package/dist/core/web/public/next/assets/GitDialogs-e-7RQEGv.js.map +0 -1
- package/dist/core/web/public/next/assets/GrowthSection-DsIrdTDd.js +0 -3
- package/dist/core/web/public/next/assets/GrowthSection-DsIrdTDd.js.map +0 -1
- package/dist/core/web/public/next/assets/HandoffDialog-1MB2fmT1.js +0 -2
- package/dist/core/web/public/next/assets/HandoffDialog-1MB2fmT1.js.map +0 -1
- package/dist/core/web/public/next/assets/HomeBody-n_t3A58_.js +0 -3
- package/dist/core/web/public/next/assets/HomeBody-n_t3A58_.js.map +0 -1
- package/dist/core/web/public/next/assets/HomeSeats-DA66aOWC.js +0 -2
- package/dist/core/web/public/next/assets/HomeSeats-DA66aOWC.js.map +0 -1
- package/dist/core/web/public/next/assets/Input-Bt6fp051.js +0 -2
- package/dist/core/web/public/next/assets/Input-Bt6fp051.js.map +0 -1
- package/dist/core/web/public/next/assets/LaunchDialog-BCd7XqCv.js +0 -9
- package/dist/core/web/public/next/assets/LaunchDialog-BCd7XqCv.js.map +0 -1
- package/dist/core/web/public/next/assets/LeaderCard-DFAFcyfZ.js +0 -2
- package/dist/core/web/public/next/assets/LeaderCard-DFAFcyfZ.js.map +0 -1
- package/dist/core/web/public/next/assets/LeaderConversation-LSenfZzT.js +0 -3
- package/dist/core/web/public/next/assets/LeaderConversation-LSenfZzT.js.map +0 -1
- package/dist/core/web/public/next/assets/LeaderScreen-B2UxRWUm.js +0 -2
- package/dist/core/web/public/next/assets/LeaderScreen-B2UxRWUm.js.map +0 -1
- package/dist/core/web/public/next/assets/LessonsPanel-D86ZT0we.js +0 -2
- package/dist/core/web/public/next/assets/LessonsPanel-D86ZT0we.js.map +0 -1
- package/dist/core/web/public/next/assets/LiveTimer-AtG5hPwV.js +0 -2
- package/dist/core/web/public/next/assets/LiveTimer-AtG5hPwV.js.map +0 -1
- package/dist/core/web/public/next/assets/LocalSeatBadge-XfGRZCA3.js +0 -2
- package/dist/core/web/public/next/assets/LocalSeatBadge-XfGRZCA3.js.map +0 -1
- package/dist/core/web/public/next/assets/MatrixHeatmap-PSnyMJ2h.js +0 -2
- package/dist/core/web/public/next/assets/MatrixHeatmap-PSnyMJ2h.js.map +0 -1
- package/dist/core/web/public/next/assets/McpSection-BG2FSkgH.js +0 -2
- package/dist/core/web/public/next/assets/McpSection-BG2FSkgH.js.map +0 -1
- package/dist/core/web/public/next/assets/MessageMarkdown-CQEqoMvf.js +0 -3
- package/dist/core/web/public/next/assets/MessageMarkdown-CQEqoMvf.js.map +0 -1
- package/dist/core/web/public/next/assets/MessageMarkdownRenderer-DU-VLDhb.js +0 -72
- package/dist/core/web/public/next/assets/MessageMarkdownRenderer-DU-VLDhb.js.map +0 -1
- package/dist/core/web/public/next/assets/Meter-BfaE-BjY.js +0 -2
- package/dist/core/web/public/next/assets/Meter-BfaE-BjY.js.map +0 -1
- package/dist/core/web/public/next/assets/MicButton-BbGB7y_9.js +0 -2
- package/dist/core/web/public/next/assets/MicButton-BbGB7y_9.js.map +0 -1
- package/dist/core/web/public/next/assets/MindSection-CX0VaHo1.js +0 -3
- package/dist/core/web/public/next/assets/MindSection-CX0VaHo1.js.map +0 -1
- package/dist/core/web/public/next/assets/MobileComposer-CFeLWUCz.js +0 -2
- package/dist/core/web/public/next/assets/MobileComposer-CFeLWUCz.js.map +0 -1
- package/dist/core/web/public/next/assets/MobileGuardSheet-cGW9RCTr.js +0 -2
- package/dist/core/web/public/next/assets/MobileGuardSheet-cGW9RCTr.js.map +0 -1
- package/dist/core/web/public/next/assets/MobileRuntime-BWTZ_QLr.js +0 -3
- package/dist/core/web/public/next/assets/MobileRuntime-BWTZ_QLr.js.map +0 -1
- package/dist/core/web/public/next/assets/MoreScreen-BcHZhVrR.js +0 -2
- package/dist/core/web/public/next/assets/MoreScreen-BcHZhVrR.js.map +0 -1
- package/dist/core/web/public/next/assets/MultiModelBar-COxIRv7m.js +0 -7
- package/dist/core/web/public/next/assets/MultiModelBar-COxIRv7m.js.map +0 -1
- package/dist/core/web/public/next/assets/MutationTokenDialog-Dnf_rcnc.js +0 -2
- package/dist/core/web/public/next/assets/MutationTokenDialog-Dnf_rcnc.js.map +0 -1
- package/dist/core/web/public/next/assets/NeedsYouDrawer-COrUlnd0.js +0 -3
- package/dist/core/web/public/next/assets/NeedsYouDrawer-COrUlnd0.js.map +0 -1
- package/dist/core/web/public/next/assets/NeedsYouList-AXzOe4EL.js +0 -2
- package/dist/core/web/public/next/assets/NeedsYouList-AXzOe4EL.js.map +0 -1
- package/dist/core/web/public/next/assets/NeedsYouScreen-HSXybHgd.js +0 -2
- package/dist/core/web/public/next/assets/NeedsYouScreen-HSXybHgd.js.map +0 -1
- package/dist/core/web/public/next/assets/NewAgentScreen-BI849ZsG.js +0 -2
- package/dist/core/web/public/next/assets/NewAgentScreen-BI849ZsG.js.map +0 -1
- package/dist/core/web/public/next/assets/NewChatDialog-BHoCnP6Q.js +0 -4
- package/dist/core/web/public/next/assets/NewChatDialog-BHoCnP6Q.js.map +0 -1
- package/dist/core/web/public/next/assets/OnboardingFlow-BVljU2uy.js +0 -3
- package/dist/core/web/public/next/assets/OnboardingFlow-BVljU2uy.js.map +0 -1
- package/dist/core/web/public/next/assets/OnboardingGate-DlI4L7Ki.js +0 -3
- package/dist/core/web/public/next/assets/OnboardingGate-DlI4L7Ki.js.map +0 -1
- package/dist/core/web/public/next/assets/PlaybooksSection-hhNpXnsR.js +0 -9
- package/dist/core/web/public/next/assets/PlaybooksSection-hhNpXnsR.js.map +0 -1
- package/dist/core/web/public/next/assets/PreviewPane-BbXr63u2.js +0 -2
- package/dist/core/web/public/next/assets/PreviewPane-BbXr63u2.js.map +0 -1
- package/dist/core/web/public/next/assets/ProviderLogo-BliSWEMw.js +0 -2
- package/dist/core/web/public/next/assets/ProviderLogo-BliSWEMw.js.map +0 -1
- package/dist/core/web/public/next/assets/RailStatus-SnrVxLnp.js +0 -2
- package/dist/core/web/public/next/assets/RailStatus-SnrVxLnp.js.map +0 -1
- package/dist/core/web/public/next/assets/ReasoningPane-C04_bOAi.js +0 -2
- package/dist/core/web/public/next/assets/ReasoningPane-C04_bOAi.js.map +0 -1
- package/dist/core/web/public/next/assets/ReasoningSheet-BvNFwtuX.js +0 -2
- package/dist/core/web/public/next/assets/ReasoningSheet-BvNFwtuX.js.map +0 -1
- package/dist/core/web/public/next/assets/RefreshIndicator-BNptNJiV.js +0 -2
- package/dist/core/web/public/next/assets/RefreshIndicator-BNptNJiV.js.map +0 -1
- package/dist/core/web/public/next/assets/RemoteMobileApp-osaSEvnm.js +0 -2
- package/dist/core/web/public/next/assets/RemoteMobileApp-osaSEvnm.js.map +0 -1
- package/dist/core/web/public/next/assets/ResourcePoolConsoleApp-LO31zjUR.js +0 -7
- package/dist/core/web/public/next/assets/ResourcePoolConsoleApp-LO31zjUR.js.map +0 -1
- package/dist/core/web/public/next/assets/ResourcesChrome-ByZE532G.js +0 -3
- package/dist/core/web/public/next/assets/ResourcesChrome-ByZE532G.js.map +0 -1
- package/dist/core/web/public/next/assets/ResourcesChrome-p_VCkMZH.css +0 -1
- package/dist/core/web/public/next/assets/ResourcesDrawer-BH9uwNE8.js +0 -3
- package/dist/core/web/public/next/assets/ResourcesDrawer-BH9uwNE8.js.map +0 -1
- package/dist/core/web/public/next/assets/ReviewMenu-B2A_YDPi.js +0 -2
- package/dist/core/web/public/next/assets/ReviewMenu-B2A_YDPi.js.map +0 -1
- package/dist/core/web/public/next/assets/RouteErrorBoundary-CVabFM97.js +0 -2
- package/dist/core/web/public/next/assets/RouteErrorBoundary-CVabFM97.js.map +0 -1
- package/dist/core/web/public/next/assets/RunInCloudAction-BpNHE7m8.js +0 -2
- package/dist/core/web/public/next/assets/RunInCloudAction-BpNHE7m8.js.map +0 -1
- package/dist/core/web/public/next/assets/RunInDevinAction-Bkf5Gb3a.js +0 -2
- package/dist/core/web/public/next/assets/RunInDevinAction-Bkf5Gb3a.js.map +0 -1
- package/dist/core/web/public/next/assets/SchedulingEvidence-B08-qhhm.js +0 -2
- package/dist/core/web/public/next/assets/SchedulingEvidence-B08-qhhm.js.map +0 -1
- package/dist/core/web/public/next/assets/ScreenHost-BGSxFyWK.js +0 -3
- package/dist/core/web/public/next/assets/ScreenHost-BGSxFyWK.js.map +0 -1
- package/dist/core/web/public/next/assets/SeatSelector-B4lRZl0K.js +0 -3
- package/dist/core/web/public/next/assets/SeatSelector-B4lRZl0K.js.map +0 -1
- package/dist/core/web/public/next/assets/Segmented-Dokzywy8.js +0 -2
- package/dist/core/web/public/next/assets/Segmented-Dokzywy8.js.map +0 -1
- package/dist/core/web/public/next/assets/Select-tf4lNvWD.js +0 -2
- package/dist/core/web/public/next/assets/Select-tf4lNvWD.js.map +0 -1
- package/dist/core/web/public/next/assets/SessionGate-Bab2qO29.js +0 -2
- package/dist/core/web/public/next/assets/SessionGate-Bab2qO29.js.map +0 -1
- package/dist/core/web/public/next/assets/SessionInsightChip-C-fj8h4A.js +0 -2
- package/dist/core/web/public/next/assets/SessionInsightChip-C-fj8h4A.js.map +0 -1
- package/dist/core/web/public/next/assets/SessionSearch-CqjjwOW2.js +0 -2
- package/dist/core/web/public/next/assets/SessionSearch-CqjjwOW2.js.map +0 -1
- package/dist/core/web/public/next/assets/SettingsSection-DfOsHzl6.js +0 -2
- package/dist/core/web/public/next/assets/SettingsSection-DfOsHzl6.js.map +0 -1
- package/dist/core/web/public/next/assets/SetupChecklist-BsxCTcYY.js +0 -2
- package/dist/core/web/public/next/assets/SetupChecklist-BsxCTcYY.js.map +0 -1
- package/dist/core/web/public/next/assets/ShadowDecisions-B1ZPv7K-.js +0 -3
- package/dist/core/web/public/next/assets/ShadowDecisions-B1ZPv7K-.js.map +0 -1
- package/dist/core/web/public/next/assets/Sheet-DLlZ00Lu.js +0 -2
- package/dist/core/web/public/next/assets/Sheet-DLlZ00Lu.js.map +0 -1
- package/dist/core/web/public/next/assets/ShortcutsOverlay-CDwQdpGV.js +0 -2
- package/dist/core/web/public/next/assets/ShortcutsOverlay-CDwQdpGV.js.map +0 -1
- package/dist/core/web/public/next/assets/Sidebar-H5WNri2S.js +0 -3
- package/dist/core/web/public/next/assets/Sidebar-H5WNri2S.js.map +0 -1
- package/dist/core/web/public/next/assets/SkipToContent-BjJE6yOo.js +0 -2
- package/dist/core/web/public/next/assets/SkipToContent-BjJE6yOo.js.map +0 -1
- package/dist/core/web/public/next/assets/Slider-C68TumXj.js +0 -2
- package/dist/core/web/public/next/assets/Slider-C68TumXj.js.map +0 -1
- package/dist/core/web/public/next/assets/SourcesPane-DHYs4YIg.js +0 -2
- package/dist/core/web/public/next/assets/SourcesPane-DHYs4YIg.js.map +0 -1
- package/dist/core/web/public/next/assets/SourcesPanel-DFyLfYBO.js +0 -2
- package/dist/core/web/public/next/assets/SourcesPanel-DFyLfYBO.js.map +0 -1
- package/dist/core/web/public/next/assets/StatTile-CTUuhOLS.js +0 -2
- package/dist/core/web/public/next/assets/StatTile-CTUuhOLS.js.map +0 -1
- package/dist/core/web/public/next/assets/StatusBadge-DrVbi5dF.js +0 -2
- package/dist/core/web/public/next/assets/StatusBadge-DrVbi5dF.js.map +0 -1
- package/dist/core/web/public/next/assets/StepBand-CXDpnu2R.js +0 -2
- package/dist/core/web/public/next/assets/StepBand-CXDpnu2R.js.map +0 -1
- package/dist/core/web/public/next/assets/Surface-DCL7uORg.js +0 -2
- package/dist/core/web/public/next/assets/Surface-DCL7uORg.js.map +0 -1
- package/dist/core/web/public/next/assets/Swimlane-BAEjfoVU.js +0 -2
- package/dist/core/web/public/next/assets/Swimlane-BAEjfoVU.js.map +0 -1
- package/dist/core/web/public/next/assets/Switch-Z7RmRjWE.js +0 -2
- package/dist/core/web/public/next/assets/Switch-Z7RmRjWE.js.map +0 -1
- package/dist/core/web/public/next/assets/Tag-Ciht3C94.js +0 -2
- package/dist/core/web/public/next/assets/Tag-Ciht3C94.js.map +0 -1
- package/dist/core/web/public/next/assets/TerminalPane-BdIyhtzJ.js +0 -26
- package/dist/core/web/public/next/assets/TerminalPane-BdIyhtzJ.js.map +0 -1
- package/dist/core/web/public/next/assets/TerminalPane-DJKT600N.js +0 -3
- package/dist/core/web/public/next/assets/TerminalPane-DJKT600N.js.map +0 -1
- package/dist/core/web/public/next/assets/ThinkingBlock-CHRZX_fJ.js +0 -2
- package/dist/core/web/public/next/assets/ThinkingBlock-CHRZX_fJ.js.map +0 -1
- package/dist/core/web/public/next/assets/UniverseConsoleApp-QSoaY_Fk.js +0 -2
- package/dist/core/web/public/next/assets/UniverseConsoleApp-QSoaY_Fk.js.map +0 -1
- package/dist/core/web/public/next/assets/UniverseView-ZXAOJ0Rq.js +0 -9
- package/dist/core/web/public/next/assets/UniverseView-ZXAOJ0Rq.js.map +0 -1
- package/dist/core/web/public/next/assets/UsageSection-BEAa-W_q.js +0 -3
- package/dist/core/web/public/next/assets/UsageSection-BEAa-W_q.js.map +0 -1
- package/dist/core/web/public/next/assets/UsePlaybookAction-S7Yky_M8.js +0 -2
- package/dist/core/web/public/next/assets/UsePlaybookAction-S7Yky_M8.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-Cj6yPJo3.js +0 -3
- package/dist/core/web/public/next/assets/VerseConsoleApp-Cj6yPJo3.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-n6qr3lCF.css +0 -1
- package/dist/core/web/public/next/assets/VerseMobileApp-BRayqF_2.js +0 -3
- package/dist/core/web/public/next/assets/VerseMobileApp-BRayqF_2.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseShared-CH8mV5ew.js +0 -2
- package/dist/core/web/public/next/assets/VerseShared-CH8mV5ew.js.map +0 -1
- package/dist/core/web/public/next/assets/VoiceHud-CO4yGRlr.js +0 -2
- package/dist/core/web/public/next/assets/VoiceHud-CO4yGRlr.js.map +0 -1
- package/dist/core/web/public/next/assets/VoiceInput-fSLnbGJ4.js +0 -2
- package/dist/core/web/public/next/assets/VoiceInput-fSLnbGJ4.js.map +0 -1
- package/dist/core/web/public/next/assets/WikiSection-CN-HansV.js +0 -2
- package/dist/core/web/public/next/assets/WikiSection-CN-HansV.js.map +0 -1
- package/dist/core/web/public/next/assets/Workspace-dufi6DmW.js +0 -6
- package/dist/core/web/public/next/assets/Workspace-dufi6DmW.js.map +0 -1
- package/dist/core/web/public/next/assets/actions-gBplqbpY.js +0 -2
- package/dist/core/web/public/next/assets/actions-gBplqbpY.js.map +0 -1
- package/dist/core/web/public/next/assets/agent-tools-client-ClFut2J1.js +0 -2
- package/dist/core/web/public/next/assets/agent-tools-client-ClFut2J1.js.map +0 -1
- package/dist/core/web/public/next/assets/agents-focus-DjBz83BQ.js +0 -2
- package/dist/core/web/public/next/assets/agents-focus-DjBz83BQ.js.map +0 -1
- package/dist/core/web/public/next/assets/app-version-B0FcXqqB.js +0 -2
- package/dist/core/web/public/next/assets/app-version-B0FcXqqB.js.map +0 -1
- package/dist/core/web/public/next/assets/apps-model-C-SdWY0N.js +0 -2
- package/dist/core/web/public/next/assets/apps-model-C-SdWY0N.js.map +0 -1
- package/dist/core/web/public/next/assets/ask-seat-DhGxiGSd.js +0 -2
- package/dist/core/web/public/next/assets/ask-seat-DhGxiGSd.js.map +0 -1
- package/dist/core/web/public/next/assets/authority-model-CoXAS-Z6.js +0 -2
- package/dist/core/web/public/next/assets/authority-model-CoXAS-Z6.js.map +0 -1
- package/dist/core/web/public/next/assets/automations-focus-CeneF7lP.js +0 -2
- package/dist/core/web/public/next/assets/automations-focus-CeneF7lP.js.map +0 -1
- package/dist/core/web/public/next/assets/budget-queries-DCZevH2S.js +0 -2
- package/dist/core/web/public/next/assets/budget-queries-DCZevH2S.js.map +0 -1
- package/dist/core/web/public/next/assets/capacity-strip-model-Wna9o0dS.js +0 -2
- package/dist/core/web/public/next/assets/capacity-strip-model-Wna9o0dS.js.map +0 -1
- package/dist/core/web/public/next/assets/charts-CzqC55eL.js +0 -2
- package/dist/core/web/public/next/assets/charts-CzqC55eL.js.map +0 -1
- package/dist/core/web/public/next/assets/chat-pane-data-BBA55Pw-.js +0 -2
- package/dist/core/web/public/next/assets/chat-pane-data-BBA55Pw-.js.map +0 -1
- package/dist/core/web/public/next/assets/checkpoint-queries-gP6Vh70H.js +0 -2
- package/dist/core/web/public/next/assets/checkpoint-queries-gP6Vh70H.js.map +0 -1
- package/dist/core/web/public/next/assets/cloud-queries-Bsqo7wye.js +0 -2
- package/dist/core/web/public/next/assets/cloud-queries-Bsqo7wye.js.map +0 -1
- package/dist/core/web/public/next/assets/command-catalog-Dnx-iMLX.js +0 -2
- package/dist/core/web/public/next/assets/command-catalog-Dnx-iMLX.js.map +0 -1
- package/dist/core/web/public/next/assets/composer-queries-DHGJlnFJ.js +0 -2
- package/dist/core/web/public/next/assets/composer-queries-DHGJlnFJ.js.map +0 -1
- package/dist/core/web/public/next/assets/connectivity-BViMMNcD.js +0 -2
- package/dist/core/web/public/next/assets/connectivity-BViMMNcD.js.map +0 -1
- package/dist/core/web/public/next/assets/context-queries-Bsl-w0q-.js +0 -2
- package/dist/core/web/public/next/assets/context-queries-Bsl-w0q-.js.map +0 -1
- package/dist/core/web/public/next/assets/control-queries-CUNa6TAx.js +0 -2
- package/dist/core/web/public/next/assets/control-queries-CUNa6TAx.js.map +0 -1
- package/dist/core/web/public/next/assets/copy-setup-C2goNcTZ.js +0 -2
- package/dist/core/web/public/next/assets/copy-setup-C2goNcTZ.js.map +0 -1
- package/dist/core/web/public/next/assets/deep-link-Dg_zaqAl.js +0 -2
- package/dist/core/web/public/next/assets/deep-link-Dg_zaqAl.js.map +0 -1
- package/dist/core/web/public/next/assets/device-permissions-CEXY0Vor.js +0 -2
- package/dist/core/web/public/next/assets/device-permissions-CEXY0Vor.js.map +0 -1
- package/dist/core/web/public/next/assets/devin-queries-Cu_YYhw2.js +0 -2
- package/dist/core/web/public/next/assets/devin-queries-Cu_YYhw2.js.map +0 -1
- package/dist/core/web/public/next/assets/dock-icons-DGZoDN6N.js +0 -2
- package/dist/core/web/public/next/assets/dock-icons-DGZoDN6N.js.map +0 -1
- package/dist/core/web/public/next/assets/dock-panes-BgSO9q_f.js +0 -2
- package/dist/core/web/public/next/assets/dock-panes-BgSO9q_f.js.map +0 -1
- package/dist/core/web/public/next/assets/fleet-control-queries-clsJWanE.js +0 -2
- package/dist/core/web/public/next/assets/fleet-control-queries-clsJWanE.js.map +0 -1
- package/dist/core/web/public/next/assets/fleet-queries-DX1AwHEt.js +0 -2
- package/dist/core/web/public/next/assets/fleet-queries-DX1AwHEt.js.map +0 -1
- package/dist/core/web/public/next/assets/fleet-state-EgNiSDxu.js +0 -3
- package/dist/core/web/public/next/assets/fleet-state-EgNiSDxu.js.map +0 -1
- package/dist/core/web/public/next/assets/focus-trap-B1vuEhZX.js +0 -2
- package/dist/core/web/public/next/assets/focus-trap-B1vuEhZX.js.map +0 -1
- package/dist/core/web/public/next/assets/git-model-Bu59fz1m.js +0 -5
- package/dist/core/web/public/next/assets/git-model-Bu59fz1m.js.map +0 -1
- package/dist/core/web/public/next/assets/global-BJ_kVFpD.js +0 -3
- package/dist/core/web/public/next/assets/global-BJ_kVFpD.js.map +0 -1
- package/dist/core/web/public/next/assets/guarded-action-CzvG7Qgc.js +0 -3
- package/dist/core/web/public/next/assets/guarded-action-CzvG7Qgc.js.map +0 -1
- package/dist/core/web/public/next/assets/guarded-runners-BPM0KdoQ.js +0 -2
- package/dist/core/web/public/next/assets/guarded-runners-BPM0KdoQ.js.map +0 -1
- package/dist/core/web/public/next/assets/health-queries-CMxSsJKS.js +0 -2
- package/dist/core/web/public/next/assets/health-queries-CMxSsJKS.js.map +0 -1
- package/dist/core/web/public/next/assets/icons-MYfI6vZr.js +0 -2
- package/dist/core/web/public/next/assets/icons-MYfI6vZr.js.map +0 -1
- package/dist/core/web/public/next/assets/index-DOAOxiKl.js +0 -11
- package/dist/core/web/public/next/assets/index-DOAOxiKl.js.map +0 -1
- package/dist/core/web/public/next/assets/jev-queries-CS2A5uWe.js +0 -2
- package/dist/core/web/public/next/assets/jev-queries-CS2A5uWe.js.map +0 -1
- package/dist/core/web/public/next/assets/ladder-queries-CBoG3heV.js +0 -2
- package/dist/core/web/public/next/assets/ladder-queries-CBoG3heV.js.map +0 -1
- package/dist/core/web/public/next/assets/leader-focus-DDQlv0TB.js +0 -2
- package/dist/core/web/public/next/assets/leader-focus-DDQlv0TB.js.map +0 -1
- package/dist/core/web/public/next/assets/live-model-CCjYFk48.js +0 -2
- package/dist/core/web/public/next/assets/live-model-CCjYFk48.js.map +0 -1
- package/dist/core/web/public/next/assets/mobile-actions-XqB_h7a8.js +0 -2
- package/dist/core/web/public/next/assets/mobile-actions-XqB_h7a8.js.map +0 -1
- package/dist/core/web/public/next/assets/mobile-toast-eIrghd9o.js +0 -2
- package/dist/core/web/public/next/assets/mobile-toast-eIrghd9o.js.map +0 -1
- package/dist/core/web/public/next/assets/multimodel-flows-CzI-yHg5.js +0 -7
- package/dist/core/web/public/next/assets/multimodel-flows-CzI-yHg5.js.map +0 -1
- package/dist/core/web/public/next/assets/multimodel-queries-DxIT9AZY.js +0 -2
- package/dist/core/web/public/next/assets/multimodel-queries-DxIT9AZY.js.map +0 -1
- package/dist/core/web/public/next/assets/mutations-BlGALvmG.js +0 -2
- package/dist/core/web/public/next/assets/mutations-BlGALvmG.js.map +0 -1
- package/dist/core/web/public/next/assets/nav-ByibvQW1.js +0 -2
- package/dist/core/web/public/next/assets/nav-ByibvQW1.js.map +0 -1
- package/dist/core/web/public/next/assets/needs-you-actions-Dp5UxM3X.js +0 -2
- package/dist/core/web/public/next/assets/needs-you-actions-Dp5UxM3X.js.map +0 -1
- package/dist/core/web/public/next/assets/needs-you-model-DYsqHMqy.js +0 -2
- package/dist/core/web/public/next/assets/needs-you-model-DYsqHMqy.js.map +0 -1
- package/dist/core/web/public/next/assets/open-terminal-dOVyLFvn.js +0 -2
- package/dist/core/web/public/next/assets/open-terminal-dOVyLFvn.js.map +0 -1
- package/dist/core/web/public/next/assets/open-terminal-request-BIhvirIl.js +0 -2
- package/dist/core/web/public/next/assets/open-terminal-request-BIhvirIl.js.map +0 -1
- package/dist/core/web/public/next/assets/overnight-queries-KxqH6BRN.js +0 -2
- package/dist/core/web/public/next/assets/overnight-queries-KxqH6BRN.js.map +0 -1
- package/dist/core/web/public/next/assets/palette-handoff-69pw9oBv.js +0 -2
- package/dist/core/web/public/next/assets/palette-handoff-69pw9oBv.js.map +0 -1
- package/dist/core/web/public/next/assets/panes-CHt3427X.js +0 -3
- package/dist/core/web/public/next/assets/panes-CHt3427X.js.map +0 -1
- package/dist/core/web/public/next/assets/path-display-DuIZF5G3.js +0 -2
- package/dist/core/web/public/next/assets/path-display-DuIZF5G3.js.map +0 -1
- package/dist/core/web/public/next/assets/playbook-composer-DipWgX7t.js +0 -2
- package/dist/core/web/public/next/assets/playbook-composer-DipWgX7t.js.map +0 -1
- package/dist/core/web/public/next/assets/playbook-focus-EXJPMBBI.js +0 -2
- package/dist/core/web/public/next/assets/playbook-focus-EXJPMBBI.js.map +0 -1
- package/dist/core/web/public/next/assets/playbooks-queries-BlpGBpOV.js +0 -2
- package/dist/core/web/public/next/assets/playbooks-queries-BlpGBpOV.js.map +0 -1
- package/dist/core/web/public/next/assets/preloaded-TmpzuCEi.js +0 -2
- package/dist/core/web/public/next/assets/preloaded-TmpzuCEi.js.map +0 -1
- package/dist/core/web/public/next/assets/primitives-CDKCUR2v.js +0 -1
- package/dist/core/web/public/next/assets/pwa-CTGMm-wR.js +0 -2
- package/dist/core/web/public/next/assets/pwa-CTGMm-wR.js.map +0 -1
- package/dist/core/web/public/next/assets/queries--mGK10fL.js +0 -2
- package/dist/core/web/public/next/assets/queries--mGK10fL.js.map +0 -1
- package/dist/core/web/public/next/assets/reasoning-pref-CWGL9MD2.js +0 -2
- package/dist/core/web/public/next/assets/reasoning-pref-CWGL9MD2.js.map +0 -1
- package/dist/core/web/public/next/assets/remote-session-I4RXlsas.js +0 -3
- package/dist/core/web/public/next/assets/remote-session-I4RXlsas.js.map +0 -1
- package/dist/core/web/public/next/assets/resolved-store-DwGn9hb_.js +0 -2
- package/dist/core/web/public/next/assets/resolved-store-DwGn9hb_.js.map +0 -1
- package/dist/core/web/public/next/assets/resources-queries-T6ER_hPN.js +0 -2
- package/dist/core/web/public/next/assets/resources-queries-T6ER_hPN.js.map +0 -1
- package/dist/core/web/public/next/assets/reveal-anchor-CHtvhrYm.js +0 -2
- package/dist/core/web/public/next/assets/reveal-anchor-CHtvhrYm.js.map +0 -1
- package/dist/core/web/public/next/assets/sheet-BlzGO1wo.js +0 -2
- package/dist/core/web/public/next/assets/sheet-BlzGO1wo.js.map +0 -1
- package/dist/core/web/public/next/assets/slots-40edgV7X.js +0 -3
- package/dist/core/web/public/next/assets/slots-40edgV7X.js.map +0 -1
- package/dist/core/web/public/next/assets/sources-queries-BrM41X16.js +0 -4
- package/dist/core/web/public/next/assets/sources-queries-BrM41X16.js.map +0 -1
- package/dist/core/web/public/next/assets/sse-CAFwslNC.js +0 -2
- package/dist/core/web/public/next/assets/sse-CAFwslNC.js.map +0 -1
- package/dist/core/web/public/next/assets/surface-data-D_oFOgkh.js +0 -2
- package/dist/core/web/public/next/assets/surface-data-D_oFOgkh.js.map +0 -1
- package/dist/core/web/public/next/assets/surface-prefetch-wqfiATYQ.js +0 -2
- package/dist/core/web/public/next/assets/surface-prefetch-wqfiATYQ.js.map +0 -1
- package/dist/core/web/public/next/assets/terminal-client-iL4DagCN.js +0 -2
- package/dist/core/web/public/next/assets/terminal-client-iL4DagCN.js.map +0 -1
- package/dist/core/web/public/next/assets/terminal-icons-BakeOpKV.js +0 -2
- package/dist/core/web/public/next/assets/terminal-icons-BakeOpKV.js.map +0 -1
- package/dist/core/web/public/next/assets/terminal-view-D6AAh08q.js +0 -6
- package/dist/core/web/public/next/assets/terminal-view-D6AAh08q.js.map +0 -1
- package/dist/core/web/public/next/assets/thread-data-CSDZ514s.js +0 -2
- package/dist/core/web/public/next/assets/thread-data-CSDZ514s.js.map +0 -1
- package/dist/core/web/public/next/assets/ui-parts-DubQJIoq.js +0 -2
- package/dist/core/web/public/next/assets/ui-parts-DubQJIoq.js.map +0 -1
- package/dist/core/web/public/next/assets/usage-queries-BONqdout.js +0 -2
- package/dist/core/web/public/next/assets/usage-queries-BONqdout.js.map +0 -1
- package/dist/core/web/public/next/assets/use-chat-activity-BZjdPPNP.js +0 -2
- package/dist/core/web/public/next/assets/use-chat-activity-BZjdPPNP.js.map +0 -1
- package/dist/core/web/public/next/assets/use-guarded-action-xJ4rxyVo.js +0 -2
- package/dist/core/web/public/next/assets/use-guarded-action-xJ4rxyVo.js.map +0 -1
- package/dist/core/web/public/next/assets/use-ticker-Bsu0cMvl.js +0 -2
- package/dist/core/web/public/next/assets/use-ticker-Bsu0cMvl.js.map +0 -1
- package/dist/core/web/public/next/assets/use-token-gate-E-xzEAu6.js +0 -2
- package/dist/core/web/public/next/assets/use-token-gate-E-xzEAu6.js.map +0 -1
- package/dist/core/web/public/next/assets/useAutoSeat-CXC9e4vx.js +0 -2
- package/dist/core/web/public/next/assets/useAutoSeat-CXC9e4vx.js.map +0 -1
- package/dist/core/web/public/next/assets/useOnboarding-Csw_AXrj.js +0 -2
- package/dist/core/web/public/next/assets/useOnboarding-Csw_AXrj.js.map +0 -1
- package/dist/core/web/public/next/assets/useSeatHealth-B6AXxre9.js +0 -2
- package/dist/core/web/public/next/assets/useSeatHealth-B6AXxre9.js.map +0 -1
- package/dist/core/web/public/next/assets/useSeatsRefresh-BIAa7Exn.js +0 -2
- package/dist/core/web/public/next/assets/useSeatsRefresh-BIAa7Exn.js.map +0 -1
- package/dist/core/web/public/next/assets/useVerseSession-BOyvOEDi.js +0 -2
- package/dist/core/web/public/next/assets/useVerseSession-BOyvOEDi.js.map +0 -1
- package/dist/core/web/public/next/assets/useVerseTranscript-BOhcfdp7.js +0 -2
- package/dist/core/web/public/next/assets/useVerseTranscript-BOhcfdp7.js.map +0 -1
- package/dist/core/web/public/next/assets/verse-bootstrap-query-D-fU89IT.js +0 -2
- package/dist/core/web/public/next/assets/verse-bootstrap-query-D-fU89IT.js.map +0 -1
- package/dist/core/web/public/next/assets/verse-icons-UKbUG3gv.js +0 -2
- package/dist/core/web/public/next/assets/verse-icons-UKbUG3gv.js.map +0 -1
- package/dist/core/web/public/next/assets/warmup-CZ-IBU5L.js +0 -3
- package/dist/core/web/public/next/assets/warmup-CZ-IBU5L.js.map +0 -1
- package/dist/core/web/public/next/assets/wiki-focus-DhAvbMnX.js +0 -2
- package/dist/core/web/public/next/assets/wiki-focus-DhAvbMnX.js.map +0 -1
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/sse-CAFwslNC.js","assets/global-1SED_aTT.css"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{r as e}from"./rolldown-runtime-hePW80VL.js";import{n as t,o as n,s as r,t as i}from"./index-DOAOxiKl.js";import{B as a,E as o,G as s,T as c,c as l,f as u,l as d,n as f,p,s as m,t as h,u as g,w as _}from"./global-BJ_kVFpD.js";import{t as v}from"./Dialog-r4j4R4b6.js";import{n as y,r as b,t as x}from"./Epistemic-BBwXv-C1.js";import{n as S,r as C,t as ee}from"./StatusBadge-DrVbi5dF.js";import{C as w,_ as te,a as T,b as ne,c as re,d as ie,f as ae,g as oe,h as se,i as ce,l as le,m as ue,n as de,o as E,p as fe,r as pe,s as me,t as he,u as ge,v as _e,y as ve}from"./queries--mGK10fL.js";import{i as ye,n as be,r as xe,t as Se}from"./mutations-BlGALvmG.js";import{t as Ce}from"./MutationTokenDialog-Dnf_rcnc.js";import{t as we}from"./ConfirmDialog-CTeMFavv.js";import{n as Te,r as Ee,t as De}from"./RouteErrorBoundary-CVabFM97.js";import{r as Oe,t as ke}from"./UniverseView-ZXAOJ0Rq.js";import{t as D}from"./RefreshIndicator-BNptNJiV.js";import{a as O,i as k,r as Ae,t as je}from"./SkipToContent-BjJE6yOo.js";import{n as Me}from"./ChartFrame-CakjKkPx.js";import{a as Ne,n as Pe,r as Fe}from"./charts-CzqC55eL.js";import{i as Ie,l as Le,n as Re,t as ze}from"./format-D7nBg2bn.js";import{t as A}from"./StatTile-CTUuhOLS.js";import{t as Be}from"./calendar-day-BxBYHfX1.js";import{t as Ve}from"./percent-text-CSk89zQF.js";import{t as He}from"./DiffViewer-BzQ7245p.js";import{SessionGate as Ue}from"./SessionGate-Bab2qO29.js";var j=e(r(),1),We=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,Ge=/^[\\/]{2}/;function Ke(e,t){return t+e.replace(/\\/g,`/`)}var qe=`popstate`;function Je(e){return typeof e==`object`&&!!e&&`pathname`in e&&`search`in e&&`hash`in e&&`state`in e&&`key`in e}function Ye(e={}){function t(e,t){let{pathname:n=`/`,search:r=``,hash:i=``}=tt(e.location.hash.substring(1));return!n.startsWith(`/`)&&!n.startsWith(`.`)&&(n=`/`+n),$e(``,{pathname:n,search:r,hash:i},t.state&&t.state.usr||null,t.state&&t.state.key||`default`)}function n(e,t){let n=e.document.querySelector(`base`),r=``;if(n&&n.getAttribute(`href`)){let t=e.location.href,n=t.indexOf(`#`);r=n===-1?t:t.slice(0,n)}return r+`#`+(typeof t==`string`?t:et(t))}function r(e,t){Xe(e.pathname.charAt(0)===`/`,`relative pathnames are not supported in hash history.push(${JSON.stringify(t)})`)}return nt(t,n,r,e)}function M(e,t){if(e===!1||e==null)throw Error(t)}function Xe(e,t){if(!e){typeof console<`u`&&console.warn(t);try{throw Error(t)}catch{}}}function Ze(){return Math.random().toString(36).substring(2,10)}function Qe(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function $e(e,t,n=null,r,i){return{pathname:typeof e==`string`?e:e.pathname,search:``,hash:``,...typeof t==`string`?tt(t):t,state:n,key:t&&t.key||r||Ze(),mask:i}}function et({pathname:e=`/`,search:t=``,hash:n=``}){return t&&t!==`?`&&(e+=t.charAt(0)===`?`?t:`?`+t),n&&n!==`#`&&(e+=n.charAt(0)===`#`?n:`#`+n),e}function tt(e){let t={};if(e){let n=e.indexOf(`#`);n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf(`?`);r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function nt(e,t,n,r={}){let{window:i=document.defaultView,v5Compat:a=!1}=r,o=i.history,s=`POP`,c=null,l=u();l??(l=0,o.replaceState({...o.state,idx:l},``));function u(){return(o.state||{idx:null}).idx}function d(){s=`POP`;let e=u(),t=e==null?null:e-l;l=e,c&&c({action:s,location:h.location,delta:t})}function f(e,t){s=`PUSH`;let r=Je(e)?e:$e(h.location,e,t);n&&n(r,e),l=u()+1;let d=Qe(r,l),f=h.createHref(r.mask||r);try{o.pushState(d,``,f)}catch(e){if(e instanceof DOMException&&e.name===`DataCloneError`)throw e;i.location.assign(f)}a&&c&&c({action:s,location:h.location,delta:1})}function p(e,t){s=`REPLACE`;let r=Je(e)?e:$e(h.location,e,t);n&&n(r,e),l=u();let i=Qe(r,l),d=h.createHref(r.mask||r);o.replaceState(i,``,d),a&&c&&c({action:s,location:h.location,delta:0})}function m(e){return rt(i,e)}let h={get action(){return s},get location(){return e(i,o)},listen(e){if(c)throw Error(`A history only accepts one active listener`);return i.addEventListener(qe,d),c=e,()=>{i.removeEventListener(qe,d),c=null}},createHref(e){return t(i,e)},createURL:m,encodeLocation(e){let t=m(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:f,replace:p,go(e){return o.go(e)}};return h}function rt(e,t,n=!1){let r=`http://localhost`;e&&(r=e.location.origin===`null`?e.location.href:e.location.origin),M(r,`No window.location.(origin|href) available to create URL`);let i=typeof t==`string`?t:et(t);return i=i.replace(/ $/,`%20`),!n&&Ge.test(i)&&(i=r+i),new URL(i,r)}function it(e,t,n=`/`){return at(e,t,n,!1)}function at(e,t,n,r,i){let a=wt((typeof t==`string`?tt(t):t).pathname||`/`,n);if(a==null)return null;let o=i??ot(e),s=null,c=Ct(a);for(let e=0;s==null&&e<o.length;++e)s=yt(o[e],c,r);return s}function ot(e){let t=st(e);return lt(t),t}function st(e,t=[],n=[],r=``,i=!1){let a=(e,a,o=i,s)=>{let c={relativePath:s===void 0?e.path||``:s,caseSensitive:e.caseSensitive===!0,childrenIndex:a,route:e};if(c.relativePath.startsWith(`/`)){if(!c.relativePath.startsWith(r)&&o)return;M(c.relativePath.startsWith(r),`Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),c.relativePath=c.relativePath.slice(r.length)}let l=Mt([r,c.relativePath]),u=n.concat(c);e.children&&e.children.length>0&&(M(e.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${l}".`),st(e.children,t,u,l,o)),(e.path!=null||e.index)&&t.push({path:l,score:_t(l,e.index),routesMeta:u.map((e,t)=>{let[n,r]=St(e.relativePath,e.caseSensitive,t===u.length-1);return{...e,matcher:n,compiledParams:r}})})};return e.forEach((e,t)=>{if(e.path===``||!e.path?.includes(`?`))a(e,t);else for(let n of ct(e.path))a(e,t,!0,n)}),t}function ct(e){let t=e.split(`/`);if(t.length===0)return[];let[n,...r]=t,i=n.endsWith(`?`),a=n.replace(/\?$/,``);if(r.length===0)return i?[a,``]:[a];let o=ct(r.join(`/`)),s=[];return s.push(...o.map(e=>e===``?a:[a,e].join(`/`))),i&&s.push(...o),s.map(t=>e.startsWith(`/`)&&t===``?`/`:t)}function lt(e){e.sort((e,t)=>e.score===t.score?vt(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)):t.score-e.score)}var ut=/^:[\w-]+$/,dt=3,ft=2,pt=1,mt=10,ht=-2,gt=e=>e===`*`;function _t(e,t){let n=e.split(`/`),r=n.length;return n.some(gt)&&(r+=ht),t&&(r+=ft),n.filter(e=>!gt(e)).reduce((e,t)=>e+(ut.test(t)?dt:t===``?pt:mt),r)}function vt(e,t){return e.length===t.length&&e.slice(0,-1).every((e,n)=>e===t[n])?e[e.length-1]-t[t.length-1]:0}function yt(e,t,n=!1){let{routesMeta:r}=e,i={},a=`/`,o=[];for(let e=0;e<r.length;++e){let s=r[e],c=e===r.length-1,l=a===`/`?t:t.slice(a.length)||`/`,u={path:s.relativePath,caseSensitive:s.caseSensitive,end:c},d=s.matcher&&s.compiledParams?xt(u,l,s.matcher,s.compiledParams):bt(u,l),f=s.route;if(!d&&c&&n&&!r[r.length-1].route.index&&(d=bt({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},l)),!d)return null;Object.assign(i,d.params),o.push({params:i,pathname:Mt([a,d.pathname]),pathnameBase:Pt(Mt([a,d.pathnameBase])),route:f}),d.pathnameBase!==`/`&&(a=Mt([a,d.pathnameBase]))}return o}function bt(e,t){typeof e==`string`&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=St(e.path,e.caseSensitive,e.end);return xt(e,t,n,r)}function xt(e,t,n,r){let i=t.match(n);if(!i)return null;let a=i[0],o=Nt(a,1),s=i.slice(1);return{params:r.reduce((e,{paramName:t,isOptional:n},r)=>{if(t===`*`){let e=s[r]||``;o=Nt(a.slice(0,a.length-e.length),1)}let i=s[r];return e[t]=n&&!i?void 0:(i||``).replace(/%2F/g,`/`),e},{}),pathname:a,pathnameBase:o,pattern:e}}function St(e,t=!1,n=!0){Xe(e===`*`||!e.endsWith(`*`)||e.endsWith(`/*`),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,`/*`)}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,`/*`)}".`);let r=[],i=`^`+e.replace(/\/*\*?$/,``).replace(/^\/*/,`/`).replace(/[\\.*+^${}|()[\]]/g,`\\$&`).replace(/\/:([\w-]+)(\?)?/g,(e,t,n,i,a)=>{if(r.push({paramName:t,isOptional:n!=null}),n){let t=a.charAt(i+e.length);return t&&t!==`/`?`/([^\\/]*)`:`(?:/([^\\/]*))?`}return`/([^\\/]+)`}).replace(/\/([\w-]+)\?(\/|$)/g,`(/$1)?$2`);return e.endsWith(`*`)?(r.push({paramName:`*`}),i+=e===`*`||e===`/*`?`(.*)$`:`(?:\\/(.+)|\\/*)$`):n?i+=`\\/*$`:e!==``&&e!==`/`&&(i+=`(?:(?=\\/|$))`),[new RegExp(i,t?void 0:`i`),r]}function Ct(e){try{return e.split(`/`).map(e=>decodeURIComponent(e).replace(/\//g,`%2F`)).join(`/`)}catch(t){return Xe(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function wt(e,t){if(t===`/`)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith(`/`)?t.length-1:t.length,r=e.charAt(n);return r&&r!==`/`?null:e.slice(n)||`/`}function Tt(e,t=`/`){let{pathname:n,search:r=``,hash:i=``}=typeof e==`string`?tt(e):e,a;return n?(n=jt(n),a=n.startsWith(`/`)||n.startsWith(`\\`)?Et(n.substring(1),`/`):Et(n,t)):a=t,{pathname:a,search:Ft(r),hash:It(i)}}function Et(e,t){let n=Nt(t).split(`/`);return e.split(`/`).forEach(e=>{e===`..`?n.length>1&&n.pop():e!==`.`&&n.push(e)}),n.length>1?n.join(`/`):`/`}function Dt(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Ot(e){return e.filter((e,t)=>t===0||e.route.path&&e.route.path.length>0)}function kt(e){let t=Ot(e);return t.map((e,n)=>n===t.length-1?e.pathname:e.pathnameBase)}function At(e,t,n,r=!1){let i;typeof e==`string`?i=tt(e):(i={...e},M(!i.pathname||!i.pathname.includes(`?`),Dt(`?`,`pathname`,`search`,i)),M(!i.pathname||!i.pathname.includes(`#`),Dt(`#`,`pathname`,`hash`,i)),M(!i.search||!i.search.includes(`#`),Dt(`#`,`search`,`hash`,i)));let a=e===``||i.pathname===``,o=a?`/`:i.pathname,s;if(o==null)s=n;else{let e=t.length-1;if(!r&&o.startsWith(`..`)){let t=o.split(`/`);for(;t[0]===`..`;)t.shift(),--e;i.pathname=t.join(`/`)}s=e>=0?t[e]:`/`}let c=Tt(i,s),l=o&&o!==`/`&&o.endsWith(`/`),u=(a||o===`.`)&&n.endsWith(`/`);return!c.pathname.endsWith(`/`)&&(l||u)&&(c.pathname+=`/`),c}var jt=e=>e.replace(/[\\/]{2,}/g,`/`),Mt=e=>jt(e.join(`/`));function Nt(e,t=0){let n=e.length;for(;n>t&&e.charCodeAt(n-1)===47;)n--;return n===e.length?e:e.slice(0,n)}var Pt=e=>Nt(e).replace(/^\/*/,`/`),Ft=e=>!e||e===`?`?``:e.startsWith(`?`)?e:`?`+e,It=e=>!e||e===`#`?``:e.startsWith(`#`)?e:`#`+e,Lt=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||``,this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function Rt(e){return e!=null&&typeof e.status==`number`&&typeof e.statusText==`string`&&typeof e.internal==`boolean`&&`data`in e}function zt(e){return Mt(e.map(e=>e.route.path).filter(Boolean))||`/`}var Bt=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;function Vt(e,t){let n=e;if(typeof n!=`string`||!We.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,i=!1;if(Bt)try{let e=new URL(window.location.href),r=Ge.test(n)?new URL(Ke(n,e.protocol)):new URL(n),a=wt(r.pathname,t);r.origin===e.origin&&a!=null?n=a+r.search+r.hash:i=!0}catch{Xe(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:i,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);var Ht=new URL(`http://localhost`);function Ut(e){if(e.createURL)return e.createURL(`/`);try{return new URL(e.createHref(`/`),Ht)}catch{return Ht}}function Wt(e,t){return e.origin===t.origin&&(e.origin!==`null`||e.protocol===t.protocol&&e.host===t.host)}function Gt(e,t){if(e.startsWith(`//`))return!0;let n=t.protocol.toLowerCase();return e.toLowerCase().startsWith(n)?t.host===``||e.slice(n.length).startsWith(`//`):!1}function Kt(e,t,n,r){let i=null;try{i=e==null?null:new URL(e,n)}catch{}let a=new URL(t,n),o=i!=null&&!Wt(i,n),s=!Wt(a,n);if(r===`reject`){if(o||s)throw Error(`External navigation is not allowed`)}else if(s&&(i==null||!Gt(e,i)||!Wt(i,a)))throw Error(`External navigation is not allowed`)}var qt=[`POST`,`PUT`,`PATCH`,`DELETE`];new Set(qt);var Jt=[`GET`,...qt];new Set(Jt);var Yt=[`about:`,`blob:`,`chrome:`,`chrome-untrusted:`,`content:`,`data:`,`devtools:`,`file:`,`filesystem:`,`javascript:`];function Xt(e){try{return Yt.includes(new URL(e).protocol)}catch{return!1}}var Zt=j.createContext(null);Zt.displayName=`DataRouter`;var Qt=j.createContext(null);Qt.displayName=`DataRouterState`;var $t=j.createContext(!1);function en(){return j.useContext($t)}var tn=j.createContext({isTransitioning:!1});tn.displayName=`ViewTransition`;var nn=j.createContext(new Map);nn.displayName=`Fetchers`;var rn=j.createContext(null);rn.displayName=`Await`;var N=j.createContext(null);N.displayName=`Navigation`;var an=j.createContext(null);an.displayName=`Location`;var on=j.createContext({outlet:null,matches:[],isDataRoute:!1});on.displayName=`Route`;var sn=j.createContext(null);sn.displayName=`RouteError`;var cn=`REACT_ROUTER_ERROR`,ln=`REDIRECT`,un=`ROUTE_ERROR_RESPONSE`;function dn(e){if(e.startsWith(`${cn}:${ln}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`&&typeof t.location==`string`&&typeof t.reloadDocument==`boolean`&&typeof t.replace==`boolean`)return t}catch{}}function fn(e){if(e.startsWith(`${cn}:${un}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t==`object`&&t&&typeof t.status==`number`&&typeof t.statusText==`string`)return new Lt(t.status,t.statusText,t.data)}catch{}}function pn(e,{relative:t}={}){M(mn(),`useHref() may be used only in the context of a <Router> component.`);let{basename:n,navigator:r}=j.useContext(N),{hash:i,pathname:a,search:o}=Sn(e,{relative:t}),s=a;return n!==`/`&&(s=a===`/`?n:Mt([n,a])),r.createHref({pathname:s,search:o,hash:i})}function mn(){return j.useContext(an)!=null}function P(){return M(mn(),`useLocation() may be used only in the context of a <Router> component.`),j.useContext(an).location}var hn=`You should call navigate() in a React.useEffect(), not when your component is first rendered.`;function gn(e){j.useContext(N).static||j.useLayoutEffect(e)}function _n(){let{isDataRoute:e}=j.useContext(on);return e?zn():vn()}function vn(){M(mn(),`useNavigate() may be used only in the context of a <Router> component.`);let e=j.useContext(Zt),{basename:t,navigator:n}=j.useContext(N),{matches:r}=j.useContext(on),{pathname:i}=P(),a=JSON.stringify(kt(r)),o=j.useRef(!1);return gn(()=>{o.current=!0}),j.useCallback((r,s={})=>{if(Xe(o.current,hn),!o.current)return;if(typeof r==`number`){n.go(r);return}let c=At(r,JSON.parse(a),i,s.relative===`path`);e==null&&t!==`/`&&(c.pathname=c.pathname===`/`?t:Mt([t,c.pathname])),Kt(typeof r==`string`?r:et(r),n.createHref(c),Ut(n),`reject`),(s.replace?n.replace:n.push)(c,s.state,s)},[t,n,a,i,e])}var yn=j.createContext(null);function bn(e){let t=j.useContext(on).outlet;return j.useMemo(()=>t&&j.createElement(yn.Provider,{value:e},t),[t,e])}function xn(){let{matches:e}=j.useContext(on);return e[e.length-1]?.params??{}}function Sn(e,{relative:t}={}){let{matches:n}=j.useContext(on),{pathname:r}=P(),i=JSON.stringify(kt(n));return j.useMemo(()=>At(e,JSON.parse(i),r,t===`path`),[e,i,r,t])}function Cn(e,t){return wn(e,t)}function wn(e,t,n){M(mn(),`useRoutes() may be used only in the context of a <Router> component.`);let{navigator:r}=j.useContext(N),{matches:i}=j.useContext(on),a=i[i.length-1],o=a?a.params:{},s=a?a.pathname:`/`,c=a?a.pathnameBase:`/`,l=a&&a.route;{let e=l&&l.path||``;Vn(s,!l||e.endsWith(`*`)||e.endsWith(`*?`),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${e}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
3
|
-
|
|
4
|
-
Please change the parent <Route path="${e}"> to <Route path="${e===`/`?`*`:`${e}/*`}">.`)}let u=P(),d;if(t){let e=typeof t==`string`?tt(t):t;M(c===`/`||e.pathname?.startsWith(c),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${c}" but pathname "${e.pathname}" was given in the \`location\` prop.`),d=e}else d=u;let f=d.pathname||`/`,p=f;if(c!==`/`){let e=c.replace(/^\//,``).split(`/`);p=`/`+f.replace(/^\//,``).split(`/`).slice(e.length).join(`/`)}let m=n&&n.state.matches.length?n.state.matches.map(e=>Object.assign(e,{route:n.manifest[e.route.id]||e.route})):it(e,{pathname:p});Xe(l||m!=null,`No routes matched location "${d.pathname}${d.search}${d.hash}" `),Xe(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,`Matched leaf route at location "${d.pathname}${d.search}${d.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let h=jn(m&&m.map(e=>Object.assign({},e,{params:Object.assign({},o,e.params),pathname:Mt([c,r.encodeLocation?r.encodeLocation(e.pathname.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathname]),pathnameBase:e.pathnameBase===`/`?c:Mt([c,r.encodeLocation?r.encodeLocation(e.pathnameBase.replace(/%/g,`%25`).replace(/\?/g,`%3F`).replace(/#/g,`%23`)).pathname:e.pathnameBase])})),i,n);return t&&h?j.createElement(an.Provider,{value:{location:{pathname:`/`,search:``,hash:``,state:null,key:`default`,mask:void 0,...d},navigationType:`POP`}},h):h}function Tn(){let e=Rn(),t=Rt(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r=`rgba(200,200,200, 0.5)`,i={padding:`0.5rem`,backgroundColor:r},a={padding:`2px 4px`,backgroundColor:r},o=null;return console.error(`Error handled by React Router default ErrorBoundary:`,e),o=j.createElement(j.Fragment,null,j.createElement(`p`,null,`💿 Hey developer 👋`),j.createElement(`p`,null,`You can provide a way better UX than this when your app throws errors by providing your own `,j.createElement(`code`,{style:a},`ErrorBoundary`),` or`,` `,j.createElement(`code`,{style:a},`errorElement`),` prop on your route.`)),j.createElement(j.Fragment,null,j.createElement(`h2`,null,`Unexpected Application Error!`),j.createElement(`h3`,{style:{fontStyle:`italic`}},t),n?j.createElement(`pre`,{style:i},n):null,o)}var En=j.createElement(Tn,null),Dn=class extends j.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!==`idle`&&e.revalidation===`idle`?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error===void 0?t.error:e.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error(`React Router caught the following error during render`,e)}render(){let e=this.state.error;if(this.context&&typeof e==`object`&&e&&`digest`in e&&typeof e.digest==`string`){let t=fn(e.digest);t&&(e=t)}let t=e===void 0?this.props.children:j.createElement(on.Provider,{value:this.props.routeContext},j.createElement(sn.Provider,{value:e,children:this.props.component}));return this.context?j.createElement(kn,{error:e},t):t}};Dn.contextType=$t;var On=new WeakMap;function kn({children:e,error:t}){let{basename:n,navigator:r}=j.useContext(N);if(typeof t==`object`&&t&&`digest`in t&&typeof t.digest==`string`){let e=dn(t.digest);if(e){let i=On.get(t);if(i)throw i;let a=Vt(e.location,n),o=a.absoluteURL||a.to;if(Kt(e.location,o,Ut(r),`allow-explicit`),Xt(o))throw Error(`Invalid redirect location`);if(Bt&&!On.get(t)){if(a.isExternal||e.reloadDocument)window.location.href=o;else{let n=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(a.to,{replace:e.replace}));throw On.set(t,n),n}}return j.createElement(`meta`,{httpEquiv:`refresh`,content:`0;url=${o}`})}}return e}function An({routeContext:e,match:t,children:n}){let r=j.useContext(Zt);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),j.createElement(on.Provider,{value:e},n)}function jn(e,t=[],n){let r=n?.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let i=e,a=r?.errors;if(a!=null){let e=i.findIndex(e=>e.route.id&&a?.[e.route.id]!==void 0);M(e>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(a).join(`,`)}`),i=i.slice(0,Math.min(i.length,e+1))}let o=!1,s=-1;if(n&&r){o=r.renderFallback;for(let e=0;e<i.length;e++){let t=i[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(s=e),t.route.id){let{loaderData:e,errors:a}=r,c=t.route.loader&&!e.hasOwnProperty(t.route.id)&&(!a||a[t.route.id]===void 0);if(t.route.lazy||c){n.isStatic&&(o=!0),i=s>=0?i.slice(0,s+1):[i[0]];break}}}}let c=n?.onError,l=r&&c?(e,t)=>{c(e,{location:r.location,params:r.matches?.[0]?.params??{},pattern:zt(r.matches),errorInfo:t})}:void 0;return i.reduceRight((e,n,c)=>{let u,d=!1,f=null,p=null;r&&(u=a&&n.route.id?a[n.route.id]:void 0,f=n.route.errorElement||En,o&&(s<0&&c===0?(Vn(`route-fallback`,!1,"No `HydrateFallback` element provided to render during initial hydration"),d=!0,p=null):s===c&&(d=!0,p=n.route.hydrateFallbackElement||null)));let m=t.concat(i.slice(0,c+1)),h=()=>{let t;return t=u?f:d?p:n.route.Component?j.createElement(n.route.Component,null):n.route.element?n.route.element:e,j.createElement(An,{match:n,routeContext:{outlet:e,matches:m,isDataRoute:r!=null},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||c===0)?j.createElement(Dn,{location:r.location,revalidation:r.revalidation,component:f,error:u,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0},onError:l}):h()},null)}function Mn(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Nn(e){let t=j.useContext(Zt);return M(t,Mn(e)),t}function Pn(e){let t=j.useContext(Qt);return M(t,Mn(e)),t}function Fn(e){let t=j.useContext(on);return M(t,Mn(e)),t}function In(e){let t=Fn(e),n=t.matches[t.matches.length-1];return M(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function Ln(){return In(`useRouteId`)}function Rn(){let e=j.useContext(sn),t=Pn(`useRouteError`),n=In(`useRouteError`);return e===void 0?t.errors?.[n]:e}function zn(){let{router:e}=Nn(`useNavigate`),t=In(`useNavigate`),n=j.useRef(!1);return gn(()=>{n.current=!0}),j.useCallback(async(r,i={})=>{Xe(n.current,hn),n.current&&(typeof r==`number`?await e.navigate(r):await e.navigate(r,{fromRouteId:t,...i}))},[e,t])}var Bn={};function Vn(e,t,n){!t&&!Bn[e]&&(Bn[e]=!0,Xe(!1,n))}j.memo(Hn);function Hn({routes:e,manifest:t,future:n,state:r,isStatic:i,onError:a}){return wn(e,void 0,{manifest:t,state:r,isStatic:i,onError:a,future:n})}function Un({to:e,replace:t,state:n,relative:r}){M(mn(),`<Navigate> may be used only in the context of a <Router> component.`);let{static:i,navigator:a}=j.useContext(N);Xe(!i,`<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.`);let{matches:o}=j.useContext(on),{pathname:s}=P(),c=_n(),l=At(e,kt(o),s,r===`path`);Kt(typeof e==`string`?e:et(e),a.createHref(l),Ut(a),`reject`);let u=JSON.stringify(l);return j.useEffect(()=>{c(JSON.parse(u),{replace:t,state:n,relative:r})},[c,u,r,t,n]),null}function Wn(e){return bn(e.context)}function F(e){M(!1,`A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.`)}function Gn({basename:e=`/`,children:t=null,location:n,navigationType:r=`POP`,navigator:i,static:a=!1,useTransitions:o}){M(!mn(),`You cannot render a <Router> inside another <Router>. You should never have more than one in your app.`);let s=e.replace(/^\/*/,`/`),c=j.useMemo(()=>({basename:s,navigator:i,static:a,useTransitions:o,future:{}}),[s,i,a,o]);typeof n==`string`&&(n=tt(n));let{pathname:l=`/`,search:u=``,hash:d=``,state:f=null,key:p=`default`,mask:m}=n,h=j.useMemo(()=>{let e=wt(l,s);return e==null?null:{location:{pathname:e,search:u,hash:d,state:f,key:p,mask:m},navigationType:r}},[s,l,u,d,f,p,r,m]);return Xe(h!=null,`<Router basename="${s}"> is not able to match the URL "${l}${u}${d}" because it does not start with the basename, so the <Router> won't render anything.`),h==null?null:j.createElement(N.Provider,{value:c},j.createElement(an.Provider,{children:t,value:h}))}function Kn({children:e,location:t}){return Cn(qn(e),t)}j.Component;function qn(e,t=[]){let n=[];return j.Children.forEach(e,(e,r)=>{if(!j.isValidElement(e))return;let i=[...t,r];if(e.type===j.Fragment){n.push.apply(n,qn(e.props.children,i));return}M(e.type===F,`[${typeof e.type==`string`?e.type:e.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),M(!e.props.index||!e.props.children,`An index route cannot have child routes.`);let a={id:e.props.id||i.join(`-`),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,middleware:e.props.middleware,loader:e.props.loader,action:e.props.action,hydrateFallbackElement:e.props.hydrateFallbackElement,HydrateFallback:e.props.HydrateFallback,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:e.props.hasErrorBoundary===!0||e.props.ErrorBoundary!=null||e.props.errorElement!=null,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=qn(e.props.children,i)),n.push(a)}),n}var Jn=`get`,Yn=`application/x-www-form-urlencoded`;function Xn(e){return typeof HTMLElement<`u`&&e instanceof HTMLElement}function Zn(e){return Xn(e)&&e.tagName.toLowerCase()===`button`}function Qn(e){return Xn(e)&&e.tagName.toLowerCase()===`form`}function $n(e){return Xn(e)&&e.tagName.toLowerCase()===`input`}function er(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function tr(e,t){return e.button===0&&(!t||t===`_self`)&&!er(e)}var nr=null;function rr(){if(nr===null)try{new FormData(document.createElement(`form`),0),nr=!1}catch{nr=!0}return nr}var ir=new Set([`application/x-www-form-urlencoded`,`multipart/form-data`,`text/plain`]);function ar(e){return e!=null&&!ir.has(e)?(Xe(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Yn}"`),null):e}function or(e,t){let n,r,i,a,o;if(Qn(e)){let o=e.getAttribute(`action`);r=o?wt(o,t):null,n=e.getAttribute(`method`)||Jn,i=ar(e.getAttribute(`enctype`))||Yn,a=new FormData(e)}else if(Zn(e)||$n(e)&&(e.type===`submit`||e.type===`image`)){let o=e.form;if(o==null)throw Error(`Cannot submit a <button> or <input type="submit"> without a <form>`);let s=e.getAttribute(`formaction`)||o.getAttribute(`action`);if(r=s?wt(s,t):null,n=e.getAttribute(`formmethod`)||o.getAttribute(`method`)||Jn,i=ar(e.getAttribute(`formenctype`))||ar(o.getAttribute(`enctype`))||Yn,a=new FormData(o,e),!rr()){let{name:t,type:n,value:r}=e;if(n===`image`){let e=t?`${t}.`:``;a.append(`${e}x`,`0`),a.append(`${e}y`,`0`)}else t&&a.append(t,r)}}else if(Xn(e))throw Error(`Cannot submit element that is not <form>, <button>, or <input type="submit|image">`);else n=Jn,r=null,i=Yn,o=e;return a&&i===`text/plain`&&(o=a,a=void 0),{action:r,method:n.toLowerCase(),encType:i,formData:a,body:o}}Object.getOwnPropertyNames(Object.prototype).sort().join(`\0`);function sr(e,t){if(e===!1||e==null)throw Error(t)}function cr(e,t,n,r){let i=typeof e==`string`?new URL(e,typeof window>`u`?`server://singlefetch/`:window.location.origin):e;return i.pathname=n?i.pathname.endsWith(`/`)?`${i.pathname}_.${r}`:`${i.pathname}.${r}`:i.pathname===`/`?`_root.${r}`:t&&wt(i.pathname,t)===`/`?`${Nt(t)}/_root.${r}`:`${Nt(i.pathname)}.${r}`,i}async function lr(e,t){if(e.id in t)return t[e.id];try{let n=await i(()=>import(e.module),[]);return t[e.id]=n,n}catch(t){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(t),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function ur(e){return e!=null&&typeof e.page==`string`}function dr(e){return e==null?!1:e.href==null?e.rel===`preload`&&typeof e.imageSrcSet==`string`&&typeof e.imageSizes==`string`:typeof e.rel==`string`&&typeof e.href==`string`}async function fr(e,t,n){return _r((await Promise.all(e.map(async e=>{let r=t.routes[e.route.id];if(r){let e=await lr(r,n);return e.links?e.links():[]}return[]}))).flat(1).filter(dr).filter(e=>e.rel===`stylesheet`||e.rel===`preload`).map(e=>e.rel===`stylesheet`?{...e,rel:`prefetch`,as:`style`}:{...e,rel:`prefetch`}))}function pr(e,t,n,r,i,a){let o=(e,t)=>!n[t]||e.route.id!==n[t].route.id,s=(e,t)=>n[t].pathname!==e.pathname||n[t].route.path?.endsWith(`*`)&&n[t].params[`*`]!==e.params[`*`];return a===`assets`?t.filter((e,t)=>o(e,t)||s(e,t)):a===`data`?t.filter((t,a)=>{let c=r.routes[t.route.id];if(!c||!c.hasLoader)return!1;if(o(t,a)||s(t,a))return!0;if(t.route.shouldRevalidate){let r=t.route.shouldRevalidate({currentUrl:new URL(i.pathname+i.search+i.hash,window.origin),currentParams:n[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:t.params,defaultShouldRevalidate:!0});if(typeof r==`boolean`)return r}return!0}):[]}function mr(e,t,{includeHydrateFallback:n}={}){return hr(e.map(e=>{let r=t.routes[e.route.id];if(!r)return[];let i=[r.module];return r.clientActionModule&&(i=i.concat(r.clientActionModule)),r.clientLoaderModule&&(i=i.concat(r.clientLoaderModule)),n&&r.hydrateFallbackModule&&(i=i.concat(r.hydrateFallbackModule)),r.imports&&(i=i.concat(r.imports)),i}).flat(1))}function hr(e){return[...new Set(e)]}function gr(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function _r(e,t){let n=new Set,r=new Set(t);return e.reduce((e,i)=>{if(t&&!ur(i)&&i.as===`script`&&i.href&&r.has(i.href))return e;let a=JSON.stringify(gr(i));return n.has(a)||(n.add(a),e.push({key:a,link:i})),e},[])}function vr(){let e=j.useContext(Zt);return sr(e,`You must render this element inside a <DataRouterContext.Provider> element`),e}function yr(){let e=j.useContext(Qt);return sr(e,`You must render this element inside a <DataRouterStateContext.Provider> element`),e}var br=j.createContext(void 0);br.displayName=`FrameworkContext`;function xr(){let e=j.useContext(br);return sr(e,`You must render this element inside a <HydratedRouter> element`),e}function Sr(e,t){let n=j.useContext(br),[r,i]=j.useState(!1),[a,o]=j.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:l,onMouseLeave:u,onTouchStart:d}=t,f=j.useRef(null);j.useEffect(()=>{if(e===`render`&&o(!0),e===`viewport`){let e=new IntersectionObserver(e=>{e.forEach(e=>{o(e.isIntersecting)})},{threshold:.5});return f.current&&e.observe(f.current),()=>{e.disconnect()}}},[e]),j.useEffect(()=>{if(r){let e=setTimeout(()=>{o(!0)},100);return()=>{clearTimeout(e)}}},[r]);let p=()=>{i(!0)},m=()=>{i(!1),o(!1)};return n?e===`intent`?[a,f,{onFocus:Cr(s,p),onBlur:Cr(c,m),onMouseEnter:Cr(l,p),onMouseLeave:Cr(u,m),onTouchStart:Cr(d,p)}]:[a,f,{}]:[!1,f,{}]}function Cr(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function wr({page:e,...t}){let n=en(),{nonce:r}=xr(),{router:i}=vr(),a=j.useMemo(()=>it(i.routes,e,i.basename),[i.routes,e,i.basename]);return a?(t.nonce==null&&r&&(t={...t,nonce:r}),n?j.createElement(Er,{page:e,matches:a,...t}):j.createElement(Dr,{page:e,matches:a,...t})):null}function Tr(e){let{manifest:t,routeModules:n}=xr(),[r,i]=j.useState([]);return j.useEffect(()=>{let r=!1;return fr(e,t,n).then(e=>{r||i(e)}),()=>{r=!0}},[e,t,n]),r}function Er({page:e,matches:t,...n}){let r=P(),{future:i}=xr(),{basename:a}=vr(),o=j.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=cr(e,a,i.v8_trailingSlashAwareDataRequests,`rsc`),o=!1,s=[];for(let e of t)typeof e.route.shouldRevalidate==`function`?o=!0:s.push(e.route.id);return o&&s.length>0&&n.searchParams.set(`_routes`,s.join(`,`)),[n.pathname+n.search]},[a,i.v8_trailingSlashAwareDataRequests,e,r,t]);return j.createElement(j.Fragment,null,o.map(e=>j.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})))}function Dr({page:e,matches:t,...n}){let r=P(),{future:i,manifest:a,routeModules:o}=xr(),{basename:s}=vr(),{loaderData:c,matches:l}=yr(),u=j.useMemo(()=>pr(e,t,l,a,r,`data`),[e,t,l,a,r]),d=j.useMemo(()=>pr(e,t,l,a,r,`assets`),[e,t,l,a,r]),f=j.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let n=new Set,l=!1;if(t.forEach(e=>{let t=a.routes[e.route.id];t&&t.hasLoader&&(!u.some(t=>t.route.id===e.route.id)&&e.route.id in c&&o[e.route.id]?.shouldRevalidate||t.hasClientLoader?l=!0:n.add(e.route.id))}),n.size===0)return[];let d=cr(e,s,i.v8_trailingSlashAwareDataRequests,`data`);return l&&n.size>0&&d.searchParams.set(`_routes`,t.filter(e=>n.has(e.route.id)).map(e=>e.route.id).join(`,`)),[d.pathname+d.search]},[s,i.v8_trailingSlashAwareDataRequests,c,r,a,u,t,e,o]),p=j.useMemo(()=>mr(d,a),[d,a]),m=Tr(d);return j.createElement(j.Fragment,null,f.map(e=>j.createElement(`link`,{key:e,rel:`prefetch`,as:`fetch`,href:e,...n})),p.map(e=>j.createElement(`link`,{key:e,rel:`modulepreload`,href:e,...n})),m.map(({key:e,link:t})=>j.createElement(`link`,{key:e,nonce:n.nonce,...t,crossOrigin:t.crossOrigin??n.crossOrigin})))}function Or(...e){return t=>{e.forEach(e=>{typeof e==`function`?e(t):e!=null&&(e.current=t)})}}j.Component;var kr=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0;try{kr&&(window.__reactRouterVersion=`7.18.4`)}catch{}function Ar({basename:e,children:t,useTransitions:n,window:r}){let i=j.useRef();i.current??=Ye({window:r,v5Compat:!0});let a=i.current,[o,s]=j.useState({action:a.action,location:a.location}),c=j.useCallback(e=>{n===!1?s(e):j.startTransition(()=>s(e))},[n]);return j.useLayoutEffect(()=>a.listen(c),[a,c]),j.createElement(Gn,{basename:e,children:t,location:o.location,navigationType:o.action,navigator:a,useTransitions:n})}var jr=j.forwardRef(function({onClick:e,discover:t=`render`,prefetch:n=`none`,relative:r,reloadDocument:i,replace:a,mask:o,state:s,target:c,to:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m){let{basename:h,navigator:g,useTransitions:_}=j.useContext(N),v=typeof l==`string`&&We.test(l),y=Vt(l,h);l=y.to;let b=pn(l,{relative:r}),x=P(),S=null;if(o){let e=At(o,[],x.mask?x.mask.pathname:`/`,!0);h!==`/`&&(e.pathname=e.pathname===`/`?h:Mt([h,e.pathname])),S=g.createHref(e)}let[C,ee,w]=Sr(n,p),te=Ir(l,{replace:a,mask:o,state:s,target:c,preventScrollReset:u,relative:r,viewTransition:d,defaultShouldRevalidate:f,useTransitions:_});function T(t){e&&e(t),t.defaultPrevented||te(t)}let ne=!(y.isExternal||i),re=j.createElement(`a`,{...p,...w,href:(ne?S:void 0)||y.absoluteURL||b,onClick:ne?T:e,ref:Or(m,ee),target:c,"data-discover":!v&&t===`render`?`true`:void 0});return C&&!v?j.createElement(j.Fragment,null,re,j.createElement(wr,{page:b})):re});jr.displayName=`Link`;var Mr=j.forwardRef(function({"aria-current":e=`page`,caseSensitive:t=!1,className:n=``,end:r=!1,style:i,to:a,viewTransition:o,children:s,...c},l){let u=Sn(a,{relative:c.relative}),d=P(),f=j.useContext(Qt),{navigator:p,basename:m}=j.useContext(N),h=f!=null&&Vr(u)&&o===!0,g=p.encodeLocation?p.encodeLocation(u).pathname:u.pathname,_=d.pathname,v=f&&f.navigation&&f.navigation.location?f.navigation.location.pathname:null;t||(_=_.toLowerCase(),v=v?v.toLowerCase():null,g=g.toLowerCase()),v&&m&&(v=wt(v,m)||v);let y=g!==`/`&&g.endsWith(`/`)?g.length-1:g.length,b=_===g||!r&&_.startsWith(g)&&_.charAt(y)===`/`,x=v!=null&&(v===g||!r&&v.startsWith(g)&&v.charAt(g.length)===`/`),S={isActive:b,isPending:x,isTransitioning:h},C=b?e:void 0,ee;ee=typeof n==`function`?n(S):[n,b?`active`:null,x?`pending`:null,h?`transitioning`:null].filter(Boolean).join(` `);let w=typeof i==`function`?i(S):i;return j.createElement(jr,{...c,"aria-current":C,className:ee,ref:l,style:w,to:a,viewTransition:o},typeof s==`function`?s(S):s)});Mr.displayName=`NavLink`;var Nr=j.forwardRef(({discover:e=`render`,fetcherKey:t,navigate:n,reloadDocument:r,replace:i,state:a,method:o=Jn,action:s,onSubmit:c,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f,...p},m)=>{let{useTransitions:h}=j.useContext(N),g=zr(),_=Br(s,{relative:l}),v=o.toLowerCase()===`get`?`get`:`post`,y=typeof s==`string`&&We.test(s);return j.createElement(`form`,{ref:m,method:v,action:_,onSubmit:r?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let r=e.nativeEvent.submitter,s=r?.getAttribute(`formmethod`)||o,p=()=>g(r||e.currentTarget,{fetcherKey:t,method:s,navigate:n,replace:i,state:a,relative:l,preventScrollReset:u,viewTransition:d,defaultShouldRevalidate:f});h&&n!==!1?j.startTransition(()=>p()):p()},...p,"data-discover":!y&&e===`render`?`true`:void 0})});Nr.displayName=`Form`;function Pr(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Fr(e){let t=j.useContext(Zt);return M(t,Pr(e)),t}function Ir(e,{target:t,replace:n,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c,useTransitions:l}={}){let u=_n(),d=P(),f=Sn(e,{relative:o});return j.useCallback(p=>{if(tr(p,t)){p.preventDefault();let t=n===void 0?et(d)===et(f):n,m=()=>u(e,{replace:t,mask:r,state:i,preventScrollReset:a,relative:o,viewTransition:s,defaultShouldRevalidate:c});l?j.startTransition(()=>m()):m()}},[d,u,f,n,r,i,t,e,a,o,s,c,l])}var Lr=0,Rr=()=>`__${String(++Lr)}__`;function zr(){let{router:e}=Fr(`useSubmit`),{basename:t}=j.useContext(N),n=Ln(),r=e.fetch,i=e.navigate;return j.useCallback(async(e,a={})=>{let{action:o,method:s,encType:c,formData:l,body:u}=or(e,t);if(a.navigate===!1){let e=a.fetcherKey||Rr();await r(e,n,a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,flushSync:a.flushSync})}else await i(a.action||o,{defaultShouldRevalidate:a.defaultShouldRevalidate,preventScrollReset:a.preventScrollReset,formData:l,body:u,formMethod:a.method||s,formEncType:a.encType||c,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[r,i,t,n])}function Br(e,{relative:t}={}){let{basename:n}=j.useContext(N),r=j.useContext(on);M(r,`useFormAction must be used inside a RouteContext`);let[i]=r.matches.slice(-1),a={...Sn(e||`.`,{relative:t})},o=P();if(e==null){a.search=o.search;let e=new URLSearchParams(a.search),t=e.getAll(`index`);if(t.some(e=>e===``)){e.delete(`index`),t.filter(e=>e).forEach(t=>e.append(`index`,t));let n=e.toString();a.search=n?`?${n}`:``}}return(!e||e===`.`)&&i.route.index&&(a.search=a.search?a.search.replace(/^\?/,`?index&`):`?index`),n!==`/`&&(a.pathname=a.pathname===`/`?n:Mt([n,a.pathname])),et(a)}function Vr(e,{relative:t}={}){let n=j.useContext(tn);M(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Fr(`useViewTransitionState`),i=Sn(e,{relative:t});if(!n.isTransitioning)return!1;let a=wt(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=wt(n.nextLocation.pathname,r)||n.nextLocation.pathname;return bt(i.pathname,o)!=null||bt(i.pathname,a)!=null}var Hr=[{id:`overview`,label:`Overview`,leaves:[{path:`/overview`,label:`Fleet Dashboard`,description:`Repos, activity, runs, swarms, MCP health, genome, and daemon status at a glance.`,implemented:!0},{path:`/agent-os`,label:`Agent OS`,description:`Authenticated, observation-only decision spine for capability runway and value bets.`,implemented:!0},{path:`/universe`,label:`Universe`,description:`Compare experiments, follow variant lineages, and inspect the retained population.`,implemented:!0}]},{id:`journal`,label:`Journal`,leaves:[{path:`/journal`,label:`Work Journal`,description:`Chronological, filterable, scrubable record of runs, merges, judge verdicts, and daemon ticks — with live streaming into any in-progress run.`,implemented:!0}]},{id:`work`,label:`Work`,leaves:[{path:`/work/runs`,label:`Runs`,description:`Dispatched goal runs and their token burn.`,implemented:!0},{path:`/work/swarms`,label:`Swarms`,description:`Multi-task DAG runs with live burndown.`,implemented:!0}]},{id:`inbox`,label:`Inbox`,leaves:[{path:`/inbox`,label:`Proposals`,description:`Review, filter, and approve/reject proposals — including history (rejected/approved).`,implemented:!0}]},{id:`control`,label:`Control`,leaves:[{path:`/control/daemon`,label:`Daemon`,description:`Autonomous operator state, spend, and direction mode.`,implemented:!0},{path:`/control/fleet`,label:`Fleet`,description:`Queue depth, lease health, and the kill switch.`,implemented:!0},{path:`/control/security`,label:`Security`,description:`Supply-chain / binshield findings from the cached backlog.`,implemented:!0}]},{id:`intelligence`,label:`Intelligence`,leaves:[{path:`/intelligence/pulse`,label:`Pulse`,description:`Activity rollups over the dashboard window.`,implemented:!0},{path:`/intelligence/genome`,label:`Genome`,description:`Cross-repo knowledge search and recall.`,implemented:!0},{path:`/intelligence/production`,label:`Production`,description:`Ships-per-day, judge verdicts, auto-merges.`,implemented:!0}]},{id:`portfolio`,label:`Portfolio`,leaves:[{path:`/portfolio`,label:`Portfolio`,description:`Org-level roll-up across enrolled repos.`,implemented:!0}]},{id:`goals`,label:`Goals`,leaves:[{path:`/goals`,label:`Goals`,description:`Active goals and milestone progress.`,implemented:!0}]}],Ur=Hr.flatMap(e=>e.leaves),Wr={sidebar:`_sidebar_vbjva_1`,brand:`_brand_vbjva_11`,brandMark:`_brandMark_vbjva_19`,group:`_group_vbjva_23`,groupLabel:`_groupLabel_vbjva_27`,leaves:`_leaves_vbjva_37`,link:`_link_vbjva_43`,active:`_active_vbjva_60`,soon:`_soon_vbjva_66`},I=t();function Gr(){return(0,I.jsxs)(`nav`,{className:Wr.sidebar,"aria-label":`Primary`,children:[(0,I.jsxs)(`div`,{className:Wr.brand,children:[(0,I.jsx)(`span`,{className:Wr.brandMark,"aria-hidden":`true`,children:`▲`}),(0,I.jsx)(`span`,{className:Wr.brandName,children:`ashlr`})]}),Hr.map(e=>(0,I.jsxs)(`div`,{className:Wr.group,children:[(0,I.jsx)(`h2`,{className:Wr.groupLabel,children:e.label}),(0,I.jsx)(`ul`,{className:Wr.leaves,children:e.leaves.map(e=>(0,I.jsx)(`li`,{children:(0,I.jsxs)(Mr,{to:e.path,className:({isActive:e})=>`${Wr.link} ${e?Wr.active:``}`,children:[e.label,e.implemented?null:(0,I.jsx)(`span`,{className:Wr.soon,children:`soon`})]})},e.path))})]},e.id))]})}var Kr=18e4,qr=72e5,Jr=864e5;function Yr(e){let t=e.toLowerCase();return t.includes(`proposal`)||t.includes(`inbox`)?`/inbox`:t.includes(`security`)||t.includes(`audit`)?`/control/security`:t.includes(`evidence`)||t.includes(`fleet`)||t.includes(`queue`)?`/control/fleet`:`/control/daemon`}function Xr(e){let t=[],n=Date.now();for(let r of e.fleet?.nextActions??[])t.push({id:`next-action-${r.id}`,category:`action-required`,severity:r.priority,title:r.label,detail:r.detail,ts:new Date(n).toISOString(),actionHref:Yr(r.id),actionLabel:`Inspect`});let r=e.fleet?.autonomousShipReadiness;r&&(r.verdict===`blocked`&&r.topBlocker?t.push({id:`readiness-blocked-${r.topBlocker.id}`,category:`readiness`,severity:r.topBlocker.severity,title:`Autonomous readiness is blocked`,detail:r.topBlocker.detail,ts:r.freshness.generatedAt,actionHref:`/control/fleet`,actionLabel:`Inspect fleet`}):r.verdict===`unknown`&&t.push({id:`readiness-unknown`,category:`readiness`,severity:`medium`,title:`Autonomous readiness is unknown`,detail:`Fresh, authoritative state is required before autonomous operation can be treated as clear.`,ts:r.freshness.generatedAt,actionHref:`/control/fleet`,actionLabel:`Inspect fleet`}));let i=e.control?.security;if(i?.available){if(i.counts.critical>0){let e=i.findings.find(e=>e.severity===`critical`);t.push({id:`security-critical`,category:`security`,severity:`critical`,title:`${i.counts.critical} critical security finding${i.counts.critical===1?``:`s`}`,detail:e?`${e.repo}: ${e.title}`:`See the security backlog for details.`,ts:new Date(n).toISOString(),actionHref:`/control/security`,actionLabel:`Review findings`})}else if(i.counts.high>0){let e=i.findings.find(e=>e.severity===`high`);t.push({id:`security-high`,category:`security`,severity:`high`,title:`${i.counts.high} high-severity security finding${i.counts.high===1?``:`s`}`,detail:e?`${e.repo}: ${e.title}`:`See the security backlog for details.`,ts:new Date(n).toISOString(),actionHref:`/control/security`,actionLabel:`Review findings`})}}for(let r of e.control?.limits??[])r.standing===`over`?t.push({id:`budget-over-${r.backend}-${r.window}`,category:`budget`,severity:`high`,title:`${r.backend} is over its ${r.window} limit`,detail:`${r.used.toLocaleString()} / ${r.max.toLocaleString()} used.`,ts:new Date(n).toISOString(),actionHref:`/control/daemon`,actionLabel:`Review usage`}):r.standing===`warn`&&t.push({id:`budget-warn-${r.backend}-${r.window}`,category:`budget`,severity:`medium`,title:`${r.backend} is approaching its ${r.window} limit`,detail:`${r.used.toLocaleString()} / ${r.max.toLocaleString()} used.`,ts:new Date(n).toISOString(),actionHref:`/control/daemon`,actionLabel:`Review usage`});let a=e.control?.daemon;if(a&&(a.sourceQuality.sourceState!==`healthy`||a.sourceQuality.complete===!1)){let e=a.sourceQuality.reason;t.push({id:`daemon-health-degraded`,category:`daemon-health`,severity:e===`missing`||e===`unavailable`?`high`:`medium`,title:`Daemon state cannot be confirmed`,detail:e?`Source: ${e}.`:`The daemon state source is degraded or incomplete.`,ts:new Date(n).toISOString(),actionHref:`/control/daemon`,actionLabel:`Inspect daemon`,sourceQuality:a.sourceQuality})}if(e.inbox&&e.inbox.pending>0){let r=e.inbox.proposals.reduce((e,t)=>{let n=new Date(t.createdAt).getTime();return e===null||n<e?n:e},null),i=r===null?0:n-r,a=i>qr?`high`:`medium`;t.push({id:`proposal-backlog`,category:`proposal`,severity:a,title:`${e.inbox.pending} proposal${e.inbox.pending===1?``:`s`} awaiting review`,detail:i>qr?`Oldest has been waiting ${Math.round(i/36e5)}h.`:`Approve, reject, or leave for autonomous handling per policy.`,ts:r===null?new Date(n).toISOString():new Date(r).toISOString(),actionHref:`/inbox`,actionLabel:`Open inbox`})}for(let r of e.runs??[]){if(r.status===`failed`||r.status===`aborted`){if(n-new Date(r.updatedAt).getTime()>Jr)continue;t.push({id:`run-failed-${r.id}`,category:`run`,severity:r.status===`failed`?`high`:`medium`,title:`Run ${r.status}: ${r.goal}`,detail:r.result??r.terminationReason??`Run ${r.id} ${r.status}.`,ts:r.updatedAt,actionHref:`/work/runs/${r.id}`,actionLabel:`Open run`});continue}if(r.status===`running`){let e=n-new Date(r.updatedAt).getTime();e>Kr&&t.push({id:`run-stalled-${r.id}`,category:`run`,severity:`medium`,title:`No update from a running run in ${Math.round(e/6e4)}m`,detail:r.goal,ts:r.updatedAt,actionHref:`/work/runs/${r.id}`,actionLabel:`Watch live`})}}return t}function Zr(e){let t={critical:0,high:1,medium:2,low:3,info:4};return[...e].sort((e,n)=>{let r=t[e.severity]-t[n.severity];return r===0?new Date(n.ts).getTime()-new Date(e.ts).getTime():r})}var Qr=`ashlr.notifications.mutedCategories.v1`,$r=`ashlr.notifications.desktopEnabled.v1`;function ei(){try{let e=localStorage.getItem(Qr);if(!e)return new Set;let t=JSON.parse(e);if(Array.isArray(t))return new Set(t)}catch{}return new Set}function ti(e){try{localStorage.setItem(Qr,JSON.stringify([...e]))}catch{}}function ni(){try{return localStorage.getItem($r)===`1`}catch{return!1}}function ri(){return typeof Notification>`u`?`unsupported`:Notification.permission}var ii=ei(),ai=[],oi=!1,si=ni(),ci=new Set,li={items:[],panelOpen:!1,mutedCategories:[...ii],desktopEnabled:si,desktopPermission:ri()},ui=new Set;function di(){for(let e of ui)e()}function fi(){li={items:Zr(ai.filter(e=>!ii.has(e.category))),panelOpen:oi,mutedCategories:[...ii],desktopEnabled:si,desktopPermission:ri()},di()}function pi(e){return ui.add(e),()=>ui.delete(e)}function mi(){return li}function hi(e){let t=new Set(ai.map(e=>e.id));if(ai=e,si&&ri()===`granted`){for(let n of e)if(!ii.has(n.category)&&(n.severity===`critical`||n.severity===`high`)&&!(t.has(n.id)||ci.has(n.id))){ci.add(n.id);try{new Notification(n.title,{body:n.detail,tag:n.id})}catch{}}}for(let t of e)ci.add(t.id);fi()}function gi(){oi=!0,fi()}function _i(){oi=!1,fi()}function vi(){oi=!oi,fi()}function yi(e){return ii.has(e)}function bi(e,t){t?ii.add(e):ii.delete(e),ti(ii),fi()}async function xi(){if(typeof Notification>`u`)return`unsupported`;let e=Notification.permission;e==="default"&&(e=await Notification.requestPermission()),si=e===`granted`;try{localStorage.setItem($r,si?`1`:`0`)}catch{}return fi(),e}function Si(){si=!1;try{localStorage.setItem($r,`0`)}catch{}fi()}function Ci(){return(0,j.useSyncExternalStore)(pi,mi,mi)}var wi={bell:`_bell_c1uhc_1`,badge:`_badge_c1uhc_25`,badgeUrgent:`_badgeUrgent_c1uhc_41`};function Ti(){let{items:e}=Ci(),t=e.filter(e=>e.severity===`critical`||e.severity===`high`).length,n=e.length,r=(0,j.useRef)(t),[i,a]=(0,j.useState)(``);return(0,j.useEffect)(()=>{if(t>r.current){let e=t-r.current;a(`${e} new urgent notification${e===1?``:`s`}, ${t} urgent total.`)}r.current=t},[t]),(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`button`,{type:`button`,className:wi.bell,onClick:vi,"aria-haspopup":`dialog`,"aria-label":n===0?`Notifications, none open`:`Notifications, ${n} open, ${t} urgent`,children:[(0,I.jsx)(`span`,{"aria-hidden":`true`,children:`🔔`}),n>0?(0,I.jsx)(`span`,{className:`${wi.badge} ${t>0?wi.badgeUrgent:``}`,"aria-hidden":`true`,children:n>99?`99+`:n}):null]}),(0,I.jsx)(`div`,{"aria-live":`polite`,className:`visually-hidden`,children:i})]})}function Ei(e){switch(e){case`critical`:return`danger`;case`high`:return`warning`;case`medium`:return`running`;case`low`:return`neutral`;case`info`:return`info`}}var Di={"action-required":`Action required`,readiness:`Autonomous readiness`,security:`Security`,budget:`Budget & limits`,"daemon-health":`Daemon health`,proposal:`Proposals`,run:`Runs`,"log-source":`Log source`},Oi={item:`_item_1gxz9_1`,top:`_top_1gxz9_15`,category:`_category_1gxz9_21`,time:`_time_1gxz9_26`,title:`_title_1gxz9_32`,detail:`_detail_1gxz9_39`,actions:`_actions_1gxz9_45`,actionLink:`_actionLink_1gxz9_52`,muteBtn:`_muteBtn_1gxz9_58`};function ki(e){let t=Math.max(0,Math.round((Date.now()-new Date(e).getTime())/1e3));if(t<5)return`just now`;if(t<60)return`${t}s ago`;let n=Math.round(t/60);if(n<60)return`${n}m ago`;let r=Math.round(n/60);return r<48?`${r}h ago`:`${Math.round(r/24)}d ago`}function Ai({item:e}){let t=yi(e.category);return(0,I.jsxs)(`article`,{className:Oi.item,"data-focus-key":`notification-${e.id}`,children:[(0,I.jsxs)(`div`,{className:Oi.top,children:[(0,I.jsx)(S,{status:e.severity,tone:Ei(e.severity),children:e.severity.toUpperCase()}),(0,I.jsx)(`span`,{className:Oi.category,children:Di[e.category]}),(0,I.jsx)(`span`,{className:Oi.time,title:new Date(e.ts).toLocaleString(),children:ki(e.ts)})]}),(0,I.jsx)(`h3`,{className:Oi.title,children:e.title}),(0,I.jsx)(`p`,{className:Oi.detail,children:e.sourceQuality?(0,I.jsx)(x,{quality:e.sourceQuality,label:e.title,children:e.detail}):e.detail}),(0,I.jsxs)(`div`,{className:Oi.actions,children:[e.actionHref?(0,I.jsx)(`a`,{className:Oi.actionLink,href:`#${e.actionHref}`,"data-focus-key":`notification-${e.id}-action`,children:e.actionLabel??`Open`}):null,(0,I.jsx)(`button`,{type:`button`,className:Oi.muteBtn,onClick:()=>bi(e.category,!t),"aria-pressed":t,children:t?`Unmute ${Di[e.category]}`:`Mute ${Di[e.category]}`})]})]})}function ji(){let e=d(pe),t=d(me),n=d(_e),r=d(ie),i=e.data,a=t.data,o=n.data,s=r.data;(0,j.useEffect)(()=>{hi(Xr({control:i,fleet:a,runs:o,inbox:s}))},[i,a,o,s])}var Mi={drawer:`_drawer_itt3q_1`,titleRow:`_titleRow_itt3q_16`,closeBtn:`_closeBtn_itt3q_23`,header:`_header_itt3q_37`,desktopToggle:`_desktopToggle_itt3q_42`,clear:`_clear_itt3q_57`,list:`_list_itt3q_66`,journalLink:`_journalLink_itt3q_77`};function Ni(){ji();let{items:e,panelOpen:t,desktopEnabled:n,desktopPermission:r}=Ci(),i=(0,j.useRef)(null);async function a(){n?Si():await xi()}return(0,I.jsxs)(v,{open:t,onClose:_i,titleId:`notification-center-title`,title:(0,I.jsxs)(`span`,{className:Mi.titleRow,children:[(0,I.jsx)(`span`,{children:`Notifications`}),(0,I.jsx)(`button`,{type:`button`,ref:i,className:Mi.closeBtn,onClick:_i,"aria-label":`Close notifications`,children:`×`})]}),widthClassName:Mi.drawer,initialFocusRef:i,children:[(0,I.jsx)(`div`,{className:Mi.header,children:(0,I.jsx)(`button`,{type:`button`,className:Mi.desktopToggle,onClick:()=>void a(),disabled:r===`unsupported`||r===`denied`,children:r===`unsupported`?`Desktop alerts not supported in this browser`:r===`denied`?`Desktop alerts blocked in browser settings`:n?`🔔 Desktop alerts on`:`🔕 Desktop alerts off — enable`})}),e.length===0?(0,I.jsxs)(`div`,{className:Mi.clear,children:[(0,I.jsx)(`strong`,{children:`Nothing needs you right now.`}),(0,I.jsx)(`span`,{children:`The fleet is operating within its observed authority.`})]}):(0,I.jsx)(`ul`,{className:Mi.list,children:e.map(e=>(0,I.jsx)(`li`,{children:(0,I.jsx)(Ai,{item:e})},e.id))}),(0,I.jsx)(`a`,{href:`#/journal`,className:Mi.journalLink,onClick:_i,children:`See full history in the Work Journal →`})]})}var Pi={topbar:`_topbar_nwlse_1`,paletteTrigger:`_paletteTrigger_nwlse_12`,kbd:`_kbd_nwlse_32`,actions:`_actions_nwlse_41`,lockedIndicator:`_lockedIndicator_nwlse_47`,lockBtn:`_lockBtn_nwlse_52`,themeBtn:`_themeBtn_nwlse_60`};function Fi({onOpenPalette:e}){let{theme:t,cycle:n}=u(),r=l();return(0,I.jsxs)(`header`,{className:Pi.topbar,children:[(0,I.jsxs)(`button`,{type:`button`,className:Pi.paletteTrigger,onClick:e,children:[(0,I.jsx)(`span`,{children:`Search or run a command`}),(0,I.jsx)(`kbd`,{className:Pi.kbd,children:`⌘K`})]}),(0,I.jsxs)(`div`,{className:Pi.actions,children:[(0,I.jsx)(Ti,{}),r.hasHold?(0,I.jsx)(`button`,{type:`button`,className:Pi.lockBtn,onClick:r.clear,title:`Lock actions now`,children:`🔓 Unlocked`}):(0,I.jsx)(`span`,{className:Pi.lockedIndicator,title:`Actions require the dispatch token`,children:`🔒 Locked`}),(0,I.jsx)(`button`,{type:`button`,className:Pi.themeBtn,onClick:n,"aria-label":`Theme: ${t}`,children:t===`system`?`🖥️`:t===`light`?`☀️`:`🌙`})]}),(0,I.jsx)(Ni,{})]})}var Ii=e(n(),1),Li=Ur.map(e=>({id:`nav:${e.path}`,title:e.label,subtitle:e.description,group:`Navigate`,run:t=>t(e.path)})),Ri=[{id:`action:pause-fleet`,title:`Pause fleet`,subtitle:`Engage the fleet kill switch`,group:`Actions`,keywords:[`stop`,`kill`,`halt`],requiresConfirm:{title:`Pause the fleet?`,body:`This engages the global kill switch. Autonomous dispatch halts fleet-wide until explicitly resumed.`,confirmLabel:`Yes, pause`},requiresMutationToken:!0,run:async()=>{await be()}},{id:`action:resume-fleet`,title:`Resume fleet`,subtitle:`Clear the fleet kill switch`,group:`Actions`,keywords:[`start`,`unpause`],requiresConfirm:{title:`Resume the fleet?`,body:`This clears the global kill switch. Autonomous dispatch will resume across the fleet.`,confirmLabel:`Yes, resume`},requiresMutationToken:!0,run:async()=>{await ye()}},{id:`action:open-notifications`,title:`Open notification centre`,subtitle:`What needs you right now, ranked by severity`,group:`Actions`,keywords:[`alerts`,`attention`,`bell`,`needs you`],run:()=>{gi()}},{id:`action:toggle-theme`,title:`Toggle theme`,subtitle:`Cycle system → light → dark`,group:`Actions`,keywords:[`dark mode`,`light mode`,`appearance`,`dark`,`light`],run:()=>{p()}},{id:`action:open-journal-today`,title:`Open journal — today`,subtitle:`Work journal filtered to today`,group:`Actions`,keywords:[`journal`,`today`,`log`,`history`],run:e=>{e(`/journal`,{state:{windowToday:!0}})}}],zi=[...Li,...Ri];function Bi(){s(_e.key,_e.fetch),s(le.key,le.fetch);let e=ge({status:`all`,limit:500});s(e.key,e.fetch)}var Vi=5,Hi=2;function Ui(e,t){return e.toLowerCase().includes(t)}function Wi(e){let t=e.trim().toLowerCase();if(t.length<Hi)return[];let n=[],r=a(_e.key).data??[];for(let e of r){if(n.length>=Vi)break;(Ui(e.id,t)||Ui(e.goal,t))&&n.push({id:`jump:run:${e.id}`,title:e.goal,subtitle:`Run ${e.id} · ${e.status}`,group:`Jump to`,run:t=>t(`/work/runs/${e.id}`)})}let i=a(le.key).data??[],o=0;for(let e of i){if(o>=Vi)break;(Ui(e.id,t)||Ui(e.objective,t))&&(o++,n.push({id:`jump:goal:${e.id}`,title:e.objective,subtitle:`Goal ${e.id} · ${e.status}`,group:`Jump to`,run:e=>e(`/goals`)}))}let s=ge({status:`all`,limit:500}).key,c=a(s).data?.proposals??[],l=0;for(let e of c){if(l>=Vi)break;(Ui(e.id,t)||Ui(e.title,t))&&(l++,n.push({id:`jump:proposal:${e.id}`,title:e.title,subtitle:`Proposal ${e.id} · ${e.status}`,group:`Jump to`,run:t=>t(`/inbox/${encodeURIComponent(e.id)}`)}))}return n}var Gi=/^\/inbox\/([^/]+)$/;function Ki(e){let t=Gi.exec(e);if(!t)return[];let n=decodeURIComponent(t[1]),r=a(`proposal-detail-${n}`).data;return!r||r.status!==`pending`?[]:[{id:`action:approve-proposal:${n}`,title:`Approve "${r.title}"`,subtitle:`Writes the diff to disk and dispatches it`,group:`Actions`,keywords:[`approve`,`ship`,`proposal`],requiresConfirm:{title:`Approve this proposal?`,body:`"${r.title}" will be applied. This writes the diff to disk and dispatches it.`,confirmLabel:`Approve`},requiresMutationToken:!0,run:async()=>{await Se(n)}},{id:`action:reject-proposal:${n}`,title:`Reject "${r.title}"`,subtitle:`Cannot be undone`,group:`Actions`,keywords:[`reject`,`decline`,`proposal`],requiresConfirm:{title:`Reject this proposal?`,body:`"${r.title}" will be rejected. This cannot be undone.`,confirmLabel:`Reject`,destructive:!0},requiresMutationToken:!0,run:async()=>{await xe(n)}}]}function qi(e,t=[]){let n=e.trim().toLowerCase(),r=[...t,...zi];return[...n?r.filter(e=>{let t=[e.title,e.subtitle??``,...e.keywords??[]].join(` `).toLowerCase();return n.split(/\s+/).every(e=>t.includes(e))}):r,...Wi(e)]}var Ji={backdrop:`_backdrop_1odjm_1`,panel:`_panel_1odjm_12`,input:`_input_1odjm_24`,list:`_list_1odjm_37`,item:`_item_1odjm_42`,active:`_active_1odjm_51`,itemTitle:`_itemTitle_1odjm_55`,itemSubtitle:`_itemSubtitle_1odjm_61`,itemGroup:`_itemGroup_1odjm_67`,empty:`_empty_1odjm_75`};function Yi(e){(0,j.useEffect)(()=>{function t(t){(t.metaKey||t.ctrlKey)&&t.key.toLowerCase()===`k`&&(t.preventDefault(),e(!0))}return document.addEventListener(`keydown`,t),()=>document.removeEventListener(`keydown`,t)},[e])}function Xi({open:e,onClose:t}){let[n,r]=(0,j.useState)(``),[i,a]=(0,j.useState)(0),[o,s]=(0,j.useState)(null),[l,u]=(0,j.useState)(!1),[d,f]=(0,j.useState)(!1),p=(0,j.useRef)(null),m=(0,j.useId)(),h=_n(),g=P(),_=Ee(),v=(0,j.useMemo)(()=>e?Ki(g.pathname):[],[e,g.pathname]),y=(0,j.useMemo)(()=>qi(n,v),[n,v]);(0,j.useEffect)(()=>{if(!e)return;let t=document.activeElement;r(``),a(0),Bi();let n=requestAnimationFrame(()=>p.current?.focus());return()=>{cancelAnimationFrame(n),t?.focus()}},[e]),(0,j.useEffect)(()=>{a(0)},[n]),(0,j.useEffect)(()=>{a(e=>Math.min(e,Math.max(y.length-1,0)))},[y.length]);async function b(e){try{await e.run((e,t)=>h(e,t))}catch(e){_.show(e instanceof Error?e.message:`Command failed.`,`danger`)}finally{s(null)}}function x(e){if(t(),e.requiresConfirm){s(e),u(!0);return}if(e.requiresMutationToken&&!c()){s(e),f(!0);return}b(e)}function S(){u(!1),o&&(o.requiresMutationToken&&!c()?f(!0):b(o))}function C(){u(!1),s(null)}function ee(e){if(e.key===`Escape`){t();return}if(e.key===`Tab`){e.preventDefault();return}if(e.key===`ArrowDown`)e.preventDefault(),a(e=>Math.min(e+1,y.length-1));else if(e.key===`ArrowUp`)e.preventDefault(),a(e=>Math.max(e-1,0));else if(e.key===`Enter`){e.preventDefault();let t=y[i];t&&x(t)}}return(0,I.jsxs)(I.Fragment,{children:[e?(0,Ii.createPortal)((0,I.jsx)(`div`,{className:Ji.backdrop,onMouseDown:e=>e.target===e.currentTarget&&t(),children:(0,I.jsxs)(`div`,{className:Ji.panel,role:`dialog`,"aria-modal":`true`,"aria-label":`Command palette`,children:[(0,I.jsx)(`input`,{ref:p,className:Ji.input,value:n,onChange:e=>r(e.target.value),onKeyDown:ee,placeholder:`Navigate or run a command…`,role:`combobox`,"aria-expanded":`true`,"aria-controls":m,"aria-activedescendant":y[i]?`cmd-${y[i].id}`:void 0,autoComplete:`off`}),(0,I.jsx)(`ul`,{id:m,role:`listbox`,className:Ji.list,children:y.length===0?(0,I.jsx)(`li`,{className:Ji.empty,children:`No matching commands.`}):y.map((e,t)=>(0,I.jsxs)(`li`,{id:`cmd-${e.id}`,role:`option`,"aria-selected":t===i,className:`${Ji.item} ${t===i?Ji.active:``}`,onMouseEnter:()=>a(t),onMouseDown:t=>{t.preventDefault(),x(e)},children:[(0,I.jsx)(`span`,{className:Ji.itemTitle,children:e.title}),e.subtitle?(0,I.jsx)(`span`,{className:Ji.itemSubtitle,children:e.subtitle}):null,(0,I.jsx)(`span`,{className:Ji.itemGroup,children:e.group})]},e.id))})]})}),document.body):null,o?.requiresConfirm?(0,I.jsx)(we,{open:l,onClose:C,title:o.requiresConfirm.title,body:o.requiresConfirm.body,confirmLabel:o.requiresConfirm.confirmLabel,destructive:o.requiresConfirm.destructive,onConfirm:S}):null,(0,I.jsx)(Ce,{open:d,onClose:()=>{f(!1),s(null)},onUnlocked:()=>{let e=o;f(!1),s(null),e&&b(e)},reason:o?`"${o.title}" requires the dispatch token.`:void 0})]})}var Zi={shell:`_shell_2db09_1`,body:`_body_2db09_9`,main:`_main_2db09_17`};function Qi(){let e=(0,j.useRef)(null),t=P(),[n,r]=(0,j.useState)(!1);return Oe(t.pathname,e),Yi(r),(0,I.jsxs)(`div`,{className:Zi.shell,children:[(0,I.jsx)(Gr,{}),(0,I.jsxs)(`div`,{className:Zi.body,children:[(0,I.jsx)(Fi,{onOpenPalette:()=>r(!0)}),(0,I.jsx)(`main`,{ref:e,className:Zi.main,id:`main-content`,tabIndex:-1,children:(0,I.jsx)(De,{resetKey:t.pathname,children:(0,I.jsx)(Wn,{})})})]}),(0,I.jsx)(Xi,{open:n,onClose:()=>r(!1)})]})}var $i={wrap:`_wrap_152mr_1`,title:`_title_152mr_6`,description:`_description_152mr_13`,note:`_note_152mr_19`};function ea({title:e,description:t}){return(0,I.jsxs)(`div`,{className:$i.wrap,children:[(0,I.jsx)(`h1`,{className:$i.title,children:e}),(0,I.jsx)(`p`,{className:$i.description,children:t}),(0,I.jsx)(`p`,{className:$i.note,children:`Not built yet — this route, its nav entry, and its ⌘K command all already work.`})]})}var ta={grid:`_grid_1exd8_1`,stat:`_stat_1exd8_7`,statLabel:`_statLabel_1exd8_17`,statValue:`_statValue_1exd8_24`,statCaption:`_statCaption_1exd8_30`};function na(){return(0,I.jsx)(Ae,{count:6})}function ra({label:e,value:t,caption:n}){return(0,I.jsxs)(`div`,{className:ta.stat,children:[(0,I.jsx)(`span`,{className:ta.statLabel,children:e}),(0,I.jsx)(`span`,{className:ta.statValue,children:t}),n?(0,I.jsx)(`span`,{className:ta.statCaption,children:n}):null]})}function ia({snapshot:e}){let t=e.mcp.filter(e=>e.ok).length;return(0,I.jsxs)(`div`,{className:ta.grid,children:[(0,I.jsx)(ra,{label:`Repos`,value:String(e.repos.total),caption:`${e.repos.dirty} dirty · ${e.repos.stale} stale`}),(0,I.jsx)(ra,{label:`Tools`,value:`${e.tools.installed}/${e.tools.total}`,caption:`installed`}),(0,I.jsx)(ra,{label:`Activity`,value:String(e.activity.sessions),caption:`${e.activity.tokens.toLocaleString()} tok · $${e.activity.estCostUsd.toFixed(2)}`}),(0,I.jsx)(ra,{label:`MCP`,value:`${t}/${e.mcp.length}`,caption:`reachable`}),(0,I.jsx)(ra,{label:`Genome`,value:String(e.genome.entries),caption:`${e.genome.projects} projects`}),(0,I.jsx)(ra,{label:`Inbox`,value:String(e.inbox.pending),caption:`pending`})]})}var L={panel:`_panel_1gx0q_3`,panelHeader:`_panelHeader_1gx0q_10`,panelTitle:`_panelTitle_1gx0q_25`,panelBody:`_panelBody_1gx0q_33`,emptyState:`_emptyState_1gx0q_37`},aa={table:`_table_78j3m_1`,statusCol:`_statusCol_78j3m_27`,tokensCol:`_tokensCol_78j3m_31`,goalLink:`_goalLink_78j3m_35`,tokens:`_tokens_78j3m_31`};function oa(){return(0,I.jsxs)(`details`,{className:L.panel,open:!0,"data-state-key":`fleet-dashboard-runs`,children:[(0,I.jsx)(`summary`,{className:L.panelHeader,children:(0,I.jsx)(`span`,{className:L.panelTitle,children:`Recent runs`})}),(0,I.jsxs)(`div`,{className:L.panelBody,children:[(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{})]})]})}function sa({runs:e}){return(0,I.jsxs)(`details`,{className:L.panel,open:!0,"data-state-key":`fleet-dashboard-runs`,children:[(0,I.jsxs)(`summary`,{className:L.panelHeader,children:[(0,I.jsx)(`span`,{className:L.panelTitle,children:`Recent runs`}),(0,I.jsx)(`span`,{className:`text-tertiary text-xs`,children:e.length})]}),(0,I.jsx)(`div`,{className:L.panelBody,children:e.length===0?(0,I.jsx)(`p`,{className:L.emptyState,children:`No runs yet.`}):(0,I.jsxs)(`table`,{className:aa.table,children:[(0,I.jsx)(`thead`,{children:(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`th`,{scope:`col`,children:`Goal`}),(0,I.jsx)(`th`,{scope:`col`,className:aa.statusCol,children:`Status`}),(0,I.jsx)(`th`,{scope:`col`,className:aa.tokensCol,children:`Tokens`})]})}),(0,I.jsx)(`tbody`,{children:e.map(e=>(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`td`,{children:(0,I.jsx)(`a`,{href:`#/work/runs/${e.id}`,"data-focus-key":`run-${e.id}`,className:aa.goalLink,title:e.goal,children:e.goal})}),(0,I.jsx)(`td`,{children:(0,I.jsx)(S,{status:e.status})}),(0,I.jsx)(`td`,{className:aa.tokens,children:e.tokens.toLocaleString()})]},e.id))})]})})]})}var ca={list:`_list_1fq6m_1`,item:`_item_1fq6m_7`,itemHeader:`_itemHeader_1fq6m_13`,goal:`_goal_1fq6m_21`,burndown:`_burndown_1fq6m_42`,burndownTrack:`_burndownTrack_1fq6m_48`,burndownFill:`_burndownFill_1fq6m_56`,burndownLabel:`_burndownLabel_1fq6m_63`};function la({swarms:e}){return(0,I.jsxs)(`details`,{className:L.panel,open:!0,"data-state-key":`fleet-dashboard-swarms`,children:[(0,I.jsxs)(`summary`,{className:L.panelHeader,children:[(0,I.jsx)(`span`,{className:L.panelTitle,children:`Swarms`}),(0,I.jsx)(`span`,{className:`text-tertiary text-xs`,children:e.length})]}),(0,I.jsx)(`div`,{className:L.panelBody,children:e.length===0?(0,I.jsx)(`p`,{className:L.emptyState,children:`No active swarms.`}):(0,I.jsx)(`ul`,{className:ca.list,children:e.map((e,t)=>{let n=e.tasksTotal>0?Math.round(e.tasksDone/e.tasksTotal*100):0;return(0,I.jsxs)(`li`,{className:ca.item,children:[(0,I.jsxs)(`a`,{href:`#/work/swarms/${e.id}`,"data-focus-key":`swarm-${e.id}`,className:ca.itemHeader,title:e.goal,children:[e.phase?(0,I.jsx)(ee,{index:t}):null,(0,I.jsx)(`span`,{className:ca.goal,children:e.goal}),(0,I.jsx)(S,{status:e.status})]}),(0,I.jsxs)(`div`,{className:ca.burndown,children:[(0,I.jsx)(`div`,{className:ca.burndownTrack,children:(0,I.jsx)(`div`,{className:ca.burndownFill,style:{width:`${n}%`}})}),(0,I.jsxs)(`span`,{className:ca.burndownLabel,children:[e.tasksDone,`/`,e.tasksTotal,e.phase?` · ${e.phase}`:``]})]})]},e.id)})})})]})}var ua={grid:`_grid_qy4m7_1`};function da(){return(0,I.jsxs)(`details`,{className:L.panel,open:!0,"data-state-key":`fleet-dashboard-daemon`,children:[(0,I.jsx)(`summary`,{className:L.panelHeader,children:(0,I.jsx)(`span`,{className:L.panelTitle,children:`Daemon`})}),(0,I.jsx)(`div`,{className:L.panelBody,children:(0,I.jsx)(k,{width:`40%`})})]})}function fa({daemon:e}){return(0,I.jsxs)(`details`,{className:L.panel,open:!0,"data-state-key":`fleet-dashboard-daemon`,children:[(0,I.jsxs)(`summary`,{className:L.panelHeader,children:[(0,I.jsx)(`span`,{className:L.panelTitle,children:`Daemon`}),(0,I.jsx)(x,{quality:e.sourceQuality,label:`daemon state`,children:(0,I.jsx)(S,{status:e.running?`running`:`pending`,children:e.running?`running`:`stopped`})})]}),(0,I.jsx)(`div`,{className:L.panelBody,children:(0,I.jsxs)(`dl`,{className:ua.grid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Runtime state`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:e.sourceQuality,label:`runtime state`,children:e.runtimeState})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`PID`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:e.sourceQuality,label:`pid`,children:e.pid??`—`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Today's spend`}),(0,I.jsx)(`dd`,{children:(0,I.jsxs)(x,{quality:e.sourceQuality,label:`spend`,children:[`$`,e.todaySpentUsd.toFixed(2)]})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Direction mode`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:e.sourceQuality,label:`direction mode`,children:e.activeDirectionMode??`none`})})]})]})})]})}var pa={view:`_view_1nttk_1`,header:`_header_1nttk_8`,title:`_title_1nttk_14`,freshness:`_freshness_1nttk_20`,freshnessLabel:`_freshnessLabel_1nttk_26`,panels:`_panels_1nttk_32`,error:`_error_1nttk_39`};function ma(){let e=d(T),t=d(pe);return(0,I.jsxs)(`div`,{className:pa.view,children:[(0,I.jsxs)(`header`,{className:pa.header,children:[(0,I.jsx)(`h1`,{className:pa.title,children:`Fleet Dashboard`}),(0,I.jsxs)(`div`,{className:pa.freshness,"aria-live":`polite`,children:[e.status===`refreshing`?(0,I.jsx)(D,{}):null,e.updatedAt?(0,I.jsxs)(`span`,{className:pa.freshnessLabel,children:[`Updated `,ga(e.updatedAt)]}):null]})]}),e.status===`loading`?(0,I.jsx)(na,{}):e.status===`error`?(0,I.jsx)(ha,{message:e.error?.message??`Failed to load snapshot.`}):e.data?(0,I.jsx)(ia,{snapshot:e.data}):null,(0,I.jsxs)(`div`,{className:pa.panels,children:[e.status===`loading`?(0,I.jsx)(oa,{}):e.data?(0,I.jsx)(sa,{runs:e.data.runs}):null,e.data?(0,I.jsx)(la,{swarms:e.data.swarms}):null,t.status===`loading`?(0,I.jsx)(da,{}):t.status===`error`?(0,I.jsx)(ha,{message:t.error?.message??`Failed to load control snapshot.`}):t.data?(0,I.jsx)(fa,{daemon:t.data.daemon}):null]})]})}function ha({message:e}){return(0,I.jsx)(`div`,{className:pa.error,role:`alert`,children:e})}function ga(e){let t=Math.max(0,Math.round((Date.now()-e)/1e3));return t<5?`just now`:t<60?`${t}s ago`:`${Math.round(t/60)}m ago`}var _a={status:`connecting`,chunks:[],outputChunks:[],starts:[],stall:null,runDone:null,version:0};function va(e){let t=e;try{return JSON.parse(t.data)}catch{return null}}function ya(e,t){let[n,r]=(0,j.useState)(_a);return(0,j.useEffect)(()=>{if(!t){r(_a);return}if(r(_a),typeof EventSource>`u`){r(e=>({...e,status:`unavailable`}));return}let n=`/api/run/${encodeURIComponent(e)}/events?client=${encodeURIComponent(_())}`,i=new EventSource(n,{withCredentials:!0});return i.onopen=()=>{r(e=>e.status===`unavailable`?e:{...e,status:`open`})},i.onerror=()=>{r(e=>e.status===`open`?e:{...e,status:`unavailable`})},i.addEventListener(`step-started`,e=>{let t=va(e);t&&r(e=>({...e,starts:[...e.starts,t],version:e.version+1}))}),i.addEventListener(`step-output-chunk`,e=>{let t=va(e);t&&r(e=>({...e,chunks:[...e.chunks,t],version:e.version+1}))}),i.addEventListener(`step-done`,()=>{r(e=>({...e,stall:null,version:e.version+1}))}),i.addEventListener(`output-chunk`,e=>{let t=va(e);t&&r(e=>({...e,outputChunks:[...e.outputChunks,t],version:e.version+1}))}),i.addEventListener(`stall`,e=>{let t=va(e);t&&r(e=>({...e,stall:{ageMs:t.ageMs,at:Date.now()},version:e.version+1}))}),i.addEventListener(`run-done`,e=>{let t=va(e);r(e=>({...e,runDone:t??{status:`done`,result:null,terminationReason:null},stall:null,version:e.version+1}))}),()=>{i.close()}},[e,t]),n}var ba=2e3,xa=ba*4;function Sa(e){return e?`${e.status}:${e.steps.length}:${e.updatedAt}`:null}function Ca(e){let t=(0,j.useMemo)(()=>te(e),[e]),n=d(t),r=g(t),[i,a]=(0,j.useState)(null),[o,s]=(0,j.useState)(null),[,c]=(0,j.useState)(0),l=n.data?n.data.status!==`running`:!1,u=n.error instanceof h&&n.error.status===404,f=ya(e,!l&&!u),p=f.status===`open`?`sse`:`polling`,m=Sa(n.data);(0,j.useEffect)(()=>{m!==null&&a(Date.now())},[m]),(0,j.useEffect)(()=>{if(l||u||p===`sse`)return;let e=setInterval(()=>{r(),s(Date.now()),c(e=>e+1)},ba);return()=>clearInterval(e)},[r,l,u,p]),(0,j.useEffect)(()=>{p===`sse`&&f.version!==0&&(r(),s(Date.now()))},[f.version,p,r]);let _=ba*6,v=p===`sse`&&f.stall!==null&&Date.now()-f.stall.at<_,y;return y=u?`not-found`:n.status===`error`&&n.data===void 0?`error`:n.status===`loading`?`connecting`:n.data?n.data.status===`running`?p===`sse`?v?`stalled`:`live`:i!==null&&Date.now()-i>xa?`stalled`:`live`:`done`:`connecting`,{phase:y,run:n.data,error:n.error,lastChangedAt:i,lastPolledAt:o,pollNow:()=>{r(),s(Date.now())},transport:p,chunks:f.chunks,outputChunks:f.outputChunks,stallAgeMs:v?f.stall.ageMs:null}}var R={panel:`_panel_z6jlr_1`,header:`_header_z6jlr_12`,headerTop:`_headerTop_z6jlr_18`,title:`_title_z6jlr_25`,statRow:`_statRow_z6jlr_35`,banner:`_banner_z6jlr_53`,bannerWarning:`_bannerWarning_z6jlr_64`,bannerDanger:`_bannerDanger_z6jlr_69`,bannerDot:`_bannerDot_z6jlr_74`,livePulse:`_livePulse_z6jlr_1`,transcriptWrap:`_transcriptWrap_z6jlr_102`,transcript:`_transcript_z6jlr_102`,followButton:`_followButton_z6jlr_122`,empty:`_empty_z6jlr_151`,step:`_step_z6jlr_158`,stepKind:`_stepKind_z6jlr_171`,stepTime:`_stepTime_z6jlr_191`,stepTask:`_stepTask_z6jlr_195`,stepSummary:`_stepSummary_z6jlr_202`,stepUsage:`_stepUsage_z6jlr_207`},wa={plan:`Plan`,model:`Model`,tool:`Tool`,synthesize:`Synthesize`};function Ta(e,t){let n=new Date(e).getTime(),r=t?new Date(t).getTime():Date.now(),i=Math.max(0,Math.round((r-n)/1e3));return i<60?`${i}s`:`${Math.floor(i/60)}m ${i%60}s`}function Ea(e){try{return new Date(e).toLocaleTimeString(void 0,{hour12:!1})}catch{return e}}function Da({phase:e,lastChangedAt:t,stallAgeMs:n,transport:r,error:i}){if(e===`connecting`)return(0,I.jsxs)(`div`,{className:R.banner,role:`status`,children:[(0,I.jsx)(`span`,{className:R.bannerDot,"data-tone":`connecting`,"aria-hidden":`true`}),`Connecting to run…`]});if(e===`not-found`)return(0,I.jsxs)(`div`,{className:`${R.banner} ${R.bannerDanger}`,role:`alert`,children:[(0,I.jsx)(`span`,{className:R.bannerDot,"data-tone":`danger`,"aria-hidden":`true`}),`Run not found. It may have been pruned from disk since this link was opened.`]});if(e===`error`)return(0,I.jsxs)(`div`,{className:`${R.banner} ${R.bannerDanger}`,role:`alert`,children:[(0,I.jsx)(`span`,{className:R.bannerDot,"data-tone":`danger`,"aria-hidden":`true`}),`Stream disconnected`,i?`: ${i.message}`:``,`. Retrying every `,ba/1e3,`s…`]});if(e===`stalled`){let e=n===null?t===null?null:Math.round((Date.now()-t)/1e3):Math.round(n/1e3);return(0,I.jsxs)(`div`,{className:`${R.banner} ${R.bannerWarning}`,role:`status`,"aria-live":`polite`,children:[(0,I.jsx)(`span`,{className:R.bannerDot,"data-tone":`warning`,"aria-hidden":`true`}),`No change observed`,e===null?``:` in ${e}s`,` — this run may be stalled, or is simply quiet between steps. Still `,r===`sse`?`watching`:`polling`,`.`]})}return e===`live`?(0,I.jsxs)(`div`,{className:R.banner,role:`status`,children:[(0,I.jsx)(`span`,{className:R.bannerDot,"data-tone":`live`,"aria-hidden":`true`}),r===`sse`?`Live · streaming (server tail ~500ms)`:`Live · polling every ${ba/1e3}s (server refresh floor ~1.5s — this cannot be faster than that)`]}):(0,I.jsxs)(`div`,{className:R.banner,role:`status`,children:[(0,I.jsx)(`span`,{className:R.bannerDot,"data-tone":`done`,"aria-hidden":`true`}),`Run finished — no longer `,r===`sse`?`streaming`:`polling`,`.`]})}function Oa(){return(0,I.jsxs)(`div`,{className:R.panel,children:[(0,I.jsx)(k,{width:`40%`}),(0,I.jsx)(k,{width:`90%`}),(0,I.jsx)(k,{width:`70%`})]})}function ka({runId:e}){let{phase:t,run:n,error:r,lastChangedAt:i,transport:a,stallAgeMs:o,outputChunks:s}=Ca(e),c=(0,j.useRef)(null),l=(0,j.useRef)(!0),[u,d]=(0,j.useState)(!0),f=(0,j.useRef)(null),p=(0,j.useRef)(!0),[m,h]=(0,j.useState)(!0);(0,j.useEffect)(()=>{let e=c.current;e&&l.current&&(e.scrollTop=e.scrollHeight)},[n?.steps.length]),(0,j.useEffect)(()=>{let e=f.current;e&&p.current&&(e.scrollTop=e.scrollHeight)},[s.length]);function g(){let e=c.current;if(!e)return;let t=e.scrollHeight-e.scrollTop-e.clientHeight<48;l.current=t,d(t)}function _(){let e=f.current;if(!e)return;let t=e.scrollHeight-e.scrollTop-e.clientHeight<48;p.current=t,h(t)}function v(){l.current=!0,d(!0);let e=c.current;e&&(e.scrollTop=e.scrollHeight)}function y(){p.current=!0,h(!0);let e=f.current;e&&(e.scrollTop=e.scrollHeight)}return!n&&t===`connecting`?(0,I.jsx)(Oa,{}):(0,I.jsxs)(`div`,{className:R.panel,children:[(0,I.jsxs)(`header`,{className:R.header,children:[(0,I.jsxs)(`div`,{className:R.headerTop,children:[(0,I.jsx)(`h3`,{className:R.title,children:n?.goal??`Run ${e}`}),n?(0,I.jsx)(S,{status:n.status}):null]}),n?(0,I.jsxs)(`dl`,{className:R.statRow,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Elapsed`}),(0,I.jsx)(`dd`,{children:Ta(n.createdAt,n.status===`running`?void 0:n.updatedAt)})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Tokens`}),(0,I.jsxs)(`dd`,{children:[n.usage.tokensIn.toLocaleString(),` in / `,n.usage.tokensOut.toLocaleString(),` out`]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Cost`}),(0,I.jsxs)(`dd`,{children:[`$`,n.usage.estCostUsd.toFixed(3)]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Steps`}),(0,I.jsx)(`dd`,{children:n.steps.length})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Tasks`}),(0,I.jsxs)(`dd`,{children:[n.tasks.filter(e=>e.status===`done`).length,`/`,n.tasks.length]})]})]}):null]}),(0,I.jsx)(Da,{phase:t,lastChangedAt:i,stallAgeMs:o,transport:a,error:r}),s.length>0?(0,I.jsxs)(`div`,{className:R.transcriptWrap,children:[(0,I.jsx)(`div`,{ref:f,className:R.transcript,onScroll:_,tabIndex:0,role:`log`,"aria-label":`Live engine output`,"aria-live":m?`polite`:`off`,children:s.map((e,t)=>(0,I.jsxs)(`div`,{className:R.step,"data-focus-key":`run-output-chunk-${t}`,children:[(0,I.jsx)(`span`,{className:R.stepKind,"data-kind":e.kind,children:e.kind}),(0,I.jsx)(`span`,{className:R.stepTime,title:e.ts,children:Ea(e.ts)}),(0,I.jsx)(`span`,{className:R.stepTask,children:e.taskId??``}),(0,I.jsx)(`span`,{className:R.stepSummary,children:e.text})]},`${e.ts}-${t}`))}),m?null:(0,I.jsx)(`button`,{type:`button`,className:R.followButton,onClick:y,children:`↓ Follow`})]}):null,(0,I.jsxs)(`div`,{className:R.transcriptWrap,children:[(0,I.jsx)(`div`,{ref:c,className:R.transcript,onScroll:g,tabIndex:0,role:`log`,"aria-label":`Run step transcript`,"aria-live":u?`polite`:`off`,children:!n||n.steps.length===0?(0,I.jsx)(`p`,{className:R.empty,children:`No steps recorded yet.`}):n.steps.map((e,t)=>(0,I.jsxs)(`div`,{className:R.step,"data-focus-key":`run-stream-step-${t}`,children:[(0,I.jsx)(`span`,{className:R.stepKind,"data-kind":e.kind,children:wa[e.kind]??e.kind}),(0,I.jsx)(`span`,{className:R.stepTime,title:e.ts,children:Ea(e.ts)}),(0,I.jsx)(`span`,{className:R.stepTask,children:e.taskId}),(0,I.jsx)(`span`,{className:R.stepSummary,children:e.summary}),e.usage?(0,I.jsxs)(`span`,{className:R.stepUsage,children:[(e.usage.tokensIn+e.usage.tokensOut).toLocaleString(),` tok`]}):null]},`${e.ts}-${t}`))}),u?null:(0,I.jsx)(`button`,{type:`button`,className:R.followButton,onClick:v,children:`↓ Follow`})]})]})}var Aa={strip:`_strip_21e8x_1`,label:`_label_21e8x_11`,list:`_list_21e8x_20`,watchBtn:`_watchBtn_21e8x_29`,pulse:`_pulse_21e8x_46`,dialogWidth:`_dialogWidth_21e8x_70`};function ja(){let e=d(T),[t,n]=(0,j.useState)(null),r=(e.data?.runs??[]).filter(e=>e.status===`running`);return r.length===0?null:(0,I.jsxs)(`div`,{className:Aa.strip,children:[(0,I.jsx)(`span`,{className:Aa.label,children:`Live now`}),(0,I.jsx)(`ul`,{className:Aa.list,"aria-live":`polite`,"aria-label":`Currently running`,children:r.map(e=>(0,I.jsx)(`li`,{children:(0,I.jsxs)(`button`,{type:`button`,className:Aa.watchBtn,onClick:()=>n(e.id),children:[(0,I.jsx)(`span`,{className:Aa.pulse,"aria-hidden":`true`}),e.goal]})},e.id))}),(0,I.jsx)(v,{open:t!==null,onClose:()=>n(null),titleId:`live-now-title`,title:`Watching live`,widthClassName:Aa.dialogWidth,children:t?(0,I.jsx)(ka,{runId:t}):null})]})}function Ma(e){switch(e){case`merge`:return`merged`;case`dispatch`:return`running`;case`tick`:return`info`;default:return`pending`}}function Na(e){let t=[];for(let[n,r]of(e.logs?.entries??[]).entries())t.push({id:`log-${r.ts}-${n}`,ts:r.ts,source:`daemon-tick`,title:r.kind===`merge`?`Daemon merge`:r.kind===`dispatch`?`Daemon dispatch`:`Daemon tick`,detail:r.msg+(r.dryRun?` (dry run)`:``),statusLabel:Ma(r.kind),sourceQuality:e.logs?.sourceQuality});for(let[n,r]of(e.fleetActivity?.recentTicks??[]).entries())t.push({id:`fleet-tick-${r.ts}-${n}`,ts:r.ts,source:`daemon-tick`,title:`Fleet tick`,detail:[r.reason,r.directionReason].filter(Boolean).join(` — `)||`${r.merged} merged, $${r.spentUsd.toFixed(2)} spent`,statusLabel:r.dryRun?`pending`:`info`,sourceQuality:e.fleetActivity?.recentTicksSourceQuality});for(let[n,r]of(e.fleetActivity?.recentMerges??[]).entries())t.push({id:`merge-${r.ts}-${n}`,ts:r.ts,source:`merge`,title:`Merged in ${r.repo??`unknown repo`}`,detail:`${r.engine??`unknown engine`}${r.proposalId?` · proposal ${r.proposalId}`:``}`,repo:r.repo??void 0,statusLabel:`merged`,sourceQuality:e.fleetActivity?.recentMergesSourceQuality,drillIn:r.proposalId?{proposalId:r.proposalId}:void 0});for(let[n,r]of(e.fleetActivity?.recentActions??[]).entries())t.push({id:`action-${r.ts}-${n}`,ts:r.ts,source:`agent-action`,title:r.proseDigest??r.summary??r.action,detail:r.summary,repo:r.repo,statusLabel:r.outcome,sourceQuality:e.fleetActivity?.recentActionsSource,drillIn:r.proposalId?{proposalId:r.proposalId}:r.runId?{runId:r.runId}:void 0});for(let n of e.runs??[])t.push({id:`run-${n.id}`,ts:n.updatedAt,source:`run`,title:n.goal,detail:n.result??n.terminationReason??`${n.steps.length} step(s), ${n.tasks.length} task(s)`,statusLabel:n.status,drillIn:{runId:n.id}});for(let n of e.inbox?.proposals??[])t.push({id:`proposal-pending-${n.id}`,ts:n.createdAt,source:`proposal`,title:n.title,detail:`${n.kind} · ${n.origin}`,repo:n.repo,statusLabel:`pending`,drillIn:{proposalId:n.id}});return t.sort((e,t)=>new Date(t.ts).getTime()-new Date(e.ts).getTime()),t}function Pa(e=new Date){let t=new Date(e.getFullYear(),e.getMonth(),e.getDate());return e.getTime()-t.getTime()}function Fa(e,t){let n=Date.now(),r=t.query.trim().toLowerCase();return e.filter(e=>!(!t.sources.has(e.source)||t.windowMs!==null&&n-new Date(e.ts).getTime()>t.windowMs||r&&!`${e.title} ${e.detail} ${e.repo??``} ${e.statusLabel}`.toLowerCase().includes(r)))}function Ia(e,t){let n=Date.now(),r=36e5,i=[];for(let e=t-1;e>=0;e--)i.push({bucketStartMs:n-e*r,count:0});for(let a of e){let e=n-new Date(a.ts).getTime();if(e<0||e>t*r)continue;let o=t-1-Math.floor(e/r);o>=0&&o<i.length&&(i[o].count+=1)}return i}var La={bar:`_bar_1kce8_1`,search:`_search_1kce8_12`,sources:`_sources_1kce8_28`,sourceOption:`_sourceOption_1kce8_34`,windowSelect:`_windowSelect_1kce8_43`},Ra=[{value:`run`,label:`Runs`},{value:`merge`,label:`Merges`},{value:`proposal`,label:`Proposals`},{value:`agent-action`,label:`Agent actions`},{value:`daemon-tick`,label:`Daemon ticks`}],za=[{value:`1h`,label:`Last hour`,ms:36e5},{value:`today`,label:`Today`,ms:null,dynamic:!0},{value:`24h`,label:`Last 24h`,ms:864e5},{value:`7d`,label:`Last 7 days`,ms:6048e5},{value:`all`,label:`All available`,ms:null}];function Ba({sources:e,onSourcesChange:t,query:n,onQueryChange:r,windowValue:i,onWindowChange:a}){function o(n){let r=new Set(e);r.has(n)?r.delete(n):r.add(n),t(r)}return(0,I.jsxs)(`div`,{className:La.bar,children:[(0,I.jsx)(`input`,{type:`search`,className:La.search,placeholder:`Search title, detail, repo…`,value:n,onChange:e=>r(e.target.value),"aria-label":`Search the work journal`}),(0,I.jsx)(`div`,{className:La.sources,role:`group`,"aria-label":`Filter by source`,children:Ra.map(t=>(0,I.jsxs)(`label`,{className:La.sourceOption,children:[(0,I.jsx)(`input`,{type:`checkbox`,checked:e.has(t.value),onChange:()=>o(t.value)}),t.label]},t.value))}),(0,I.jsx)(`select`,{className:La.windowSelect,value:i,onChange:e=>{let t=za.find(t=>t.value===e.target.value);a(e.target.value,t?.dynamic?Pa():t?.ms??null)},"aria-label":`Time window`,children:za.map(e=>(0,I.jsx)(`option`,{value:e.value,children:e.label},e.value))})]})}var Va=new Set(Ra.map(e=>e.value)),Ha={strip:`_strip_h22ae_1`,bar:`_bar_h22ae_12`,fill:`_fill_h22ae_33`};function Ua({entries:e,hours:t,onScrubTo:n}){let r=Ia(e,t),i=Math.max(1,...r.map(e=>e.count));return(0,I.jsx)(`div`,{className:Ha.strip,role:`group`,"aria-label":`Activity density over the last ${t} hours`,children:r.map(e=>{let t=Math.round(e.count/i*100),r=new Date(e.bucketStartMs).toLocaleTimeString(void 0,{hour:`numeric`});return(0,I.jsx)(`button`,{type:`button`,className:Ha.bar,onClick:()=>n(e.bucketStartMs),disabled:e.count===0,title:`${r}: ${e.count} entr${e.count===1?`y`:`ies`}`,"aria-label":`${r}: ${e.count} entries`,children:(0,I.jsx)(`span`,{className:Ha.fill,style:{height:`${Math.max(t,e.count>0?8:0)}%`}})},e.bucketStartMs)})})}var Wa={detailBody:`_detailBody_bgyq9_1`,grid:`_grid_bgyq9_10`,rationale:`_rationale_bgyq9_27`,diffDetails:`_diffDetails_bgyq9_34`,diff:`_diff_bgyq9_34`,error:`_error_bgyq9_56`};function Ga({proposalId:e}){let t=d(se(e));if(t.status===`loading`)return(0,I.jsx)(k,{width:`80%`});if(t.status===`error`)return(0,I.jsxs)(`p`,{className:Wa.error,children:[`Could not load proposal `,e,`: `,t.error?.message??`not found on disk (it may have been pruned).`]});let n=t.data;return n?(0,I.jsxs)(`div`,{className:Wa.detailBody,children:[(0,I.jsxs)(`dl`,{className:Wa.grid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Status`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(S,{status:n.status})})]}),n.riskClass?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Risk`}),(0,I.jsx)(`dd`,{children:n.riskClass})]}):null,n.taste?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Judge verdict`}),(0,I.jsxs)(`dd`,{children:[n.taste.verdict,` · alignment `,n.taste.alignment,`/10 · ambition `,n.taste.ambition,`/10 · design`,` `,n.taste.design,`/10`]})]}):null,n.decisionReason?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Decision`}),(0,I.jsx)(`dd`,{children:n.decisionReason})]}):null,n.learningSource?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Learning source`}),(0,I.jsx)(`dd`,{children:n.learningSource})]}):null]}),n.taste?.rationale?(0,I.jsx)(`p`,{className:Wa.rationale,children:n.taste.rationale}):null,n.diff?(0,I.jsxs)(`details`,{className:Wa.diffDetails,children:[(0,I.jsxs)(`summary`,{children:[`Diff (`,n.diff.split(`
|
|
5
|
-
`).length,` lines)`]}),(0,I.jsx)(`pre`,{className:Wa.diff,children:n.diff})]}):(0,I.jsx)(`p`,{className:Wa.error,children:`No diff recorded for this proposal.`})]}):null}function Ka({drillIn:e}){return e.runId?(0,I.jsx)(ka,{runId:e.runId}):e.proposalId?(0,I.jsx)(Ga,{proposalId:e.proposalId}):null}var qa={row:`_row_194dy_1`,summary:`_summary_194dy_9`,sourceTag:`_sourceTag_194dy_31`,when:`_when_194dy_53`,repo:`_repo_194dy_61`,title:`_title_194dy_70`,expandHint:`_expandHint_194dy_80`,body:`_body_194dy_86`,detailText:`_detailText_194dy_90`},Ja={"daemon-tick":`Daemon`,merge:`Merge`,"agent-action":`Agent`,run:`Run`,proposal:`Proposal`};function Ya(e){let t=new Date(e);return`${t.toLocaleDateString(void 0,{month:`short`,day:`numeric`})} ${t.toLocaleTimeString(void 0,{hour:`2-digit`,minute:`2-digit`})}`}function Xa({entry:e}){let t=!!e.drillIn,[n,r]=(0,j.useState)(!1);return(0,I.jsxs)(`details`,{className:qa.row,"data-state-key":`journal-${e.id}`,onToggle:e=>r(e.currentTarget.open),children:[(0,I.jsxs)(`summary`,{className:qa.summary,"data-focus-key":`journal-${e.id}`,children:[(0,I.jsx)(`span`,{className:qa.sourceTag,"data-source":e.source,children:Ja[e.source]}),(0,I.jsx)(`span`,{className:qa.when,title:e.ts,children:Ya(e.ts)}),(0,I.jsx)(S,{status:e.statusLabel}),e.repo?(0,I.jsx)(`span`,{className:qa.repo,children:e.repo}):null,(0,I.jsx)(`span`,{className:qa.title,children:e.title}),(0,I.jsx)(y,{quality:e.sourceQuality}),t?(0,I.jsx)(`span`,{className:qa.expandHint,"aria-hidden":`true`,children:`why? ▾`}):null]}),(0,I.jsxs)(`div`,{className:qa.body,children:[(0,I.jsx)(`p`,{className:qa.detailText,children:e.detail}),n&&e.drillIn?(0,I.jsx)(Ka,{drillIn:e.drillIn}):null]})]})}var Za={view:`_view_1omi1_1`,header:`_header_1omi1_9`,title:`_title_1omi1_16`,windowNote:`_windowNote_1omi1_23`,freshness:`_freshness_1omi1_30`,freshnessLabel:`_freshnessLabel_1omi1_37`,errorBanner:`_errorBanner_1omi1_42`,panel:`_panel_1omi1_50`,list:`_list_1omi1_57`,empty:`_empty_1omi1_63`},Qa=8e3;function $a(e){let t=Math.max(0,Math.round((Date.now()-e)/1e3));return t<5?`just now`:t<60?`${t}s ago`:`${Math.round(t/60)}m ago`}function eo(){let e=P().state?.windowToday===!0,t=d(de),n=d(E),r=d(_e),i=d(ie),a=g(de);(0,j.useEffect)(()=>{let e=setInterval(a,Qa);return()=>clearInterval(e)},[a]);let[o,s]=(0,j.useState)(new Set(Va)),[c,l]=(0,j.useState)(``),[u,f]=(0,j.useState)(e?`today`:`24h`),[p,m]=(0,j.useState)(e?Pa():864e5),h=(0,j.useMemo)(()=>Na({logs:t.data,fleetActivity:n.data,runs:r.data,inbox:i.data}),[t.data,n.data,r.data,i.data]),_=(0,j.useMemo)(()=>Fa(h,{sources:o,query:c,windowMs:p}),[h,o,c,p]),v=(0,j.useRef)(new Map);function y(e){let t=_.find(t=>new Date(t.ts).getTime()<=e+36e5);t&&v.current.get(t.id)?.scrollIntoView({behavior:`smooth`,block:`center`})}let b=t.status===`loading`&&n.status===`loading`&&r.status===`loading`&&i.status===`loading`,x=[t,n,r,i].some(e=>e.status===`refreshing`),S=Math.max(t.updatedAt??0,n.updatedAt??0,r.updatedAt??0,i.updatedAt??0),C=[t.status===`error`?`daemon log: ${t.error?.message}`:null,n.status===`error`?`fleet activity: ${n.error?.message}`:null,r.status===`error`?`runs: ${r.error?.message}`:null,i.status===`error`?`inbox: ${i.error?.message}`:null].filter(e=>e!==null);return(0,I.jsxs)(`div`,{className:Za.view,children:[(0,I.jsxs)(`header`,{className:Za.header,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`h1`,{className:Za.title,children:`Work Journal`}),(0,I.jsx)(`p`,{className:Za.windowNote,children:`Merges the daemon log (last 200 lines), fleet activity (last ~20 merges/ticks/agent actions), recent runs (last 200), and the pending-proposal inbox. The read API does not expose the full on-disk history beyond this window.`})]}),(0,I.jsxs)(`div`,{className:Za.freshness,"aria-live":`polite`,children:[x?(0,I.jsx)(D,{}):null,S>0?(0,I.jsxs)(`span`,{className:Za.freshnessLabel,children:[`Updated `,$a(S)]}):null]})]}),C.length>0?(0,I.jsxs)(`div`,{className:Za.errorBanner,role:`alert`,children:[`Some sources failed to load: `,C.join(`; `)]}):null,(0,I.jsx)(ja,{}),b?(0,I.jsxs)(`div`,{className:Za.panel,children:[(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{})]}):(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(Ua,{entries:h,hours:24,onScrubTo:y}),(0,I.jsx)(Ba,{sources:o,onSourcesChange:s,query:c,onQueryChange:l,windowValue:u,onWindowChange:(e,t)=>{f(e),m(t)}}),(0,I.jsx)(`div`,{className:Za.panel,children:_.length===0?(0,I.jsx)(`p`,{className:Za.empty,children:`Nothing matches the current filters in this window.`}):(0,I.jsx)(`ul`,{className:Za.list,children:_.map(e=>(0,I.jsx)(`li`,{ref:t=>{t?v.current.set(e.id,t):v.current.delete(e.id)},children:(0,I.jsx)(Xa,{entry:e})},e.id))})})]})]})}var to={view:`_view_7836g_1`,header:`_header_7836g_7`,title:`_title_7836g_15`,freshness:`_freshness_7836g_21`,freshnessLabel:`_freshnessLabel_7836g_27`,filterRow:`_filterRow_7836g_32`,windowGroup:`_windowGroup_7836g_38`,windowButton:`_windowButton_7836g_45`,windowButtonActive:`_windowButtonActive_7836g_64`,kpiGrid:`_kpiGrid_7836g_70`,chartsGrid:`_chartsGrid_7836g_76`,error:`_error_7836g_82`},no=[`1d`,`7d`,`30d`],ro={ok:`success`,warn:`warning`,over:`danger`};function io(e){let t=e.replace(/\/+$/,``).split(`/`);return t[t.length-1]||e}function ao(){let[e,t]=(0,j.useState)(`7d`),n=d(oe(e));return(0,I.jsxs)(`div`,{className:to.view,children:[(0,I.jsxs)(`header`,{className:to.header,children:[(0,I.jsx)(`h1`,{className:to.title,children:`Pulse`}),(0,I.jsxs)(`div`,{className:to.freshness,"aria-live":`polite`,children:[n.status===`refreshing`?(0,I.jsx)(D,{}):null,n.updatedAt?(0,I.jsxs)(`span`,{className:to.freshnessLabel,children:[`Updated `,so(n.updatedAt)]}):null]})]}),(0,I.jsxs)(`div`,{className:to.filterRow,role:`group`,"aria-label":`Time window`,children:[(0,I.jsx)(`div`,{className:to.windowGroup,children:no.map(n=>(0,I.jsx)(`button`,{type:`button`,className:`${to.windowButton} ${n===e?to.windowButtonActive:``}`,"aria-pressed":n===e,onClick:()=>t(n),children:n},n))}),n.data?(0,I.jsx)(S,{status:n.data.budget.level,tone:ro[n.data.budget.level],children:n.data.budget.message}):null]}),n.status===`loading`?(0,I.jsx)(Ae,{count:4}):n.status===`error`?(0,I.jsx)(`div`,{className:to.error,role:`alert`,children:n.error?.message??`Failed to load pulse data.`}):n.data?(0,I.jsx)(oo,{rollup:n.data}):null]})}function oo({rollup:e}){let t=[{id:`cost`,label:`Est. cost (USD)`,points:e.byDay.map(e=>({x:Be(e.day),y:e.estCostUsd}))}],n=[...e.byProject].sort((e,t)=>t.estCostUsd-e.estCostUsd).slice(0,8),r=n.map(e=>({label:io(e.project),value:e.estCostUsd})),i=[...e.byModel].sort((e,t)=>t.estCostUsd-e.estCostUsd).slice(0,8),a=i.map(e=>({label:e.model,value:e.estCostUsd}));return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`div`,{className:to.kpiGrid,children:[(0,I.jsx)(A,{label:`Est. cost`,value:Le(e.totals.estCostUsd),caption:e.window}),(0,I.jsx)(A,{label:`Tokens`,value:ze(e.totals.tokensIn+e.totals.tokensOut),caption:`${ze(e.totals.tokensIn)} in / ${ze(e.totals.tokensOut)} out`}),(0,I.jsx)(A,{label:`Sessions`,value:String(e.totals.sessions)}),(0,I.jsx)(A,{label:`Commits`,value:String(e.totals.commits)})]}),(0,I.jsxs)(`div`,{className:to.chartsGrid,children:[(0,I.jsx)(Ne,{title:`Cost over time`,description:`since ${new Date(e.since).toLocaleDateString()}`,empty:e.byDay.length===0,emptyMessage:`No activity recorded in this window.`,table:(0,I.jsx)(Me,{caption:`Daily cost`,rowKey:e=>e.day,rows:e.byDay,columns:[{key:`day`,label:`Day`,render:e=>e.day},{key:`cost`,label:`Cost`,numeric:!0,render:e=>Le(e.estCostUsd)},{key:`sessions`,label:`Sessions`,numeric:!0,render:e=>String(e.sessions)}]}),children:(0,I.jsx)(Fe,{series:t,area:!0,ariaLabel:`Estimated cost over time`,formatX:e=>new Date(e).toLocaleDateString(void 0,{month:`short`,day:`numeric`}),formatY:e=>Le(e)})}),(0,I.jsx)(Ne,{title:`Top projects by cost`,empty:r.length===0,emptyMessage:`No project activity in this window.`,table:(0,I.jsx)(Me,{caption:`Cost by project`,rowKey:e=>e.project,rows:n,columns:[{key:`project`,label:`Project`,render:e=>io(e.project)},{key:`sessions`,label:`Sessions`,numeric:!0,render:e=>String(e.sessions)},{key:`commits`,label:`Commits`,numeric:!0,render:e=>String(e.commits)},{key:`cost`,label:`Cost`,numeric:!0,render:e=>Le(e.estCostUsd)}]}),children:(0,I.jsx)(Pe,{data:r,orientation:`horizontal`,ariaLabel:`Top projects by estimated cost`,formatValue:e=>Le(e)})}),(0,I.jsx)(Ne,{title:`Cost by model`,empty:a.length===0,emptyMessage:`No model activity in this window.`,table:(0,I.jsx)(Me,{caption:`Cost by model`,rowKey:e=>e.model,rows:i,columns:[{key:`model`,label:`Model`,render:e=>e.model},{key:`calls`,label:`Calls`,numeric:!0,render:e=>String(e.calls)},{key:`tokens`,label:`Tokens`,numeric:!0,render:e=>ze(e.tokensIn+e.tokensOut)},{key:`cost`,label:`Cost`,numeric:!0,render:e=>Le(e.estCostUsd)}]}),children:(0,I.jsx)(Pe,{data:a,ariaLabel:`Cost by model`,formatValue:e=>Le(e)})})]})]})}function so(e){let t=Math.max(0,Math.round((Date.now()-e)/1e3));return t<5?`just now`:t<60?`${t}s ago`:`${Math.round(t/60)}m ago`}var z={view:`_view_44i9i_1`,header:`_header_44i9i_7`,title:`_title_44i9i_15`,searchRow:`_searchRow_44i9i_21`,searchInput:`_searchInput_44i9i_27`,resultCount:`_resultCount_44i9i_43`,results:`_results_44i9i_48`,row:`_row_44i9i_57`,rowHeader:`_rowHeader_44i9i_64`,rowTitle:`_rowTitle_44i9i_72`,rowMeta:`_rowMeta_44i9i_78`,badge:`_badge_44i9i_87`,snippet:`_snippet_44i9i_97`,tags:`_tags_44i9i_107`,tag:`_tag_44i9i_107`,skeletons:`_skeletons_44i9i_123`,empty:`_empty_44i9i_129`,error:`_error_44i9i_136`},co=50,lo=300;function uo(e,t){let[n,r]=(0,j.useState)(e);return(0,j.useEffect)(()=>{let n=setTimeout(()=>r(e),t);return()=>clearTimeout(n)},[e,t]),n}function fo(e,t=220){let n=e.trim();return n.length>t?`${n.slice(0,t-1)}…`:n}function po(e){let t=Date.parse(e);if(Number.isNaN(t))return e;let n=Math.floor((Date.now()-t)/864e5);return n<=0?`today`:n===1?`yesterday`:n<30?`${n}d ago`:`${Math.floor(n/30)}mo ago`}function mo(){let[e,t]=(0,j.useState)(``),n=uo(e,lo),r=d(re(n)),i=n.trim().length>0,a=r.data,{rows:o,totalCount:s}=(0,j.useMemo)(()=>{if(!a)return{rows:[],totalCount:0};if(i)return{rows:a,totalCount:a.length};let e=a;return{rows:[...e].sort((e,t)=>Date.parse(t.ts)-Date.parse(e.ts)).slice(0,co),totalCount:e.length}},[a,i]),c=(0,j.useMemo)(()=>{if(!a||i)return[];let e=a,t=new Map;for(let n of e){let e=n.project??`(unscoped)`;t.set(e,(t.get(e)??0)+1)}return[...t.entries()].sort((e,t)=>t[1]-e[1]).slice(0,8).map(([e,t])=>({label:e,value:t}))},[a,i]);return(0,I.jsxs)(`div`,{className:z.view,children:[(0,I.jsxs)(`header`,{className:z.header,children:[(0,I.jsx)(`h1`,{className:z.title,children:`Genome`}),(0,I.jsx)(`div`,{"aria-live":`polite`,children:r.status===`refreshing`?(0,I.jsx)(D,{}):null})]}),(0,I.jsxs)(`div`,{className:z.searchRow,children:[(0,I.jsx)(`input`,{type:`search`,className:z.searchInput,placeholder:`Search the genome (title, tags, body text)…`,value:e,onChange:e=>t(e.target.value),"aria-label":`Search cross-repo knowledge`}),a?(0,I.jsx)(`span`,{className:z.resultCount,children:i?`${s} match${s===1?``:`es`}`:`showing ${o.length} of ${s}`}):null]}),!i&&c.length>0?(0,I.jsx)(Ne,{title:`Top projects by genome entries`,description:`browse mode — all loaded entries`,children:(0,I.jsx)(Pe,{data:c,orientation:`horizontal`,ariaLabel:`Top projects by genome entry count`,formatValue:e=>ze(e)})}):null,r.status===`loading`?(0,I.jsxs)(`div`,{className:z.skeletons,"aria-hidden":`true`,children:[(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{})]}):r.status===`error`?(0,I.jsx)(`div`,{className:z.error,role:`alert`,children:r.error?.message??`Failed to load genome data.`}):o.length===0?(0,I.jsx)(`p`,{className:z.empty,children:i?`No genome entries match "${n}".`:`No genome entries recorded yet.`}):(0,I.jsx)(`ul`,{className:z.results,children:o.map(e=>{let t=ae(e)?e:null,n=t?t.entry:e;return(0,I.jsxs)(`li`,{className:z.row,children:[(0,I.jsxs)(`div`,{className:z.rowHeader,children:[(0,I.jsx)(`span`,{className:z.rowTitle,children:n.title}),(0,I.jsxs)(`span`,{className:z.rowMeta,children:[t?(0,I.jsxs)(`span`,{className:z.badge,children:[t.method,` · `,t.score.toFixed(2)]}):null,(0,I.jsx)(`span`,{children:po(n.ts)})]})]}),(0,I.jsxs)(`div`,{className:z.rowMeta,children:[(0,I.jsx)(`span`,{className:z.badge,children:n.project??`unscoped`}),(0,I.jsx)(`span`,{className:z.badge,children:n.source})]}),(0,I.jsx)(`p`,{className:z.snippet,children:fo(n.text)}),n.tags.length>0?(0,I.jsx)(`div`,{className:z.tags,children:n.tags.map(e=>(0,I.jsx)(`span`,{className:z.tag,children:e},e))}):null]},n.id)})})]})}var B={view:`_view_1frm3_1`,header:`_header_1frm3_7`,title:`_title_1frm3_15`,filterRow:`_filterRow_1frm3_21`,windowGroup:`_windowGroup_1frm3_27`,windowButton:`_windowButton_1frm3_34`,windowButtonActive:`_windowButtonActive_1frm3_53`,kpiGrid:`_kpiGrid_1frm3_59`,chartsGrid:`_chartsGrid_1frm3_65`,section:`_section_1frm3_71`,sectionTitle:`_sectionTitle_1frm3_77`,goalsList:`_goalsList_1frm3_83`,goalRow:`_goalRow_1frm3_92`,goalObjective:`_goalObjective_1frm3_102`,meterTrack:`_meterTrack_1frm3_107`,meterFill:`_meterFill_1frm3_115`,goalMeta:`_goalMeta_1frm3_121`,error:`_error_1frm3_126`,notAvailable:`_notAvailable_1frm3_135`},ho=[`7d`,`30d`,`all`];function go(e){return`${e.engine}:${e.model}`}function _o(){let[e,t]=(0,j.useState)(`30d`),n=d(T),r=d(fe(e)),i=n.data?.production;return(0,I.jsxs)(`div`,{className:B.view,children:[(0,I.jsxs)(`header`,{className:B.header,children:[(0,I.jsx)(`h1`,{className:B.title,children:`Production`}),(0,I.jsx)(`div`,{"aria-live":`polite`,children:n.status===`refreshing`||r.status===`refreshing`?(0,I.jsx)(D,{}):null})]}),n.status===`loading`?(0,I.jsx)(Ae,{count:4}):n.status===`error`?(0,I.jsx)(`div`,{className:B.error,role:`alert`,children:n.error?.message??`Failed to load production summary.`}):i?(0,I.jsx)(vo,{production:i}):(0,I.jsx)(`p`,{className:B.notAvailable,children:`Production summary not available on this server (older producer, or not yet populated).`}),(0,I.jsx)(`div`,{className:B.filterRow,role:`group`,"aria-label":`Model stats window`,children:(0,I.jsx)(`div`,{className:B.windowGroup,children:ho.map(n=>(0,I.jsx)(`button`,{type:`button`,className:`${B.windowButton} ${n===e?B.windowButtonActive:``}`,"aria-pressed":n===e,onClick:()=>t(n),children:n},n))})}),r.status===`loading`?(0,I.jsx)(Ae,{count:3}):r.status===`error`?(0,I.jsx)(`div`,{className:B.error,role:`alert`,children:r.error?.message??`Failed to load per-model stats.`}):r.data?(0,I.jsx)(yo,{result:r.data}):null]})}function vo({production:e}){let t=e.judgeVerdicts24h,n=e.judgeFailures24h??{total:0,parse:0,network:0},r=[{label:`ship`,value:t.ship},{label:`review`,value:t.review},{label:`noise`,value:t.noise},{label:`harmful`,value:t.harmful}],i=e.shipsPerDayTrend.map(e=>({label:Re(e.date),value:e.count})),a=e.shipsPerDayTrend.reduce((e,t)=>e+t.count,0),o=b(e.proposalSourceQuality),s=b(e.judgeTraceSourceQuality);return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`div`,{className:B.kpiGrid,children:[(0,I.jsx)(A,{label:`Proposals (24h)`,value:(0,I.jsx)(x,{quality:e.proposalSourceQuality,label:`proposals`,children:String(e.proposals24h.total)}),caption:(0,I.jsx)(x,{quality:e.proposalSourceQuality,label:`pending proposals`,children:`${e.proposals24h.pending} pending`})}),(0,I.jsx)(A,{label:`Auto-merges today`,value:(0,I.jsx)(x,{quality:e.proposalSourceQuality,label:`auto-merges`,children:String(e.autoMergesToday.count)})}),(0,I.jsx)(A,{label:`Judged (24h)`,value:(0,I.jsx)(x,{quality:e.judgeTraceSourceQuality,label:`judge verdicts`,children:String(t.total)})}),(0,I.jsx)(A,{label:`Judge failures (24h)`,value:(0,I.jsx)(x,{quality:e.judgeFailureSourceQuality,label:`judge failures`,children:String(n.total)}),caption:(0,I.jsx)(x,{quality:e.judgeFailureSourceQuality,children:`${n.parse} parse · ${n.network} network`})}),(0,I.jsx)(A,{label:`Active goals`,value:(0,I.jsx)(x,{quality:e.activeGoalsSourceQuality,label:`active goals`,children:String(e.activeGoals.length)})})]}),(0,I.jsxs)(`div`,{className:B.chartsGrid,children:[(0,I.jsxs)(Ne,{title:`Ships per day`,description:`last 7 days`,empty:o&&i.length===0,emptyMessage:`No ship history recorded yet.`,table:o?(0,I.jsx)(Me,{caption:`Ships per day`,rowKey:e=>e.label,rows:i,columns:[{key:`day`,label:`Day`,render:e=>e.label},{key:`count`,label:`Ships`,numeric:!0,render:e=>String(e.value??0)}]}):void 0,children:[o?a===0?(0,I.jsx)(`p`,{className:B.notAvailable,children:`0 ships in the last 7 days — this is the real number, not a loading state.`}):null:(0,I.jsx)(x,{quality:e.proposalSourceQuality,label:`ship history`,children:`ship history`}),o?(0,I.jsx)(Pe,{data:i,ariaLabel:`Ships per day, last 7 days`,formatValue:e=>String(e)}):null]}),(0,I.jsx)(Ne,{title:`Judge verdict breakdown`,description:`last 24h`,empty:s&&t.total===0,emptyMessage:`No judge verdicts recorded in the last 24h.`,children:s?(0,I.jsx)(Pe,{data:r,ariaLabel:`Judge verdict breakdown, last 24h`,formatValue:e=>String(e)}):(0,I.jsx)(x,{quality:e.judgeTraceSourceQuality,label:`judge verdicts`,children:`judge verdicts`})})]}),b(e.activeGoalsSourceQuality)?e.activeGoals.length>0?(0,I.jsxs)(`div`,{className:B.section,children:[(0,I.jsx)(`h2`,{className:B.sectionTitle,children:`Active goals`}),(0,I.jsx)(`ul`,{className:B.goalsList,children:e.activeGoals.map(e=>{let t=e.totalMilestones>0?e.doneMilestones/e.totalMilestones:0;return(0,I.jsxs)(`li`,{className:B.goalRow,children:[(0,I.jsx)(`span`,{className:B.goalObjective,children:e.objective}),(0,I.jsx)(`div`,{className:B.meterTrack,children:(0,I.jsx)(`div`,{className:B.meterFill,style:{width:`${Math.round(t*100)}%`}})}),(0,I.jsxs)(`span`,{className:B.goalMeta,children:[e.doneMilestones,` / `,e.totalMilestones,` milestones`]})]},e.goalId)})})]}):null:(0,I.jsxs)(`div`,{className:B.section,children:[(0,I.jsx)(`h2`,{className:B.sectionTitle,children:`Active goals`}),(0,I.jsx)(x,{quality:e.activeGoalsSourceQuality,label:`active goals`,children:`active goals`})]})]})}function yo({result:e}){let t=[...e.models].sort((e,t)=>t.dispatches-e.dispatches).slice(0,12),n=t.map(e=>({label:go(e),value:e.judged>0?e.shipRate:null}));return(0,I.jsx)(`div`,{className:B.chartsGrid,children:(0,I.jsx)(Ne,{title:`Ship rate by model`,description:`judged proposals in the selected window`,empty:t.length===0,emptyMessage:`No dispatch history for this window.`,table:(0,I.jsx)(Me,{caption:`Per-model economics`,rowKey:go,rows:t,columns:[{key:`model`,label:`Model`,render:e=>go(e)},{key:`dispatches`,label:`Dispatches`,numeric:!0,render:e=>String(e.dispatches)},{key:`shipRate`,label:`Ship rate`,numeric:!0,render:e=>e.judged>0?Ie(e.shipRate):`—`},{key:`merged`,label:`Merged`,numeric:!0,render:e=>String(e.merged)},{key:`costPerMerged`,label:`Cost / merge`,numeric:!0,render:e=>e.costPerMergedUsd===null?`—`:Le(e.costPerMergedUsd)},{key:`bestOfN`,label:`Best-of-N win rate`,numeric:!0,render:t=>t.bestOfNAvailable?(0,I.jsx)(x,{quality:e.bestOfNSource,label:`best-of-N win rate`,children:Ie(t.bestOfN.winRate)}):`—`}]}),children:(0,I.jsx)(Pe,{data:n,ariaLabel:`Ship rate by model`,formatValue:e=>Ie(e)})})})}var V={view:`_view_ruego_1`,header:`_header_ruego_7`,title:`_title_ruego_15`,freshness:`_freshness_ruego_21`,freshnessLabel:`_freshnessLabel_ruego_27`,kpiGrid:`_kpiGrid_ruego_32`,chartsGrid:`_chartsGrid_ruego_38`,section:`_section_ruego_44`,sectionTitle:`_sectionTitle_ruego_50`,list:`_list_ruego_56`,row:`_row_ruego_65`,rowTitle:`_rowTitle_ruego_75`,meterTrack:`_meterTrack_ruego_84`,meterFill:`_meterFill_ruego_92`,rowMeta:`_rowMeta_ruego_98`,effectiveness:`_effectiveness_ruego_103`,effectivenessHeadline:`_effectivenessHeadline_ruego_110`,error:`_error_ruego_116`,notAvailable:`_notAvailable_ruego_125`};function bo(e){let t=Math.max(0,Math.round((Date.now()-e)/1e3));return t<5?`just now`:t<60?`${t}s ago`:`${Math.round(t/60)}m ago`}function xo(){let e=d(ue),t=d(T);return(0,I.jsxs)(`div`,{className:V.view,children:[(0,I.jsxs)(`header`,{className:V.header,children:[(0,I.jsx)(`h1`,{className:V.title,children:`Portfolio`}),(0,I.jsxs)(`div`,{className:V.freshness,"aria-live":`polite`,children:[e.status===`refreshing`||t.status===`refreshing`?(0,I.jsx)(D,{}):null,e.updatedAt?(0,I.jsxs)(`span`,{className:V.freshnessLabel,children:[`Updated `,bo(e.updatedAt)]}):null]})]}),e.status===`loading`?(0,I.jsx)(Ae,{count:6}):e.status===`error`?(0,I.jsx)(`div`,{className:V.error,role:`alert`,children:e.error?.message??`Failed to load portfolio.`}):e.data===null?(0,I.jsx)(`p`,{className:V.notAvailable,children:`No portfolio roll-up available — either this server has no enrolled repos, or it predates the portfolio feature.`}):e.data?(0,I.jsx)(So,{portfolio:e.data}):null]})}function So({portfolio:e}){let{health:t,goalsInFlight:n,backlogTop:r,cost:i,effectiveness:a,today:o}=e,s=t.worstRepos.map(e=>({label:e.repo.split(`/`).filter(Boolean).pop()??e.repo,value:e.score}));return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`div`,{className:V.kpiGrid,children:[(0,I.jsx)(A,{label:`Portfolio health`,value:`${t.averageScore.toFixed(0)} (${t.averageGrade})`,caption:`${t.reposScored} repos scored`,delta:o.healthScoreDelta===null?null:{value:o.healthScoreDelta,goodWhenPositive:!0}}),(0,I.jsx)(A,{label:`Goals in flight`,value:String(n.length)}),(0,I.jsx)(A,{label:`Backlog top items`,value:String(r.length),delta:o.pendingProposalsDelta===null?null:{value:o.pendingProposalsDelta,versus:`pending proposals`}}),(0,I.jsx)(A,{label:`Spend`,value:Le(i.spentUsd),caption:`${i.window} window`,delta:o.spendUsdDelta===null?null:{value:o.spendUsdDelta,goodWhenPositive:!1}}),(0,I.jsx)(A,{label:`Local savings`,value:Le(i.localSavingsUsd)}),(0,I.jsx)(A,{label:`Projected monthly`,value:Le(i.projectedMonthlyUsd)})]}),a?(0,I.jsxs)(`div`,{className:V.effectiveness,children:[(0,I.jsx)(`p`,{className:V.effectivenessHeadline,children:a.headline}),(0,I.jsxs)(`span`,{className:V.rowMeta,children:[`Success rate `,Ie(a.successRate),a.effectivenessDeltaPct===null?``:` (${a.effectivenessDeltaPct>=0?`+`:``}${a.effectivenessDeltaPct.toFixed(1)}pp)`]})]}):null,(0,I.jsxs)(`div`,{className:V.chartsGrid,children:[(0,I.jsx)(Ne,{title:`Worst-scoring repos`,empty:s.length===0,emptyMessage:`No enrolled repos scored yet.`,table:(0,I.jsx)(Me,{caption:`Worst-scoring repos`,rowKey:e=>e.repo,rows:t.worstRepos,columns:[{key:`repo`,label:`Repo`,render:e=>e.repo},{key:`score`,label:`Score`,numeric:!0,render:e=>e.score.toFixed(0)},{key:`grade`,label:`Grade`,render:e=>e.grade}]}),children:(0,I.jsx)(Pe,{data:s,orientation:`horizontal`,ariaLabel:`Worst-scoring repos by health score`,formatValue:e=>e.toFixed(0)})}),(0,I.jsxs)(`div`,{className:V.section,children:[(0,I.jsx)(`h2`,{className:V.sectionTitle,children:`In-flight goals`}),n.length===0?(0,I.jsx)(`p`,{className:V.notAvailable,children:`No goals currently in flight.`}):(0,I.jsx)(`ul`,{className:V.list,children:n.map(e=>(0,I.jsxs)(`li`,{className:V.row,children:[(0,I.jsxs)(`span`,{className:V.rowTitle,children:[e.objective,(0,I.jsx)(`span`,{className:V.rowMeta,children:Ve(e.fractionDone*100)})]}),(0,I.jsx)(`div`,{className:V.meterTrack,children:(0,I.jsx)(`div`,{className:V.meterFill,style:{width:`${Math.round(e.fractionDone*100)}%`}})}),(0,I.jsx)(`span`,{className:V.rowMeta,children:e.nextActionable?`Next: ${e.nextActionable}`:`Nothing actionable queued`})]},e.goalId))})]})]}),(0,I.jsxs)(`div`,{className:V.section,children:[(0,I.jsx)(`h2`,{className:V.sectionTitle,children:`Top backlog`}),r.length===0?(0,I.jsx)(`p`,{className:V.notAvailable,children:`Backlog is empty.`}):(0,I.jsx)(Me,{caption:`Top backlog items`,rowKey:e=>e.title,rows:r,columns:[{key:`title`,label:`Item`,render:e=>e.title},{key:`repo`,label:`Repo`,render:e=>e.repo??`—`},{key:`score`,label:`Score`,numeric:!0,render:e=>e.score.toFixed(1)}]})]})]})}var H={view:`_view_1eb19_1`,header:`_header_1eb19_8`,title:`_title_1eb19_16`,freshness:`_freshness_1eb19_22`,count:`_count_1eb19_28`,filters:`_filters_1eb19_34`,field:`_field_1eb19_45`,fieldLabel:`_fieldLabel_1eb19_51`,input:`_input_1eb19_56`,select:`_select_1eb19_57`,clear:`_clear_1eb19_74`,tableWrap:`_tableWrap_1eb19_87`,table:`_table_1eb19_87`,statusCol:`_statusCol_1eb19_101`,engineCol:`_engineCol_1eb19_104`,providerCol:`_providerCol_1eb19_107`,tokensCol:`_tokensCol_1eb19_110`,costCol:`_costCol_1eb19_113`,stepsCol:`_stepsCol_1eb19_116`,createdCol:`_createdCol_1eb19_119`,row:`_row_1eb19_143`,sortHeader:`_sortHeader_1eb19_151`,goalLink:`_goalLink_1eb19_168`,numeric:`_numeric_1eb19_180`,date:`_date_1eb19_186`,empty:`_empty_1eb19_192`,error:`_error_1eb19_199`};function Co(e){return e.usage.tokensIn+e.usage.tokensOut}function wo(e,t){if(!t)return!0;let n=t.toLowerCase();return e.id.toLowerCase().includes(n)||e.goal.toLowerCase().includes(n)}function To(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function Eo(){let e=(0,j.useRef)(null);Oe(`/work/runs`,e);let t=_n(),n=d(_e),[r,i]=(0,j.useState)(0),a=(0,j.useRef)(new Map),[o,s]=(0,j.useState)(``),[c,l]=(0,j.useState)(`all`),[u,f]=(0,j.useState)(`all`),[p,m]=(0,j.useState)(`all`),[h,g]=(0,j.useState)(``),[_,v]=(0,j.useState)(`createdAt`),[y,b]=(0,j.useState)(`desc`),x=(0,j.useMemo)(()=>n.data??[],[n.data]),{statuses:C,engines:ee,providers:w}=(0,j.useMemo)(()=>{let e=new Set,t=new Set,n=new Set;for(let r of x)e.add(r.status),t.add(r.engine),n.add(r.provider);return{statuses:Array.from(e).sort(),engines:Array.from(t).sort(),providers:Array.from(n).sort()}},[x]),te=h?new Date(h).getTime():null,T=(0,j.useMemo)(()=>{let e=x.filter(e=>{if(c!==`all`&&e.status!==c||u!==`all`&&e.engine!==u||p!==`all`&&e.provider!==p)return!1;if(te!==null){let t=new Date(e.createdAt).getTime();if(Number.isNaN(t)||t<te)return!1}return!!wo(e,o.trim())});return e=[...e].sort((e,t)=>{let n=0;switch(_){case`createdAt`:n=e.createdAt.localeCompare(t.createdAt);break;case`updatedAt`:n=e.updatedAt.localeCompare(t.updatedAt);break;case`tokens`:n=Co(e)-Co(t);break;case`estCostUsd`:n=e.usage.estCostUsd-t.usage.estCostUsd;break;case`steps`:n=e.steps.length-t.steps.length;break;case`status`:n=e.status.localeCompare(t.status)}return y===`asc`?n:-n}),e},[x,c,u,p,te,o,_,y]);(0,j.useEffect)(()=>{i(e=>Math.min(e,Math.max(T.length-1,0)))},[T.length]);function ne(e){if(T.length!==0){if(e.key===`ArrowDown`){e.preventDefault();let t=Math.min(r+1,T.length-1);i(t),a.current.get(T[t].id)?.focus()}else if(e.key===`ArrowUp`){e.preventDefault();let t=Math.max(r-1,0);i(t),a.current.get(T[t].id)?.focus()}else if(e.key===`Enter`){let e=T[r];e&&t(`/work/runs/${e.id}`)}}}function re(e){e===_?b(e=>e===`asc`?`desc`:`asc`):(v(e),b(`desc`))}function ie(e){return e===_?y===`asc`?` ↑`:` ↓`:``}return(0,I.jsxs)(`div`,{ref:e,className:H.view,children:[(0,I.jsxs)(`header`,{className:H.header,children:[(0,I.jsx)(`h1`,{className:H.title,children:`Runs`}),(0,I.jsxs)(`div`,{className:H.freshness,"aria-live":`polite`,children:[n.status===`refreshing`?(0,I.jsx)(D,{}):null,(0,I.jsxs)(`span`,{className:H.count,children:[T.length,` of `,x.length,` runs (server caps at 200 most recent)`]})]})]}),(0,I.jsxs)(`form`,{className:H.filters,role:`search`,"aria-label":`Filter runs`,onSubmit:e=>e.preventDefault(),children:[(0,I.jsxs)(`label`,{className:H.field,children:[(0,I.jsx)(`span`,{className:H.fieldLabel,children:`Search`}),(0,I.jsx)(`input`,{type:`text`,className:H.input,placeholder:`goal or run id (e.g. repo/project name)`,value:o,onChange:e=>s(e.target.value)})]}),(0,I.jsxs)(`label`,{className:H.field,children:[(0,I.jsx)(`span`,{className:H.fieldLabel,children:`Status`}),(0,I.jsxs)(`select`,{className:H.select,value:c,onChange:e=>l(e.target.value),children:[(0,I.jsx)(`option`,{value:`all`,children:`All`}),C.map(e=>(0,I.jsx)(`option`,{value:e,children:e},e))]})]}),(0,I.jsxs)(`label`,{className:H.field,children:[(0,I.jsx)(`span`,{className:H.fieldLabel,children:`Engine`}),(0,I.jsxs)(`select`,{className:H.select,value:u,onChange:e=>f(e.target.value),children:[(0,I.jsx)(`option`,{value:`all`,children:`All`}),ee.map(e=>(0,I.jsx)(`option`,{value:e,children:e},e))]})]}),(0,I.jsxs)(`label`,{className:H.field,children:[(0,I.jsx)(`span`,{className:H.fieldLabel,children:`Provider`}),(0,I.jsxs)(`select`,{className:H.select,value:p,onChange:e=>m(e.target.value),children:[(0,I.jsx)(`option`,{value:`all`,children:`All`}),w.map(e=>(0,I.jsx)(`option`,{value:e,children:e},e))]})]}),(0,I.jsxs)(`label`,{className:H.field,children:[(0,I.jsx)(`span`,{className:H.fieldLabel,children:`Since`}),(0,I.jsx)(`input`,{type:`date`,className:H.input,value:h,onChange:e=>g(e.target.value)})]}),(c!==`all`||u!==`all`||p!==`all`||h||o)&&(0,I.jsx)(`button`,{type:`button`,className:H.clear,onClick:()=>{s(``),l(`all`),f(`all`),m(`all`),g(``)},children:`Clear filters`})]}),n.status===`loading`?(0,I.jsxs)(`div`,{className:H.tableWrap,children:[(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{})]}):n.status===`error`?(0,I.jsx)(`div`,{className:H.error,role:`alert`,children:n.error?.message??`Failed to load runs.`}):T.length===0?(0,I.jsx)(`p`,{className:H.empty,children:`No runs match the current filters.`}):(0,I.jsx)(`div`,{className:H.tableWrap,children:(0,I.jsxs)(`table`,{className:H.table,onKeyDown:ne,children:[(0,I.jsx)(`thead`,{children:(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`th`,{scope:`col`,children:`Goal`}),(0,I.jsx)(`th`,{scope:`col`,className:H.statusCol,children:(0,I.jsxs)(`button`,{type:`button`,className:H.sortHeader,onClick:()=>re(`status`),children:[`Status`,ie(`status`)]})}),(0,I.jsx)(`th`,{scope:`col`,className:H.engineCol,children:`Engine`}),(0,I.jsx)(`th`,{scope:`col`,className:H.providerCol,children:`Provider`}),(0,I.jsx)(`th`,{scope:`col`,className:H.tokensCol,children:(0,I.jsxs)(`button`,{type:`button`,className:H.sortHeader,onClick:()=>re(`tokens`),children:[`Tokens in/out`,ie(`tokens`)]})}),(0,I.jsx)(`th`,{scope:`col`,className:H.costCol,children:(0,I.jsxs)(`button`,{type:`button`,className:H.sortHeader,onClick:()=>re(`estCostUsd`),children:[`Est cost`,ie(`estCostUsd`)]})}),(0,I.jsx)(`th`,{scope:`col`,className:H.stepsCol,children:(0,I.jsxs)(`button`,{type:`button`,className:H.sortHeader,onClick:()=>re(`steps`),children:[`Steps`,ie(`steps`)]})}),(0,I.jsx)(`th`,{scope:`col`,className:H.createdCol,children:(0,I.jsxs)(`button`,{type:`button`,className:H.sortHeader,onClick:()=>re(`createdAt`),children:[`Created`,ie(`createdAt`)]})})]})}),(0,I.jsx)(`tbody`,{children:T.map((e,t)=>(0,I.jsxs)(`tr`,{ref:t=>{t?a.current.set(e.id,t):a.current.delete(e.id)},tabIndex:t===r?0:-1,onFocus:()=>i(t),"aria-current":t===r?`true`:void 0,className:H.row,children:[(0,I.jsx)(`td`,{children:(0,I.jsx)(jr,{to:`/work/runs/${e.id}`,"data-focus-key":`run-${e.id}`,className:H.goalLink,title:e.goal,tabIndex:-1,children:e.goal})}),(0,I.jsx)(`td`,{children:(0,I.jsx)(S,{status:e.status})}),(0,I.jsx)(`td`,{children:e.engine}),(0,I.jsx)(`td`,{children:e.provider}),(0,I.jsxs)(`td`,{className:H.numeric,children:[e.usage.tokensIn.toLocaleString(),` / `,e.usage.tokensOut.toLocaleString()]}),(0,I.jsxs)(`td`,{className:H.numeric,children:[`$`,e.usage.estCostUsd.toFixed(4)]}),(0,I.jsx)(`td`,{className:H.numeric,children:e.steps.length}),(0,I.jsx)(`td`,{className:H.date,children:To(e.createdAt)})]},e.id))})]})})]})}var U={view:`_view_16nop_1`,header:`_header_16nop_8`,eyebrow:`_eyebrow_16nop_16`,title:`_title_16nop_22`,freshness:`_freshness_16nop_29`,metaGrid:`_metaGrid_16nop_35`,numeric:`_numeric_16nop_55`,section:`_section_16nop_59`,sectionTitle:`_sectionTitle_16nop_65`,resultText:`_resultText_16nop_70`,taskList:`_taskList_16nop_79`,taskItem:`_taskItem_16nop_85`,taskHeader:`_taskHeader_16nop_98`,taskId:`_taskId_16nop_105`,taskGoal:`_taskGoal_16nop_111`,taskDeps:`_taskDeps_16nop_116`,depLink:`_depLink_16nop_122`,depMissing:`_depMissing_16nop_127`,taskError:`_taskError_16nop_132`,taskUsage:`_taskUsage_16nop_141`,stepList:`_stepList_16nop_148`,stepItem:`_stepItem_16nop_155`,stepTs:`_stepTs_16nop_164`,stepKind:`_stepKind_16nop_170`,stepTask:`_stepTask_16nop_176`,stepSummary:`_stepSummary_16nop_180`,empty:`_empty_16nop_185`,error:`_error_16nop_190`};function Do(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Oo(e){return`task-${encodeURIComponent(e)}`}function ko(){let{id:e}=xn(),t=(0,j.useRef)(null);Oe(`/work/runs/${e??``}`,t);let n=d(te(e??``));if(!e)return(0,I.jsx)(`div`,{className:U.view,children:(0,I.jsx)(`p`,{className:U.error,role:`alert`,children:`No run id in URL.`})});if(n.status===`loading`)return(0,I.jsxs)(`div`,{ref:t,className:U.view,children:[(0,I.jsx)(k,{width:`60%`}),(0,I.jsx)(k,{width:`30%`}),(0,I.jsx)(k,{width:`80%`})]});if(n.status===`error`||!n.data)return(0,I.jsx)(`div`,{ref:t,className:U.view,children:(0,I.jsx)(`p`,{className:U.error,role:`alert`,children:n.error?.message??`Run ${e} not found.`})});let r=n.data,i=new Map(r.tasks.map(e=>[e.id,e]));return(0,I.jsxs)(`div`,{ref:t,className:U.view,children:[(0,I.jsxs)(`header`,{className:U.header,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsxs)(`p`,{className:U.eyebrow,children:[`Run `,r.id]}),(0,I.jsx)(`h1`,{className:U.title,children:r.goal})]}),(0,I.jsxs)(`div`,{className:U.freshness,"aria-live":`polite`,children:[n.status===`refreshing`?(0,I.jsx)(D,{}):null,(0,I.jsx)(S,{status:r.status})]})]}),(0,I.jsxs)(`dl`,{className:U.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Engine`}),(0,I.jsx)(`dd`,{children:r.engine})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Provider`}),(0,I.jsx)(`dd`,{children:r.provider})]}),r.engineModel?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Model`}),(0,I.jsx)(`dd`,{children:r.engineModel})]}):null,(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Tokens in / out`}),(0,I.jsxs)(`dd`,{className:U.numeric,children:[r.usage.tokensIn.toLocaleString(),` / `,r.usage.tokensOut.toLocaleString()]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Est cost`}),(0,I.jsxs)(`dd`,{className:U.numeric,children:[`$`,r.usage.estCostUsd.toFixed(4)]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Steps`}),(0,I.jsx)(`dd`,{className:U.numeric,children:r.usage.steps})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Budget (tokens / steps)`}),(0,I.jsxs)(`dd`,{className:U.numeric,children:[r.budget.maxTokens.toLocaleString(),` / `,r.budget.maxSteps]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Created`}),(0,I.jsx)(`dd`,{children:Do(r.createdAt)})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Updated`}),(0,I.jsx)(`dd`,{children:Do(r.updatedAt)})]}),r.terminationReason?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Termination reason`}),(0,I.jsx)(`dd`,{children:r.terminationReason})]}):null]}),r.result?(0,I.jsxs)(`section`,{className:U.section,children:[(0,I.jsx)(`h2`,{className:U.sectionTitle,children:`Result`}),(0,I.jsx)(`p`,{className:U.resultText,children:r.result})]}):null,(0,I.jsxs)(`section`,{className:U.section,children:[(0,I.jsxs)(`h2`,{className:U.sectionTitle,children:[`Tasks (`,r.tasks.length,`)`]}),r.tasks.length===0?(0,I.jsx)(`p`,{className:U.empty,children:`No tasks recorded.`}):(0,I.jsx)(`ul`,{className:U.taskList,children:r.tasks.map(e=>(0,I.jsxs)(`li`,{id:Oo(e.id),className:U.taskItem,tabIndex:-1,children:[(0,I.jsxs)(`div`,{className:U.taskHeader,children:[(0,I.jsx)(`span`,{className:U.taskId,children:e.id}),(0,I.jsx)(S,{status:e.status})]}),(0,I.jsx)(`p`,{className:U.taskGoal,children:e.goal}),e.deps.length>0?(0,I.jsxs)(`p`,{className:U.taskDeps,children:[`depends on:`,` `,e.deps.map((e,t)=>(0,I.jsxs)(`span`,{children:[t>0?`, `:``,i.has(e)?(0,I.jsx)(`a`,{href:`#${Oo(e)}`,className:U.depLink,children:e}):(0,I.jsxs)(`span`,{className:U.depMissing,children:[e,` (unresolved)`]})]},e))]}):null,e.error?(0,I.jsx)(`p`,{className:U.taskError,role:`alert`,children:e.error}):null,e.usage?(0,I.jsxs)(`p`,{className:U.taskUsage,children:[e.usage.tokensIn.toLocaleString(),` / `,e.usage.tokensOut.toLocaleString(),` tokens · $`,e.usage.estCostUsd.toFixed(4)]}):null]},e.id))})]}),(0,I.jsxs)(`section`,{className:U.section,children:[(0,I.jsxs)(`h2`,{className:U.sectionTitle,children:[`Step log (`,r.steps.length,`)`]}),r.steps.length===0?(0,I.jsx)(`p`,{className:U.empty,children:`No steps recorded.`}):(0,I.jsx)(`ol`,{className:U.stepList,children:r.steps.map((e,t)=>(0,I.jsxs)(`li`,{className:U.stepItem,children:[(0,I.jsx)(`span`,{className:U.stepTs,children:Do(e.ts)}),(0,I.jsx)(`span`,{className:U.stepKind,children:e.kind}),(0,I.jsx)(`span`,{className:U.stepTask,children:e.taskId?(0,I.jsx)(`a`,{href:`#${Oo(e.taskId)}`,className:U.depLink,children:e.taskId}):null}),(0,I.jsx)(`span`,{className:U.stepSummary,children:e.summary})]},`${e.ts}-${t}`))})]})]})}var W={view:`_view_1kj6a_1`,header:`_header_1kj6a_8`,title:`_title_1kj6a_16`,freshness:`_freshness_1kj6a_22`,count:`_count_1kj6a_28`,filters:`_filters_1kj6a_34`,field:`_field_1kj6a_45`,fieldLabel:`_fieldLabel_1kj6a_51`,input:`_input_1kj6a_56`,select:`_select_1kj6a_57`,listWrap:`_listWrap_1kj6a_73`,listHeader:`_listHeader_1kj6a_80`,sortHeader:`_sortHeader_1kj6a_90`,list:`_list_1kj6a_73`,item:`_item_1kj6a_112`,goalLink:`_goalLink_1kj6a_124`,goalText:`_goalText_1kj6a_140`,burndown:`_burndown_1kj6a_150`,burndownTrack:`_burndownTrack_1kj6a_156`,burndownFill:`_burndownFill_1kj6a_164`,burndownLabel:`_burndownLabel_1kj6a_170`,numeric:`_numeric_1kj6a_177`,date:`_date_1kj6a_184`,empty:`_empty_1kj6a_191`,error:`_error_1kj6a_198`};function Ao(e){return e.tasks.filter(e=>e.status===`done`).length}function jo(e){return Math.max(e.plan?.tasks.length??0,e.tasks.length)}function Mo(e){return e.usage??{tokensIn:0,tokensOut:0,estCostUsd:0}}function No(e){let t=Mo(e);return t.tokensIn+t.tokensOut}function Po(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`})}function Fo(){let e=(0,j.useRef)(null);Oe(`/work/swarms`,e);let t=d(ne),n=(0,j.useMemo)(()=>t.data??[],[t.data]),[r,i]=(0,j.useState)(``),[a,o]=(0,j.useState)(`all`),[s,c]=(0,j.useState)(`createdAt`),[l,u]=(0,j.useState)(`desc`),f=(0,j.useMemo)(()=>Array.from(new Set(n.map(e=>e.status))).sort(),[n]),p=(0,j.useMemo)(()=>{let e=n.filter(e=>{if(a!==`all`&&e.status!==a)return!1;if(!r.trim())return!0;let t=r.trim().toLowerCase();return e.id.toLowerCase().includes(t)||e.goal.toLowerCase().includes(t)});return e=[...e].sort((e,t)=>{let n=0;switch(s){case`createdAt`:n=e.createdAt.localeCompare(t.createdAt);break;case`updatedAt`:n=e.updatedAt.localeCompare(t.updatedAt);break;case`progress`:n=(jo(e)>0?Ao(e)/jo(e):0)-(jo(t)>0?Ao(t)/jo(t):0);break;case`tokens`:n=No(e)-No(t);break;case`estCostUsd`:n=Mo(e).estCostUsd-Mo(t).estCostUsd}return l===`asc`?n:-n}),e},[n,a,r,s,l]);function m(e){e===s?u(e=>e===`asc`?`desc`:`asc`):(c(e),u(`desc`))}function h(e){return e===s?l===`asc`?` ↑`:` ↓`:``}return(0,I.jsxs)(`div`,{ref:e,className:W.view,children:[(0,I.jsxs)(`header`,{className:W.header,children:[(0,I.jsx)(`h1`,{className:W.title,children:`Swarms`}),(0,I.jsxs)(`div`,{className:W.freshness,"aria-live":`polite`,children:[t.status===`refreshing`?(0,I.jsx)(D,{}):null,(0,I.jsxs)(`span`,{className:W.count,children:[p.length,` of `,n.length,` swarms`]})]})]}),(0,I.jsxs)(`form`,{className:W.filters,role:`search`,"aria-label":`Filter swarms`,onSubmit:e=>e.preventDefault(),children:[(0,I.jsxs)(`label`,{className:W.field,children:[(0,I.jsx)(`span`,{className:W.fieldLabel,children:`Search`}),(0,I.jsx)(`input`,{type:`text`,className:W.input,placeholder:`goal or swarm id`,value:r,onChange:e=>i(e.target.value)})]}),(0,I.jsxs)(`label`,{className:W.field,children:[(0,I.jsx)(`span`,{className:W.fieldLabel,children:`Status`}),(0,I.jsxs)(`select`,{className:W.select,value:a,onChange:e=>o(e.target.value),children:[(0,I.jsx)(`option`,{value:`all`,children:`All`}),f.map(e=>(0,I.jsx)(`option`,{value:e,children:e},e))]})]})]}),t.status===`loading`?(0,I.jsxs)(`div`,{className:W.listWrap,children:[(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{})]}):t.status===`error`?(0,I.jsx)(`div`,{className:W.error,role:`alert`,children:t.error?.message??`Failed to load swarms.`}):p.length===0?(0,I.jsx)(`p`,{className:W.empty,children:`No swarms match the current filters.`}):(0,I.jsxs)(`div`,{className:W.listWrap,children:[(0,I.jsxs)(`div`,{className:W.listHeader,children:[(0,I.jsx)(`span`,{children:`Goal`}),(0,I.jsxs)(`button`,{type:`button`,className:W.sortHeader,onClick:()=>m(`progress`),children:[`Progress`,h(`progress`)]}),(0,I.jsxs)(`button`,{type:`button`,className:W.sortHeader,onClick:()=>m(`tokens`),children:[`Tokens`,h(`tokens`)]}),(0,I.jsxs)(`button`,{type:`button`,className:W.sortHeader,onClick:()=>m(`estCostUsd`),children:[`Cost`,h(`estCostUsd`)]}),(0,I.jsxs)(`button`,{type:`button`,className:W.sortHeader,onClick:()=>m(`createdAt`),children:[`Created`,h(`createdAt`)]})]}),(0,I.jsx)(`ul`,{className:W.list,children:p.map(e=>{let t=Ao(e),n=jo(e),r=n>0?Math.round(t/n*100):0,i=Mo(e);return(0,I.jsxs)(`li`,{className:W.item,children:[(0,I.jsxs)(jr,{to:`/work/swarms/${e.id}`,"data-focus-key":`swarm-${e.id}`,className:W.goalLink,title:e.goal,children:[(0,I.jsx)(`span`,{className:W.goalText,children:e.goal}),(0,I.jsx)(S,{status:e.status})]}),(0,I.jsxs)(`div`,{className:W.burndown,children:[(0,I.jsx)(`div`,{className:W.burndownTrack,children:(0,I.jsx)(`div`,{className:W.burndownFill,style:{width:`${r}%`}})}),(0,I.jsxs)(`span`,{className:W.burndownLabel,children:[t,`/`,n]})]}),(0,I.jsxs)(`span`,{className:W.numeric,children:[i.tokensIn.toLocaleString(),`/`,i.tokensOut.toLocaleString()]}),(0,I.jsxs)(`span`,{className:W.numeric,children:[`$`,i.estCostUsd.toFixed(4)]}),(0,I.jsx)(`span`,{className:W.date,children:Po(e.createdAt)})]},e.id)})})]})]})}var Io={svg:`_svg_2w2xr_1`,phaseLabel:`_phaseLabel_2w2xr_7`,edge:`_edge_2w2xr_14`,arrowHead:`_arrowHead_2w2xr_19`,nodeLink:`_nodeLink_2w2xr_23`,nodeRect:`_nodeRect_2w2xr_26`,nodeId:`_nodeId_2w2xr_31`,nodeGoal:`_nodeGoal_2w2xr_37`,neutral:`_neutral_2w2xr_45`,statusDot:`_statusDot_2w2xr_49`,info:`_info_2w2xr_53`,running:`_running_2w2xr_61`,success:`_success_2w2xr_69`,warning:`_warning_2w2xr_77`,danger:`_danger_2w2xr_85`,unknown:`_unknown_2w2xr_93`,empty:`_empty_2w2xr_105`},Lo={scaffold:0,build:1,integrate:2,verify:3,review:4};function Ro(e,t){let n=new Map;for(let t of e?.tasks??[])n.set(t.id,{id:t.id,phase:t.phase,goal:t.goal,deps:t.deps,status:`pending`});for(let e of t){let t=n.get(e.id);n.set(e.id,{id:e.id,phase:e.phase||t?.phase||`build`,goal:t?.goal??``,deps:t?.deps??[],status:e.status})}return Array.from(n.values())}function zo(e,t){return e.length>t?`${e.slice(0,t-1)}…`:e}var Bo=140,Vo=48,Ho=20;function Uo({tasks:e,taskAnchorPrefix:t=`dag-task`}){if(e.length===0)return(0,I.jsx)(`p`,{className:Io.empty,children:`No tasks in this swarm.`});let n=new Map;for(let t of e){let e=t.phase||`build`,r=n.get(e)??[];r.push(t),n.set(e,r)}let r=Array.from(n.keys()).sort((e,t)=>(Lo[e]??99)-(Lo[t]??99)),i=new Map,a=Ho;for(let e of r)i.set(e,a),a+=200;let o=a+Ho,s=new Map;for(let e of r){let t=Ho;for(let r of n.get(e)){let n=i.get(e);s.set(r.id,{x:n,y:t,cx:n+Bo/2,cy:t+Vo/2}),t+=68}}let c=Math.max(...Array.from(s.values()).map(e=>e.y+Vo))+40,l=[];for(let t of e){let e=s.get(t.id);if(e)for(let n of t.deps){let r=s.get(n);if(!r)continue;let i=r.x+Bo,a=r.cy,o=e.x,c=e.cy,u=(i+o)/2;l.push({key:`${n}->${t.id}`,d:`M ${i} ${a} C ${u} ${a}, ${u} ${c}, ${o} ${c}`})}}return(0,I.jsxs)(`svg`,{width:o,height:c,viewBox:`0 0 ${o} ${c}`,className:Io.svg,role:`img`,"aria-label":`Swarm task dependency graph`,children:[(0,I.jsx)(`defs`,{children:(0,I.jsx)(`marker`,{id:`dag-arrow`,markerWidth:`8`,markerHeight:`8`,refX:`6`,refY:`3`,orient:`auto`,children:(0,I.jsx)(`path`,{d:`M0,0 L0,6 L8,3 z`,className:Io.arrowHead})})}),r.map(e=>(0,I.jsx)(`text`,{x:i.get(e)+Bo/2,y:14,textAnchor:`middle`,className:Io.phaseLabel,children:e},e)),l.map(e=>(0,I.jsx)(`path`,{d:e.d,className:Io.edge,fill:`none`,markerEnd:`url(#dag-arrow)`},e.key)),e.map(e=>{let n=s.get(e.id);if(!n)return null;let r=C(e.status);return(0,I.jsx)(`g`,{transform:`translate(${n.x},${n.y})`,children:(0,I.jsxs)(`a`,{href:`#${t}-${encodeURIComponent(e.id)}`,className:Io.nodeLink,children:[(0,I.jsx)(`title`,{children:`${e.id} — ${e.goal} (${e.status})`}),(0,I.jsx)(`rect`,{width:Bo,height:Vo,rx:6,ry:6,className:`${Io.nodeRect} ${Io[r]}`}),(0,I.jsx)(`circle`,{cx:10,cy:Vo/2,r:4,className:`${Io.statusDot} ${Io[r]}`}),(0,I.jsx)(`text`,{x:20,y:17,className:Io.nodeId,children:zo(e.id,18)}),(0,I.jsx)(`text`,{x:20,y:33,className:Io.nodeGoal,children:zo(e.goal,20)})]})},e.id)})]})}var G={view:`_view_19up6_1`,header:`_header_19up6_8`,eyebrow:`_eyebrow_19up6_16`,title:`_title_19up6_22`,freshness:`_freshness_19up6_29`,burndownRow:`_burndownRow_19up6_35`,burndownTrack:`_burndownTrack_19up6_41`,burndownFill:`_burndownFill_19up6_49`,burndownLabel:`_burndownLabel_19up6_55`,metaGrid:`_metaGrid_19up6_62`,numeric:`_numeric_19up6_80`,mono:`_mono_19up6_84`,section:`_section_19up6_90`,sectionTitle:`_sectionTitle_19up6_96`,resultText:`_resultText_19up6_101`,escalationList:`_escalationList_19up6_110`,escalationItem:`_escalationItem_19up6_115`,escalationJson:`_escalationJson_19up6_120`,dagWrap:`_dagWrap_19up6_130`,taskList:`_taskList_19up6_138`,taskItem:`_taskItem_19up6_144`,taskHeader:`_taskHeader_19up6_157`,taskId:`_taskId_19up6_163`,taskPhase:`_taskPhase_19up6_169`,taskGoal:`_taskGoal_19up6_176`,taskDeps:`_taskDeps_19up6_181`,error:`_error_19up6_188`},Wo=`dag-task`;function Go(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Ko(){let{id:e}=xn(),t=(0,j.useRef)(null);Oe(`/work/swarms/${e??``}`,t);let n=d(ve(e??``));if(!e)return(0,I.jsx)(`div`,{className:G.view,children:(0,I.jsx)(`p`,{className:G.error,role:`alert`,children:`No swarm id in URL.`})});if(n.status===`loading`)return(0,I.jsxs)(`div`,{ref:t,className:G.view,children:[(0,I.jsx)(k,{width:`60%`}),(0,I.jsx)(k,{width:`30%`}),(0,I.jsx)(k,{width:`80%`})]});if(n.status===`error`||!n.data)return(0,I.jsx)(`div`,{ref:t,className:G.view,children:(0,I.jsx)(`p`,{className:G.error,role:`alert`,children:n.error?.message??`Swarm ${e} not found.`})});let r=n.data,i=r.tasks.filter(e=>e.status===`done`).length,a=Math.max(r.plan?.tasks.length??0,r.tasks.length),o=a>0?Math.round(i/a*100):0,s=Ro(r.plan,r.tasks),c=r.usage??{tokensIn:0,tokensOut:0,estCostUsd:0};return(0,I.jsxs)(`div`,{ref:t,className:G.view,children:[(0,I.jsxs)(`header`,{className:G.header,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsxs)(`p`,{className:G.eyebrow,children:[`Swarm `,r.id]}),(0,I.jsx)(`h1`,{className:G.title,children:r.goal})]}),(0,I.jsxs)(`div`,{className:G.freshness,"aria-live":`polite`,children:[n.status===`refreshing`?(0,I.jsx)(D,{}):null,(0,I.jsx)(S,{status:r.status})]})]}),(0,I.jsxs)(`div`,{className:G.burndownRow,children:[(0,I.jsx)(`div`,{className:G.burndownTrack,children:(0,I.jsx)(`div`,{className:G.burndownFill,style:{width:`${o}%`}})}),(0,I.jsxs)(`span`,{className:G.burndownLabel,children:[i,`/`,a,` tasks done (`,Ve(a>0?i/a*100:0),`)`]})]}),(0,I.jsxs)(`dl`,{className:G.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Tokens in / out`}),(0,I.jsxs)(`dd`,{className:G.numeric,children:[c.tokensIn.toLocaleString(),` / `,c.tokensOut.toLocaleString()]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Est cost`}),(0,I.jsxs)(`dd`,{className:G.numeric,children:[`$`,c.estCostUsd.toFixed(4)]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Parallelism`}),(0,I.jsx)(`dd`,{className:G.numeric,children:r.parallel})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Created`}),(0,I.jsx)(`dd`,{children:Go(r.createdAt)})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Updated`}),(0,I.jsx)(`dd`,{children:Go(r.updatedAt)})]}),r.project?(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Project`}),(0,I.jsx)(`dd`,{className:G.mono,children:r.project})]}):null]}),r.escalations&&r.escalations.length>0?(0,I.jsxs)(`section`,{className:G.section,children:[(0,I.jsxs)(`h2`,{className:G.sectionTitle,children:[`Escalations (`,r.escalations.length,`)`]}),(0,I.jsx)(`ul`,{className:G.escalationList,children:r.escalations.map((e,t)=>(0,I.jsx)(`li`,{className:G.escalationItem,children:(0,I.jsx)(`pre`,{className:G.escalationJson,children:JSON.stringify(e,null,2)})},t))})]}):null,r.result?(0,I.jsxs)(`section`,{className:G.section,children:[(0,I.jsx)(`h2`,{className:G.sectionTitle,children:`Result`}),(0,I.jsx)(`p`,{className:G.resultText,children:r.result})]}):null,(0,I.jsxs)(`section`,{className:G.section,children:[(0,I.jsx)(`h2`,{className:G.sectionTitle,children:`Task graph`}),(0,I.jsx)(`div`,{className:G.dagWrap,children:(0,I.jsx)(Uo,{tasks:s,taskAnchorPrefix:Wo})})]}),(0,I.jsxs)(`section`,{className:G.section,children:[(0,I.jsxs)(`h2`,{className:G.sectionTitle,children:[`Tasks (`,s.length,`)`]}),(0,I.jsx)(`ul`,{className:G.taskList,children:s.map(e=>(0,I.jsxs)(`li`,{id:`${Wo}-${e.id}`,"data-focus-key":`swarm-task-${e.id}`,className:G.taskItem,tabIndex:-1,children:[(0,I.jsxs)(`div`,{className:G.taskHeader,children:[(0,I.jsx)(`span`,{className:G.taskId,children:e.id}),(0,I.jsx)(`span`,{className:G.taskPhase,children:e.phase}),(0,I.jsx)(S,{status:e.status})]}),(0,I.jsx)(`p`,{className:G.taskGoal,children:e.goal}),e.deps.length>0?(0,I.jsxs)(`p`,{className:G.taskDeps,children:[`depends on: `,e.deps.join(`, `)]}):null]},e.id))})]})]})}var K={view:`_view_1bwoy_1`,header:`_header_1bwoy_8`,title:`_title_1bwoy_16`,freshness:`_freshness_1bwoy_22`,callout:`_callout_1bwoy_28`,calloutTitle:`_calloutTitle_1bwoy_39`,calloutBody:`_calloutBody_1bwoy_44`,calloutCommand:`_calloutCommand_1bwoy_48`,metaGrid:`_metaGrid_1bwoy_59`,section:`_section_1bwoy_77`,sectionTitle:`_sectionTitle_1bwoy_83`,serviceError:`_serviceError_1bwoy_88`,tickTableWrap:`_tickTableWrap_1bwoy_96`,tickTable:`_tickTable_1bwoy_96`,date:`_date_1bwoy_124`,numeric:`_numeric_1bwoy_130`,dryRun:`_dryRun_1bwoy_135`,empty:`_empty_1bwoy_140`,error:`_error_1bwoy_145`},qo={missing:`No daemon state file has been written yet — the daemon may never have run on this machine.`,malformed:`The daemon state file exists but failed to parse.`,unreadable:`The daemon state file could not be read. This is also the exact signal produced when a state-recovery marker is present (a prior repair left a quarantine in progress) — the API does not distinguish the two cases, so treat this as "inspect before trusting displayed daemon state."`,inconsistent:`The daemon state file and the live lock/activity check disagree — the daemon may be mid-restart.`,unavailable:`The daemon state read path itself failed (I/O error or similar).`};function Jo(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Yo({quality:e}){let t=e.reason,n=qo[t]??`Daemon state could not be verified.`;return(0,I.jsxs)(`section`,{className:K.callout,role:`alert`,children:[(0,I.jsxs)(`p`,{className:K.calloutTitle,children:[`Daemon state is unknown (`,t,`)`]}),(0,I.jsx)(`p`,{className:K.calloutBody,children:n}),(0,I.jsx)(`p`,{className:K.calloutBody,children:`Real remedy — preview or execute a state recovery from a terminal on this machine:`}),(0,I.jsx)(`pre`,{className:K.calloutCommand,children:`ashlr daemon recover-state --dry-run --expected-sha256 <sha256> [--json]
|
|
6
|
-
ashlr daemon recover-state --execute --plan-id <uuid> --plan-sha256 <sha256> --authorize <plan-sha256> [--json]`}),(0,I.jsx)(`p`,{className:K.calloutBody,children:`If a quarantine already exists and needs resolving instead:`}),(0,I.jsx)(`pre`,{className:K.calloutCommand,children:`ashlr daemon resolve-state --dry-run --quarantine-plan-id <uuid> --quarantine-receipt-sha256 <sha256> [--json]
|
|
7
|
-
ashlr daemon resolve-state --execute --plan-id <uuid> --plan-sha256 <sha256> --authorize <plan-sha256> --confirm <plan-sha256> [--json]`})]})}function Xo(){let e=(0,j.useRef)(null);Oe(`/control/daemon`,e);let t=d(pe),n=d(ce),r=t.data?.daemon,i=n.data;return(0,I.jsxs)(`div`,{ref:e,className:K.view,children:[(0,I.jsxs)(`header`,{className:K.header,children:[(0,I.jsx)(`h1`,{className:K.title,children:`Daemon`}),(0,I.jsxs)(`div`,{className:K.freshness,"aria-live":`polite`,children:[t.status===`refreshing`||n.status===`refreshing`?(0,I.jsx)(D,{}):null,r?(0,I.jsx)(x,{quality:r.sourceQuality,label:`daemon state`,children:(0,I.jsx)(S,{status:r.running?`running`:`pending`,children:r.running?`running`:`stopped`})}):null]})]}),t.status===`loading`?(0,I.jsx)(k,{width:`60%`}):t.status===`error`||!r?(0,I.jsx)(`p`,{className:K.error,role:`alert`,children:t.error?.message??`Failed to load control snapshot.`}):(0,I.jsxs)(I.Fragment,{children:[b(r.sourceQuality)?null:(0,I.jsx)(Yo,{quality:r.sourceQuality}),(0,I.jsxs)(`dl`,{className:K.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Runtime state`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`runtime state`,children:r.runtimeState})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`PID`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`pid`,children:r.pid??`—`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Last tick`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`last tick`,children:Jo(r.lastTickAt)})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Today's spend`}),(0,I.jsx)(`dd`,{children:(0,I.jsxs)(x,{quality:r.sourceQuality,label:`spend`,children:[`$`,r.todaySpentUsd.toFixed(2)]})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Direction mode`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`direction mode`,children:r.activeDirectionMode??`none`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Direction reason`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`direction reason`,children:r.activeDirectionReason??`—`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Autonomy control loop`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`autonomy control loop`,children:r.autonomyControlLoop?`enabled`:`disabled`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Autonomy control mode`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:r.sourceQuality,label:`autonomy control mode`,children:r.autonomyControlMode})})]})]}),(0,I.jsxs)(`section`,{className:K.section,children:[(0,I.jsx)(`h2`,{className:K.sectionTitle,children:`OS service`}),(0,I.jsxs)(`dl`,{className:K.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Registration state`}),(0,I.jsx)(`dd`,{children:r.service.registrationState})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Installed`}),(0,I.jsx)(`dd`,{children:r.service.installed?`yes`:`no`})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Running`}),(0,I.jsx)(`dd`,{children:r.service.running?`yes`:`no`})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Runtime state`}),(0,I.jsx)(`dd`,{children:r.service.runtimeState??`unknown`})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Platform`}),(0,I.jsx)(`dd`,{children:r.service.platformSpec})]})]}),r.service.errorLog?(0,I.jsx)(`p`,{className:K.serviceError,role:`alert`,children:r.service.errorLog}):null]})]}),(0,I.jsxs)(`section`,{className:K.section,children:[(0,I.jsx)(`h2`,{className:K.sectionTitle,children:`Recent ticks`}),n.status===`loading`?(0,I.jsx)(k,{width:`80%`}):!i||!i.ticks||i.ticks.length===0?(0,I.jsx)(`p`,{className:K.empty,children:`No tick history available.`}):(0,I.jsx)(`div`,{className:K.tickTableWrap,children:(0,I.jsxs)(`table`,{className:K.tickTable,children:[(0,I.jsx)(`thead`,{children:(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`th`,{scope:`col`,children:`Time`}),(0,I.jsx)(`th`,{scope:`col`,children:`Reason`}),(0,I.jsx)(`th`,{scope:`col`,children:`Items`}),(0,I.jsx)(`th`,{scope:`col`,children:`Proposals`}),(0,I.jsx)(`th`,{scope:`col`,children:`Spend`})]})}),(0,I.jsx)(`tbody`,{children:[...i.ticks].reverse().slice(0,20).map((e,t)=>(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`td`,{className:K.date,children:Jo(e.ts)}),(0,I.jsxs)(`td`,{children:[e.reason,e.dryRun?(0,I.jsx)(`span`,{className:K.dryRun,children:` (dry-run)`}):null]}),(0,I.jsx)(`td`,{className:K.numeric,children:e.itemsConsidered}),(0,I.jsx)(`td`,{className:K.numeric,children:e.proposalsCreated}),(0,I.jsxs)(`td`,{className:K.numeric,children:[`$`,e.spentUsd.toFixed(4)]})]},`${e.ts}-${t}`))})]})})]})]})}var q={view:`_view_ssrhq_1`,header:`_header_ssrhq_8`,title:`_title_ssrhq_14`,freshness:`_freshness_ssrhq_20`,section:`_section_ssrhq_26`,sectionTitle:`_sectionTitle_ssrhq_32`,killSwitchRow:`_killSwitchRow_ssrhq_37`,pauseButton:`_pauseButton_ssrhq_47`,resumeButton:`_resumeButton_ssrhq_65`,mutationError:`_mutationError_ssrhq_83`,metaGrid:`_metaGrid_ssrhq_91`,numeric:`_numeric_ssrhq_109`,lockWarning:`_lockWarning_ssrhq_113`,tableWrap:`_tableWrap_ssrhq_117`,table:`_table_ssrhq_117`,mono:`_mono_ssrhq_144`,empty:`_empty_ssrhq_149`,error:`_error_ssrhq_154`,confirmBody:`_confirmBody_ssrhq_162`,confirmActions:`_confirmActions_ssrhq_168`,cancelButton:`_cancelButton_ssrhq_174`,confirmButton:`_confirmButton_ssrhq_186`};function Zo(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Qo(){let e=(0,j.useRef)(null);Oe(`/control/fleet`,e);let t=d(me),n=d(E),r=l(),[i,a]=(0,j.useState)(null),[o,s]=(0,j.useState)(!1),[c,u]=(0,j.useState)(!1),[f,p]=(0,j.useState)(!1),[m,h]=(0,j.useState)(null);async function g(e){p(!0),h(null);try{e===`pause`?await be():await ye()}catch(e){h(e instanceof Error?e.message:String(e))}finally{p(!1),a(null)}}function _(e){h(null),a(e),s(!0)}function y(){s(!1),r.hasHold?i&&g(i):u(!0)}(0,j.useEffect)(()=>{c||i&&(r.hasHold?g(i):a(null))},[c]);let b=t.data,C=b?.killSwitch,ee=C?{sourceState:C.sourceState,complete:C.sourceState===`healthy`,reason:C.reason}:void 0,w=b?.killed===!0;return(0,I.jsxs)(`div`,{ref:e,className:q.view,children:[(0,I.jsxs)(`header`,{className:q.header,children:[(0,I.jsx)(`h1`,{className:q.title,children:`Fleet`}),(0,I.jsx)(`div`,{className:q.freshness,"aria-live":`polite`,children:t.status===`refreshing`||n.status===`refreshing`?(0,I.jsx)(D,{}):null})]}),t.status===`loading`?(0,I.jsx)(k,{width:`60%`}):t.status===`error`||!b?(0,I.jsx)(`p`,{className:q.error,role:`alert`,children:t.error?.message??`Failed to load fleet status.`}):(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`section`,{className:q.section,children:[(0,I.jsx)(`h2`,{className:q.sectionTitle,children:`Kill switch`}),(0,I.jsx)(`div`,{className:q.killSwitchRow,children:(0,I.jsx)(x,{quality:ee,label:`kill switch`,renderControl:()=>(0,I.jsx)(`button`,{type:`button`,className:w?q.resumeButton:q.pauseButton,onClick:()=>_(w?`resume`:`pause`),disabled:f,children:f?`Working…`:w?`Resume fleet`:`Pause fleet`}),children:(0,I.jsx)(S,{status:w?`paused`:`running`,children:w?`engaged — fleet paused`:`clear — fleet active`})})}),m?(0,I.jsx)(`p`,{className:q.mutationError,role:`alert`,children:m}):null]}),(0,I.jsxs)(`section`,{className:q.section,children:[(0,I.jsx)(`h2`,{className:q.sectionTitle,children:`Queue depth`}),(0,I.jsxs)(`dl`,{className:q.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Backlog items`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.backlogItems})]}),b.queue.eligibleBacklogItems===void 0?null:(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Eligible`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.eligibleBacklogItems})]}),b.queue.cooldownItems===void 0?null:(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Cooldown`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.cooldownItems})]}),b.queue.pendingItems===void 0?null:(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Pending`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.pendingItems})]}),b.queue.nextEligibleAt===void 0?null:(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Next eligible`}),(0,I.jsx)(`dd`,{children:Zo(b.queue.nextEligibleAt)})]})]})]}),(0,I.jsxs)(`section`,{className:q.section,children:[(0,I.jsx)(`h2`,{className:q.sectionTitle,children:`Lease health`}),b.queue.shared?(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`dl`,{className:q.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Active claims`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.shared.activeClaims})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Owned by this machine`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.shared.ownedClaims})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Reclaimable (expired)`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.shared.reclaimableClaims})]}),b.queue.shared.executingClaims===void 0?null:(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Executing`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.shared.executingClaims})]}),b.queue.shared.ambiguousClaims===void 0?null:(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Ambiguous (needs reconciliation)`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b.queue.shared.ambiguousClaims})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Next lease expiry`}),(0,I.jsx)(`dd`,{children:Zo(b.queue.shared.nextLeaseExpiryAt)})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Advisory lock`}),(0,I.jsxs)(`dd`,{children:[b.queue.shared.lock.present?b.queue.shared.lock.stale?`present, stale`:`present, healthy`:`absent`,b.queue.shared.lock.recoveryRequired?(0,I.jsx)(`span`,{className:q.lockWarning,children:` — recovery required`}):null]})]})]}),b.queue.shared.claimsByMachine.length>0?(0,I.jsx)(`div`,{className:q.tableWrap,children:(0,I.jsxs)(`table`,{className:q.table,children:[(0,I.jsx)(`thead`,{children:(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`th`,{scope:`col`,children:`Machine`}),(0,I.jsx)(`th`,{scope:`col`,children:`Active`}),(0,I.jsx)(`th`,{scope:`col`,children:`Expired`}),(0,I.jsx)(`th`,{scope:`col`,children:`Executing`})]})}),(0,I.jsx)(`tbody`,{children:b.queue.shared.claimsByMachine.map(e=>(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`td`,{className:q.mono,children:e.machineId}),(0,I.jsx)(`td`,{className:q.numeric,children:e.active}),(0,I.jsx)(`td`,{className:q.numeric,children:e.expired}),(0,I.jsx)(`td`,{className:q.numeric,children:e.executing??`—`})]},e.machineId))})]})}):null]}):(0,I.jsx)(`p`,{className:q.empty,children:`Shared fleet queue is not in use on this deployment.`})]})]}),(0,I.jsxs)(`section`,{className:q.section,children:[(0,I.jsx)(`h2`,{className:q.sectionTitle,children:`Recent activity`}),n.status===`loading`?(0,I.jsx)(k,{width:`70%`}):n.status===`error`||!n.data?(0,I.jsx)(`p`,{className:q.error,role:`alert`,children:n.error?.message??`Failed to load fleet activity.`}):(0,I.jsxs)(`dl`,{className:q.metaGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Cooldown items`}),(0,I.jsx)(`dd`,{className:q.numeric,children:n.data.cooldownCount})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Engines ready`}),(0,I.jsxs)(`dd`,{className:q.numeric,children:[n.data.engineReadiness.filter(e=>e.installed&&e.authed===!0).length,` /`,` `,n.data.engineReadiness.length]})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Recent auto-merges`}),(0,I.jsx)(`dd`,{className:q.numeric,children:b?.merges.recent??`—`})]})]})]}),(0,I.jsxs)(v,{open:o,onClose:()=>{s(!1),a(null)},titleId:`fleet-kill-switch-confirm`,title:i===`resume`?`Resume the fleet?`:`Pause the fleet?`,children:[(0,I.jsx)(`p`,{className:q.confirmBody,children:i===`resume`?`This clears the global kill switch. Autonomous dispatch will resume across the fleet.`:`This engages the global kill switch. Autonomous dispatch halts fleet-wide until explicitly resumed.`}),(0,I.jsxs)(`div`,{className:q.confirmActions,children:[(0,I.jsx)(`button`,{type:`button`,className:q.cancelButton,onClick:()=>{s(!1),a(null)},children:`Cancel`}),(0,I.jsx)(`button`,{type:`button`,className:q.confirmButton,onClick:y,children:i===`resume`?`Yes, resume`:`Yes, pause`})]})]}),(0,I.jsx)(Ce,{open:c,onClose:()=>u(!1),reason:i===`resume`?`Resuming the fleet requires the dispatch token.`:`Pausing the fleet requires the dispatch token.`})]})}var J={view:`_view_1fet3_1`,header:`_header_1fet3_8`,title:`_title_1fet3_14`,freshness:`_freshness_1fet3_20`,unavailable:`_unavailable_1fet3_26`,counts:`_counts_1fet3_35`,countTile:`_countTile_1fet3_41`,countValue:`_countValue_1fet3_51`,countLabel:`_countLabel_1fet3_57`,critical:`_critical_1fet3_64`,high:`_high_1fet3_65`,medium:`_medium_1fet3_68`,low:`_low_1fet3_71`,filters:`_filters_1fet3_75`,field:`_field_1fet3_86`,fieldLabel:`_fieldLabel_1fet3_92`,input:`_input_1fet3_97`,select:`_select_1fet3_98`,tableWrap:`_tableWrap_1fet3_114`,table:`_table_1fet3_114`,mono:`_mono_1fet3_141`,empty:`_empty_1fet3_146`,error:`_error_1fet3_153`},$o={critical:`danger`,high:`danger`,medium:`warning`,low:`neutral`},es={critical:0,high:1,medium:2,low:3};function ts(){let e=(0,j.useRef)(null);Oe(`/control/security`,e);let t=d(pe),n=t.data?.security,[r,i]=(0,j.useState)(``),[a,o]=(0,j.useState)(`all`),[s,c]=(0,j.useState)(`all`),l=(0,j.useMemo)(()=>Array.from(new Set((n?.findings??[]).map(e=>e.repo))).sort(),[n]),u=(0,j.useMemo)(()=>(n?.findings??[]).filter(e=>a===`all`||e.severity===a).filter(e=>s===`all`||e.repo===s).filter(e=>{if(!r.trim())return!0;let t=r.trim().toLowerCase();return e.title.toLowerCase().includes(t)||e.repo.toLowerCase().includes(t)}).sort((e,t)=>(es[e.severity]??9)-(es[t.severity]??9)),[n,a,s,r]);return(0,I.jsxs)(`div`,{ref:e,className:J.view,children:[(0,I.jsxs)(`header`,{className:J.header,children:[(0,I.jsx)(`h1`,{className:J.title,children:`Security`}),(0,I.jsx)(`div`,{className:J.freshness,"aria-live":`polite`,children:t.status===`refreshing`?(0,I.jsx)(D,{}):null})]}),t.status===`loading`?(0,I.jsx)(k,{width:`60%`}):t.status===`error`||!n?(0,I.jsx)(`p`,{className:J.error,role:`alert`,children:t.error?.message??`Failed to load control snapshot.`}):n.available?(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`div`,{className:J.counts,children:[(0,I.jsxs)(`div`,{className:`${J.countTile} ${J.critical}`,children:[(0,I.jsx)(`span`,{className:J.countValue,children:n.counts.critical}),(0,I.jsx)(`span`,{className:J.countLabel,children:`Critical`})]}),(0,I.jsxs)(`div`,{className:`${J.countTile} ${J.high}`,children:[(0,I.jsx)(`span`,{className:J.countValue,children:n.counts.high}),(0,I.jsx)(`span`,{className:J.countLabel,children:`High`})]}),(0,I.jsxs)(`div`,{className:`${J.countTile} ${J.medium}`,children:[(0,I.jsx)(`span`,{className:J.countValue,children:n.counts.medium}),(0,I.jsx)(`span`,{className:J.countLabel,children:`Medium`})]}),(0,I.jsxs)(`div`,{className:`${J.countTile} ${J.low}`,children:[(0,I.jsx)(`span`,{className:J.countValue,children:n.counts.low}),(0,I.jsx)(`span`,{className:J.countLabel,children:`Low`})]})]}),(0,I.jsxs)(`form`,{className:J.filters,role:`search`,"aria-label":`Filter findings`,onSubmit:e=>e.preventDefault(),children:[(0,I.jsxs)(`label`,{className:J.field,children:[(0,I.jsx)(`span`,{className:J.fieldLabel,children:`Search`}),(0,I.jsx)(`input`,{type:`text`,className:J.input,placeholder:`title or repo`,value:r,onChange:e=>i(e.target.value)})]}),(0,I.jsxs)(`label`,{className:J.field,children:[(0,I.jsx)(`span`,{className:J.fieldLabel,children:`Severity`}),(0,I.jsxs)(`select`,{className:J.select,value:a,onChange:e=>o(e.target.value),children:[(0,I.jsx)(`option`,{value:`all`,children:`All`}),(0,I.jsx)(`option`,{value:`critical`,children:`Critical`}),(0,I.jsx)(`option`,{value:`high`,children:`High`}),(0,I.jsx)(`option`,{value:`medium`,children:`Medium`}),(0,I.jsx)(`option`,{value:`low`,children:`Low`})]})]}),(0,I.jsxs)(`label`,{className:J.field,children:[(0,I.jsx)(`span`,{className:J.fieldLabel,children:`Repo`}),(0,I.jsxs)(`select`,{className:J.select,value:s,onChange:e=>c(e.target.value),children:[(0,I.jsx)(`option`,{value:`all`,children:`All`}),l.map(e=>(0,I.jsx)(`option`,{value:e,children:e},e))]})]})]}),u.length===0?(0,I.jsx)(`p`,{className:J.empty,children:`No findings match the current filters.`}):(0,I.jsx)(`div`,{className:J.tableWrap,children:(0,I.jsxs)(`table`,{className:J.table,children:[(0,I.jsx)(`thead`,{children:(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`th`,{scope:`col`,children:`Severity`}),(0,I.jsx)(`th`,{scope:`col`,children:`Repo`}),(0,I.jsx)(`th`,{scope:`col`,children:`Finding`})]})}),(0,I.jsx)(`tbody`,{children:u.map((e,t)=>(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`td`,{children:(0,I.jsx)(S,{status:e.severity,tone:$o[e.severity]??`neutral`})}),(0,I.jsx)(`td`,{className:J.mono,children:e.repo}),(0,I.jsx)(`td`,{children:e.title})]},`${e.repo}-${e.title}-${t}`))})]})})]}):(0,I.jsx)(`p`,{className:J.unavailable,children:`No cached security data available — the backlog is absent, empty, or has no security-source findings. This is not the same as "clean": it means binshield hasn't produced cached findings for this fleet yet.`})]})}var Y={view:`_view_1yeql_1`,header:`_header_1yeql_8`,title:`_title_1yeql_14`,freshness:`_freshness_1yeql_20`,count:`_count_1yeql_26`,missionCard:`_missionCard_1yeql_31`,sectionTitle:`_sectionTitle_1yeql_41`,missionState:`_missionState_1yeql_49`,sourceGrid:`_sourceGrid_1yeql_54`,list:`_list_1yeql_68`,goalCard:`_goalCard_1yeql_74`,goalHeader:`_goalHeader_1yeql_88`,goalObjective:`_goalObjective_1yeql_95`,progressRow:`_progressRow_1yeql_100`,progressTrack:`_progressTrack_1yeql_106`,progressFill:`_progressFill_1yeql_114`,progressLabel:`_progressLabel_1yeql_120`,nextActionable:`_nextActionable_1yeql_127`,mono:`_mono_1yeql_132`,milestoneList:`_milestoneList_1yeql_136`,milestoneItem:`_milestoneItem_1yeql_142`,milestoneTitle:`_milestoneTitle_1yeql_149`,noMilestones:`_noMilestones_1yeql_153`,empty:`_empty_1yeql_158`,error:`_error_1yeql_165`};function ns(){let e=(0,j.useRef)(null);Oe(`/goals`,e);let t=d(le),n=d(w),r=t.data??[],i=n.data;return(0,I.jsxs)(`div`,{ref:e,className:Y.view,children:[(0,I.jsxs)(`header`,{className:Y.header,children:[(0,I.jsx)(`h1`,{className:Y.title,children:`Goals`}),(0,I.jsxs)(`div`,{className:Y.freshness,"aria-live":`polite`,children:[t.status===`refreshing`||n.status===`refreshing`?(0,I.jsx)(D,{}):null,(0,I.jsxs)(`span`,{className:Y.count,children:[r.length,` goals`]})]})]}),n.status===`loading`?(0,I.jsx)(k,{width:`50%`}):n.status===`success`&&i?(0,I.jsxs)(`section`,{className:Y.missionCard,children:[(0,I.jsx)(`h2`,{className:Y.sectionTitle,children:`Mission state`}),(0,I.jsx)(`p`,{className:Y.missionState,children:i.state}),(0,I.jsxs)(`dl`,{className:Y.sourceGrid,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Briefing`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:i.sources.briefing??void 0,label:`briefing source`,children:`available`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Goals source`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:i.sources.goals??void 0,label:`goals source`,children:`available`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Enrollment`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:i.sources.enrollment??void 0,label:`enrollment source`,children:`available`})})]}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`dt`,{children:`Proposals`}),(0,I.jsx)(`dd`,{children:(0,I.jsx)(x,{quality:i.sources.proposals??void 0,label:`proposals source`,children:`available`})})]})]})]}):null,t.status===`loading`?(0,I.jsxs)(`div`,{className:Y.list,children:[(0,I.jsx)(k,{width:`90%`}),(0,I.jsx)(k,{width:`70%`})]}):t.status===`error`?(0,I.jsx)(`p`,{className:Y.error,role:`alert`,children:t.error?.message??`Failed to load goals.`}):r.length===0?(0,I.jsx)(`p`,{className:Y.empty,children:`No active goals.`}):(0,I.jsx)(`ul`,{className:Y.list,children:r.map(e=>{let t=Math.round((e.progress.fractionDone??0)*100),n=Ve((e.progress.fractionDone??0)*100);return(0,I.jsxs)(`li`,{className:Y.goalCard,"data-focus-key":`goal-${e.id}`,tabIndex:0,children:[(0,I.jsxs)(`div`,{className:Y.goalHeader,children:[(0,I.jsx)(`h3`,{className:Y.goalObjective,children:e.objective}),(0,I.jsx)(S,{status:e.status})]}),(0,I.jsxs)(`div`,{className:Y.progressRow,children:[(0,I.jsx)(`div`,{className:Y.progressTrack,children:(0,I.jsx)(`div`,{className:Y.progressFill,style:{width:`${t}%`}})}),(0,I.jsx)(`span`,{className:Y.progressLabel,children:n})]}),e.progress.nextActionableId?(0,I.jsxs)(`p`,{className:Y.nextActionable,children:[`Next actionable milestone id: `,(0,I.jsx)(`span`,{className:Y.mono,children:e.progress.nextActionableId})]}):null,e.milestones.length>0?(0,I.jsx)(`ol`,{className:Y.milestoneList,children:[...e.milestones].sort((e,t)=>e.order-t.order).map(e=>(0,I.jsxs)(`li`,{className:Y.milestoneItem,children:[(0,I.jsx)(S,{status:e.status}),(0,I.jsx)(`span`,{className:Y.milestoneTitle,children:e.title})]},e.title))}):(0,I.jsx)(`p`,{className:Y.noMilestones,children:`No milestones yet.`})]},e.id)})})]})}var X={list:`_list_1nh33_1`,filters:`_filters_1nh33_8`,filterField:`_filterField_1nh33_14`,filterLabel:`_filterLabel_1nh33_21`,summary:`_summary_1nh33_36`,batchBar:`_batchBar_1nh33_44`,batchApprove:`_batchApprove_1nh33_61`,batchReject:`_batchReject_1nh33_66`,skeletons:`_skeletons_1nh33_71`,error:`_error_1nh33_77`,empty:`_empty_1nh33_85`,table:`_table_1nh33_94`,checkboxCol:`_checkboxCol_1nh33_121`,repoCol:`_repoCol_1nh33_125`,kindCol:`_kindCol_1nh33_129`,ageCol:`_ageCol_1nh33_133`,statusCol:`_statusCol_1nh33_137`,whyCol:`_whyCol_1nh33_141`,row:`_row_1nh33_145`,rowActive:`_rowActive_1nh33_155`,titleLink:`_titleLink_1nh33_159`,repoCell:`_repoCell_1nh33_172`,age:`_age_1nh33_133`,why:`_why_1nh33_141`},rs=[{value:`pending`,label:`Pending`},{value:`rejected`,label:`Rejected`},{value:`approved`,label:`Approved`},{value:`applied`,label:`Applied`},{value:`failed`,label:`Failed`},{value:`awaiting-host-merge`,label:`Awaiting host merge`},{value:`all`,label:`All statuses`}];function is(e){let t=Date.parse(e);if(Number.isNaN(t))return`—`;let n=Math.max(0,Math.round((Date.now()-t)/1e3));if(n<60)return`${n}s`;let r=Math.round(n/60);if(r<60)return`${r}m`;let i=Math.round(r/60);return i<24?`${i}h`:`${Math.round(i/24)}d`}function as({selectedId:e,onDispatchDisabled:t}){let[n,r]=(0,j.useState)(`pending`),[i,a]=(0,j.useState)(``),[o,s]=(0,j.useState)(``),[l,u]=(0,j.useState)(``),[p,m]=(0,j.useState)(new Set),[h,g]=(0,j.useState)(0),[_,v]=(0,j.useState)(null),[y,b]=(0,j.useState)(!1),[x,C]=(0,j.useState)(!1),[ee,w]=(0,j.useState)(!1),[te,T]=(0,j.useState)(null),ne=(0,j.useRef)(null),re=(0,j.useRef)(new Map),ie=_n(),ae=d(ge({status:n,since:i||void 0,limit:500})),oe=(0,j.useMemo)(()=>{let e=ae.data?.proposals??[],t=o.trim().toLowerCase(),n=l.trim().toLowerCase();return e.filter(e=>!(t&&!e.title.toLowerCase().includes(t)&&!(e.summary??``).toLowerCase().includes(t)||n&&!(e.repo??``).toLowerCase().includes(n)))},[ae.data,o,l]);(0,j.useEffect)(()=>{g(e=>Math.min(e,Math.max(oe.length-1,0)))},[oe.length]);function se(e,t){t===`pending`&&m(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}function ce(e){if(oe.length!==0){if(e.key===`ArrowDown`){e.preventDefault();let t=Math.min(h+1,oe.length-1);g(t),re.current.get(oe[t].id)?.focus()}else if(e.key===`ArrowUp`){e.preventDefault();let t=Math.max(h-1,0);g(t),re.current.get(oe[t].id)?.focus()}else if(e.key===`Enter`){let e=oe[h];e&&ie(`/inbox/${encodeURIComponent(e.id)}`)}else if(e.key===` `){let t=oe[h];t&&(e.preventDefault(),se(t.id,t.status))}else e.key===`/`&&(e.preventDefault(),ne.current?.focus())}}function le(e){p.size!==0&&(T(null),v(e),c()?C(!0):b(!0))}function ue(){b(!1),c()?C(!0):v(null)}async function de(){if(!_)return;w(!0),T(null);let e=Array.from(p),n=[];for(let r of e)try{_===`approve`?await Se(r):await xe(r)}catch(e){if(e instanceof f){w(!1),C(!1),v(null),t();return}n.push(r)}w(!1),n.length>0?(T(`${n.length} of ${e.length} failed (already decided, or a transient error). Selection kept for retry.`),m(new Set(n))):(C(!1),v(null),m(new Set))}let E=p.size;return(0,I.jsxs)(`div`,{className:X.list,children:[(0,I.jsxs)(`div`,{className:X.filters,children:[(0,I.jsxs)(`label`,{className:X.filterField,children:[(0,I.jsx)(`span`,{className:X.filterLabel,children:`Status`}),(0,I.jsx)(`select`,{value:n,onChange:e=>r(e.target.value),children:rs.map(e=>(0,I.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),(0,I.jsxs)(`label`,{className:X.filterField,children:[(0,I.jsx)(`span`,{className:X.filterLabel,children:`Since`}),(0,I.jsx)(`input`,{type:`date`,value:i,onChange:e=>a(e.target.value)})]}),(0,I.jsxs)(`label`,{className:X.filterField,children:[(0,I.jsx)(`span`,{className:X.filterLabel,children:`Repo`}),(0,I.jsx)(`input`,{type:`text`,placeholder:`filter by repo`,value:l,onChange:e=>u(e.target.value)})]}),(0,I.jsxs)(`label`,{className:X.filterField,children:[(0,I.jsx)(`span`,{className:X.filterLabel,children:`Search`}),(0,I.jsx)(`input`,{ref:ne,type:`search`,placeholder:`title or summary — press / to focus`,value:o,onChange:e=>s(e.target.value)})]})]}),(0,I.jsxs)(`div`,{className:X.summary,"aria-live":`polite`,children:[ae.status===`refreshing`?(0,I.jsx)(D,{}):null,ae.data?(0,I.jsxs)(`span`,{children:[oe.length,` shown of `,ae.data.total,` total`,ae.data.truncated?` · narrow filters to see more`:``]}):null]}),E>0?(0,I.jsxs)(`div`,{className:X.batchBar,children:[(0,I.jsxs)(`span`,{children:[E,` selected`]}),(0,I.jsx)(`button`,{type:`button`,onClick:()=>m(new Set),children:`Clear`}),(0,I.jsxs)(`button`,{type:`button`,className:X.batchReject,onClick:()=>le(`reject`),children:[`Reject `,E]}),(0,I.jsxs)(`button`,{type:`button`,className:X.batchApprove,onClick:()=>le(`approve`),children:[`Approve `,E]})]}):null,ae.status===`loading`?(0,I.jsxs)(`div`,{className:X.skeletons,children:[(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{}),(0,I.jsx)(O,{})]}):ae.status===`error`?(0,I.jsx)(`div`,{className:X.error,role:`alert`,children:ae.error?.message??`Failed to load proposals.`}):oe.length===0?(0,I.jsxs)(`p`,{className:X.empty,children:[`No `,n===`all`?``:n+` `,`proposals match`,o||l?` this filter`:``,`.`]}):(0,I.jsxs)(`table`,{className:X.table,role:`grid`,"aria-label":`Proposals`,onKeyDown:ce,children:[(0,I.jsx)(`thead`,{children:(0,I.jsxs)(`tr`,{children:[(0,I.jsx)(`th`,{scope:`col`,className:X.checkboxCol}),(0,I.jsx)(`th`,{scope:`col`,children:`Title`}),(0,I.jsx)(`th`,{scope:`col`,className:X.repoCol,children:`Repo`}),(0,I.jsx)(`th`,{scope:`col`,className:X.kindCol,children:`Kind`}),(0,I.jsx)(`th`,{scope:`col`,className:X.ageCol,children:`Age`}),(0,I.jsx)(`th`,{scope:`col`,className:X.statusCol,children:`Status`}),(0,I.jsx)(`th`,{scope:`col`,className:X.whyCol,children:`Why`})]})}),(0,I.jsx)(`tbody`,{children:oe.map((t,n)=>(0,I.jsxs)(`tr`,{ref:e=>{e?re.current.set(t.id,e):re.current.delete(t.id)},"data-focus-key":`proposal-${t.id}`,tabIndex:n===h?0:-1,className:`${X.row} ${t.id===e?X.rowActive:``}`,onFocus:()=>g(n),"aria-selected":t.id===e,children:[(0,I.jsx)(`td`,{className:X.checkboxCol,children:(0,I.jsx)(`input`,{type:`checkbox`,checked:p.has(t.id),disabled:t.status!==`pending`,title:t.status===`pending`?void 0:`Only pending proposals can be approved/rejected`,onChange:()=>se(t.id,t.status),onClick:e=>e.stopPropagation()})}),(0,I.jsx)(`td`,{children:(0,I.jsx)(jr,{to:`/inbox/${encodeURIComponent(t.id)}`,className:X.titleLink,title:t.title,children:t.title})}),(0,I.jsx)(`td`,{className:X.repoCell,title:t.repo??void 0,children:t.repo?t.repo.split(`/`).pop():`—`}),(0,I.jsx)(`td`,{children:t.kind}),(0,I.jsx)(`td`,{className:X.age,children:is(t.createdAt)}),(0,I.jsx)(`td`,{children:(0,I.jsx)(S,{status:t.status})}),(0,I.jsx)(`td`,{className:X.why,title:t.decisionReason??void 0,children:t.decisionReason??`—`})]},t.id))})]}),(0,I.jsx)(Ce,{open:y,onClose:ue,reason:`${_===`approve`?`Approving`:`Rejecting`} ${E} proposals requires the dispatch token.`}),(0,I.jsx)(we,{open:x,onClose:()=>{C(!1),v(null),T(null)},title:_===`approve`?`Approve ${E} proposals?`:`Reject ${E} proposals?`,body:_===`approve`?(0,I.jsxs)(I.Fragment,{children:[`This applies all `,E,` selected proposals to their repos now, one at a time. This cannot be undone from this dialog.`]}):(0,I.jsxs)(I.Fragment,{children:[`This rejects all `,E,` selected proposals. They stay visible in history as rejected.`]}),confirmLabel:_===`approve`?`Approve ${E}`:`Reject ${E}`,destructive:_===`reject`,busy:ee,error:te,onConfirm:()=>void de()})]})}var Z={panel:`_panel_1n6q8_1`,error:`_error_1n6q8_8`,header:`_header_1n6q8_16`,titleRow:`_titleRow_1n6q8_22`,title:`_title_1n6q8_22`,metaRow:`_metaRow_1n6q8_35`,metaItem:`_metaItem_1n6q8_44`,riskBadge:`_riskBadge_1n6q8_48`,risk_low:`_risk_low_1n6q8_54`,risk_medium:`_risk_medium_1n6q8_55`,risk_high:`_risk_high_1n6q8_56`,summary:`_summary_1n6q8_58`,evidence:`_evidence_1n6q8_64`,evidenceRow:`_evidenceRow_1n6q8_74`,evidenceLabel:`_evidenceLabel_1n6q8_81`,muted:`_muted_1n6q8_89`,rationaleNote:`_rationaleNote_1n6q8_94`,failedChecks:`_failedChecks_1n6q8_101`,diffSection:`_diffSection_1n6q8_107`,actions:`_actions_1n6q8_111`,actionConsequence:`_actionConsequence_1n6q8_124`,actionError:`_actionError_1n6q8_133`,rejectButton:`_rejectButton_1n6q8_144`,approveButton:`_approveButton_1n6q8_165`,decided:`_decided_1n6q8_176`},os={"judge-ship-would-merge":{label:`Ship (would merge)`,tone:`success`},"judge-ship-review-required":{label:`Ship (review required)`,tone:`success`},"judge-review":{label:`Review`,tone:`warning`},"judge-noise":{label:`Noise`,tone:`neutral`},"judge-harmful":{label:`Harmful`,tone:`danger`},"judge-verdict-unrecognized":{label:`Unrecognized verdict`,tone:`unknown`},"judge-parse-failure":{label:`Judge parse failure — not a review`,tone:`unknown`},"judge-network-failure":{label:`Judge network failure — not a review`,tone:`unknown`}};function ss(e){let t=e.filter(e=>e.action===`judged`&&e.judgeReasonCode);return t.length===0?null:t.reduce((e,t)=>Date.parse(t.ts)>Date.parse(e.ts)?t:e)}function cs(e){if(!e)return`—`;let t=Date.parse(e);if(Number.isNaN(t))return`—`;let n=Math.max(0,Math.round((Date.now()-t)/1e3));if(n<60)return`${n}s ago`;let r=Math.round(n/60);if(r<60)return`${r}m ago`;let i=Math.round(r/60);return i<24?`${i}h ago`:`${Math.round(i/24)}d ago`}function ls(e,t){let n=t&&t.length>0?t:`the target repository`;return e===`pr`?`Approving pushes a branch to ${n}'s remote and opens a real pull request. Other people can see it immediately, and it cannot be undone from here.`:e===`patch`?`Approving writes this diff to ${n} on disk now. Nothing is pushed, but the working tree changes.`:`Approving applies this ${e} proposal to ${n} now.`}function us({id:e,onDispatchDisabled:t}){let n=d(se(e)),[r,i]=(0,j.useState)(null),[a,o]=(0,j.useState)(!1),[s,l]=(0,j.useState)(!1),[u,p]=(0,j.useState)(!1),[m,h]=(0,j.useState)(null);function g(e){h(null),i(e),c()?l(!0):o(!0)}function _(){o(!1),c()?l(!0):i(null)}async function v(){if(r){p(!0),h(null);try{r===`approve`?await Se(e):await xe(e),l(!1),i(null)}catch(e){e instanceof f?(l(!1),i(null),t()):h(e instanceof Error?e.message:`Action failed. Try again.`)}finally{p(!1)}}}if(n.status===`loading`)return(0,I.jsxs)(`div`,{className:Z.panel,children:[(0,I.jsx)(k,{width:`60%`}),(0,I.jsx)(k,{width:`30%`}),(0,I.jsx)(k,{width:`90%`})]});if(n.status===`error`||!n.data)return(0,I.jsx)(`div`,{className:Z.error,role:`alert`,children:n.error?.message??`Failed to load this proposal.`});let y=n.data,b=y.decisionEvidence,C=ss(b.decisions),ee=C?.judgeReasonCode?os[C.judgeReasonCode]:null,w=y.status===`pending`;return(0,I.jsxs)(`div`,{className:Z.panel,children:[(0,I.jsxs)(`header`,{className:Z.header,children:[(0,I.jsxs)(`div`,{className:Z.titleRow,children:[(0,I.jsx)(`h2`,{className:Z.title,children:y.title}),n.status===`refreshing`?(0,I.jsx)(D,{}):null]}),(0,I.jsxs)(`div`,{className:Z.metaRow,children:[(0,I.jsx)(S,{status:y.status}),(0,I.jsx)(`span`,{className:Z.metaItem,children:y.kind}),(0,I.jsx)(`span`,{className:Z.metaItem,title:y.repo??void 0,children:y.repo??`no repo`}),(0,I.jsxs)(`span`,{className:Z.metaItem,children:[`created `,cs(y.createdAt)]}),y.decidedAt?(0,I.jsxs)(`span`,{className:Z.metaItem,children:[`decided `,cs(y.decidedAt)]}):null,y.riskClass?(0,I.jsxs)(`span`,{className:`${Z.riskBadge} ${Z[`risk_${y.riskClass}`]}`,children:[y.riskClass,` risk`]}):null]}),y.summary?(0,I.jsx)(`p`,{className:Z.summary,children:y.summary}):null]}),(0,I.jsxs)(`section`,{className:Z.evidence,"aria-label":`Evidence`,children:[(0,I.jsxs)(`div`,{className:Z.evidenceRow,children:[(0,I.jsx)(`span`,{className:Z.evidenceLabel,children:`Judge verdict`}),(0,I.jsx)(x,{quality:b.sourceQuality,label:`judge verdict`,children:ee?(0,I.jsx)(S,{status:C.judgeReasonCode,tone:ee.tone,children:ee.label}):(0,I.jsx)(`span`,{className:Z.muted,children:`not yet judged`})})]}),C?.judgeRationaleState?(0,I.jsxs)(`p`,{className:Z.rationaleNote,children:[`Model rationale:`,` `,C.judgeRationaleState===`not-persisted`?`not persisted`:`legacy (redacted)`]}):null,y.decisionReason?(0,I.jsxs)(`div`,{className:Z.evidenceRow,children:[(0,I.jsx)(`span`,{className:Z.evidenceLabel,children:`Decision reason`}),(0,I.jsx)(`span`,{children:y.decisionReason})]}):null,y.verifyResult?(0,I.jsxs)(`div`,{className:Z.evidenceRow,children:[(0,I.jsx)(`span`,{className:Z.evidenceLabel,children:`Verification`}),(0,I.jsxs)(`div`,{children:[(0,I.jsx)(S,{status:y.verifyResult.passed?`success`:`failed`,children:y.verifyResult.passed?`passed`:`failed`}),y.verifyResult.ran&&y.verifyResult.ran.length>0?(0,I.jsxs)(`span`,{className:Z.muted,children:[` · ran `,y.verifyResult.ran.map(e=>e.kind).join(`, `)]}):null,y.verifyResult.failed&&y.verifyResult.failed.length>0?(0,I.jsxs)(`p`,{className:Z.failedChecks,children:[`Failed: `,y.verifyResult.failed.join(`, `)]}):null]})]}):null,y.evidenceOutcome?(0,I.jsxs)(`div`,{className:Z.evidenceRow,children:[(0,I.jsx)(`span`,{className:Z.evidenceLabel,children:`Gates`}),(0,I.jsxs)(`span`,{className:Z.muted,children:[y.evidenceOutcome.gateCount??0,` gate`,y.evidenceOutcome.gateCount===1?``:`s`,y.evidenceOutcome.policyAction?` · policy: ${y.evidenceOutcome.policyAction}`:``,y.evidenceOutcome.trustBasis?` · trust: ${y.evidenceOutcome.trustBasis}`:``]})]}):null,y.result?(0,I.jsxs)(`div`,{className:Z.evidenceRow,children:[(0,I.jsx)(`span`,{className:Z.evidenceLabel,children:`Result`}),(0,I.jsx)(`span`,{children:y.result})]}):null]}),(0,I.jsx)(`section`,{className:Z.diffSection,"aria-label":`Diff`,children:(0,I.jsx)(He,{diff:y.diff,proposalKind:y.kind})}),w?(0,I.jsxs)(`footer`,{className:Z.actions,children:[m&&!s?(0,I.jsx)(`p`,{className:Z.actionError,role:`alert`,children:m}):null,(0,I.jsx)(`p`,{className:Z.actionConsequence,children:ls(y.kind,y.repo)}),(0,I.jsx)(`button`,{type:`button`,className:Z.rejectButton,onClick:()=>g(`reject`),children:`Reject`}),(0,I.jsx)(`button`,{type:`button`,className:Z.approveButton,onClick:()=>g(`approve`),children:`Approve`})]}):(0,I.jsxs)(`footer`,{className:Z.decided,children:[`This proposal is already `,(0,I.jsx)(`strong`,{children:y.status}),` — no further action available.`]}),(0,I.jsx)(Ce,{open:a,onClose:_,reason:r===`approve`?`Approving a proposal mutates the fleet and requires the dispatch token.`:`Rejecting a proposal requires the dispatch token.`}),(0,I.jsx)(we,{open:s,onClose:()=>{l(!1),i(null),h(null)},title:r===`approve`?`Approve this proposal?`:`Reject this proposal?`,body:r===`approve`?(0,I.jsxs)(I.Fragment,{children:[`This applies `,(0,I.jsx)(`strong`,{children:y.title}),` to `,(0,I.jsx)(`code`,{children:y.repo}),` now.`,` `,ls(y.kind,y.repo),` Review the diff above before confirming.`]}):(0,I.jsxs)(I.Fragment,{children:[`This rejects `,(0,I.jsx)(`strong`,{children:y.title}),` and discards it. It stays visible in history (status: rejected) but will never be applied. Nothing is written to `,(0,I.jsx)(`code`,{children:y.repo}),`.`]}),confirmLabel:r===`approve`?y.kind===`pr`?`Approve and open the pull request`:`Approve and apply`:`Reject`,destructive:r===`approve`,busy:u,error:m,onConfirm:()=>void v()})]})}var ds={view:`_view_19z5m_1`,header:`_header_19z5m_8`,title:`_title_19z5m_14`,subtitle:`_subtitle_19z5m_20`,dispatchBanner:`_dispatchBanner_19z5m_25`,layout:`_layout_19z5m_39`,listPane:`_listPane_19z5m_57`,detailPane:`_detailPane_19z5m_61`,emptyDetail:`_emptyDetail_19z5m_69`,hint:`_hint_19z5m_81`};function fs(){let{id:e}=xn(),[t,n]=(0,j.useState)(!1);return(0,I.jsxs)(`div`,{className:ds.view,children:[(0,I.jsxs)(`header`,{className:ds.header,children:[(0,I.jsx)(`h1`,{className:ds.title,children:`Inbox`}),(0,I.jsx)(`p`,{className:ds.subtitle,children:`Review proposals, inspect diffs and judge evidence, approve or reject.`})]}),t?(0,I.jsxs)(`div`,{className:ds.dispatchBanner,role:`alert`,children:[`This server was started without `,(0,I.jsx)(`code`,{children:`--allow-dispatch`}),`, so approve/reject are read-only right now. Restart `,(0,I.jsx)(`code`,{children:`ashlr serve --allow-dispatch`}),` to enable them. Browsing and diff review still work.`]}):null,(0,I.jsxs)(`div`,{className:ds.layout,children:[(0,I.jsx)(`div`,{className:ds.listPane,children:(0,I.jsx)(as,{selectedId:e??null,onDispatchDisabled:()=>n(!0)})}),(0,I.jsx)(`div`,{className:ds.detailPane,children:e?(0,I.jsx)(us,{id:e,onDispatchDisabled:()=>n(!0)}):(0,I.jsxs)(`div`,{className:ds.emptyDetail,children:[(0,I.jsx)(`p`,{children:`Select a proposal to review its diff and evidence.`}),(0,I.jsx)(`p`,{className:ds.hint,children:`↑/↓ to move · Enter to open · Space to select · / to search`})]})})]})]})}var Q={cockpit:`_cockpit_1km3b_1`,decisionSpine:`_decisionSpine_1km3b_9`,mission:`_mission_1km3b_18`,titleLine:`_titleLine_1km3b_25`,revision:`_revision_1km3b_39`,northStar:`_northStar_1km3b_44`,bottleneck:`_bottleneck_1km3b_52`,nextActionLabel:`_nextActionLabel_1km3b_60`,fieldLabel:`_fieldLabel_1km3b_61`,nextAction:`_nextAction_1km3b_60`,exception:`_exception_1km3b_79`,attention:`_attention_1km3b_84`,clear:`_clear_1km3b_89`,spectrum:`_spectrum_1km3b_106`,bets:`_bets_1km3b_107`,sectionHeading:`_sectionHeading_1km3b_113`,capabilityList:`_capabilityList_1km3b_133`,betList:`_betList_1km3b_134`,capabilityLane:`_capabilityLane_1km3b_141`,bet:`_bet_1km3b_107`,laneIdentity:`_laneIdentity_1km3b_155`,laneName:`_laneName_1km3b_162`,headroomTrack:`_headroomTrack_1km3b_167`,headroomFill:`_headroomFill_1km3b_174`,ample:`_ample_1km3b_181`,usable:`_usable_1km3b_182`,tight:`_tight_1km3b_183`,none:`_none_1km3b_184`,unknown:`_unknown_1km3b_185`,allocation:`_allocation_1km3b_187`,reset:`_reset_1km3b_188`,betAllocation:`_betAllocation_1km3b_189`,assurance:`_assurance_1km3b_190`,betDecision:`_betDecision_1km3b_216`,betEvidence:`_betEvidence_1km3b_217`,betThesis:`_betThesis_1km3b_227`,empty:`_empty_1km3b_251`,omitted:`_omitted_1km3b_252`,authorityNote:`_authorityNote_1km3b_253`};function ps(e){return e===`complete`?`success`:e===`pending`?`running`:e===`incomplete`?`warning`:`unknown`}function ms(e){return e===`ready`?`success`:e===`tight`?`warning`:e===`unavailable`?`danger`:`unknown`}function hs(e){return e===`continue`?`running`:e===`observing`?`info`:`warning`}function gs(e){return e===`effective`?`success`:e===`refuted`?`danger`:e===`pending`?`running`:`unknown`}function _s({capability:e}){return(0,I.jsxs)(`li`,{className:Q.capabilityLane,children:[(0,I.jsxs)(`div`,{className:Q.laneIdentity,children:[(0,I.jsx)(`span`,{className:Q.laneName,children:e.label}),(0,I.jsx)(S,{status:e.state,tone:ms(e.state)})]}),(0,I.jsx)(`div`,{className:Q.headroomTrack,role:`img`,"aria-label":`${e.label} headroom: ${e.headroom}`,children:(0,I.jsx)(`span`,{className:`${Q.headroomFill} ${Q[e.headroom]}`})}),(0,I.jsx)(`span`,{className:Q.allocation,children:e.allocationLabel}),(0,I.jsx)(`span`,{className:Q.reset,"data-urgency":e.resetUrgency,children:e.resetLabel})]})}function vs({bet:e}){return(0,I.jsxs)(`li`,{className:Q.bet,children:[(0,I.jsxs)(`div`,{className:Q.betDecision,children:[(0,I.jsx)(S,{status:e.decision,tone:hs(e.decision)}),(0,I.jsx)(`span`,{className:Q.assurance,children:e.assurance})]}),(0,I.jsxs)(`div`,{className:Q.betThesis,children:[(0,I.jsx)(`h3`,{children:e.title}),(0,I.jsx)(`p`,{children:e.valueCase})]}),(0,I.jsx)(`span`,{className:Q.betAllocation,children:e.allocationLabel}),(0,I.jsxs)(`div`,{className:Q.betEvidence,children:[(0,I.jsxs)(`span`,{children:[(0,I.jsx)(`span`,{className:Q.fieldLabel,children:`Outcome`}),(0,I.jsx)(S,{status:e.outcome.state,tone:gs(e.outcome.state),children:e.outcome.label})]}),(0,I.jsxs)(`span`,{children:[(0,I.jsx)(`span`,{className:Q.fieldLabel,children:`Evidence`}),(0,I.jsx)(S,{status:e.evidence.state,tone:ps(e.evidence.state),children:e.evidence.label})]})]})]})}function ys({snapshot:e}){let t=e.activeValueBets.slice(0,3),n=Math.max(0,e.activeValueBets.length-t.length),r=e.nextAction;return(0,I.jsxs)(`section`,{className:Q.cockpit,"aria-labelledby":`agent-os-title`,children:[(0,I.jsxs)(`header`,{className:Q.decisionSpine,children:[(0,I.jsxs)(`div`,{className:Q.mission,children:[(0,I.jsxs)(`div`,{className:Q.titleLine,children:[(0,I.jsx)(`h2`,{id:`agent-os-title`,children:`Agent OS`}),(0,I.jsx)(S,{status:e.sourceState,tone:e.sourceState===`healthy`?`success`:e.sourceState===`degraded`?`warning`:`unknown`}),(0,I.jsx)(`span`,{className:Q.revision,children:e.livingEndState.revisionLabel})]}),(0,I.jsx)(`p`,{className:Q.northStar,children:e.livingEndState.northStar}),(0,I.jsxs)(`p`,{className:Q.bottleneck,children:[(0,I.jsx)(`span`,{children:`Current bottleneck`}),e.livingEndState.currentBottleneck]})]}),(0,I.jsxs)(`aside`,{className:`${Q.nextAction} ${r?Q[r.kind]:Q.clear}`,"aria-label":`Exception-first next action`,children:[(0,I.jsx)(`span`,{className:Q.nextActionLabel,children:`Next action`}),(0,I.jsx)(`strong`,{children:r?.title??`No verified next action available`}),(0,I.jsx)(`p`,{children:r?.reason??`No exception or clearance evidence was provided.`}),r?(0,I.jsxs)(S,{status:r.evidenceState,tone:ps(r.evidenceState),children:[r.evidenceState,` evidence`]}):null]})]}),(0,I.jsxs)(`section`,{className:Q.spectrum,"aria-labelledby":`capability-spectrum-title`,children:[(0,I.jsxs)(`div`,{className:Q.sectionHeading,children:[(0,I.jsx)(`h3`,{id:`capability-spectrum-title`,children:`Capability spectrum`}),(0,I.jsx)(`p`,{children:`Usable model runway, ordered by reset urgency`})]}),e.capabilitySpectrum.length>0?(0,I.jsx)(`ul`,{className:Q.capabilityList,children:e.capabilitySpectrum.map(e=>(0,I.jsx)(_s,{capability:e},e.lane))}):(0,I.jsx)(`p`,{className:Q.empty,children:`Capability evidence is not available.`})]}),(0,I.jsxs)(`section`,{className:Q.bets,"aria-labelledby":`active-value-bets-title`,children:[(0,I.jsxs)(`div`,{className:Q.sectionHeading,children:[(0,I.jsx)(`h3`,{id:`active-value-bets-title`,children:`Active value bets`}),(0,I.jsxs)(`p`,{children:[t.length,` of 3 portfolio slots visible`]})]}),t.length>0?(0,I.jsx)(`ol`,{className:Q.betList,children:t.map(e=>(0,I.jsx)(vs,{bet:e},e.key))}):(0,I.jsx)(`p`,{className:Q.empty,children:`No active value bet is verified.`}),n>0?(0,I.jsxs)(`p`,{className:Q.omitted,children:[n,` lower-ranked `,n===1?`bet is`:`bets are`,` held outside this view.`]}):null]}),(0,I.jsx)(`p`,{className:Q.authorityNote,children:`Observation only. This view cannot dispatch, merge, release, deploy, or change policy.`})]})}var $={view:`_view_k4f4y_1`,header:`_header_k4f4y_8`,eyebrow:`_eyebrow_k4f4y_15`,title:`_title_k4f4y_24`,subtitle:`_subtitle_k4f4y_31`,freshness:`_freshness_k4f4y_37`,loading:`_loading_k4f4y_44`,unavailable:`_unavailable_k4f4y_45`,unavailableHeading:`_unavailableHeading_k4f4y_75`,boundary:`_boundary_k4f4y_82`};function bs(e){return e.authority===`observation-only`&&e.sameUserTamperResistant===!1&&e.rollbackProtected===!1&&e.historicalAuthority===!1&&e.executionAuthority===!1&&e.proposalAuthority===!1&&e.mergeAuthority===!1&&e.deployAuthority===!1&&e.publicationAuthority===!1&&e.externalMutationAuthority===!1}function xs(e){return e.reason?e.reason:e.sourceState===`missing`?`No authenticated Agent OS snapshot has been recorded.`:e.authentication===`authenticated`?e.sameUserTamperResistant===!1?bs(e)?e.complete?e.snapshot?`The Agent OS snapshot is degraded.`:`No verified Agent OS snapshot is available.`:`The snapshot chain is incomplete.`:`The response crossed the observation-only authority boundary.`:`The response made an unsupported same-user tamper-resistance claim.`:`Snapshot authentication is unavailable or invalid.`}function Ss(e){return e.sourceState===`healthy`&&e.complete&&e.authentication===`authenticated`&&bs(e)&&e.snapshot!==null?`success`:e.sourceState===`degraded`||e.authentication===`invalid`||!bs(e)?`warning`:`unknown`}function Cs(){let e=(0,j.useRef)(null);Oe(`/agent-os`,e);let t=d(he),n=t.data,r=n?.sourceState===`healthy`&&n.complete&&n.authentication===`authenticated`&&bs(n)&&n.snapshot!==null;return(0,I.jsxs)(`div`,{ref:e,className:$.view,children:[(0,I.jsxs)(`header`,{className:$.header,children:[(0,I.jsxs)(`div`,{children:[(0,I.jsx)(`p`,{className:$.eyebrow,children:`Overview`}),(0,I.jsx)(`h1`,{className:$.title,children:`Agent-native engineering OS`}),(0,I.jsx)(`p`,{className:$.subtitle,children:`Authenticated fleet intelligence. Observation only.`})]}),(0,I.jsxs)(`div`,{className:$.freshness,"aria-live":`polite`,children:[t.status===`refreshing`?(0,I.jsx)(D,{}):null,n?(0,I.jsx)(S,{status:n.sourceState,tone:Ss(n),children:n.sourceState}):null]})]}),t.status===`loading`?(0,I.jsxs)(`section`,{className:$.loading,"aria-label":`Loading Agent OS snapshot`,children:[(0,I.jsx)(k,{width:`65%`}),(0,I.jsx)(k,{width:`90%`}),(0,I.jsx)(k,{width:`75%`})]}):t.status===`error`?(0,I.jsxs)(`section`,{className:$.unavailable,role:`alert`,children:[(0,I.jsx)(`h2`,{children:`Agent OS snapshot unavailable`}),(0,I.jsx)(`p`,{children:t.error?.message??`The read-only Agent OS endpoint could not be reached.`}),(0,I.jsx)(`p`,{className:$.boundary,children:`No capability, value, or next-action values are inferred when the source cannot be read.`})]}):n&&r&&n.snapshot?(0,I.jsx)(ys,{snapshot:n.snapshot}):n?(0,I.jsxs)(`section`,{className:$.unavailable,role:`status`,children:[(0,I.jsxs)(`div`,{className:$.unavailableHeading,children:[(0,I.jsx)(`h2`,{children:n.sourceState===`missing`?`No Agent OS snapshot yet`:`Agent OS snapshot degraded`}),(0,I.jsx)(S,{status:n.authentication,tone:n.authentication===`authenticated`?`success`:`warning`})]}),(0,I.jsx)(`p`,{children:xs(n)}),(0,I.jsx)(`p`,{className:$.boundary,children:`The cockpit remains hidden until a complete authenticated observation-only snapshot is available.`})]}):(0,I.jsxs)(`section`,{className:$.unavailable,role:`status`,children:[(0,I.jsx)(`h2`,{children:`Agent OS snapshot unavailable`}),(0,I.jsx)(`p`,{children:`No response was provided by the read-only Agent OS endpoint.`})]})]})}function ws(){return(0,I.jsx)(Kn,{children:(0,I.jsxs)(F,{element:(0,I.jsx)(Qi,{}),children:[(0,I.jsx)(F,{index:!0,element:(0,I.jsx)(Un,{to:`/overview`,replace:!0})}),Ur.map(e=>e.implemented?null:(0,I.jsx)(F,{path:e.path,element:(0,I.jsx)(ea,{title:e.label,description:e.description})},e.path)),(0,I.jsx)(F,{path:`/overview`,element:(0,I.jsx)(ma,{})}),(0,I.jsx)(F,{path:`/agent-os`,element:(0,I.jsx)(Cs,{})}),(0,I.jsx)(F,{path:`/universe`,element:(0,I.jsx)(ke,{})}),(0,I.jsx)(F,{path:`/journal`,element:(0,I.jsx)(eo,{})}),(0,I.jsx)(F,{path:`/intelligence/pulse`,element:(0,I.jsx)(ao,{})}),(0,I.jsx)(F,{path:`/intelligence/genome`,element:(0,I.jsx)(mo,{})}),(0,I.jsx)(F,{path:`/intelligence/production`,element:(0,I.jsx)(_o,{})}),(0,I.jsx)(F,{path:`/portfolio`,element:(0,I.jsx)(xo,{})}),(0,I.jsx)(F,{path:`/work/runs`,element:(0,I.jsx)(Eo,{})}),(0,I.jsx)(F,{path:`/work/runs/:id`,element:(0,I.jsx)(ko,{})}),(0,I.jsx)(F,{path:`/work/swarms`,element:(0,I.jsx)(Fo,{})}),(0,I.jsx)(F,{path:`/work/swarms/:id`,element:(0,I.jsx)(Ko,{})}),(0,I.jsx)(F,{path:`/control/daemon`,element:(0,I.jsx)(Xo,{})}),(0,I.jsx)(F,{path:`/control/fleet`,element:(0,I.jsx)(Qo,{})}),(0,I.jsx)(F,{path:`/control/security`,element:(0,I.jsx)(ts,{})}),(0,I.jsx)(F,{path:`/goals`,element:(0,I.jsx)(ns,{})}),(0,I.jsx)(F,{path:`/inbox`,element:(0,I.jsx)(fs,{})}),(0,I.jsx)(F,{path:`/inbox/:id`,element:(0,I.jsx)(fs,{})}),(0,I.jsx)(F,{path:`*`,element:(0,I.jsx)(Un,{to:`/overview`,replace:!0})})]})})}function Ts(e){(0,j.useEffect)(()=>{if(e!==`checking`)return;let t=!1;return s(T.key,T.fetch).then(()=>{if(t)return;let e=a(T.key);o(e.status===`success`)}),()=>{t=!0}},[e])}function Es(){let e=m();return Ts(e),(0,j.useEffect)(()=>{i(()=>import(`./sse-CAFwslNC.js`),__vite__mapDeps([0,1]))},[]),(0,I.jsx)(Te,{children:e===`checking`?(0,I.jsx)(`div`,{"aria-live":`polite`,className:`visually-hidden`,children:`Checking for an existing session…`}):e===`unauthenticated`?(0,I.jsx)(Ue,{}):(0,I.jsxs)(Ar,{children:[(0,I.jsx)(je,{}),(0,I.jsx)(ws,{})]})})}export{Es as App};
|
|
8
|
-
//# sourceMappingURL=App-CPKNuUdC.js.map
|