Remind operators when a Week Ahead day is ready #1192

Closed
opened 2026-08-20 19:22:08 +00:00 by rockachopa · 0 comments
Member

User problem

Week Ahead can replace Tomorrow as the operator’s planning source, but the start-day reminder worker still reads only the legacy Tomorrow plan. A future Week Ahead day therefore stays silent until the operator independently opens the dashboard.

Vertical slice

At the configured account-local start hour, discover the earliest non-empty Week Ahead day due on or before the account-local date and send the existing privacy-safe start-day prompt. Tapping continues to the existing authenticated start-day route; the worker must not mutate Today or Week Ahead.

Acceptance criteria

  • Select the earliest non-empty due Week Ahead day by account-local calendar date; ignore empty and future days.
  • Start-day delivery remains active-session-only, bounded, lease-safe, and once per account/device/plan date.
  • Payload remains generic and contains no work titles, repositories, item IDs, estimates, capacity, login, or timezone.
  • Reminder discovery performs no planning mutation and fails closed on invalid timezone or unreadable encrypted state.
  • Existing Tomorrow reminders remain a fallback only when no due Week Ahead day exists, preserving migration compatibility.
  • Behavioral tests prove selection, fallback, privacy, deduplication, and failure handling.

Evidence / non-duplication

Current src/main.py supplies reminders from get_tomorrow(), while Week Ahead promotion occurs only in foreground lifecycle code. Historical #1166/#1168 shipped private and bounded Tomorrow reminders before Week Ahead existed. Week Ahead issues #1177-#1190 shipped planning, offline sync, rollover, conflict reconciliation, continuous review, and editing, but no Week Ahead reminder discovery. A normalized scan of every historical issue title found no duplicate.

## User problem Week Ahead can replace Tomorrow as the operator’s planning source, but the start-day reminder worker still reads only the legacy Tomorrow plan. A future Week Ahead day therefore stays silent until the operator independently opens the dashboard. ## Vertical slice At the configured account-local start hour, discover the earliest non-empty Week Ahead day due on or before the account-local date and send the existing privacy-safe start-day prompt. Tapping continues to the existing authenticated start-day route; the worker must not mutate Today or Week Ahead. ## Acceptance criteria - Select the earliest non-empty due Week Ahead day by account-local calendar date; ignore empty and future days. - Start-day delivery remains active-session-only, bounded, lease-safe, and once per account/device/plan date. - Payload remains generic and contains no work titles, repositories, item IDs, estimates, capacity, login, or timezone. - Reminder discovery performs no planning mutation and fails closed on invalid timezone or unreadable encrypted state. - Existing Tomorrow reminders remain a fallback only when no due Week Ahead day exists, preserving migration compatibility. - Behavioral tests prove selection, fallback, privacy, deduplication, and failure handling. ## Evidence / non-duplication Current `src/main.py` supplies reminders from `get_tomorrow()`, while Week Ahead promotion occurs only in foreground lifecycle code. Historical #1166/#1168 shipped private and bounded Tomorrow reminders before Week Ahead existed. Week Ahead issues #1177-#1190 shipped planning, offline sync, rollover, conflict reconciliation, continuous review, and editing, but no Week Ahead reminder discovery. A normalized scan of every historical issue title found no duplicate.
timmy was assigned by rockachopa 2026-08-20 19:22:08 +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#1192
No description provided.