claudeModelId.ts ×1
Frontier kind: Code frontier
unlabeled · c_804a12dd759d
210 tests · 3501 LOC · 19 files · introduces 0 tests · 1 LOC · 1 file
Introduces — evidence that enters the hierarchy at this concept
- Code
- 1 range1 lines · 1 files
- Tests
- 0 tests
Contains — complete concept membership
- All code (extent)
- 503 ranges3501 lines · 19 files · Browse complete extent
- All tests (intent)
- 210 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.
- Focus concept
- Ancestors (broader)
- Descendants (narrower)
- Introduced files
- Introduced tests
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.
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.
- claudeModelId.ts ×1 — Focused concept Introduced files:
- claudeAgent.test|title=ClaudeAgent materialize resolves the SDK agent name from the file frontmatter, not the filename|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations mid-turn reducer toggle reconciles before the following send|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
-
claudeSessionMetadataStore.ts ×2 — Ancestor (broader)
Introduced files:
- src/vs/platform/agentHost/node/claude/claudeAgent.ts
- src/vs/platform/agentHost/node/claude/claudeSessionMetadataStore.ts
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=1mocha: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=1
- claudeSdkPipeline.ts ×1 — Ancestor (broader) Introduced files:
- claudeSdkPipeline.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createChat({ sideChat }) forks hidden context and filters inherited turns|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeAgentSession.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeAgent on a materialized session triggers a rebind with the new Options.agent on the rebuilt Query|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeAgent(undefined) clears the selection: rebind, Options.agent omitted|occurrence=1
-
claudeAgentSession.ts ×3 — Ancestor (broader)
Introduced files:
- src/vs/platform/agentHost/node/claude/claudeAgent.ts
- src/vs/platform/agentHost/node/claude/claudeAgentSession.ts
- claudeAgent.ts ×3 — Ancestor (broader) Introduced files:
-
claudeAgent.ts ×7 — Ancestor (broader)
Introduced files:
- src/vs/platform/agentHost/node/agentPeerChats.ts
- src/vs/platform/agentHost/node/claude/claudeAgent.ts
- 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 — Ancestor (broader) Introduced tests:
-
claudeAgent.ts ×1 — Ancestor (broader)
Introduced files:
- src/vs/platform/agentHost/node/claude/claudeAgent.ts
- src/vs/platform/agentHost/node/claude/claudeSdkPipeline.ts
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.ts ×10 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) abortSession denies any parked permission requests so the SDK canUseTool callback unwinds with deny instead of leaving stale UI behind|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations reducer-backed customization enablement stays isolated per session|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent setClientTools with an equal snapshot does NOT restart|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent createSession({ fork }) with a create-config model override persists it on the fork|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent truncateSession(turnId) resolves the anchor, restarts at it on the same id, and prunes the DB|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent the truncation anchor is applied exactly once and not leaked to later rebuilds|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent rebind failure leaves the client-tool diff dirty so the next send retries|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent resume keeps the existing overlay model (materialize does not clobber on isResume)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent FakeQuery.setMcpServers stays unmodeled (Phase 10 never calls Query.setMcpServers for client tools)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent setClientTools registers tools that flow into Options.mcpServers on first materialize|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent setClientTools after materialize triggers yield-restart on next sendMessage with the new tool set|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations send pre-flight: dirty customizations triggers a rebind (SDK plugin URI set is captured at startup, so any change must restart the Query)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) rebind re-applies bijective state (model + effort) on the new Query|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent setClientTools landing during the materialize gap is re-synced into the live session|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent truncateSession() with no turnId on an UNLOADED session deletes + recreates fresh on the same id, preserving the overlay (cold remove-all)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent setClientTools landing during the resume bootstrap gap is re-synced into the live session|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) abortSession on a materialized session cancels the in-flight turn and leaves the session reusable|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeMapSessionEvents.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.test|title=ClaudeAgent shutdown drains a mix of provisional and materialized sessions|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeSdkPipeline.ts ×2 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) changeModel with `max` effort passes `max` through on the runtime path|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent a rebuild that fails after reading the anchor keeps it staged so the next send retries the truncation|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) subprocess crash mid-stream rejects the in-flight turn and the next sendMessage rebinds via resume|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) changeModel with same id and unchanged effort skips the SDK setters|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) steering_consumed fires when the iterable hands the steering message to the SDK|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent a pending truncation anchor reaches the next rebuild as Options.resumeSessionAt, consumed once|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations getSessionCustomizations resolves against a provisional session|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files:
-
claudeSdkPipeline.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) intermediate result during steering does NOT complete the in-flight sendMessage or fire ChatTurnComplete|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) intermediate result during steering does NOT settle the original sendMessage promise (regression for C1)|occurrence=1
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) changeModel on a provisional session mutates the pending model bag (no SDK contact)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- §3.8 — permissionMode propagation) Test 16b — live state seeded BEFORE first sendMessage flows into Options.permissionMode at materialize|occurrence=1 — Ancestor (broader) Introduced tests:
- claudePromptResolver.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) setPendingMessages with empty steering and non-empty queued is a no-op|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeSdkMessageRouter.ts ×1 — Ancestor (broader) Introduced files:
- Phase 6.1 C2)|occurrence=1 — Ancestor (broader) Introduced tests:
- Phase 6.1 C2)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent materialize resolves a built-in (claude-internal) agent selection to its name|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeSdkPipeline.ts ×1 — Ancestor (broader) Introduced files:
- claudeSdkPipeline.ts ×2 — Ancestor (broader) Introduced files:
-
Turn.id ↔ uuid invariant)|occurrence=1, claudeAgent.test|title=ClaudeAgent result emits ChatUsage immediately before ChatTurnComplete|occurrence=1, +4 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent (Phase 8 — file edit tracking via SDK message stream) Options carries enableFileCheckpointing on and no SDK hooks (file-edit tracking is observed off the message stream, not via user-bypassable hooks)|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent (Phase 8 — file edit tracking via SDK message stream) Options carries forwardSubagentText: true so live subagent text + thinking flow through (Phase 12 step 1)|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent first sendMessage on a provisional session materializes it (single startup, single materialize event)|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent materialize event payload shape — { session, workingDirectory, project: undefined }|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent result emits ChatUsage immediately before ChatTurnComplete|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent sendMessage tags SDKUserMessage.uuid with the effective turn id (M1 / Turn.id ↔ uuid invariant)|occurrence=1
- claudeAgentSession.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent sendMessage on a disk-only session (created in another window) resumes from disk|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeAgent.ts ×2 — Ancestor (broader)
Introduced files:
- src/vs/platform/agentHost/node/claude/claudeAgent.ts
- src/vs/platform/agentHost/node/workspacelessScratchDir.ts
- claudeSdkPipeline.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgentSession.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgentSession.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent disposing a materialized session aborts the controller and rejects the in-flight send|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeSdkPipeline.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgentSession.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent dispose racing _writeCustomizationDirectory does not orphan the materialized session (C1)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudePromptResolver.ts ×1 — Ancestor (broader) Introduced files:
- claudeSdkPipeline.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
-
claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeModel on a peer chat fires onDidChangeChatData with the refreshed providerData|occurrence=1, claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.changeModel on a peer fires onDidChangeChatData with the refreshed providerData (parity with legacy changeModel)|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations changeModel on a peer chat fires onDidChangeChatData with the refreshed providerData|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.changeModel on a peer fires onDidChangeChatData with the refreshed providerData (parity with legacy changeModel)|occurrence=1
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- agentPeerChats.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations chats.createChat persists a peer chat; getChats lists it; chats.disposeChat removes it|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×6 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×12 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createSession eager seeding suppresses orphan customization progress|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent disposing a provisional session never calls SDK startup and removes the record|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations setClientCustomizations forwards each item as a SessionCustomizationUpdated action|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createSession seeds the eager activeClient customizations to the plugin manager|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent shutdown clears provisional sessions; concurrent disposeSession is safe|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent shutdown is idempotent and returns the same memoized promise on concurrent calls|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent disposeSession removes the wrapper but does NOT delete the SDK or DB session|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createSession mints a provisional session and disposeSession tears it down|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- <uuid> URI with provisional: true; no DB or SDK contact|occurrence=1 — Ancestor (broader) Introduced tests:
- agentConfigurationService.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent createSession honors config.session when the workbench pre-mints the URI|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent — Phase 11 customizations createSession without an activeClient does not sync customizations|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgentSession.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent proxy-mode authenticate with an unchanged token starts the proxy when no handle exists|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- required when a proxy handle already exists|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×3 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×2 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×4 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent enterprise: getProtectedResources + authenticate use the computed enterprise resource|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent coalesces concurrent refreshModels calls onto one CAPI models request|occurrence=1 — Ancestor (broader) Introduced tests:
- I5)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent authenticate populates full pricing metadata from billing tokenPrices|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeAgent.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent clears models when enumeration for a replacement token fails|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent keeps the last known-good models when a periodic refresh fails|occurrence=1
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent authenticate rejects non-GitHub resources without disturbing state|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent authenticate with a different token restarts the proxy and disposes the old handle|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeAgent.test|title=ClaudeAgent model filter excludes non-Claude entries|occurrence=1, claudeAgent.test|title=ClaudeAgent authenticate populates models filtered to Claude family|occurrence=1, +1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent authenticate populates models filtered to Claude family|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent authenticate surfaces the CAPI chat-default model first; ties preserve insertion order|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeAgent.test|title=ClaudeAgent model filter excludes non-Claude entries|occurrence=1
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.test|title=ClaudeAgent stale model writes from an old token are dropped|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.test|title=ClaudeAgent authenticate retries proxy startup after a transient failure|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeAgent.ts ×1 — Ancestor (broader) Introduced files:
- claudeAgent.ts ×3 — Ancestor (broader) Introduced files:
- claudeProxyService.test|title=ClaudeProxyService Credits reporting streaming: copilot_usage.total_nano_aiu fires onDidReportCredits with the session id|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeProxyService.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeProxyService.test|title=ClaudeProxyService Credits reporting non-streaming: copilot_usage.total_nano_aiu fires onDidReportCredits|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeProxyService.ts ×1 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×2 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×1 — Ancestor (broader) Introduced files:
-
claudeProxyService.test|title=ClaudeProxyService Streaming thinking_delta events pass through|occurrence=1, claudeProxyService.test|title=ClaudeProxyService Streaming tool-use input_json_delta events pass through|occurrence=1, +2 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeProxyService.test|title=ClaudeProxyService Streaming emits SSE frames in order with hand-rolled framing and rewrites message_start.message.model|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeProxyService.test|title=ClaudeProxyService Streaming socket.setNoDelay(true) is called on streaming responses|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeProxyService.test|title=ClaudeProxyService Streaming thinking_delta events pass through|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeProxyService.test|title=ClaudeProxyService Streaming tool-use input_json_delta events pass through|occurrence=1
- claudeProxyService.ts ×2 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×3 — Ancestor (broader) Introduced files: Introduced tests:
- claudeProxyService.ts ×2 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×4 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×2 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×10 — Ancestor (broader) Introduced files:
- messages model translation SDK ID inbound is translated to endpoint ID upstream|occurrence=1 — Ancestor (broader) Introduced tests:
- messages model translation endpoint ID inbound is also accepted|occurrence=1 — Ancestor (broader) Introduced tests:
- messages model translation non-streaming response model is rewritten to SDK format|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeProxyService.ts ×1 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×1 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×2 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeProxyService.ts ×3 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×4 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×3 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×4 — Ancestor (broader) Introduced files:
- claudeProxyService.ts ×2 — Ancestor (broader) Introduced files: Introduced tests:
- claudeProxyService.ts ×4 — Ancestor (broader) Introduced files: Introduced tests:
- claudeModelId.test|title=parseClaudeModelId toSdkModelId (standalone) normalizes endpoint-format Claude IDs to SDK format; passes through SDK-format and non-Claude IDs unchanged|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.test|title=parseClaudeModelId toEndpointModelId produces single-digit version when no minor|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
-
claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) 1m on non-opus model is not included in SDK model ID|occurrence=1, claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) 1m on non-opus model is not included in endpoint model ID|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) 1m on non-opus model is not included in SDK model ID|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) 1m on non-opus model is not included in endpoint model ID|occurrence=1
- claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) 1m on opus converts to correct SDK model ID|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeModelId.test|title=parseClaudeModelId toSdkModelId strips date suffix from SDK IDs|occurrence=1, claudeModelId.test|title=parseClaudeModelId toEndpointModelId produces dot-separated version for major.minor|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId toEndpointModelId produces dot-separated version for major.minor|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId toSdkModelId strips date suffix from SDK IDs|occurrence=1
-
claudeModelId.test|title=parseClaudeModelId toEndpointModelId normalizes old-format SDK IDs|occurrence=1, claudeModelId.test|title=parseClaudeModelId toSdkModelId normalizes old-format SDK IDs to new format|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId toEndpointModelId normalizes old-format SDK IDs|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId toSdkModelId normalizes old-format SDK IDs to new format|occurrence=1
- claudeModelId.test|title=parseClaudeModelId toSdkModelId produces single-digit version when no minor|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.test|title=parseClaudeModelId caching returns the same object for repeated calls|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeModelId.test|title=parseClaudeModelId case insensitivity parses mixed case input|occurrence=1, claudeModelId.test|title=parseClaudeModelId parsing SDK model IDs parses claude-{name}-{major}-{date}|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId case insensitivity parses mixed case input|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId parsing SDK model IDs parses claude-{name}-{major}-{date}|occurrence=1
- claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) 1m on opus converts to correct endpoint model ID|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeModelId.test|title=parseClaudeModelId toEndpointModelId is identity for endpoint-format IDs|occurrence=1, claudeModelId.test|title=parseClaudeModelId toSdkModelId produces dash-separated version for major.minor|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId toEndpointModelId is identity for endpoint-format IDs|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId toSdkModelId produces dash-separated version for major.minor|occurrence=1
- claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) parses endpoint ID with 1m context variant (dot version)|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) parses single-version ID with modifier|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.test|title=parseClaudeModelId parsing SDK model IDs parses claude-{name}-{major}-{minor}-{date}|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.test|title=parseClaudeModelId parsing endpoint model IDs parses claude-{name}-{major}|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files: Introduced tests:
- claudeModelId.test|title=parseClaudeModelId modifiers (non-date suffixes) parses SDK ID with 1m context variant (dash version)|occurrence=1 — Ancestor (broader) Introduced tests:
-
claudeModelId.test|title=parseClaudeModelId parsing endpoint model IDs parses claude-haiku-3.5|occurrence=1, claudeModelId.test|title=parseClaudeModelId parsing endpoint model IDs parses claude-{name}-{major}.{minor}|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId parsing endpoint model IDs parses claude-haiku-3.5|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId parsing endpoint model IDs parses claude-{name}-{major}.{minor}|occurrence=1
- claudeModelId.test|title=parseClaudeModelId caching returns the same object for different casing of the same ID|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.test|title=parseClaudeModelId tryParseClaudeModelId returns a result for valid Claude IDs|occurrence=1 — Ancestor (broader) Introduced tests:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
-
claudeModelId.test|title=parseClaudeModelId case insensitivity parses uppercase input|occurrence=1, claudeModelId.test|title=parseClaudeModelId parsing SDK model IDs parses SDK ID without date suffix|occurrence=1 — Ancestor (broader)
Introduced tests:
mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId case insensitivity parses uppercase input|occurrence=1mocha:v1|namespace=vscode@05c208e9e28d8c1c723fa08f85e2b7a96092e8e5|file=vs/platform/agentHost/test/node/claudeModelId.test|title=parseClaudeModelId parsing SDK model IDs parses SDK ID without date suffix|occurrence=1
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×1 — Ancestor (broader) Introduced files:
- claudeModelId.ts ×4 — Descendant (narrower) Introduced files:
- claudeModelId.ts ×9 — Descendant (narrower) Introduced files:
- claudeModelId.ts ×9 — Descendant (narrower) Introduced files:
- utils.ts ×3 — Descendant (narrower) Introduced files:
- lifecycle.ts ×2 — Descendant (narrower) Introduced files:
- lifecycle.ts ×4 — Descendant (narrower) Introduced files:
- lifecycle.ts ×6 — Descendant (narrower) Introduced files:
- lifecycle.ts ×1 — Descendant (narrower) Introduced files:
- lifecycle.ts ×1 — Descendant (narrower) Introduced files:
- lifecycle.ts ×1 — Descendant (narrower) Introduced files:
-
map.ts ×97 — Descendant (narrower)
Introduced files:
- src/vs/base/common/arrays.ts
- src/vs/base/common/arraysFind.ts
- src/vs/base/common/assert.ts
- src/vs/base/common/charCode.ts
- src/vs/base/common/collections.ts
- src/vs/base/common/errors.ts
- src/vs/base/common/functional.ts
- src/vs/base/common/iterator.ts
- src/vs/base/common/lifecycle.ts
- src/vs/base/common/map.ts
- src/vs/base/common/marshallingIds.ts
- src/vs/base/common/path.ts
- src/vs/base/common/platform.ts
- src/vs/base/common/process.ts
- src/vs/base/common/types.ts
- src/vs/base/common/uri.ts
- src/vs/base/test/common/utils.ts
- src/vs/nls.ts
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: 1 introduced LOC across 1 ranges. Expand a file to inspect source; the > gutter marks introduced lines.