From 0a969d18d310a8092e16a8f72feb87e9f654b736 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 5 Feb 2026 07:23:09 +0000 Subject: [PATCH] Use regex for more robust multipath descriptor conversion during import Co-authored-by: k9ert <117085+k9ert@users.noreply.github.com> --- src/cryptoadvance/specter/util/wallet_importer.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cryptoadvance/specter/util/wallet_importer.py b/src/cryptoadvance/specter/util/wallet_importer.py index 36f072dba..ac6b934df 100644 --- a/src/cryptoadvance/specter/util/wallet_importer.py +++ b/src/cryptoadvance/specter/util/wallet_importer.py @@ -1,5 +1,6 @@ import json import logging +import re import requests from embit.descriptor import Descriptor @@ -520,8 +521,9 @@ class WalletImporter: # Handle combined descriptors with <0;1> syntax (BIP 389 multipath) # Convert to receive-only descriptor for backward compatibility with import logic + # Only replace <0;1> in the final derivation path (before /*), not in key paths if recv_descriptor and "<0;1>" in recv_descriptor: - recv_descriptor = recv_descriptor.replace("<0;1>", "0") + recv_descriptor = re.sub(r'<0;1>(/\*)', r'0\1', recv_descriptor) if wallet_name is None: raise SpecterError(