terminology – What’s “(mempool) coverage”?


Standardness refers to a stricter algorithm enforced by full nodes on a transaction along with the consensus guidelines. Coverage is a good broader algorithm or processes adopted by a node. Opposite to standardness it’s not native to a single transaction neither is it particular to validation guidelines.

Taken broadly, coverage is the whole lot that isn’t consensus. The algorithm dictating whether or not a block is legitimate is consensus. All the remaining: how the block is relayed, whether or not a cache of unconfirmed transactions was used to hurry up its transmission and validation or how unconfirmed transactions are propagated by way of the community is coverage. For instance:

  • A transaction is invalid by Bitcoin consensus if the sum of the worth of its outputs is bigger than the sum of the worth of its inputs. (In different phrases, its payment is lower than 0.)
  • A transaction is invalid by Bitcoin Core standardness guidelines if it has a payment decrease than 1sat/vbyte.
  • Sending an unconfirmed transaction which has 25 or extra unconfirmed ancestors violates Bitcoin Core coverage guidelines.

Mempool coverage is the algorithm describing the validity of a transaction from the viewpoint of a node’s mempool. In all probability the largest distinction with standardness is that it’s contextual. An unconfirmed transaction could be legitimate in response to standardness (and subsequently consensus) however nonetheless be refused by a node’s mempool. The ancestor rule from above is one such instance.

The mempool is not nevertheless the one space the place coverage guidelines apply. For example, transaction relay is one other. For example, the utmost variety of transactions a node will request or announce per peer is also known as coverage.

Lastly, whereas coverage might differ from a node to one another not all guidelines are equally necessary. A node as an example might select to not retailer and relay unconfirmed transactions which retailer knowledge in OP_RETURN outputs, or not retailer and relay unconfirmed transactions in any respect, and nonetheless be a part of the community. However you possibly can consider any silly coverage a node might have (as an example solely discovering friends and/or relaying blocks by way of its personal customized protocol), wherein case it could hardly even sustain with the community though it does implement all consensus guidelines. And there may be each diploma in-between, with the corresponding expectations one might have concerning the community.


Be aware that is an try at a solution; terminology is notoriously complicated in Bitcoin and folks might have a distinct view of what “coverage” represents. It is simply the definition i have been utilizing (with out ever spelling it out, so thanks for the query) and located helpful when discussing associated issues with different Bitcoin builders.

Leave a Reply

Your email address will not be published. Required fields are marked *

Back To Top