## Summary - lock the transaction row before reconciling `budget_transactions` so concurrent assignment work serializes per transaction - retry the assignment transaction on deadlocks using Laravel's built-in transaction attempts - add regression coverage that asserts the deadlock retry path remains configured for `PHP-LARAVEL-D` ## Testing - php artisan test --compact tests/Feature/BudgetTransactionServiceTest.php tests/Feature/Listeners/AssignTransactionToBudgetTest.php |
||
|---|---|---|
| .. | ||
| Banking | ||
| Demo | ||
| AccountMetricsService.php | ||
| AutomationRuleService.php | ||
| BalanceLookup.php | ||
| BudgetPeriodService.php | ||
| BudgetTransactionService.php | ||
| CurrencyConversionService.php | ||
| CurrencyOptions.php | ||
| ExchangeRateService.php | ||
| LoanAmortizationService.php | ||
| PeriodComparator.php | ||
| RealEstateBalanceGeneratorService.php | ||
| ResendService.php | ||