yiekheng 723b82c9fc Add chapter-level DB tools, dim sync, retries, and all-genres
- Check missing pages: compare site page count vs R2, detect NULL/0
  width/height in DB and fix by reading WebP bytes from R2 (no re-upload
  needed when dims are just missing).
- Delete specific chapter(s): multi-select or all, removes from R2+DB.
- Chapter pickers now offer "All chapters" as first option.
- Save all genres comma-separated in Manga.genre (was only the first).
- Sync refreshes title/description/genre for existing manga records.
- Page inserts now save width and height from PIL (schema update).
- Retry failed page fetches up to 3 attempts with 2s backoff instead
  of skipping after one failure.
- Cover detection polls DOM up to 8s and tries broader selectors.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 12:59:22 +08:00
2026-04-11 16:55:13 +08:00
Description
No description provided
143 KiB
Languages
Python 100%