Bitcoin full node and query server

May 19, 2026

View in context in the libbitcoin Slack #general mirror.

evoskuil03:45
The fee estimator class is integrated into a new node::chaser_estimate, initialized when the node becomes current, and maintained from that point forward until shutdown. It's maintains its stack-based accumulation over a moving window of 1008 blocks (max/default) even if the node falls out of currency, and traverses reorgs. Calls are asynchronous and passed from a protocol (e.g. electrum fee estimation method) to the base node::protocol, to the base node::channel, to the base node::session to the node::full_node to the node::chaser_estimate and finally to its contained estimator. This is a standard flow in the network/node architecture. The completion hander passed from the electrum method is invoked on the chaser strand, and then the electrum handler bounces it back to the electrum protocol strand for send of the tcp response. The estimator is modeled after bitcoind fee accumulation, as this is what Electrum expects. It uses only block fee state as a very good approximation of current fee rates in comparison to analysis over unconfirmed txs. The estimator is fully unit tested, and the electrum endpoint is fully tested with empty fee data. Building a fee history for more robust testing is now over to @eynhaender for acceptance testing.
🚀 1