From f78077655f5e5cd85e1a59f6c3ecb545f52ba88d Mon Sep 17 00:00:00 2001 From: digua Date: Mon, 18 May 2026 20:21:30 +0800 Subject: [PATCH] fix(server): auto-generate session index after import After streaming or incremental import, automatically generate the session index (chat_session table) so the frontend does not show the "generate index" prompt when entering a conversation. --- packages/server/src/import/stream-import.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/server/src/import/stream-import.ts b/packages/server/src/import/stream-import.ts index c58fa2e0..dbd0b242 100644 --- a/packages/server/src/import/stream-import.ts +++ b/packages/server/src/import/stream-import.ts @@ -16,6 +16,7 @@ import { analyzeIncrementalImport as sharedAnalyzeIncremental, incrementalImport as sharedIncrementalImport, } from '@openchatlab/node-runtime' +import { generateSessionIndex, generateIncrementalSessionIndex } from '@openchatlab/core' import type { StreamImportResult, StreamImportDeps, @@ -90,6 +91,13 @@ function buildStreamImportDeps(dbManager: DatabaseManager, onProgress?: ImportPr } }, onProgress: onProgress ?? (() => {}), + postImportHook(db) { + try { + generateSessionIndex(db) + } catch { + /* non-fatal: frontend can regenerate via generate-index route */ + } + }, generateSessionId, } } @@ -164,6 +172,13 @@ function buildIncrementalDeps(dbManager: DatabaseManager, onProgress?: ImportPro return openBetterSqliteDatabase(dbPath, { readonly: readonly ?? false, nativeBinding }) }, onProgress: onProgress ?? (() => {}), + postImportHook(db) { + try { + generateIncrementalSessionIndex(db) + } catch { + /* non-fatal */ + } + }, } }