AnteHandlers
The x/feemarket module provides AnteDecorators that are recursively chained together into a single Antehandler. These decorators perform basic validity checks on an Ethereum or Cosmos SDK transaction, such that it could be thrown out of the transaction Mempool.
Note that the AnteHandler is run for every transaction and called on both CheckTx and DeliverTx.
Decorators
MinGasPriceDecorator
MinGasPriceDecoratorRejects Cosmos SDK transactions with transaction fees lower than MinGasPrice * GasLimit.
EthMinGasPriceDecorator
EthMinGasPriceDecoratorRejects EVM transactions with transactions fees lower than MinGasPrice * GasLimit. - For LegacyTx and AccessListTx, the GasPrice * GasLimit is used. - For EIP-1559 (aka. DynamicFeeTx), the EffectivePrice * GasLimit is used.
EthGasConsumeDecorator
EthGasConsumeDecoratorCalculates the effective fees to deduct and the tx priority according to EIP-1559 spec, then deducts the fees and sets the tx priority in the response.
effectivePrice = min(baseFee + tipFeeCap, gasFeeCap)
effectiveTipFee = effectivePrice - baseFee
priority = effectiveTipFee / DefaultPriorityReductionWhen there are multiple messages in the transaction, choose the lowest priority in them.