docs: document TxBuilder default coin selection algorithm#512
Open
ANAMASGARD wants to merge 1 commit into
Open
docs: document TxBuilder default coin selection algorithm#512ANAMASGARD wants to merge 1 commit into
ANAMASGARD wants to merge 1 commit into
Conversation
Closes bitcoindevkit#508 Make the default BranchAndBoundCoinSelection<SingleRandomDraw> algorithm discoverable from TxBuilder, Wallet::build_tx, and the coin_selection module without reading implementation code.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #508
Summary
Documents the default coin selection algorithm used by
TxBuilderwhen.coin_selection()is not called:BranchAndBoundCoinSelection<SingleRandomDraw>. Developers previously had to read source to discover this. The default is nowexplained at every natural entry point.
Changes
TxBuilderstruct docs: new "Default Coin Selection" section describing BnB behavior (exact-match search to avoid change) andSingleRandomDrawfallbackTxBuilder::coin_selection(): names the default algorithm being overriddenDefaultCoinSelectionAlgorithm: expanded type alias docs (BnB strategy,fallback, P2WPKH change size assumption)
coin_selectionmodule docs: names the default algorithm in the introWallet::build_tx()andWallet::build_fee_bump(): note that defaultcoin selection applies unless overridden
No logic changes. Doc-only PR.
Test plan
RUSTDOCFLAGS="-D warnings" cargo doc --no-deps— no broken linkscargo test --doc— all doc tests passcargo fmt --all -- --check— formatting clean