Proposal - towards Linea’s decentralization

Very interesting proposal, thanks for writing it up!

As far as I understood the finalization flow, it would be something like this:

  1. QBFT consensus chooses a committee for an epoch of many blocks
  2. auction for producing a block within a committee
  3. winner/committee leader(when no one bid) builds a block
  4. block producer posts a reserve for L1 finalization (no bid yet, so need to use some default value)
  5. finalization auction starts based on the block
  6. finalization bids come in
  7. at a cut-off the finalization auction winner is confirmed
  8. finalization winner proves and posts blobs on L1.
  9. upon confirming proof acceptance from L1 smart contract can post it to L2 finalization auction smart contract to receive the winning bid amount of funds
  10. block producer receives the rest of reserve

How is the reserve what the block producer reserves for paying for the finalization cost (blob posting + computation) estimated? If the block producer can choose it arbitrarily, then it can choose it in a way that no one would bid for block finalization, effectively halting L1 finalization?

It would work if the initial default posted reserve would be high enough. Maybe we could have a finalizer-of-last effort who always posts a fixed finalization bid and hope there are more efficient finalizers driving down the cost.

Does the block producer also gather the transaction fees from the block or only the MEV? Are we certain that MEV fees are sufficient to cover the finalization costs?

And there is also the issue that the finalization auction contains many L2 blocks such that they fit into a L1 blob. This also means that the finalization bid must be distributed between many block producers, but as different transactions have different proving costs, then it would be difficult to distribute fairly between the block producers.

28 Likes