Skip to content

Ship Copilot as a built-in extension#302778

Merged
joaomoreno merged 3896 commits intomainfrom
joao/copilot-builtin
Apr 7, 2026
Merged

Ship Copilot as a built-in extension#302778
joaomoreno merged 3896 commits intomainfrom
joao/copilot-builtin

Conversation

@joaomoreno
Copy link
Copy Markdown
Member

No description provided.

Copilot AI review requested due to automatic review settings March 18, 2026 11:21
Copy link
Copy Markdown
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

Adds GitHub Copilot (as an extension source) to the repo by introducing it as a Git submodule under extensions/.

Changes:

  • Added extensions/copilot as a submodule pinned to a specific commit.
  • Added .gitmodules configuration to track the new submodule.

Reviewed changes

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

File Description
extensions/copilot Adds a gitlink entry pinning the extension submodule to a specific commit.
.gitmodules Registers the extensions/copilot submodule and defines its remote URL.

Comment thread .gitmodules Outdated
Comment thread .gitmodules Outdated
Comment thread .gitmodules Outdated
@joaomoreno joaomoreno force-pushed the joao/copilot-builtin branch 2 times, most recently from 2bbdac8 to 4e4a578 Compare March 22, 2026 12:58
@joaomoreno joaomoreno force-pushed the joao/copilot-builtin branch 4 times, most recently from 1e4512e to a9eb901 Compare March 27, 2026 14:00
lszomoru and others added 18 commits March 29, 2026 00:21
* fix: address review feedback on OTel agent activity metrics

* fix: guard recordEditAcceptance for accept/reject only, fix doc wording
…ead of the git extension API (#4799)

* Sessions - update workspace tracker so that it uses file watcher instead of the git extension API

* Also filter out events from the node_modules folder

* Pull request feedback
- Exclude copilot from local extension compilation (excludedExtensions)
- Copilot job now packages and publishes VSIX as pipeline artifact
- All client jobs poll for and download the copilot VSIX artifact
- downloadCopilotVsix.ts handles waiting, downloading, and extracting
- Polling fails fast if the Copilot job itself fails
- Added BUILDS_API_URL to CI jobs that were missing it
Extract shared step templates from product-copilot.yml into:
- copilot/setup-steps.yml (node, auth, cache, emsdk, npm ci)
- copilot/build-steps.yml (vscode-capi mixin, npm run build)
- copilot/test-steps.yml (setup, typecheck, lint, compile, all tests)

Add product-copilot-release.yml as a new pipeline entry point for
publishing Copilot Chat to the VS Marketplace, extending the
vscode-engineering stable.yml template.

Update product-copilot.yml to use the shared templates.
…ations (#4805)

* PromptsServiceImpl: avoid using openTextDocument to not trigger validations

* Update src/platform/promptFiles/common/promptsServiceImpl.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix test

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Add transcript line count to compaction summary

Expose getLineCount() on ISessionTranscriptService so the
summarization prompt can tell the model how many lines the transcript
had before compaction. This helps the model target the right region
when reading the transcript file for context recovery.

- Track lineCount on IActiveSession, increment in _bufferEntry
- On session resume, count existing lines from the file on disk
- Pass transcriptLineCount through SummarizedConversationHistory
  props to SummaryMessageElement
- Include 'The transcript had N lines before compaction' in the hint

* Update src/extension/prompts/node/agent/summarizedConversationHistory.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…sholds (#4812)

* Fix premature compaction: decouple ratio from tool tokens, raise thresholds

- Compute compaction ratios against baseBudget instead of budgetThreshold
  so users with many tools aren't penalized with earlier compaction
- Reduce safety multiplier from 0.85 to 0.90 (10% covers observed
  tokenizer discrepancy without wasting 15% of context)
- Raise background compaction kick-off from 75% to 80%

Fixes #304475

* Address PR feedback: clamp messageBudget, clarify toolTokens guard comment
* Fix background compaction not applied between tool calls

- Add addPendingSummary/pendingSummaries to Turn class for storing
  summaries before setResponse is called (mid-tool-call-loop)
- Update normalizeSummariesOnRounds to fall back to pendingSummaries
  when resultMetadata isn't available yet

* Add test for pendingSummaries fallback in normalizeSummariesOnRounds
…4785)

* Attach response output message IDs only to phased assistant messages

* noop

* Remove stray probe file

* noop2

* Remove stray probe file

* noop3

* Remove stray probe file

* adding correct messageID for the outgoing messages

* adding correct messageID for the outgoing messages

* adding correct messageID for the outgoing messages

* Update defaultIntentRequestHandler snapshots
* Background - do not stage changes for folder sessions

* Fix tests
@joaomoreno joaomoreno force-pushed the joao/copilot-builtin branch 2 times, most recently from 34cc7e8 to d40d265 Compare March 30, 2026 11:38
Move the 3 VS Code-dependent Copilot test steps (extension tests,
completions core tests, sanity tests) from the standalone Copilot job
into the Windows, Linux, and macOS platform test jobs.

- Parameterize copilot/test-steps.yml with runIntegrationTests flag
- Create copilot/test-integration-steps.yml for platform-specific setup
- Add Copilot integration tests after core tests in each platform
- product-copilot-release.yml is unaffected (uses default=true)
yemohyleyemohyle and others added 8 commits April 7, 2026 01:33
* initial commit fix request id for subagent and add parentToolCallId

* change logging to info

* fix headerRequestId missing

* fix

* fix...

* remove debug logging

* change back runSubagent changes

---------

Co-authored-by: Yevhen Mohylevskyy <yevhenmohylevskyy@Yevhens-MacBook-Pro-2.local>
Co-authored-by: Copilot <copilot@github.com>
@joaomoreno joaomoreno marked this pull request as ready for review April 7, 2026 12:53
lszomoru
lszomoru previously approved these changes Apr 7, 2026
lszomoru
lszomoru previously approved these changes Apr 7, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 7, 2026

Screenshot Changes

Base: 7eab2726 Current: 3a7d2871

Changed (3)

editor/inlineCompletions/SideBySideView/Light
Before After
before after
editor/suggestWidget/MethodCompletions/Dark
Before After
before after
editor/suggestWidget/MethodCompletions/Light
Before After
before after

@joaomoreno joaomoreno enabled auto-merge April 7, 2026 14:44
@joaomoreno joaomoreno merged commit 3bb4cc1 into main Apr 7, 2026
39 of 41 checks passed
@joaomoreno joaomoreno deleted the joao/copilot-builtin branch April 7, 2026 15:08
@vs-code-engineering vs-code-engineering Bot added this to the 1.116.0 milestone Apr 7, 2026
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.