You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
AdminBackupWarningTests in website/tests/test_backup_status.py writes a status
fixture with hard-coded timestamps:
'last_backup_at': '2026-08-07T03:00:00Z',
The sibling SimpleTestCase suites are fine — they call get_backup_status(..., now=NOW) with a matching fixed clock. But AdminBackupWarningTests goes through the real admin views, which call get_backup_status() with the real clock. With BACKUP_STALE_AFTER_HOURS = 36, that fixture reads as stale from 2026-08-08 onward, so these two tests fail on every run after that date:
test_no_warning_when_backup_healthy — "'database backups are not healthy'
unexpectedly found"
Master's CI last passed on 2026-08-07 (the run for the #1443 merge itself) and
has been red since. Caught while trying to merge #1449.
Fix: make the view suite's fixture timestamps relative to datetime.now(timezone.utc)
(a few hours old = healthy), leaving the fixed-clock unit suites alone.
Fixed in 8079879 (rode along with #1449, shipped in 2.34.0). AdminBackupWarningTests._write_status now timestamps its fixture relative to datetime.now(timezone.utc); the fixed-clock SimpleTestCase suites keep the pinned 2026-08-07 payload since they pass now=NOW explicitly.
Master's CI is green again — verified on the 2.34.0 run.
🤖 Generated with Claude Code — Opus 5 (1M context), claude-opus-5[1m]
Activity
Fix backup-status view tests going stale with the calendar (#1450)
jonfroehlich commentedon Aug 12, 2026
Fixed in 8079879 (rode along with #1449, shipped in 2.34.0).
AdminBackupWarningTests._write_statusnow timestamps its fixture relative todatetime.now(timezone.utc); the fixed-clockSimpleTestCasesuites keep the pinned 2026-08-07 payload since they passnow=NOWexplicitly.Master's CI is green again — verified on the 2.34.0 run.
🤖 Generated with Claude Code — Opus 5 (1M context), claude-opus-5[1m]