Create round when only 1m remains
MODIFY
WalletWasabi/WabiSabi/Backend/Rounds/Arena.cs
WalletWasabi/WabiSabi/Backend/Rounds/Arena.cs
@@ -384,7 +384,7 @@ public partial class Arena : PeriodicRunner
private async Task CreateRoundsAsync(CancellationToken cancellationToken)
{
- var registrableRoundCount = Rounds.Count(x => x is not BlameRound && x.Phase == Phase.InputRegistration);
+ var registrableRoundCount = Rounds.Count(x => x is not BlameRound && x.Phase == Phase.InputRegistration && x.InputRegistrationTimeFrame.Remaining > TimeSpan.FromMinutes(1));
int roundsToCreate = Config.ParallelRounds - registrableRoundCount;
for (int i = 0; i < roundsToCreate; i++)
{

MODIFY
WalletWasabi/WabiSabi/Backend/Rounds/TimeFrame.cs
WalletWasabi/WabiSabi/Backend/Rounds/TimeFrame.cs
@@ -14,6 +14,7 @@ public record TimeFrame
public DateTimeOffset EndTime => StartTime + Duration;
public DateTimeOffset StartTime { get; init; }
public TimeSpan Duration { get; init; }
+ public TimeSpan Remaining => EndTime - DateTimeOffset.UtcNow;
public bool HasStarted => StartTime > DateTimeOffset.MinValue && StartTime < DateTimeOffset.UtcNow;
public bool HasExpired => HasStarted && EndTime < DateTimeOffset.UtcNow;

Create round when only 1m remains