using NeonSprawl.Server.Game.PositionState; namespace NeonSprawl.Server.Game.Factions; /// Registers faction standing + reputation delta audit persistence (NEO-135). public static class FactionStandingServiceCollectionExtensions { /// PostgreSQL when ConnectionStrings:NeonSprawl is set; otherwise in-memory fallback. public static IServiceCollection AddFactionStandingStores(this IServiceCollection services, IConfiguration configuration) { var cs = configuration.GetConnectionString(PositionStateServiceCollectionExtensions.NeonSprawlConnectionStringName); if (!string.IsNullOrWhiteSpace(cs)) { services.AddSingleton(); services.AddSingleton(); } else { services.AddSingleton(); services.AddSingleton(); } return services; } }