Defer selected mobile updates as one unread batch #659

Closed
opened 2026-08-12 14:52:04 +00:00 by timmy · 0 comments
Owner

User problem

Mobile operators can select up to 50 unread Updates, but the only batch action acknowledges them as read. Deferring notification bursts requires opening and planning every card separately.

Scope

Add thumb-safe Later today and Tomorrow actions to Updates selection mode. Persist the selected items atomically in Later, keep their Gitea unread state unchanged, synchronize the resulting records through the existing Later outbox, and retain the selection on persistence failure.

Acceptance criteria

  • Selected updates can be deferred together to Later today or Tomorrow from the sticky mobile action bar.
  • One storage failure yields no partial batch and leaves all updates selected and unread.
  • Success removes the batch from Updates, adds it to Later with one wake time, clears selection, and reports that Gitea unread state is unchanged.
  • Controls remain 44px+, safe-area/dock aware at a 360px viewport.
  • Existing individual defer and selected mark-read behavior remains green.
  • Behavioral tests cover atomic persistence and UI wiring.

Non-duplication evidence

All 332 historical issue titles, 323 PR titles, recent commits, and open tickets were inspected at origin/main 7421a8f. #545/#546 implemented selected mark-read; #254/#255, #256/#257, #369/#370 implemented single-item deferral; #563/#564 deferred one push notification. No prior ticket or commit implements batch deferral of selected Updates.

## User problem Mobile operators can select up to 50 unread Updates, but the only batch action acknowledges them as read. Deferring notification bursts requires opening and planning every card separately. ## Scope Add thumb-safe **Later today** and **Tomorrow** actions to Updates selection mode. Persist the selected items atomically in Later, keep their Gitea unread state unchanged, synchronize the resulting records through the existing Later outbox, and retain the selection on persistence failure. ## Acceptance criteria - Selected updates can be deferred together to Later today or Tomorrow from the sticky mobile action bar. - One storage failure yields no partial batch and leaves all updates selected and unread. - Success removes the batch from Updates, adds it to Later with one wake time, clears selection, and reports that Gitea unread state is unchanged. - Controls remain 44px+, safe-area/dock aware at a 360px viewport. - Existing individual defer and selected mark-read behavior remains green. - Behavioral tests cover atomic persistence and UI wiring. ## Non-duplication evidence All 332 historical issue titles, 323 PR titles, recent commits, and open tickets were inspected at `origin/main` 7421a8f. #545/#546 implemented selected mark-read; #254/#255, #256/#257, #369/#370 implemented single-item deferral; #563/#564 deferred one push notification. No prior ticket or commit implements batch deferral of selected Updates.
timmy self-assigned this 2026-08-12 14:52:04 +00:00
timmy closed this issue 2026-08-12 15:14:23 +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#659
No description provided.