Skip to content

Releases: rollecode/dough

v3.11.0

Choose a tag to compare

@github-actions github-actions released this 03 Jul 15:16
  • Stop fabricating the opposite leg of a transfer when the counterpart account is bank-fed: the real leg always arrives from the bank on its own schedule, so a fabricated one doubled the transfer and permanently drifted the counterpart balance; fabrication now only happens for accounts Synci does not feed
  • Let transfer pairing reclaim an inflow the fallback filed as income: the opposite leg often arrives days later, and without re-pairing the money stayed income on one account while the other side became a transfer with no counterpart, inflating income and mismatching balances (pattern-matched paychecks stay protected)
  • Attach late-arriving transfer legs of either direction to an existing single-leg transfer, not just incoming ones
  • Categorise an unmatched inflow from a payee the household only spends at as a refund to that payee's usual category instead of income, so a courier or shop refund no longer shows up as money to budget
  • Never offer income categories to the AI expense categoriser

v3.10.2

Choose a tag to compare

@github-actions github-actions released this 02 Jul 21:29
  • Scope the Synci import duplicate check to the same account: matching on amount alone across all accounts made a common round amount (a 50 euro card payment) count as a duplicate of a same-size transfer on another account days earlier, permanently dropping the real purchase and leaving the account balance above the bank's

v3.10.1

Choose a tag to compare

@github-actions github-actions released this 02 Jul 21:25
  • Walk every page of the Synci transactions feed instead of only the newest one: the API ignores its per-account filter and plain page parameter (pagination is page[number]/page[size]), so the sync only ever saw the latest 25 transactions and a quiet account's purchases were pushed out of the window by busier accounts and silently lost; the full walk also backfills anything missed earlier

v3.10.0

Choose a tag to compare

@github-actions github-actions released this 02 Jul 20:49
  • Open a finger-sized calculator sheet when editing an assigned amount on a touch device: the native number keypad has no operator keys, so expressions like 50+10 could not be typed on mobile; the first digit replaces the prefilled amount and operators build on it, matching the keyboard behaviour
  • Show the activity (spent) column in the budget on phones with a compact four-column layout instead of dropping the column

v3.9.0

Choose a tag to compare

@github-actions github-actions released this 01 Jul 17:38
  • Make everything that read YNAB-only tables work in local mode, so households that started on YNAB and moved off it (or never used it) see correct data everywhere
  • Dashboard: build the current month's category spending from the local ledger instead of the frozen ynab_categories rows, which are empty for months added since the cutover
  • AI summary and chat: fix the local category-activity sign (spending was stored positive, so the "spending by category" breakdown filtered itself out to empty) and derive the previous-months comparison from the transactions ledger instead of the stale monthly_snapshots table
  • Debts: read debt accounts from the live accounts table (not the frozen ynab_cache snapshot) and resolve category-linked monthly targets from the local budget when YNAB is disconnected
  • Category list endpoint now serves the local categories table in local mode

v3.8.0

Choose a tag to compare

@github-actions github-actions released this 01 Jul 17:26
  • Make the monthly cash flow chart work without YNAB: in local mode the income and expenses for both the current and past months now come from the actual transactions ledger (internal transfers excluded) instead of the frozen YNAB-era ynab_month_budget and monthly_snapshots tables, which were never updated after the cutover and showed stale or zero figures
  • Add shared local cash-flow helpers (cashFlowForMonth, topExpenseCategories, recentTransactionMonths) so every consumer derives money-in/money-out the same way

v3.6.1

Choose a tag to compare

@github-actions github-actions released this 01 Jul 14:25
  • Document the write-scoped v1 budget endpoints (budget/assign, budget/auto-assign) in docs/public-api.md

v3.6.0

Choose a tag to compare

@github-actions github-actions released this 01 Jul 14:15
  • Reconcile the current month's Ready to Assign against real account balances in local mode (on-budget balance = Ready to Assign + category available), so money accumulated before the YNAB cutover is counted as assignable instead of being lost to the income-only carry-forward

v3.5.0

Choose a tag to compare

@github-actions github-actions released this 01 Jul 12:26
  • Add write-scoped v1 endpoints for budgeting: POST /api/v1/budget/assign sets one category's amount and GET/POST /api/v1/budget/auto-assign previews and applies target funding, so an authorized client can do the monthly budget
  • Extract the auto-assign planning into lib/auto-assign.ts shared by the internal route and the v1 API

v3.4.1

Choose a tag to compare

@github-actions github-actions released this 01 Jul 11:26
  • Let the /api/v1 public API bypass the session-cookie middleware so key-authenticated requests reach the routes instead of being redirected to the login page