Skip to content

Comments

Disable unregistered session types in session type picker#296974

Merged
benibenj merged 2 commits intomainfrom
copilot/fix-background-agent-picker
Feb 23, 2026
Merged

Disable unregistered session types in session type picker#296974
benibenj merged 2 commits intomainfrom
copilot/fix-background-agent-picker

Conversation

Copy link
Contributor

Copilot AI commented Feb 23, 2026

Non-local session types (Background, Cloud, etc.) were selectable in the session type picker even when their provider wasn't registered yet (e.g., on startup before extensions load). Selecting them had no effect, making the picker appear broken.

  • _isSessionTypeEnabled in SessionTypePickerActionItem now checks getChatSessionContribution(type) for non-local types, disabling items whose provider isn't registered yet
  • Local is always enabled since it has no external provider dependency
Original prompt

This section details on the original issue you should resolve

<issue_title>Background agent picker appears broken</issue_title>
<issue_description>

Does this issue occur when all extensions are disabled?: Yes/No

  • VS Code Version:
  • OS Version:

Steps to Reproduce:

  1. Have local agent selected
  2. Click background agent
  3. 🐛 It still says local
    </issue_description>

<agent_instructions>The session type picker should show the non local session types as disabled in the dropdown when the provider is not registered yet. Use getChatSessionContribution to see if it's registered or not. Local is always registered.</agent_instructions>

Comments on the Issue (you are @copilot in this section)

@benibenj Possibly on startup. Should not happen anymore after moving logic out of core

💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

…egistered

The session type picker now shows non-local session types as disabled
in the dropdown when their provider is not yet registered. Uses
getChatSessionContribution to check registration status. Local is
always enabled as it's always registered.

Co-authored-by: benibenj <44439583+benibenj@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix broken background agent picker Disable unregistered session types in session type picker Feb 23, 2026
@benibenj benibenj marked this pull request as ready for review February 23, 2026 14:41
Copilot AI review requested due to automatic review settings February 23, 2026 14:41
@benibenj benibenj enabled auto-merge (squash) February 23, 2026 14:41
@vs-code-engineering vs-code-engineering bot added this to the February 2026 milestone Feb 23, 2026
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes an issue where non-local session types (Background, Cloud, etc.) appeared enabled in the session type picker even when their providers weren't registered yet, particularly on startup before extensions load. Clicking these unregistered session types had no effect, making the picker appear broken.

Changes:

  • Modified _isSessionTypeEnabled() in SessionTypePickerActionItem to check provider registration status before enabling non-local session types
  • Local session type remains always enabled since it has no external provider dependency

@benibenj benibenj merged commit 6c8628d into main Feb 23, 2026
24 checks passed
@benibenj benibenj deleted the copilot/fix-background-agent-picker branch February 23, 2026 15:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Background agent picker appears broken

3 participants