Bidders need to deposit funds to be able to place bids on the mev-commit network. As bids are posted privately, providers cannot determine how much bidders have bid previously. To still ensure that bidders can cover all their bids, we bind deposits to specific L1 block numbers. Providers con thus ensure that bids from a given bidder do not exceed the amount deposited for the corresponding L1 block number. It is important to note that if a bidder deposits, for example, 1 ETH for some L1 block number, they can post bids totaling 1 ETH for each provider. This is because only a single provider can post the block to L1, meaning bids made to other providers will not be executed.

To simplify the user experience, mev-commit considers windows consisting of blocksPerWindow=10\text{blocksPerWindow} = 10 blocks and splits deposits to a window evenly over the corresponding blocks.

The remaining funds of a bidder from a window (if any) can be unlocked after the corresponding blocks have been settled. The bidder can then withdraw the funds from the deposit. To further ease the user experience, bidders can enable autodeposits in their nodes, to automatically withdraw deposits from previous windows and redeposit them into future ones.

Current window number

The window number for a given L1 block can be calculated via the following formula, where blocksPerWindow is equal to 10 and blockNumber is the L1 block number for which the bidder wants to bid:

blockNumber1blocksPerWindow+1\frac{{\text{{blockNumber}} - 1}}{{\text{{blocksPerWindow}}}} + 1

Minimum Deposit

Since deposits are split across blocksPerWindow=10\text{blocksPerWindow} = 10 L1 blocks, bidders have to deposit at least 10 times the amount they want to bid for a single block.

In the case of autodeposit, the deposits would be locked for around 3 windows at a time. Therefore, the total amount locked would be 30 times the amount.

Withdrawal Time

The earliest withdrawal time can be calculated as follows: the withdrawal start time plus 20 L1 blocks (which is 240 seconds or 4 minutes) and the oracle lag of 10 L1 blocks (which is 120 seconds or 2 minutes), totaling 360 seconds or 6 minutes. Therefore, the total time before funds can be withdrawn is approximately 30 blocks (6 minutes) from the initial deposit.

Deposit/Withdrawal Flow

This diagram illustrates the process and timeline of bidding, settlements, and withdrawals within mev-commit system, structured around a series of windows.

Diagram Description

Timeline of Blocks

  • The horizontal axis represents a sequence of windows.
  • Windows are labeled as n-2, n-1, n and n+1, indicating their position relative to the current window n.

Current Window

  • The “Current Window” is the interval within which bidding occurs.
  • The window consists of 10 L1 blocks.

Bidding Phase

  • Bidding occurs in the current window, starting from the current block n and extending into the future blocks (n+1, etc.).
  • The arrow labeled “Bidding” points to the right, indicating that bidding continues into future blocks.

Settlements Phase

  • Settlements happen after the bidding window closes.
  • The arrow labeled “Settlements” points downward, showing the transition from the bidding phase to the settlement phase.

Withdrawals Phase

  • Withdrawals occur after settlements are completed.
  • The arrow labeled “Withdrawals” points to the left, indicating the final phase where bidders can withdraw their remaining funds.