The sequencer was changed to filter out transactions that do not pass the stateless/stateful/execute steps in prepare_proposal(). This is causing transactions to get stuck inside of the mempool and to be repeatedly fed into the prepare_proposal() block where they are again filtered. Transactions that pass the mempool checks but not the stateful/execute steps exhibit this behavior (e.g. sudo actions with the wrong signing key will get stuck and loop until the signing key's nonce becomes stale because they pass the stateless/nonce checks but fail in the stateful check).
We shouldn't allow this because it's an attack vector for people to fill up the mempool and cometbft prepare_proposal() blocks with these stuck transactions.
We either need a heuristic to kick out these transactions or to let them fail in the blocks like normal.
The sequencer was changed to filter out transactions that do not pass the stateless/stateful/execute steps in
prepare_proposal(). This is causing transactions to get stuck inside of the mempool and to be repeatedly fed into theprepare_proposal()block where they are again filtered. Transactions that pass the mempool checks but not the stateful/execute steps exhibit this behavior (e.g. sudo actions with the wrong signing key will get stuck and loop until the signing key's nonce becomes stale because they pass the stateless/nonce checks but fail in the stateful check).We shouldn't allow this because it's an attack vector for people to fill up the mempool and cometbft
prepare_proposal()blocks with these stuck transactions.We either need a heuristic to kick out these transactions or to let them fail in the blocks like normal.