Remove v3 related classes
DELETE
WalletWasabi/CoinJoin/Client/Clients/AliceClient.cs
-using NBitcoin;
-using Newtonsoft.Json;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Net;
-using System.Net.Http;
-using System.Text;
-using System.Threading;
-using System.Threading.Tasks;
-using WalletWasabi.Bases;
-using WalletWasabi.CoinJoin.Common.Crypto;
-using WalletWasabi.CoinJoin.Common.Models;
-using WalletWasabi.Exceptions;
-using WalletWasabi.Logging;
-using WalletWasabi.WebClients.Wasabi;
-using static WalletWasabi.Crypto.SchnorrBlinding;
-using UnblindedSignature = WalletWasabi.Crypto.UnblindedSignature;
-
-namespace WalletWasabi.CoinJoin.Client.Clients
-{
- public class AliceClient : AliceClientBase
- {
- internal AliceClient(
- long roundId,
- IEnumerable<BitcoinAddress> registeredAddresses,
- IEnumerable<SchnorrPubKey> schnorrPubKeys,
- IEnumerable<Requester> requesters,
- Network network,
- Func<Uri> baseUriAction,
- EndPoint torSocks5EndPoint)
- : base(roundId, registeredAddresses, requesters, network, baseUriAction, torSocks5EndPoint)
- {
- SchnorrPubKeys = schnorrPubKeys.ToArray();
- }
-
- public SchnorrPubKey[] SchnorrPubKeys { get; }
-
- protected override PubKey GetSignerPubKey(int i)
- {
- return SchnorrPubKeys[i].SignerPubKey;
- }
- }
-}

MODIFY
WalletWasabi/CoinJoin/Client/Clients/AliceClientBase.cs
WalletWasabi/CoinJoin/Client/Clients/AliceClientBase.cs
@@ -45,65 +45,6 @@ namespace WalletWasabi.CoinJoin.Client.Clients
public BitcoinAddress[] RegisteredAddresses { get; }
public Requester[] Requesters { get; }
- public static async Task<AliceClient> CreateNewAsync(
- long roundId,
- IEnumerable<BitcoinAddress> registeredAddresses,
- IEnumerable<SchnorrPubKey> schnorrPubKeys,
- IEnumerable<Requester> requesters,
- Network network,
- BitcoinAddress changeOutput,
- IEnumerable<uint256> blindedOutputScriptHashes,
- IEnumerable<InputProofModel> inputs,
- Func<Uri> baseUriAction,
- EndPoint torSocks5EndPoint)
- {
- var request = new InputsRequest
- {
- RoundId = roundId,
- BlindedOutputScripts = blindedOutputScriptHashes,
- ChangeOutputAddress = changeOutput,
- Inputs = inputs
- };
- AliceClient client = new AliceClient(roundId, registeredAddresses, schnorrPubKeys, requesters, network, baseUriAction, torSocks5EndPoint);
- try
- {
- // Correct it if forgot to set.
- if (request.RoundId != roundId)
- {
- if (request.RoundId == 0)
- {
- request.RoundId = roundId;
- }
- else
- {
- throw new NotSupportedException($"InputRequest {nameof(roundId)} does not match to the provided {nameof(roundId)}: {request.RoundId} != {roundId}.");
- }
- }
- using HttpResponseMessage response = await client.TorClient.SendAsync(HttpMethod.Post, $"/api/v{WasabiClient.ApiVersion}/btc/chaumiancoinjoin/inputs/", request.ToHttpStringContent()).ConfigureAwait(false);
- if (response.StatusCode != HttpStatusCode.OK)
- {
- await response.ThrowRequestExceptionFromContentAsync().ConfigureAwait(false);
- }
-
- var inputsResponse = await response.Content.ReadAsJsonAsync<InputsResponse>().ConfigureAwait(false);
-
- if (inputsResponse.RoundId != roundId) // This should never happen. If it does, that's a bug in the coordinator.
- {
- throw new NotSupportedException($"Coordinator assigned us to the wrong round: {inputsResponse.RoundId}. Requested round: {roundId}.");
- }
-
- client.UniqueId = inputsResponse.UniqueId;
- Logger.LogInfo($"Round ({client.RoundId}), Alice ({client.UniqueId}): Registered {request.Inputs.Count()} inputs.");
-
- return client;
- }
- catch
- {
- client?.Dispose();
- throw;
- }
- }
-
public static async Task<AliceClient4> CreateNewAsync(
long roundId,
IEnumerable<BitcoinAddress> registeredAddresses,

DELETE
WalletWasabi/CoinJoin/Common/Models/RoundStateResponse.cs
-using NBitcoin;
-using Newtonsoft.Json;
-using Newtonsoft.Json.Converters;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using WalletWasabi.CoinJoin.Common.Crypto;
-using WalletWasabi.JsonConverters;
-
-namespace WalletWasabi.CoinJoin.Common.Models
-{
- public class RoundStateResponse : RoundStateResponseBase
- {
- public IEnumerable<SchnorrPubKey> SchnorrPubKeys { get; set; }
-
- public override int MixLevelCount => SchnorrPubKeys.Count();
- }
-}

MODIFY
WalletWasabi/JsonConverters/RoundStateResponseJsonConverter.cs
WalletWasabi/JsonConverters/RoundStateResponseJsonConverter.cs
@@ -29,7 +29,6 @@ namespace WalletWasabi.JsonConverters
var type = ProtocolVersion switch
{
- 3 => typeof(RoundStateResponse),
4 => typeof(RoundStateResponse4),
_ => throw new InvalidOperationException($"Cannot deserialize message for unknown protocol version: {ProtocolVersion}")
};

Remove v3 related classes