"Future-crumb arrival: nothing happens. Today surfaces intent crumbs for free."
The Question That Almost Grew a Scheduler
Once you allow future scatter, an obvious question follows: what should happen when a future-dated crumb's day finally arrives? The tempting answers all add machinery — fire a push notification, drop it into a 'due today' lane, badge the icon, mark it done when acted on. Every one of those quietly turns the journal into a task manager. And Vesta's resolved answer is the opposite of machinery: nothing happens.
Nothing happens because nothing needs to. The Today stream is a projection over the date axis — it shows the crumbs whose target_date is today. A crumb you placed on a future date was invisible only because that date wasn't today yet. The moment the date arrives, the same projection includes it, automatically, with no arrival event, no scheduler, no notification path. The intent crumb doesn't get delivered; it was always there, and Today simply reaches it.
A Journal, Not a Reminder App
This is a genuine product boundary, not just an implementation shortcut. Intent capture is not a todo. When you place a note on a future day, you're leaving a thought for a future self to find, not scheduling an obligation with a deadline and a nagging alarm. A reminder app's whole job is to interrupt you until you comply; a journal's job is to be there, quietly, when you arrive. Collapsing intent into 'due dates' would rebuild the exact guilt machine Vesta was made to escape.
When a Real Notification Is Needed
Does this mean Vesta can never notify? No — it means notification is not Vesta's job. If a genuine need for an alert ever appears, it routes through cwkPippa's heartbeat (the family's existing scheduling brain), never a scheduler grown inside the journal. That keeps the boundary clean: Vesta owns crumbs and drafts and projections; the family's brain owns anything that has to reach out and interrupt you. The journal stays a place you come back to, not a thing that chases you.