Skip to content

feat: Add Multipath descriptor support#238

Open
tvpeter wants to merge 3 commits intobitcoindevkit:masterfrom
tvpeter:feat/multipath-desc-support
Open

feat: Add Multipath descriptor support#238
tvpeter wants to merge 3 commits intobitcoindevkit:masterfrom
tvpeter:feat/multipath-desc-support

Conversation

@tvpeter
Copy link
Collaborator

@tvpeter tvpeter commented Feb 7, 2026

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

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 updated CHANGELOG.md

@tvpeter tvpeter force-pushed the feat/multipath-desc-support branch from 9d2027d to c63d511 Compare February 7, 2026 22:09
@coveralls
Copy link

coveralls commented Feb 7, 2026

Pull Request Test Coverage Report for Build 21787788027

Details

  • 89 of 108 (82.41%) changed or added relevant lines in 2 files are covered.
  • 1 unchanged line in 1 file lost coverage.
  • Overall coverage increased (+4.0%) to 14.733%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/utils.rs 89 92 96.74%
src/handlers.rs 0 16 0.0%
Files with Coverage Reduction New Missed Lines %
src/handlers.rs 1 12.92%
Totals Coverage Status
Change from base Build 21153868360: 4.0%
Covered Lines: 381
Relevant Lines: 2586

💛 - Coveralls

@tvpeter tvpeter force-pushed the feat/multipath-desc-support branch from c63d511 to 1433513 Compare February 7, 2026 22:16
@tvpeter tvpeter requested a review from notmandatory February 7, 2026 22:59
Copy link
Contributor

@AmosOO7 AmosOO7 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tACK 1433513

@tvpeter tvpeter moved this to Ready to Review in BDK-CLI Feb 23, 2026
@tvpeter tvpeter added this to the CLI 3.0.0 milestone Feb 26, 2026
tvpeter added 2 commits March 12, 2026 12:02
- Update wallet initialization/creation to check
if external descriptor is multipath for both
persisted and non persisted wallets
- add error variant for when both multipath and
internal descriptors are provided
@tvpeter tvpeter removed this from the CLI 3.0.0 milestone Mar 12, 2026
@tvpeter tvpeter force-pushed the feat/multipath-desc-support branch from 1433513 to b03ebc7 Compare March 13, 2026 09:32
@codecov
Copy link

codecov bot commented Mar 13, 2026

Codecov Report

❌ Patch coverage is 82.72727% with 19 lines in your changes missing coverage. Please review.
✅ Project coverage is 15.00%. Comparing base (a675935) to head (b03ebc7).
⚠️ Report is 4 commits behind head on master.

Files with missing lines Patch % Lines
src/handlers.rs 0.00% 16 Missing ⚠️
src/utils.rs 96.80% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #238      +/-   ##
==========================================
+ Coverage   10.86%   15.00%   +4.13%     
==========================================
  Files           8        8              
  Lines        2466     2553      +87     
==========================================
+ Hits          268      383     +115     
+ Misses       2198     2170      -28     
Flag Coverage Δ
rust 15.00% <82.72%> (+4.13%) ⬆️

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

☔ View full report in Codecov by Sentry.
📢 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

None yet

Projects

Status: Ready to Review

Development

Successfully merging this pull request may close these issues.

Add support for BIP383 Multipath descriptors

3 participants