automations: feat: backport templates and target selection to 1.137 - #334865
Merged
Ulugbek Abdullaev (ulugbekna) merged 1 commit intoSep 8, 2026
Merged
Conversation
Copilot started reviewing on behalf of
Ulugbek Abdullaev (ulugbekna)
September 7, 2026 08:21
View session
Contributor
📬 CODENOTIFYThe following users are being notified based on files changed in this PR: Benjamin Christopher Simmonds (@benibenj)Matched files:
|
Contributor
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The unavailable and error states need corrected screen-reader live-region semantics.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review tier: Balanced
Findings: 1
New issues introduced by this change (1)
| Severity | Finding |
|---|---|
src/vs/sessions/contrib/sessions/browser/views/automationsView.ts — The catalogue can become unavailable asynchronously, but this state has no live-region role. When… |
What changed in this PR
Backports starter automation templates, explicit target selection, and catalogue availability handling to release/1.137.
Changes:
- Adds editable starter templates and explicit workspace selection.
- Propagates catalogue completeness through stores, tools, UI, and migration.
- Improves focus, scrolling, accessibility, and regression coverage.
| File | Description |
|---|---|
src/vs/sessions/AUTOMATIONS.md |
Documents catalogue states. |
src/vs/sessions/browser/parts/customViewNode.ts |
Synchronizes focus-driven scrolling. |
src/vs/sessions/contrib/automations/browser/automationDialog.ts |
Adds explicit target guidance. |
src/vs/sessions/contrib/automations/browser/automationService.ts |
Publishes storage readability. |
src/vs/sessions/contrib/automations/browser/automationTools.ts |
Reports catalogue completeness. |
src/vs/sessions/contrib/automations/browser/automations.contribution.ts |
Tracks initial provider settlement. |
src/vs/sessions/contrib/automations/browser/media/automationDialog.css |
Styles target guidance. |
src/vs/sessions/contrib/automations/browser/providerAutomationService.ts |
Aggregates provider states. |
src/vs/sessions/contrib/automations/test/browser/automationDialog.test.ts |
Tests target guidance. |
src/vs/sessions/contrib/automations/test/browser/automationService.test.ts |
Tests storage states. |
src/vs/sessions/contrib/automations/test/browser/automationTools.test.ts |
Tests tool output. |
src/vs/sessions/contrib/automations/test/browser/providerAutomationService.test.ts |
Tests state aggregation. |
src/vs/sessions/contrib/chat/browser/sessionWorkspacePicker.ts |
Honors restoration policy. |
src/vs/sessions/contrib/chat/test/browser/sessionWorkspacePicker.test.ts |
Tests explicit selection. |
src/vs/sessions/contrib/providers/agentHost/browser/agentHostAutomationStore.ts |
Tracks host catalogue state. |
src/vs/sessions/contrib/providers/agentHost/browser/reconnectableAgentHostAutomationStore.ts |
Handles connection states atomically. |
src/vs/sessions/contrib/providers/agentHost/test/browser/agentHostAutomationStore.test.ts |
Tests lifecycle and migration. |
src/vs/sessions/contrib/sessions/browser/media/automationsCards.css |
Styles templates and states. |
src/vs/sessions/contrib/sessions/browser/views/automationTemplates.ts |
Defines starter templates. |
src/vs/sessions/contrib/sessions/browser/views/automationsAccessibility.ts |
Extends accessible content. |
src/vs/sessions/contrib/sessions/browser/views/automationsView.ts |
Renders templates and catalogue states. |
src/vs/sessions/contrib/sessions/test/browser/automationsView.fixture.ts |
Adds visual scenarios. |
src/vs/sessions/contrib/sessions/test/browser/automationsView.test.ts |
Tests UI, focus, and accessibility. |
src/vs/workbench/contrib/chat/common/automations/automationDialogService.ts |
Allows targetless initial values. |
src/vs/workbench/contrib/chat/common/automations/automationService.ts |
Defines catalogue-state contract. |
Suppressed comments (1)
src/vs/sessions/contrib/sessions/browser/views/automationsView.ts:604
- This catalogue failure is a background provider update, so an assertive
alertinterrupts the user's current screen-reader speech whenever the state changes. Use a polite status region, as is already done for partial catalogue failures.
this.errorContainer.setAttribute('role', 'alert');
💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Contributor
Screenshot ChangesBase: Changed (2)4 insignificant change(s) omitted (≤20 px, Δ≤2). See CI logs for details. Added (20) |
…#334836) Offer editable starter templates without silently inheriting a recent workspace. Explain workspace-specific agent choices while preserving saved provider-owned session configuration. Distinguish catalogue loading, readiness, unavailability, and errors across providers, storage, tools, and accessible UI. Keep usable local automation targets available when a remote host is offline, and preserve focus without stealing it after delayed updates. Include regression tests and visual fixtures for catalogue lifecycle, migration readability, target selection, and focus behavior. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 13c4c742-2729-4be4-819c-2adf8243f733 (cherry picked from commit b6d68fb)
Ulugbek Abdullaev (ulugbekna)
force-pushed
the
ulugbekna/backport-automation-templates-1.137
branch
from
September 7, 2026 22:24
4f81ea7 to
52d7fc4
Compare
Sandeep Somavarapu (sandy081)
approved these changes
Sep 8, 2026
Ulugbek Abdullaev (ulugbekna)
deleted the
ulugbekna/backport-automation-templates-1.137
branch
September 8, 2026 08:07
4 tasks
Ulugbek Abdullaev (ulugbekna)
added a commit
that referenced
this pull request
Sep 8, 2026
Correct three fixtures inherited from #334865 that passed a main-only telemetry dependency to the four-argument release AutomationStore. Remove the unused telemetry stub without changing production behavior. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

Cherry-pick
Cherry-picks #334836 into
release/1.137.-xprovenance.15903dfbe84cb7bea8a802624812043da8f3d9baafter [cherry-pick] automations: fix: limit New badge to returning Agents users #334944 brought in the overlapping catalogue-state dependency.What this brings to 1.137
loading,ready,unavailable, anderrorstates in the UI, accessible content, andlistAutomations. Known automations and usable local targets remain available when a remote provider is offline. Onlyreadymay claim that an empty catalogue means no automations.Provider ownership, workspace trust, managed policy, and existing AI feature gating are unchanged. There are no dependency or persistence-schema changes.
Screenshots from the source PR (unchanged UI)
Release validation
The original conflict-free cherry-pick had an identical stable patch ID to the source commit and passed 400 targeted Electron tests, including the dialog and workspace/agent pickers. The source PR also passed its full GitHub CI and completed Copilot review without findings. CI will rerun for the rebased head.