The worker checked the 24-hour give-up deadline only after Send failed, so an overdue row whose delivery succeeded was marked sent and a stale notification reached the household. Check the deadline before Send: a row claimed 24 hours or more after its creation is marked failed, with the reason and any previous error in last_error, and the sender is never called. A delivery failing before the deadline still retries with the same backoff. Tests cover a succeeding and a failing sender at exactly 24 hours and after, a row just under the deadline still being sent, and the retry run now ending with a failure at the deadline instead of a 30th attempt. Task: addeb256-a4d4-4acf-8acd-6b6778d967ee Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>