mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-03-15 08:31:14 -07:00
fix(core): use session-specific temp directory for task tracker (#22382)
This commit is contained in:
@@ -180,6 +180,25 @@ describe('Storage – additional helpers', () => {
|
||||
expect(storageWithSession.getProjectTempPlansDir()).toBe(expected);
|
||||
});
|
||||
|
||||
it('getProjectTempTrackerDir returns ~/.gemini/tmp/<identifier>/tracker when no sessionId is provided', async () => {
|
||||
await storage.initialize();
|
||||
const tempDir = storage.getProjectTempDir();
|
||||
const expected = path.join(tempDir, 'tracker');
|
||||
expect(storage.getProjectTempTrackerDir()).toBe(expected);
|
||||
});
|
||||
|
||||
it('getProjectTempTrackerDir returns ~/.gemini/tmp/<identifier>/<sessionId>/tracker when sessionId is provided', async () => {
|
||||
const sessionId = 'test-session-id';
|
||||
const storageWithSession = new Storage(projectRoot, sessionId);
|
||||
ProjectRegistry.prototype.getShortId = vi
|
||||
.fn()
|
||||
.mockReturnValue(PROJECT_SLUG);
|
||||
await storageWithSession.initialize();
|
||||
const tempDir = storageWithSession.getProjectTempDir();
|
||||
const expected = path.join(tempDir, sessionId, 'tracker');
|
||||
expect(storageWithSession.getProjectTempTrackerDir()).toBe(expected);
|
||||
});
|
||||
|
||||
describe('Session and JSON Loading', () => {
|
||||
beforeEach(async () => {
|
||||
await storage.initialize();
|
||||
|
||||
@@ -302,6 +302,9 @@ export class Storage {
|
||||
}
|
||||
|
||||
getProjectTempTrackerDir(): string {
|
||||
if (this.sessionId) {
|
||||
return path.join(this.getProjectTempDir(), this.sessionId, 'tracker');
|
||||
}
|
||||
return path.join(this.getProjectTempDir(), 'tracker');
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user