Adds Komga sync feature to import read status from a Komga server.
Books are matched by title (case-insensitive) with series+title primary
match and title-only fallback. Sync reports are persisted with matched,
newly marked, and unmatched book lists. UI shows check icon for newly
marked books, sorted to top. Credentials (URL+username) are saved
between sessions. Uses HashSet for O(1) lookups to handle large libraries.
Closes#2
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- API : nouvelle table book_reading_progress (migration 0016) et module
reading_progress.rs avec GET/PATCH /books/:id/progress (token read)
- API : GET /books/:id enrichi avec reading_status, reading_current_page,
reading_last_read_at via LEFT JOIN
- Backoffice : badge de statut (Non lu / En cours · p.N / Lu) sur la page
de détail et overlay sur les BookCards
- OpenSpec : change reading-progress avec proposal/design/specs/tasks
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>