diff --git a/packages/core/src/services/chatRecordingService.test.ts b/packages/core/src/services/chatRecordingService.test.ts index 94b9c61c7a2..60d4aaf144e 100644 --- a/packages/core/src/services/chatRecordingService.test.ts +++ b/packages/core/src/services/chatRecordingService.test.ts @@ -728,10 +728,13 @@ describe('ChatRecordingService', () => { expect(fs.existsSync(logFile)).toBe(false); }); - it('should not throw if session file does not exist', async () => { + it('should throw if session file does not exist', async () => { + const chatsDir = path.join(testTempDir, 'chats'); + fs.mkdirSync(chatsDir, { recursive: true }); + await expect( chatRecordingService.deleteSession('non-existent'), - ).resolves.not.toThrow(); + ).rejects.toThrow('No session file found for non-existent'); }); }); diff --git a/packages/core/src/services/chatRecordingService.ts b/packages/core/src/services/chatRecordingService.ts index 5791184d15d..16a77e26dd8 100644 --- a/packages/core/src/services/chatRecordingService.ts +++ b/packages/core/src/services/chatRecordingService.ts @@ -695,6 +695,10 @@ export class ChatRecordingService { chatsDir, shortId, ); + if (matchingFiles.length === 0) { + throw new Error(`No session file found for ${sessionIdOrBasename}`); + } + for (const file of matchingFiles) { await this.deleteSessionAndArtifacts(chatsDir, file, tempDir); }