REST API (routes/api.py): Three endpoints behind API key auth for
programmatic image generation via presets — list presets, queue
generation with optional overrides, and poll job status.
Shared generation logic extracted from routes/presets.py into
services/generation.py so both web UI and API use the same code path.
Fallback covers: library index pages now show a random generated image
at reduced opacity when no cover is assigned, instead of "No Image".
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>