State spending-report outflows and inflows separately #63

Merged
ryan merged 2 commits from feat/ynab-report-totals into main 2026-10-12 19:48:17 -04:00
Owner

Problem

The ynab_spending_report summary line reported a net total: inflows (deposits into budget accounts) subtracted from the spending total. The model repeated that net figure back as 'spending'.

Fix

  • Report 'Total spending (outflows)' and 'Inflows (deposits into budget accounts, not spending)' as separate lines.
  • Drop groups whose net is non-positive from the per-group list (e.g. an income-only 'Uncategorized' group no longer shows as negative spending).
  • Monthly average is computed from outflows.

All 189 tests pass. Kept separate from the date-in-prompt fix (#62) — one change per branch.

## Problem The ynab_spending_report summary line reported a *net* total: inflows (deposits into budget accounts) subtracted from the spending total. The model repeated that net figure back as 'spending'. ## Fix - Report 'Total spending (outflows)' and 'Inflows (deposits into budget accounts, not spending)' as separate lines. - Drop groups whose net is non-positive from the per-group list (e.g. an income-only 'Uncategorized' group no longer shows as negative spending). - Monthly average is computed from outflows. All 189 tests pass. Kept separate from the date-in-prompt fix (#62) — one change per branch.
ryan added 1 commit 2026-10-12 18:28:39 -04:00
The ynab_spending_report 'total' was a net figure: inflows (deposits into
budget accounts) subtracted from the spending total, which the model
repeated back as spending. The report now states total outflows and
inflows separately, drops net-negative groups from the per-group list,
and computes the monthly average from outflows.
ryan added 1 commit 2026-10-12 19:47:58 -04:00
ryan merged commit 2104e9f694 into main 2026-10-12 19:48:17 -04:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: ryan/simbarag#63