> _bannedCoins;
- private readonly EventAggregator _eventAggregator;
public IRoundCoinSelector GetCoinSelector()
{
@@ -346,15 +345,21 @@ public class BTCPayWallet : IWallet, IDestinationProvider
public async Task RegisterCoinjoinTransaction(SuccessfulCoinJoinResult result, string coordinatorName)
{
+ Console.WriteLine($"{WalletName}_RegisterCoinjoinTransaction");
+ Console.WriteLine($"{WalletName}_savingProgress");
await _savingProgress;
+ Console.WriteLine($"{WalletName}_savingProgress_done");
_savingProgress = RegisterCoinjoinTransactionInternal(result, coordinatorName);
+ Console.WriteLine($"{WalletName}_savingProgress");
await _savingProgress;
+
+ Console.WriteLine($"{WalletName}_savingProgress_done");
}
private async Task RegisterCoinjoinTransactionInternal(SuccessfulCoinJoinResult result, string coordinatorName)
{
diff --git a/Plugins/BTCPayServer.Plugins.Wabisabi/Coordinator/Filters/ExceptionTranslateAttribute.cs b/Plugins/BTCPayServer.Plugins.Wabisabi/Coordinator/Filters/ExceptionTranslateAttribute.cs
index 5fb4350..a0e54b6 100644
--- a/Plugins/BTCPayServer.Plugins.Wabisabi/Coordinator/Filters/ExceptionTranslateAttribute.cs
+++ b/Plugins/BTCPayServer.Plugins.Wabisabi/Coordinator/Filters/ExceptionTranslateAttribute.cs
@@ -2,6 +2,7 @@ using System.Net;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
using Newtonsoft.Json;
+using WabiSabi.Crypto;
using WalletWasabi.WabiSabi;
using WalletWasabi.WabiSabi.Backend.Models;
using WalletWasabi.WabiSabi.Crypto;
diff --git a/Plugins/BTCPayServer.Plugins.Wabisabi/NostrWabisabiApiServer.cs b/Plugins/BTCPayServer.Plugins.Wabisabi/NostrWabisabiApiServer.cs
index 1ecdf22..5ddabbd 100644
--- a/Plugins/BTCPayServer.Plugins.Wabisabi/NostrWabisabiApiServer.cs
+++ b/Plugins/BTCPayServer.Plugins.Wabisabi/NostrWabisabiApiServer.cs
@@ -10,6 +10,7 @@ using NBitcoin.Secp256k1;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using NNostr.Client;
+using WabiSabi.Crypto;
using WalletWasabi.Logging;
using WalletWasabi.WabiSabi;
using WalletWasabi.WabiSabi.Backend.Models;
diff --git a/Plugins/BTCPayServer.Plugins.Wabisabi/Views/WabisabiStore/UpdateWabisabiStoreSettings.cshtml b/Plugins/BTCPayServer.Plugins.Wabisabi/Views/WabisabiStore/UpdateWabisabiStoreSettings.cshtml
index d62a858..9b99ba9 100644
--- a/Plugins/BTCPayServer.Plugins.Wabisabi/Views/WabisabiStore/UpdateWabisabiStoreSettings.cshtml
+++ b/Plugins/BTCPayServer.Plugins.Wabisabi/Views/WabisabiStore/UpdateWabisabiStoreSettings.cshtml
@@ -103,6 +103,12 @@
Only coinjoin if the mining fee is below the median of the specified number of hours
+ >
+
diff --git a/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiCoordinatorClientInstance.cs b/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiCoordinatorClientInstance.cs
index aa7493b..5829a27 100644
--- a/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiCoordinatorClientInstance.cs
+++ b/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiCoordinatorClientInstance.cs
@@ -10,9 +10,7 @@ using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
-using NBitcoin;
using WalletWasabi.Backend.Controllers;
-using WalletWasabi.Services;
using WalletWasabi.Tor.Socks5.Pool.Circuits;
using WalletWasabi.Userfacing;
using WalletWasabi.WabiSabi.Backend.PostRequests;
@@ -20,7 +18,6 @@ using WalletWasabi.WabiSabi.Client;
using WalletWasabi.WabiSabi.Client.RoundStateAwaiters;
using WalletWasabi.WabiSabi.Client.StatusChangedEvents;
using WalletWasabi.Wallets;
-using WalletWasabi.WebClients.Wasabi;
using HttpClientFactory = WalletWasabi.WebClients.Wasabi.HttpClientFactory;
namespace BTCPayServer.Plugins.Wabisabi;
@@ -199,7 +196,7 @@ public class WabisabiCoordinatorClientInstance
private void OnStatusChanged(object sender, StatusChangedEventArgs e)
{
-
+ bool stopWhenAllMixed;
switch (e)
{
case CoinJoinStatusEventArgs coinJoinStatusEventArgs:
@@ -233,11 +230,14 @@ public class WabisabiCoordinatorClientInstance
_logger.LogTrace("Coinjoin complete! :" + e.Wallet.WalletName);
break;
case LoadedEventArgs loadedEventArgs:
- var stopWhenAllMixed = !((BTCPayWallet)loadedEventArgs.Wallet).BatchPayments;
+ stopWhenAllMixed = !((BTCPayWallet)loadedEventArgs.Wallet).BatchPayments;
_ = CoinJoinManager.StartAsync(loadedEventArgs.Wallet, stopWhenAllMixed, false, CancellationToken.None);
break;
case StartErrorEventArgs errorArgs:
- _logger.LogInformation("Could not start wallet for coinjoin:" + errorArgs.Error.ToString() + " :" + e.Wallet.WalletName);
+ stopWhenAllMixed = !((BTCPayWallet)errorArgs.Wallet).BatchPayments;
+ _ = CoinJoinManager.StartAsync(errorArgs.Wallet, stopWhenAllMixed, false, CancellationToken.None);
+
+ // _logger.LogInformation("Could not start wallet for coinjoin:" + errorArgs.Error.ToString() + " :" + e.Wallet.WalletName);
break;
case StoppedEventArgs stoppedEventArgs:
_logger.LogInformation("Stopped wallet for coinjoin: " + stoppedEventArgs.Reason + " :" + e.Wallet.WalletName);
diff --git a/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiPlugin.cs b/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiPlugin.cs
index 93562dc..d74fcde 100644
--- a/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiPlugin.cs
+++ b/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiPlugin.cs
@@ -1,20 +1,12 @@
using System;
-using System.Collections.Generic;
-using System.Threading;
using System.Threading.Tasks;
using BTCPayServer.Abstractions.Contracts;
using BTCPayServer.Abstractions.Models;
using BTCPayServer.Abstractions.Services;
-using BTCPayServer.Client.Models;
using BTCPayServer.Common;
-using BTCPayServer.Payments;
-using BTCPayServer.PayoutProcessors;
using BTCPayServer.Services.Stores;
using Microsoft.AspNetCore.Builder;
-using Microsoft.AspNetCore.Http;
-using Microsoft.AspNetCore.Routing;
using Microsoft.Extensions.DependencyInjection;
-using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
using NBitcoin;
using WalletWasabi.Backend.Controllers;
@@ -38,22 +30,22 @@ public class WabisabiPlugin : BaseBTCPayServerPlugin
{
var res = ActivatorUtilities.CreateInstance(provider);
res.UTXOLocker = utxoLocker;
- res.AddCoordinator("zkSNACKS Coordinator", "zksnacks", provider =>
- {
- var chain = provider.GetService().GetExplorerClient("BTC").Network
- .NBitcoinNetwork.ChainName;
- if (chain == ChainName.Mainnet)
- {
- return new Uri("https://wasabiwallet.io/");
- }
-
- if (chain == ChainName.Testnet)
- {
- return new Uri("https://wasabiwallet.co/");
- }
-
- return new Uri("http://localhost:37127");
- });
+ // res.AddCoordinator("zkSNACKS Coordinator", "zksnacks", provider =>
+ // {
+ // var chain = provider.GetService().GetExplorerClient("BTC").Network
+ // .NBitcoinNetwork.ChainName;
+ // if (chain == ChainName.Mainnet)
+ // {
+ // return new Uri("https://wasabiwallet.io/");
+ // }
+ //
+ // if (chain == ChainName.Testnet)
+ // {
+ // return new Uri("https://wasabiwallet.co/");
+ // }
+ //
+ // return new Uri("http://localhost:37127");
+ // });
return res;
});
applicationBuilder.AddHostedService(provider =>
@@ -83,7 +75,7 @@ public class WabisabiPlugin : BaseBTCPayServerPlugin
"onchain-wallet-send"));
// applicationBuilder.AddSingleton();
- Logger.SetMinimumLevel(LogLevel.Warning);
+ Logger.SetMinimumLevel(LogLevel.Debug);
Logger.SetModes(LogMode.DotNetLoggers);
diff --git a/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiStoreSettings.cs b/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiStoreSettings.cs
index 4fe8c25..30e96a8 100644
--- a/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiStoreSettings.cs
+++ b/Plugins/BTCPayServer.Plugins.Wabisabi/WabisabiStoreSettings.cs
@@ -25,6 +25,7 @@ public class WabisabiStoreSettings
public int ExtraJoinProbability { get; set; } = 0;
public CrossMixMode CrossMixBetweenCoordinatorsMode { get; set; } = CrossMixMode.WhenFree;
public int FeeRateMedianTimeFrameHours { get; set; }
+ public long MinimumDenominationAmount { get; set; } = 10000;
public enum CrossMixMode
{
diff --git a/submodules/walletwasabi b/submodules/walletwasabi
index fdfddd8..6c653a0 160000
--- a/submodules/walletwasabi
+++ b/submodules/walletwasabi
@@ -1 +1 @@
-Subproject commit fdfddd858323954a25911fff53a5b159fd2538d5
+Subproject commit 6c653a0e140c8ab50ff6c23d4ba616d128974850