whisper-money/app/Http/Controllers/Settings
Víctor Falcón 1ed4a1a833 fix(automation-rules): re-check only_uncategorized at apply time
The apply flow resolves matching transaction IDs into a snapshot cached
for up to 15 minutes and keyed only by rule.updated_at. Both the sync
path and ApplySingleAutomationRuleJob then applied the rule's category to
every id in that snapshot without re-checking eligibility.

A transaction categorized after the snapshot was taken (by the user, a
sibling rule, or a concurrent AI backfill) was therefore silently
re-categorized to the rule's target and stamped category_source=Rule,
reverting a choice the user never asked the rule to touch.

Re-filter the set through shouldSkipForOnlyUncategorized() inside
applyRuleActionsToTransactions() when only_uncategorized was requested,
threading the flag through the job constructor. Skipped transactions are
no longer counted as changed.
2026-07-03 13:22:36 +02:00
..
AccountController.php refactor(api): standardize serialization via model $hidden (#492) 2026-06-05 13:57:34 +02:00
AutomationRuleApplicationController.php fix(automation-rules): re-check only_uncategorized at apply time 2026-07-03 13:22:36 +02:00
AutomationRuleController.php Apply automation rules to existing transactions (#413) 2026-05-22 08:36:18 +02:00
BankController.php refactor(banks): add Bank::availableForUser scope (#480) 2026-06-03 17:59:24 +02:00
CategoryController.php feat: enable category tree for all users, remove flag (#488) 2026-06-04 13:44:57 +02:00
ChartColorSchemeController.php Add chart color scheme setting (#101) 2026-02-28 12:58:21 +01:00
LabelController.php refactor(api): standardize serialization via model $hidden (#492) 2026-06-05 13:57:34 +02:00
NetWorthChartLoanPreferenceController.php fix(dashboard): treat loans as debt in net worth (#238) 2026-03-20 09:55:53 +00:00
NetWorthChartRealEstatePreferenceController.php feat(accounts): add real estate asset tracking (#241) 2026-03-24 10:21:32 +00:00
NotificationPreferenceController.php feat(settings): let users disable bank transactions email (#472) 2026-06-02 12:24:39 +02:00
PasswordController.php Set up a fresh Laravel app 2025-11-07 12:01:36 +00:00
ProfileController.php fix(account): block deletion while subscription or trial is active (#531) 2026-06-14 20:46:44 +02:00
TimezoneController.php fix(user): persist detected timezones (#296) 2026-04-16 11:36:57 +01:00
TwoFactorAuthenticationController.php Set up a fresh Laravel app 2025-11-07 12:01:36 +00:00