whisper-money/app
Víctor Falcón 26c83c710f fix(periods): correct previous-period comparisons and align period consumers
- make PeriodComparator::previous() period-aware: shift by whole months
  derived from the period length so variable-length salary months,
  quarters, and years compute the correct previous period (and an
  end-inclusive end-of-day bound no longer leaks an extra day)
- snap trend() from/to to the user's period boundaries so emitted buckets
  match how transactions are grouped, and resolve the start day once
- share the dashboard top-categories period so the drill-down, links, and
  description use the same window as the parent rows
- gate the custom start day read path behind CustomMonthStartDay so rolling
  the flag back reverts to calendar months instead of stranding users
- relax month_start_day validation to sometimes|required
- resolve "today" in the user timezone for the cashflow page so the client
  and server agree on the current period near boundaries
- bucket the category monthly breakdown drawer by the user's period
- cover previous-period math across short months, quarters, years, trend
  alignment, and flag rollback
2026-06-12 10:34:59 +01:00
..
Actions feat: parent/child category tree (#474) 2026-06-03 19:30:12 +02:00
Console/Commands test(open-banking): e2e coverage for Enable Banking connection flows (#509) 2026-06-09 11:58:50 +02:00
Contracts feat(open-banking): finalize bank connection without a session via state token (#498) 2026-06-06 12:12:07 +02:00
Enums feat(analysis): project-aware transaction analysis (#513) 2026-06-09 15:32:07 +02:00
Events Add Budgeting Feature to Track and Manage Spending (#36) 2026-01-21 15:25:50 +01:00
Exceptions/Banking Handle transient EnableBanking sync failures (#358) 2026-05-06 09:24:05 +02:00
Features feat(periods): gate custom month start day behind feature flag 2026-06-11 20:32:01 +01:00
Http fix(periods): correct previous-period comparisons and align period consumers 2026-06-12 10:34:59 +01:00
Jobs feat(settings): let users disable bank transactions email (#472) 2026-06-02 12:24:39 +02:00
Listeners feat(users): track last login and last active timestamps (#516) 2026-06-10 11:01:30 +02:00
Mail feat(leads): add user lead re-invite campaign (#432) 2026-05-26 08:35:31 +02:00
Models feat(periods): add custom month start day 2026-06-11 20:31:11 +01:00
Notifications fix: verify email via signed link without requiring login (#490) 2026-06-05 10:01:32 +02:00
Policies refactor(policies): extract HandlesUserOwnership trait (#478) 2026-06-03 17:43:30 +02:00
Providers feat(users): track last login and last active timestamps (#516) 2026-06-10 11:01:30 +02:00
Rules feat: parent/child category tree (#474) 2026-06-03 19:30:12 +02:00
Services fix(periods): correct previous-period comparisons and align period consumers 2026-06-12 10:34:59 +01:00