feat: roll over a leaf's overspend to its payer #8

Merged
rubenjr0 merged 4 commits from feat/overspend-payer into main 2026-10-28 11:20:55 +00:00
Owner
  • redirect_overspend() (core) applies month-end rollover before settlement: negative remaining sources reset to 0 and debit their registered payer by the same amount; positive sources
    untouched. Payer may end up negative, carrying over as any overspend.
  • Migration 20261027_133242_allocation_overspend_to.sql + snapshot (database/history.toml, config via migration CLI).
  • Support: new config crate (CLI arg parsing), seed module with seeded data, web tree_plan wiring.
  • Includes dep bumps / version bumps (housekeeping).
- redirect_overspend() (core) applies month-end rollover before settlement: negative remaining sources reset to 0 and debit their registered payer by the same amount; positive sources untouched. Payer may end up negative, carrying over as any overspend. - Migration 20261027_133242_allocation_overspend_to.sql + snapshot (database/history.toml, config via migration CLI). - Support: new config crate (CLI arg parsing), seed module with seeded data, web tree_plan wiring. - Includes dep bumps / version bumps (housekeeping).
A leaf can name an `overspend_to` leaf in config.yaml. At rollover its
negative remaining resets to zero and the payer's carryover drops by the
same amount, so fixed costs like rent keep their allocation. Needs now
names Wants. Adds allocations.overspend_to_id (additive migration),
config validation and the pending-changes preview line.
rubenjr0 force-pushed feat/overspend-payer from 5f3c937140 to a0b0a39cff 2026-10-28 11:14:58 +00:00 Compare
rubenjr0 changed title from WIP: feat/overspend-payer to feat: roll over a leaf's overspend to its payer 2026-10-28 11:18:42 +00:00
rubenjr0 deleted branch feat/overspend-payer 2026-10-28 11:20:57 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rubenjr0/budgit!8
No description provided.