Auto-upgrade legacy Reveal phase players to Vote

This commit is contained in:
2026-02-04 22:09:21 +01:00
parent 90bcde6f36
commit f1245c200f

View File

@@ -20,8 +20,17 @@ internal static class EndpointHelpers
public static async Task<Phase> GetPhase(AppDbContext db, Guid playerId)
{
var player = await db.Players.AsNoTracking().FirstOrDefaultAsync(p => p.Id == playerId);
return player?.CurrentPhase ?? Phase.Suggest;
var player = await db.Players.FirstOrDefaultAsync(p => p.Id == playerId);
if (player is null) return Phase.Suggest;
// Auto-upgrade any legacy Reveal phase to Vote to avoid blank screens
if (player.CurrentPhase == Phase.Reveal)
{
player.CurrentPhase = Phase.Vote;
await db.SaveChangesAsync();
}
return player.CurrentPhase;
}
public static IResult PhaseMismatch(Phase required, Phase current) =>