Add policies for terminal agent sandbox settings - #323646
Draft
dileepyavan wants to merge 1 commit into
Draft
Conversation
dileepyavan
requested review from
TylerLeonhardt,
Yoyokrazy,
alexdima,
lszomoru,
rzhao271 and
sandy081
as code owners
June 29, 2026 23:53
dileepyavan
force-pushed
the
DileepY/sandbox_settings
branch
from
June 29, 2026 23:53
fa50628 to
8fd1b92
Compare
Contributor
📬 CODENOTIFYThe following users are being notified based on files changed in this PR: @anthonykim1Matched files:
|
Contributor
There was a problem hiding this comment.
Pull request overview
This pull request primarily targets enterprise/policy and sandbox-related agent workflows, but also bundles a broad set of platform, API, UI, test, and build/CI updates across the workbench, sessions (Agents window), agent host, and built-in extensions.
Changes:
- Updates smoke tests and agent/sandbox execution paths (including macOS shell parity) and improves robustness in terminal/agent host tooling.
- Extends proposed APIs and customization plumbing (e.g. SCM diff information provider, chat customization source metadata) and refactors related services/tests.
- Bumps core tooling/dependencies (Node/Electron/Playwright/Chromium refs), adjusts build/prelaunch behavior, and adds/updates CI pipeline coverage (incl. new flaky-smoke pipelines).
Show a summary per file
| File | Description |
|---|---|
| test/smoke/src/main.ts | Use realpath-resolved temp dir on Windows for smoke test data path. |
| test/smoke/src/areas/agentsWindow/agentsWindow.test.ts | Force /bin/sh on macOS for sandbox smoke parity; assert shell selection in logs. |
| test/mcp/src/automationTools/windows.ts | Adjust snapshot output formatting to reflect new aria snapshot string. |
| test/componentFixtures/playwright/package.json | Bump Playwright test dependency for component fixtures. |
| test/componentFixtures/blocks-ci-screenshots.md | Update component-fixture screenshot baseline URLs. |
| test/automation/src/playwrightDriver.ts | Switch from accessibility snapshot object to page.ariaSnapshot({ mode: 'ai' }) string. |
| src/vscode-dts/vscode.proposed.textEditorDiffInformation.d.ts | Add proposed SourceControlDiffInformationProvider and window.createSourceControlDiffInformation. |
| src/vscode-dts/vscode.proposed.chatSessionCustomizationProvider.d.ts | Add source metadata to customization folder DTO surface. |
| src/vs/workbench/services/editor/common/editorResolverService.ts | Add experiment-gated setting to control Markdown default editor in Agents window; make default associations dynamic. |
| src/vs/workbench/services/assignment/common/assignmentService.ts | Add StopWatch-based telemetry for TAS fetch latency (initial + refetch). |
| src/vs/workbench/electron-browser/desktop.main.ts | Remove remote filesystem proxy wiring from desktop renderer startup. |
| src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalSuggestAddon.ts | Fix disposable registration timing for focus handler; dispose CTS with cancellation. |
| src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts | Ensure overlay state is assigned before branching on state transitions. |
| src/vs/workbench/contrib/styleOverrides/browser/styleOverrides.contribution.ts | Add new style override modules (sashHandles, titlebar). |
| src/vs/workbench/contrib/styleOverrides/browser/media/titlebar.css | Add macOS-scoped titlebar padding for improved vertical centering. |
| src/vs/workbench/contrib/styleOverrides/browser/media/roundedCorners.css | Round xterm scrollbar sliders and adjust inset so corners remain visible. |
| src/vs/workbench/contrib/styleOverrides/browser/media/paneHeaders.css | Tighten pane header inset and adjust corner radius. |
| src/vs/workbench/contrib/styleOverrides/browser/media/padding.css | Adjust pane header/body insets and add targeted chat/session padding tweaks. |
| src/vs/workbench/contrib/styleOverrides/browser/media/activityBar.css | Ensure action-bar codicon weight matches agents typography ramp in select headers. |
| src/vs/workbench/contrib/onboarding/browser/spotlight/spotlightOverlay.ts | Rename “Skip” to “End Tour”, add tooltip, and route Escape from buttons to dismissal. |
| src/vs/workbench/contrib/chat/test/common/constants.test.ts | Remove tests for last-used editor session type selection (API removed). |
| src/vs/workbench/contrib/chat/test/browser/aiCustomization/aiCustomizationListWidget.test.ts | Update tests after removing storage-source filtering APIs. |
| src/vs/workbench/contrib/chat/test/browser/aiCustomization/aiCustomizationItemsModel.test.ts | Update tests after removing storage-source filtering APIs. |
| src/vs/workbench/contrib/chat/common/customizationHarnessService.ts | Remove storage-source filtering from harness descriptor; add source to source folder model. |
| src/vs/workbench/contrib/chat/common/constants.ts | Remove “last used editor session type” selection APIs/keys. |
| src/vs/workbench/contrib/chat/common/aiCustomizationWorkspaceService.ts | Remove storage-source filter types/helpers. |
| src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.ts | Stop using persisted “last used editor session type” when resolving untitled chat editor. |
| src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts | Remove last-used model seeding logic from empty input sync path. |
| src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.ts | Remove recording last-used session type on focus/view model changes. |
| src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.ts | Export showNoFoldersDialog for reuse. |
| src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.ts | Make deprecation tooltip more specific (Ollama provider). |
| src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts | Update markdownDescription for Claude pref setting to reference Agent Host enabled setting. |
| src/vs/workbench/contrib/chat/browser/aiCustomization/promptsServiceCustomizationItemProvider.ts | Remove harness-based local filtering; add source to returned folders. |
| src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.ts | Rename “workspace” target to “local” for manual creation requests. |
| src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.ts | Create prompts-service item provider without passing active descriptor callback. |
| src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionHandler.ts | Avoid double-completing tool calls; refine warning messages for pre-exec vs invocation failure. |
| src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostChatContribution.ts | Adjust hidden customization sections for agent host providers; remove storage-source filtering. |
| src/vs/workbench/contrib/chat/browser/actions/chatActions.ts | Stop using “last used editor session type” for new chat editor session URI selection. |
| src/vs/workbench/contrib/browserView/electron-browser/features/webContentsViewRendererFeature.ts | Tighten focus gating based on presence of an input URL; avoid focusing hidden model. |
| src/vs/workbench/contrib/browserView/electron-browser/features/browserNavigationFeatures.ts | Track initiated navigation to keep focus during in-flight loads; adjust picker/focus behavior. |
| src/vs/workbench/contrib/browserView/electron-browser/browserEditor.ts | Add typed input getter for BrowserEditorInput. |
| src/vs/workbench/browser/parts/views/viewPaneContainer.ts | Reserve bottom gap in floating panels layout for Modern UI visual consistency. |
| src/vs/workbench/browser/parts/editor/editorConfiguration.ts | Re-register dynamic editor association defaults when the Agents-window markdown experiment setting changes. |
| src/vs/workbench/browser/dnd.ts | Change text drag payload to include all file-service resources (not just file://). |
| src/vs/workbench/api/node/proxyResolver.ts | Add resolved proxy type summary into telemetry stats. |
| src/vs/workbench/api/common/extHostChatAgents2.ts | Forward source in customization source folder DTOs. |
| src/vs/workbench/api/common/extHost.protocol.ts | Extend quick diff protocol for source-control diff information create/dispose + accept messages; extend customization folder DTO. |
| src/vs/workbench/api/common/extHost.api.impl.ts | Wire createSourceControlDiffInformation to ext host quick diff (proposed API). |
| src/vs/workbench/api/browser/mainThreadQuickDiff.ts | Implement main-thread source control diff info tracking via QuickDiffModel references and push updates to ext host. |
| src/vs/workbench/api/browser/mainThreadChatAgents2.ts | Forward customization folder source; remove storage-source filtering defaults. |
| src/vs/sessions/test/browser/resolveRemoteAuthority.test.ts | Remove “Open in Editor URI” tests after moving URI building logic. |
| src/vs/sessions/SESSIONS.md | Expand docs for per-session view state persistence and deterministic closed-chat tracking. |
| src/vs/sessions/SESSIONS_LIST.md | Update docs to reflect new “Recent/Older” date grouping and related context keys. |
| src/vs/sessions/contrib/sessions/test/browser/sessionsList.test.ts | Add unit tests for new groupByDate behavior and caps. |
| src/vs/sessions/contrib/sessions/test/browser/aiCustomizationShortcutsWidget.fixture.ts | Update fixture after removing storage-source filter from harness descriptor. |
| src/vs/sessions/contrib/sessions/browser/views/sessionsViewActions.ts | Use phone-specific archive confirmation sheet on mobile layout; preserve desktop confirm+checkbox. |
| src/vs/sessions/contrib/sessions/browser/sessionsActions.ts | Remove quick-navigate support from sessions picker (keybinding-based). |
| src/vs/sessions/contrib/providers/remoteAgentHost/test/browser/remoteAgentHostCustomizationHarness.test.ts | Update tests after removing storage-source filter from harness descriptor. |
| src/vs/sessions/contrib/providers/remoteAgentHost/browser/remoteAgentHostCustomizationHarness.ts | Remove storage-source filtering logic from remote agent harness descriptor. |
| src/vs/sessions/contrib/providers/agentHost/browser/agentHostChangesetConstants.ts | Remove changeset throttling constant file. |
| src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionViewTour.ts | Gate onboarding tour while modal editor is visible. |
| src/vs/sessions/contrib/onboardingTours/browser/tours/newSessionTour.ts | Gate onboarding tour while modal editor is visible. |
| src/vs/sessions/contrib/github/browser/media/pullRequestHover.css | Improve hover layout for narrow viewports and long text wrapping. |
| src/vs/sessions/contrib/chat/browser/aiCustomizationWorkspaceService.ts | Remove harness-based filtering for prompt slash commands. |
| src/vs/sessions/contrib/changes/browser/changesViewService.ts | Treat missing changeset as “loading” to avoid transient false-not-loading state. |
| src/vs/sessions/contrib/changes/browser/changesView.ts | Avoid recomputing action groups while active session is still loading. |
| src/vs/sessions/browser/parts/mobile/media/mobilePickerSheet.css | Add reusable confirm-style sheet typography/layout building blocks. |
| src/vs/sessions/browser/parts/chatCompositeBar.ts | Stop reordering chats in renderer; rely on provider order. |
| src/vs/sessions/browser/openInVSCodeUtils.ts | Remove VS Code protocol URI builders from utils (logic moved elsewhere). |
| src/vs/sessions/browser/actions/vscodeActions.ts | Inline “Open in VS Code” URI building using product quality/urlProtocol + Schemas constants. |
| src/vs/platform/files/electron-main/remoteFileSystemProxyMainHandler.ts | Remove main-process remote filesystem proxy handler implementation. |
| src/vs/platform/files/electron-browser/remoteFileSystemProxyServer.ts | Remove renderer remote filesystem proxy server implementation. |
| src/vs/platform/files/common/remoteFileSystemProxy.ts | Remove remote filesystem proxy channel constants. |
| src/vs/platform/agentHost/test/node/protocol/copilotRealSdk.integrationTest.ts | Re-enable blob attachment integration test. |
| src/vs/platform/agentHost/test/node/mockAgent.ts | Extend mock agent sendMessage to accept optional senderClientId. |
| src/vs/platform/agentHost/test/node/clientTools/claudeSessionClientToolsModel.test.ts | Add tests for preferred-owner resolution when shared tools exist. |
| src/vs/platform/agentHost/test/node/agentSideEffects.test.ts | Test forwarding dispatching client id and parent peer chat URI in subagent completion paths. |
| src/vs/platform/agentHost/test/node/agentService.test.ts | Add restore ordering test for peer chat catalog despite async load timing; update parsing helpers usage. |
| src/vs/platform/agentHost/test/node/agentHostCommitOperationProvider.test.ts | Update expected commit operation availability behavior. |
| src/vs/platform/agentHost/node/copilot/sessionCustomizationDiscovery.ts | Adjust displayed names for discovery roots (folder labels). |
| src/vs/platform/agentHost/node/copilot/copilotSlashCommandCompletionProvider.ts | Hide runtime commands by alias as well as primary name. |
| src/vs/platform/agentHost/node/copilot/copilotShellTools.ts | Make sentinel parsing more robust by scanning for latest complete numeric marker. |
| src/vs/platform/agentHost/node/copilot/copilotAgentSession.ts | Track turn sender client id; route client tool ownership preference; auto-respond to pending permission on buffered tool output. |
| src/vs/platform/agentHost/node/codex/codexAgent.ts | Normalize CAPI billing/pricing meta extraction and updated field naming. |
| src/vs/platform/agentHost/node/claude/clientTools/claudeSessionClientToolsModel.ts | Thread preferred-client ownership through tool ownership resolution. |
| src/vs/platform/agentHost/node/claude/claudeAgent.ts | Normalize CAPI billing/pricing fields and updated field naming. |
| src/vs/platform/agentHost/node/agentHostGitService.ts | Simplify ref diff computation by letting git diff fail and handling via warn+undefined. |
| src/vs/platform/agentHost/node/agentHostCommitOperationProvider.ts | Gate commit operation availability based on changeset kind and presence of PR URL. |
| src/vs/platform/agentHost/node/agentHostChangesetOperationService.ts | Always return operation list (empty array) instead of undefined. |
| src/vs/platform/agentHost/node/activeClientState.ts | Allow preferred-client ownership resolution for shared tool names. |
| src/vs/platform/agentHost/common/state/sessionState.ts | Add isSubagentChatUri helper. |
| src/vs/platform/agentHost/common/agentService.ts | Extend agent sendMessage signature with optional sender client id. |
| src/vs/platform/agentHost/common/agentHost.config.contribution.ts | Update markdownDescription for Copilot CLI picker hiding setting to reference Agent Host enabled setting. |
| src/vs/code/electron-main/app.ts | Remove main-process registration of remote filesystem proxy handler channel. |
| src/vs/base/test/common/yaml.test.ts | Add test ensuring quoted scalar is treated as single-element string array value. |
| src/vs/base/common/yaml.ts | Update getStringArrayValue to handle quoted scalars by returning single-element array. |
| src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.ts | Dispose breadcrumb items on widget dispose; minor CSS string cleanup. |
| scripts/test-web-integration.bat | Force TEMP to realpath tmpdir (Node issue workaround). |
| scripts/test-remote-integration.bat | Force TEMP to realpath tmpdir (Node issue workaround). |
| scripts/code.bat | Fail fast with message when preLaunch fails. |
| remote/package-lock.json | Update remote package lock dependency versions (tar/undici/ws). |
| remote/.npmrc | Bump remote Node target and build id. |
| package.json | Bump VS Code version/distro, Playwright, and Electron dependency versions. |
| extensions/npm/package-lock.json | Update extension lockfile dependencies (js-yaml/which-pm). |
| extensions/notebook-renderers/package-lock.json | Update undici dependency version. |
| extensions/mermaid-markdown-features/package-lock.json | Update dompurify dependency version. |
| extensions/markdown-language-features/tsconfig.json | Add proposed textEditorDiffInformation d.ts to compilation inputs. |
| extensions/markdown-language-features/package.json | Enable proposed API and bump markdown-it dependency. |
| extensions/markdown-language-features/markdown-editor-src/editor.ts | Handle new gutter marker messages and apply markers to markdown editor model. |
| extensions/copilot/src/platform/endpoint/test/node/chatModelCapabilities.spec.ts | Add tests for Kimi edit tool capability behavior. |
| extensions/copilot/src/platform/endpoint/common/endpointProvider.ts | Add optional per-model request options (temperature/top_p) in model metadata. |
| extensions/copilot/src/platform/endpoint/common/chatModelCapabilities.ts | Add Kimi family detection and include in replace-string capability gates. |
| extensions/copilot/src/extension/prompts/node/agent/allAgentPrompts.ts | Register Kimi prompt resolvers. |
| extensions/copilot/src/extension/intents/node/test/searchSubagentGating.spec.ts | Add tests for semantic_search gating by endpoint type (CAPI vs BYOK). |
| extensions/copilot/src/extension/intents/node/agentIntent.ts | Gate specialized subagents and semantic search behind CAPI-only check. |
| extensions/copilot/src/extension/chatSessions/vscode-node/claudeCustomizationProvider.ts | Provide simplified labels and add source for customization folders. |
| extensions/copilot/src/extension/chatSessions/copilotcli/vscode-node/copilotCLICustomizationProvider.ts | Provide simplified labels and add source for customization folders. |
| extensions/copilot/src/extension/byok/vscode-node/customEndpointProvider.ts | Plumb modelOptions through BYOK model provider config. |
| extensions/copilot/src/extension/byok/node/openAIEndpoint.ts | Apply configured model options to request bodies with override/delete behavior. |
| extensions/copilot/src/extension/byok/common/test/byokProvider.spec.ts | Add test ensuring model options are propagated into resolved model info. |
| extensions/copilot/src/extension/byok/common/byokProvider.ts | Add BYOK modelOptions support in types and resolution output. |
| extensions/copilot/.nvmrc | Bump Copilot extension Node version. |
| cgmanifest.json | Update Chromium/Node/Electron component versions and commit hashes. |
| build/linux/dependencies-generator.ts | Update Chromium reference URL in comments for dependency generation. |
| build/linux/debian/dep-lists.ts | Add new Debian dependency entry for libglib2.0-0 >= 2.12.0. |
| build/lib/util.ts | Retry rimraf on additional Windows error codes (EBUSY/EPERM). |
| build/lib/preLaunch.ts | Avoid re-downloading Electron if expected version already installed. |
| build/lib/electron.ts | Use Electron version from util rather than hardcoded constant. |
| build/checksums/nodejs.txt | Update Node binary checksums for the new Node version. |
| build/azure-pipelines/win32/steps/product-build-win32-compile.yml | Skip CG NOTICE download/apply in CI build-only jobs; make attach non-fatal. |
| build/azure-pipelines/win32/product-smoke-flaky-win32.yml | Add dedicated multi-iteration flaky smoke job for Windows Electron. |
| build/azure-pipelines/linux/steps/product-build-linux-compile.yml | Skip CG NOTICE download/apply in CI build-only jobs; make attach non-fatal. |
| build/azure-pipelines/linux/setup-env.sh | Update Chromium revision used for clang/toolchain download URLs/comments. |
| build/azure-pipelines/linux/product-smoke-flaky-linux.yml | Add dedicated multi-iteration flaky smoke job for Linux Electron (incl. setuid helper perms). |
| build/azure-pipelines/darwin/steps/product-build-darwin-compile.yml | Skip CG NOTICE download/apply in CI build-only jobs; make attach non-fatal. |
| build/azure-pipelines/darwin/product-smoke-flaky-darwin.yml | Add dedicated multi-iteration flaky smoke job for macOS Electron. |
| .vscode/notebooks/my-endgame.github-issues | Update milestone query in notebook cell. |
| .vscode/notebooks/endgame.github-issues | Update milestone query in notebook cell. |
| .nvmrc | Bump repo Node version. |
| .npmrc | Bump Electron headers target and build id. |
| .github/workflows/pr-win32-test.yml | Set VSCODE_SKIP_PRELAUNCH=1 for test steps. |
| .github/workflows/pr-linux-test.yml | Set VSCODE_SKIP_PRELAUNCH=1 for test steps. |
| .github/workflows/pr-darwin-test.yml | Set VSCODE_SKIP_PRELAUNCH=1 for test steps. |
| .github/skills/sessions/SKILL.md | Update documented guidance on chat tab order responsibilities between provider vs renderer. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 0
- Review effort level: Low
dileepyavan
marked this pull request as draft
June 30, 2026 00:17
dileepyavan
force-pushed
the
DileepY/sandbox_settings
branch
from
June 30, 2026 05:29
8fd1b92 to
ff15ec7
Compare
dileepyavan
marked this pull request as ready for review
June 30, 2026 07:04
dileepyavan
marked this pull request as draft
June 30, 2026 07:07
dileepyavan
force-pushed
the
DileepY/sandbox_settings
branch
from
June 30, 2026 07:07
ff15ec7 to
501f779
Compare
dileepyavan
marked this pull request as ready for review
June 30, 2026 07:09
dileepyavan
marked this pull request as draft
June 30, 2026 13:09
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #323643
Summary
chat_preview_features_enabledis false.build/lib/policies/policyData.jsoncwith the new policy entries.Testing
git commithook.src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.tsandsrc/vs/workbench/contrib/policyExport/test/node/policyExport.integrationTest.ts(no errors)../scripts/test.sh --run src/vs/workbench/contrib/policyExport/test/node/policyExport.integrationTest.ts(2 passing).