Skip to content

feat: Add support for Multipath (two-path) descriptors - #309

Open
tvpeter wants to merge 3 commits into
bitcoindevkit:masterfrom
tvpeter:feat/multipath-desc
Open

feat: Add support for Multipath (two-path) descriptors#309
tvpeter wants to merge 3 commits into
bitcoindevkit:masterfrom
tvpeter:feat/multipath-desc

Conversation

@tvpeter

@tvpeter tvpeter commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Description

This PR enables support for BIP389 multipath descriptors. It uses the existing external descriptor and verifies whether the provided descriptor is a multipath descriptor. If it is, a wallet will be created using the Wallet::create_from_two_path_descriptor() method. If not, the standard wallet creation logic will be applied.

Fixes #195

Replaces #238

Notes to the reviewers

  • is_multipath_descriptor helper parses the descriptor and accepts only two-path multipath descriptors (external/internal).

Changelog notice

  • Add support for BIP389 multipath descriptors

Checklists

All Submissions:

  • I've signed all my commits
  • I followed the contribution guidelines
  • I ran cargo fmt and cargo clippy before committing

New Features:

  • I've added tests for the new feature
  • I've added docs for the new feature
  • I've updated CHANGELOG.md

tvpeter added 3 commits July 29, 2026 23:16
- Enable creating wallets and wallet operations
using multipath descriptors.
- Add a check for a two-paths multipath descriptors
as supported by the wallet api.
-Add tests for multipath descriptors.
- Update CHANGELOG
@tvpeter tvpeter self-assigned this Jul 29, 2026
@tvpeter
tvpeter requested a review from notmandatory July 29, 2026 22:52
@tvpeter tvpeter added the enhancement New feature or request label Jul 29, 2026
@codecov

codecov Bot commented Jul 29, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 83.63636% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 57.80%. Comparing base (e7223e5) to head (48b3314).
⚠️ Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
src/persister.rs 68.96% 9 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #309      +/-   ##
==========================================
+ Coverage   57.45%   57.80%   +0.34%     
==========================================
  Files          22       22              
  Lines        3695     3728      +33     
==========================================
+ Hits         2123     2155      +32     
- Misses       1572     1573       +1     
Flag Coverage Δ
rust 57.80% <83.63%> (+0.34%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Add support for BIP389 Multipath descriptors

1 participant