[pull] main from microsoft:main - #1598
Merged
Merged
Conversation
* sessions: Stabilize docked side pane sizing Keep the shared editor node width stable across reloads, session transitions, detail-only layouts, and whole-pane closure. Preserve composition-specific sizing so docked Details takes space from Sessions without cumulative width drift. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * sessions: Preserve pane sizing across layout restores Clear transient sash-reset behavior on session switches, keep live Editor widths synchronized for docked restores, and preserve classic hidden-Editor persistence semantics. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * sessions: Clear stale sash sizing state Discard responsive auto-hide state when the side pane closes and cancel reset-only Details sizing after a later manual sash resize. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* agentHost: discover external Copilot sessions `CopilotAgent` never emitted an external chat. Its only discovery path, `_discoverExtHostChats()`, matched exclusively legacy VS Code extension-host CLI sessions (a `vscode.metadata.json` sidecar with `origin: 'vscode'`), hard-coded `external: false`, and was gated behind `migrateLegacyCopilotCli.enabled`. A session created by the standalone CLI or the GitHub Copilot app — which share `~/.copilot` — was dropped before it ever reached the session registry, so `showExternalSessions` had nothing to show even when set to `all`. Claude and Codex both emit every unknown native chat as external; Copilot was the outlier. Replace it with `_discoverCopilotChats()` / `_emitCopilotChats()`, which enumerate the SDK catalog and classify each chat Agent Host does not already own: a legacy extension-host chat stays internal and adoptable in place (still gated on migrate-legacy), anything else is external and ungated. Discovery starts on first-listener attach behind a `retry` wrapper, mirroring Claude and Codex, so a cold CLI client does not lose the pass; the retry honors `_shutdownPromise` so teardown stops it rather than sleeping on a dead client. Chats whose SDK context carries no working directory are still dropped: `_doResumeSession` requires one and a discovered chat has no other source for it, so surfacing one would produce a row that throws on open. Add logging along the whole pipeline — provider enumeration, per-pass classification counts, registry registration, and how many sessions the `showExternalSessions` filter is holding back — since a session that was discovered but filtered was previously indistinguishable from one that was never discovered at all. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * agentHost: address review feedback on Copilot discovery - Classify each discovered chat inside a try/catch so one unreadable session database no longer rejects the whole catalog scan (and fails every retry with it); the failing chat is logged and skipped instead. - Count only mode-excluded rows in the hidden-sessions log. Adoptable legacy rows are withheld by migrate-legacy, so attributing them to showExternalSessions could report external filtering in 'all' mode. - Await the memoized discovery pass in the test helper instead of polling for a non-empty result, so an expected-empty assertion can no longer pass before classification has run. - Trim inline comments to one line per the coding guidelines. - Describe discovery in AGENTS.md as emitting provider-classified provenance, matching the Copilot legacy exception documented above it. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
test: stabilize agent host reconnect coverage Use distinct logical client IDs for the dropped transports so reconnect scenarios cannot race the shared client for action delivery.\n\n(Written by Copilot)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* sessions: Add external session visibility banner Explain when an Agent Host session came from another application and let users choose which external sessions remain visible. Confirm choices that hide the open session, persist banner dismissal, and reconcile restored session publication with the setting. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * sessions: Add external session filter menus Expose the external-session visibility setting beneath provider filters in both the regular agent sessions list and the Agents Window. Keep the checked option synchronized with effective configuration and update the user setting from either menu. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * sessions: Fix external filter menu test mock Use an overload-compatible configuration service mock so the native TypeScript compiler accepts the external-session menu setting test. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * agentHost: Fix external session metadata test Make the stale metadata overlay test opt into all external sessions so it exercises overlay behavior independently from the new age-based visibility filter. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* sessions: add session details developer command Add a developer command that opens a copyable list of non-archived session names, working directories, and resources. (Written by Copilot) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * sessions: address session details feedback Localize visible action and editor labels, clarify the empty state, and make path coverage platform-aware. (Written by Copilot) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Record the active host/provider stage when the turn hang watchdog fires so no-progress incidents can be separated by pre-provider and provider execution boundaries.\n\n(Written by Copilot)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Forward external provenance through visible session wrappers and distinguish summaries recorded for diffing from summaries actually published to clients. This restores the banner in the Agents Window and allows hidden restored sessions to appear when the setting changes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Require real provider test servers and direct SDK integrations to use temporary provider homes so test sessions, logs, and configuration never reach the developer's real ~/.copilot directory. (Written by Copilot) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep pending sash reset intent across session switches and later sash drags, and avoid rewriting the saved Editor width from live composition changes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep summary baselines current for unpublished restored sessions without broadcasting root deltas. When the session is later published, clients receive the latest complete summary before normal incremental updates resume. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* Initial plan * Fix session metadata dropdown toggles Co-authored-by: benibenj <44439583+benibenj@users.noreply.github.com> * Handle metadata dropdown mouse ordering Co-authored-by: benibenj <44439583+benibenj@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: benibenj <44439583+benibenj@users.noreply.github.com>
* Clarify restricted telemetry size safeguards Document the backend chunk-key casing exception and make the oversized telemetry regression test verify the serialized body byte limit directly. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Document restricted telemetry chunk key exception Name the messagesJSONChunk wire family explicitly in the compressed telemetry documentation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* agentHost: Add agent merge controller Add provider-neutral pull request lifecycle automation backed by the shared GitHub service, with scoped repair tools, native merge execution, persisted session controls, and Agents Window commands. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Refactor agent merge feature implementation and update tests - Improve agent merge logic in various files. - Update tests to reflect changes in agent merge functionality. - Enhance documentation for AGENT_HOST_SESSIONS_PROVIDER. * agentHost: Let providers own autonomous agent merge config Provider agents now select and restore their native unattended configuration, repair prompts carry bounded authorized review-thread detail, and branch and session-wide turn checks are revalidated before claiming a turn or merging. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * agentHost: Advertise agent merge tools only when enabled Gate the Agent Merge server tool group on the host feature setting so sessions without Agent Merge keep their existing tool catalog and provider prompts, and re-advertise host tools when the setting is toggled. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.
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 : )