sessionDatabase.ts ×1
Frontier kind: Code frontier
unlabeled · c_add61a709e25
59 tests · 14041 LOC · 48 files · introduces 0 tests · 4 LOC · 1 file
Introduces — evidence that enters the hierarchy at this concept
Code
1 range 4 lines · 1 files
Tests
0 tests
Contains — complete concept membership
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.
JavaScript is disabled; use the native relationship evidence on this page to explore the same evidence.
Native relationship evidence
Every exact file and test below is linked only from the concept that introduces it.
sessionDatabase.ts ×1 — Focused concept
Introduced files:
agentService.test|title=AgentService (node dispatcher) session config persistence createSession + restoreSession round-trip restores initial config without any mid-session changes|occurrence=1 — Ancestor (broader)
Introduced tests:
agentService.test|title=AgentService (node dispatcher) session config persistence restoreSession overlays persisted config values onto the resolved config|occurrence=1 — Ancestor (broader)
Introduced tests:
agentService.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
agentService.ts ×2 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
Introduced tests:
agentService.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
agentService.test|title=AgentService (node dispatcher) session config persistence createSession persists initial config values to the session DB|occurrence=1 — Ancestor (broader)
Introduced tests:
agentService.test|title=AgentService (node dispatcher) session config persistence createSession does not write configValues when there are no values|occurrence=1 — Ancestor (broader)
Introduced tests:
agentService.test|title=AgentService (node dispatcher) aggregation listSessions overlays the AH-owned workspaceless marker for any agent|occurrence=1 — Ancestor (broader)
Introduced tests:
agentService.test|title=AgentService (node dispatcher) aggregation listSessions overlays custom title from session database|occurrence=1 — Ancestor (broader)
Introduced tests:
agentSideEffects.test|title=AgentSideEffects title persistence handleListSessions returns persisted custom title|occurrence=1 — Ancestor (broader)
Introduced tests:
agentService.ts ×1 — Ancestor (broader)
Introduced files:
agentHostChangesetService.ts ×6 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×3 — Ancestor (broader)
Introduced files:
agentSideEffects.test|title=AgentSideEffects title persistence SessionConfigChanged persists merged config values to the database|occurrence=1 — Ancestor (broader)
Introduced tests:
agentSideEffects.test|title=AgentSideEffects title persistence SessionConfigChanged notifies the agent with the post-reducer merged values|occurrence=1 — Ancestor (broader)
Introduced tests:
agentSideEffects.test|title=AgentSideEffects title persistence SessionTitleChanged persists to the database|occurrence=1 — Ancestor (broader)
Introduced tests:
historyRecordFixtures.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
historyRecordFixtures.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
historyRecordFixtures.ts ×5 — Ancestor (broader)
Introduced files:
historyRecordFixtures.test|title=mapSessionEventsToHistoryRecords file edit restoration non-edit tools do not get file edits even if db has data|occurrence=1 — Ancestor (broader)
Introduced tests:
fileEditTracker.test|title=FileEditTracker tracks edit for newly created file (no before content)|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
fileEditTracker.ts ×1 — Ancestor (broader)
Introduced files:
fileEditTracker.test|title=FileEditTracker tracks edit start and complete for existing file|occurrence=1 — Ancestor (broader)
Introduced tests:
fileEditTracker.test|title=FileEditTracker before and after content can be read from database|occurrence=1 — Ancestor (broader)
Introduced tests:
fileEditTracker.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.test|title=SessionDatabase chat drafts setChatDraft and getChatDraft round-trip|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.test|title=SessionDatabase reviewed files getReviewedFiles returns all entries in insertion order|occurrence=1, sessionDatabase.test|title=SessionDatabase reviewed files marking the same (uri, nonce) twice keeps a single entry|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.test|title=SessionDatabase file edits replace on conflict (same toolCallId + filePath)|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase turns deleteTurn cascades to file edits|occurrence=1, sessionDatabase.test|title=SessionDatabase turns deleteTurn only removes its own edits|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase file edits store and retrieve a file edit|occurrence=1, sessionDatabase.test|title=SessionDatabase file edits retrieve edits across multiple tool calls|occurrence=1, +1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase file edits auto-creates turn if it does not exist|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase file edits persists binary content correctly|occurrence=1, sessionDatabase.test|title=SessionDatabase file edits readFileEditContent returns content on demand|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.test|title=SessionDatabase file edits returns empty array for unknown tool call IDs|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase session metadata setMetadata overwrites existing value|occurrence=1, sessionDatabase.test|title=SessionDatabase session metadata setMetadata and getMetadata round-trip|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase turns createTurn is idempotent|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
sessionDatabase.test|title=SessionDatabase chat drafts migration v6 creates chat draft tables|occurrence=1, sessionDatabase.test|title=SessionDatabase migrations applies all migrations on a fresh database|occurrence=1, +2 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase file edits returns empty array when given empty array|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase session metadata getMetadata returns undefined for missing key|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×1 — Ancestor (broader)
Introduced files:
sessionDatabase.ts ×2 — Ancestor (broader)
Introduced files:
sessionDatabase.test|title=SessionDatabase dispose methods throw after dispose|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.test|title=SessionDatabase dispose double dispose is safe|occurrence=1 — Ancestor (broader)
Introduced tests:
sessionDatabase.ts ×13 — Descendant (narrower)
Introduced files:
sessionDatabase.ts ×2 — Descendant (narrower)
Introduced files:
sessionDatabase.ts ×2 — Descendant (narrower)
Introduced files:
sessionDatabase.ts ×50 — Descendant (narrower)
Introduced files:
buffer.test|title=Buffer Performance issue with VSBuffer#slice #76076|occurrence=1 — Descendant (narrower)
Introduced tests:
async.ts ×1 — Descendant (narrower)
Introduced files:
async.ts ×202 — Descendant (narrower)
Introduced files:
resources.ts ×23 — Descendant (narrower)
Introduced files:
network.ts ×20 — Descendant (narrower)
Introduced files:
strings.test|title=Strings trimWhitespace|occurrence=1 — Descendant (narrower)
Introduced tests:
extpath.ts ×17 — Descendant (narrower)
Introduced files:
strings.ts ×101 — Descendant (narrower)
Introduced files:
sessionState.ts ×57 — Descendant (narrower)
Introduced files:
cancellation.test|title=CancellationToken None|occurrence=1 — Descendant (narrower)
Introduced tests:
cancellation.ts ×18 — Descendant (narrower)
Introduced files:
event.ts ×1 — Descendant (narrower)
Introduced files:
event.ts ×4 — Descendant (narrower)
Introduced files:
event.ts ×2 — Descendant (narrower)
Introduced files:
event.ts ×93 — Descendant (narrower)
Introduced files:
buffer.ts ×42 — Descendant (narrower)
Introduced files:
path.ts ×1 — Descendant (narrower)
Introduced files:
path.ts ×5 — Descendant (narrower)
Introduced files:
state.ts ×1 — Descendant (narrower)
Introduced files:
commands.ts ×1 — Descendant (narrower)
Introduced files:
state.ts ×1 — Descendant (narrower)
Introduced files:
state.ts ×1 — Descendant (narrower)
Introduced files:
state.ts ×1 — Descendant (narrower)
Introduced files:
uri.test|title=URI URI#file, win-speciale|occurrence=1, charCode.test|title=CharCode has good values|occurrence=1, +2 — Descendant (narrower)
Introduced tests:
utils.ts ×3 — Descendant (narrower)
Introduced files:
linkedList.ts ×13 — Descendant (narrower)
Introduced files:
lifecycle.ts ×2 — Descendant (narrower)
Introduced files:
lifecycle.ts ×1 — Descendant (narrower)
Introduced files:
lifecycle.ts ×4 — Descendant (narrower)
Introduced files:
lifecycle.ts ×6 — Descendant (narrower)
Introduced files:
lazy.ts ×1 — Descendant (narrower)
Introduced files:
lazy.ts ×3 — Descendant (narrower)
Introduced files:
lifecycle.ts ×1 — Descendant (narrower)
Introduced files:
lifecycle.ts ×1 — Descendant (narrower)
Introduced files:
path.ts ×2 — Descendant (narrower)
Introduced files:
uint.ts ×2 — Descendant (narrower)
Introduced files:
lifecycle.ts ×1 — Descendant (narrower)
Introduced files:
map.ts ×97 — Descendant (narrower)
Introduced files:
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: 4 introduced LOC across 1 ranges.
Expand a file to inspect source; the > gutter marks introduced lines.
src/vs/platform/agentHost/node/sessionDatabase.ts 4 introduced LOC · 1 range
Open complete file
262
*/
263
static async open ( path : string , migrations : readonly ISessionDatabaseMigration [] = sessionDatabaseMigrations ) : Promise < SessionDatabase > {
265
>
await inst . _ensureDb ();
266
>
return inst ;
267
>
}
268
269
protected _ensureDb () : Promise < Database > {