Don't ban alices the end of input registration
MODIFY
WalletWasabi.Backend/Controllers/ChaumianCoinJoinController.cs
WalletWasabi.Backend/Controllers/ChaumianCoinJoinController.cs
@@ -245,11 +245,7 @@ namespace WalletWasabi.Backend.Controllers
// Progress round if needed.
if(round.CountAlices() >= round.AnonymitySet)
{
- var alicesToBan = await round.RemoveAlicesIfInputsSpentAsync();
- if (alicesToBan.Count() != 0)
- {
- await Coordinator.UtxoReferee.BanUtxosAsync(1, DateTimeOffset.Now, alicesToBan.SelectMany(x => x.Inputs).Select(y => y.OutPoint).ToArray());
- }
+ await round.RemoveAlicesIfInputsSpentAsync();
if (round.CountAlices() >= round.AnonymitySet)
{

MODIFY
WalletWasabi/ChaumianCoinJoin/CcjRound.cs
WalletWasabi/ChaumianCoinJoin/CcjRound.cs
@@ -323,11 +323,7 @@ namespace WalletWasabi.ChaumianCoinJoin
{
// Only fail if less two one Alice is registered.
// Don't ban anyone, it's ok if they lost connection.
- var alicesToBan = await RemoveAlicesIfInputsSpentAsync();
- if (alicesToBan.Count() != 0)
- {
- await UtxoReferee.BanUtxosAsync(1, DateTimeOffset.Now, alicesToBan.SelectMany(x => x.Inputs).Select(y => y.OutPoint).ToArray());
- }
+ await RemoveAlicesIfInputsSpentAsync();
int aliceCountAfterInputRegistrationTimeout = CountAlices();
if (aliceCountAfterInputRegistrationTimeout < 2)
{
@@ -346,7 +342,7 @@ namespace WalletWasabi.ChaumianCoinJoin
// Only fail if less than two one alices are registered.
// Don't ban anyone, it's ok if they lost connection.
RemoveAlicesBy(AliceState.InputsRegistered);
- var alicesToBan = await RemoveAlicesIfInputsSpentAsync();
+ var alicesToBan = await RemoveAlicesIfInputsSpentAsync(); // So ban only those who confirmed participation, yet spent their inputs.
if (alicesToBan.Count() != 0)
{
await UtxoReferee.BanUtxosAsync(1, DateTimeOffset.Now, alicesToBan.SelectMany(x => x.Inputs).Select(y => y.OutPoint).ToArray());

Don't ban alices the end of input registration