Notification settings: independent toggles and a reminder time #27

Closed
opened 2026-08-18 15:06:56 -05:00 by null · 0 comments
Owner

§29 lists six notification types, each with an independent toggle: period approaching, period expected today, "did it start?", period-end check-in, fertile window approaching, estimated ovulation. Plus a reminder time — morning, afternoon, evening, or custom.

UserPreferences already holds periodReminderEnabled, fertileWindowReminderEnabled, ovulationReminderEnabled and reminderTime, and nothing reads them either. Extend to cover all six types rather than folding them together: somebody who wants a period reminder and no fertility notifications is the common case, not an edge case, and the fertility ones are off by default for exactly that reason.

The Settings screen itself is Batch 06, so this issue is the plumbing plus a minimal surface — enough to change a setting and see the reminder change, not the designed screen.

When a toggle turns on, that is the moment to ask for notification permission (§31), not before.

Changing the reminder time or any toggle must reschedule, for the same reason a forecast change does.

Verify: each of the six types can be toggled independently and the stored preferences reflect it; turning a reminder on when permission is absent prompts for it; and changing the reminder time re-enqueues the work at the new time.

§29 lists six notification types, each with an **independent** toggle: period approaching, period expected today, "did it start?", period-end check-in, fertile window approaching, estimated ovulation. Plus a reminder time — morning, afternoon, evening, or custom. `UserPreferences` already holds `periodReminderEnabled`, `fertileWindowReminderEnabled`, `ovulationReminderEnabled` and `reminderTime`, and nothing reads them either. Extend to cover all six types rather than folding them together: somebody who wants a period reminder and no fertility notifications is the common case, not an edge case, and the fertility ones are off by default for exactly that reason. The Settings screen itself is Batch 06, so this issue is the **plumbing plus a minimal surface** — enough to change a setting and see the reminder change, not the designed screen. When a toggle turns on, that is the moment to ask for notification permission (§31), not before. Changing the reminder time or any toggle must reschedule, for the same reason a forecast change does. Verify: each of the six types can be toggled independently and the stored preferences reflect it; turning a reminder on when permission is absent prompts for it; and changing the reminder time re-enqueues the work at the new time.
null added this to the Batch 05 — Notifications milestone 2026-08-18 15:06:56 -05:00
null closed this issue 2026-08-18 15:27:03 -05:00
Sign in to join this conversation.
No Label
P0
P1
P2
release-blocker
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: null/Privacy-Period-Tracker#27
No description provided.