watchdog: probe-resumed tick returns True — don't evaluate stale pane after resume

The tick whose probe resumed a session was continuing into stall logic with
its pre-resume pane capture; a 4h-old WAITING-UNTIL in that stale data got
the freshly-resumed adversary kill+rebooted (05:52). Treat probe-resume as
handled-this-tick; the next 30s tick sees the live session.
This commit is contained in:
autonomic-bot
2026-06-11 05:53:44 +00:00
parent 5ea17fca21
commit 969eb60df1

View File

@ -436,7 +436,11 @@ def limit_tick(role, session, pane):
if ACTIVE_RE.search(pane2) and not LIMIT_RE.search(pane2):
log(f"limit lifted on {role} ({session}) — probe resumed it")
_clear_limit_state(session)
return False
# Return True ("handled this tick") so the caller does NOT continue evaluating
# its pre-resume pane capture — that stale data held an old WAITING-UNTIL and
# got a freshly-resumed session rebooted (2026-06-11 05:52). Next tick sees the
# live session normally.
return True
until, _ = _next_limit_until(pane2, now)
if nudges == 3:
log(f"WARNING: {role} ({session}) still limited after {nudges} probes — "