minVersion: UI when enforced by Enterprise - #337151
Open
Ross Wollman (rwoll) wants to merge 7 commits into
Open
Ross Wollman (rwoll) wants to merge 7 commits into
Ross Wollman (rwoll) wants to merge 7 commits into
Conversation
Fixes #337086 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The Agents experience has unresolved focus restoration, accessibility-help accuracy, and narrow-window overflow issues.
Get a fresh assessment by requesting another Copilot review.
Review effort: Balanced
Findings: 2
Open (3)
What changed in this PR
Adds persistent organization-required update guidance across Chat, Agents, and window banners without changing enforcement.
Changes:
- Derives localized recovery actions from updater state.
- Adds Chat and Agents blocked-state presentations.
- Adds prioritized neutral banner support and Agents layout integration.
| File | Description |
|---|---|
src/vs/workbench/workbench.common.main.ts |
Loads update guidance contribution. |
src/vs/workbench/test/browser/parts/banner/bannerPart.test.ts |
Tests banner replacement and priority. |
src/vs/workbench/services/policies/test/browser/managedSettingsUpdate.test.ts |
Tests update presentation states. |
src/vs/workbench/services/policies/test/browser/accountPolicyGateContribution.test.ts |
Verifies dialog removal. |
src/vs/workbench/services/policies/common/managedSettingsUpdate.ts |
Defines update presentation contract. |
src/vs/workbench/services/policies/browser/managedSettingsUpdateService.ts |
Derives reactive update information. |
src/vs/workbench/services/policies/browser/managedSettingsUpdate.contribution.ts |
Controls banner, context, and help. |
src/vs/workbench/services/policies/browser/accountPolicyGateContribution.ts |
Removes duplicate compatibility dialogs. |
src/vs/workbench/services/banner/browser/bannerService.ts |
Adds priority and neutral styling options. |
src/vs/workbench/contrib/chat/test/browser/viewsWelcome/chatUpdateRequiredView.test.ts |
Tests Chat replacement behavior. |
src/vs/workbench/contrib/chat/browser/widget/media/chatViewWelcome.css |
Adds wrapping and scrolling styles. |
src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController.ts |
Supports plain text and primary actions. |
src/vs/workbench/contrib/chat/browser/viewsWelcome/chatUpdateRequiredView.ts |
Implements read-only Chat replacement. |
src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts |
Registers the replacement Chat view. |
src/vs/workbench/browser/parts/banner/media/bannerpart.css |
Styles neutral banners. |
src/vs/workbench/browser/parts/banner/bannerPart.ts |
Adds queued priority rendering. |
src/vs/sessions/test/browser/workbench.test.ts |
Tests banner layout allocation. |
src/vs/sessions/sessions.common.main.ts |
Loads the shared contribution. |
src/vs/sessions/LAYOUT.md |
Documents the Agents banner row. |
src/vs/sessions/contrib/policyBlocked/test/browser/sessionsPolicyBlocked.test.ts |
Tests Agents update blocking. |
src/vs/sessions/contrib/policyBlocked/browser/sessionsPolicyBlocked.ts |
Renders the Agents update overlay. |
src/vs/sessions/contrib/policyBlocked/browser/policyBlocked.contribution.ts |
Prioritizes update-required blocking. |
src/vs/sessions/browser/workbench.ts |
Integrates the banner into Agents layout. |
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Refs #337086 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Label the existing fresh editor-window action accurately without changing its behavior. Refs #337086. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Keep native update actions and policy-specific administrator guidance without a hardcoded fallback URL. Refs #337086. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
|
Base:
|
Restore owned focus after inert cleanup, keep long notices scrollable, clarify Agents accessibility help, and initialize observables after service injection. Refs #337086. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Keep focused recovery actions visible after resizing without stealing focus when the overlay rerenders. Refs #337086. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Handle WebKit focus scrolling before revealing the focused action; verified with Chromium and WebKit after completing the Compile and Hygiene checks. Refs #337086. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Ross Wollman (rwoll)
marked this pull request as ready for review
September 22, 2026 19:15
Ross Wollman (rwoll)
enabled auto-merge
September 22, 2026 19:15
Ross Wollman (rwoll)
disabled auto-merge
September 22, 2026 19:15
Ross Wollman (rwoll)
enabled auto-merge (squash)
September 22, 2026 19:16
Contributor
📬 CODENOTIFYThe following users are being notified based on files changed in this PR: Benjamin Christopher Simmonds (@benibenj)Matched files:
|
Michael Lively (Yoyokrazy)
approved these changes
Sep 22, 2026
This branch has not been deployed
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 #337086
Enterprise Managed Settings
minVersionlets administrators block AI features on outdated VS Code clients until users update—for example, to require newer sandboxing protections.This PR explains that existing restriction without changing enforcement. Chat shows an update notice. Agents shows one blocking overlay, without a redundant banner. The editor retains a Workspace Trust-style banner even when Chat is closed, because other editing features remain available.
Native update actions are offered when available. If enterprise policy disables built-in updates, the notice directs users to their administrator for an approved update. Other unavailable-updater states do not imply administrator management, and no generic fallback link is shown. Open Editor Window opens a fresh editor window, preserving the existing recovery behavior.
Screenshots
Controlled simulations, real rendered UI. Code - OSS Dev, isolated HTTP 466 requirement (installed 1.140.0; required 1.141.0), with the existing updater service temporarily set to
IdleorDisabled(Policy)and then restored toDisabled(NotBuilt). Agents captures were regenerated at the final review-fix head and matched the published PNGs byte-for-byte; unchanged Editor captures are retained. No DOM/text substitution, composites, shipping test switches, or actual update installation. Editor captures exclude the account area and show only a synthetic example file.Native updater available — simulated
IdleChat closed: the editor banner remains visible, with Check for Updates.
Chat open: the same requirement and native update action appear beside the editor.
Agents: overlay only, with Check for Updates and Open Editor Window.
Enterprise-managed updates — simulated
Disabled(Policy)Chat closed: the editor banner explains that an administrator manages the update path; no generic link.
Chat open: administrator guidance, without a misleading fallback action.
Agents: administrator guidance and Open Editor Window; no redundant banner or generic link.
Validation and remaining checks
core-ci,hygiene,eslint,valid-layers-check,define-class-fields-check,vscode-dts-compile-check,tsec-compile-check, andtest-build-scripts. The original aggregate hit environment blockers; it is not claimed as one successful unmodified run. The samecore-cicommand passed after GitHub's rate-limit reset. Build-script tests passed 462/462 with command-scoped empty Git configuration for synthetic fixture repos and canonical/private/tmp; the other checks used normal Git configuration. User signing settings were unchanged.200 {}→ 466 recovery in both windows. All three Copilot review threads have concise inline replies and are resolved.