feat: unify logging via electron-log and add IPC error boundary

Bug reports from Steam Deck (Flatpak) arrived without any useful context:
no terminal, no log file, no trace of what failed. Silent catches in
helixClient hid quota and token errors entirely. IPC handler exceptions
reached the renderer as rejected promises with no server-side record.

electron-log now writes to a rotating log file (~1 MB, 5 files) that
users can attach to bug reports. All IPC handlers are wrapped in
safeHandle, which logs and re-throws at the boundary. Optional-feature
failures (chapters, profile images, viewer counts) emit log.warn with
enough context to diagnose. A React ErrorBoundary catches render crashes
app-wide and logs them before showing a reload prompt.
This commit is contained in:
Andre
2026-05-15 09:26:03 +02:00
parent 9acf503afa
commit a5eaafbed3
16 changed files with 162 additions and 62 deletions
+1
View File
@@ -17,6 +17,7 @@
},
"dependencies": {
"better-sqlite3": "^12.8.0",
"electron-log": "^5.4.4",
"hls.js": "^1.6.16",
"qrcode": "^1.5.4",
"react": "^18.3.1",