mirror of
https://github.com/actualbudget/actual.git
synced 2026-07-16 07:04:23 -05:00
[GH-ISSUE #6562] [Bug]: Regression in v26.1.0: #template schedule underfunds multi-month schedules after skipped months #17012
Closed
opened 2026-04-14 19:58:57 -05:00 by GiteaMirror
·
13 comments
No Branch/Tag Specified
master
dependabot/npm_and_yarn/npm_and_yarn-cd62b4b37a
api-browser-custom-data-dir
tabedzki/feat/replacing-month-picker-with-day-picker
delay-initial-sync-until-loaded
jfdoming/mobile-app-build
cross-version-sync-compat
jfdoming/api-tokens-part-1
jfdoming/api-tokens-part-2
jfdoming/api-tokens-part-3
jfdoming/mobile-app-updates
claude/budget-version-migration-compat-151jlr
claude/worker-error-serialization-9iqtl7
claude/react-table-library-research-afx83z
claude/issue-8401-regression-test-9nw9l3
jfdoming/mobile-app-foundation-part-1
jfdoming/mobile-app-scaffold
release
ai-fix-cleanup-def-8290
claude/relaxed-shannon-jusywa
claude/fervent-keller-s6f2fq
claude/determined-feynman-st1y9z
claude/wizardly-einstein-vi2wce
claude/sweet-albattani-7nseio
feat/bank-sync-per-budget-file
claude/affectionate-cannon-y0kc82
claude/dependabot-findings-m9pgmb
claude/mac-app-ios-publish-zjs1lz
claude/vigilant-tesla-aiiyos
depot-migrate-secrets-1781296330308
claude/quirky-cerf-v5qck7
claude/animation-removal-alternative-2etfh1
claude/netlify-preview-comments-consolidate-9XPYa
osc/7391-error-boundaries-reports
claude/pensive-dijkstra-7DYui
claude/server-app-version-mismatch-HTCGv
claude/pr-8027-review-feedback-mELuO
claude/zealous-wozniak-e5pO0
claude/intelligent-heisenberg-BSHJq
claude/translation-download-refactor-jFRsO
claude/mobile-performance-ideas-G9PAO
claude/github-issue-7988-5A5ly
blacksmith-migration-ff70d2d
claude/great-mayer-KRvOk
claude/react-native-ios-compilation-fcJh5
claude/serene-goldberg-58xv0
claude/kind-euler-LVG3K
release-automation/edge-nightly
7710-bundle-migrations
claude/fix-docker-build-error-WMfed
claude/llm-compatible-release-notes-t20Nr
7710-tests-tdd
cursor/transaction-table-rewrite-f077
claude/plan-ci-secure-context-OtEe1
claude/fix-issue-7667-DPXi3
cursor/resolve-pr-7449-ee11
claude/fix-typescript-build-error-JPtZ5
copilot/add-repository-configs-to-packages
worktree-compressed-drifting-ritchie
claude/api-consumer-verification-kfz1K
pr-7454
claude/fix-issue-7410-LLLQ4
revert-7281-generate-icons
react-query-useSchedules
copilot/sub-pr-6140
package-upgrades
v26.7.0
v26.6.0
v26.5.2
v26.5.1
v26.5.0
v26.4.0
v26.3.0
v26.2.1
v26.2.0
v26.1.0
v25.12.0
v25.11.0
v25.10.0
v25.9.0
v25.8.0
v25.7.1
v25.7.0
v25.6.1
v25.6.0
v25.5.0
v25.4.0
v25.3.1
v25.3.0
v25.2.1
v25.2.0
v25.1.0
v24.12.0
v24.11.0
v24.10.1
v24.10.0
v24.9.0
v24.8.0
v24.7.0
v24.6.0
v24.5.0
v24.4.0
v24.3.0
v24.2.0
v24.1.0
v23.12.0
v23.11.0
v23.10.0
v23.9.0
v23.8.1
v23.8.0
v23.7.2
v23.7.1
v23.7.0
v23.6.0
v23.5.0
v23.4.2
v23.4.1
v23.4.0
v23.3.2
v23.3.0
v23.2.9
v23.2.5
v23.1.12
v22.12.9
Labels
Clear labels
AI generated
API
bank sync
budgeting
bug
can’t replicate
dependencies
docker
documentation
electron
experimental feature
feature
feedback
goal templates
good first issue
help wanted
importers
maintenance
needs info
needs testing
needs triage
needs votes
openid
payees
pull-request
regression
reports
responsive
rules
schedules
server
✨ merged
split transactions
tech debt
tech-support
theme
transaction import
transaction reconciliation
transactions
translations
upstream
user interface
✅ approved
wontfix
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/actual#17012
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @coltrane42 on GitHub (Jan 5, 2026).
Original GitHub issue: https://github.com/actualbudget/actual/issues/6562
Verified issue does not already exist?
What happened?
In Actual v26.1.0, #template schedule <SCHEDULE_NAME> can underfund a category for a multi-month schedule when some months are skipped/left at 0.
Observed behavior: if I skip funding for one or more months, the schedule template will “catch up” only on the first subsequent month, but then it reverts back to the original base monthly amount even though the category is still behind, and the due month arrives underfunded.
This looks like a regression. Same budget file + same actions:
#template <amount> by <date>(keeps increasing all remaining months as needed)How can we reproduce the issue?
I’m attaching a minimal test budget file that defines a single schedule:
TEST_SCHEDULEI've set 2 categories:
SCHEDULE TEMPLATE:
#template schedule TEST_SCHEDULE
BY TEMPLATE:
#template 50 by 2025-10 repeat every 6 months
If I skip october, november and december, and begin running the templates starting in 2026-01, the two templates behave exactly the same in v25.12 until 2026-04: they increase the budgeted amount proportionally to 12.50 to hit the due date fully funded.
Doing the exact same actions in v26.1, the schedule template only budgets 12.5 on january and reverts back to budgeting 8.33 on february, march and april, hitting the due month underfunded with 37.49 instead of 50.
v26-1-regression-My Finances.zip
Where are you hosting Actual?
Desktop App (Electron)
What browsers are you seeing the problem on?
No response
Operating System
Linux
@coltrane42 commented on GitHub (Jan 7, 2026):
Here are two screenshots showing the situation:
This is the setup after running the templates in v25.12.0:
This is the exact same setup after re-running the templates in v26.1.0:
January and february are now silently underfunded in the scheduled template even though their balances appear in green.
@youngcw commented on GitHub (Jan 9, 2026):
When I use your example file I get 12.50 on both categories, and if I do your screenshot setup, I get 10 for both categoriesNVM, I needed to update my test@youngcw commented on GitHub (Jan 9, 2026):
Ok, I was working on a different schedule issue and accidentally may have fixed this one. Ill put in a PR.
@youngcw commented on GitHub (Jan 9, 2026):
@coltrane42 can you test out https://deploy-preview-6610.demo.actualbudget.org/ and confirm it fixes your issue?
@coltrane42 commented on GitHub (Jan 10, 2026):
Yes, it's working fine and I couldn't replicate the underbudgeting anymore, thanks!
@vfhykrmh4k-dot commented on GitHub (Jan 10, 2026):
PR#6610 does not seem to have pushed the corrected code to Build #1437, which I installed this morning via Docker Container Manager. The Docker image timestamp matches the Build Edge Docker Image timestamp.Actual in Safari indicated an update was available, which was then applied. Browser cache and
localStoragewere then cleared, and I loaded Actual in a Safari Private window to double-check. Unfortunately, the issue shown below persists.Issue:
#template schedule <SCHEDULE_NAME>underfunds a category for a multi-month schedule in two instances:How can we reproduce the issue?
Attached is a test budget file that defines a single schedule:
2026-01-10-Test Budget.zip
Math breakdown in local Docker:
Template used:
#template schedule CELLPHONEEnvironment:
Setup on local Docker (Issue persists in Build #1437):

Setup on Deploy Preview 6610 (Fixed):

This is the exact same setup in the preview environment, which correctly fixes the issue as mentioned in PR #6610.
Let me know if you prefer a new ticket for this.
@youngcw commented on GitHub (Jan 10, 2026):
I haven't tested docker, but you are right that these changes haven't made it to https://edge.actualbudget.org. I don't know why that is but the changes do show in the source. They should show up soon I would think. The desktop app built by that PR does have the change.
@vfhykrmh4k-dot commented on GitHub (Jan 11, 2026):
I've done some further testing
and it seems that the updated code only corrects/applies to newly created schedules and templates linked to them.Eg existing schedules and linked templates still have the calculation error as mentioned in my comment above.Attached budget file2026-01-11-Our Finances.zip
In the example below I've created a new schedule and template linked to it in the row labeled CELL, as you can see the calculations are correct. The row below it labeled 📱Cellphone is the existing schedule and template with the calculation error.

Troubleshooting steps performed:
Here is the docker image I used for the update/rebuild of the container.
Let me know if I should open a new ticket for this?
@youngcw commented on GitHub (Jan 11, 2026):
There is only one block of template code, so that block applies to all schedule templates. Are you rerunning your templates with overwrite?
@vfhykrmh4k-dot commented on GitHub (Jan 11, 2026):
The issue seems to be caused by the "repeat every" field for schedules, specifically when days or weeks are selected, months and years seem to be unaffected. All schedules are affected, new and existing.
I accidentally set the new schedule to repeat every year instead of repeat every 360 days (Cellular provider bills every 360 days), hence it looked like new schedules were unaffected. Apologies!
Updated budget file attached with both schedules repeating every 360 days.
2026-01-11-Template.Issue-2.zip
I went to the existing schedule Cellphone and changed it from repeat every 360 days to repeat every 1 year and now it's calculating correctly. I've tried changing it to 361 and 359 days but then the calculation errors returns. It also calculates correctly when there is no repeat set.
I'm pleased to report that with two template schedules in a category the calculations are now correct as long as the "repeat every field" is not set to days or weeks. In the interim I'll update both schedules to repeat yearly until a fix is pushed.
@vfhykrmh4k-dot commented on GitHub (Jan 13, 2026):
@youngcw should I open a new ticket for this?
@youngcw commented on GitHub (Jan 13, 2026):
@vfhykrmh4k-dot sure
@vfhykrmh4k-dot commented on GitHub (Jan 18, 2026):
Done 😀 Apology for not replying earlier! https://github.com/actualbudget/actual/issues/6644