- Clamp alreadyOwned to Math.max(0, ...) in batch completion display to avoid showing negative owned count - Map active_source deezer to deezer_track_id in both seasonal playlist endpoints (current-playlist and curated), consistent with core/seasonal_discovery.py logic |
||
|---|---|---|
| .. | ||
| static | ||
| index.html | ||