This test demonstrates that if minimum relay fee of one node is not met for a transaction then another node with lower minimum relay fee will accept the same transaction.
The test covers the node-local mempool policy. The transaction itself is valid, each node independently decides whether its local mempool policy will admit and relay it.
Node 0 uses -minrelaytxfee=0.00001000 BTC/kvB (10 sat/vB);
Node 1 uses -minrelaytxfee=0.00000500 BTC/kvB (5 sat/vB).
The test submits one 6 sat/vB transaction.
I ran build/test/functional/rpc_net.py, and it completed successfully.
test: cover node-local mempool policy and minimum relay fee #36265
pull Amlan2006 wants to merge 1 commits into bitcoin:master from Amlan2006:test/node-local-minrelaytxfee changing 1 files +16 −0-
Amlan2006 commented at 8:08 PM on September 15, 2026: none
-
test: Demonstrates that minimum relay fee is not a Bitcoin consensus rule 5d2af27e0d
- DrahtBot added the label Tests on Sep 15, 2026
-
DrahtBot commented at 8:08 PM on September 15, 2026: contributor
<!--e57a25ab6845829454e8d69fc972939a-->
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.
<!--006a51241073e994b41acfe9ec718e94-->
Code Coverage & Benchmarks
For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/36265.
<!--021abf342d371248e50ceaed478a90ca-->
Reviews
See the guideline and AI policy for information on the review process. A summary of reviews will appear here.
<!--5faf32d7da4f0f540f40219e4f7537a3-->
- Amlan2006 renamed this:
test: Demonstrates that minimum relay fee is not a Bitcoin consensus …
test: cover node-local mempool policy
on Sep 15, 2026 - Amlan2006 renamed this:
test: cover node-local mempool policy
test: cover node-local mempool policy and minimum relay fee
on Sep 15, 2026 -
maflcko commented at 9:32 AM on September 16, 2026: member
Was this LLM generated? What are the steps to test this? What is the output before and after the changes here?
Which mutation is this killing? What coverage is this adding?
Please note that contributors are required to fully understand their authored code themselves. Also, LLM generated content is not allowed in comments/communications.
See https://github.com/bitcoin/bitcoin/blob/master/doc/AI_POLICY.md
-
Amlan2006 commented at 9:48 AM on September 16, 2026: none
Was this LLM generated? What are the steps to test this? What is the output before and after the changes here?
Which mutation is this killing? What coverage is this adding?
Please note that contributors are required to fully understand their authored code themselves. Also, LLM generated content is not allowed in comments/communications.
See https://github.com/bitcoin/bitcoin/blob/master/doc/AI_POLICY.md
The comments are not LLM generated. You can test it using the command: build/test/functional/rpc_net.py before there was no direct assertion that the same transaction gets different admission results under those two node policies, now there is. if fee-threshold comparison or per-node policy selection changed so both nodes accepted/rejected incorrectly, the test should fail. The test covers the cross-node behaviour for different minrelaytxfee configurations.
So basically the scenario is if one node rejects a transaction because of minimum relay fee then another node can accept the same transaction which has low minimum relay fee.
-
sedited commented at 9:54 AM on September 16, 2026: contributor
This change doesn't make sense to me. We do test min relay fee pretty exhaustively, so I don't think this a/b test adds anything. It is also in an otherwise completely unrelated test file. Closing this again.
- sedited closed this on Sep 16, 2026