agentPeerChats.ts ×3

Frontier kind: Code frontier

unlabeled · c_c6f92941cfb5

23 tests · 10363 LOC · 37 files · introduces 0 tests · 6 LOC · 1 file

Introduces — evidence that enters the hierarchy at this concept

Code
3 ranges6 lines · 1 files
Tests
0 tests

Contains — complete concept membership

All code (extent)
661 ranges10363 lines · 37 files · Browse complete extent
All tests (intent)
23 testsBrowse complete intent

Neighbourhood graph

The orange circle is the focus. Violet and green circles are every ancestor and descendant, broader and narrower, at any distance; blue squares and pink diamonds are the introduced files and exact introduced tests of every visible concept, not only the focus's. Arrows point from broader to narrower concepts and bridge only concepts omitted from this view. Undirected links show source or test introduction. Concept and file size follows LOC; exact test nodes use test-count units.

Introduced files, introduced tests, and structurally relevant concept specialization

In the embedded map, ordinary wheel input scrolls the page; use the visible controls to zoom and drag to pan. Open the full-screen map for canvas navigation: wheel pans, Ctrl/Command plus wheel zooms, and arrow keys pan when this region is focused. On touch screens, open the full-screen map to pan or pinch. If JavaScript or WebGL is unavailable, use the native relationship evidence on this page.

Introduced files, introduced tests, and structurally relevant concept specializationclaudeSessionMetadataStore.ts ×2 · 6 introduced LOCclaudeSessionMetadataSto…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) forks hidden context and filters inherited turns|occurrence=1 · 0 introduced LOCclaudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) preserves a local source turn id while forking from the concrete provider anchor|occurrence=1 · 0 introduced LOCclaudeAgent.test|title=C…claudeAgent.ts ×6 · 17 introduced LOCclaudeAgent.ts ×6claudeAgent.ts ×7 · 28 introduced LOCclaudeAgent.ts ×7claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeModel on a peer chat persists in the catalog so a later resume picks it up|occurrence=1 · 0 introduced LOCclaudeAgent.test|title=C…claudeAgent.ts ×1 · 6 introduced LOCclaudeAgent.ts ×1claudeAgent.test|title=ClaudeAgent — Phase 11 customizations sendMessage routes each peer chat to its own forked chat|occurrence=1 · 0 introduced LOCclaudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations sendMessage to a peer chat targets a chat distinct from the parent session|occurrence=1, claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ fork }) forks the source chat; the peer chat resumes its own forked SDK session|occurrence=1, +1 · 0 introduced LOCclaudeAgent.test|title=C…claudeAgent.ts ×1 · 2 introduced LOCclaudeAgent.ts ×1claudeAgent.ts ×10 · 65 introduced LOCclaudeAgent.ts ×10 restore round-trip createChat side chat forks hidden context and filters inherited turns|occurrence=1 · 0 introduced LOC restore round-trip crea…copilotAgent.ts ×4 · 23 introduced LOCcopilotAgent.ts ×4copilotAgent.ts ×4 · 28 introduced LOCcopilotAgent.ts ×4copilotAgent.test|title=CopilotAgent chat surface (IAgentChats) sendMessage routes a peer chat URI to the peer chat|occurrence=1 · 0 introduced LOCcopilotAgent.test|title=… restore round-trip sendMessage routes a turn to the targeted peer chat only|occurrence=1 · 0 introduced LOC restore round-trip send…copilotAgent.ts ×1 · 2 introduced LOCcopilotAgent.ts ×1copilotAgent.ts ×3 · 4 introduced LOCcopilotAgent.ts ×3agentPeerChats.ts ×1 · 2 introduced LOCagentPeerChats.ts ×1agentPeerChats.test|title=agentPeerChats strips hidden context even when the source text contains the legacy delimiter|occurrence=1 · 0 introduced LOCagentPeerChats.test|titl…agentPeerChats.ts ×1 · 7 introduced LOCagentPeerChats.ts ×1agentPeerChats.test|title=agentPeerChats injects active source context exactly once when the inherited transcript is missing the source turn|occurrence=1 · 0 introduced LOCagentPeerChats.test|titl…agentPeerChats.ts ×3 · 17 introduced LOCagentPeerChats.ts ×3agentPeerChats.ts ×1 · 8 introduced LOCagentPeerChats.ts ×1agentPeerChats.ts ×2 · 3 introduced LOCagentPeerChats.ts ×2agentPeerChats.ts ×1 · 7 introduced LOCagentPeerChats.ts ×1agentPeerChats.ts ×5 · 8 introduced LOCagentPeerChats.ts ×5agentPeerChats.ts ×1 · 2 introduced LOCagentPeerChats.ts ×1agentPeerChats.ts ×25 · 131 introduced LOCagentPeerChats.ts ×25agentHostConversationContext.ts ×3 · 57 introduced LOCagentHostConversationCon…sessionState.ts ×57 · 914 introduced LOCsessionState.ts ×57buffer.ts ×42 · 483 introduced LOCbuffer.ts ×42state.ts ×1 · 711 introduced LOCstate.ts ×1commands.ts ×1 · 1661 introduced LOCcommands.ts ×1state.ts ×1 · 1351 introduced LOCstate.ts ×1state.ts ×1 · 73 introduced LOCstate.ts ×1state.ts ×1 · 1557 introduced LOCstate.ts ×1uri.test|title=URI URI#file, win-speciale|occurrence=1, charCode.test|title=CharCode has good values|occurrence=1, +2 · 0 introduced LOCuri.test|title=URI URI#f…utils.ts ×3 · 9 introduced LOCutils.ts ×3lifecycle.ts ×2 · 4 introduced LOClifecycle.ts ×2lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×4 · 8 introduced LOClifecycle.ts ×4lifecycle.ts ×6 · 16 introduced LOClifecycle.ts ×6lazy.ts ×1 · 2 introduced LOClazy.ts ×1lazy.ts ×3 · 37 introduced LOClazy.ts ×3lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 2 introduced LOClifecycle.ts ×1lifecycle.ts ×1 · 3 introduced LOClifecycle.ts ×1map.ts ×97 · 3334 introduced LOCmap.ts ×97src/vs/base/common/arrays.ts · 949 LOCcommon/arrays.tssrc/vs/base/common/arraysFind.ts · 226 LOCcommon/arraysFind.tssrc/vs/base/common/assert.ts · 91 LOCcommon/assert.tssrc/vs/base/common/buffer.ts · 499 LOCcommon/buffer.tssrc/vs/base/common/charCode.ts · 450 LOCcommon/charCode.tssrc/vs/base/common/collections.ts · 176 LOCcommon/collections.tssrc/vs/base/common/errors.ts · 357 LOCcommon/errors.tssrc/vs/base/common/functional.ts · 32 LOCcommon/functional.tssrc/vs/base/common/iterator.ts · 194 LOCcommon/iterator.tssrc/vs/base/common/lazy.ts · 57 LOCcommon/lazy.tssrc/vs/base/common/lifecycle.ts · 974 LOCcommon/lifecycle.tssrc/vs/base/common/map.ts · 1016 LOCcommon/map.tssrc/vs/base/common/marshallingIds.ts · 33 LOCcommon/marshallingIds.tssrc/vs/base/common/path.ts · 1589 LOCcommon/path.tssrc/vs/base/common/platform.ts · 281 LOCcommon/platform.tssrc/vs/base/common/process.ts · 76 LOCcommon/process.tssrc/vs/base/common/stream.ts · 790 LOCcommon/stream.tssrc/vs/base/common/types.ts · 410 LOCcommon/types.tssrc/vs/base/common/uri.ts · 754 LOCcommon/uri.tssrc/vs/base/test/common/utils.ts · 107 LOCcommon/utils.tssrc/vs/nls.ts · 244 LOCvs/nls.tssrc/vs/platform/agentHost/common/agentHostConversationContext.ts · 98 LOCcommon/agentHostConversa…src/vs/platform/agentHost/common/meta/agentToolCallMeta.ts · 157 LOCmeta/agentToolCallMeta.t…src/vs/platform/agentHost/common/state/protocol/channels-changeset/commands.ts · 105 LOCchannels-changeset/comma…src/vs/platform/agentHost/common/state/protocol/channels-changeset/state.ts · 277 LOCchannels-changeset/state…src/vs/platform/agentHost/common/state/protocol/channels-chat/commands.ts · 147 LOCchannels-chat/commands.t…src/vs/platform/agentHost/common/state/protocol/channels-chat/state.ts · 1557 LOCchannels-chat/state.tssrc/vs/platform/agentHost/common/state/protocol/channels-resource-watch/state.ts · 73 LOCchannels-resource-watch/…src/vs/platform/agentHost/common/state/protocol/channels-root/state.ts · 244 LOCchannels-root/state.tssrc/vs/platform/agentHost/common/state/protocol/channels-session/commands.ts · 323 LOCchannels-session/command…src/vs/platform/agentHost/common/state/protocol/channels-session/state.ts · 1351 LOCchannels-session/state.t…src/vs/platform/agentHost/common/state/protocol/channels-terminal/state.ts · 173 LOCchannels-terminal/state.…src/vs/platform/agentHost/common/state/protocol/commands.ts · 15 LOCprotocol/commands.tssrc/vs/platform/agentHost/common/state/protocol/common/commands.ts · 1071 LOCcommon/commands.tssrc/vs/platform/agentHost/common/state/protocol/state.ts · 17 LOCprotocol/state.tssrc/vs/platform/agentHost/common/state/sessionState.ts · 1405 LOCstate/sessionState.tssrc/vs/platform/agentHost/node/agentPeerChats.ts · 354 LOCnode/agentPeerChats.tssrc/vs/platform/agentHost/node/claude/claudeAgent.ts · 2312 LOCclaude/claudeAgent.tssrc/vs/platform/agentHost/node/claude/claudeSdkPipeline.ts · 703 LOCclaude/claudeSdkPipeline…src/vs/platform/agentHost/node/claude/claudeSessionMetadataStore.ts · 205 LOCclaude/claudeSessionMeta…src/vs/platform/agentHost/node/claude/claudeSubagentRegistry.ts · 271 LOCclaude/claudeSubagentReg…src/vs/platform/agentHost/node/copilot/copilotAgent.ts · 4445 LOCcopilot/copilotAgent.tscharCode.test|title=CharCode has good values|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/charCode.test|title=CharCode has good values|occurrence=1charCode.test|title=Char…path.test|title=Paths (Node Implementation) path|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/path.test|title=Paths (Node Implementation) path|occurrence=1path.test|title=Paths (N…uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI File paths containing apostrophes break URI parsing and cannot be opened #276075|occurrence=1uri.test|title=URI File …uri.test|title=URI URI#file, win-speciale|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/base/test/common/uri.test|title=URI URI#file, win-speciale|occurrence=1uri.test|title=URI URI#f…agentPeerChats.test|title=agentPeerChats does not duplicate active source context when the inherited transcript already contains the source turn|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats does not duplicate active source context when the inherited transcript already contains the source turn|occurrence=1agentPeerChats.test|titl…agentPeerChats.test|title=agentPeerChats first prompt prefers explanation and remains hidden from visible history|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats first prompt prefers explanation and remains hidden from visible history|occurrence=1agentPeerChats.test|titl…agentPeerChats.test|title=agentPeerChats injects active source context exactly once when the inherited transcript is missing the source turn|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats injects active source context exactly once when the inherited transcript is missing the source turn|occurrence=1agentPeerChats.test|titl…agentPeerChats.test|title=agentPeerChats injects completed local-turn context even when the inherited transcript already contains the concrete provider anchor|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats injects completed local-turn context even when the inherited transcript already contains the concrete provider anchor|occurrence=1agentPeerChats.test|titl…agentPeerChats.test|title=agentPeerChats injects selected text exactly once and keeps it out of visible history|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats injects selected text exactly once and keeps it out of visible history|occurrence=1agentPeerChats.test|titl…agentPeerChats.test|title=agentPeerChats later prompts are not wrapped again|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats later prompts are not wrapped again|occurrence=1agentPeerChats.test|titl…agentPeerChats.test|title=agentPeerChats strips hidden context even when the source text contains the legacy delimiter|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/agentPeerChats.test|title=agentPeerChats strips hidden context even when the source text contains the legacy delimiter|occurrence=1agentPeerChats.test|titl…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeAgent on a peer chat persists to its overlay so a later resume picks it up|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeAgent on a peer chat persists to its overlay so a later resume picks it up|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeModel on a peer chat persists in the catalog so a later resume picks it up|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeModel on a peer chat persists in the catalog so a later resume picks it up|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.changeAgent on a peer persists to its overlay so a later resume picks it up (parity with legacy changeAgent)|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.changeAgent on a peer persists to its overlay so a later resume picks it up (parity with legacy changeAgent)|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.fork forks the source chat; chats.sendMessage resumes the peer chat's own forked SDK session|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.fork forks the source chat; chats.sendMessage resumes the peer chat's own forked SDK session|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ fork }) forks the source chat; the peer chat resumes its own forked SDK session|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ fork }) forks the source chat; the peer chat resumes its own forked SDK session|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) forks hidden context and filters inherited turns|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) forks hidden context and filters inherited turns|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) preserves a local source turn id while forking from the concrete provider anchor|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) preserves a local source turn id while forking from the concrete provider anchor|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations restart round-trip: a forked peer chat re-materializes from the orchestrator's providerData on a fresh agent backed by the same database|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations restart round-trip: a forked peer chat re-materializes from the orchestrator's providerData on a fresh agent backed by the same database|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations sendMessage routes each peer chat to its own forked chat|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations sendMessage routes each peer chat to its own forked chat|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations sendMessage to a peer chat targets a chat distinct from the parent session|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations sendMessage to a peer chat targets a chat distinct from the parent session|occurrence=1claudeAgent.test|title=C…claudeAgent.test|title=ClaudeAgent — Phase 11 customizations setPendingMessages routes steering to a materialized peer chat, warns for an unknown one|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations setPendingMessages routes steering to a materialized peer chat, warns for an unknown one|occurrence=1claudeAgent.test|title=C…copilotAgent.test|title=CopilotAgent chat surface (IAgentChats) sendMessage routes a peer chat URI to the peer chat|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/copilotAgent.test|title=CopilotAgent chat surface (IAgentChats) sendMessage routes a peer chat URI to the peer chat|occurrence=1copilotAgent.test|title=… restore round-trip createChat side chat forks hidden context and filters inherited turns|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/copilotAgent.test|title=CopilotAgent peer chat create / fork / model+agent / restore round-trip createChat side chat forks hidden context and filters inherited turns|occurrence=1 restore round-trip crea… restore round-trip createChat side chat preserves a local source turn id while forking from the concrete provider anchor|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/copilotAgent.test|title=CopilotAgent peer chat create / fork / model+agent / restore round-trip createChat side chat preserves a local source turn id while forking from the concrete provider anchor|occurrence=1 restore round-trip crea… restore round-trip round-trips peer chats through providerData + materializeChat and resumes per-chat history after a restart|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/copilotAgent.test|title=CopilotAgent peer chat create / fork / model+agent / restore round-trip round-trips peer chats through providerData + materializeChat and resumes per-chat history after a restart|occurrence=1 restore round-trip roun… restore round-trip sendMessage routes a turn to the targeted peer chat only|occurrence=1 · introduced test · mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/copilotAgent.test|title=CopilotAgent peer chat create / fork / model+agent / restore round-trip sendMessage routes a turn to the targeted peer chat only|occurrence=1 restore round-trip send…Focused concept · agentPeerChats.ts ×3 · 6 introduced LOCagentPeerChats.ts ×3

Graph controls are ready.

Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.

Native relationship evidence

Every exact file and test below is linked only from the concept that introduces it.

Introduced tests

Every collected test enters the hierarchy at exactly one concept.

No tests are introduced at this concept. Its intent tests are introduced by other concepts.

Introduced code

Every collected source range enters the hierarchy at exactly one concept.

1 file ranked by introduced lines: 6 introduced LOC across 3 ranges. Expand a file to inspect source; the > gutter marks introduced lines.

src/vs/platform/agentHost/node/agentPeerChats.ts 6 introduced LOC · 3 ranges

Open complete file

93
94 export function prepareSideChatPrompt(prompt: string, turns: readonly Turn[], sideChat: IPersistedSideChat | undefined): string {
95 > if (!sideChat || turns.length > sideChat.inheritedTurnCount) { agentPeerChats.ts
96 return prompt;
97 }
98 const selectedSourceTurn = turns.find(turn => turn.id === sideChat.turnId);
99 > const sourceContext = selectedSourceTurn ? undefined : sideChat.context; agentPeerChats.ts
100 > let partialResponse = sideChat.partialResponse;
101 > if (partialResponse) {
102 const inheritedResponse = selectedSourceTurn ? renderResponseMarkdown(selectedSourceTurn.responseParts) : '';
103 if (inheritedResponse.includes(partialResponse)) {
105 }
106 }
107 > return injectSideChatContext(prompt, partialResponse, sourceContext, sideChat.selection?.text); agentPeerChats.ts
108 > }
109
110 function buildSideChatContextBlock(message: string, response: string | undefined): string | undefined {