The problem

A daily planner can show plausible but wrong information if yesterday’s cached page is reused today. Rendering quickly is not enough; the day must be correct.

Include the date

The selected day and the dashboard’s time zone belong in the cache identity. Midnight in the planner’s time zone is the boundary that matters.

Cache carefully

A saved page is a fallback for an unavailable server. Authentication failures and pending confirmation screens should not be replaced with an old successful page.

Separate mutations

Reading a saved day and saving a task are different operations. Distinguish an offline draft from a confirmed server update, and avoid submitting a mutation twice.

See the project these notes came from ↗