Defer unread updates until tomorrow from Web Push #564

Merged
timmy merged 1 commits from timmy/563-web-push-tomorrow into main 2026-08-11 10:27:57 +00:00
Owner

Closes #563

Adds a privacy-safe Tomorrow OS-notification action. The service worker validates notification route, tag, and ID, computes 09:00 in the device timezone, obtains session-bound CSRF, and calls a deadline-bounded endpoint. The server resolves the still-unread update to its canonical Later identity and persists an idempotent account-scoped deferral without marking it read. Failure opens the existing reader.

Verification

  • RED observed for missing Tomorrow action and missing /later endpoint.
  • Focused: 65 passed
  • Full: 1165 passed in 63.21s
  • git diff --check clean.
Closes #563 Adds a privacy-safe **Tomorrow** OS-notification action. The service worker validates notification route, tag, and ID, computes 09:00 in the device timezone, obtains session-bound CSRF, and calls a deadline-bounded endpoint. The server resolves the still-unread update to its canonical Later identity and persists an idempotent account-scoped deferral without marking it read. Failure opens the existing reader. ## Verification - RED observed for missing Tomorrow action and missing `/later` endpoint. - Focused: `65 passed` - Full: `1165 passed in 63.21s` - `git diff --check` clean.
timmy added 1 commit 2026-08-11 10:26:16 +00:00
feat: defer Web Push updates until tomorrow (Closes #563)
All checks were successful
CI / lint (pull_request) Successful in 1m16s
CI / build-release (pull_request) Successful in 5s
CI / release-candidate (pull_request) Has been skipped
7ce352553d
timmy merged commit 92b0fd56ca into main 2026-08-11 10:27:57 +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#564
No description provided.