diff --git a/packages/core/src/config/config.ts b/packages/core/src/config/config.ts index bf502090cb..bc89030524 100644 --- a/packages/core/src/config/config.ts +++ b/packages/core/src/config/config.ts @@ -1912,7 +1912,9 @@ export class Config { getTrackerService(): TrackerService { if (!this.trackerService) { - this.trackerService = new TrackerService(this.targetDir); + this.trackerService = new TrackerService( + this.storage.getProjectTempTrackerDir(this.sessionId), + ); } return this.trackerService; } diff --git a/packages/core/src/services/trackerService.ts b/packages/core/src/services/trackerService.ts index 6e1fc2abca..8af40c8637 100644 --- a/packages/core/src/services/trackerService.ts +++ b/packages/core/src/services/trackerService.ts @@ -12,7 +12,7 @@ import { TrackerTaskSchema, type TrackerTask } from './trackerTypes.js'; export class TrackerService { private readonly tasksDir: string; - constructor(private readonly trackerDir: string) { + constructor(readonly trackerDir: string) { this.tasksDir = path.join(this.trackerDir, 'tasks'); } diff --git a/packages/core/src/tools/trackerTools.test.ts b/packages/core/src/tools/trackerTools.test.ts index be5bcba5ac..9074caf6d9 100644 --- a/packages/core/src/tools/trackerTools.test.ts +++ b/packages/core/src/tools/trackerTools.test.ts @@ -46,9 +46,12 @@ describe('Tracker Tools Integration', () => { const result = await tool.buildAndExecute({}, getSignal()); expect(result.llmContent).toContain('Task tracker initialized'); - const tasksDir = path.join(tempDir, '.tracker', 'tasks'); + const trackerDir = config.getTrackerService().trackerDir; + const tasksDir = path.join(trackerDir, 'tasks'); const stats = await fs.stat(tasksDir); expect(stats.isDirectory()).toBe(true); + // Verify it is NOT in the tempDir root (which was the old behavior) + expect(trackerDir).not.toBe(path.join(tempDir, '.tracker')); }); it('creates and lists tasks', async () => { diff --git a/packages/core/src/tools/trackerTools.ts b/packages/core/src/tools/trackerTools.ts index 74efd18f74..ea92fea754 100644 --- a/packages/core/src/tools/trackerTools.ts +++ b/packages/core/src/tools/trackerTools.ts @@ -69,8 +69,7 @@ class TrackerInitInvocation extends BaseTrackerInvocation< override async execute(_signal: AbortSignal): Promise { await this.service.ensureInitialized(); return { - llmContent: - 'Task tracker initialized successfully. Storage is ready at .tracker/tasks/', + llmContent: `Task tracker initialized successfully. Storage is ready at ${this.service.trackerDir}/tasks/`, returnDisplay: 'Tracker initialized.', }; }