@codingame/monaco-vscode-workbench-service-override 37.6.0 → 38.0.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.
Files changed (324) hide show
  1. package/common.js +2 -0
  2. package/index.js +9 -10
  3. package/package.json +10 -10
  4. package/session.js +45 -42
  5. package/vscode/src/vs/platform/agentHost/common/sessionComparisonPrompts.d.ts +1 -0
  6. package/vscode/src/vs/platform/agentHost/common/sessionComparisonPrompts.js +12 -0
  7. package/vscode/src/vs/sessions/browser/{singlePaneWorkbench.d.ts → desktopWorkbench.d.ts} +6 -5
  8. package/vscode/src/vs/sessions/browser/{singlePaneWorkbench.js → desktopWorkbench.js} +23 -25
  9. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.d.ts +5 -2
  10. package/vscode/src/vs/sessions/browser/dockedAuxiliaryBarController.js +41 -3
  11. package/vscode/src/vs/sessions/browser/layoutActions.js +25 -41
  12. package/vscode/src/vs/sessions/browser/mobileWorkbench.d.ts +4 -0
  13. package/vscode/src/vs/sessions/browser/mobileWorkbench.js +10 -0
  14. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.d.ts +10 -5
  15. package/vscode/src/vs/sessions/browser/parts/chatCompositeBar.js +138 -34
  16. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.d.ts +2 -0
  17. package/vscode/src/vs/sessions/browser/parts/chatGroupDropTarget.js +13 -5
  18. package/vscode/src/vs/sessions/browser/parts/chatGroupView.d.ts +27 -5
  19. package/vscode/src/vs/sessions/browser/parts/chatGroupView.js +129 -28
  20. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.d.ts +22 -7
  21. package/vscode/src/vs/sessions/browser/parts/chatGroupsView.js +260 -21
  22. package/vscode/src/vs/sessions/browser/parts/chatHeader.d.ts +25 -0
  23. package/vscode/src/vs/sessions/browser/parts/chatHeader.js +42 -0
  24. package/vscode/src/vs/sessions/browser/parts/customViewGridPart.js +9 -1
  25. package/vscode/src/vs/sessions/browser/parts/customViewNode.js +1 -1
  26. package/vscode/src/vs/sessions/browser/parts/{singlePaneAuxiliaryBarPart.d.ts → desktopAuxiliaryBarPart.d.ts} +4 -4
  27. package/vscode/src/vs/sessions/browser/parts/desktopAuxiliaryBarPart.js +26 -0
  28. package/vscode/src/vs/sessions/browser/parts/{singlePaneEditorPart.d.ts → desktopEditorPart.d.ts} +8 -6
  29. package/vscode/src/vs/sessions/browser/parts/{singlePaneEditorPart.js → desktopEditorPart.js} +25 -5
  30. package/vscode/src/vs/sessions/browser/parts/editorPart.js +16 -4
  31. package/vscode/src/vs/sessions/browser/parts/editorParts.d.ts +1 -1
  32. package/vscode/src/vs/sessions/browser/parts/editorParts.js +7 -6
  33. package/vscode/src/vs/sessions/browser/parts/gridGap.d.ts +14 -0
  34. package/vscode/src/vs/sessions/browser/parts/gridGap.js +69 -0
  35. package/vscode/src/vs/sessions/browser/parts/media/chatCompositeBar.css +132 -4
  36. package/vscode/src/vs/sessions/browser/parts/media/chatGroupsView.css +10 -0
  37. package/vscode/src/vs/sessions/browser/parts/media/editorPart.css +46 -2
  38. package/vscode/src/vs/sessions/browser/parts/media/sessionReadOnlyBanner.css +3 -3
  39. package/vscode/src/vs/sessions/browser/parts/media/sessionView.css +45 -48
  40. package/vscode/src/vs/sessions/browser/parts/media/sessionsPart.css +15 -0
  41. package/vscode/src/vs/sessions/browser/parts/menubar.contribution.js +8 -8
  42. package/vscode/src/vs/sessions/browser/parts/mobile/mobileSessionsPart.js +1 -1
  43. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.d.ts +9 -1
  44. package/vscode/src/vs/sessions/browser/parts/remoteHostUnavailableEmptyState.js +21 -3
  45. package/vscode/src/vs/sessions/browser/parts/sessionBarStyles.js +1 -1
  46. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.d.ts +4 -3
  47. package/vscode/src/vs/sessions/browser/parts/sessionDropTarget.js +29 -15
  48. package/vscode/src/vs/sessions/browser/parts/sessionGridLayout.d.ts +67 -0
  49. package/vscode/src/vs/sessions/browser/parts/sessionGridLayout.js +598 -0
  50. package/vscode/src/vs/sessions/browser/parts/sessionHeader.d.ts +11 -84
  51. package/vscode/src/vs/sessions/browser/parts/sessionHeader.js +37 -317
  52. package/vscode/src/vs/sessions/browser/parts/sessionHeaderBar.d.ts +103 -0
  53. package/vscode/src/vs/sessions/browser/parts/sessionHeaderBar.js +391 -0
  54. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.d.ts +6 -4
  55. package/vscode/src/vs/sessions/browser/parts/sessionReadOnlyBanner.js +58 -28
  56. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.d.ts +4 -0
  57. package/vscode/src/vs/sessions/browser/parts/sessionRemoteConnection.js +66 -23
  58. package/vscode/src/vs/sessions/browser/parts/sessionView.d.ts +24 -5
  59. package/vscode/src/vs/sessions/browser/parts/sessionView.js +143 -33
  60. package/vscode/src/vs/sessions/browser/parts/sessionsPart.d.ts +25 -19
  61. package/vscode/src/vs/sessions/browser/parts/sessionsPart.js +157 -58
  62. package/vscode/src/vs/sessions/browser/parts/sessionsParts.d.ts +12 -3
  63. package/vscode/src/vs/sessions/browser/parts/sessionsParts.js +17 -2
  64. package/vscode/src/vs/sessions/browser/sessionWorkspace.d.ts +6 -3
  65. package/vscode/src/vs/sessions/browser/sessionWorkspace.js +2 -2
  66. package/vscode/src/vs/sessions/browser/sessionsSetUpService.js +66 -20
  67. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.d.ts +1 -0
  68. package/vscode/src/vs/sessions/browser/sessionsSignInDialog.js +5 -4
  69. package/vscode/src/vs/sessions/browser/workbenchFactory.d.ts +12 -0
  70. package/vscode/src/vs/sessions/browser/workbenchFactory.js +17 -0
  71. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.d.ts +85 -1
  72. package/vscode/src/vs/sessions/contrib/accountMenu/browser/account.contribution.js +118 -100
  73. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.d.ts +3 -2
  74. package/vscode/src/vs/sessions/contrib/accountMenu/browser/chatPetAchievementBadges.js +39 -34
  75. package/vscode/src/vs/sessions/contrib/accountMenu/browser/media/accountTitleBarWidget.css +6 -0
  76. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.d.ts +3 -0
  77. package/vscode/src/vs/sessions/contrib/agentFeedback/browser/nullAgentFeedbackService.contribution.js +6 -0
  78. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeView.contribution.js +18 -18
  79. package/vscode/src/vs/sessions/contrib/aiCustomizationTreeView/browser/aiCustomizationTreeViewViews.js +12 -12
  80. package/vscode/src/vs/sessions/contrib/applyCommitsToParentRepo/browser/applyChangesToParentRepo.js +7 -7
  81. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquarium.contribution.js +12 -12
  82. package/vscode/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.js +10 -10
  83. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.d.ts +78 -8
  84. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialog.js +1166 -202
  85. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.d.ts +11 -1
  86. package/vscode/src/vs/sessions/contrib/automations/browser/automationDialogService.js +190 -69
  87. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.d.ts +11 -9
  88. package/vscode/src/vs/sessions/contrib/automations/browser/automationRunner.js +122 -233
  89. package/vscode/src/vs/sessions/contrib/automations/browser/automationTelemetry.d.ts +22 -0
  90. package/vscode/src/vs/sessions/contrib/automations/browser/automationTelemetry.js +62 -0
  91. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.d.ts +7 -2
  92. package/vscode/src/vs/sessions/contrib/automations/browser/automationTools.js +172 -84
  93. package/vscode/src/vs/sessions/contrib/automations/browser/automations.contribution.js +17 -7
  94. package/vscode/src/vs/sessions/contrib/automations/browser/media/automationDialog.css +242 -60
  95. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.d.ts +24 -36
  96. package/vscode/src/vs/sessions/contrib/automations/browser/providerAutomationService.js +104 -420
  97. package/vscode/src/vs/sessions/contrib/changes/browser/changes.contribution.js +15 -14
  98. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.d.ts +13 -3
  99. package/vscode/src/vs/sessions/contrib/changes/browser/changesActions.js +66 -43
  100. package/vscode/src/vs/sessions/contrib/changes/browser/changesMultiDiffSourceResolver.js +2 -7
  101. package/vscode/src/vs/sessions/contrib/changes/browser/changesViewActions.js +54 -59
  102. package/vscode/src/vs/sessions/contrib/changes/browser/changesetReviewActions.js +7 -7
  103. package/vscode/src/vs/sessions/contrib/changes/browser/media/changesActions.css +6 -0
  104. package/vscode/src/vs/sessions/contrib/changes/browser/sessionSyncChanges.js +25 -21
  105. package/vscode/src/vs/sessions/contrib/changes/browser/sessionsChangesAccessibilityHelp.js +21 -27
  106. package/vscode/src/vs/sessions/contrib/chat/browser/sessionChatInputToolbarDebug.js +17 -17
  107. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.d.ts +5 -5
  108. package/vscode/src/vs/sessions/contrib/chat/browser/sessionTaskRunner.js +2 -2
  109. package/vscode/src/vs/sessions/contrib/chatDebug/browser/chatDebug.contribution.js +2 -2
  110. package/vscode/src/vs/sessions/contrib/codeReview/browser/codeReview.contributions.js +9 -16
  111. package/vscode/src/vs/sessions/contrib/customViewTest/browser/customViewTest.contribution.js +7 -7
  112. package/vscode/src/vs/sessions/contrib/editor/browser/addTabActions.js +15 -13
  113. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.d.ts +13 -1
  114. package/vscode/src/vs/sessions/contrib/editor/browser/editor.contribution.js +104 -117
  115. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.contribution.js +8 -7
  116. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditor.js +5 -5
  117. package/vscode/src/vs/sessions/contrib/editor/browser/emptyFileEditorInput.js +1 -1
  118. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorBreadcrumbs.css +0 -1
  119. package/vscode/src/vs/sessions/contrib/editor/browser/media/editorHeader.css +1 -1
  120. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.d.ts +7 -0
  121. package/vscode/src/vs/sessions/contrib/files/browser/files.contribution.js +77 -13
  122. package/vscode/src/vs/sessions/contrib/files/browser/filesView.d.ts +2 -1
  123. package/vscode/src/vs/sessions/contrib/files/browser/filesView.js +14 -4
  124. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.d.ts +45 -10
  125. package/vscode/src/vs/sessions/contrib/layout/browser/baseSessionLayoutController.js +527 -96
  126. package/vscode/src/vs/sessions/contrib/layout/browser/chatLayoutOwnerKeys.d.ts +18 -0
  127. package/vscode/src/vs/sessions/contrib/layout/browser/chatLayoutOwnerKeys.js +95 -0
  128. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDetailPanelCoordinator.d.ts → desktop/desktopDetailPanelCoordinator.d.ts} +5 -4
  129. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDetailPanelCoordinator.js → desktop/desktopDetailPanelCoordinator.js} +10 -7
  130. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDockedTabsCoordinator.d.ts → desktop/desktopDockedTabsCoordinator.d.ts} +15 -12
  131. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDockedTabsCoordinator.js → desktop/desktopDockedTabsCoordinator.js} +91 -44
  132. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDraftSessionStrategy.d.ts → desktop/desktopDraftSessionStrategy.d.ts} +10 -5
  133. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneDraftSessionStrategy.js → desktop/desktopDraftSessionStrategy.js} +95 -22
  134. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneExistingSessionStrategy.d.ts → desktop/desktopExistingSessionStrategy.d.ts} +13 -11
  135. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneExistingSessionStrategy.js → desktop/desktopExistingSessionStrategy.js} +137 -57
  136. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneLayoutStrategy.d.ts → desktop/desktopLayoutStrategy.d.ts} +22 -13
  137. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneLayoutStrategy.js → desktop/desktopLayoutStrategy.js} +2 -2
  138. package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopOwnerCompositionStore.d.ts +22 -0
  139. package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopOwnerCompositionStore.js +136 -0
  140. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneSharedHelpers.d.ts → desktop/desktopSharedHelpers.d.ts} +9 -2
  141. package/vscode/src/vs/sessions/contrib/layout/browser/desktop/desktopSharedHelpers.js +56 -0
  142. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneVisibilityProfileStore.d.ts → desktop/desktopVisibilityProfileStore.d.ts} +3 -2
  143. package/vscode/src/vs/sessions/contrib/layout/browser/{singlePane/singlePaneVisibilityProfileStore.js → desktop/desktopVisibilityProfileStore.js} +10 -9
  144. package/vscode/src/vs/sessions/contrib/layout/browser/desktopLayoutController.d.ts +71 -0
  145. package/vscode/src/vs/sessions/contrib/layout/browser/desktopLayoutController.js +201 -0
  146. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.d.ts +8 -1
  147. package/vscode/src/vs/sessions/contrib/layout/browser/sessions.layout.contribution.js +35 -35
  148. package/vscode/src/vs/sessions/contrib/layout/common/sessionEditorWorkingSet.d.ts +39 -0
  149. package/vscode/src/vs/sessions/contrib/layout/common/sessionEditorWorkingSet.js +73 -0
  150. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.d.ts +42 -1
  151. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionTourContribution.js +14 -10
  152. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourContribution.js +3 -4
  153. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.d.ts +2 -2
  154. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewTourTrigger.js +13 -9
  155. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourContribution.js +20 -5
  156. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourVariation.d.ts +8 -0
  157. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV2TourVariation.js +19 -0
  158. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/newSessionViewV3Prompt.js +21 -20
  159. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.js +10 -5
  160. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.js +12 -8
  161. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.d.ts +3 -1
  162. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTourShared.js +12 -7
  163. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.d.ts +9 -1
  164. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV2Tour.js +46 -19
  165. package/vscode/src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewV3Tour.js +2 -0
  166. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/media/sessionsPolicyBlocked.css +33 -0
  167. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.d.ts +4 -2
  168. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.js +29 -8
  169. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.d.ts +15 -2
  170. package/vscode/src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.js +169 -32
  171. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostForkActions.js +30 -8
  172. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionBranchActions.js +8 -34
  173. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentMergeActions.js +63 -49
  174. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/exportDebugLogsAction.js +1 -1
  175. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatInputConfigPicker.js +31 -17
  176. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnostics.contribution.d.ts +32 -0
  177. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnostics.contribution.js +250 -0
  178. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsLogs.d.ts +6 -0
  179. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsLogs.js +52 -0
  180. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsReport.d.ts +51 -0
  181. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsReport.js +439 -0
  182. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsService.d.ts +45 -0
  183. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/connectionDiagnosticsService.js +595 -0
  184. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.d.ts +20 -3
  185. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerAgentHostService.js +360 -46
  186. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerSource.d.ts +9 -0
  187. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/devContainerSource.js +59 -0
  188. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/media/connectionDiagnostics.css +201 -0
  189. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/getRemoteSessionTool.d.ts +10 -0
  190. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/getRemoteSessionTool.js +70 -0
  191. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionChatService.d.ts +20 -0
  192. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionChatService.js +104 -0
  193. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionInspector.d.ts +15 -0
  194. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionInspector.js +152 -0
  195. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionMessageRouter.d.ts +49 -0
  196. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionMessageRouter.js +340 -0
  197. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionService.d.ts +41 -0
  198. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionService.js +400 -0
  199. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionSource.d.ts +28 -0
  200. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionSource.js +178 -0
  201. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionTools.d.ts +17 -0
  202. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessionTools.js +206 -0
  203. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessions.contribution.d.ts +1 -0
  204. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/remoteSessions.contribution.js +58 -0
  205. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/sendRemoteMessageTool.d.ts +10 -0
  206. package/vscode/src/vs/sessions/contrib/remoteSessions/browser/sendRemoteMessageTool.js +90 -0
  207. package/vscode/src/vs/sessions/contrib/remoteSessions/common/remoteSessionInspection.d.ts +38 -0
  208. package/vscode/src/vs/sessions/contrib/remoteSessions/common/remoteSessionInspection.js +58 -0
  209. package/vscode/src/vs/sessions/contrib/search/browser/search.contribution.js +4 -5
  210. package/vscode/src/vs/sessions/contrib/search/browser/searchEditorEmptyState.contribution.js +1 -1
  211. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparison.contribution.d.ts +1 -0
  212. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparison.contribution.js +33 -0
  213. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonGridController.d.ts +30 -0
  214. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonGridController.js +190 -0
  215. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonTool.d.ts +31 -0
  216. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonTool.js +559 -0
  217. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonViewService.d.ts +12 -0
  218. package/vscode/src/vs/sessions/contrib/sessionComparison/browser/sessionComparisonViewService.js +38 -0
  219. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.d.ts +13 -4
  220. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsIndicatorModel.js +155 -22
  221. package/vscode/src/vs/sessions/contrib/sessions/browser/blockedSessionsList.js +9 -5
  222. package/vscode/src/vs/sessions/contrib/sessions/browser/media/automationsCards.css +90 -25
  223. package/vscode/src/vs/sessions/contrib/sessions/browser/media/sessionsTitleBarWidget.css +21 -4
  224. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.d.ts +2 -1
  225. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionDetailsAction.js +11 -7
  226. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.d.ts +116 -1
  227. package/vscode/src/vs/sessions/contrib/sessions/browser/sessions.contribution.js +126 -30
  228. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsAccountTelemetry.d.ts +26 -0
  229. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsAccountTelemetry.js +160 -0
  230. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.d.ts +14 -6
  231. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsActions.js +555 -151
  232. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.d.ts +192 -0
  233. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsLifecycleTracker.js +510 -0
  234. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.d.ts +6 -7
  235. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTelemetry.contribution.js +64 -57
  236. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.d.ts +5 -3
  237. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsTitleBarWidget.js +83 -51
  238. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.d.ts +5 -1
  239. package/vscode/src/vs/sessions/contrib/sessions/browser/sessionsWindowNotifier.js +33 -12
  240. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationCataloguePresentation.d.ts +3 -0
  241. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationCataloguePresentation.js +53 -0
  242. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationTemplates.js +10 -10
  243. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.d.ts +2 -2
  244. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.js +103 -55
  245. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.d.ts +7 -1
  246. package/vscode/src/vs/sessions/contrib/sessions/browser/views/automationsView.js +679 -325
  247. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.d.ts +27 -1
  248. package/vscode/src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.js +508 -163
  249. package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.d.ts +20 -2
  250. package/vscode/src/vs/sessions/contrib/terminal/browser/agentHostSessionTaskRunner.js +100 -17
  251. package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.d.ts +5 -1
  252. package/vscode/src/vs/sessions/contrib/terminal/browser/sessionsTerminalContribution.js +108 -30
  253. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.d.ts +5 -3
  254. package/vscode/src/vs/sessions/contrib/workspace/browser/workspaceFolderManagement.js +47 -35
  255. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.d.ts +9 -4
  256. package/vscode/src/vs/sessions/services/agentHostFilter/browser/agentHostFilterService.js +75 -25
  257. package/vscode/src/vs/sessions/services/customView/browser/customViewService.d.ts +11 -4
  258. package/vscode/src/vs/sessions/services/customView/browser/customViewService.js +17 -9
  259. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.d.ts +5 -0
  260. package/vscode/src/vs/sessions/services/sessions/browser/closedItemHistory.js +20 -2
  261. package/vscode/src/vs/sessions/services/sessions/browser/sessionComparisonService.d.ts +75 -0
  262. package/vscode/src/vs/sessions/services/sessions/browser/sessionComparisonService.js +1135 -0
  263. package/vscode/src/vs/sessions/services/sessions/browser/sessionGridState.d.ts +17 -0
  264. package/vscode/src/vs/sessions/services/sessions/browser/sessionGridState.js +99 -0
  265. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.d.ts +4 -0
  266. package/vscode/src/vs/sessions/services/sessions/browser/sessionGroupsService.js +88 -23
  267. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.d.ts +19 -26
  268. package/vscode/src/vs/sessions/services/sessions/browser/sessionNavigation.js +115 -74
  269. package/vscode/src/vs/sessions/services/sessions/browser/sessionsListModelService.js +1 -1
  270. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.d.ts +22 -7
  271. package/vscode/src/vs/sessions/services/sessions/browser/sessionsManagementService.js +278 -60
  272. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.d.ts +17 -20
  273. package/vscode/src/vs/sessions/services/sessions/browser/sessionsRecencyHistory.js +33 -22
  274. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.d.ts +28 -8
  275. package/vscode/src/vs/sessions/services/sessions/browser/sessionsService.js +673 -160
  276. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.d.ts +13 -4
  277. package/vscode/src/vs/sessions/services/sessions/browser/visibleSessions.js +105 -15
  278. package/vscode/src/vs/sessions/services/sessions/common/sessionContextKeys.js +53 -34
  279. package/vscode/src/vs/sessions/services/workspaceFolderLabel/browser/workspaceFolderLabelService.js +1 -1
  280. package/vscode/src/vs/workbench/browser/layout.d.ts +46 -70
  281. package/vscode/src/vs/workbench/browser/layout.js +243 -44
  282. package/vscode/src/vs/workbench/browser/workbench.d.ts +1 -3
  283. package/vscode/src/vs/workbench/browser/workbench.js +26 -24
  284. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.d.ts +6 -0
  285. package/vscode/src/vs/workbench/contrib/chat/common/automations/schedule.js +41 -0
  286. package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.d.ts +15 -0
  287. package/vscode/src/vs/workbench/contrib/chat/common/chatUsage.js +56 -0
  288. package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.d.ts +0 -18
  289. package/vscode/src/vs/platform/agentHost/common/meta/agentCheckoutOperationMeta.js +0 -27
  290. package/vscode/src/vs/sessions/browser/parts/singlePaneAuxiliaryBarPart.js +0 -36
  291. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.d.ts +0 -37
  292. package/vscode/src/vs/sessions/contrib/automations/browser/automationLeaderElection.js +0 -126
  293. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.d.ts +0 -59
  294. package/vscode/src/vs/sessions/contrib/automations/browser/automationScheduler.js +0 -232
  295. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.d.ts +0 -13
  296. package/vscode/src/vs/sessions/contrib/automations/browser/automationStorageService.js +0 -22
  297. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.d.ts +0 -45
  298. package/vscode/src/vs/sessions/contrib/blockedSessions/browser/blockedSessions.js +0 -110
  299. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.d.ts +0 -112
  300. package/vscode/src/vs/sessions/contrib/layout/browser/desktopSessionLayoutController.js +0 -444
  301. package/vscode/src/vs/sessions/contrib/layout/browser/singlePane/singlePaneSharedHelpers.js +0 -43
  302. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.d.ts +0 -55
  303. package/vscode/src/vs/sessions/contrib/layout/browser/singlePaneLayoutController.js +0 -91
  304. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.d.ts +0 -26
  305. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostClaudePermissionModePicker.js +0 -98
  306. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.d.ts +0 -33
  307. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostCodexApprovalsPicker.js +0 -98
  308. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.d.ts +0 -2
  309. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModeIcon.js +0 -13
  310. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.d.ts +0 -122
  311. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostModePicker.js +0 -464
  312. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.d.ts +0 -35
  313. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerActionItem.js +0 -90
  314. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.d.ts +0 -84
  315. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostPermissionPickerDelegate.js +0 -328
  316. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.d.ts +0 -174
  317. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/agentHostSessionConfigPicker.js +0 -1390
  318. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/media/agentHostSessionConfigPicker.css +0 -44
  319. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.d.ts +0 -30
  320. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileAgentHostModePicker.js +0 -78
  321. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.d.ts +0 -11
  322. package/vscode/src/vs/sessions/contrib/providers/agentHost/browser/mobile/mobileChatPhoneInputTarget.js +0 -26
  323. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.d.ts +0 -27
  324. package/vscode/src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostConnectionCustomization.js +0 -26
@@ -46,8 +46,8 @@
46
46
  * shrinks gracefully on narrow viewports.
47
47
  *
48
48
  * Padding is stripped (vs. the base 8px) so our `.automation-titlebar`
49
- * stripe can paint edge-to-edge inside the dialog body. The form pane
50
- * re-adds its own padding.
49
+ * can sit edge-to-edge inside the dialog body. The form pane re-adds
50
+ * its own padding.
51
51
  *
52
52
  * Note: `extraClasses` on Dialog adds the class to `.monaco-dialog-box`
53
53
  * itself (not an ancestor), so we attach the rule directly here.
@@ -71,7 +71,7 @@
71
71
  * Float the close-X over the titlebar so the title text sits flush
72
72
  * with the top edge of the modal (QuickInput-style). Without this,
73
73
  * `.dialog-toolbar-row` reserves ~24px of dead space above the title.
74
- * `z-index` keeps the X above the sticky titlebar.
74
+ * `z-index` keeps the X above the titlebar.
75
75
  */
76
76
  .monaco-dialog-box.automation-dialog .dialog-toolbar-row {
77
77
  position: absolute;
@@ -84,8 +84,10 @@
84
84
 
85
85
  .automation-dialog-body {
86
86
  display: flex;
87
+ flex: 1 1 auto;
87
88
  flex-direction: column;
88
89
  min-height: 0;
90
+ overflow: hidden;
89
91
  }
90
92
 
91
93
  .monaco-dialog-box.automation-dialog > .dialog-buttons-row:not(.automation-dialog-footer-row) {
@@ -94,12 +96,24 @@
94
96
 
95
97
  .monaco-dialog-box.automation-dialog > .automation-dialog-footer-row {
96
98
  flex-grow: 0;
99
+ flex-direction: row;
100
+ align-items: center;
97
101
  margin-top: 0;
98
102
  padding: 8px 10px 10px;
99
103
  }
100
104
 
101
105
  .monaco-dialog-box.automation-dialog:not(.align-vertical) > .automation-dialog-footer-row > .automation-dialog-footer-actions {
102
- margin-left: 0;
106
+ flex: 0 0 auto;
107
+ width: auto;
108
+ margin-left: auto;
109
+ }
110
+
111
+ .monaco-dialog-box.automation-dialog > .automation-dialog-footer-row > .automation-dialog-footer-note {
112
+ flex: 1 1 auto;
113
+ min-width: 0;
114
+ margin: 0 var(--vscode-spacing-size120) 0 var(--vscode-spacing-size160);
115
+ color: var(--vscode-descriptionForeground);
116
+ font-size: var(--vscode-fontSize-label1);
103
117
  }
104
118
 
105
119
  /*
@@ -107,9 +121,9 @@
107
121
  * our titlebar can full-bleed. The form pane below re-adds horizontal
108
122
  * padding so the form fields don't crash into the dialog edge.
109
123
  *
110
- * Container still owns the scrolling (per base/.../dialog.css), so
111
- * the titlebar uses `position: sticky; top: 0` to stay visible as the
112
- * form scrolls underneath it.
124
+ * The base message container normally owns scrolling. This dialog
125
+ * clips it instead and delegates scrolling to `.automation-dialog-scrollable`
126
+ * so the titlebar stays outside the scrolling form.
113
127
  */
114
128
  .monaco-dialog-box.automation-dialog .dialog-message-row {
115
129
  padding: 0;
@@ -132,30 +146,25 @@
132
146
  */
133
147
  flex: 1 1 auto;
134
148
  min-width: 0;
149
+ overflow: hidden;
135
150
  }
136
151
 
137
- /*
138
- * Titlebar background matches the dialog body so the header reads as
139
- * part of the modal, with no contrasting stripe. Both are anchored to
140
- * `editorWidget.background`, the dialog widget's own native background
141
- * (see defaultDialogStyles), so the header and body are always the same
142
- * color in every theme. Set explicitly (not transparent) because the
143
- * titlebar is sticky. A transparent background would let scrolled form
144
- * content show through. No `border-bottom`. Sticky so the title stays
145
- * in view as the form scrolls (the dialog's message-container is the
146
- * scroll host).
147
- */
148
152
  .automation-titlebar {
149
- position: sticky;
150
- top: 0;
151
- z-index: 1;
153
+ flex: 0 0 auto;
152
154
  /* Right padding reserves room for the floating close-X chip. */
153
155
  padding: 8px 36px 8px 14px;
154
156
  text-align: left;
155
157
  font-weight: var(--vscode-fontWeight-semiBold);
156
158
  font-size: var(--vscode-fontSize-heading2);
157
159
  color: var(--vscode-editorWidget-foreground);
158
- background-color: var(--vscode-editorWidget-background);
160
+ }
161
+
162
+ .automation-dialog-scrollable {
163
+ flex: 1 1 auto;
164
+ min-width: 0;
165
+ min-height: 0;
166
+ overflow-x: hidden;
167
+ overflow-y: auto;
159
168
  }
160
169
 
161
170
  .automation-description {
@@ -174,33 +183,32 @@
174
183
 
175
184
  /*
176
185
  * Theme the native overflow scrollbar on the dialog body so it matches
177
- * the rest of VS Code. .dialog-message-container is the scroll host
178
- * (see base/browser/ui/dialog/dialog.css). Without this the dialog
186
+ * the rest of VS Code. Without this the dialog
179
187
  * shows the platform's default scrollbar which clashes visually with
180
188
  * the chat input embedded above.
181
189
  */
182
- .monaco-dialog-box.automation-dialog .dialog-message-row .dialog-message-container::-webkit-scrollbar {
190
+ .monaco-dialog-box.automation-dialog .automation-dialog-scrollable::-webkit-scrollbar {
183
191
  width: 10px;
184
192
  }
185
193
 
186
- .monaco-dialog-box.automation-dialog .dialog-message-row .dialog-message-container::-webkit-scrollbar-track {
194
+ .monaco-dialog-box.automation-dialog .automation-dialog-scrollable::-webkit-scrollbar-track {
187
195
  background-color: transparent;
188
196
  }
189
197
 
190
- .monaco-dialog-box.automation-dialog .dialog-message-row .dialog-message-container::-webkit-scrollbar-thumb {
198
+ .monaco-dialog-box.automation-dialog .automation-dialog-scrollable::-webkit-scrollbar-thumb {
191
199
  min-height: 20px;
192
200
  background-color: var(--vscode-scrollbarSlider-background);
193
201
  }
194
202
 
195
- .monaco-dialog-box.automation-dialog .dialog-message-row .dialog-message-container::-webkit-scrollbar-thumb:hover {
203
+ .monaco-dialog-box.automation-dialog .automation-dialog-scrollable::-webkit-scrollbar-thumb:hover {
196
204
  background-color: var(--vscode-scrollbarSlider-hoverBackground);
197
205
  }
198
206
 
199
- .monaco-dialog-box.automation-dialog .dialog-message-row .dialog-message-container::-webkit-scrollbar-thumb:active {
207
+ .monaco-dialog-box.automation-dialog .automation-dialog-scrollable::-webkit-scrollbar-thumb:active {
200
208
  background-color: var(--vscode-scrollbarSlider-activeBackground);
201
209
  }
202
210
 
203
- .monaco-dialog-box.automation-dialog .dialog-message-row .dialog-message-container::-webkit-scrollbar-corner {
211
+ .monaco-dialog-box.automation-dialog .automation-dialog-scrollable::-webkit-scrollbar-corner {
204
212
  display: none;
205
213
  }
206
214
 
@@ -237,19 +245,59 @@
237
245
  padding: 2px 2px 4px;
238
246
  }
239
247
 
248
+ .automation-provider-details {
249
+ color: var(--vscode-descriptionForeground);
250
+ font-size: var(--vscode-fontSize-label1);
251
+ }
252
+
253
+ .automation-provider-tools {
254
+ display: flex;
255
+ flex-wrap: wrap;
256
+ gap: var(--vscode-spacing-size80) var(--vscode-spacing-size160);
257
+ }
258
+
259
+ .automation-provider-tools > .monaco-button {
260
+ width: fit-content;
261
+ padding-inline: var(--vscode-spacing-size160);
262
+ }
263
+
264
+ .automation-provider-details > p {
265
+ margin: 0;
266
+ }
267
+
268
+ .automation-provider-tools > p {
269
+ flex-basis: 100%;
270
+ }
271
+
272
+ .automation-provider-tools-status {
273
+ display: flex;
274
+ align-items: center;
275
+ gap: var(--vscode-spacing-size80);
276
+ }
277
+
278
+ .automation-provider-tools-status > .monaco-button {
279
+ width: fit-content;
280
+ padding-inline: var(--vscode-spacing-size120);
281
+ }
282
+
240
283
  .automation-form-content {
241
284
  display: flex;
242
285
  flex-direction: column;
243
286
  gap: var(--vscode-spacing-size100);
244
287
  }
245
288
 
246
- .automation-session-section,
247
- .automation-prompt-section {
289
+ .automation-session-section {
248
290
  display: flex;
249
291
  flex-direction: column;
250
292
  gap: var(--vscode-spacing-size100);
251
293
  }
252
294
 
295
+ .automation-prompt-section {
296
+ display: flex;
297
+ flex-direction: column;
298
+ gap: var(--vscode-spacing-size60);
299
+ }
300
+
253
301
  .automation-target-toolbar,
254
302
  .automation-target-toolbar .monaco-toolbar,
255
303
  .automation-target-toolbar .monaco-action-bar,
@@ -344,11 +392,10 @@
344
392
  gap: var(--vscode-spacing-size80);
345
393
  min-width: 0;
346
394
  min-height: 22px;
347
- padding-top: var(--vscode-spacing-size40);
348
395
  }
349
396
 
350
- .automation-session-configuration.controls-unavailable .automation-session-config,
351
- .automation-session-configuration.controls-unavailable .automation-session-controls {
397
+ .automation-session-config.controls-unavailable,
398
+ .automation-session-controls.controls-unavailable {
352
399
  opacity: 0.5;
353
400
  pointer-events: none;
354
401
  }
@@ -365,13 +412,158 @@
365
412
  font-size: var(--vscode-fontSize-body2);
366
413
  }
367
414
 
368
- .automation-session-configuration-error {
369
- flex-basis: 100%;
370
- color: var(--vscode-inputValidation-errorForeground);
415
+ .automation-target-error {
416
+ color: var(--vscode-errorForeground);
417
+ font-size: var(--vscode-fontSize-body2);
418
+ }
419
+
420
+ .automation-target-progress {
421
+ color: var(--vscode-foreground);
371
422
  font-size: var(--vscode-fontSize-body2);
372
423
  }
373
424
 
374
425
  .automation-form-save-status {
426
+ display: flex;
427
+ align-items: center;
428
+ gap: var(--vscode-spacing-size80);
429
+ color: var(--vscode-descriptionForeground);
430
+ font-size: var(--vscode-fontSize-body2);
431
+ }
432
+
433
+ .automation-dialog-progress {
434
+ position: absolute;
435
+ top: 0;
436
+ left: 0;
437
+ right: 0;
438
+ z-index: 3;
439
+ }
440
+
441
+ .automation-dialog.committing .dialog-toolbar {
442
+ opacity: 0.5;
443
+ pointer-events: none;
444
+ }
445
+
446
+ .automation-form-save-error {
447
+ display: flex;
448
+ align-items: flex-start;
449
+ gap: var(--vscode-spacing-size80);
450
+ padding: var(--vscode-spacing-size80);
451
+ border: var(--vscode-strokeThickness) solid var(--vscode-inputValidation-errorBorder);
452
+ border-radius: var(--vscode-cornerRadius-small);
453
+ color: var(--vscode-errorForeground);
454
+ background-color: var(--vscode-inputValidation-errorBackground);
455
+ font-size: var(--vscode-fontSize-body1);
456
+ }
457
+
458
+ .automation-form-save-error:focus {
459
+ outline: var(--vscode-strokeThickness) solid var(--vscode-focusBorder);
460
+ outline-offset: calc(-1 * var(--vscode-strokeThickness));
461
+ }
462
+
463
+ .automation-form-save-error > .codicon,
464
+ .automation-customizations-message > .codicon {
465
+ flex-shrink: 0;
466
+ }
467
+
468
+ .automation-advanced {
469
+ display: flex;
470
+ flex-direction: column;
471
+ gap: var(--vscode-spacing-size80);
472
+ }
473
+
474
+ .automation-advanced > .automation-advanced-disclosure {
475
+ display: flex;
476
+ align-items: center;
477
+ gap: var(--vscode-spacing-size40);
478
+ /* Pad the hover area while keeping the chevron aligned with the other form labels. */
479
+ margin: 0 calc(-1 * var(--vscode-spacing-size60));
480
+ padding: var(--vscode-spacing-size40) var(--vscode-spacing-size60);
481
+ border: var(--vscode-strokeThickness) solid transparent;
482
+ border-radius: var(--vscode-cornerRadius-small);
483
+ background-color: transparent;
484
+ color: var(--vscode-foreground);
485
+ text-decoration: none;
486
+ cursor: pointer;
487
+ }
488
+
489
+ .automation-advanced > .automation-advanced-disclosure:hover {
490
+ background-color: var(--vscode-toolbar-hoverBackground);
491
+ }
492
+
493
+ .automation-advanced > .automation-advanced-disclosure:focus-visible {
494
+ outline: var(--vscode-strokeThickness) solid var(--vscode-focusBorder);
495
+ outline-offset: calc(-1 * var(--vscode-strokeThickness));
496
+ }
497
+
498
+ .automation-advanced-chevron {
499
+ display: inline-flex;
500
+ flex-shrink: 0;
501
+ }
502
+
503
+ .automation-advanced-summary {
504
+ margin-left: auto;
505
+ padding-left: var(--vscode-spacing-size80);
506
+ overflow: hidden;
507
+ white-space: nowrap;
508
+ text-overflow: ellipsis;
509
+ color: var(--vscode-descriptionForeground);
510
+ font-size: var(--vscode-fontSize-body2);
511
+ font-weight: var(--vscode-fontWeight-regular);
512
+ }
513
+
514
+ .automation-customizations {
515
+ display: flex;
516
+ flex-direction: column;
517
+ gap: var(--vscode-spacing-size80);
518
+ }
519
+
520
+ .automation-customizations-description {
521
+ margin: 0;
522
+ color: var(--vscode-descriptionForeground);
523
+ font-size: var(--vscode-fontSize-body2);
524
+ }
525
+
526
+ .automation-customization-row {
527
+ display: flex;
528
+ align-items: center;
529
+ gap: var(--vscode-spacing-size80);
530
+ }
531
+
532
+ .automation-customization-text {
533
+ display: flex;
534
+ flex: 1;
535
+ min-width: 0;
536
+ flex-direction: column;
537
+ gap: var(--vscode-spacing-size20);
538
+ cursor: pointer;
539
+ }
540
+
541
+ .automation-customization-label,
542
+ .automation-customization-description {
543
+ overflow: hidden;
544
+ white-space: nowrap;
545
+ text-overflow: ellipsis;
546
+ }
547
+
548
+ .automation-customization-description {
549
+ color: var(--vscode-descriptionForeground);
550
+ font-size: var(--vscode-fontSize-body2);
551
+ }
552
+
553
+ .automation-customization-outdated {
554
+ flex-shrink: 0;
555
+ padding: var(--vscode-spacing-size20) var(--vscode-spacing-size60);
556
+ border: var(--vscode-strokeThickness) solid var(--vscode-contrastBorder, transparent);
557
+ border-radius: var(--vscode-cornerRadius-circle);
558
+ background-color: var(--vscode-badge-background);
559
+ color: var(--vscode-badge-foreground);
560
+ font-size: var(--vscode-fontSize-label2);
561
+ }
562
+
563
+ .automation-customizations-message {
564
+ display: flex;
565
+ align-items: flex-start;
566
+ gap: var(--vscode-spacing-size80);
375
567
  color: var(--vscode-descriptionForeground);
376
568
  font-size: var(--vscode-fontSize-body2);
377
569
  }
@@ -386,9 +578,15 @@
386
578
  overflow: hidden;
387
579
  }
388
580
 
389
- .automation-session-configuration .compact-picker .sessions-chat-dropdown-label,
390
- .automation-session-configuration .compact-picker .chat-input-picker-label,
391
- .automation-session-configuration .compact-picker .chat-session-option-label {
581
+ .automation-dialog .automation-session-configuration .monaco-action-bar .actions-container {
582
+ padding-inline-start: 0;
583
+ }
584
+
585
+ .automation-session-config .compact-picker .sessions-chat-dropdown-label,
586
+ .automation-session-config .compact-picker .chat-input-picker-label,
587
+ .automation-session-controls .compact-picker .sessions-chat-dropdown-label,
588
+ .automation-session-controls .compact-picker .chat-input-picker-label,
589
+ .automation-session-controls .compact-picker .chat-session-option-label {
392
590
  display: none;
393
591
  }
394
592
 
@@ -481,19 +679,6 @@
481
679
  gap: 4px;
482
680
  }
483
681
 
484
- .automation-form-row.automation-form-checkbox-row {
485
- flex-direction: row;
486
- align-items: center;
487
- gap: 8px;
488
- margin-top: 2px;
489
- padding-top: 10px;
490
- border-top: 1px solid var(--vscode-widget-border, transparent);
491
- }
492
-
493
- .automation-form-row.automation-form-checkbox-row > .monaco-checkbox {
494
- margin-right: 0;
495
- }
496
-
497
682
  /*
498
683
  * Lay the Schedule / Time / Day controls along a single horizontal axis.
499
684
  * Each control lives in its own `.automation-form-schedule-group`
@@ -506,6 +691,9 @@
506
691
  align-items: flex-end;
507
692
  flex-wrap: wrap;
508
693
  gap: 12px;
694
+ margin-top: var(--vscode-spacing-size20);
695
+ padding-top: var(--vscode-spacing-size100);
696
+ border-top: var(--vscode-strokeThickness) solid var(--vscode-widget-border, transparent);
509
697
  }
510
698
 
511
699
  .automation-form-schedule-group {
@@ -575,12 +763,6 @@
575
763
  min-height: 1em;
576
764
  }
577
765
 
578
- .automation-form-checkbox-label {
579
- font-size: var(--vscode-fontSize-body1, 13px);
580
- color: var(--vscode-foreground);
581
- cursor: pointer;
582
- }
583
-
584
766
  /*
585
767
  * Host for the native `InputBox` widget. The widget owns its own
586
768
  * `<input>` and styling (border, padding, focus ring); the host just
@@ -1,62 +1,50 @@
1
1
  import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
+ import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
2
3
  import { IObservable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
3
- import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
4
- import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
5
- import { IAutomationDescriptor, IAutomationRun, AutomationRunTrigger } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/automations/automation";
6
- import { AutomationCatalogueState, AutomationMutationGuard, IAutomationRunClaim, ICreateAutomationOptions, IGuardedAutomationUpdateResult, IUpdateAutomationOptions, IUpdateAutomationRunOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/automations/automationService";
4
+ import { AutomationTarget, IAutomationDescriptor, IAutomationRun } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/automations/automation";
5
+ import { AutomationCatalogueState, AutomationMutationGuard, IAutomationCustomizationChoice, IAutomationProviderDescriptor, IAutomationRunRequestResult, ICreateAutomationOptions, IGuardedAutomationUpdateResult, IUpdateAutomationOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/automations/automationService";
7
6
  import { IAutomationService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/automations/automationService.service";
8
7
  import { ISessionsProvidersService } from "@codingame/monaco-vscode-api/vscode/vs/sessions/services/sessions/browser/sessionsProvidersService.service";
8
+ /**
9
+ * Provider-neutral catalogue and command router for Automations across registered Sessions providers.
10
+ * Providers own persistence and execution; this service combines their observable state without a fallback store.
11
+ */
9
12
  export declare class ProviderAutomationService extends Disposable implements IAutomationService {
10
13
  private readonly sessionsProvidersService;
11
- private readonly logService;
12
14
  readonly _serviceBrand: undefined;
13
- private readonly legacyStore;
14
15
  private readonly providersChanged;
15
- private readonly migrationSequencer;
16
- private readonly migrationRetry;
17
- private migrationPromise;
18
16
  private readonly runsForCache;
19
- private staleRunRecoveryGeneration;
20
- private staleRunRecoveryReason;
21
- private readonly recoveredStores;
22
17
  readonly automations: IObservable<readonly IAutomationDescriptor[]>;
23
18
  readonly runs: IObservable<readonly IAutomationRun[]>;
19
+ readonly historyState: import("@codingame/monaco-vscode-api/vscode/vs/base/common/observable").IObservableWithChange<AutomationCatalogueState, void>;
20
+ /** Aggregate completeness, with errors taking precedence over loading, unavailability, and readiness. */
24
21
  readonly catalogueState: IObservable<AutomationCatalogueState>;
25
- constructor(initialProvidersSettled: IObservable<boolean>, sessionsProvidersService: ISessionsProvidersService, instantiationService: IInstantiationService, logService: ILogService);
22
+ readonly unavailableProviders: IObservable<readonly IAutomationProviderDescriptor[]>;
23
+ /** Providers permitting creation; existing definitions may allow updates on providers absent from this list. */
24
+ readonly availableProviders: IObservable<readonly IAutomationProviderDescriptor[]>;
25
+ /** @param initialProvidersSettled Whether startup contributions have finished registering providers. */
26
+ constructor(initialProvidersSettled: IObservable<boolean>, sessionsProvidersService: ISessionsProvidersService);
26
27
  getAutomation(id: string): IAutomationDescriptor | undefined;
28
+ getCustomizationChoices(target: AutomationTarget, existingId: string | undefined, token: CancellationToken): Promise<readonly IAutomationCustomizationChoice[] | undefined>;
27
29
  runsFor(automationId: string): IObservable<readonly IAutomationRun[]>;
30
+ canCreateAutomation(providerId: string | undefined): boolean;
31
+ refresh(): Promise<void>;
32
+ getProviderConfiguration(providerId: string | undefined): import("@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/automations/automationService").IAutomationProviderConfiguration | undefined;
33
+ /** Routes creation only to the explicitly selected provider, rejecting unavailable destinations. */
28
34
  createAutomation(options: ICreateAutomationOptions, mutationGuard?: AutomationMutationGuard): Promise<IAutomationDescriptor>;
29
35
  updateAutomation(id: string, patch: IUpdateAutomationOptions): Promise<IAutomationDescriptor>;
36
+ /** Checks editable-state conflicts before cross-host restrictions so stale callers can refresh their definition. */
30
37
  updateAutomationIfUnchanged(id: string, patch: IUpdateAutomationOptions, expected: IAutomationDescriptor, mutationGuard?: AutomationMutationGuard): Promise<IGuardedAutomationUpdateResult>;
31
38
  deleteAutomation(id: string, mutationGuard?: AutomationMutationGuard): Promise<void>;
32
- recordRunStart(automationId: string, trigger: AutomationRunTrigger, leaderWindowId: number): Promise<IAutomationRunClaim>;
33
- updateRun(runId: string, patch: IUpdateAutomationRunOptions): Promise<IAutomationRun | undefined>;
34
- deleteRun(runId: string): Promise<void>;
39
+ runAutomation(automationId: string, token?: CancellationToken): Promise<IAutomationRunRequestResult>;
35
40
  getActiveRunFor(automationId: string): IAutomationRun | undefined;
36
- isSchedulingOwnedByHost(automationId: string): boolean;
37
41
  canRunAutomation(automationId: string): boolean;
38
42
  canUpdateAutomation(automationId: string): boolean;
39
43
  canDeleteAutomation(automationId: string): boolean;
40
- markStaleRunsFailed(reason: string): Promise<void>;
41
- startStaleRunRecovery(reason: string): Promise<void>;
42
- stopStaleRunRecovery(): void;
43
- waitForMigrationForTesting(): Promise<void>;
44
- private getProviderStores;
44
+ canStopRun(run: IAutomationRun): boolean;
45
+ stopRun(run: IAutomationRun): Promise<void>;
45
46
  private getStores;
46
- private getCreationStore;
47
- private getTargetStore;
48
- private hasTargetChanged;
49
- private assertCanTransferStorage;
50
- private createActiveRunTransferError;
51
- private retargetAutomationStorageIfNeeded;
52
- private restoreSourceAfterBlockedTransfer;
47
+ /** Resolves an already provider-scoped identifier; a missing owner is never replaced by another host. */
53
48
  private findAutomationStore;
54
49
  private requireAutomationStore;
55
- private findRunStore;
56
- private queueMigration;
57
- private recoverStores;
58
- private migrateLegacyAutomations;
59
- private migrateLegacyAutomation;
60
- private completeProviderMigrations;
61
- private rollbackAutomationSnapshotIfUnchanged;
62
50
  }