mirror of
https://github.com/hellodigua/ChatLab.git
synced 2026-10-25 17:54:34 +08:00
fix(insight): remove session facts on deletion
This commit is contained in:
1 parent
f198b41bdb
commit
1713e0d577
2 files changed
+10
No files matched your search
@@ -28,6 +28,7 @@ import {
|
||||
} from './migrations'
|
||||
import { tokenizeForFts } from './nlp/fts-tokenizer'
|
||||
import { getContactsFactsCacheDir } from './services/contacts/paths'
|
||||
import { getGlobalInsightFactsCacheDir } from './services/global-insight/paths'
|
||||
import { getPeopleRelationshipsFactsCacheDir } from './services/people/relationships/paths'
|
||||
|
||||
function createMigrationDeps(overrides?: MigrationDeps): MigrationDeps {
|
||||
@@ -249,6 +250,7 @@ export class DatabaseManager {
|
||||
deleteSessionCache(sessionId, cacheDir)
|
||||
deleteSessionCache(sessionId, path.join(cacheDir, 'query'))
|
||||
deleteSessionCache(sessionId, getContactsFactsCacheDir(this.pathProvider.getUserDataDir()))
|
||||
deleteSessionCache(sessionId, getGlobalInsightFactsCacheDir(this.pathProvider.getUserDataDir()))
|
||||
deleteSessionCache(sessionId, getPeopleRelationshipsFactsCacheDir(this.pathProvider.getUserDataDir()))
|
||||
return existed
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import type { PathProvider } from '@openchatlab/core'
|
||||
import { DatabaseManager } from '../../database-manager'
|
||||
import { createDatabaseManagerAdapter } from './database-manager-adapter'
|
||||
import { getContactsFactsCacheDir } from '../contacts/paths'
|
||||
import { getGlobalInsightFactsCacheDir } from '../global-insight/paths'
|
||||
|
||||
function makeTempDir(): string {
|
||||
const baseDir = fs.existsSync('/private/tmp') ? '/private/tmp' : os.tmpdir()
|
||||
@@ -47,12 +48,18 @@ test('DatabaseManager adapter deletes session database sidecar files and caches'
|
||||
getContactsFactsCacheDir(pathProvider.getUserDataDir()),
|
||||
`${sessionId}.cache.json`
|
||||
)
|
||||
const globalInsightFactsCachePath = path.join(
|
||||
getGlobalInsightFactsCacheDir(pathProvider.getUserDataDir()),
|
||||
`${sessionId}.cache.json`
|
||||
)
|
||||
fs.mkdirSync(path.dirname(cachePath), { recursive: true })
|
||||
fs.mkdirSync(path.dirname(queryCachePath), { recursive: true })
|
||||
fs.mkdirSync(path.dirname(contactsFactsCachePath), { recursive: true })
|
||||
fs.mkdirSync(path.dirname(globalInsightFactsCachePath), { recursive: true })
|
||||
fs.writeFileSync(cachePath, '{}', 'utf-8')
|
||||
fs.writeFileSync(queryCachePath, '{}', 'utf-8')
|
||||
fs.writeFileSync(contactsFactsCachePath, '{}', 'utf-8')
|
||||
fs.writeFileSync(globalInsightFactsCachePath, '{}', 'utf-8')
|
||||
|
||||
assert.equal(adapter.deleteSessionFile(sessionId), true)
|
||||
assert.equal(fs.existsSync(dbPath), false)
|
||||
@@ -61,4 +68,5 @@ test('DatabaseManager adapter deletes session database sidecar files and caches'
|
||||
assert.equal(fs.existsSync(cachePath), false)
|
||||
assert.equal(fs.existsSync(queryCachePath), false)
|
||||
assert.equal(fs.existsSync(contactsFactsCachePath), false)
|
||||
assert.equal(fs.existsSync(globalInsightFactsCachePath), false)
|
||||
})
|
||||
Reference in new issue
Block a user