Commit Graph

149656 Commits

Author SHA1 Message Date
Ladislau Szomoru
f4d0b1255c Sessions - disable auto-commit for background sessions (#306006) 2026-03-28 21:22:06 +01:00
Rob Lourens
fa6338b4d1 agentHost: Register sessions provider independently of having a connection (#305915)
* agentHost: Register sessions provider independently of having a connection

* fix
2026-03-28 18:41:04 +01:00
Benjamin Pasero
1c7585a791 files - speed up glob matching for file events in extension host (#305962)
* files - speed up glob matching for file events in extension host

* partially restore old behaviour
2026-03-28 08:36:18 -07:00
Josh Spicer
8ce4cb75af sessions: add sync-upstream built-in skill (#305771)
* feat: add update-branch skill for rebasing session branches

* fix: update description for update-branch skill to clarify usage

* feat: add sync-upstream skill for rebasing session branches
2026-03-28 07:02:02 +00:00
dependabot[bot]
5df47326b1 Bump picomatch from 4.0.3 to 4.0.4 in /remote (#305821)
Bumps [picomatch](https://github.com/micromatch/picomatch) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/micromatch/picomatch/releases)
- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/picomatch/compare/4.0.3...4.0.4)

---
updated-dependencies:
- dependency-name: picomatch
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-28 06:41:30 +00:00
Martin Aeschlimann
ea959a9027 PromptsService: remove unnecessary change events (#305662)
* remove unnecessary change events

* Update src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.ts

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

* Update src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.ts

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

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-28 06:39:07 +00:00
Yogeshwaran C
bf4a0eb258 fix: prevent terminal panel from overwriting terminalEditorActive context key (#304802)
The terminalEditorActive context key was being incorrectly set to false
when a terminal in the panel received focus, even though the active
editor was still a terminal editor. This happened because
TerminalService listened to onDidChangeActiveInstance and set the key
based on the active terminal instance's location rather than whether the
active editor is a terminal editor.

Remove the duplicate terminalEditorActive management from
TerminalService since TerminalEditorService already correctly manages
this context key via onDidActiveEditorChange, which checks whether the
active editor is a TerminalEditorInput.

Closes #182979
2026-03-28 06:35:46 +00:00
Rob Lourens
1974322e5c AgentHost: Add remote label to workspace (#305822)
* AgentHost: Add remote label to workspace

Co-authored-by: Copilot <copilot@github.com>

* Fix tests

---------

Co-authored-by: Copilot <copilot@github.com>
2026-03-28 06:30:17 +00:00
Connor Peet
9c25b318e7 Merge pull request #305861 from microsoft/connor4312/edit-metadata
agentHost: actually really track (and restore) file edits
2026-03-27 23:20:53 -07:00
Anthony Kim
c65896cf3d Correct Shell integration migration logic (#305897) 2026-03-28 07:03:38 +01:00
Connor Peet
20c06fd05f Merge remote-tracking branch 'origin/main' into connor4312/edit-metadata 2026-03-27 20:02:21 -07:00
Sandeep Somavarapu
f313ec2516 sessions: Show new sessions in the list immediately before commit (#305880)
* refactor: update session cache to use IChatData and simplify session handling

* feat: add setTitle and setStatus methods to CopilotCLISession and RemoteNewSession

* feat: implement chat ID replacement and handling for session updates

* refactor: remove chat ID replacement logic and related methods from session management

* refactor: streamline session handling by removing resource swap logic and enhancing session cache management

* feat: implement session commit event and related interfaces for chat sessions

* refactor: enhance session management by implementing cache wait logic for committed sessions

* refactor: improve chat session handling by adding immediate group model updates for new chats

* refactor: simplify chat handling by removing immediate group model updates for temporary chats

* refactor: enhance Copilot session handling by adding resource management and improving session cache updates

* refactor: streamline resource handling in CopilotCLISession and RemoteNewSession classes

* refactor: add support for session replacement events in session management

* refactor: add internal documentation for session replacement events in sessions provider

* refactor: improve session replacement handling by using async/await for better readability

* refactor: simplify session replacement handling by removing unnecessary asynchronous wrapper and improving cache management

* refactor: enhance session management by updating active session on provider session replacement

* refactor: update session replacement event properties for clarity

* refactor: add updateWorkspace method to CopilotCLISession and RemoteNewSession for improved workspace management

* refactor: inline replace session event type and fix session cache update

- Remove IChatReplaceSessionEvent interface, inline the type as
  { from: IChatData; to: IChatData } in provider and service interfaces
- Restore setActiveSession call in sendRequest after provider returns
- Fix _refreshSessionCache to properly narrow existing cache entries
  by instanceof (AgentSessionAdapter vs temp sessions) for update calls
- Restore _currentNewSession guard in removal loop to prevent firing
  removed event for the in-flight temp session

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

* refactor: restore setActiveSession call after sendRequest completes

After awaiting sendRequest (which resolves with the committed session), explicitly call setActiveSession so the committed session is always set as active. The onDidReplaceSession handler also sets it, but having it here as well ensures correctness when the handler fires before the group model is updated.

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

* refactor: sync temp session data from agent session and guard active session replacement

Update CopilotCLISession.update() to propagate workspace, title, status, updatedAt, changes, and description from the agent session. Add mutable description and changes observables. Restore instanceof guard in removal loop to prevent premature cleanup of temp sessions. Only replace active session in onDidReplaceSession when the replaced session was actually active.

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

* fix: dispose temp session and fire removal event on commit/error

Dispose the CopilotCLISession/RemoteNewSession temp session and emit
an onDidChangeSessions removal delta when the temp is replaced by the
committed adapter or when an error occurs. This prevents disposable
leaks and lets consumers (e.g. SessionsManagementService) clean up
group-model/cache state for the removed chat.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-28 01:25:43 +00:00
Justin Chen
be936f1f8a make sure thinking is serialized dynamically (#305865)
make sure thinking is serialized dynamically'
2026-03-28 00:40:37 +00:00
Megan Rogge
6e2071bf08 add instructions to not use sleep, to use await_terminal tool (#305804) 2026-03-28 00:34:46 +00:00
Rob Lourens
c065b175fd Add argument parsing, suite filtering, and grep support to integration test scripts (#305837)
* Add argument parsing, suite filtering, and grep support to integration test scripts

- Add --run, --runGlob, --grep, --suite, and --help argument parsing
- --suite selects extension host test suites (comma-separated, glob patterns)
- --grep forwards test name filter to all runners via MOCHA_GREP env var
- Validate --suite filter matches at least one known suite
- Add MOCHA_GREP support to testrunner.js, CSS and HTML test runners
- Seed user settings to suppress dock bounce notifications
- Always apply *.integrationTest.js glob for node.js tests
- Add integration-tests skill documentation

* Address Copilot review feedback

- Quote cd $ROOT, rm -rf $VSCODEUSERDATADIR, rmdir %VSCODEUSERDATADIR%
- Quote --runGlob pattern to prevent premature glob expansion
- Use GREP_ARGS array for safe grep forwarding in .sh
- Use conditional call with proper quoting for grep in .bat
- Deduplicate suite list into KNOWN_SUITES variable
- Remove unused EXTRA_ARGS and ARGS variables from .bat

* Fix Windows CI: remove unnecessary enabledelayedexpansion

The original script used plain 'setlocal'. Adding 'enabledelayedexpansion'
may affect path resolution behavior on Windows CI. Since no delayed
expansion (\!var\!) syntax is used, revert to the original 'setlocal'.

* Fix Windows CI: capture %~dp0 before call :label corrupts it

In Windows batch, 'call :label' can change what %~dp0 resolves to.
Our should_run_suite subroutine uses 'call :should_run_suite', which
caused %~dp0 to resolve to the wrong directory for extension paths
that appear after the subroutine call. Capture the script directory
once at startup into %SCRIPT_DIR% and use it everywhere.
2026-03-28 11:23:37 +11:00
Kyle Cutler
2de60eada5 Better syncing of "share with agent" status (#305854) 2026-03-27 17:11:21 -07:00
Justin Chen
3f19f148dc show a warning when there are more than 20 images in a request (#305817)
* show a warning when there are more than 20 images in a request

* address comments
2026-03-27 16:59:47 -07:00
Rob Lourens
5be9778feb agentHost: Apply default edit auto-approve patterns on AH side (#305859)
* agentHost: Apply default edit auto-approve patterns on AH side
Fix #305308

Co-authored-by: Copilot <copilot@github.com>

* Add integration test

Co-authored-by: Copilot <copilot@github.com>

* Fixes

---------

Co-authored-by: Copilot <copilot@github.com>
2026-03-27 23:59:18 +00:00
Connor Peet
36f8813cfa address PR review comments 2026-03-27 16:40:44 -07:00
Connor Peet
bd2f91618e fix compile 2026-03-27 16:23:07 -07:00
Connor Peet
fe781b70ab agentHost: actually really track (and restore) file edits
Historically we've tracked edits in the ChatEditingSession, which is
owned by the editor and _very_ internal and _very_ complex, for Reasons.
In the agent host world, the agent host now owns edits.

This is a minimal implementation of an IChatEditingSession that is used
for the agent host. It does not have keep/undo (the writing has been
on the wall for that for a while) which removes a large chunk of
complexity. Nevertheless, it can deliver diffs, undo/redo and restore
state.

Diffs still happen client-side, but this could be optimized in the
future.

Closes #305332
2026-03-27 16:11:35 -07:00
Ladislau Szomoru
b8b841a44f Sessions - extract code to enable loading changes async (#305847) 2026-03-27 16:05:58 -07:00
Paul
b98ad1eadb Send extension ID for customizations (#305796) 2026-03-27 22:31:09 +00:00
Ladislau Szomoru
ca0ea977c6 Sessions - add missing context key (#305844) 2026-03-27 22:30:48 +00:00
Kyle Cutler
fe491c0c10 Fix "add element to chat" while debugging (#305831)
* Fix "add element to chat" while debugging

* Update src/vs/platform/browserView/electron-main/browserViewElementInspector.ts

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

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-27 22:23:37 +00:00
Matt Bierner
c17175997a Merge pull request #305841 from mjbvz/dev/mjbvz/functional-shark
Make sure main thread chat session models use overrides from live model
2026-03-27 15:16:11 -07:00
Josh Spicer
cb39101990 chat: fix customization provider harness deduplication, grouping, and badges (#305810)
* test: add tests for external harness replacement behavior

* feat: enhance external customization item handling with storage inference and instruction enrichment

* refactor: remove workspaceSubpaths from chat session customization metadata

* Copilot CLI session 6be53c25-3ac3-44c2-97f1-846de07165de changes

* refactor: extract shared buildInstructionListItem and document provider API

Extract the instruction classification logic (applyTo parsing, badge
generation, groupKey assignment) into a shared buildInstructionListItem
method used by both the built-in and provider item paths.

Remove the instruction-specific enrichInstructionItemsFromProvider in
favor of inline logic in fetchItemsFromProvider that delegates to the
shared helper.

Add a section to the chat-customizations-editor skill documenting the
chatSessionCustomizationProvider proposed API flow.

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

* fix: address PR review — disposal fallback and agent instruction grouping

Fix disposal fallback: when an external harness that overrides a static
one is disposed, keep the active harness on the same id since the static
harness is restored. Only fall back to all[0] when no harness with that
id remains.

Fix agent instruction grouping: buildInstructionListItem now detects
well-known agent instruction files (AGENTS.md, CLAUDE.md, CLAUDE.local.md,
copilot-instructions.md) and assigns groupKey 'agent-instructions' so
they appear under the correct header for both built-in and provider items.

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

* revert: remove skill file edits to avoid merge conflict

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-27 22:15:33 +00:00
Courtney Webster
8d8e32fe55 Merge pull request #305723 from microsoft/open-wren
Add experiment for sign in button in title bar
2026-03-27 17:08:18 -05:00
Ladislau Szomoru
cbc57242ed Sessions - wire up the discard changes action (#305830) 2026-03-27 22:04:27 +00:00
Matt Bierner
dd1cba9356 Make sure main thread chat session models use overrides from live model 2026-03-27 14:55:31 -07:00
Josh Spicer
7efa1c5c0d chatCustomizations: support grouping and badges for external provider items (#305813)
* feat: enhance AICustomizationListWidget with grouping and badge support for external customization items

* feat: add user data profile service and infer storage from URI in AICustomizationListWidget

* Copilot CLI session 8af2fd4a-10fe-4bba-b408-f1b90cebc8dc changes

* docs: add chatSessionCustomizationProvider API chain to customizations editor skill

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

* fix: address PR review feedback

- Remove duplicate sectionToIcon, reuse getSectionIcon instance method
- Use Map for O(1) groupKey lookups instead of O(n²) includes/find
- Check active project root in inferStorageFromUri for Sessions window
- Set pluginUri on provider items and use it for storage inference
- Remove redundant plugin check from inferStorageFromUri (handled by caller)

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-27 21:48:27 +00:00
vs-code-engineering[bot]
958f822bbe Update distro commit (main) (#305764)
Update distro commit to 3431ef6b

Co-authored-by: vs-code-engineering[bot] <122617954+vs-code-engineering[bot]@users.noreply.github.com>
2026-03-27 21:32:46 +00:00
dependabot[bot]
c7de0877e0 Bump octokit/request-action from 2.4.0 to 3.0.0 (#305135)
Bumps [octokit/request-action](https://github.com/octokit/request-action) from 2.4.0 to 3.0.0.
- [Release notes](https://github.com/octokit/request-action/releases)
- [Commits](dad4362715...b91aabaa86)

---
updated-dependencies:
- dependency-name: octokit/request-action
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
2026-03-27 14:20:43 -07:00
Courtney Webster
48a530373d Merge branch 'main' into open-wren 2026-03-27 16:16:55 -05:00
dependabot[bot]
e49f2d1a54 Bump node-forge from 1.3.2 to 1.4.0 in /extensions/vscode-api-tests (#305343)
Bumps [node-forge](https://github.com/digitalbazaar/forge) from 1.3.2 to 1.4.0.
- [Changelog](https://github.com/digitalbazaar/forge/blob/main/CHANGELOG.md)
- [Commits](https://github.com/digitalbazaar/forge/compare/v1.3.2...v1.4.0)

---
updated-dependencies:
- dependency-name: node-forge
  dependency-version: 1.4.0
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-27 14:15:43 -07:00
dependabot[bot]
fca9a7879f Bump picomatch from 4.0.3 to 4.0.4 in /test/mcp (#304949)
Bumps [picomatch](https://github.com/micromatch/picomatch) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/micromatch/picomatch/releases)
- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/picomatch/compare/4.0.3...4.0.4)

---
updated-dependencies:
- dependency-name: picomatch
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
2026-03-27 14:14:17 -07:00
dependabot[bot]
5933225fdb Bump picomatch from 4.0.3 to 4.0.4 in /test/smoke (#304972)
Bumps [picomatch](https://github.com/micromatch/picomatch) from 4.0.3 to 4.0.4.
- [Release notes](https://github.com/micromatch/picomatch/releases)
- [Changelog](https://github.com/micromatch/picomatch/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/picomatch/compare/4.0.3...4.0.4)

---
updated-dependencies:
- dependency-name: picomatch
  dependency-version: 4.0.4
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
2026-03-27 14:14:13 -07:00
Elijah King
44bc7753d6 Merge pull request #305759 from microsoft/eli/chat-export-import-icon
add chat import and export icons to agent debug logs
2026-03-27 14:04:50 -07:00
Pierce Boggan
27505178e3 Merge pull request #294777 from microsoft/pierceboggan/fix-@
@ can be used to reference context, just like #
2026-03-27 14:57:53 -06:00
Ladislau Szomoru
e92b212dac Sessions - more improvements to the changes view (#305797)
* Changes - polish changes filter

* Add some spacing to the picker

* Changes - fix panel rendering when there are no changes
2026-03-27 13:57:29 -07:00
cwebster-99
fea130899c polish 2026-03-27 15:41:55 -05:00
Pierce Boggan
36ab523bba Merge branch 'main' into pierceboggan/fix-@ 2026-03-27 14:36:46 -06:00
Pierce Boggan
8dd3661e5e Merge main, remove duplicate re-export, update notebook import
Resolve merge conflict with origin/main. Remove duplicate re-export
from chatInputCompletions.ts (line 72) per review feedback. Update
notebook.chat.contribution.ts to import directly from
chatInputCompletionUtils.ts.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-27 14:04:47 -06:00
Benjamin Pasero
0496f93688 sessions: use plus icon for Add Chat (#305791)
* docs - update command center actions in layout spec

* sessions: drop Add Chat layout docs

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-27 20:03:34 +00:00
Rob Lourens
b7be16b645 Fix customization file resolution errors for remote agent host sessions (#305767)
Fix errors about loading customizations in remote agenthost workspaces
2026-03-27 13:02:05 -07:00
Anthony Kim
1d01418cd5 Revert terminal editor regressions #298688 , #302139 (#305782) 2026-03-27 12:56:28 -07:00
cwebster-99
9d6cdc36f7 Polish for experiment gating 2026-03-27 14:53:27 -05:00
Logan Ramos
2056bef1cf Don't use trusted telemetry value on model ids (#305760)
* Don't use trusted telemetry value on model ids

* Update src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.ts

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

* Regex

* tests

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-03-27 12:34:01 -07:00
Kyle Cutler
678825d644 Browser view native "add to chat" features (#305745)
* Browser view native "add to chat" features

* safe parsing, better pseudo handling
2026-03-27 11:50:48 -07:00
Bhavya U
483f2ca1d5 Add telemetry for chat todo list widget interactions (#305747) 2026-03-27 11:49:40 -07:00