4 Commits

Author SHA1 Message Date
Jarian
e41103b9cc ci: use node:20-bookworm image for test/lint/security jobs 2026-07-06 05:00:05 +00:00
Jarian
56351b277e test: add Vitest suite with 86% coverage threshold
- Add Vitest + jsdom test framework with V8 coverage
- 118 tests across 7 test files covering AppState, ProgressManager, EpisodeManager, FileListManager, fileUtils, main.js logic, renderer escapeHtml, preload module polyfill
- Fix async bug in extractFileDuration (await in non-async callback)
- CI enforces 85% coverage threshold on testable modules
- Exclude Electron IPC wrappers (FileManager, SearchManager, TagManager, ModalManager, UIManager) from coverage as they require Electron runtime
2026-07-06 04:54:40 +00:00
Jarian
1ad37a3df9 CI: remove --no-cache for docker layer caching 2026-07-05 03:13:22 +00:00
Jarian
92905a22d0 CI: add generalized workflow 2026-07-05 02:46:33 +00:00