mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-08-05 06:31:44 -07:00
feat(tracker): move tracker storage to project temp directory
This commit is contained in:
@@ -245,6 +245,15 @@ export class Storage {
|
||||
return path.join(this.getProjectTempDir(), 'plans');
|
||||
}
|
||||
|
||||
getProjectTempTrackerDir(sessionId: string): string {
|
||||
return path.join(
|
||||
this.getProjectTempDir(),
|
||||
sessionId,
|
||||
'.tracker',
|
||||
sessionId,
|
||||
);
|
||||
}
|
||||
|
||||
getExtensionsDir(): string {
|
||||
return path.join(this.getGeminiDir(), 'extensions');
|
||||
}
|
||||
|
||||
@@ -12,23 +12,23 @@ import { TrackerService } from './trackerService.js';
|
||||
import type { TrackerTask } from './trackerTypes.js';
|
||||
|
||||
describe('TrackerService', () => {
|
||||
let testRootDir: string;
|
||||
let testTrackerDir: string;
|
||||
let service: TrackerService;
|
||||
|
||||
beforeEach(async () => {
|
||||
testRootDir = await fs.mkdtemp(
|
||||
testTrackerDir = await fs.mkdtemp(
|
||||
path.join(os.tmpdir(), 'tracker-service-test-'),
|
||||
);
|
||||
service = new TrackerService(testRootDir);
|
||||
service = new TrackerService(testTrackerDir);
|
||||
});
|
||||
|
||||
afterEach(async () => {
|
||||
await fs.rm(testRootDir, { recursive: true, force: true });
|
||||
await fs.rm(testTrackerDir, { recursive: true, force: true });
|
||||
});
|
||||
|
||||
it('should initialize the tracker directory', async () => {
|
||||
await service.ensureInitialized();
|
||||
const tasksDir = path.join(testRootDir, '.tracker', 'tasks');
|
||||
const tasksDir = path.join(testTrackerDir, 'tasks');
|
||||
const stats = await fs.stat(tasksDir);
|
||||
expect(stats.isDirectory()).toBe(true);
|
||||
});
|
||||
|
||||
@@ -10,11 +10,9 @@ import { randomBytes } from 'node:crypto';
|
||||
import { TrackerTaskSchema, type TrackerTask } from './trackerTypes.js';
|
||||
|
||||
export class TrackerService {
|
||||
private readonly trackerDir: string;
|
||||
private readonly tasksDir: string;
|
||||
|
||||
constructor(private readonly workspaceRoot: string) {
|
||||
this.trackerDir = path.join(this.workspaceRoot, '.tracker');
|
||||
constructor(private readonly trackerDir: string) {
|
||||
this.tasksDir = path.join(this.trackerDir, 'tasks');
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user