diff --git a/src/main.ts b/src/main.ts index db754cb..f277bad 100644 --- a/src/main.ts +++ b/src/main.ts @@ -7211,6 +7211,27 @@ app.whenReady().then(() => { refreshBundledToolPaths(true); startMetadataCacheCleanup(); startDebugLogFlushTimer(); + + // SQLite-Shadow-Migration (Plan 02 / v5.0.0-alpha.1). Idempotent + fail-soft — + // bei Fehler bleibt JSON der Master. Lazy require, damit Native-Build-Fehler + // den App-Start nicht verhindern. + try { + const { openDatabase } = require('./main/infra/db'); + const { migrateJsonToSqlite } = require('./main/domain/migrator'); + const dbPath = path.join(APPDATA_DIR, 'app.db'); + const db = openDatabase(dbPath); + try { + const result = migrateJsonToSqlite({ db, appDataDir: APPDATA_DIR }); + appendDebugLog('sqlite-migrator', result); + } finally { + db.close(); + } + } catch (e) { + appendDebugLog('sqlite-migrator-failed', { + error: e instanceof Error ? e.message : String(e), + }); + } + restartAutoRecordPoller(); restartAutoVodPoller(); restartLiveStatusPoller();