After every scan, automatically kick off a background thread that
generates a JPEG thumbnail for every file in a duplicate group and
caches it locally at /data/thumbs/. Idempotent — already-cached files
are skipped.
New endpoints:
POST /api/thumbs/generate — start pre-gen for all files
POST /api/thumbs/generate?only_in_groups=true — only dup-group files
GET /api/thumbs/status — progress (total/done/skipped/failed)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>