AnteHandler

Celestia makes use of a Cosmos SDK AnteHandler in order to reject decodable sdk.Txs that do not meet certain criteria. The AnteHandler is invoked at multiple times during the transaction lifecycle:

  1. CheckTx prior to the transaction entering the mempool
  2. PrepareProposal when the block proposer includes the transaction in a block proposal
  3. ProcessProposal when validators validate the transaction in a block proposal
  4. DeliverTx when full nodes execute the transaction in a decided block

The AnteHandler is defined in app/ante/ante.go. The app version impacts AnteHandler behavior. See: