You have no items in your shopping cart.
Phase 2: Optimize UserHasLoggedInCommand (Major Impact) File: src/Services/Core/Core.Application/UserEvents/UserHasLoggedInCommand.cs 2.1 Remove duplicate GetUserById call Pass keycloakUser to KeycloakAddUserToOrganizationIfIsNotAlreadyAndAssignsOwnerRoleCommand instead of re-fetching. 2.2 Optimize database query Change from: var owners = context.GetCurrentOwners(); // ALL owners! foreach (var birthNumber in birthNumbers) { var matchingOwners = await owners.Where(...).ToListAsync(); } To: // Single query with birth number filter pushed to database var matchingOwners = await context.Owners .Where(o => o.Persons.Any(p => p.Latest && !string.IsNullOrEmpty(p.NationalId) && birthNumbers.Contains(p.NationalId.Replace("/", "")))) .Include(x => x.Persons.Where(p => p.Latest)) .ToListAsync(cancellationToken); 2.3 Add database index Migration: Add index on Persons.NationalId for faster lookups.