-
Notifications
You must be signed in to change notification settings - Fork 38.8k
rpc: Filter inputs by type during CoinSelection #25183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rpc: Filter inputs by type during CoinSelection #25183
Conversation
|
Concept ACK |
|
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
|
@aureleoules can we achieve the same result by using descriptors wallet with only segwit descriptors? |
brunoerg
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK
I think you should squash the commits since the test won't work without the implementation.
|
Concept ACK. @brunoerg I think it's fine as it. Should squash if the 1st commit requires the 2nd to pass CI. |
I am not very familiar with wallet descriptors. But if I understand correctly, this feature might still be useful in cases where you don't control the wallet. |
6677717 to
1c5cfd8
Compare
Github-Pull: bitcoin#25183 Rebased-From: 1c5cfd84b3dc14ab886acd47c7891c11eb2457ec
murchandamus
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
Would it be useful to add the |
1c5cfd8 to
c67ba2a
Compare
c67ba2a to
a9547f9
Compare
a9547f9 to
3efcd5f
Compare
a99b734 to
8f907bb
Compare
|
Thank you @josibake for the review and the commits! I added your commits and fixed the list parsing. |
8f907bb to
8851071
Compare
d283ecf to
0a9d345
Compare
89ea8fc to
28540bc
Compare
add m_filter_inputs to coinControl, which then allows us to filter by OutputType in AvailableCoins
28540bc to
03ab6b4
Compare
03ab6b4 to
9e7fd5c
Compare
I was thinking about this proposal and I'm still not convinced there is a clear understanding how this would be actually used in the real world. The declared benefit is non-malleability for lightning wallets (#25181). For new lightning wallets this is a non-issue as they shouldn't have non-segwit descriptors in the first place. IIUC the proposed solution for existing wallets is to filter malleable inputs when creating channel opening txs in
It seems what you really want is to "unmix" the wallet, i.e. sweep all malleable inputs as a one-time operation.
While 2nd approach has some downsides, maybe it's just good enough. I don't know whether there are enough users affected and whether these downsides outweigh the added complexity. |
|
🐙 This pull request conflicts with the target branch and needs rebase. Want to unsubscribe from rebase notifications on this pull request? Just convert this pull request to a "draft". |
Github-Pull: bitcoin#25183 Rebased-From: 1c5cfd84b3dc14ab886acd47c7891c11eb2457ec
This PR adds a filter to the CoinControl to select only specific utxos by type. It allows the
fundrawtransactionandwalletcreatefundedpsbtrpc calls to filter inputs by type.Closes #25181.