From ac191bae17beec2a30891bbd67c96e3b1e98781d Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 14 Nov 2025 15:55:50 +0000 Subject: [PATCH] Fix seed initialization to use Spark SDK Seed.Mnemonic type The previous implementation incorrectly converted the mnemonic to bytes: - OLD: var seed = mnemonic.DeriveSeed(); ... seed.ToList() - NEW: var seed = new Seed.Mnemonic(mnemonic: mnemonic.ToString(), passphrase: null); This matches the official Spark SDK C# snippets pattern where ConnectRequest expects a Seed discriminated union type, not a List. Reference: https://github.com/breez/spark-sdk/tree/main/docs/breez-sdk/snippets/csharp --- Plugins/BTCPayServer.Plugins.Breez/BreezLightningClient.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Plugins/BTCPayServer.Plugins.Breez/BreezLightningClient.cs b/Plugins/BTCPayServer.Plugins.Breez/BreezLightningClient.cs index fce4fd5..b192101 100644 --- a/Plugins/BTCPayServer.Plugins.Breez/BreezLightningClient.cs +++ b/Plugins/BTCPayServer.Plugins.Breez/BreezLightningClient.cs @@ -39,8 +39,8 @@ public class BreezLightningClient : ILightningClient, IDisposable apiKey = apiKey }; - var seed = mnemonic.DeriveSeed(); - var sdk = await BreezSdkSparkMethods.Connect(new ConnectRequest(config, seed.ToList(), workingDir)); + var seed = new Seed.Mnemonic(mnemonic: mnemonic.ToString(), passphrase: null); + var sdk = await BreezSdkSparkMethods.Connect(new ConnectRequest(config, seed, workingDir)); return new BreezLightningClient(sdk, network, paymentKey); }