From: merge-script Date: Fri, 24 Jul 2026 10:10:25 +0000 (+0000) Subject: Merge bitcoindevkit/bdk#2240: fix(chain): skip evicted txs in leftover canonicalization X-Git-Url: http://internal-gitweb-vhost/blockdata/script/encode/-script/ui-kit/secp256k1/static/gitweb.css?a=commitdiff_plain;p=bdk Merge bitcoindevkit/bdk#2240: fix(chain): skip evicted txs in leftover canonicalization 2a8512b15706e3f05a4a506af0293c2d33d12581 fix(chain): skip evicted leftover transactions (Noah Joeris) 9e404720bbc0ba462a661141c01325815aa6c180 feat(chain): add TxNode::is_evicted (Noah Joeris) Pull request description: ### Description `CanonicalStage::LeftOverTxs` doesn't filter evicted txs and can mark them canonical. So a stale-anchored tx that was evicted/replaced could still show as unconfirmed. Example: a tx confirms, then a reorg leaves only a stale anchor. Leftover treats it as unconfirmed. If it's later RBF'd or missing from the mempool, leftover still marks it unconfirmed. ### Changelog notice - Add `TxNode::is_evicted()` for determining mempool eviction state. - Skip evicted transactions during leftover canonicalization. ### Checklists #### All Submissions: * [x] I followed the [contribution guidelines](https://github.com/bitcoindevkit/bdk/blob/master/CONTRIBUTING.md) #### Bugfixes: * [ ] This pull request breaks the existing API * [x] I've added tests to reproduce the issue which are now passing * [ ] I'm linking the issue being fixed by this PR ACKs for top commit: evanlinjin: ACK 2a8512b15706e3f05a4a506af0293c2d33d12581 Tree-SHA512: 615a46406600115210a272668b01e9a85a6d6fbbcc9d055cf83617fcc5c6e742f845b57e34277e26ecdffe41f39b01576ae038cd7eed5ce916fcb505b58fc8e8 --- 337e9d68414c54d2ab74082bab94b58ac130479c