Short-circuit getAllChatEndpoints lookup for execution subagent#319474
Merged
Conversation
Only fetch all chat endpoints when the execution subagent could actually be enabled (model is GPT/Anthropic AND the experiment setting is on). Addresses review feedback on #319467.
zhichli
approved these changes
Jun 1, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
This PR optimizes subagent tool gating in the Copilot extension by avoiding a potentially expensive endpointProvider.getAllChatEndpoints() call when the execution subagent cannot be enabled anyway (because the current main model family is not GPT/Anthropic, or the experiment flag is off). This fits into the getAgentTools flow, which computes which tools are eligible for a given chat request and selected model/endpoint.
Changes:
- Short-circuit the
getAllChatEndpoints()lookup unlessisGptOrAnthropic && executionSubagentEnabledis true. - Preserve existing enablement semantics for the execution subagent, still requiring
gemini-3-flashavailability in the user’s endpoints when the gate is otherwise eligible.
Show a summary per file
| File | Description |
|---|---|
| extensions/copilot/src/extension/intents/node/agentIntent.ts | Avoids materializing all chat endpoints unless the execution subagent gate could actually pass. |
Copilot's findings
- Files reviewed: 1/1 changed files
- Comments generated: 0
Contributor
|
This PR will be automatically cherry-picked to |
vritant24
approved these changes
Jun 1, 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 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.
Addresses Copilot review comment on #319467.
Only call
endpointProvider.getAllChatEndpoints()when the execution subagent could actually be enabled — i.e. the current model is GPT/Anthropic and the experiment setting is on. Otherwise the result wouldn't affect the gate, and we skip the potentially expensive endpoint materialization.