Add marketplace ref support for plugin marketplaces - #317901
Merged
Connor Peet (connor4312) merged 3 commits intoMay 26, 2026
Merged
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds support for specifying a Git ref (via #ref) in plugin marketplace references, and ensures both caching and fetching honor that ref.
Changes:
- Extend marketplace reference parsing to capture optional
#reffor GitHub shorthand and git URIs, and incorporate it into canonical IDs / cache paths. - Wire the parsed ref through cloning and HTTP fetching logic (e.g.,
raw.githubusercontent.com/.../{ref}/...). - Add/adjust tests to validate parsing, caching uniqueness, and ref-aware fetching behavior.
Show a summary per file
| File | Description |
|---|---|
| src/vs/workbench/contrib/chat/common/plugins/workspacePluginSettingsService.ts | Accept ref in extraKnownMarketplaces entries and append #ref when parsing. |
| src/vs/workbench/contrib/chat/common/plugins/marketplaceReference.ts | Parse/encode #ref, update canonical IDs and cache segments to be ref-specific. |
| src/vs/workbench/contrib/chat/common/plugins/pluginMarketplaceService.ts | Fetch GitHub marketplace definitions from the configured ref. |
| src/vs/workbench/contrib/chat/browser/agentPluginRepositoryService.ts | Pass parsed ref through to repository cloning. |
| src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts | Update configuration description/default to mention #ref. |
| src/vs/workbench/contrib/chat/test/common/plugins/workspacePluginSettingsService.test.ts | Add test for parsing ref from extraKnownMarketplaces. |
| src/vs/workbench/contrib/chat/test/common/plugins/pluginMarketplaceService.test.ts | Add tests for parsing #ref, uniqueness by ref, and ref-based fetching. |
| src/vs/workbench/contrib/chat/test/browser/plugins/agentPluginRepositoryService.test.ts | Add tests for ref-specific cache path and cloning with ref. |
Copilot's findings
- Files reviewed: 8/8 changed files
- Comments generated: 4
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Member
|
thanks! Looks like a CI failure tho |
Contributor
Author
|
Connor Peet (@connor4312) CI passing now |
Connor Peet (connor4312)
approved these changes
May 26, 2026
Michael Lively (Yoyokrazy)
approved these changes
May 26, 2026
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Description
This updates plugin marketplace references to support explicit Git refs and switches the default github/awesome-copilot marketplace to github/awesome-copilot#marketplace.
It also wires the marketplace ref through the related code paths so that:
Related Issue
github/awesome-copilot#1368
Testing
Not run in this checkout. Local validation was blocked because
ode_modules and compiled out artifacts are not present.