Skip to content

[pull] main from microsoft:main#1075

Merged
pull[bot] merged 14 commits intocode:mainfrom
microsoft:main
Mar 26, 2026
Merged

[pull] main from microsoft:main#1075
pull[bot] merged 14 commits intocode:mainfrom
microsoft:main

Conversation

@pull
Copy link

@pull pull bot commented Mar 26, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

osortega and others added 14 commits March 25, 2026 12:18
…xt for pinned sessions when grouped by repository
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
chat: use pullRequestState for agent session PR icons
a missed part of  #304521

this adds the same handling of shift+enter for goto symbols just like anything & workspace symbols quick access.
The core-ci task requires reading some companion extension releases. This PR modifies the permissions to allow the build to read those releases.
* Add ChatSessionCustomizationsProvider proposed API

New types in chatSessionCustomizations.d.ts:
- ChatSessionCustomizationType enum (well-known group IDs)
- ChatSessionCustomizationStorageLocation enum
- ChatSessionCustomizationItem, ChatSessionCustomizationItemGroup
- ChatSessionCustomizationsProvider (provideCustomizations + resolveCustomizationDeletion)

New registration function in chatSessionsProvider.d.ts:
- chat.registerChatSessionCustomizationsProvider(chatSessionType, provider)

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

* Implement ChatSessionCustomizationsProvider e2e plumbing

Protocol: DTOs and 5 new methods on MainThread/ExtHost shapes.
Ext host: registerChatSessionCustomizationsProvider, provideCustomizations,
  resolveCustomizationDeletion proxy methods.
Type converters: ChatSessionCustomizations.fromItem/fromGroup.
Main thread: bridge with per-handle emitters, harness descriptor registration.
Service: IChatSessionCustomizationsProvider + registerCustomizationsProvider,
  getCustomizations, resolveCustomizationDeletion on IChatSessionsService.
Harness: registerContributedHarness() on ICustomizationHarnessService,
  derived observable merges built-in + contributed harnesses.
UI: AICustomizationListWidget reads from provider when extension harness
  is active, falls back to IPromptsService for built-in harnesses.
Setting: chat.customizations.providedByExtensions.enabled (experimental).
Command registration: openNewChatSessionInPlace for all contributions.

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

* Unhardcode AgentSessionProviders to support extension-contributed session types

Widen type annotations from AgentSessionProviders enum to AgentSessionTarget
across session target picker, delegation picker, welcome view, and utility
functions. Add default cases to exhaustive switch statements. Fix
chatInputPart getActiveSessionType to fall back to getChatSessionType for
extension-contributed URIs.

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

* Add joshbot extensionDevelopmentPath to Run and Compile Code - OSS task

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

* Wire provider group commands to create buttons in customization UI

When an extension-contributed harness is active, buildCreateActions()
reads commands from the provider's group data instead of the harness
descriptor. Commands flow through the full plumbing:
  extension → protocol DTO → main thread → service → list widget

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

* Add error handling to ext host customizations provider methods

Wrap provideCustomizations and resolveCustomizationDeletion in
try-catch to prevent extension errors from crashing the ext host.

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

* Subscribe to onDidChangeCustomizations in list widget for live updates

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

* Fix group commands race condition, remove resolveCustomizationDeletion

Commands bug: _fetchItemsFromProvider no longer sets _currentGroupCommands
as a side effect. Commands are now extracted in loadItems() after the
section-guard check, eliminating races from computeItemCountForSection.

Deletion: removed resolveCustomizationDeletion from the full stack
(proposed API, protocol, ext host, main thread, service, mocks).

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

* Add NOTES.md with open design items for cross-harness customizations

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

* Update NOTES.md with pattern analysis and concrete context proposal

Analyzed TreeDataProvider, StorageSourceFilter, CompletionItemProvider,
and CodeActionProvider patterns. Proposed ChatSessionCustomizationsContext
parameter with discoveredItems for provider-as-curator model.

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

* Simplify cross-harness approach: pull via chatPromptFiles API

No new API needed. Extensions use existing chat.customAgents,
chat.skills, chat.instructions arrays to discover global items
and merge them in provideCustomizations.

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

* Add swap file for VIM 9.1 configuration

* Remove swap file for VIM configuration

* Fix JoshBot task: inline arg into command string

Shell tasks with && in command don't work with separate args array.

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

* Fix create buttons: call updateAddButton after loadItems

buildCreateActions reads _currentGroupCommands which is populated in
loadItems. Calling updateAddButton before loadItems meant commands
were always undefined for extension harnesses.

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

* Guard extension customizations behind setting as a full feature gate

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

* Fix missing Hooks section, remove redundant config check

- Add 'hooks' case to sectionToCustomizationGroupIds
- Remove dead UseCustomizationsProvider check from widget (already
  enforced at registration in mainThreadChatSessions)
- Remove unused IConfigurationService and ChatConfiguration imports

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

* Wire itemCommands to context menu for extension harness items

Extension-provided itemCommands now appear in the right-click context
menu on customization items when a non-built-in harness is active.
Commands receive the item id and uri as arguments.

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

* Add inSessions flag to Launch Component Explorer task

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

* Fix component fixtures: add IChatSessionsService mock

AICustomizationListWidget now depends on IChatSessionsService.
Add mock to both list widget and management editor fixtures.

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

* Refactor ChatSessionCustomizationItem: remove id property and update related code

* Remove JoshBot task from tasks.json

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

* Rename setting to chat.customizations.providerApi.enabled

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

* Replace hardcoded harness checks with hasCustomizationsProvider

Remove all CustomizationHarness.VSCode/CLI/Claude comparisons from
the list widget. Instead check chatSessionsService.hasCustomizationsProvider()
which works for any harness — built-in or extension-contributed.

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

* Add TODO comments to proposed API for open design questions

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

* Remove NOTES.md

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

* Add TODO: Remove hardcoded providers from core

Mark all knownProvider/knownType if-else patterns that branch on
whether a session type is in the AgentSessionProviders enum.

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

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Raymond Zhao <7199958+rzhao271@users.noreply.github.com>
sessions: refine project grouping in agent sessions view
Add pull request state icon support to session data and related components
* Allow the browser open command to reuse an existing tab

* fix query matching
@pull pull bot locked and limited conversation to collaborators Mar 26, 2026
@pull pull bot added the ⤵️ pull label Mar 26, 2026
@pull pull bot merged commit bc8f9ef into code:main Mar 26, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants