ryco-cli 0.1.30 → 0.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{AcpAdapter-DjP0IHpH.cjs → AcpAdapter-ByUp9-wk.cjs} +71 -51
- package/dist/{AcpAdapter-CKWzfB3Q.mjs → AcpAdapter-CY_ANTKu.mjs} +73 -53
- package/dist/{AcpNativeLogging-Do0LktDb.mjs → AcpNativeLogging-C7PC6imv.mjs} +30 -4
- package/dist/{AcpNativeLogging-5gTPK9Fq.cjs → AcpNativeLogging-OQeAya9d.cjs} +33 -1
- package/dist/{AcpRegistryDriver-BblCFfev.cjs → AcpRegistryDriver-CD9GN7rI.cjs} +3 -3
- package/dist/{AcpRegistryDriver-BzohT-PC.mjs → AcpRegistryDriver-DMZ5VBWJ.mjs} +4 -4
- package/dist/AzureDevOpsSourceControlProvider-5giVYoNi.mjs +2053 -0
- package/dist/AzureDevOpsSourceControlProvider-BKMXEUaN.cjs +2055 -0
- package/dist/{BitbucketSourceControlProvider-D5UVAc9z.mjs → BitbucketSourceControlProvider-BVUBsEUF.mjs} +63 -23
- package/dist/{BitbucketSourceControlProvider-Bvl_q1o2.cjs → BitbucketSourceControlProvider-BWnnrbch.cjs} +62 -22
- package/dist/{BunPTY-Dcl1Lp62.mjs → BunPTY-CMbDQ1Xb.mjs} +1 -1
- package/dist/{ClaudeDriver-DZkz0QPr.cjs → ClaudeDriver-DCrqouOR.cjs} +1373 -191
- package/dist/{ClaudeDriver-BuQ_azDw.mjs → ClaudeDriver-DVOss8cC.mjs} +1375 -193
- package/dist/{CodexDriver-6Ph2cjAW.cjs → CodexDriver-CBQPHJqU.cjs} +258 -28
- package/dist/{CodexDriver-Bi49RIL4.mjs → CodexDriver-DJoTky7Z.mjs} +261 -31
- package/dist/{CodexTextGeneration-C5TIspJA.mjs → CodexTextGeneration-BSgNgfZv.mjs} +6 -6
- package/dist/{CodexTextGeneration-sXPR9eld.cjs → CodexTextGeneration-C9MDQmZm.cjs} +7 -7
- package/dist/{CopilotDriver-Bcdpz6U_.mjs → CopilotDriver-CUkdPXcH.mjs} +78 -20
- package/dist/{CopilotDriver-D6P0xgRX.cjs → CopilotDriver-DbaMDH16.cjs} +76 -18
- package/dist/{CursorDriver-CRnDGwEv.mjs → CursorDriver-B-ZilXJB.mjs} +114 -97
- package/dist/{CursorDriver-DMJ7sGSx.cjs → CursorDriver-DKQqPbKH.cjs} +114 -97
- package/dist/{ForgejoSourceControlProvider-D4jGdaJX.cjs → ForgejoSourceControlProvider-CgpjFECj.cjs} +94 -60
- package/dist/{ForgejoSourceControlProvider-Dl_Fk3RY.mjs → ForgejoSourceControlProvider-DemMYUye.mjs} +95 -61
- package/dist/{GitHubSourceControlProvider-QMe-zymI.cjs → GitHubSourceControlProvider-C4un6hOK.cjs} +218 -119
- package/dist/{GitHubSourceControlProvider-DnwKf0ap.mjs → GitHubSourceControlProvider-CRSDYcjc.mjs} +206 -108
- package/dist/GitLabSourceControlProvider-D8W1ZLPh.cjs +2260 -0
- package/dist/GitLabSourceControlProvider-DpWkJ0M3.mjs +2258 -0
- package/dist/{GrokDriver-jy8JIvYY.cjs → GrokDriver-BQ6G_7ZZ.cjs} +6 -7
- package/dist/{GrokDriver-Bvq1jP3S.mjs → GrokDriver-Buvas9-q.mjs} +5 -6
- package/dist/{Metrics-CnmjpbWk.mjs → Metrics-C3vLS9rz.mjs} +123 -13
- package/dist/{Metrics-C0LSU8s7.cjs → Metrics-DjRPLE98.cjs} +170 -12
- package/dist/{NodePTY-D7tFWuQe.mjs → NodePTY-DgnuBruq.mjs} +1 -1
- package/dist/{OpenCodeDriver-DhyVaBMT.mjs → OpenCodeDriver-BWEZD841.mjs} +183 -49
- package/dist/{OpenCodeDriver-Bu5D19tl.cjs → OpenCodeDriver-qUiX0RLH.cjs} +183 -49
- package/dist/{SideQuestionIsolation-B-aE6aBz.mjs → SideQuestionIsolation-B1T-DsR0.mjs} +1 -1
- package/dist/{SideQuestionIsolation-CtJ4wX83.cjs → SideQuestionIsolation-BPC-Bxsz.cjs} +1 -1
- package/dist/bin.cjs +37021 -10253
- package/dist/bin.mjs +36892 -10178
- package/dist/client/assets/AccountSettings-B88Q_w9Y.js +1 -0
- package/dist/client/assets/AiFocusSettings-Bb0TrCPn.js +1 -0
- package/dist/client/assets/{AnimatedHeight-UXn4-nUd.js → AnimatedHeight-epXOsgdm.js} +1 -1
- package/dist/client/assets/AppearanceSettings-XS9WRVPU.js +1 -0
- package/dist/client/assets/AutomationsDialog-bZckh4Y3.js +1 -0
- package/dist/client/assets/AutomationsSummary-wPFZCF49.js +1 -0
- package/dist/client/assets/BranchToolbar.logic-DjzLKbbB.js +3 -0
- package/dist/client/assets/BrowserPanel-CdBLnnfz.js +1 -0
- package/dist/client/assets/ChatRightPanel-BCINd0vP.js +34 -0
- package/dist/client/assets/ChatThreadRouteView-BFZ0Si-l.js +1 -0
- package/dist/client/assets/ColorSwatchPicker-CGyo99o0.js +1 -0
- package/dist/client/assets/CommandPalette.logic-BIOMtnEQ.js +1 -0
- package/dist/client/assets/CommandPaletteDialog-Db4LH--z.js +2 -0
- package/dist/client/assets/CompositeRoot-DtnwMJKj.js +1 -0
- package/dist/client/assets/ComputerUseSettings-CkqCqDsU.js +1 -0
- package/dist/client/assets/ConnectionsSettings-B9mxExdG.js +7 -0
- package/dist/client/assets/CreatePullRequestDialog-CJ7pNCue.js +1 -0
- package/dist/client/assets/CreatePullRequestDialogHost-n4ZjdSr4.js +1 -0
- package/dist/client/assets/DiagnosticsSettings-f9rFG9re.js +2 -0
- package/dist/client/assets/DiagnosticsSettings.logic-Byf-Bu4S.js +1 -0
- package/dist/client/assets/DialogHandle-C0c_rK3I.js +1 -0
- package/dist/client/assets/{DialogPopup-NfwDyR5c.js → DialogPopup-BKW1PEEa.js} +1 -1
- package/dist/client/assets/DialogRoot-BIubqrv0.js +1 -0
- package/dist/client/assets/DialogTitle-BAX_FLoG.js +1 -0
- package/dist/client/assets/{DialogViewport-B6w_ROOE.js → DialogViewport-C2iOUx0O.js} +1 -1
- package/dist/client/assets/DiffPanel-BkqDt_SS.js +25 -0
- package/dist/client/assets/DisclosureRegion-B8556yU0.js +1 -0
- package/dist/client/assets/DraftChatThreadRouteView-BKgRKJ2w.js +1 -0
- package/dist/client/assets/{ExternalIdentityWeb.logic-BlKX8J9h.js → ExternalIdentityWeb.logic-Cu6suNrN.js} +1 -1
- package/dist/client/assets/GlassSurface-DLYYzRdP.js +1 -0
- package/dist/client/assets/HostedConnectionControls-CoVqtnrK.js +1 -0
- package/dist/client/assets/HostedHubRoot-CM2CwPUr.js +2 -0
- package/dist/client/assets/{HostedNativeAuthorizationRoute-j7oSlakZ.js → HostedNativeAuthorizationRoute-Bizmqrh_.js} +2 -2
- package/dist/client/assets/HostedNodeRenameDialog-SXWMsTO0.js +1 -0
- package/dist/client/assets/HostedRelayTrustNotice-BfTyrBi5.js +1 -0
- package/dist/client/assets/InboxStatusGlyph-BPTqzp7l.js +1 -0
- package/dist/client/assets/IntegrationsSettingsPanel-DAPvkV4i.js +1 -0
- package/dist/client/assets/KeybindingsSettings-B8g-YI2O.js +1 -0
- package/dist/client/assets/LazyBrowserPanel-Ds9cdOC_.js +2 -0
- package/dist/client/assets/McpServersSettings-Dw6G3ff3.js +6 -0
- package/dist/client/assets/MobileSheet-DfgXNWbd.js +1 -0
- package/dist/client/assets/ModelTuningDial-DQBAbuNL.js +1 -0
- package/dist/client/assets/NewWorktreeDialog-CDZAJmK6.js +4 -0
- package/dist/client/assets/NodeSecuritySettings-3MELA9ru.js +1 -0
- package/dist/client/assets/NullStore-gT_6_xZE.js +1 -0
- package/dist/client/assets/OnboardingDialog-CAAtNnJf.js +1 -0
- package/dist/client/assets/OpinionatedPluginsSettings-AiDB0Vl4.js +1 -0
- package/dist/client/assets/{PdfAttachmentPreview-C8-hT8KQ.js → PdfAttachmentPreview-BFNW2wjN.js} +2 -2
- package/dist/client/assets/{PhoneGetAppInterstitial-Zh0zpBgT.js → PhoneGetAppInterstitial-D8fwZ8E9.js} +1 -1
- package/dist/client/assets/PhoneHome-YHgHljA0.js +1 -0
- package/dist/client/assets/PhoneSettingsSurface-BVxJppvK.js +2 -0
- package/dist/client/assets/PreviewPanel-BYcEnkv9.js +643 -0
- package/dist/client/assets/ProjectScriptDialog-K34K2Kzm.js +1 -0
- package/dist/client/assets/ProjectsPage-DXnMYLjb.js +1 -0
- package/dist/client/assets/PromoteChatDialog-CAY7_wJ-.js +1 -0
- package/dist/client/assets/ProviderLimitWindow-CK04BSkM.js +1 -0
- package/dist/client/assets/ProviderUpdateLaunchNotification.logic-BMBrDDOC.js +1 -0
- package/dist/client/assets/ProvidersSettingsPanel-C85PX9Es.js +1 -0
- package/dist/client/assets/PullRequestsPage-C0rgfGwB.js +1 -0
- package/dist/client/assets/{QuitShortcutFeedback-Qs9XsuZ4.js → QuitShortcutFeedback-DSkKqETs.js} +1 -1
- package/dist/client/assets/RedactedSensitiveText-DQ0YveQd.js +1 -0
- package/dist/client/assets/RollingText-BzvpP5fa.js +1 -0
- package/dist/client/assets/RootAppShell-BYQ-eGNT.js +6 -0
- package/dist/client/assets/{Separator-B6Esv57Y.js → Separator-DpiW19Vw.js} +1 -1
- package/dist/client/assets/SettingsPage-BCFN7Ju2.js +2 -0
- package/dist/client/assets/SettingsPanels-CP6z2b1x.js +3 -0
- package/dist/client/assets/SettingsPanels.editor-D8U-TWWG.js +1 -0
- package/dist/client/assets/SettingsSelect-DEhNaz3E.js +1 -0
- package/dist/client/assets/Sidebar.logic-D_ODfSpl.js +1 -0
- package/dist/client/assets/SimulatorPanel-DCT6fZ0X.js +1 -0
- package/dist/client/assets/SourceControlSettings-DxUtvPMK.js +1 -0
- package/dist/client/assets/StatisticsPage-C9SrwtM4.js +1 -0
- package/dist/client/assets/StatisticsPanel-BMYLETs0.js +1 -0
- package/dist/client/assets/ThreadLinkList-BN5z5EpS.js +169 -0
- package/dist/client/assets/ThreadTerminalDrawer-CgIFOlR-.js +18 -0
- package/dist/client/assets/ThreadWorkspacePanel-DvXoqQPF.js +3 -0
- package/dist/client/assets/ToolbarRootContext-8FsV9Cpj.js +1 -0
- package/dist/client/assets/TraitsPicker-DcrpJahy.js +1 -0
- package/dist/client/assets/Virtualizer-CwXeUPla.js +1345 -0
- package/dist/client/assets/WorkspacePullRequestPanel-3mlcJn9G.js +1 -0
- package/dist/client/assets/WorkspaceReview-UGbCgXeK.js +2 -0
- package/dist/client/assets/{abnfDiagram-N423BO3Z-ByEe3mC0.js → abnfDiagram-N423BO3Z-DVEM6Scc.js} +1 -1
- package/dist/client/assets/{activity-CwTUF6lv.js → activity-DVCuAejY.js} +1 -1
- package/dist/client/assets/{alert-DQEkrtUJ.js → alert-FV7ZIit_.js} +1 -1
- package/dist/client/assets/alert-dialog-CgXR9tED.js +1 -0
- package/dist/client/assets/app-window-3xtwqZgI.js +1 -0
- package/dist/client/assets/appChrome-COCz-T7w.js +1 -0
- package/dist/client/assets/{appearancePreferences-nFx4MHoI.js → appearancePreferences-NnsvXwBe.js} +1 -1
- package/dist/client/assets/architecture-7GRP2DOG-DXXb_0_g.js +1 -0
- package/dist/client/assets/{architectureDiagram-T3A2C74G-Bd-yxaTr.js → architectureDiagram-T3A2C74G-B6pcKiCj.js} +1 -1
- package/dist/client/assets/{arrow-left-DUOpzEbP.js → arrow-left-Blu3LSE2.js} +1 -1
- package/dist/client/assets/{arrow-right-HOYJnPKw.js → arrow-right-CO3CH0ne.js} +1 -1
- package/dist/client/assets/arrow-up-B69gV2Bq.js +1 -0
- package/dist/client/assets/{arrow-up-right-DHnMKuVA.js → arrow-up-right-BbPGFOLA.js} +1 -1
- package/dist/client/assets/authorization-Ob6YwWiI.js +1 -0
- package/dist/client/assets/autocomplete-RVpjsrDv.js +1 -0
- package/dist/client/assets/ban-BIm2PVkE.js +1 -0
- package/dist/client/assets/{blockDiagram-VBNYF7ZC-CPDBonMC.js → blockDiagram-VBNYF7ZC-WNerGp9V.js} +1 -1
- package/dist/client/assets/{bot-DxjPA7Bw.js → bot-C9nWtaWq.js} +1 -1
- package/dist/client/assets/browserState-jt47YsqD.js +1 -0
- package/dist/client/assets/{c4Diagram-5PPSVZJV-BM6pAiqT.js → c4Diagram-5PPSVZJV-wp1ioOoM.js} +1 -1
- package/dist/client/assets/camera-C13VoW3c.js +1 -0
- package/dist/client/assets/capabilities-CfOhq009.js +1 -0
- package/dist/client/assets/channel-56r2qL2v.js +1 -0
- package/dist/client/assets/{chart-column-Cg7d41tb.js → chart-column-DRv0YtL_.js} +1 -1
- package/dist/client/assets/checkbox-CIIIY9FA.js +1 -0
- package/dist/client/assets/checks-Dw022Bvy.js +1 -0
- package/dist/client/assets/{chunk-2GRJ4B5K-DVKozJ41.js → chunk-2GRJ4B5K-DRl3ILpc.js} +1 -1
- package/dist/client/assets/{chunk-4I5QYGJK-BRoMwPkW.js → chunk-4I5QYGJK-CYTRl4bo.js} +1 -1
- package/dist/client/assets/{chunk-5RXB4S5H-DFMKyoqP.js → chunk-5RXB4S5H-VCNwRsOa.js} +1 -1
- package/dist/client/assets/{chunk-6Q2QTUOP-Ba6UENe9.js → chunk-6Q2QTUOP-DnSeKGPG.js} +1 -1
- package/dist/client/assets/{chunk-7Z6QIM7H-B87gYLWH.js → chunk-7Z6QIM7H-Cjilh9TF.js} +1 -1
- package/dist/client/assets/{chunk-GF5L2VYU-DZ840GRQ.js → chunk-GF5L2VYU-CGR7AW0t.js} +1 -1
- package/dist/client/assets/{chunk-I66GZJ75-BO6p4Aqg.js → chunk-I66GZJ75-CXSn8dDu.js} +1 -1
- package/dist/client/assets/{chunk-JQJVKLGR-5dTfVinz.js → chunk-JQJVKLGR-Dro-75lU.js} +1 -1
- package/dist/client/assets/{chunk-KBJHAD2P-BeWfBZdP.js → chunk-KBJHAD2P-BDqN2kVf.js} +1 -1
- package/dist/client/assets/{chunk-NSK5VX7P-DuRkdn5k.js → chunk-NSK5VX7P-DGo5UczH.js} +1 -1
- package/dist/client/assets/{chunk-QR6OTTB3-Duz4Y_uE.js → chunk-QR6OTTB3-RWuyWnBI.js} +1 -1
- package/dist/client/assets/{chunk-UBXNYLIW-D-z8URgN.js → chunk-UBXNYLIW-BPRzeB0w.js} +1 -1
- package/dist/client/assets/{chunk-W5SLKNZC-AGjFjjoJ.js → chunk-W5SLKNZC-DYWocTFi.js} +1 -1
- package/dist/client/assets/{chunk-WRU74C26-BgY3UiXB.js → chunk-WRU74C26-ChbB1jY3.js} +1 -1
- package/dist/client/assets/circle-stop-D8B4hRpY.js +1 -0
- package/dist/client/assets/circle-x-CNLfrTqR.js +1 -0
- package/dist/client/assets/classDiagram-JCYQIIEL-DGvmFev3.js +1 -0
- package/dist/client/assets/classDiagram-v2-OCEON4UE-DGvmFev3.js +1 -0
- package/dist/client/assets/{clipboard-copy-BWf3JuTE.js → clipboard-copy-DGi8FKNO.js} +1 -1
- package/dist/client/assets/clock-3-DmJ4_XPI.js +1 -0
- package/dist/client/assets/clock-DZIuPtNG.js +1 -0
- package/dist/client/assets/color-picker-BdBXje-a.js +1 -0
- package/dist/client/assets/columns-2-CWlMOClK.js +1 -0
- package/dist/client/assets/combobox-Dtjtf7AB.js +1 -0
- package/dist/client/assets/{cynefin-OW5HDTMX-BuOAGqlK.js → cynefin-OW5HDTMX-TuShvMuM.js} +1 -1
- package/dist/client/assets/{cynefinDiagram-MW4NZA55-DqV0Aokp.js → cynefinDiagram-MW4NZA55-B0Edt2Em.js} +1 -1
- package/dist/client/assets/{dagre-VZM6K2ZE-D_GFquDW.js → dagre-VZM6K2ZE-D-eiuqHx.js} +1 -1
- package/dist/client/assets/{data-list-BJCq3CVP.js → data-list-BAx6jBY1.js} +1 -1
- package/dist/client/assets/desktopUpdateAtoms-BjrLa3tl.js +1 -0
- package/dist/client/assets/desktopWorkspace-C2wXVBhc.js +1 -0
- package/dist/client/assets/{deviceName-C2N8ZRX3.js → deviceName-B4youG0v.js} +1 -1
- package/dist/client/assets/{diagram-7IWD3JNH-B1wlsNg2.js → diagram-7IWD3JNH-DgM6lMlR.js} +1 -1
- package/dist/client/assets/{diagram-B4RE2ZJO-D-CYoym7.js → diagram-B4RE2ZJO-CyHNDjzV.js} +1 -1
- package/dist/client/assets/{diagram-LBJQPF4R-DqJ9NCqt.js → diagram-LBJQPF4R-DDzuLIN5.js} +1 -1
- package/dist/client/assets/{diagram-Q27KOJAE-3yp1D2u4.js → diagram-Q27KOJAE-BaBvK9QB.js} +1 -1
- package/dist/client/assets/{diagram-UB23O5K3-Byp25nGC.js → diagram-UB23O5K3-CzZ2ewuZ.js} +1 -1
- package/dist/client/assets/dialogWords-Cg0YkJVg.js +1 -0
- package/dist/client/assets/diffRouteSearch-D2MKN_ah.js +1 -0
- package/dist/client/assets/disclosureMotion-cbMJn5-z.js +1 -0
- package/dist/client/assets/{download-DsYNYJeu.js → download-TvtXS4hE.js} +1 -1
- package/dist/client/assets/{ebnfDiagram-BXEA7PRR-B_IM1l6o.js → ebnfDiagram-BXEA7PRR-CL1vdOKi.js} +1 -1
- package/dist/client/assets/editorPreferences-DqKyA-2Z.js +1 -0
- package/dist/client/assets/ellipsis-CDK1dNFZ.js +1 -0
- package/dist/client/assets/ellipsis-vertical-CwzEUTwV.js +1 -0
- package/dist/client/assets/{empty-BbJHvskr.js → empty-BovKoxbn.js} +1 -1
- package/dist/client/assets/{erDiagram-JOGREHBK--OtcrCRJ.js → erDiagram-JOGREHBK-DmQR2if6.js} +1 -1
- package/dist/client/assets/eventmodeling-NTZA5JFV-D272GIcY.js +1 -0
- package/dist/client/assets/external-link-CJeVJZ7s.js +1 -0
- package/dist/client/assets/eye-BUmrXqzg.js +1 -0
- package/dist/client/assets/file-diff-BWc3mYsz.js +1 -0
- package/dist/client/assets/flowDiagram-UKHOOZJN-DLyS38Mm.js +1 -0
- package/dist/client/assets/folder-git-2-CPxg5wKP.js +1 -0
- package/dist/client/assets/folder-open-DcMymvp1.js +1 -0
- package/dist/client/assets/formatCount-B4KLI651.js +1 -0
- package/dist/client/assets/{ganttDiagram-PKOTCBZU-w0seBi3Q.js → ganttDiagram-PKOTCBZU-1q2nUL92.js} +1 -1
- package/dist/client/assets/git-pull-request-BFPwpm3c.js +1 -0
- package/dist/client/assets/{gitGraph-4MIJSDKK-BOJ0lcSW.js → gitGraph-4MIJSDKK-COtwmv2S.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-DS77QQ5N-BMfOCCYn.js → gitGraphDiagram-DS77QQ5N-ChsvaxX4.js} +1 -1
- package/dist/client/assets/{group-tVMKGp7Q.js → group-DWWn0dTx.js} +1 -1
- package/dist/client/assets/hammer-BXo-EU88.js +1 -0
- package/dist/client/assets/hostedConnectionCoordinator-BkAE-RhA.js +1 -0
- package/dist/client/assets/{index-BqZvnGNr.js → index-DARIYokI.js} +2 -2
- package/dist/client/assets/{info-A6RAGUB7-acjBTQ5o.js → info-A6RAGUB7-CI2qZ9wW.js} +1 -1
- package/dist/client/assets/{infoDiagram-6WML65LV-DB01Nc2m.js → infoDiagram-6WML65LV-BPmgcTPH.js} +1 -1
- package/dist/client/assets/{input-BDWSVClC.js → input-CCie4mm1.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-WSZJBQD7-KhZTvm-J.js → ishikawaDiagram-WSZJBQD7-LyS9p3Yg.js} +1 -1
- package/dist/client/assets/{journeyDiagram-NVQOT4AX-C3JCYk-2.js → journeyDiagram-NVQOT4AX-BYaAmN65.js} +1 -1
- package/dist/client/assets/{kanban-definition-27J2QSJJ-Dbo0C1s6.js → kanban-definition-27J2QSJJ-D-pwzqFt.js} +1 -1
- package/dist/client/assets/{key-round-CETZqe3h.js → key-round-BlrUTfxB.js} +1 -1
- package/dist/client/assets/keyboard-DlBdq6sz.js +1 -0
- package/dist/client/assets/label-ChtVI9lp.js +1 -0
- package/dist/client/assets/layers-BB-ruGvd.js +1 -0
- package/dist/client/assets/lifecycleSuggestionPolicy-0ERe_O53.js +1 -0
- package/dist/client/assets/list-checks-BkM_ZRsj.js +1 -0
- package/dist/client/assets/loader-3vQnfqIT.js +1 -0
- package/dist/client/assets/{log-out-D5-aSBAz.js → log-out-CKq9YiLY.js} +1 -1
- package/dist/client/assets/{logging-B_qXVrk6.js → logging-CCg76rgn.js} +1 -1
- package/dist/client/assets/main-Ch0bwS-M.js +9 -0
- package/dist/client/assets/main-Di0isH9D.css +2 -0
- package/dist/client/assets/{mermaid-parser.core-B6Q-3x_q.js → mermaid-parser.core-RK9ah5RM.js} +2 -2
- package/dist/client/assets/{mermaidEngine-DksLcesB.js → mermaidEngine-Dr8UsPhH.js} +3 -3
- package/dist/client/assets/message-circle-dashed-BrjwqS7-.js +1 -0
- package/dist/client/assets/messageQueueDrain-B7R7Qmq6.js +1 -0
- package/dist/client/assets/messages-square-cDTkDJv_.js +1 -0
- package/dist/client/assets/{mindmap-definition-FAOFIHXS-LaMzRxqw.js → mindmap-definition-FAOFIHXS-DVudWasx.js} +1 -1
- package/dist/client/assets/{packet-AYTQ26CC-BHhg59Si.js → packet-AYTQ26CC-DnkTsVhD.js} +1 -1
- package/dist/client/assets/panels-top-left-B7jZiLth.js +1 -0
- package/dist/client/assets/path-text-3Rfu6lt8.js +1 -0
- package/dist/client/assets/{pegDiagram-VL7TDLO6-s7l7UD9d.js → pegDiagram-VL7TDLO6-Do5PIp8B.js} +1 -1
- package/dist/client/assets/pencil-Bzg-nc6d.js +1 -0
- package/dist/client/assets/{pie-WAS4IAKB-DygX31Z9.js → pie-WAS4IAKB-B_nNQOzn.js} +1 -1
- package/dist/client/assets/{pieDiagram-7S7Q4E2Y-bb6I9TtZ.js → pieDiagram-7S7Q4E2Y-D_IG4xwA.js} +1 -1
- package/dist/client/assets/{play-DUvOxTpL.js → play-DpXXQ1qB.js} +1 -1
- package/dist/client/assets/popover-OWEv6cQz.js +48 -0
- package/dist/client/assets/presentationTier-DPVAxTK4.js +1 -0
- package/dist/client/assets/previewRouteSearch-BjZdTuSf.js +1 -0
- package/dist/client/assets/primary-Cf-xJExj.js +4 -0
- package/dist/client/assets/primitives-CxTBN7D4.js +1 -0
- package/dist/client/assets/projectCheckouts.logic-DUT4AxXr.js +1 -0
- package/dist/client/assets/projectPaths-B8aVmOZX.js +1 -0
- package/dist/client/assets/projectPreferences-CzWBItFj.js +1 -0
- package/dist/client/assets/providerCapabilities-B2YOPsLN.js +1 -0
- package/dist/client/assets/providerDriverMeta-BHHL9uw0.js +1 -0
- package/dist/client/assets/providerModels-v9PYbzRE.js +1 -0
- package/dist/client/assets/providerStatus-CDPaqb0S.js +1 -0
- package/dist/client/assets/pullRequestsModel.logic-Dv_om_C4.js +1 -0
- package/dist/client/assets/{qr-code-dbkTo07n.js → qr-code-BlbiBIwH.js} +1 -1
- package/dist/client/assets/{qr-code-D4CtBq2F.js → qr-code-DywzVgQC.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-CIZ2JOQS-Cj1Y68ZF.js → quadrantDiagram-CIZ2JOQS-DY6fJyrM.js} +1 -1
- package/dist/client/assets/{radar-RG4KPBEZ-FHM3ftPp.js → radar-RG4KPBEZ-D9689I5m.js} +1 -1
- package/dist/client/assets/radio-group-DVwD6Cuy.js +1 -0
- package/dist/client/assets/{railroad-74A4TZTK-CPMn18Cm.js → railroad-74A4TZTK-DVzWbQnl.js} +1 -1
- package/dist/client/assets/railroad-abnf-HS5TGJTU-C_2P6umA.js +1 -0
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-aGlR3R3z.js +1 -0
- package/dist/client/assets/railroad-peg-WCYAUIDC-DCB9oE8y.js +1 -0
- package/dist/client/assets/{railroadDiagram-AXF67PYL-DyV3SuDj.js → railroadDiagram-AXF67PYL-D1oJ6Jtl.js} +1 -1
- package/dist/client/assets/readCache-B7cDPz2O.js +1 -0
- package/dist/client/assets/{refresh-cw-CgDa2Ok_.js → refresh-cw-CRUTivd6.js} +1 -1
- package/dist/client/assets/{requirementDiagram-LRYGKXZP-_xEAGWaH.js → requirementDiagram-LRYGKXZP-7RM8iREp.js} +1 -1
- package/dist/client/assets/rotate-ccw-BE2ZCwL6.js +1 -0
- package/dist/client/assets/roving-radio-group-NMPWrDqe.js +1 -0
- package/dist/client/assets/rows-2-DDS4dGTX.js +1 -0
- package/dist/client/assets/runtime-DjjjAcTE.js +18 -0
- package/dist/client/assets/safePolygon-C1AzMRS4.js +1 -0
- package/dist/client/assets/{sankeyDiagram-W5VNT64P-Clf6oTLi.js → sankeyDiagram-W5VNT64P-C1tKAPGN.js} +1 -1
- package/dist/client/assets/{save-C8h0AMdl.js → save-OZdkPs_y.js} +1 -1
- package/dist/client/assets/scroll-area-80P7vbjw.js +1 -0
- package/dist/client/assets/{scrollEdges-BXYnwntN.js → scrollEdges-C0Oc-5qi.js} +1 -1
- package/dist/client/assets/select-Cb9FUPHD.js +1 -0
- package/dist/client/assets/separator-CO8bC7Wc.js +1 -0
- package/dist/client/assets/{sequenceDiagram-SI44F4Z6-CcYtQLSe.js → sequenceDiagram-SI44F4Z6-DGVpb7jL.js} +1 -1
- package/dist/client/assets/settings-2-PrRDu6Lc.js +1 -0
- package/dist/client/assets/settingsLayout-CRFNCk_D.js +1 -0
- package/dist/client/assets/sheet-C5DW7qVO.js +1 -0
- package/dist/client/assets/{shield-DPC4oHTi.js → shield-CBHYqlkR.js} +1 -1
- package/dist/client/assets/{shield-alert-CwH36qZb.js → shield-alert-Dc2cGwyR.js} +1 -1
- package/dist/client/assets/{shield-check-CGD7sEeF.js → shield-check-_wl7R4Js.js} +1 -1
- package/dist/client/assets/sidebar-0BBaFNm3.js +1 -0
- package/dist/client/assets/sidebarProjectFolders-BjWzbt8C.js +3 -0
- package/dist/client/assets/sidebarProjectGrouping-nQRStWrZ.js +1 -0
- package/dist/client/assets/sidebarStatusText-BBKuNies.js +1 -0
- package/dist/client/assets/sidebarUndo-Dfq1lvyF.js +1 -0
- package/dist/client/assets/{skeleton-rS3IgBob.js → skeleton-DfUe6VV_.js} +1 -1
- package/dist/client/assets/sliders-horizontal-BGXkwvKv.js +1 -0
- package/dist/client/assets/sliding-tabs-BnDSjRU3.js +39 -0
- package/dist/client/assets/{smartphone-DgVJfbv3.js → smartphone-OEAQOTdv.js} +1 -1
- package/dist/client/assets/spinner-lHRJWsym.js +1 -0
- package/dist/client/assets/square-B05NKv3e.js +1 -0
- package/dist/client/assets/{star-Cqay-Cae.js → star-C8mHmfZu.js} +1 -1
- package/dist/client/assets/{stateDiagram-OKZ733FA-DEKURpRP.js → stateDiagram-OKZ733FA-CCOAegCG.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-UEYNNEHI-D60qqBed.js +1 -0
- package/dist/client/assets/storeSelectors-BichCKDC.js +1 -0
- package/dist/client/assets/surfaceMorph-BTRijmlU.js +1 -0
- package/dist/client/assets/{swimlanes-SLNWSIFB-DrR6sbi6.js → swimlanes-SLNWSIFB-CFsLYT4h.js} +1 -1
- package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-D0SaJgSn.js +8 -0
- package/dist/client/assets/switch-oQc7Ifbl.js +1 -0
- package/dist/client/assets/text-wrap-DSRdSfDm.js +1 -0
- package/dist/client/assets/textarea-VyiIZ0wQ.js +1 -0
- package/dist/client/assets/threadPriorityRefreshRuntime-H656C1J_.js +1 -0
- package/dist/client/assets/ticker-CPutfhZ4.js +1 -0
- package/dist/client/assets/{timeline-definition-Z64GVDOM-bQJvmJx5.js → timeline-definition-Z64GVDOM-B4agmO7R.js} +1 -1
- package/dist/client/assets/toggle-DFqtCPt-.js +1 -0
- package/dist/client/assets/toggle-group-C5ICmqkI.js +1 -0
- package/dist/client/assets/{tokenModePresentation-BkS-mry_.js → tokenModePresentation-umDRm4k1.js} +1 -1
- package/dist/client/assets/tooltip-DbqhseXd.js +1 -0
- package/dist/client/assets/{treeView-Q6P3EWNA-D4Ex5QTp.js → treeView-Q6P3EWNA-C_S3udFB.js} +1 -1
- package/dist/client/assets/{treemap-WGGIJYW6-C4B6Y6qM.js → treemap-WGGIJYW6-B-kUSAkE.js} +1 -1
- package/dist/client/assets/undo-2-lyluTGMW.js +1 -0
- package/dist/client/assets/{unplug-B1dczi-t.js → unplug-D6iu-qlh.js} +1 -1
- package/dist/client/assets/usage-ClF-eUmy.js +1 -0
- package/dist/client/assets/useActiveIndicator-R5NWu8Fg.js +1 -0
- package/dist/client/assets/useAppSidebarCollapsed-BbMxfio5.js +1 -0
- package/dist/client/assets/useAppearancePreference-Ix13pMKy.js +1 -0
- package/dist/client/assets/useAtlassian-BYDCc9lv.js +0 -0
- package/dist/client/assets/useCheckoutResolution-CR-oOp5-.js +1 -0
- package/dist/client/assets/useDesktopRelaunchGuard-Jmh615iZ.js +1 -0
- package/dist/client/assets/useDiffFileNavigation-DeuzdD5E.js +15 -0
- package/dist/client/assets/useDiffLayout-DhcXwhBL.js +1 -0
- package/dist/client/assets/useEnvironmentSettingsTarget-DM6BRDT7.js +1 -0
- package/dist/client/assets/useFocus-CV0KIZwg.js +1 -0
- package/dist/client/assets/useGit-CUcs7h5_.js +1 -0
- package/dist/client/assets/useGitBranchSearch-CeKFtnCL.js +1 -0
- package/dist/client/assets/useHostedDraftExecutionTarget-DvQU5UOq.js +1 -0
- package/dist/client/assets/useLabelableId-CEgCRi6q.js +1 -0
- package/dist/client/assets/useLandingFlash-BfOOlFtW.js +1 -0
- package/dist/client/assets/useLogicalProjectSnapshots-CRNZke74.js +1 -0
- package/dist/client/assets/useNavigate-sQZthdyT.js +1 -0
- package/dist/client/assets/usePageLeadingInsetClass-Bf4nUvx4.js +1 -0
- package/dist/client/assets/usePhoneThreadActions-VaQ-mZex.js +1 -0
- package/dist/client/assets/usePopupHandleStore-DimKo2Yy.js +1 -0
- package/dist/client/assets/usePopupViewport-YeqX_UM3.js +1 -0
- package/dist/client/assets/usePresentationTier-B9kCQ4YH.js +1 -0
- package/dist/client/assets/useProject-Kt74Z12J.js +1 -0
- package/dist/client/assets/useProviderOptionsUpdater-CTzNh2B7.js +2 -0
- package/dist/client/assets/usePullRequestFilesViewed-D5Snmzys.js +1 -0
- package/dist/client/assets/usePullRequestsModel-DJL5HHbP.js +40 -0
- package/dist/client/assets/useScrollLock-CLZ31xsK.js +1 -0
- package/dist/client/assets/useSidebarThreadActions-n6EkLATf.js +6 -0
- package/dist/client/assets/{useStatistics-B76_r68I.js → useStatistics-DD0mYS4J.js} +14 -14
- package/dist/client/assets/{useTheme-B441xg4F.js → useTheme-Bdy-BDs-.js} +1 -1
- package/dist/client/assets/useValueChanged-DoumqMnV.js +1 -0
- package/dist/client/assets/{user-round-CLy1Qy1Y.js → user-round-BPDXr8Gq.js} +1 -1
- package/dist/client/assets/{vennDiagram-T6HMQDX7-8iiroXim.js → vennDiagram-T6HMQDX7-B1UEn_j_.js} +1 -1
- package/dist/client/assets/{vscode-icons-CJBVQtq5.js → vscode-icons-Ccy-gzFN.js} +1 -1
- package/dist/client/assets/{wardley-WFR3VGLG-DpyNUbTc.js → wardley-WFR3VGLG-gPdyDc-7.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-T6FBY63Y-CI7is3QO.js → wardleyDiagram-T6FBY63Y-2aDcwOA4.js} +1 -1
- package/dist/client/assets/workspaceLifecycle-OJ1aKksw.js +3 -0
- package/dist/client/assets/workspaceMetadataProjection-CyEyJhUa.js +1 -0
- package/dist/client/assets/workspaceRouteSearch-CCavUdbH.js +1 -0
- package/dist/client/assets/{wrench-7pbbxqrZ.js → wrench-CPUCA_rn.js} +1 -1
- package/dist/client/assets/wsTransport-C88seBPA.js +15 -0
- package/dist/client/assets/{xychartDiagram-ELKLHX3M-BTEX3m2y.js → xychartDiagram-ELKLHX3M-C1_7Q-1i.js} +1 -1
- package/dist/client/favicon.svg +1 -1
- package/dist/client/index.html +1 -1
- package/dist/collectUint8StreamText-BsLSgI8i.mjs +710 -0
- package/dist/collectUint8StreamText-D5olwfpM.cjs +757 -0
- package/dist/{deviceHostWorker-L8C9wy38.mjs → deviceHostWorker-B-Dn-6An.mjs} +1 -1
- package/dist/{makeManagedServerProvider-CF776SAO.cjs → makeManagedServerProvider-B5tP7tvg.cjs} +1 -1
- package/dist/{makeManagedServerProvider-B90UKjnv.mjs → makeManagedServerProvider-B65ipCxM.mjs} +2 -2
- package/dist/resource-monitor/linux-arm64/ryco-resource-monitor +0 -0
- package/dist/resource-monitor/ryco-resource-monitor +0 -0
- package/dist/resource-monitor/ryco-resource-monitor.exe +0 -0
- package/dist/resource-monitor/win32-arm64/ryco-resource-monitor.exe +0 -0
- package/dist/resource-monitor/win32-x64/ryco-resource-monitor.exe +0 -0
- package/dist/{runtimeSession-V3RIy8Ao.mjs → runtimeSession-D_BZ-wRH.mjs} +1 -1
- package/dist/{src-CARHuYkT.cjs → src-FmeCeBJ9.cjs} +2291 -72
- package/dist/{src-CtsgPPhb.mjs → src-VTj60bUm.mjs} +1974 -61
- package/package.json +1 -1
- package/dist/AzureDevOpsSourceControlProvider-CKSvfuDS.cjs +0 -190
- package/dist/AzureDevOpsSourceControlProvider-DRWSXTml.mjs +0 -188
- package/dist/GitLabSourceControlProvider-Cj07OTBD.mjs +0 -186
- package/dist/GitLabSourceControlProvider-CvvN5pHt.cjs +0 -188
- package/dist/client/assets/AccountSettings-v6-r6gYl.js +0 -1
- package/dist/client/assets/AiFocusSettings-BVdLON0q.js +0 -1
- package/dist/client/assets/AppearanceSettings-DRChsQnN.js +0 -1
- package/dist/client/assets/BranchToolbar.logic-YN3KjVr9.js +0 -3
- package/dist/client/assets/BrowserPanel-Dxw3stFP.js +0 -1
- package/dist/client/assets/ChatRightPanel-CygpcJiF.js +0 -201
- package/dist/client/assets/ChatThreadRouteView-DYLZFHu0.js +0 -1
- package/dist/client/assets/CommandPaletteDialog-BRvBzP1R.js +0 -1
- package/dist/client/assets/CompositeRoot-BeEGGWwn.js +0 -1
- package/dist/client/assets/ComputerUseSettings-Cq8Pi0ZU.js +0 -1
- package/dist/client/assets/ConnectionsSettings-RSYtexxd.js +0 -7
- package/dist/client/assets/ContextHandoffEndpointLabel-CeGDLNA4.js +0 -4
- package/dist/client/assets/DiagnosticsSettings-CDa6MVx4.js +0 -2
- package/dist/client/assets/DialogHandle-BE7egDQQ.js +0 -1
- package/dist/client/assets/DialogRoot-C4mtzigX.js +0 -1
- package/dist/client/assets/DialogTitle-B_Q4DykI.js +0 -1
- package/dist/client/assets/DialogTrigger-BSqd4Crj.js +0 -1
- package/dist/client/assets/DraftChatThreadRouteView-JW_bXVrM.js +0 -1
- package/dist/client/assets/GlassSurface-DDG4eTlj.js +0 -1
- package/dist/client/assets/HostedConnectionControls-CscV6hm1.js +0 -1
- package/dist/client/assets/HostedHubRoot-gp7-ClBP.js +0 -2
- package/dist/client/assets/HostedNodeRenameDialog-D1DSiTpx.js +0 -1
- package/dist/client/assets/HostedRelayTrustNotice-B9jp4SRh.js +0 -1
- package/dist/client/assets/IntegrationsSettingsPanel-DH7SfWtV.js +0 -2
- package/dist/client/assets/KeybindingsSettings-DkgYYSHS.js +0 -7
- package/dist/client/assets/LazyBrowserPanel-D4e76vc_.js +0 -2
- package/dist/client/assets/McpServersSettings-Dc1kPa-X.js +0 -6
- package/dist/client/assets/MobileSheet-lT--mLEz.js +0 -1
- package/dist/client/assets/NodeSecuritySettings-DcfSx4KT.js +0 -1
- package/dist/client/assets/NullStore-8d2s-Re3.js +0 -1
- package/dist/client/assets/OnboardingDialog-CnLjwM6Z.js +0 -1
- package/dist/client/assets/OpinionatedPluginsSettings-BTJyS3rN.js +0 -1
- package/dist/client/assets/PhoneHome-CIMkuDJF.js +0 -1
- package/dist/client/assets/PhoneSettingsSurface-CfZQxJNI.js +0 -2
- package/dist/client/assets/ProvidersSettingsPanel-DAVSiwE1.js +0 -1
- package/dist/client/assets/RedactedSensitiveText-BHGbQJwB.js +0 -1
- package/dist/client/assets/RootAppShell-T056pByH.js +0 -7
- package/dist/client/assets/SettingsDialog-BERU2Qg7.js +0 -2
- package/dist/client/assets/SettingsPanels-De_XZOQF.js +0 -3
- package/dist/client/assets/SettingsPanels.editor-Dkva9gX_.js +0 -2
- package/dist/client/assets/SourceControlSettings-B4HS17cB.js +0 -1
- package/dist/client/assets/StatisticsPage-Bj2ftFdH.js +0 -1
- package/dist/client/assets/StatisticsPanel-Dw7GBBmd.js +0 -1
- package/dist/client/assets/StatisticsSettingsLink-_XL3ABoI.js +0 -1
- package/dist/client/assets/ThreadTerminalDrawer-CPPzQSXN.js +0 -18
- package/dist/client/assets/ThreadWorkspacePanel-DWKU7Omm.js +0 -2073
- package/dist/client/assets/appChrome-TkWLAGxk.js +0 -1
- package/dist/client/assets/architecture-7GRP2DOG-HS59zfrk.js +0 -1
- package/dist/client/assets/authorization-D8dOcEYq.js +0 -1
- package/dist/client/assets/badge-2AZ3HfVS.js +0 -1
- package/dist/client/assets/capabilities-CsHjxjab.js +0 -1
- package/dist/client/assets/channel-Dn3_cOkm.js +0 -1
- package/dist/client/assets/chevron-right-Dsw16yGn.js +0 -1
- package/dist/client/assets/classDiagram-JCYQIIEL-ZQvrS8No.js +0 -1
- package/dist/client/assets/classDiagram-v2-OCEON4UE-ZQvrS8No.js +0 -1
- package/dist/client/assets/compiler-runtime-C4g8XhC5.js +0 -1
- package/dist/client/assets/desktopWorkspace-_iM6B9Kf.js +0 -1
- package/dist/client/assets/editorPreferences-D8q1ItMW.js +0 -1
- package/dist/client/assets/eventmodeling-NTZA5JFV-Dj71kuPV.js +0 -1
- package/dist/client/assets/flowDiagram-UKHOOZJN-BaAiwuvL.js +0 -1
- package/dist/client/assets/hostedConnectionCoordinator-BuRWCvUG.js +0 -1
- package/dist/client/assets/hubRoutes-jcMPIFy3.js +0 -1
- package/dist/client/assets/kbd-Dxm5Elqj.js +0 -1
- package/dist/client/assets/layers-Dqez1Uq8.js +0 -1
- package/dist/client/assets/liquidGlass-CA2o_Cq0.js +0 -1
- package/dist/client/assets/liquidGlass.worker-icvLJKHf.js +0 -1
- package/dist/client/assets/main-BqSANuAs.css +0 -2
- package/dist/client/assets/main-DAbEANjY.js +0 -9
- package/dist/client/assets/motion-BdscFixQ.js +0 -1
- package/dist/client/assets/palette-92ylWqeC.js +0 -1
- package/dist/client/assets/perfInstrumentation-BT27w4tn.js +0 -1
- package/dist/client/assets/presentationTier-xlIjcFab.js +0 -1
- package/dist/client/assets/primary-DZjgHvyf.js +0 -5
- package/dist/client/assets/providerDriverMeta-T2YbXzuS.js +0 -1
- package/dist/client/assets/providerStatus-DBGvvkyF.js +0 -1
- package/dist/client/assets/radio-group-CRnHYWa8.js +0 -1
- package/dist/client/assets/railroad-abnf-HS5TGJTU-DxU7Mt1k.js +0 -1
- package/dist/client/assets/railroad-ebnf-LZEXJU2U-BYAPVjRd.js +0 -1
- package/dist/client/assets/railroad-peg-WCYAUIDC-BOqgR_X7.js +0 -1
- package/dist/client/assets/runtime-BwHA1GUS.js +0 -18
- package/dist/client/assets/scroll-area-7n2X_RLQ.js +0 -1
- package/dist/client/assets/separator-CL1qjMqJ.js +0 -1
- package/dist/client/assets/settingsLayout-DxsFwhF0.js +0 -1
- package/dist/client/assets/sheet-CGiaw8-i.js +0 -1
- package/dist/client/assets/sidebar-Cc6ANbOP.js +0 -1
- package/dist/client/assets/sidebarProjectFolders-DO2Uv84F.js +0 -4
- package/dist/client/assets/sidebarStatusText-B4AtFXZo.js +0 -1
- package/dist/client/assets/sidebarUndo-gdSrfa4O.js +0 -1
- package/dist/client/assets/square-Cr9X8U6y.js +0 -1
- package/dist/client/assets/src-C3Y_imaX.js +0 -14
- package/dist/client/assets/stateDiagram-v2-UEYNNEHI-CWtHILqh.js +0 -1
- package/dist/client/assets/storeSelectors-CTDWheMy.js +0 -1
- package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-DuaPce9O.js +0 -8
- package/dist/client/assets/switch-DnpJB2xv.js +0 -48
- package/dist/client/assets/toggle-D10FsFoE.js +0 -1
- package/dist/client/assets/toggle-group-BhzbQPEQ.js +0 -1
- package/dist/client/assets/tooltip-BlweKBxc.js +0 -1
- package/dist/client/assets/usage-BBwaxMif.js +0 -1
- package/dist/client/assets/useAppSidebarCollapsed-CFy476E3.js +0 -1
- package/dist/client/assets/useAppearancePreference-Dlh9P8iu.js +0 -1
- package/dist/client/assets/useBaseUiId-DKOjzmu3.js +0 -1
- package/dist/client/assets/useLabelableId-DQbY2GG1.js +0 -1
- package/dist/client/assets/useNavigate-B8oXtF30.js +0 -1
- package/dist/client/assets/usePhoneThreadActions-6DCLiyJ5.js +0 -1
- package/dist/client/assets/usePopupViewport-CNWcP7Od.js +0 -1
- package/dist/client/assets/usePresentationTier-hxB7Yv_Q.js +0 -1
- package/dist/client/assets/useScrollLock-BbKeKZdj.js +0 -1
- package/dist/client/assets/useTriggerFocusGuards-BC4Wb3GI.js +0 -1
- package/dist/client/assets/useValueChanged-BkTbyZdO.js +0 -1
- package/dist/client/assets/workspaceMetadataProjection-aqZEXDrQ.js +0 -1
- package/dist/collectUint8StreamText-BAUF-vzz.mjs +0 -37
- package/dist/collectUint8StreamText-vagpNUMJ.cjs +0 -42
- package/dist/git-9xWsJYIH.mjs +0 -132
- package/dist/git-xIkXFy_l.cjs +0 -218
- package/dist/sourceControl-B0D1Op29.cjs +0 -253
- package/dist/sourceControl-BiEBxN01.mjs +0 -224
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
const require_rolldown_runtime = require("./rolldown-runtime-HbSU0i7K.cjs");
|
|
4
|
-
const require_Metrics = require("./Metrics-
|
|
5
|
-
const require_src = require("./src-
|
|
6
|
-
const require_git = require("./git-xIkXFy_l.cjs");
|
|
4
|
+
const require_Metrics = require("./Metrics-DjRPLE98.cjs");
|
|
5
|
+
const require_src = require("./src-FmeCeBJ9.cjs");
|
|
7
6
|
const require_bin = require("./bin.cjs");
|
|
8
|
-
const require_AcpAdapter = require("./AcpAdapter-
|
|
7
|
+
const require_AcpAdapter = require("./AcpAdapter-ByUp9-wk.cjs");
|
|
9
8
|
const require_ProviderDriver = require("./ProviderDriver--rNeAi3B.cjs");
|
|
10
|
-
const require_makeManagedServerProvider = require("./makeManagedServerProvider-
|
|
9
|
+
const require_makeManagedServerProvider = require("./makeManagedServerProvider-B5tP7tvg.cjs");
|
|
11
10
|
let effect_Cause = require("effect/Cause");
|
|
12
11
|
effect_Cause = require_rolldown_runtime.__toESM(effect_Cause, 1);
|
|
13
12
|
let effect_Effect = require("effect/Effect");
|
|
@@ -156,7 +155,7 @@ const makeGrokTextGeneration = effect_Effect.fn("makeGrokTextGeneration")(functi
|
|
|
156
155
|
return {
|
|
157
156
|
subject: require_bin.sanitizeCommitSubject(generated.subject),
|
|
158
157
|
body: generated.body.trim(),
|
|
159
|
-
..."branch" in generated && typeof generated.branch === "string" ? { branch:
|
|
158
|
+
..."branch" in generated && typeof generated.branch === "string" ? { branch: require_bin.sanitizeFeatureBranchName(generated.branch) } : {}
|
|
160
159
|
};
|
|
161
160
|
}),
|
|
162
161
|
generatePrContent: effect_Effect.fn("GrokTextGeneration.generatePrContent")(function* (input) {
|
|
@@ -191,7 +190,7 @@ const makeGrokTextGeneration = effect_Effect.fn("makeGrokTextGeneration")(functi
|
|
|
191
190
|
outputSchemaJson: outputSchema,
|
|
192
191
|
modelSelection: input.modelSelection
|
|
193
192
|
});
|
|
194
|
-
return { branch:
|
|
193
|
+
return { branch: require_bin.sanitizeBranchFragment(generated.branch) };
|
|
195
194
|
}),
|
|
196
195
|
generateThreadTitle: effect_Effect.fn("GrokTextGeneration.generateThreadTitle")(function* (input) {
|
|
197
196
|
const { prompt, outputSchema } = require_bin.buildThreadTitlePrompt({
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { i as currentAcpModelIdFromSessionSetup, n as makeXAiPromptCompletionRuntime, r as applyAcpModelSelection, t as makeAcpAdapter } from "./AcpAdapter-CKWzfB3Q.mjs";
|
|
3
|
+
import { Qt as normalizeModelSlug, Ut as createModelCapabilities, X as ServerSettingsService } from "./Metrics-C3vLS9rz.mjs";
|
|
4
|
+
import { Di as GrokSettings, Ks as ProviderDriverKind, ei as TextGenerationError } from "./src-VTj60bUm.mjs";
|
|
5
|
+
import { A as ProviderEventLoggers, At as isCommandMissingCause, Ci as sanitizeFeatureBranchName, Dt as buildServerProvider, G as AcpSessionRuntime, Kt as ProviderDriverError, Mt as parseGenericCliVersion, Nt as providerModelsFromSettings, Pt as spawnAndCollect, Si as sanitizeBranchFragment, _t as mergeProviderInstanceEnvironment, at as enrichProviderSnapshotWithVersionAdvisory, bi as sanitizeThreadTitle, ci as buildBranchNamePrompt, di as buildIssueContentTitlePrompt, dt as resolveProviderMaintenanceCapabilitiesEffect, fi as buildPrContentPrompt, gi as extractJsonObject, hi as buildThreadTitlePrompt, li as buildCommitMessagePrompt, lt as makeStaticProviderMaintenanceResolver, mi as buildThreadPriorityPrompt, ot as makeManualOnlyProviderMaintenanceCapabilities, si as validateRankInboxThreadsResult, ui as buildIssueContentPolishPrompt, vi as sanitizeCommitSubject, yi as sanitizePrTitle } from "./bin.mjs";
|
|
6
|
+
import { i as currentAcpModelIdFromSessionSetup, n as makeXAiPromptCompletionRuntime, r as applyAcpModelSelection, t as makeAcpAdapter } from "./AcpAdapter-CY_ANTKu.mjs";
|
|
8
7
|
import { t as defaultProviderContinuationIdentity } from "./ProviderDriver-kCV60GKk.mjs";
|
|
9
|
-
import { t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
8
|
+
import { t as makeManagedServerProvider } from "./makeManagedServerProvider-B65ipCxM.mjs";
|
|
10
9
|
import * as Cause from "effect/Cause";
|
|
11
10
|
import * as Effect from "effect/Effect";
|
|
12
11
|
import * as Layer from "effect/Layer";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Ai as ServerSettingsError, Bs as DEFAULT_GIT_TEXT_GENERATION_MODEL_BY_PROVIDER, Ic as NodeE2eeAdmissionPolicy, Ks as ProviderDriverKind, Li as StorageError, Ti as DEFAULT_SERVER_SETTINGS, Us as MODEL_SLUG_ALIASES_BY_PROVIDER, Vs as DEFAULT_GIT_TEXT_GENERATION_OPTIONS_BY_PROVIDER, Ys as isProviderDriverKind, do as PROJECT_RELOCATION_PENDING_MESSAGE, ki as ServerSettings, qs as ProviderInstanceId } from "./src-VTj60bUm.mjs";
|
|
4
4
|
import { r as fromLenientJson } from "./schemaJson-CaG1bOvo.mjs";
|
|
5
5
|
import { n as runProcess } from "./processRunner-DnndFd2A.mjs";
|
|
6
6
|
import { Cache, Cause, Context, Data, DateTime, Deferred, Duration, Effect, Equal, Exit, FileSystem, Layer, Metric, Path, Predicate, PubSub, Ref, Schema, SchemaIssue, Scope, Semaphore, Stream } from "effect";
|
|
@@ -2668,6 +2668,21 @@ function createModelSelection(instanceId, model, options) {
|
|
|
2668
2668
|
options: selections
|
|
2669
2669
|
} : base;
|
|
2670
2670
|
}
|
|
2671
|
+
function canonicalOptionKeys(options) {
|
|
2672
|
+
return (options ?? []).map((option) => JSON.stringify([option.id, option.value])).toSorted((left, right) => left < right ? -1 : left > right ? 1 : 0);
|
|
2673
|
+
}
|
|
2674
|
+
/**
|
|
2675
|
+
* Semantic equality of two model selections: same instance and model, and the
|
|
2676
|
+
* same options regardless of their order (absent options equal an empty list).
|
|
2677
|
+
* Key order never matters, so a selection round-tripped through JSON and schema
|
|
2678
|
+
* decode equals the hydrated one.
|
|
2679
|
+
*/
|
|
2680
|
+
function sameModelSelection(left, right) {
|
|
2681
|
+
if (left.instanceId !== right.instanceId || left.model !== right.model) return false;
|
|
2682
|
+
const leftOptions = canonicalOptionKeys(left.options);
|
|
2683
|
+
const rightOptions = canonicalOptionKeys(right.options);
|
|
2684
|
+
return leftOptions.length === rightOptions.length && leftOptions.every((key, index) => rightOptions[index] === key);
|
|
2685
|
+
}
|
|
2671
2686
|
/**
|
|
2672
2687
|
* Context handoff is a provider-instance boundary. Model and option changes
|
|
2673
2688
|
* within one configured instance remain on that provider's normal turn path.
|
|
@@ -2799,6 +2814,15 @@ function applyServerSettingsPatch(current, patch) {
|
|
|
2799
2814
|
projectStorageRetention: Object.fromEntries(policies)
|
|
2800
2815
|
};
|
|
2801
2816
|
}
|
|
2817
|
+
if (patch.projectLifecycleSuggestions !== void 0) {
|
|
2818
|
+
const policies = new Map(Object.entries(current.projectLifecycleSuggestions));
|
|
2819
|
+
for (const [projectId, policy] of Object.entries(patch.projectLifecycleSuggestions)) if (policy === null) policies.delete(projectId);
|
|
2820
|
+
else policies.set(projectId, policy);
|
|
2821
|
+
next = {
|
|
2822
|
+
...next,
|
|
2823
|
+
projectLifecycleSuggestions: Object.fromEntries(policies)
|
|
2824
|
+
};
|
|
2825
|
+
}
|
|
2802
2826
|
const nextWithReplacements = patch.providerInstances !== void 0 ? {
|
|
2803
2827
|
...next,
|
|
2804
2828
|
providerInstances: patch.providerInstances
|
|
@@ -2928,6 +2952,10 @@ function resolveNodeE2eePolicyConfig(raw) {
|
|
|
2928
2952
|
function resolveManagedWorktreesRoot(config) {
|
|
2929
2953
|
return config.workspaceAccessRoot === void 0 ? config.worktreesDir : path.join(config.workspaceAccessRoot, ".ryco", "worktrees");
|
|
2930
2954
|
}
|
|
2955
|
+
/** The chats root used when the `chatsRoot` setting is empty. */
|
|
2956
|
+
function resolveManagedChatsRoot(config) {
|
|
2957
|
+
return config.workspaceAccessRoot === void 0 ? config.chatsDir : path.join(config.workspaceAccessRoot, ".ryco", "chats");
|
|
2958
|
+
}
|
|
2931
2959
|
const deriveServerPaths = Effect.fn(function* (baseDir, devUrl) {
|
|
2932
2960
|
const { join } = yield* Path.Path;
|
|
2933
2961
|
const stateDir = join(baseDir, devUrl !== void 0 ? "dev" : "userdata");
|
|
@@ -2943,6 +2971,7 @@ const deriveServerPaths = Effect.fn(function* (baseDir, devUrl) {
|
|
|
2943
2971
|
settingsPath: join(stateDir, "settings.json"),
|
|
2944
2972
|
providerStatusCacheDir,
|
|
2945
2973
|
worktreesDir: join(baseDir, "worktrees"),
|
|
2974
|
+
chatsDir: join(baseDir, "chats"),
|
|
2946
2975
|
attachmentsDir,
|
|
2947
2976
|
logsDir,
|
|
2948
2977
|
serverLogPath: join(logsDir, "server.log"),
|
|
@@ -3450,6 +3479,11 @@ async function removeVerifiedWorktree(repository, candidate, cleanup) {
|
|
|
3450
3479
|
//#region src/storage/lifecycle.ts
|
|
3451
3480
|
const storageLifecycleLock = Semaphore.makeUnsafe(1);
|
|
3452
3481
|
const creations = /* @__PURE__ */ new Map();
|
|
3482
|
+
let activityVersion = 0;
|
|
3483
|
+
const noteStorageActivity = () => {
|
|
3484
|
+
activityVersion++;
|
|
3485
|
+
};
|
|
3486
|
+
const storageActivityVersion = () => activityVersion;
|
|
3453
3487
|
const overlaps = (a, b, platform = process.platform) => {
|
|
3454
3488
|
if (platform === "darwin" || platform === "win32") {
|
|
3455
3489
|
a = a.toLowerCase();
|
|
@@ -3458,6 +3492,12 @@ const overlaps = (a, b, platform = process.platform) => {
|
|
|
3458
3492
|
const boundary = (root) => root.endsWith(path.sep) ? root : root + path.sep;
|
|
3459
3493
|
return a === b || a.startsWith(boundary(b)) || b.startsWith(boundary(a));
|
|
3460
3494
|
};
|
|
3495
|
+
/** `candidate` is `root` or below it. */
|
|
3496
|
+
const contains = (root, candidate, platform) => {
|
|
3497
|
+
const a = platform === "darwin" || platform === "win32" ? root.toLowerCase() : root;
|
|
3498
|
+
const b = platform === "darwin" || platform === "win32" ? candidate.toLowerCase() : candidate;
|
|
3499
|
+
return a === b || b.startsWith(a.endsWith(path.sep) ? a : a + path.sep);
|
|
3500
|
+
};
|
|
3461
3501
|
const removingPaths = (row) => {
|
|
3462
3502
|
let identity;
|
|
3463
3503
|
try {
|
|
@@ -3488,6 +3528,7 @@ async function canonicalStoragePath(candidate) {
|
|
|
3488
3528
|
function acquireWorktreeCreationLease(sql, candidate) {
|
|
3489
3529
|
return storageLifecycleLock.withPermit(Effect.gen(function* () {
|
|
3490
3530
|
const canonical = yield* Effect.tryPromise(() => canonicalStoragePath(candidate));
|
|
3531
|
+
if (yield* isWorktreeRelocationBlocked(sql, canonical)) return yield* new StorageError({ detail: "Checkout relocation is pending or this is a retired checkout path. Reload the workspace." });
|
|
3491
3532
|
const pending = yield* sql`SELECT path, identity_json FROM storage_owned_entries WHERE state = 'removing' LIMIT 257`;
|
|
3492
3533
|
if (pending.length > 256) return yield* new StorageError({ detail: "Too many interrupted cleanups to establish safe creation admission. Inspect pending cleanup records." });
|
|
3493
3534
|
if (pending.some((row) => removingPaths(row).some((root) => overlaps(root, canonical)))) return yield* new StorageError({ detail: "Checkout cleanup is pending. Creation cannot replace an in-flight removal." });
|
|
@@ -3496,6 +3537,7 @@ function acquireWorktreeCreationLease(sql, candidate) {
|
|
|
3496
3537
|
const remaining = (creations.get(canonical) ?? 1) - 1;
|
|
3497
3538
|
if (remaining > 0) creations.set(canonical, remaining);
|
|
3498
3539
|
else creations.delete(canonical);
|
|
3540
|
+
noteStorageActivity();
|
|
3499
3541
|
});
|
|
3500
3542
|
}));
|
|
3501
3543
|
}
|
|
@@ -3503,12 +3545,14 @@ function acquireWorktreeCreationLease(sql, candidate) {
|
|
|
3503
3545
|
function acquireStoragePathUseLease(sql, candidate) {
|
|
3504
3546
|
return storageLifecycleLock.withPermit(Effect.gen(function* () {
|
|
3505
3547
|
const canonical = yield* Effect.tryPromise(() => canonicalStoragePath(candidate));
|
|
3506
|
-
|
|
3548
|
+
const blocker = yield* storagePathBlocker(sql, canonical);
|
|
3549
|
+
if (blocker !== null) return yield* new StorageError({ detail: blocker === "project-relocation" ? PROJECT_RELOCATION_PENDING_MESSAGE : "Checkout cleanup is pending or complete. Restore/recreate it before provider recovery." });
|
|
3507
3550
|
creations.set(canonical, (creations.get(canonical) ?? 0) + 1);
|
|
3508
3551
|
return Effect.sync(() => {
|
|
3509
3552
|
const remaining = (creations.get(canonical) ?? 1) - 1;
|
|
3510
3553
|
if (remaining > 0) creations.set(canonical, remaining);
|
|
3511
3554
|
else creations.delete(canonical);
|
|
3555
|
+
noteStorageActivity();
|
|
3512
3556
|
});
|
|
3513
3557
|
}));
|
|
3514
3558
|
}
|
|
@@ -3536,8 +3580,22 @@ function recordCreatedWorktree(sql, repository, candidate) {
|
|
|
3536
3580
|
WHERE storage_owned_entries.state != 'removing' RETURNING id`).length !== 1) return yield* new StorageError({ detail: "Ownership capture refused to replace a pending cleanup. The creation outcome remains protected." });
|
|
3537
3581
|
});
|
|
3538
3582
|
}
|
|
3539
|
-
/**
|
|
3540
|
-
|
|
3583
|
+
/**
|
|
3584
|
+
* Storage admission for a path: refused while a chat's folder moves or checkout lifecycle work
|
|
3585
|
+
* fences it. Persistent tombstones prevent restart/resume from granting authority to a removed
|
|
3586
|
+
* checkout.
|
|
3587
|
+
*/
|
|
3588
|
+
function isStoragePathBlocked(sql, candidate, platform = process.platform, ignoredRelocationId) {
|
|
3589
|
+
return storagePathBlocker(sql, candidate, platform, ignoredRelocationId).pipe(Effect.map((blocker) => blocker !== null));
|
|
3590
|
+
}
|
|
3591
|
+
/** {@link isStoragePathBlocked}, with the reason, so admission can tell a retryable move apart. */
|
|
3592
|
+
function storagePathBlocker(sql, candidate, platform = process.platform, ignoredRelocationId) {
|
|
3593
|
+
return Effect.gen(function* () {
|
|
3594
|
+
if (yield* isProjectRelocationBlocked(sql, candidate, platform)) return "project-relocation";
|
|
3595
|
+
return (yield* isCheckoutPathBlocked(sql, candidate, platform, ignoredRelocationId)) ? "checkout" : null;
|
|
3596
|
+
});
|
|
3597
|
+
}
|
|
3598
|
+
function isCheckoutPathBlocked(sql, candidate, platform, ignoredRelocationId) {
|
|
3541
3599
|
const ancestors = [];
|
|
3542
3600
|
let current = path.resolve(candidate);
|
|
3543
3601
|
for (;;) {
|
|
@@ -3548,11 +3606,42 @@ function isStoragePathBlocked(sql, candidate, platform = process.platform) {
|
|
|
3548
3606
|
}
|
|
3549
3607
|
const matching = platform === "darwin" || platform === "win32" ? sql`path COLLATE NOCASE IN ${sql.in(ancestors)}` : sql.in("path", ancestors);
|
|
3550
3608
|
return Effect.gen(function* () {
|
|
3609
|
+
if (yield* isWorktreeRelocationBlocked(sql, candidate, platform, ignoredRelocationId)) return true;
|
|
3551
3610
|
if ((yield* sql`SELECT path FROM storage_owned_entries WHERE state IN ('removing', 'removed') AND ${matching} LIMIT 1`).length) return true;
|
|
3552
3611
|
const pending = yield* sql`SELECT path, identity_json FROM storage_owned_entries WHERE state = 'removing' LIMIT 257`;
|
|
3553
3612
|
return pending.length > 256 || pending.some((row) => removingPaths(row).some((root) => overlaps(root, path.resolve(candidate), platform)));
|
|
3554
3613
|
});
|
|
3555
3614
|
}
|
|
3615
|
+
/** Active moves fence both paths; completed moves permanently fence the old path. */
|
|
3616
|
+
function isWorktreeRelocationBlocked(sql, candidate, platform = process.platform, ignoredRelocationId) {
|
|
3617
|
+
return Effect.gen(function* () {
|
|
3618
|
+
if (!(yield* sql`SELECT 1 FROM sqlite_master WHERE type = 'table' AND name = 'managed_worktree_relocations'`).length) return false;
|
|
3619
|
+
const rows = yield* sql`
|
|
3620
|
+
SELECT source_path, destination_path, state FROM managed_worktree_relocations
|
|
3621
|
+
WHERE state IN ('moving', 'moved', 'attention', 'complete')
|
|
3622
|
+
AND worktree_id != ${ignoredRelocationId ?? ""}`;
|
|
3623
|
+
const resolved = path.resolve(candidate);
|
|
3624
|
+
return rows.some((row) => row.state === "complete" ? contains(row.source_path, resolved, platform) : overlaps(row.source_path, resolved, platform) || overlaps(row.destination_path, resolved, platform));
|
|
3625
|
+
});
|
|
3626
|
+
}
|
|
3627
|
+
/**
|
|
3628
|
+
* An unsettled chat promotion (`project_relocations` row `pending` or `moved`, see
|
|
3629
|
+
* `project/chatPromotion.ts`) fences everything at or below both of its paths, so no turn, provider
|
|
3630
|
+
* session or terminal starts in a folder that is moving. Promotion writes the row before it stops
|
|
3631
|
+
* sessions and closes terminals. Unlike a checkout move, ancestors stay usable: a project that
|
|
3632
|
+
* merely contains the chats folder is unrelated, and a write into a moving copy fails its
|
|
3633
|
+
* verification. Settled moves lift the fence; the project then points at its new root.
|
|
3634
|
+
*/
|
|
3635
|
+
function isProjectRelocationBlocked(sql, candidate, platform = process.platform) {
|
|
3636
|
+
return Effect.gen(function* () {
|
|
3637
|
+
if (!(yield* sql`SELECT 1 FROM sqlite_master WHERE type = 'table' AND name = 'project_relocations'`).length) return false;
|
|
3638
|
+
const rows = yield* sql`
|
|
3639
|
+
SELECT source_path, destination_path FROM project_relocations
|
|
3640
|
+
WHERE state IN ('pending', 'moved')`;
|
|
3641
|
+
const resolved = path.resolve(candidate);
|
|
3642
|
+
return rows.some((row) => contains(row.source_path, resolved, platform) || contains(row.destination_path, resolved, platform));
|
|
3643
|
+
});
|
|
3644
|
+
}
|
|
3556
3645
|
//#endregion
|
|
3557
3646
|
//#region src/atomicWrite.ts
|
|
3558
3647
|
const writeFileStringAtomically = (input) => Effect.scoped(Effect.gen(function* () {
|
|
@@ -3663,7 +3752,11 @@ function expandHomePath(value) {
|
|
|
3663
3752
|
}
|
|
3664
3753
|
//#endregion
|
|
3665
3754
|
//#region src/project/worktreeRoot.ts
|
|
3666
|
-
var WorktreeRootError = class extends Schema.TaggedError()("WorktreeRootError", {
|
|
3755
|
+
var WorktreeRootError = class extends Schema.TaggedError()("WorktreeRootError", {
|
|
3756
|
+
detail: Schema.String,
|
|
3757
|
+
/** `restricted`: the workspace access policy rejected it; `unusable`: the path itself is. */
|
|
3758
|
+
reason: Schema.optional(Schema.Literals(["unusable", "restricted"]))
|
|
3759
|
+
}) {
|
|
3667
3760
|
get message() {
|
|
3668
3761
|
return this.detail;
|
|
3669
3762
|
}
|
|
@@ -3693,6 +3786,8 @@ async function resolveWorktreePath(candidate) {
|
|
|
3693
3786
|
ancestor = parent;
|
|
3694
3787
|
}
|
|
3695
3788
|
}
|
|
3789
|
+
/** The canonical nearest existing ancestor; probes that need a real cwd run there. */
|
|
3790
|
+
const resolveExistingAncestor = async (candidate) => (await resolveWorktreePath(candidate)).existingAncestor;
|
|
3696
3791
|
/** One identity for existing and missing worktree paths; no writable-access requirement.
|
|
3697
3792
|
* Shared by destination locks, journal lookup and Git-registration comparisons.
|
|
3698
3793
|
*/
|
|
@@ -3703,23 +3798,37 @@ async function canonicalizeWorktreeDirectory(candidate) {
|
|
|
3703
3798
|
await access(resolved.existingAncestor, constants.W_OK | constants.X_OK);
|
|
3704
3799
|
return resolved.canonicalPath;
|
|
3705
3800
|
}
|
|
3706
|
-
|
|
3801
|
+
/**
|
|
3802
|
+
* Validate a node-local root setting (worktree root, chats folder). `label` names the setting in
|
|
3803
|
+
* user-facing errors.
|
|
3804
|
+
*/
|
|
3805
|
+
const validateWorktreeRoot = (value, policy, label = "Worktree root") => Effect.gen(function* () {
|
|
3707
3806
|
const trimmed = value.trim();
|
|
3708
3807
|
const expanded = expandHomePath(trimmed);
|
|
3709
|
-
if (!trimmed || /[\x00-\x1f\x7f]/.test(trimmed) || !path.isAbsolute(expanded) || process.platform === "win32" && !/^(?:[A-Za-z]:[\\/]|\\\\[^\\]+\\[^\\]+)/.test(expanded)) return yield* new WorktreeRootError({
|
|
3710
|
-
|
|
3808
|
+
if (!trimmed || /[\x00-\x1f\x7f]/.test(trimmed) || !path.isAbsolute(expanded) || process.platform === "win32" && !/^(?:[A-Za-z]:[\\/]|\\\\[^\\]+\\[^\\]+)/.test(expanded)) return yield* new WorktreeRootError({
|
|
3809
|
+
detail: `${label} must be an absolute directory on this node or start with ~/.`,
|
|
3810
|
+
reason: "unusable"
|
|
3811
|
+
});
|
|
3812
|
+
const operation = label.toLowerCase();
|
|
3813
|
+
const restricted = (cause) => new WorktreeRootError({
|
|
3814
|
+
detail: cause.message,
|
|
3815
|
+
reason: "restricted"
|
|
3816
|
+
});
|
|
3711
3817
|
const authorized = yield* policy.assertPath({
|
|
3712
3818
|
path: path.normalize(expanded),
|
|
3713
3819
|
operation
|
|
3714
|
-
}).pipe(Effect.mapError(
|
|
3820
|
+
}).pipe(Effect.mapError(restricted));
|
|
3715
3821
|
const canonical = yield* Effect.tryPromise({
|
|
3716
3822
|
try: () => canonicalizeWorktreeDirectory(authorized),
|
|
3717
|
-
catch: () => new WorktreeRootError({
|
|
3823
|
+
catch: () => new WorktreeRootError({
|
|
3824
|
+
detail: `${label} must resolve to a writable directory (or have a writable existing parent), without broken symlinks.`,
|
|
3825
|
+
reason: "unusable"
|
|
3826
|
+
})
|
|
3718
3827
|
});
|
|
3719
3828
|
return yield* policy.assertPath({
|
|
3720
3829
|
path: canonical,
|
|
3721
3830
|
operation
|
|
3722
|
-
}).pipe(Effect.mapError(
|
|
3831
|
+
}).pipe(Effect.mapError(restricted));
|
|
3723
3832
|
});
|
|
3724
3833
|
/** Storage selection only: this never grants access to the selected directory's contents. */
|
|
3725
3834
|
const selectConfiguredWorktreeRoot = (input) => (input.projectId && Object.hasOwn(input.settings.projectWorktreeRoots, input.projectId) ? input.settings.projectWorktreeRoots[input.projectId] : null) || input.settings.worktreeRoot || resolveManagedWorktreesRoot(input.config);
|
|
@@ -4089,12 +4198,13 @@ const makeServerSettings = Effect.gen(function* () {
|
|
|
4089
4198
|
updateSettings: (patch) => writeSemaphore.withPermits(1)(Effect.gen(function* () {
|
|
4090
4199
|
const current = yield* getSettingsFromCache;
|
|
4091
4200
|
const normalizedPatch = { ...patch };
|
|
4092
|
-
const validateRoot = (root) => validateWorktreeRoot(root, worktreeAccessPolicy).pipe(Effect.mapError((cause) => new ServerSettingsError({
|
|
4201
|
+
const validateRoot = (root, label) => validateWorktreeRoot(root, worktreeAccessPolicy, label).pipe(Effect.mapError((cause) => new ServerSettingsError({
|
|
4093
4202
|
settingsPath,
|
|
4094
4203
|
detail: cause.message,
|
|
4095
4204
|
cause
|
|
4096
4205
|
})));
|
|
4097
4206
|
if (patch.worktreeRoot) normalizedPatch.worktreeRoot = yield* validateRoot(patch.worktreeRoot);
|
|
4207
|
+
if (patch.chatsRoot) normalizedPatch.chatsRoot = yield* validateRoot(patch.chatsRoot, "Chats folder");
|
|
4098
4208
|
if (patch.projectWorktreeRoots !== void 0) {
|
|
4099
4209
|
const roots = [];
|
|
4100
4210
|
for (const [id, root] of Object.entries(patch.projectWorktreeRoots)) roots.push([id, root ? yield* validateRoot(root) : null]);
|
|
@@ -4417,4 +4527,4 @@ const providerTurnMetricAttributes = (input) => {
|
|
|
4417
4527
|
});
|
|
4418
4528
|
};
|
|
4419
4529
|
//#endregion
|
|
4420
|
-
export { makeWorkspaceAccessPolicy as $,
|
|
4530
|
+
export { makeWorkspaceAccessPolicy as $, resolvePromptInjectedEffort as $t, runtimeQueueBlockedDuration as A, DEFAULT_HUB_CONNECTOR_CONFIG as At, startupCommandGateQueueHighWater as B, resolveStaticDir as Bt, providerStartupQueueHighWater as C, captureWorktreeIdentity as Ct, providerTurnsTotal as D, mintStorageCleanupClaim as Dt, providerTurnMetricAttributes as E, removeVerifiedWorktree as Et, runtimeQueueHighWater as F, ensureServerDirectories as Ft, LocalDiagnosticsMetrics as G, getModelSelectionBooleanOptionValue as Gt, terminalRestartsTotal as H, applyClaudePromptEffortPrefix as Ht, runtimeQueueOverflowsTotal as I, resolveHubConnectorConfig as It, outcomeFromExit as J, getProviderOptionCurrentValue as Jt, LocalDiagnosticsMetricsLive as K, getModelSelectionStringOptionValue as Kt, runtimeQueueRecoveriesTotal as L, resolveManagedChatsRoot as Lt, runtimeQueueDepth as M, RuntimeMode as Mt, runtimeQueueDequeuesTotal as N, ServerConfig as Nt, rpcRequestDuration as O, acquireStorageSettingsLease as Ot, runtimeQueueEnqueuesTotal as P, deriveServerPaths as Pt, WorkspaceAccessPolicyLive as Q, normalizeModelSlug as Qt, startupCommandGateEnqueuesTotal as R, resolveManagedWorktreesRoot as Rt, providerStartupQueueDepth as S, assertCleanWorktree as St, providerTurnDuration as T, removeQuarantinedTemporaryDirectory as Tt, terminalSessionsTotal as U, createModelCapabilities as Ut, startupCommandGateQueueWaitDuration as V, parsePersistedServerObservabilitySettings as Vt, withMetrics as W, getModelDisplayLabel as Wt, ServerSettingsService as X, getProviderOptionStringSelectionValue as Xt, ServerSettingsLive as Y, getProviderOptionDescriptors as Yt, redactServerSettingsForClient as Z, modelSelectionRequiresContextHandoff as Zt, providerRuntimeEventsTotal as _, recordCreatedWorktree as _t, contextHandoffsTotal as a, equalNodeIdentityBytes as an, validateWorktreeRoot as at, providerStaleStopTimeoutsTotal as b, storagePathBlocker as bt, increment as c, normalizeHubNodeName as cn, ServerSecretStore as ct, orchestrationCommandAckDuration as d, encode as dn, acquireWorktreeCreationLease as dt, sameModelSelection as en, WorkspaceAccessPolicy as et, orchestrationCommandDuration as f, rfc8949EncodeOptions as fn, canonicalStoragePath as ft, providerMetricAttributes as g, noteStorageActivity as gt, providerEventLogRecordsDroppedTotal as h, isWorktreeRelocationBlocked as ht, contextHandoffPreparationDuration as i, encodeNodeKeyRotationTranscript as in, selectConfiguredWorktreeRoot as it, runtimeQueueCoalescedTotal as j, DEFAULT_PORT as jt, rpcRequestsTotal as k, hasStorageSettingsUpdateLease as kt, metricAttributes as l, Tokeniser as ln, writeFileStringAtomically as lt, orchestrationEventsProcessedTotal as m, isStoragePathBlocked as mt, contextHandoffContextEntriesTotal as n, encodeNativeNodeClaimTranscript as nn, resolveConfiguredWorktreeRoot as nt, gitCommandDuration as o, fingerprintNodePublicKey as on, expandHomePath as ot, orchestrationCommandsTotal as p, Type as pn, hasWorktreeCreationLease as pt, compactTraceAttributes as q, getProviderOptionBooleanSelectionValue as qt, contextHandoffDispatchDuration as r, encodeNodeAuthenticationTranscript as rn, resolveExistingAncestor as rt, gitCommandsTotal as s, formatNodePublicKeyFingerprint as sn, ServerSecretStoreLive as st, contextHandoffContextBytesTotal as t, canonicalizeHubOrigin as tn, canonicalizeWorktreePath as tt, metricNames as u, decode as un, acquireStoragePathUseLease as ut, providerRuntimeStaleEventsTotal as v, storageActivityVersion as vt, providerStartupQueueWaitDuration as w, measureDirectory as wt, providerStartupAdmissionTotal as x, assertCanonicalPath as xt, providerSessionsTotal as y, storageLifecycleLock as yt, startupCommandGateQueueDepth as z, resolveNodeE2eePolicyConfig as zt };
|