Skip to content

Conversation

@benibenj
Copy link
Collaborator

Copilot Generated Description: Introduce additional commands and configurations to enhance the chat extension's capabilities, including new commands for managing completions and improved command registration. Add support for extension unification in the configuration.

https://github.com/microsoft/vscode-internalbacklog/issues/6073

Copilot AI review requested due to automatic review settings October 30, 2025 23:28
@benibenj benibenj enabled auto-merge October 30, 2025 23:28
@benibenj benibenj self-assigned this Oct 30, 2025
@vs-code-engineering vs-code-engineering bot added this to the October 2025 milestone Oct 30, 2025
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 implements "extension unification" by enabling the Copilot Chat extension to optionally manage inline completions functionality that was previously provided by a separate Copilot extension. The changes introduce a new extensionUnification state flag and establish dual command registration patterns to support both the legacy extension IDs and new Chat extension IDs.

Key changes:

  • Added extensionUnification flag to control activation of unified completions functionality
  • Introduced dual command registration pattern (Client/Chat suffixes) to support both legacy and unified modes
  • Refactored command registration infrastructure to properly return disposables and handle cleanup
  • Implemented new status bar UI components for completions management

Reviewed Changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
completionsUnificationContribution.ts Adds extensionUnification boolean flag to state interface
completionsCoreContribution.ts Implements unification logic, registers commands conditionally based on extensionUnification flag
telemetry.ts Refactors registerCommandWrapper to return IDisposable and removes extension-specific cleanup
statusBarPicker.ts New file implementing quick pick menu for completions status management
statusBar.ts Uncomments and activates status bar UI code, updates command ID reference
baseSuggestionsPanelManager.ts Updates registerCommands to return IDisposable and properly collect disposables
inlineCompletion.ts Exports exception function for reuse in command wrappers
copilotPanel/panelConfig.ts Updates command IDs to use "Client" suffix variants
copilotPanel/common.ts Refactors to register both Client and Chat command variants, properly returns disposables
copilotCompletionFeedbackTracker.ts Updates command ID to "Chat" variant
constants.ts Defines comprehensive command ID mapping with Client/Chat suffixes and documentation
config.ts Exports enableCompletions, disableCompletions, and reorders imports
completionsServiceBridges.ts Implements registerUnificationCommands function and local registerCommandWrapper
package.json Adds new Chat-variant commands to manifest with extensionUnification.activated enablement

@benibenj benibenj added this pull request to the merge queue Oct 31, 2025
Merged via the queue into main with commit 8e1b36c Oct 31, 2025
16 checks passed
@benibenj benibenj deleted the benibenj/high-sparrow branch October 31, 2025 09:53
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.

3 participants