Project the next year onto the calendar, with its assumption said out loud #57
Labels
No Label
P0
P1
P2
release-blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: null/Privacy-Period-Tracker#57
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What is true now.
CalendarMarks.forMonthmarks only the single next forecast window, so paging the calendar forward shows blank months even for a user whose cycle is textbook-regular. 'Will I have my period the week of the wedding?' is a core prediction question the app cannot answer, and browsing stopped one month ahead.What to do. A
CycleProjectiontype indomain/prediction, separate fromPredictionbecause a forecast is scored and a projection never is — separate types stop a projection reaching the accuracy figures by accident. Cycle 1 is the engine's own forecast copied through unchanged so the calendar and Today screen cannot disagree. Uncertainty grows as the square root of cycles ahead; the projection stops rather than stretching once a window passes ten days either side; every month showing projected marks carries the assumption sentence and the confidence for that distance.Traps. The failure to avoid is the one the widget library this came from walks into: stamping a fixed cycle length twelve months forward and drawing it exactly like the next period. Use her own typical cycle, never a population default — projecting 29 days for a 35-day user is §3's core defect repeated twelve times.
DayMark.PROJECTED_PERIODmust be visually distinct fromPREDICTED_PERIODin greyscale, not by opacity. Logging must still stop at today even though browsing does not.Verify:
CycleProjectionTestin domain/prediction — window widens with distance, confidence never rises, a vague forecast stops early and reports that it stopped, nothing projects past a year, a confirmed period still outranks a projection on the same day, and a caller that does not ask for projections gets the calendar it had.