Remove banning from ReadyToSign
Because the ReadyToSign request is now just a record type of
(RoundId, Guid) there is only a single canonical form so it necessarily
must be idempotent so the conditional body is dead code if the
idempotent middleware (or more accurately a bug, because it still has a
race condition).
MODIFY
WalletWasabi/WabiSabi/Backend/Rounds/Arena.cs
WalletWasabi/WabiSabi/Backend/Rounds/Arena.cs
@@ -402,12 +402,6 @@ namespace WalletWasabi.WabiSabi.Backend.Rounds
throw new WabiSabiProtocolException(WabiSabiProtocolErrorCode.AliceNotFound, $"Round ({request.RoundId}): Alice id ({request.AliceId}).");
}
- if (alice.ReadyToSign)
- {
- Prison.Ban(alice, round.Id);
- throw new WabiSabiProtocolException(WabiSabiProtocolErrorCode.AliceAlreadySignalled, $"Round ({request.RoundId}): Alice id ({request.AliceId}) already signaled readiness.");
- }
-
alice.ReadyToSign = true;
}
}

Remove banning from ReadyToSign

Because the ReadyToSign request is now just a record type of
(RoundId, Guid) there is only a single canonical form so it necessarily
must be idempotent so the conditional body is dead code if the
idempotent middleware (or more accurately a bug, because it still has a
race condition).