feat(missions): MissionProgressService — counter upsert + achievement claimable on threshold

Also wires IMissionCatalogRepository + IViewerMissionRepository +
IMissionProgressService into DI. Task 17's separate DI step is now
subsumed by these registrations.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-05-27 10:25:13 -04:00
parent b38be1d953
commit aad604a589
4 changed files with 211 additions and 0 deletions

View File

@@ -88,6 +88,11 @@ public class Program
builder.Services.AddScoped<SVSim.Database.Repositories.BattlePass.IViewerBattlePassRepository,
SVSim.Database.Repositories.BattlePass.ViewerBattlePassRepository>();
builder.Services.AddScoped<IBattlePassService, BattlePassService>();
builder.Services.AddScoped<SVSim.Database.Repositories.Mission.IMissionCatalogRepository,
SVSim.Database.Repositories.Mission.MissionCatalogRepository>();
builder.Services.AddScoped<SVSim.Database.Repositories.Mission.IViewerMissionRepository,
SVSim.Database.Repositories.Mission.ViewerMissionRepository>();
builder.Services.AddScoped<IMissionProgressService, MissionProgressService>();
builder.Services.AddSingleton<TimeProvider>(TimeProvider.System);
builder.Services.AddScoped<IStoryMasterRepository, StoryMasterRepository>();
builder.Services.AddScoped<IViewerStoryProgressRepository, ViewerStoryProgressRepository>();