What's Changed
Bug Fixes
Fixed scheduler generating data for the wrong week
The scheduled box office update was producing data for the previous week instead of the current one (e.g., W08 instead of W09).
Root cause:
get_weekend_dates() already accounts for the most recent complete weekend, but both the scheduler and get_current_week_movies() were subtracting an additional week before calling it.
Fix:
Removed the extra subtraction at both call sites.
Fixed movies showing "Not in Radarr" after being auto-added
When using the manual update endpoint (/api/scheduler/update-week), movies that were successfully added to Radarr would still appear as "Not in Radarr" in the generated weekly page.
Root cause:
Match results were never refreshed after auto-adding movies.
Fix:
The endpoint now:
- Re-fetches the Radarr library after adding movies
- Re-runs the matching process
This ensures the generated JSON accurately reflects each movie's status.
Fixed auto-add missing ignore list checks on manual updates
The manual update endpoint had its own copy of the auto-add logic that had diverged from the scheduler implementation.
It was missing:
- Ignore list filtering
- Per-movie logging
Fix:
Both code paths now use the same shared implementation.
Fixed UI showing incorrect version number
The UI version was stuck at v1.5.9.
Root cause:
The hardcoded fallback in version.py (used when Git is unavailable, e.g., in Docker) had not been updated.
Fix:
Updated the fallback version.
New Features
Regenerate button on weekly pages
Weekly pages (e.g., /2026W09) now include a "Regenerate" button next to the navigation controls.
This allows users to:
- Re-fetch box office data
- Re-match with Radarr
- Apply auto-add filters
- Regenerate the page
All without navigating back to the dashboard.
Additional UX improvements:
- Confirmation dialog before execution
- Loading state during regeneration
Code Quality Improvements
Extracted shared auto-add module
The ~200 lines of duplicated auto-add logic between the scheduler and the manual update endpoint have been extracted into:
Docker Images
ghcr.io/iongpt/boxarr:1.6.3ghcr.io/iongpt/boxarr:latest