diff --git a/src/food-market.api/Seed/QuickLoginDemoSeeder.cs b/src/food-market.api/Seed/QuickLoginDemoSeeder.cs index de4e769..9e0afbd 100644 --- a/src/food-market.api/Seed/QuickLoginDemoSeeder.cs +++ b/src/food-market.api/Seed/QuickLoginDemoSeeder.cs @@ -54,6 +54,23 @@ public async Task StartAsync(CancellationToken ct) return; } + // Весь сидер обёрнут try/catch: dev-удобство для стенда не должно + // класть API. Если что-то упало — пишем Warning и выходим. Админ + // сможет руками подёргать POST /api/admin/seed-demo или починить + // сломанное состояние; стенд при этом остаётся работоспособным. + try + { + await SeedAsync(ct); + } + catch (Exception ex) + { + _log.LogWarning(ex, "QuickLoginDemoSeeder: не удалось засеять демо-данные для стенда. " + + "Это не критично — API остаётся рабочим, SuperAdmin по-прежнему пускает по мастер-паролю."); + } + } + + private async Task SeedAsync(CancellationToken ct) + { using var scope = _services.CreateScope(); var db = scope.ServiceProvider.GetRequiredService(); var userMgr = scope.ServiceProvider.GetRequiredService>();