src/vs/platform/agentHost/node/claude
community-065 · 73 concepts · page 1 of 1
+claudeSessionMetadataStore.ts ×2
2 tests · 57320 LOC · 346 files · introduces 2 tests · 6 LOC · 2 files
+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
1 test · 56919 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+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
5 tests · 56881 LOC · 346 files · introduces 3 tests · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent setClientTools with an equal snapshot does NOT restart|occurrence=1
1 test · 56745 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent createSession({ fork }) with a create-config model override persists it on the fork|occurrence=1
1 test · 56747 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent truncateSession(turnId) resolves the anchor, restarts at it on the same id, and prunes the DB|occurrence=1
1 test · 56769 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent createSession({ fork }) inherits the source permissionMode overlay|occurrence=1
1 test · 56733 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent the truncation anchor is applied exactly once and not leaked to later rebuilds|occurrence=1
1 test · 56795 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent rebind failure leaves the client-tool diff dirty so the next send retries|occurrence=1
1 test · 56788 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent resume keeps the existing overlay model (materialize does not clobber on isResume)|occurrence=1
1 test · 56729 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent createSession({ fork }) forks at the anchor uuid, then materializes lazily on first sendMessage|occurrence=1
1 test · 56729 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent setClientTools registers tools that flow into Options.mcpServers on first materialize|occurrence=1
1 test · 56727 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent setClientTools landing during the materialize gap is re-synced into the live session|occurrence=1
2 tests · 56752 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+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
1 test · 56680 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent setClientTools landing during the resume bootstrap gap is re-synced into the live session|occurrence=1
1 test · 56725 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent truncateSession() with no turnId clears the session in place (deleteSession + fresh same id)|occurrence=1
1 test · 56662 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent shutdown drains a mix of provisional and materialized sessions|occurrence=1
1 test · 56662 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent a rebuild that fails after reading the anchor keeps it staged so the next send retries the truncation|occurrence=1
1 test · 56663 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+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
2 tests · 56656 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) changeModel with same id and unchanged effort skips the SDK setters|occurrence=1
4 tests · 56599 LOC · 346 files · introduces 1 test · 0 LOC · 0 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
5 tests · 56581 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+§3.8 — permissionMode propagation) Test 16b — live state seeded BEFORE first sendMessage flows into Options.permissionMode at materialize|occurrence=1
2 tests · 56658 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent (Phase 9 — runtime mutation surface) setPendingMessages with empty steering and non-empty queued is a no-op|occurrence=1
1 test · 56580 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent resumed session keeps overlay-derived permissionMode on turn 2 (no silent flip to default)|occurrence=1
1 test · 56607 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent materialize resolves a built-in (claude-internal) agent selection to its name|occurrence=1
1 test · 56562 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+Turn.id ↔ uuid invariant)|occurrence=1, claudeAgent.test|title=ClaudeAgent result emits ChatUsage immediately before ChatTurnComplete|occurrence=1, +4
37 tests · 56554 LOC · 346 files · introduces 6 tests · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent sendMessage on a disk-only session (created in another window) resumes from disk|occurrence=1
1 test · 56538 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent disposing a materialized session aborts the controller and rejects the in-flight send|occurrence=1
1 test · 56429 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent dispose racing _writeCustomizationDirectory does not orphan the materialized session (C1)|occurrence=1
1 test · 56181 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeAgent.test|title=ClaudeAgent agent.dispose() during a racing first sendMessage aborts the provisional and disposes the WarmQuery|occurrence=1
1 test · 56160 LOC · 346 files · introduces 1 test · 0 LOC · 0 files
+claudeSdkMessageRouter.ts ×1
15 tests · 28442 LOC · 126 files · introduces 0 tests · 2 LOC · 1 file
+claudeMapSessionEvents.ts ×1
2 tests · 24204 LOC · 107 files · introduces 0 tests · 14 LOC · 1 file
+claudeMapSessionEvents.test|title=claudeMapSessionEvents — direct mapper tests result success does not derive credits from total_cost_usd|occurrence=1, claudeMapSessionEvents.test|title=claudeMapSessionEvents — direct mapper tests result success without modelUsage omits the model field on ChatUsage|occurrence=1, +1
90 tests · 24206 LOC · 107 files · introduces 3 tests · 0 LOC · 0 files
+claudeSessionMetadataStore.ts ×1
32 tests · 16950 LOC · 57 files · introduces 0 tests · 2 LOC · 1 file
+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
2 tests · 3524 LOC · 19 files · introduces 2 tests · 0 LOC · 0 files