Skip to content

mempool: disable full-RBF, require BIP125 opt-in signaling#1564

Open
delta1 wants to merge 1 commit into
ElementsProject:masterfrom
delta1:2026-06-disable-fullrbf
Open

mempool: disable full-RBF, require BIP125 opt-in signaling#1564
delta1 wants to merge 1 commit into
ElementsProject:masterfrom
delta1:2026-06-disable-fullrbf

Conversation

@delta1

@delta1 delta1 commented Jun 25, 2026

Copy link
Copy Markdown
Member

Bitcoin Core defaults to accepting any fee-bumping replacement regardless of signaling (full-RBF). Revert this for Elements: only replace mempool transactions that explicitly opt in via BIP125 nSequence signaling (or TRUC), and report fullrbf=false in getmempoolinfo.

Update feature_rbf.py accordingly, and add a regression test for CVE-2021-31876 confirming that inherited signaling from an unconfirmed parent does not make a non-signaling child replaceable.

Bitcoin Core defaults to accepting any fee-bumping replacement
regardless of signaling (full-RBF). Revert this for Elements: only
replace mempool transactions that explicitly opt in via BIP125
nSequence signaling (or TRUC), and report fullrbf=false in
getmempoolinfo.

Update feature_rbf.py accordingly, and add a regression test for
CVE-2021-31876 confirming that inherited signaling from an
unconfirmed parent does not make a non-signaling child replaceable.
@tomt1664

Copy link
Copy Markdown
Member

Tested locally ACK 0e0d019

wallet_basic.py --descriptors failing in ASan + LSan + UBSan + integer, no depends, USDT
Not sure if intermittent.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants