Nobody agrees on when water expires
Bottled water, batteries, medication and insurance documents all 'expire' in four incompatible ways. Modelling that took longer than the app's entire UI.
A tinned good has a printed date. A battery has a shelf life that depends on chemistry and storage temperature. A prescription has a refill cycle tied to a person, not a product. A passport has a legal validity that interacts with the country you are flying to.
Our first model treated all of these as one date field, and it produced nonsense reminders within a week of testing — people were told to replace water that was fine and never told about a passport that expired mid-trip.
The rewrite separates three concepts: the date printed on the thing, the date it stops being useful to you, and the date we should tell you. Only the last one becomes a notification.
That third date is the whole product. Getting it wrong in either direction is how preparedness apps end up muted.