Isolate and bound deadline reminder delivery #711

Closed
opened 2026-08-13 05:48:53 +00:00 by timmy · 0 comments
Owner

Problem

Deadline reminders share one dispatch lease and one poll exception boundary with unread-update push. A broken unread snapshot skips reminders, while slow serial deadline fan-out can outlive its lease and permit duplicate sends.

Scope

  • isolate unread and deadline poll failures
  • use channel-scoped renewable leases
  • bound deadline device fan-out with per-device failure isolation

Acceptance

  • unread failure does not skip deadline dispatch
  • unread and deadline channels can hold leases concurrently; same-channel workers cannot
  • deadline fan-out honors configured concurrency and healthy devices survive a failed sibling
  • lease ownership is renewed through fan-out to prevent duplicate delivery
  • focused and full test suites pass

Discovered against origin/main c503994. No matching open/closed issue title or recent commit was found; #709 added reminders but did not isolate or bound their dispatch.

## Problem Deadline reminders share one dispatch lease and one poll exception boundary with unread-update push. A broken unread snapshot skips reminders, while slow serial deadline fan-out can outlive its lease and permit duplicate sends. ## Scope - isolate unread and deadline poll failures - use channel-scoped renewable leases - bound deadline device fan-out with per-device failure isolation ## Acceptance - unread failure does not skip deadline dispatch - unread and deadline channels can hold leases concurrently; same-channel workers cannot - deadline fan-out honors configured concurrency and healthy devices survive a failed sibling - lease ownership is renewed through fan-out to prevent duplicate delivery - focused and full test suites pass Discovered against `origin/main` c503994. No matching open/closed issue title or recent commit was found; #709 added reminders but did not isolate or bound their dispatch.
timmy self-assigned this 2026-08-13 05:48:53 +00:00
timmy closed this issue 2026-08-13 05:59:03 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: stackchain/stackchain-dashboard#711
No description provided.