From 2bc471cb35a1daa97846483022ce23df46388dbc Mon Sep 17 00:00:00 2001 From: Teknium <127238744+teknium1@users.noreply.github.com> Date: Mon, 7 Sep 2026 02:56:09 -0700 Subject: [PATCH] fix(cron): skip catch-up only with a future anchor --- cron/jobs.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cron/jobs.py b/cron/jobs.py index 51d51a77e0..386599c310 100644 --- a/cron/jobs.py +++ b/cron/jobs.py @@ -2897,7 +2897,8 @@ def _fast_forward_missed_recurring(d: _DueJob, grace: int) -> bool: if not new_next: return False d.scan.persist(d.job["id"], next_run_at=new_next) - if not _cron_config_number("catch_up_missed", True, lambda value: value is not False): + if (_ensure_aware(datetime.fromisoformat(new_next)) > d.scan.now + and not _cron_config_number("catch_up_missed", True, lambda value: value is not False)): logger.info( "Job '%s' missed its scheduled time (%s, grace=%ds). " "Skipping missed occurrence because cron.catch_up_missed is false; next run: %s",