Part of #2070
Report
The Home journal widget shows recent/history context, but the user also wants to see what is coming up over the next few days, including future journal days. Empty future days should still be useful as navigation targets.
Implementation contract
- Keep the existing seven-day history strip and recent-entry behavior.
- Add a clearly labeled upcoming section covering today plus the next three local calendar days. Use local date boundaries consistently with the journal page and existing calendar code.
- Show an entry preview when a future journal entry exists; otherwise show the date as an empty/upcoming day.
- Clicking any upcoming day opens the journal tab with that exact ISO date in
viewState.
- Do not duplicate calendar-event rendering from the Home calendar widget. If the product later wants event previews, keep that as a separate calendar surface.
- Keep the widget usable at its existing S/M/L sizes and preserve RTL/reduced-motion behavior.
Relevant seams include JournalWidget, journal-widget-data.ts, journalKeys, useJournalHeatmap, and the journal tab date navigation.
Acceptance criteria
Verification
Add data/helper tests for local date windows and renderer/E2E tests for future-date rendering and navigation. Run focused renderer tests, pnpm typecheck, and docs/i18n checks.
Part of #2070
Report
The Home journal widget shows recent/history context, but the user also wants to see what is coming up over the next few days, including future journal days. Empty future days should still be useful as navigation targets.
Implementation contract
viewState.Relevant seams include
JournalWidget,journal-widget-data.ts,journalKeys,useJournalHeatmap, and the journal tab date navigation.Acceptance criteria
Verification
Add data/helper tests for local date windows and renderer/E2E tests for future-date rendering and navigation. Run focused renderer tests,
pnpm typecheck, and docs/i18n checks.