Skip to content

2.18.0

Released: TBD

Highlights

  • Budget-comparison reports (Account Variance, Budget) and bank-reconciliation detail reports (Outstanding Checks, Deposits in Transit, Bank Deposits) — Phases 3 & 5 of the Peachtree-parity effort.
  • No schema migration — joins existing Budgets and reconciliation (cleared_at) data.

Added

  • Budget-comparison reportsaccountVariance(budgetId, dateFilter, startPeriod, endPeriod, accountTypes?, generateCsv) returns per-account budget vs actual (in each account's natural balance direction), variance and variance %; budgetReport(budgetId) lists budgeted amounts per account per period. The variance report with an accountTypes filter also serves the Income/Budget statement view. See Budget-Comparison Reports.
  • Bank-reconciliation detail reportsoutstandingChecks (uncleared credits), depositsInTransit (uncleared debits), and bankDepositReport (deposits over a range) for a chosen bank account, keyed on ledger_entry_lines.cleared_at. See Bank-Reconciliation Detail Reports.
  • Report parity trackerPeachtree Report Parity now at 53 of 84 done (General Ledger 8/10, Account Reconciliation 5/6).

Changed

  • None (all additive).

Fixed

  • None.

Migrations

  • None. Reports aggregate existing budgets/budget_lines, ledger_entries/ledger_entry_lines, and accounts; no alembic revision and no new Path/Resource.

Frontend impact

  • Five new read-only queries under Path.REPORTS, all CSV-capable:
  • accountVariance / budgetReportGenericReportPage of AccountVarianceLine / BudgetLineReport.
  • outstandingChecks / depositsInTransit / bankDepositReportGenericReportPage of BankReconciliationItem; pass a bank/cash accountId, optional asOfDate (defaults to today).
  • New GraphQL types: AccountVarianceLine, BudgetLineReport, BankReconciliationItem.

Versioning notes

  • Bumped with uv run python scripts/bump_version.py 2.18.0 --changelog-stub. Additive schema only — no deploy-order constraint. Sixth release in the Peachtree-parity series.