v1.2.3 — Fix timezone mismatch in checkpoint entry filtering
Bug Fix
Catchups returned "No checkpoints found" despite checkpoints existing
After the v1.2.2 date filtering fix, catchups in repos where committers use non-UTC timezones (e.g. IST +05:30) would return no results. All checkpoint entries were being filtered out.
Root cause: Checkpoint entry dates are written with datetime.now() on the GitHub Actions runner (UTC), but git commit datetimes carry the committer's local timezone. A developer committing at 2026-03-14 00:19 IST produces a cutoff date of March 14, but the checkpoint entry created at that same moment on the UTC runner is dated March 13. The filter March 13 >= March 14 evaluates to False, so every entry gets dropped.
Fix: _filter_entries_after() now converts since_date to UTC via utcoffset() before extracting the date for comparison, so both sides use the same timezone.
Changes
- storage.py —
_filter_entries_after()normalizessince_dateto UTC viautcoffset()before comparing against entry dates.