@ashlr/hub 3.10.1 → 3.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +55 -0
- package/README.md +343 -82
- package/dist/authority-surface.json +69 -9
- package/dist/build-identity.json +2 -2
- package/dist/cli/cloud.d.ts +39 -0
- package/dist/cli/cloud.js +448 -0
- package/dist/cli/cloud.js.map +1 -0
- package/dist/cli/completions.js +4 -0
- package/dist/cli/completions.js.map +1 -1
- package/dist/cli/help.js +2 -0
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +10 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/core/cloud/backlog.d.ts +17 -0
- package/dist/core/cloud/backlog.js +177 -0
- package/dist/core/cloud/backlog.js.map +1 -0
- package/dist/core/cloud/budget.d.ts +19 -0
- package/dist/core/cloud/budget.js +99 -0
- package/dist/core/cloud/budget.js.map +1 -0
- package/dist/core/cloud/checkout.d.ts +41 -0
- package/dist/core/cloud/checkout.js +168 -0
- package/dist/core/cloud/checkout.js.map +1 -0
- package/dist/core/cloud/cloud-api.d.ts +86 -0
- package/dist/core/cloud/cloud-api.js +599 -0
- package/dist/core/cloud/cloud-api.js.map +1 -0
- package/dist/core/cloud/delivery-contract.d.ts +25 -0
- package/dist/core/cloud/delivery-contract.js +138 -0
- package/dist/core/cloud/delivery-contract.js.map +1 -0
- package/dist/core/cloud/improvement-backlog.d.ts +11 -0
- package/dist/core/cloud/improvement-backlog.js +26 -0
- package/dist/core/cloud/improvement-backlog.js.map +1 -0
- package/dist/core/cloud/launcher.d.ts +68 -0
- package/dist/core/cloud/launcher.js +312 -0
- package/dist/core/cloud/launcher.js.map +1 -0
- package/dist/core/cloud/service.d.ts +51 -0
- package/dist/core/cloud/service.js +215 -0
- package/dist/core/cloud/service.js.map +1 -0
- package/dist/core/cloud/store.d.ts +41 -0
- package/dist/core/cloud/store.js +278 -0
- package/dist/core/cloud/store.js.map +1 -0
- package/dist/core/cloud/tracker.d.ts +30 -0
- package/dist/core/cloud/tracker.js +152 -0
- package/dist/core/cloud/tracker.js.map +1 -0
- package/dist/core/cloud/types.d.ts +233 -0
- package/dist/core/cloud/types.js +73 -0
- package/dist/core/cloud/types.js.map +1 -0
- package/dist/core/verse/activity-api.d.ts +3 -1
- package/dist/core/verse/activity-api.js +16 -1
- package/dist/core/verse/activity-api.js.map +1 -1
- package/dist/core/verse/activity.d.ts +7 -0
- package/dist/core/verse/activity.js +23 -0
- package/dist/core/verse/activity.js.map +1 -1
- package/dist/core/verse/verse-api.d.ts +1 -1
- package/dist/core/verse/verse-api.js +2 -0
- package/dist/core/verse/verse-api.js.map +1 -1
- package/dist/core/vision/leader-cloud.d.ts +63 -0
- package/dist/core/vision/leader-cloud.js +134 -0
- package/dist/core/vision/leader-cloud.js.map +1 -0
- package/dist/core/vision/leader.d.ts +6 -0
- package/dist/core/vision/leader.js +12 -1
- package/dist/core/vision/leader.js.map +1 -1
- package/dist/core/web/public/next/assets/{ActionMenu-BBB7VYjz.js → ActionMenu-CQvNJvHY.js} +2 -2
- package/dist/core/web/public/next/assets/{ActionMenu-BBB7VYjz.js.map → ActionMenu-CQvNJvHY.js.map} +1 -1
- package/dist/core/web/public/next/assets/Advanced-DEM93sKI.js +2 -0
- package/dist/core/web/public/next/assets/Advanced-DEM93sKI.js.map +1 -0
- package/dist/core/web/public/next/assets/{App-CbDCLAxn.js → App-CimXmK0L.js} +2 -2
- package/dist/core/web/public/next/assets/{App-CbDCLAxn.js.map → App-CimXmK0L.js.map} +1 -1
- package/dist/core/web/public/next/assets/AppsSection-D6U-dSj6.js +2 -0
- package/dist/core/web/public/next/assets/AppsSection-D6U-dSj6.js.map +1 -0
- package/dist/core/web/public/next/assets/{AreaTrend-BgnK0wAy.js → AreaTrend-LD9lCPkT.js} +2 -2
- package/dist/core/web/public/next/assets/{AreaTrend-BgnK0wAy.js.map → AreaTrend-LD9lCPkT.js.map} +1 -1
- package/dist/core/web/public/next/assets/AutonomySection-3V9pUyxm.js +2 -0
- package/dist/core/web/public/next/assets/{AutonomySection-BF5UCsMv.js.map → AutonomySection-3V9pUyxm.js.map} +1 -1
- package/dist/core/web/public/next/assets/{BranchBar-nfSb59Kv.js → BranchBar-U8UdpfEB.js} +2 -2
- package/dist/core/web/public/next/assets/{BranchBar-nfSb59Kv.js.map → BranchBar-U8UdpfEB.js.map} +1 -1
- package/dist/core/web/public/next/assets/{BudgetControl-BESM12dO.js → BudgetControl-DOTlMSmW.js} +2 -2
- package/dist/core/web/public/next/assets/{BudgetControl-BESM12dO.js.map → BudgetControl-DOTlMSmW.js.map} +1 -1
- package/dist/core/web/public/next/assets/{BurnDown-D1AfskPT.js → BurnDown-x4PWH9JF.js} +2 -2
- package/dist/core/web/public/next/assets/{BurnDown-D1AfskPT.js.map → BurnDown-x4PWH9JF.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Button-Cr_qkQEc.js → Button-DYv_KKxr.js} +2 -2
- package/dist/core/web/public/next/assets/{Button-Cr_qkQEc.js.map → Button-DYv_KKxr.js.map} +1 -1
- package/dist/core/web/public/next/assets/{CapacityStrip-DqqYnLek.js → CapacityStrip-C667yQe8.js} +2 -2
- package/dist/core/web/public/next/assets/{CapacityStrip-DqqYnLek.js.map → CapacityStrip-C667yQe8.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ChatSection-DoqjyVoj.js → ChatSection-CCcIPpOq.js} +3 -3
- package/dist/core/web/public/next/assets/{ChatSection-DoqjyVoj.js.map → ChatSection-CCcIPpOq.js.map} +1 -1
- package/dist/core/web/public/next/assets/CloudBudgetForm-DJeJvBEu.js +2 -0
- package/dist/core/web/public/next/assets/CloudBudgetForm-DJeJvBEu.js.map +1 -0
- package/dist/core/web/public/next/assets/{CommandPalette-lLV-OR63.js → CommandPalette-FiD4N8XD.js} +2 -2
- package/dist/core/web/public/next/assets/{CommandPalette-lLV-OR63.js.map → CommandPalette-FiD4N8XD.js.map} +1 -1
- package/dist/core/web/public/next/assets/CommandSection-DN8KwH-X.js +2 -0
- package/dist/core/web/public/next/assets/CommandSection-DN8KwH-X.js.map +1 -0
- package/dist/core/web/public/next/assets/{DiffPane-BVxhK-cy.js → DiffPane-DLJ3gGGK.js} +2 -2
- package/dist/core/web/public/next/assets/{DiffPane-BVxhK-cy.js.map → DiffPane-DLJ3gGGK.js.map} +1 -1
- package/dist/core/web/public/next/assets/{DiffViewer-yCdw9J-Y.js → DiffViewer-B7NWPjIO.js} +2 -2
- package/dist/core/web/public/next/assets/{DiffViewer-yCdw9J-Y.js.map → DiffViewer-B7NWPjIO.js.map} +1 -1
- package/dist/core/web/public/next/assets/{DockHost-BZReKwos.js → DockHost-DvR-hPhZ.js} +2 -2
- package/dist/core/web/public/next/assets/{DockHost-BZReKwos.js.map → DockHost-DvR-hPhZ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{EmptyState-D1GDxVZy.js → EmptyState-DhNgDDrF.js} +2 -2
- package/dist/core/web/public/next/assets/{EmptyState-D1GDxVZy.js.map → EmptyState-DhNgDDrF.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Epistemic-DRp4dBfB.js → Epistemic-uARPnx9x.js} +2 -2
- package/dist/core/web/public/next/assets/{Epistemic-DRp4dBfB.js.map → Epistemic-uARPnx9x.js.map} +1 -1
- package/dist/core/web/public/next/assets/FleetSection-D_zRBCub.js +3 -0
- package/dist/core/web/public/next/assets/FleetSection-D_zRBCub.js.map +1 -0
- package/dist/core/web/public/next/assets/{Funnel-zvDj3He4.js → Funnel-CL8uHONq.js} +2 -2
- package/dist/core/web/public/next/assets/{Funnel-zvDj3He4.js.map → Funnel-CL8uHONq.js.map} +1 -1
- package/dist/core/web/public/next/assets/{GearTray-CkviqjYr.js → GearTray-C7k4l_BW.js} +2 -2
- package/dist/core/web/public/next/assets/{GearTray-CkviqjYr.js.map → GearTray-C7k4l_BW.js.map} +1 -1
- package/dist/core/web/public/next/assets/{GrowthSection-Bg5sW0jI.js → GrowthSection-DwdNSGj8.js} +2 -2
- package/dist/core/web/public/next/assets/{GrowthSection-Bg5sW0jI.js.map → GrowthSection-DwdNSGj8.js.map} +1 -1
- package/dist/core/web/public/next/assets/{HandoffDialog-DcPj1ri9.js → HandoffDialog-FPVOqOMN.js} +2 -2
- package/dist/core/web/public/next/assets/{HandoffDialog-DcPj1ri9.js.map → HandoffDialog-FPVOqOMN.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Input-Ci7TD96x.js → Input-B9-VLcHS.js} +2 -2
- package/dist/core/web/public/next/assets/{Input-Ci7TD96x.js.map → Input-B9-VLcHS.js.map} +1 -1
- package/dist/core/web/public/next/assets/{LeaderCard-BSFTlMRF.js → LeaderCard-4R0BhDzT.js} +2 -2
- package/dist/core/web/public/next/assets/{LeaderCard-BSFTlMRF.js.map → LeaderCard-4R0BhDzT.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MatrixHeatmap-DojKZe9L.js → MatrixHeatmap-DiuushcS.js} +2 -2
- package/dist/core/web/public/next/assets/{MatrixHeatmap-DojKZe9L.js.map → MatrixHeatmap-DiuushcS.js.map} +1 -1
- package/dist/core/web/public/next/assets/McpSection-CJ__OJKl.js +2 -0
- package/dist/core/web/public/next/assets/{McpSection-CvcYu1X_.js.map → McpSection-CJ__OJKl.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MessageMarkdown-BrLCrb73.js → MessageMarkdown-qWKyJvAQ.js} +3 -3
- package/dist/core/web/public/next/assets/{MessageMarkdown-BrLCrb73.js.map → MessageMarkdown-qWKyJvAQ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MessageMarkdownRenderer-CjmdBw2p.js → MessageMarkdownRenderer-x05TrsrW.js} +2 -2
- package/dist/core/web/public/next/assets/{MessageMarkdownRenderer-CjmdBw2p.js.map → MessageMarkdownRenderer-x05TrsrW.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Meter-DTHbmhQg.js → Meter-D-hncpkO.js} +2 -2
- package/dist/core/web/public/next/assets/{Meter-DTHbmhQg.js.map → Meter-D-hncpkO.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MindSection-DcO9fmYe.js → MindSection-BjXHkQPS.js} +2 -2
- package/dist/core/web/public/next/assets/{MindSection-DcO9fmYe.js.map → MindSection-BjXHkQPS.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MutationTokenDialog-Cqn2uPV6.js → MutationTokenDialog-SkRxqV_I.js} +2 -2
- package/dist/core/web/public/next/assets/{MutationTokenDialog-Cqn2uPV6.js.map → MutationTokenDialog-SkRxqV_I.js.map} +1 -1
- package/dist/core/web/public/next/assets/{NeedsYouDrawer-hiTINupk.js → NeedsYouDrawer-rSd1ZHAR.js} +2 -2
- package/dist/core/web/public/next/assets/{NeedsYouDrawer-hiTINupk.js.map → NeedsYouDrawer-rSd1ZHAR.js.map} +1 -1
- package/dist/core/web/public/next/assets/{NeedsYouList-B4Z37Phx.js → NeedsYouList-CG-nB1tr.js} +2 -2
- package/dist/core/web/public/next/assets/{NeedsYouList-B4Z37Phx.js.map → NeedsYouList-CG-nB1tr.js.map} +1 -1
- package/dist/core/web/public/next/assets/{NewChatDialog-utSckh7C.js → NewChatDialog-BeDQ1eW3.js} +2 -2
- package/dist/core/web/public/next/assets/{NewChatDialog-utSckh7C.js.map → NewChatDialog-BeDQ1eW3.js.map} +1 -1
- package/dist/core/web/public/next/assets/{OnboardingFlow-7N3YSUHN.js → OnboardingFlow-CkTZtt-m.js} +2 -2
- package/dist/core/web/public/next/assets/{OnboardingFlow-7N3YSUHN.js.map → OnboardingFlow-CkTZtt-m.js.map} +1 -1
- package/dist/core/web/public/next/assets/{PreviewPane-CqzkaAjG.js → PreviewPane-kzbbSK4u.js} +2 -2
- package/dist/core/web/public/next/assets/{PreviewPane-CqzkaAjG.js.map → PreviewPane-kzbbSK4u.js.map} +1 -1
- package/dist/core/web/public/next/assets/RailStatus-D-t2gPae.js +2 -0
- package/dist/core/web/public/next/assets/{RailStatus-sZhApA8k.js.map → RailStatus-D-t2gPae.js.map} +1 -1
- package/dist/core/web/public/next/assets/{RefreshIndicator-C1uQIegT.js → RefreshIndicator-BLnr9IOM.js} +2 -2
- package/dist/core/web/public/next/assets/{RefreshIndicator-C1uQIegT.js.map → RefreshIndicator-BLnr9IOM.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-DXjjV6Sh.js → ResourcePoolConsoleApp-BeG0gBif.js} +2 -2
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-DXjjV6Sh.js.map → ResourcePoolConsoleApp-BeG0gBif.js.map} +1 -1
- package/dist/core/web/public/next/assets/ResourcesChrome-B3Z3O98t.css +1 -0
- package/dist/core/web/public/next/assets/ResourcesChrome-BzV6bkIa.js +3 -0
- package/dist/core/web/public/next/assets/ResourcesChrome-BzV6bkIa.js.map +1 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-CSKIO_wZ.css +1 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-o4ILHdep.js +2 -0
- package/dist/core/web/public/next/assets/ResourcesDrawer-o4ILHdep.js.map +1 -0
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-D1LZxQjN.js → RouteErrorBoundary-C5SxA2Dg.js} +2 -2
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-D1LZxQjN.js.map → RouteErrorBoundary-C5SxA2Dg.js.map} +1 -1
- package/dist/core/web/public/next/assets/RunInCloudAction-C3LBp7C4.js +2 -0
- package/dist/core/web/public/next/assets/RunInCloudAction-C3LBp7C4.js.map +1 -0
- package/dist/core/web/public/next/assets/{SeatSelector-CT92PqM_.js → SeatSelector-DpvvbjNm.js} +2 -2
- package/dist/core/web/public/next/assets/{SeatSelector-CT92PqM_.js.map → SeatSelector-DpvvbjNm.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Segmented-BMvq-FfD.js → Segmented-BL40udoO.js} +2 -2
- package/dist/core/web/public/next/assets/{Segmented-BMvq-FfD.js.map → Segmented-BL40udoO.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Select-DkdeoSQn.js → Select-FWLnAw_j.js} +2 -2
- package/dist/core/web/public/next/assets/{Select-DkdeoSQn.js.map → Select-FWLnAw_j.js.map} +1 -1
- package/dist/core/web/public/next/assets/{SessionInsightChip-CwlakUYU.js → SessionInsightChip-CWye87Ju.js} +2 -2
- package/dist/core/web/public/next/assets/{SessionInsightChip-CwlakUYU.js.map → SessionInsightChip-CWye87Ju.js.map} +1 -1
- package/dist/core/web/public/next/assets/{SessionSearch-DFByh2NZ.js → SessionSearch-YvCHFUuN.js} +2 -2
- package/dist/core/web/public/next/assets/{SessionSearch-DFByh2NZ.js.map → SessionSearch-YvCHFUuN.js.map} +1 -1
- package/dist/core/web/public/next/assets/{SettingsSection-DgSaHFK4.js → SettingsSection-Dr18upeE.js} +2 -2
- package/dist/core/web/public/next/assets/{SettingsSection-DgSaHFK4.js.map → SettingsSection-Dr18upeE.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Sheet-C7APkGPt.js → Sheet-DZKcQXQg.js} +2 -2
- package/dist/core/web/public/next/assets/{Sheet-C7APkGPt.js.map → Sheet-DZKcQXQg.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ShortcutsOverlay-ZPyXUS_I.js → ShortcutsOverlay-BpDimdPq.js} +2 -2
- package/dist/core/web/public/next/assets/{ShortcutsOverlay-ZPyXUS_I.js.map → ShortcutsOverlay-BpDimdPq.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Sidebar-Chsgazmk.js → Sidebar-BoBzBEFX.js} +3 -3
- package/dist/core/web/public/next/assets/{Sidebar-Chsgazmk.js.map → Sidebar-BoBzBEFX.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Slider-B0kjW7cd.js → Slider-DUMo9HDD.js} +2 -2
- package/dist/core/web/public/next/assets/{Slider-B0kjW7cd.js.map → Slider-DUMo9HDD.js.map} +1 -1
- package/dist/core/web/public/next/assets/{StatusBadge-wv4e6f8b.js → StatusBadge-BwnBNFQr.js} +2 -2
- package/dist/core/web/public/next/assets/{StatusBadge-wv4e6f8b.js.map → StatusBadge-BwnBNFQr.js.map} +1 -1
- package/dist/core/web/public/next/assets/{StepBand-Db8WPw8J.js → StepBand-PDXMIlRk.js} +2 -2
- package/dist/core/web/public/next/assets/{StepBand-Db8WPw8J.js.map → StepBand-PDXMIlRk.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Surface-BkDrQ4t3.js → Surface-B3TZVoER.js} +2 -2
- package/dist/core/web/public/next/assets/{Surface-BkDrQ4t3.js.map → Surface-B3TZVoER.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Swimlane-Dcve56cP.js → Swimlane-DR4OgON_.js} +2 -2
- package/dist/core/web/public/next/assets/{Swimlane-Dcve56cP.js.map → Swimlane-DR4OgON_.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Switch-DamlpSMY.js → Switch-CcR5Llk5.js} +2 -2
- package/dist/core/web/public/next/assets/{Switch-DamlpSMY.js.map → Switch-CcR5Llk5.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Tag-Cs4tudBN.js → Tag-_-K1h7Hk.js} +2 -2
- package/dist/core/web/public/next/assets/{Tag-Cs4tudBN.js.map → Tag-_-K1h7Hk.js.map} +1 -1
- package/dist/core/web/public/next/assets/{TerminalPane-BDkKFych.js → TerminalPane-_1aH4ndN.js} +2 -2
- package/dist/core/web/public/next/assets/{TerminalPane-BDkKFych.js.map → TerminalPane-_1aH4ndN.js.map} +1 -1
- package/dist/core/web/public/next/assets/{UniverseConsoleApp-BE72VyBL.js → UniverseConsoleApp-BUsq-inZ.js} +2 -2
- package/dist/core/web/public/next/assets/{UniverseConsoleApp-BE72VyBL.js.map → UniverseConsoleApp-BUsq-inZ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{UniverseView-BbmYY2P4.js → UniverseView-Dogy_dsB.js} +2 -2
- package/dist/core/web/public/next/assets/{UniverseView-BbmYY2P4.js.map → UniverseView-Dogy_dsB.js.map} +1 -1
- package/dist/core/web/public/next/assets/UsageSection-DiX_dTyo.js +2 -0
- package/dist/core/web/public/next/assets/UsageSection-DiX_dTyo.js.map +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-Cxqr-3qc.css +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-WVeyJnW7.js +3 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-WVeyJnW7.js.map +1 -0
- package/dist/core/web/public/next/assets/Workspace-BbxZHwQd.js +10 -0
- package/dist/core/web/public/next/assets/Workspace-BbxZHwQd.js.map +1 -0
- package/dist/core/web/public/next/assets/{actions-BnjZy8a-.js → actions-s2lfm_5k.js} +2 -2
- package/dist/core/web/public/next/assets/{actions-BnjZy8a-.js.map → actions-s2lfm_5k.js.map} +1 -1
- package/dist/core/web/public/next/assets/apps-model-CDFvmsQV.js +2 -0
- package/dist/core/web/public/next/assets/apps-model-CDFvmsQV.js.map +1 -0
- package/dist/core/web/public/next/assets/{budget-queries-Cp6vO7FH.js → budget-queries-wUshcovN.js} +2 -2
- package/dist/core/web/public/next/assets/{budget-queries-Cp6vO7FH.js.map → budget-queries-wUshcovN.js.map} +1 -1
- package/dist/core/web/public/next/assets/{capacity-strip-model-9-Yb211u.js → capacity-strip-model-Bj_9ztzs.js} +2 -2
- package/dist/core/web/public/next/assets/{capacity-strip-model-9-Yb211u.js.map → capacity-strip-model-Bj_9ztzs.js.map} +1 -1
- package/dist/core/web/public/next/assets/{charts-BmbKhjqw.js → charts-CMSgAUKn.js} +2 -2
- package/dist/core/web/public/next/assets/{charts-BmbKhjqw.js.map → charts-CMSgAUKn.js.map} +1 -1
- package/dist/core/web/public/next/assets/cloud-C1KPNRHC.css +1 -0
- package/dist/core/web/public/next/assets/cloud-queries-CnV1yaNG.js +2 -0
- package/dist/core/web/public/next/assets/cloud-queries-CnV1yaNG.js.map +1 -0
- package/dist/core/web/public/next/assets/cloud.module-CiwatLj3.js +2 -0
- package/dist/core/web/public/next/assets/cloud.module-CiwatLj3.js.map +1 -0
- package/dist/core/web/public/next/assets/{command-bus-DHJJLWh8.js → command-bus-DqimKCUY.js} +2 -2
- package/dist/core/web/public/next/assets/{command-bus-DHJJLWh8.js.map → command-bus-DqimKCUY.js.map} +1 -1
- package/dist/core/web/public/next/assets/command-catalog-BdtDH93o.js +2 -0
- package/dist/core/web/public/next/assets/command-catalog-BdtDH93o.js.map +1 -0
- package/dist/core/web/public/next/assets/{composer-keys-CYz4U4Bg.js → composer-keys-DBRymxQn.js} +2 -2
- package/dist/core/web/public/next/assets/{composer-keys-CYz4U4Bg.js.map → composer-keys-DBRymxQn.js.map} +1 -1
- package/dist/core/web/public/next/assets/{context-model-DeJ28uSZ.js → context-model-Dwd49-dp.js} +2 -2
- package/dist/core/web/public/next/assets/{context-model-DeJ28uSZ.js.map → context-model-Dwd49-dp.js.map} +1 -1
- package/dist/core/web/public/next/assets/{context-model-BGznyHNQ.js → context-model-MT17V86_.js} +2 -2
- package/dist/core/web/public/next/assets/{context-model-BGznyHNQ.js.map → context-model-MT17V86_.js.map} +1 -1
- package/dist/core/web/public/next/assets/{context-queries-_mEgy4eg.js → context-queries-xVKIeynP.js} +2 -2
- package/dist/core/web/public/next/assets/{context-queries-_mEgy4eg.js.map → context-queries-xVKIeynP.js.map} +1 -1
- package/dist/core/web/public/next/assets/{control-queries-C4TG8blN.js → control-queries-DOZR-D8G.js} +2 -2
- package/dist/core/web/public/next/assets/{control-queries-C4TG8blN.js.map → control-queries-DOZR-D8G.js.map} +1 -1
- package/dist/core/web/public/next/assets/{dock-icons-BB7Fi6hT.js → dock-icons-8EtARwUm.js} +2 -2
- package/dist/core/web/public/next/assets/{dock-icons-BB7Fi6hT.js.map → dock-icons-8EtARwUm.js.map} +1 -1
- package/dist/core/web/public/next/assets/dock-panes-UKS-mXhr.js +2 -0
- package/dist/core/web/public/next/assets/{dock-panes-mnIwSpRp.js.map → dock-panes-UKS-mXhr.js.map} +1 -1
- package/dist/core/web/public/next/assets/{dock-store-CdHQRP8s.js → dock-store-BA1cHOYA.js} +2 -2
- package/dist/core/web/public/next/assets/{dock-store-CdHQRP8s.js.map → dock-store-BA1cHOYA.js.map} +1 -1
- package/dist/core/web/public/next/assets/{fleet-model-B4FKC7fH.js → fleet-model-CNe8Wh-s.js} +2 -2
- package/dist/core/web/public/next/assets/{fleet-model-B4FKC7fH.js.map → fleet-model-CNe8Wh-s.js.map} +1 -1
- package/dist/core/web/public/next/assets/fleet-queries-BSdRlUwJ.js +2 -0
- package/dist/core/web/public/next/assets/fleet-queries-BSdRlUwJ.js.map +1 -0
- package/dist/core/web/public/next/assets/{format-lW58rL2y.js → format-B8DAVcn2.js} +2 -2
- package/dist/core/web/public/next/assets/{format-lW58rL2y.js.map → format-B8DAVcn2.js.map} +1 -1
- package/dist/core/web/public/next/assets/{git-model-DaGw1SzS.js → git-model-CivuBY_D.js} +2 -2
- package/dist/core/web/public/next/assets/{git-model-DaGw1SzS.js.map → git-model-CivuBY_D.js.map} +1 -1
- package/dist/core/web/public/next/assets/{global-DG1fmn4y.js → global-Di2PUgj4.js} +2 -2
- package/dist/core/web/public/next/assets/{global-DG1fmn4y.js.map → global-Di2PUgj4.js.map} +1 -1
- package/dist/core/web/public/next/assets/{guarded-action--lguLXfz.js → guarded-action-CvOHcqyH.js} +2 -2
- package/dist/core/web/public/next/assets/{guarded-action--lguLXfz.js.map → guarded-action-CvOHcqyH.js.map} +1 -1
- package/dist/core/web/public/next/assets/{icons-YPgbel-I.js → icons-B_yuAgdN.js} +2 -2
- package/dist/core/web/public/next/assets/{icons-YPgbel-I.js.map → icons-B_yuAgdN.js.map} +1 -1
- package/dist/core/web/public/next/assets/{index-Dk8R-3a7.js → index-oAAq8XJa.js} +3 -3
- package/dist/core/web/public/next/assets/{index-Dk8R-3a7.js.map → index-oAAq8XJa.js.map} +1 -1
- package/dist/core/web/public/next/assets/{live-model-44wEU6I8.js → live-model-DCw_IFRI.js} +2 -2
- package/dist/core/web/public/next/assets/{live-model-44wEU6I8.js.map → live-model-DCw_IFRI.js.map} +1 -1
- package/dist/core/web/public/next/assets/local-model-DFyjKX0b.js +2 -0
- package/dist/core/web/public/next/assets/local-model-DFyjKX0b.js.map +1 -0
- package/dist/core/web/public/next/assets/{mind.module-BOABBdi_.js → mind.module-vnuJcwvD.js} +2 -2
- package/dist/core/web/public/next/assets/{mind.module-BOABBdi_.js.map → mind.module-vnuJcwvD.js.map} +1 -1
- package/dist/core/web/public/next/assets/{mutations-DjXM3IDg.js → mutations-Dpsql5t7.js} +2 -2
- package/dist/core/web/public/next/assets/{mutations-DjXM3IDg.js.map → mutations-Dpsql5t7.js.map} +1 -1
- package/dist/core/web/public/next/assets/{overnight-queries-Be_eossf.js → overnight-queries-X-44Gsw5.js} +2 -2
- package/dist/core/web/public/next/assets/{overnight-queries-Be_eossf.js.map → overnight-queries-X-44Gsw5.js.map} +1 -1
- package/dist/core/web/public/next/assets/primitives-BDIcUvob.js +1 -0
- package/dist/core/web/public/next/assets/{queries-CYEVCq5r.js → queries-BA4rNGD-.js} +2 -2
- package/dist/core/web/public/next/assets/{queries-CYEVCq5r.js.map → queries-BA4rNGD-.js.map} +1 -1
- package/dist/core/web/public/next/assets/{reasoning-pref-a_ZP6GzU.js → reasoning-pref-B9-DJUXP.js} +2 -2
- package/dist/core/web/public/next/assets/{reasoning-pref-a_ZP6GzU.js.map → reasoning-pref-B9-DJUXP.js.map} +1 -1
- package/dist/core/web/public/next/assets/{seat-subscription-CRigL-GE.js → seat-subscription-CH6fW4fJ.js} +2 -2
- package/dist/core/web/public/next/assets/{seat-subscription-CRigL-GE.js.map → seat-subscription-CH6fW4fJ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{section-visibility-u7q-Q9AA.js → section-visibility-qFqc_d4Z.js} +2 -2
- package/dist/core/web/public/next/assets/{section-visibility-u7q-Q9AA.js.map → section-visibility-qFqc_d4Z.js.map} +1 -1
- package/dist/core/web/public/next/assets/{sidebar-model-i4WRuQ6j.js → sidebar-model-M1GaQU5l.js} +2 -2
- package/dist/core/web/public/next/assets/{sidebar-model-i4WRuQ6j.js.map → sidebar-model-M1GaQU5l.js.map} +1 -1
- package/dist/core/web/public/next/assets/{slots-CV9ZuLQU.js → slots-Ds9ZIqUL.js} +3 -3
- package/dist/core/web/public/next/assets/{slots-CV9ZuLQU.js.map → slots-Ds9ZIqUL.js.map} +1 -1
- package/dist/core/web/public/next/assets/{surface-data-DLvmUX9z.js → surface-data-J52iIGMD.js} +2 -2
- package/dist/core/web/public/next/assets/{surface-data-DLvmUX9z.js.map → surface-data-J52iIGMD.js.map} +1 -1
- package/dist/core/web/public/next/assets/surface-prefetch-CgZ-LEJK.js +2 -0
- package/dist/core/web/public/next/assets/surface-prefetch-CgZ-LEJK.js.map +1 -0
- package/dist/core/web/public/next/assets/{tasks-model-DWs5u9RO.js → tasks-model-ent8f0jZ.js} +2 -2
- package/dist/core/web/public/next/assets/{tasks-model-DWs5u9RO.js.map → tasks-model-ent8f0jZ.js.map} +1 -1
- package/dist/core/web/public/next/assets/{terminal-icons-Ct9cZsEK.js → terminal-icons-DJTK7QpR.js} +2 -2
- package/dist/core/web/public/next/assets/{terminal-icons-Ct9cZsEK.js.map → terminal-icons-DJTK7QpR.js.map} +1 -1
- package/dist/core/web/public/next/assets/types-D5XOdyw8.js +2 -0
- package/dist/core/web/public/next/assets/types-D5XOdyw8.js.map +1 -0
- package/dist/core/web/public/next/assets/{usage-queries-CI_y9oWZ.js → usage-queries-Bn8ccqyN.js} +2 -2
- package/dist/core/web/public/next/assets/{usage-queries-CI_y9oWZ.js.map → usage-queries-Bn8ccqyN.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-guarded-action-DVCtLzSo.js → use-guarded-action-C2HlSzkz.js} +2 -2
- package/dist/core/web/public/next/assets/{use-guarded-action-DVCtLzSo.js.map → use-guarded-action-C2HlSzkz.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-ticker-C3LQ2IYs.js → use-ticker-BNc1H4ZC.js} +2 -2
- package/dist/core/web/public/next/assets/{use-ticker-C3LQ2IYs.js.map → use-ticker-BNc1H4ZC.js.map} +1 -1
- package/dist/core/web/public/next/assets/{use-token-gate-B5gOFkeH.js → use-token-gate-B3IJL6bf.js} +2 -2
- package/dist/core/web/public/next/assets/{use-token-gate-B5gOFkeH.js.map → use-token-gate-B3IJL6bf.js.map} +1 -1
- package/dist/core/web/public/next/assets/{useActivity-C3R1Sudh.js → useActivity-Bk3XgXjL.js} +2 -2
- package/dist/core/web/public/next/assets/{useActivity-C3R1Sudh.js.map → useActivity-Bk3XgXjL.js.map} +1 -1
- package/dist/core/web/public/next/assets/{useChartWidth-0APW0BR3.js → useChartWidth-lZ9PrQn0.js} +2 -2
- package/dist/core/web/public/next/assets/{useChartWidth-0APW0BR3.js.map → useChartWidth-lZ9PrQn0.js.map} +1 -1
- package/dist/core/web/public/next/assets/{useSeatsRefresh-BN8bso-n.js → useSeatsRefresh-CG4jczeL.js} +2 -2
- package/dist/core/web/public/next/assets/{useSeatsRefresh-BN8bso-n.js.map → useSeatsRefresh-CG4jczeL.js.map} +1 -1
- package/dist/core/web/public/next/assets/{verse-model-yHPwjf-7.js → verse-model-D7NZQFAR.js} +2 -2
- package/dist/core/web/public/next/assets/{verse-model-yHPwjf-7.js.map → verse-model-D7NZQFAR.js.map} +1 -1
- package/dist/core/web/public/next/assets/{verse-queries-2PxoBISm.js → verse-queries-DvIJcn6Z.js} +2 -2
- package/dist/core/web/public/next/assets/{verse-queries-2PxoBISm.js.map → verse-queries-DvIJcn6Z.js.map} +1 -1
- package/dist/core/web/public/next/assets/{verse-store-DHTuZpYa.js → verse-store-DjBWj04q.js} +2 -2
- package/dist/core/web/public/next/assets/{verse-store-DHTuZpYa.js.map → verse-store-DjBWj04q.js.map} +1 -1
- package/dist/core/web/public/next/assets/verse-ui-store-zafyzXKD.js +3 -0
- package/dist/core/web/public/next/assets/{verse-ui-store-Dy4HuDBV.js.map → verse-ui-store-zafyzXKD.js.map} +1 -1
- package/dist/core/web/public/next/assets/{viewport-DDoJ_xVq.js → viewport-BEqGUoTA.js} +2 -2
- package/dist/core/web/public/next/assets/{viewport-DDoJ_xVq.js.map → viewport-BEqGUoTA.js.map} +1 -1
- package/dist/core/web/public/next/assets/warmup-BR6pxAKs.js +3 -0
- package/dist/core/web/public/next/assets/{warmup-BsL2LdR-.js.map → warmup-BR6pxAKs.js.map} +1 -1
- package/dist/core/web/public/next/assets/{workspace-model-Dd3LmIym.js → workspace-model-D_tWD5Wt.js} +2 -2
- package/dist/core/web/public/next/assets/{workspace-model-Dd3LmIym.js.map → workspace-model-D_tWD5Wt.js.map} +1 -1
- 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/Advanced-xVYFAeA8.js +0 -2
- package/dist/core/web/public/next/assets/Advanced-xVYFAeA8.js.map +0 -1
- package/dist/core/web/public/next/assets/AppsSection-B5HWJi9I.js +0 -2
- package/dist/core/web/public/next/assets/AppsSection-B5HWJi9I.js.map +0 -1
- package/dist/core/web/public/next/assets/AutonomySection-BF5UCsMv.js +0 -2
- package/dist/core/web/public/next/assets/CommandSection-fiZ4DJpM.js +0 -2
- package/dist/core/web/public/next/assets/CommandSection-fiZ4DJpM.js.map +0 -1
- package/dist/core/web/public/next/assets/FleetSection-rPLy_NPo.js +0 -3
- package/dist/core/web/public/next/assets/FleetSection-rPLy_NPo.js.map +0 -1
- package/dist/core/web/public/next/assets/McpSection-CvcYu1X_.js +0 -2
- package/dist/core/web/public/next/assets/RailStatus-sZhApA8k.js +0 -2
- package/dist/core/web/public/next/assets/UsageSection-DsC5WmLk.js +0 -2
- package/dist/core/web/public/next/assets/UsageSection-DsC5WmLk.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-CXJWDiEM.css +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-Dq_hREXs.js +0 -3
- package/dist/core/web/public/next/assets/VerseConsoleApp-Dq_hREXs.js.map +0 -1
- package/dist/core/web/public/next/assets/Workspace-CKvVEPFq.js +0 -10
- package/dist/core/web/public/next/assets/Workspace-CKvVEPFq.js.map +0 -1
- package/dist/core/web/public/next/assets/command-catalog-s3W6Z96D.js +0 -2
- package/dist/core/web/public/next/assets/command-catalog-s3W6Z96D.js.map +0 -1
- package/dist/core/web/public/next/assets/dock-panes-mnIwSpRp.js +0 -2
- package/dist/core/web/public/next/assets/primitives-Dl3SEQvh.js +0 -1
- package/dist/core/web/public/next/assets/surface-prefetch-Ct2JwXvL.js +0 -2
- package/dist/core/web/public/next/assets/surface-prefetch-Ct2JwXvL.js.map +0 -1
- package/dist/core/web/public/next/assets/verse-ui-store-Dy4HuDBV.js +0 -3
- package/dist/core/web/public/next/assets/warmup-BsL2LdR-.js +0 -3
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { cleanModelText } from './leader-memo.js';
|
|
2
|
+
/** Same shape the cloud service accepts (service.ts validates launches against it). */
|
|
3
|
+
const GITHUB_REPO_RE = /^[A-Za-z0-9-]+\/[A-Za-z0-9._-]+$/;
|
|
4
|
+
/** Backlog area for Leader-suggested items (the backlog view groups by area). */
|
|
5
|
+
export const LEADER_CLOUD_AREA = 'leader';
|
|
6
|
+
/**
|
|
7
|
+
* Class → backlog priority. Class A is inside the grant and applies at once,
|
|
8
|
+
* so it ranks with the highest built-in items; class B waited out a veto
|
|
9
|
+
* window, one step lower. Class C never reaches the backlog.
|
|
10
|
+
*/
|
|
11
|
+
const PRIORITY_BY_CLASS = Object.freeze({ A: 1, B: 2 });
|
|
12
|
+
const TITLE_MAX = 80;
|
|
13
|
+
const DETAIL_MAX = 4_000;
|
|
14
|
+
const LINE_MAX = 400;
|
|
15
|
+
const EVIDENCE_MAX_ITEMS = 6;
|
|
16
|
+
/**
|
|
17
|
+
* Well under CLOUD_PROMPT_MAX_CHARS: the delivery contract is appended to the
|
|
18
|
+
* prompt at launch, and the service truncates anything longer — a cut brief
|
|
19
|
+
* would lose the memo context at its end.
|
|
20
|
+
*/
|
|
21
|
+
export const LEADER_CLOUD_PROMPT_MAX = 8_000;
|
|
22
|
+
/** `leader-<memoId>-<n>`, n = the action's index in `memo.actions` (stable across re-reads). */
|
|
23
|
+
export function leaderBacklogItemId(memoId, index) {
|
|
24
|
+
return `leader-${memoId}-${index}`;
|
|
25
|
+
}
|
|
26
|
+
function normalisedTitle(title) {
|
|
27
|
+
return title.toLowerCase().replace(/\s+/g, ' ').trim();
|
|
28
|
+
}
|
|
29
|
+
/** A `work.dispatch` for a GitHub repo, in class A/B, that Mason has not vetoed. */
|
|
30
|
+
function isCloudWorthy(action) {
|
|
31
|
+
if (action.kind !== 'work.dispatch')
|
|
32
|
+
return false;
|
|
33
|
+
if (action.class === 'C' || action.status === 'escalated' || action.status === 'vetoed')
|
|
34
|
+
return false;
|
|
35
|
+
const repo = action.params?.task?.repo;
|
|
36
|
+
return typeof repo === 'string' && GITHUB_REPO_RE.test(repo);
|
|
37
|
+
}
|
|
38
|
+
function memoContext(memo) {
|
|
39
|
+
const lines = [];
|
|
40
|
+
const b = memo.bottleneck;
|
|
41
|
+
const statement = cleanModelText(b?.statement, LINE_MAX);
|
|
42
|
+
if (statement) {
|
|
43
|
+
lines.push(`Bottleneck: ${statement}`);
|
|
44
|
+
const metric = cleanModelText(b?.metric, 80);
|
|
45
|
+
if (metric)
|
|
46
|
+
lines.push(`Metric: ${metric}`);
|
|
47
|
+
const evidence = (b?.evidence ?? [])
|
|
48
|
+
.slice(0, EVIDENCE_MAX_ITEMS)
|
|
49
|
+
.map((e) => cleanModelText(e, LINE_MAX))
|
|
50
|
+
.filter((e) => e !== null);
|
|
51
|
+
if (evidence.length > 0)
|
|
52
|
+
lines.push('Evidence:', ...evidence.map((e) => `- ${e}`));
|
|
53
|
+
}
|
|
54
|
+
const move = cleanModelText(memo.move?.statement, LINE_MAX);
|
|
55
|
+
if (move)
|
|
56
|
+
lines.push(`The Leader's move against it: ${move}`);
|
|
57
|
+
if (lines.length === 0)
|
|
58
|
+
return [];
|
|
59
|
+
return [`Context from the Leader's memo ${memo.id}:`, ...lines];
|
|
60
|
+
}
|
|
61
|
+
function buildPrompt(action, context) {
|
|
62
|
+
const task = action.params.task;
|
|
63
|
+
const title = cleanModelText(task.title, TITLE_MAX * 2) ?? 'Leader-proposed change';
|
|
64
|
+
const detail = cleanModelText(task.detail, DETAIL_MAX);
|
|
65
|
+
const why = cleanModelText(action.why, LINE_MAX);
|
|
66
|
+
const parts = [
|
|
67
|
+
`Task for ${task.repo}: ${title}`,
|
|
68
|
+
detail,
|
|
69
|
+
why ? `Why the Leader proposed it: ${why}` : null,
|
|
70
|
+
context.length > 0 ? context.join('\n') : null,
|
|
71
|
+
// The brief is model-written: ask the session to check it against the
|
|
72
|
+
// code rather than trust it, and to deliver a no-change report when the
|
|
73
|
+
// premise is wrong instead of forcing a diff.
|
|
74
|
+
'This task was proposed by Ashlr Verse\'s Leader from its own digests. Verify each claim against the code before acting; '
|
|
75
|
+
+ 'if the premise is wrong or the work is already done, report no-change instead of forcing a diff. '
|
|
76
|
+
+ 'Keep the change focused, add a regression test for every behaviour change, and keep tests HOME-isolated with no paid model calls.',
|
|
77
|
+
].filter((p) => typeof p === 'string' && p.length > 0);
|
|
78
|
+
const prompt = parts.join('\n\n');
|
|
79
|
+
return prompt.length > LEADER_CLOUD_PROMPT_MAX ? `${prompt.slice(0, LEADER_CLOUD_PROMPT_MAX - 1)}…` : prompt;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Convert a memo's code-change actions into cloud backlog items (pure).
|
|
83
|
+
* Deduped within the memo by id and by normalised title — the backlog
|
|
84
|
+
* dedupes again across memos. Empty for a memo that did not complete.
|
|
85
|
+
*/
|
|
86
|
+
export function leaderMemoToCloudBacklog(memo) {
|
|
87
|
+
if (memo.status !== 'ok')
|
|
88
|
+
return [];
|
|
89
|
+
const context = memoContext(memo);
|
|
90
|
+
const items = [];
|
|
91
|
+
const seenIds = new Set();
|
|
92
|
+
const seenTitles = new Set();
|
|
93
|
+
memo.actions.forEach((action, index) => {
|
|
94
|
+
if (!isCloudWorthy(action))
|
|
95
|
+
return;
|
|
96
|
+
const title = cleanModelText(action.params.task.title, TITLE_MAX);
|
|
97
|
+
if (!title)
|
|
98
|
+
return;
|
|
99
|
+
const id = leaderBacklogItemId(memo.id, index);
|
|
100
|
+
const key = normalisedTitle(title);
|
|
101
|
+
if (seenIds.has(id) || seenTitles.has(key))
|
|
102
|
+
return;
|
|
103
|
+
seenIds.add(id);
|
|
104
|
+
seenTitles.add(key);
|
|
105
|
+
items.push({
|
|
106
|
+
id,
|
|
107
|
+
title,
|
|
108
|
+
prompt: buildPrompt(action, context),
|
|
109
|
+
area: LEADER_CLOUD_AREA,
|
|
110
|
+
priority: PRIORITY_BY_CLASS[action.class],
|
|
111
|
+
repo: action.params.task.repo,
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
return items;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Hand a memo's code-change actions to the cloud backlog. Never throws: the
|
|
118
|
+
* backlog is a side channel, and a failure here must not fail the memo. No
|
|
119
|
+
* write at all when the memo has no code-change actions.
|
|
120
|
+
*/
|
|
121
|
+
export function suggestLeaderCloudBacklog(deps, memo) {
|
|
122
|
+
const items = leaderMemoToCloudBacklog(memo);
|
|
123
|
+
if (items.length === 0)
|
|
124
|
+
return { proposed: 0, added: 0, error: null };
|
|
125
|
+
try {
|
|
126
|
+
const added = deps.append(items);
|
|
127
|
+
return { proposed: items.length, added: Number.isFinite(added) ? Math.max(0, Math.trunc(added)) : 0, error: null };
|
|
128
|
+
}
|
|
129
|
+
catch (err) {
|
|
130
|
+
const reason = cleanModelText(err instanceof Error ? err.message : String(err), 200) ?? 'error';
|
|
131
|
+
return { proposed: items.length, added: 0, error: `The cloud backlog did not accept the Leader's tasks: ${reason}` };
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=leader-cloud.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"leader-cloud.js","sourceRoot":"","sources":["../../../src/core/vision/leader-cloud.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ import { type LeaderAction, type LeaderHitRate, type LeaderMemo, type LeaderOutc
|
|
|
8
8
|
import { type LeaderMetric } from './leader-memo.js';
|
|
9
9
|
import { type LeaderApplyDeps } from './leader-apply.js';
|
|
10
10
|
import { type LeaderSeatDeps } from './leader-seat.js';
|
|
11
|
+
import { type LeaderCloudBacklogDeps } from './leader-cloud.js';
|
|
11
12
|
/**
|
|
12
13
|
* The Visionary persona. It keeps the Strategist's operating principles and
|
|
13
14
|
* names no real person (SPEC-310B §4). The action catalogue below is the ONLY
|
|
@@ -223,6 +224,11 @@ export interface LeaderRunDeps {
|
|
|
223
224
|
sources: LeaderEvidenceSources;
|
|
224
225
|
seat: LeaderSeatDeps;
|
|
225
226
|
apply: LeaderApplyDeps;
|
|
227
|
+
/**
|
|
228
|
+
* 3.11 cloud lane: where the memo's code-change actions are suggested as
|
|
229
|
+
* cloud backlog items (leader-cloud.ts). Absent = no cloud suggestions.
|
|
230
|
+
*/
|
|
231
|
+
cloudBacklog?: LeaderCloudBacklogDeps;
|
|
226
232
|
}
|
|
227
233
|
export declare function loadDefaultLeaderRunDeps(cfg: AshlrConfig): Promise<LeaderRunDeps>;
|
|
228
234
|
export interface LeaderRunResult {
|
|
@@ -42,6 +42,7 @@ import { LEADER_ACTION_KINDS, LEADER_LIMITS, } from './leader-types.js';
|
|
|
42
42
|
import { LEADER_MEMO_SCHEMA_TEXT, LEADER_METRICS, actionIdFor, cleanModelText, isLeaderMetric, leaderRoot, materializeHypotheses, newMemoId, parseLeaderMemoOutput, readRecentMemos, summarizeMemo, writeLeaderMemo, } from './leader-memo.js';
|
|
43
43
|
import { applyDueLeaderActions, enactLeaderActions, isLeaderDryRun, listLeaderActions, loadDefaultLeaderDeps, readLeaderDirectives, readStandards, } from './leader-apply.js';
|
|
44
44
|
import { loadDefaultLeaderSeatDeps, resolveLeaderSeat } from './leader-seat.js';
|
|
45
|
+
import { suggestLeaderCloudBacklog } from './leader-cloud.js';
|
|
45
46
|
// ---------------------------------------------------------------------------
|
|
46
47
|
// Persona
|
|
47
48
|
// ---------------------------------------------------------------------------
|
|
@@ -461,7 +462,7 @@ export function gradeDueAt(memo) {
|
|
|
461
462
|
return Math.max(Date.parse(memo.at) + LEADER_LIMITS.outcomeGradeDays * 86_400_000, Date.parse(byDate));
|
|
462
463
|
}
|
|
463
464
|
export async function loadDefaultLeaderRunDeps(cfg) {
|
|
464
|
-
const [apply, seat, budgetStore, quarantine, quality, modelStats, reasoningApi, goalsStore, ledger, effective] = await Promise.all([
|
|
465
|
+
const [apply, seat, budgetStore, quarantine, quality, modelStats, reasoningApi, goalsStore, ledger, effective, cloudBacklog] = await Promise.all([
|
|
465
466
|
loadDefaultLeaderDeps(),
|
|
466
467
|
loadDefaultLeaderSeatDeps(cfg),
|
|
467
468
|
import('../routing/budget-store.js'),
|
|
@@ -472,12 +473,14 @@ export async function loadDefaultLeaderRunDeps(cfg) {
|
|
|
472
473
|
import('../goals/store.js'),
|
|
473
474
|
import('../authority/ledger.js'),
|
|
474
475
|
import('../authority/effective-config.js'),
|
|
476
|
+
import('../cloud/backlog.js'),
|
|
475
477
|
]);
|
|
476
478
|
return {
|
|
477
479
|
cfg,
|
|
478
480
|
now: () => Date.now(),
|
|
479
481
|
apply,
|
|
480
482
|
seat,
|
|
483
|
+
cloudBacklog: { append: (items) => cloudBacklog.appendUserBacklogItems(items) },
|
|
481
484
|
sources: {
|
|
482
485
|
standingPolicy: () => effective.currentStandingPolicy(),
|
|
483
486
|
budgetPolicy: () => budgetStore.loadBudgetPolicy(),
|
|
@@ -692,6 +695,14 @@ async function runLeaderOnce(deps, trigger, opts) {
|
|
|
692
695
|
catch (err) {
|
|
693
696
|
memo.statusReason = `Actions were not applied: ${err instanceof Error ? err.message : 'error'}`.slice(0, 400);
|
|
694
697
|
}
|
|
698
|
+
// Code-change actions also become cloud backlog suggestions. Only the
|
|
699
|
+
// cloud budget launches them; a backlog failure is noted, never fatal.
|
|
700
|
+
if (deps.cloudBacklog) {
|
|
701
|
+
const suggested = suggestLeaderCloudBacklog(deps.cloudBacklog, memo);
|
|
702
|
+
if (suggested.error) {
|
|
703
|
+
memo.statusReason = [memo.statusReason, suggested.error].filter((n) => typeof n === 'string' && n.length > 0).join('; ').slice(0, 400);
|
|
704
|
+
}
|
|
705
|
+
}
|
|
695
706
|
// Baseline for the 7-day grade.
|
|
696
707
|
const metric = memo.move?.expectedDelta?.metric;
|
|
697
708
|
if (metric) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leader.js","sourceRoot":"","sources":["../../../src/core/vision/leader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"leader.js","sourceRoot":"","sources":["../../../src/core/vision/leader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as e,i as t,n,s as r}from"./index-
|
|
2
|
-
//# sourceMappingURL=ActionMenu-
|
|
1
|
+
import{a as e,i as t,n,s as r}from"./index-oAAq8XJa.js";var i=r(e(),1),a=r(t(),1),o={menu:`_menu_130xc_5`,"menu-in":`_menu-in_130xc_1`,row:`_row_130xc_21`,item:`_item_130xc_27`,icon:`_icon_130xc_53`,label:`_label_130xc_60`,reason:`_reason_130xc_65`},s=n(),c=8;function l({label:e,items:t,anchor:n,onClose:r,returnFocus:l=null}){let u=(0,i.useRef)(null),d=(0,i.useRef)([]),[f,p]=(0,i.useState)({left:n.x,top:n.y}),m=(0,i.useRef)(r);m.current=r;let h=(0,i.useRef)(l);h.current=l;let g=t.map((e,t)=>e.disabled?-1:t).filter(e=>e>=0);(0,i.useLayoutEffect)(()=>{let e=u.current;if(!e)return;let t=e.getBoundingClientRect(),r=window.innerWidth||document.documentElement.clientWidth,i=window.innerHeight||document.documentElement.clientHeight,a=n.x,o=n.y;t.width>0&&a+t.width>r-c&&(a=Math.max(c,r-c-t.width)),t.height>0&&o+t.height>i-c&&(o=Math.max(c,n.y-t.height)),p({left:a,top:o})},[n.x,n.y]),(0,i.useEffect)(()=>{let e=g[0];e===void 0?u.current?.focus():d.current[e]?.focus()},[]),(0,i.useEffect)(()=>{let e=e=>{u.current&&e.target instanceof Node&&u.current.contains(e.target)||m.current(`dismiss`)},t=e=>{u.current&&e.target instanceof Node&&u.current.contains(e.target)||m.current(`dismiss`)};document.addEventListener(`pointerdown`,e,!0),window.addEventListener(`resize`,t),document.addEventListener(`scroll`,t,!0);let n=u.current;return()=>{document.removeEventListener(`pointerdown`,e,!0),window.removeEventListener(`resize`,t),document.removeEventListener(`scroll`,t,!0);let r=document.activeElement,i=r===null||r===document.body||n!==null&&n.contains(r),a=h.current;i&&a&&document.contains(a)&&a.focus({preventScroll:!0})}},[]);function _(e,t){if(g.length===0)return;let n=g.indexOf(e),r=n<0?t>0?0:g.length-1:(n+t+g.length)%g.length;d.current[g[r]]?.focus()}function v(e){let n=d.current.findIndex(e=>e===document.activeElement);switch(e.key){case`ArrowDown`:e.preventDefault(),_(n,1);return;case`ArrowUp`:e.preventDefault(),_(n,-1);return;case`Home`:e.preventDefault(),d.current[g[0]??0]?.focus();return;case`End`:e.preventDefault(),d.current[g[g.length-1]??0]?.focus();return;case`Escape`:e.preventDefault(),e.stopPropagation(),r(`dismiss`);return;case`Tab`:r(`dismiss`);return;default:if(e.key.length===1&&/\S/.test(e.key)&&!e.metaKey&&!e.ctrlKey&&!e.altKey){let r=e.key.toLowerCase(),i=[...g.filter(e=>e>n),...g.filter(e=>e<=n)].find(e=>t[e].label.toLowerCase().startsWith(r));i!==void 0&&(e.preventDefault(),d.current[i]?.focus())}}}return(0,a.createPortal)((0,s.jsx)(`div`,{ref:u,className:o.menu,role:`menu`,"aria-label":e,tabIndex:-1,style:{left:f.left,top:f.top},onKeyDown:v,onContextMenu:e=>e.preventDefault(),children:t.map((e,t)=>(0,s.jsx)(`div`,{className:o.row,"data-separated":e.separated||void 0,role:`none`,children:(0,s.jsxs)(`button`,{ref:e=>{d.current[t]=e},type:`button`,role:`menuitem`,className:o.item,"data-danger":e.danger||void 0,"aria-disabled":e.disabled||void 0,tabIndex:-1,onClick:()=>{e.disabled||(r(`select`),e.onSelect())},children:[e.icon?(0,s.jsx)(`span`,{className:o.icon,"aria-hidden":`true`,children:e.icon}):null,(0,s.jsxs)(`span`,{className:o.label,children:[e.label,e.description?(0,s.jsx)(`span`,{className:o.reason,children:e.description}):null,e.disabled&&e.reason?(0,s.jsx)(`span`,{className:o.reason,children:e.reason}):null]})]})},e.id))}),document.body)}function u(e,t=`end`,n=220){let r=e.getBoundingClientRect();return{x:t===`end`?r.right-n:r.left,y:r.bottom+4}}export{u as n,l as t};
|
|
2
|
+
//# sourceMappingURL=ActionMenu-CQvNJvHY.js.map
|
package/dist/core/web/public/next/assets/{ActionMenu-BBB7VYjz.js.map → ActionMenu-CQvNJvHY.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionMenu-BBB7VYjz.js","names":[],"sources":["../../../../../../src/web-ui/routes/verse/chat/ActionMenu.module.css","../../../../../../src/web-ui/routes/verse/chat/ActionMenu.tsx"],"sourcesContent":["/**\n * chat/ActionMenu.module.css — the chat surface's action menu. Raised\n * surface, hairline border, the menu shadow; rows are density-sm.\n */\n.menu {\n position: fixed;\n z-index: var(--z-dropdown);\n display: flex;\n flex-direction: column;\n min-width: 200px;\n max-width: min(320px, calc(100vw - 16px));\n padding: var(--space-1);\n border: 1px solid var(--border-default);\n border-radius: var(--radius-md);\n background: var(--bg-surface-raised);\n box-shadow: var(--shadow-menu);\n animation: menu-in var(--duration-fast) var(--ease-decelerate);\n}\n.menu:focus { outline: none; }\n\n.row[data-separated] {\n margin-top: var(--space-1);\n padding-top: var(--space-1);\n border-top: 1px solid var(--border-subtle);\n}\n\n.item {\n display: flex;\n align-items: flex-start;\n gap: var(--space-2);\n width: 100%;\n min-height: var(--density-row-sm);\n padding: var(--space-1) var(--space-2);\n border: 0;\n border-radius: var(--radius-sm);\n background: transparent;\n color: var(--text-primary);\n font: inherit;\n font-size: var(--text-sm-size);\n line-height: var(--text-sm-line);\n text-align: left;\n cursor: pointer;\n}\n.item:hover,\n.item:focus { outline: none; background: var(--bg-hover); }\n.item:focus-visible { box-shadow: inset 0 0 0 1px var(--border-focus); }\n.item[data-danger] { color: var(--status-danger-fg); }\n.item[data-danger]:hover,\n.item[data-danger]:focus { background: var(--status-danger-bg); }\n.item[aria-disabled='true'] { color: var(--text-disabled); cursor: not-allowed; }\n.item[aria-disabled='true']:hover { background: transparent; }\n\n.icon {\n flex: none;\n display: inline-flex;\n width: 16px;\n margin-top: 2px;\n color: var(--text-tertiary);\n}\n.label {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n.reason {\n font-size: var(--text-xs-size);\n line-height: var(--text-xs-line);\n color: var(--text-tertiary);\n}\n\n@keyframes menu-in {\n from { opacity: 0; transform: translateY(-2px); }\n to { opacity: 1; transform: none; }\n}\n@media (prefers-reduced-motion: reduce) {\n :root:not([data-motion='full']) .menu { animation: none; }\n}\n:root[data-motion='reduce'] .menu { animation: none; }\n","/**\n * routes/verse/chat/ActionMenu.tsx — the chat surface's small action menu\n * (unit C2): the header's ⋯ and a sidebar row's hover / right-click menu.\n *\n * The primitives have no menu, and the ones scattered through the console\n * are each hand-rolled for one place; this one is written once for both of\n * C2's uses and follows the WAI-ARIA menu pattern properly:\n * - `role=\"menu\"` of `menuitem`s, focus moves INTO the menu on open;\n * - ↑/↓ wrap, Home/End jump, a letter jumps to the next item starting\n * with it, Enter/Space choose;\n * - Esc, Tab, a click outside or choosing an item close it and hand focus\n * back to whatever opened it (the ⋯ button, or the row that was\n * right-clicked);\n * - a disabled item stays in the list with its reason as a description, so\n * the operator learns WHY instead of wondering where it went.\n *\n * Portalled and position:fixed so the sidebar's own overflow cannot clip it,\n * and clamped to the viewport (a right-click near the bottom opens upward).\n */\nimport { useEffect, useLayoutEffect, useRef, useState, type KeyboardEvent, type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport styles from './ActionMenu.module.css';\n\nexport interface ActionMenuItem {\n id: string;\n label: string;\n onSelect: () => void;\n /** Painted as destructive (Delete). */\n danger?: boolean;\n disabled?: boolean;\n /** Shown under a disabled item. */\n reason?: string | null;\n /** A second line under the label, always shown (a cost, a consequence). */\n description?: string | null;\n /** A leading glyph. */\n icon?: ReactNode;\n /** A separator above this item. */\n separated?: boolean;\n}\n\nexport interface MenuAnchor {\n /** Viewport coordinates of the menu's preferred top-left. */\n x: number;\n y: number;\n}\n\nexport interface ActionMenuProps {\n label: string;\n items: readonly ActionMenuItem[];\n anchor: MenuAnchor;\n onClose: (reason: 'select' | 'dismiss') => void;\n /** Focus returns here on close. */\n returnFocus?: HTMLElement | null;\n}\n\nconst EDGE = 8;\n\nexport function ActionMenu({ label, items, anchor, onClose, returnFocus = null }: ActionMenuProps) {\n const ref = useRef<HTMLDivElement>(null);\n const itemRefs = useRef<(HTMLButtonElement | null)[]>([]);\n const [position, setPosition] = useState<{ left: number; top: number }>({ left: anchor.x, top: anchor.y });\n // Read through refs: the listeners below are installed ONCE per open, and a\n // parent passing an inline onClose must not tear them down (and bounce\n // focus back to the trigger) on every render.\n const onCloseRef = useRef(onClose);\n onCloseRef.current = onClose;\n const returnFocusRef = useRef(returnFocus);\n returnFocusRef.current = returnFocus;\n const enabled = items.map((item, i) => (item.disabled ? -1 : i)).filter((i) => i >= 0);\n\n // Clamp into the viewport once the menu has a size.\n useLayoutEffect(() => {\n const node = ref.current;\n if (!node) return;\n const rect = node.getBoundingClientRect();\n const vw = window.innerWidth || document.documentElement.clientWidth;\n const vh = window.innerHeight || document.documentElement.clientHeight;\n let left = anchor.x;\n let top = anchor.y;\n if (rect.width > 0 && left + rect.width > vw - EDGE) left = Math.max(EDGE, vw - EDGE - rect.width);\n if (rect.height > 0 && top + rect.height > vh - EDGE) top = Math.max(EDGE, anchor.y - rect.height);\n setPosition({ left, top });\n }, [anchor.x, anchor.y]);\n\n useEffect(() => {\n const first = enabled[0];\n if (first !== undefined) itemRefs.current[first]?.focus();\n else ref.current?.focus();\n // Focus moves in once, on open.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const onPointer = (event: PointerEvent) => {\n if (ref.current && event.target instanceof Node && ref.current.contains(event.target)) return;\n onCloseRef.current('dismiss');\n };\n const onScroll = (event: Event) => {\n if (ref.current && event.target instanceof Node && ref.current.contains(event.target)) return;\n onCloseRef.current('dismiss');\n };\n document.addEventListener('pointerdown', onPointer, true);\n window.addEventListener('resize', onScroll);\n document.addEventListener('scroll', onScroll, true);\n const menu = ref.current;\n return () => {\n document.removeEventListener('pointerdown', onPointer, true);\n window.removeEventListener('resize', onScroll);\n document.removeEventListener('scroll', onScroll, true);\n // Hand focus back only if it is still ours (in the menu, or dropped to\n // <body> by the unmount) — never yank it from a field the chosen action\n // just focused.\n const active = document.activeElement;\n const ours = active === null || active === document.body || (menu !== null && menu.contains(active));\n const back = returnFocusRef.current;\n if (ours && back && document.contains(back)) back.focus({ preventScroll: true });\n };\n }, []);\n\n function move(from: number, delta: number) {\n if (enabled.length === 0) return;\n const at = enabled.indexOf(from);\n const next = at < 0 ? (delta > 0 ? 0 : enabled.length - 1) : (at + delta + enabled.length) % enabled.length;\n itemRefs.current[enabled[next]!]?.focus();\n }\n\n function onKeyDown(event: KeyboardEvent<HTMLDivElement>) {\n const index = itemRefs.current.findIndex((node) => node === document.activeElement);\n switch (event.key) {\n case 'ArrowDown': event.preventDefault(); move(index, 1); return;\n case 'ArrowUp': event.preventDefault(); move(index, -1); return;\n case 'Home': event.preventDefault(); itemRefs.current[enabled[0] ?? 0]?.focus(); return;\n case 'End': event.preventDefault(); itemRefs.current[enabled[enabled.length - 1] ?? 0]?.focus(); return;\n case 'Escape': event.preventDefault(); event.stopPropagation(); onClose('dismiss'); return;\n case 'Tab': onClose('dismiss'); return;\n default:\n if (event.key.length === 1 && /\\S/.test(event.key) && !event.metaKey && !event.ctrlKey && !event.altKey) {\n const letter = event.key.toLowerCase();\n const order = [...enabled.filter((i) => i > index), ...enabled.filter((i) => i <= index)];\n const hit = order.find((i) => items[i]!.label.toLowerCase().startsWith(letter));\n if (hit !== undefined) {\n event.preventDefault();\n itemRefs.current[hit]?.focus();\n }\n }\n }\n }\n\n return createPortal(\n <div ref={ref} className={styles.menu} role=\"menu\" aria-label={label} tabIndex={-1}\n style={{ left: position.left, top: position.top }} onKeyDown={onKeyDown}\n onContextMenu={(event) => event.preventDefault()}>\n {items.map((item, i) => (\n <div key={item.id} className={styles.row} data-separated={item.separated || undefined} role=\"none\">\n <button\n ref={(node) => { itemRefs.current[i] = node; }}\n type=\"button\"\n role=\"menuitem\"\n className={styles.item}\n data-danger={item.danger || undefined}\n aria-disabled={item.disabled || undefined}\n tabIndex={-1}\n onClick={() => {\n if (item.disabled) return;\n onClose('select');\n item.onSelect();\n }}\n >\n {item.icon ? <span className={styles.icon} aria-hidden=\"true\">{item.icon}</span> : null}\n <span className={styles.label}>\n {item.label}\n {item.description ? <span className={styles.reason}>{item.description}</span> : null}\n {item.disabled && item.reason ? <span className={styles.reason}>{item.reason}</span> : null}\n </span>\n </button>\n </div>\n ))}\n </div>,\n document.body,\n );\n}\n\n/** Anchor a menu under (and right-aligned to) a button. */\nexport function anchorBelow(node: HTMLElement, align: 'start' | 'end' = 'end', menuWidth = 220): MenuAnchor {\n const rect = node.getBoundingClientRect();\n return { x: align === 'end' ? rect.right - menuWidth : rect.left, y: rect.bottom + 4 };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ActionMenu-CQvNJvHY.js","names":[],"sources":["../../../../../../src/web-ui/routes/verse/chat/ActionMenu.module.css","../../../../../../src/web-ui/routes/verse/chat/ActionMenu.tsx"],"sourcesContent":["/**\n * chat/ActionMenu.module.css — the chat surface's action menu. Raised\n * surface, hairline border, the menu shadow; rows are density-sm.\n */\n.menu {\n position: fixed;\n z-index: var(--z-dropdown);\n display: flex;\n flex-direction: column;\n min-width: 200px;\n max-width: min(320px, calc(100vw - 16px));\n padding: var(--space-1);\n border: 1px solid var(--border-default);\n border-radius: var(--radius-md);\n background: var(--bg-surface-raised);\n box-shadow: var(--shadow-menu);\n animation: menu-in var(--duration-fast) var(--ease-decelerate);\n}\n.menu:focus { outline: none; }\n\n.row[data-separated] {\n margin-top: var(--space-1);\n padding-top: var(--space-1);\n border-top: 1px solid var(--border-subtle);\n}\n\n.item {\n display: flex;\n align-items: flex-start;\n gap: var(--space-2);\n width: 100%;\n min-height: var(--density-row-sm);\n padding: var(--space-1) var(--space-2);\n border: 0;\n border-radius: var(--radius-sm);\n background: transparent;\n color: var(--text-primary);\n font: inherit;\n font-size: var(--text-sm-size);\n line-height: var(--text-sm-line);\n text-align: left;\n cursor: pointer;\n}\n.item:hover,\n.item:focus { outline: none; background: var(--bg-hover); }\n.item:focus-visible { box-shadow: inset 0 0 0 1px var(--border-focus); }\n.item[data-danger] { color: var(--status-danger-fg); }\n.item[data-danger]:hover,\n.item[data-danger]:focus { background: var(--status-danger-bg); }\n.item[aria-disabled='true'] { color: var(--text-disabled); cursor: not-allowed; }\n.item[aria-disabled='true']:hover { background: transparent; }\n\n.icon {\n flex: none;\n display: inline-flex;\n width: 16px;\n margin-top: 2px;\n color: var(--text-tertiary);\n}\n.label {\n display: flex;\n flex-direction: column;\n min-width: 0;\n}\n.reason {\n font-size: var(--text-xs-size);\n line-height: var(--text-xs-line);\n color: var(--text-tertiary);\n}\n\n@keyframes menu-in {\n from { opacity: 0; transform: translateY(-2px); }\n to { opacity: 1; transform: none; }\n}\n@media (prefers-reduced-motion: reduce) {\n :root:not([data-motion='full']) .menu { animation: none; }\n}\n:root[data-motion='reduce'] .menu { animation: none; }\n","/**\n * routes/verse/chat/ActionMenu.tsx — the chat surface's small action menu\n * (unit C2): the header's ⋯ and a sidebar row's hover / right-click menu.\n *\n * The primitives have no menu, and the ones scattered through the console\n * are each hand-rolled for one place; this one is written once for both of\n * C2's uses and follows the WAI-ARIA menu pattern properly:\n * - `role=\"menu\"` of `menuitem`s, focus moves INTO the menu on open;\n * - ↑/↓ wrap, Home/End jump, a letter jumps to the next item starting\n * with it, Enter/Space choose;\n * - Esc, Tab, a click outside or choosing an item close it and hand focus\n * back to whatever opened it (the ⋯ button, or the row that was\n * right-clicked);\n * - a disabled item stays in the list with its reason as a description, so\n * the operator learns WHY instead of wondering where it went.\n *\n * Portalled and position:fixed so the sidebar's own overflow cannot clip it,\n * and clamped to the viewport (a right-click near the bottom opens upward).\n */\nimport { useEffect, useLayoutEffect, useRef, useState, type KeyboardEvent, type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\nimport styles from './ActionMenu.module.css';\n\nexport interface ActionMenuItem {\n id: string;\n label: string;\n onSelect: () => void;\n /** Painted as destructive (Delete). */\n danger?: boolean;\n disabled?: boolean;\n /** Shown under a disabled item. */\n reason?: string | null;\n /** A second line under the label, always shown (a cost, a consequence). */\n description?: string | null;\n /** A leading glyph. */\n icon?: ReactNode;\n /** A separator above this item. */\n separated?: boolean;\n}\n\nexport interface MenuAnchor {\n /** Viewport coordinates of the menu's preferred top-left. */\n x: number;\n y: number;\n}\n\nexport interface ActionMenuProps {\n label: string;\n items: readonly ActionMenuItem[];\n anchor: MenuAnchor;\n onClose: (reason: 'select' | 'dismiss') => void;\n /** Focus returns here on close. */\n returnFocus?: HTMLElement | null;\n}\n\nconst EDGE = 8;\n\nexport function ActionMenu({ label, items, anchor, onClose, returnFocus = null }: ActionMenuProps) {\n const ref = useRef<HTMLDivElement>(null);\n const itemRefs = useRef<(HTMLButtonElement | null)[]>([]);\n const [position, setPosition] = useState<{ left: number; top: number }>({ left: anchor.x, top: anchor.y });\n // Read through refs: the listeners below are installed ONCE per open, and a\n // parent passing an inline onClose must not tear them down (and bounce\n // focus back to the trigger) on every render.\n const onCloseRef = useRef(onClose);\n onCloseRef.current = onClose;\n const returnFocusRef = useRef(returnFocus);\n returnFocusRef.current = returnFocus;\n const enabled = items.map((item, i) => (item.disabled ? -1 : i)).filter((i) => i >= 0);\n\n // Clamp into the viewport once the menu has a size.\n useLayoutEffect(() => {\n const node = ref.current;\n if (!node) return;\n const rect = node.getBoundingClientRect();\n const vw = window.innerWidth || document.documentElement.clientWidth;\n const vh = window.innerHeight || document.documentElement.clientHeight;\n let left = anchor.x;\n let top = anchor.y;\n if (rect.width > 0 && left + rect.width > vw - EDGE) left = Math.max(EDGE, vw - EDGE - rect.width);\n if (rect.height > 0 && top + rect.height > vh - EDGE) top = Math.max(EDGE, anchor.y - rect.height);\n setPosition({ left, top });\n }, [anchor.x, anchor.y]);\n\n useEffect(() => {\n const first = enabled[0];\n if (first !== undefined) itemRefs.current[first]?.focus();\n else ref.current?.focus();\n // Focus moves in once, on open.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n const onPointer = (event: PointerEvent) => {\n if (ref.current && event.target instanceof Node && ref.current.contains(event.target)) return;\n onCloseRef.current('dismiss');\n };\n const onScroll = (event: Event) => {\n if (ref.current && event.target instanceof Node && ref.current.contains(event.target)) return;\n onCloseRef.current('dismiss');\n };\n document.addEventListener('pointerdown', onPointer, true);\n window.addEventListener('resize', onScroll);\n document.addEventListener('scroll', onScroll, true);\n const menu = ref.current;\n return () => {\n document.removeEventListener('pointerdown', onPointer, true);\n window.removeEventListener('resize', onScroll);\n document.removeEventListener('scroll', onScroll, true);\n // Hand focus back only if it is still ours (in the menu, or dropped to\n // <body> by the unmount) — never yank it from a field the chosen action\n // just focused.\n const active = document.activeElement;\n const ours = active === null || active === document.body || (menu !== null && menu.contains(active));\n const back = returnFocusRef.current;\n if (ours && back && document.contains(back)) back.focus({ preventScroll: true });\n };\n }, []);\n\n function move(from: number, delta: number) {\n if (enabled.length === 0) return;\n const at = enabled.indexOf(from);\n const next = at < 0 ? (delta > 0 ? 0 : enabled.length - 1) : (at + delta + enabled.length) % enabled.length;\n itemRefs.current[enabled[next]!]?.focus();\n }\n\n function onKeyDown(event: KeyboardEvent<HTMLDivElement>) {\n const index = itemRefs.current.findIndex((node) => node === document.activeElement);\n switch (event.key) {\n case 'ArrowDown': event.preventDefault(); move(index, 1); return;\n case 'ArrowUp': event.preventDefault(); move(index, -1); return;\n case 'Home': event.preventDefault(); itemRefs.current[enabled[0] ?? 0]?.focus(); return;\n case 'End': event.preventDefault(); itemRefs.current[enabled[enabled.length - 1] ?? 0]?.focus(); return;\n case 'Escape': event.preventDefault(); event.stopPropagation(); onClose('dismiss'); return;\n case 'Tab': onClose('dismiss'); return;\n default:\n if (event.key.length === 1 && /\\S/.test(event.key) && !event.metaKey && !event.ctrlKey && !event.altKey) {\n const letter = event.key.toLowerCase();\n const order = [...enabled.filter((i) => i > index), ...enabled.filter((i) => i <= index)];\n const hit = order.find((i) => items[i]!.label.toLowerCase().startsWith(letter));\n if (hit !== undefined) {\n event.preventDefault();\n itemRefs.current[hit]?.focus();\n }\n }\n }\n }\n\n return createPortal(\n <div ref={ref} className={styles.menu} role=\"menu\" aria-label={label} tabIndex={-1}\n style={{ left: position.left, top: position.top }} onKeyDown={onKeyDown}\n onContextMenu={(event) => event.preventDefault()}>\n {items.map((item, i) => (\n <div key={item.id} className={styles.row} data-separated={item.separated || undefined} role=\"none\">\n <button\n ref={(node) => { itemRefs.current[i] = node; }}\n type=\"button\"\n role=\"menuitem\"\n className={styles.item}\n data-danger={item.danger || undefined}\n aria-disabled={item.disabled || undefined}\n tabIndex={-1}\n onClick={() => {\n if (item.disabled) return;\n onClose('select');\n item.onSelect();\n }}\n >\n {item.icon ? <span className={styles.icon} aria-hidden=\"true\">{item.icon}</span> : null}\n <span className={styles.label}>\n {item.label}\n {item.description ? <span className={styles.reason}>{item.description}</span> : null}\n {item.disabled && item.reason ? <span className={styles.reason}>{item.reason}</span> : null}\n </span>\n </button>\n </div>\n ))}\n </div>,\n document.body,\n );\n}\n\n/** Anchor a menu under (and right-aligned to) a button. */\nexport function anchorBelow(node: HTMLElement, align: 'start' | 'end' = 'end', menuWidth = 220): MenuAnchor {\n const rect = node.getBoundingClientRect();\n return { x: align === 'end' ? rect.right - menuWidth : rect.left, y: rect.bottom + 4 };\n}\n"],"mappings":"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"}
|