chore(app): upgrade Electron 33 -> 43

Electron 33 bundles Node 20.18, which has no type stripping. Every
tests/electron-*.mjs harness imports session-detail-assembly.mjs, which
in turn imports packages/core/src/session-detail.ts, so all three failed
at load with ERR_UNKNOWN_FILE_EXTENSION. Electron 43 bundles Node 24.18
and runs them.

better-sqlite3 11 does not compile against the newer V8 (removed
Context::GetIsolate, PropertyCallbackInfo::This, changed
SetNativeDataProperty signature), so the native dependency moves to 13
to match the ABI. electron-builder moves to 26 for Electron 43 support.

Verified: npm test 275/275, typecheck, electron-vite build, electron-builder
pack, and all three harnesses (15 + 55 + 11 assertions).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
tommy0103
2026-07-31 03:40:07 +08:00
co-authored by Claude Opus 5
parent 75654f30b6
commit 9890ae78b1
2 changed files with 938 additions and 2763 deletions
+3 -3
View File
@@ -70,15 +70,15 @@
]
},
"dependencies": {
"better-sqlite3": "^11.0.0",
"better-sqlite3": "^13.0.2",
"chokidar": "^4.0.3"
},
"devDependencies": {
"@tanstack/vue-virtual": "^3.13.32",
"@types/better-sqlite3": "^7.6.13",
"@vitejs/plugin-vue": "^5.0.0",
"electron": "^33.0.0",
"electron-builder": "^25.0.0",
"electron": "^43.2.0",
"electron-builder": "^26.15.3",
"electron-vite": "^5.0.0",
"vite": "^6.0.0",
"vue": "^3.4.0",