Make start-day reminders lease-safe under fan-out #1169

Merged
rockachopa merged 1 commits from timmy/1168-start-day-lease-safe-fanout into main 2026-08-20 06:46:17 +00:00
Owner

Closes #1168

What changed

  • bound start-day device fan-out with the configured push concurrency
  • renew and revalidate channel ownership immediately before each admitted send
  • isolate per-device send/checkpoint failures while preserving private payloads and cleanup semantics
  • forward STACKCHAIN_PUSH_MAX_CONCURRENCY from the worker

Verification

  • pytest -q tests/test_start_day_reminders.py — 9 passed
  • pytest -q tests/test_push_notifications.py — 53 passed
  • pytest -q — 2215 passed, 10 skipped
  • python3 -m compileall -q src tests
  • git diff --check
Closes #1168 ## What changed - bound start-day device fan-out with the configured push concurrency - renew and revalidate channel ownership immediately before each admitted send - isolate per-device send/checkpoint failures while preserving private payloads and cleanup semantics - forward `STACKCHAIN_PUSH_MAX_CONCURRENCY` from the worker ## Verification - `pytest -q tests/test_start_day_reminders.py` — 9 passed - `pytest -q tests/test_push_notifications.py` — 53 passed - `pytest -q` — 2215 passed, 10 skipped - `python3 -m compileall -q src tests` - `git diff --check`
timmy added 1 commit 2026-08-20 06:38:34 +00:00
feat: make start-day reminders lease-safe (Closes #1168)
All checks were successful
CI / lint (pull_request) Successful in 3m24s
CI / build-release (pull_request) Successful in 8s
CI / browser-journey (pull_request) Successful in 3m43s
CI / release-candidate (pull_request) Has been skipped
928184c581
rockachopa merged commit 65180cbb94 into main 2026-08-20 06:46:17 +00:00
Sign in to join this conversation.
No reviewers
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#1169
No description provided.