fix: persist and restore workspace directories on session resume (#17454)

Co-authored-by: Jacob Richman <jacob314@gmail.com>
This commit is contained in:
Krushna Korade
2026-01-29 00:37:58 +05:30
committed by GitHub
parent beaa134f0e
commit 0465de303a
6 changed files with 189 additions and 0 deletions

View File

@@ -67,6 +67,9 @@ describe('directoryCommand', () => {
isRestrictiveSandbox: vi.fn().mockReturnValue(false),
getGeminiClient: vi.fn().mockReturnValue({
addDirectoryContext: vi.fn(),
getChatRecordingService: vi.fn().mockReturnValue({
recordDirectories: vi.fn(),
}),
}),
getWorkingDir: () => path.resolve('/test/dir'),
shouldLoadMemoryFromIncludeDirectories: () => false,

View File

@@ -57,6 +57,13 @@ async function finishAddingDirectories(
const gemini = config.getGeminiClient();
if (gemini) {
await gemini.addDirectoryContext();
// Persist directories to session file for resume support
const chatRecordingService = gemini.getChatRecordingService();
const workspaceContext = config.getWorkspaceContext();
chatRecordingService?.recordDirectories(
workspaceContext.getDirectories(),
);
}
addItem({
type: MessageType.INFO,