c018ea4e73
Пополнение баланса больше не оставляет проекты заблокированными навечно. Новый ProjectBlockReleaseService: после зачисления (единая точка BillingTopupService::topup — и ручное пополнение, и онлайн через PaymentWebhookController) проверяет, хватает ли баланса на суммарный дневной лимит ВСЕХ активных проектов тенанта, включая заблокированные. Хватает → снимает preflight_blocked_at со всех + диспатчит SyncSupplierProjectJob; не хватает → не трогает никого и возвращает дефицит (политика всё-или-ничего, решение владельца). Зеркалит BalancePreflightService и фильтр sweep. TDD: 4 теста (release при покрытии, удержание при нехватке, всё-или-ничего на двух проектах, no-op без заблокированных). Регрессия billing 114/114. larastan/deptrac исключены точечно — пред-существующая краснота. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>