Skip to content
This repository has been archived by the owner on Jan 24, 2024. It is now read-only.

State Proposal

Nicolas Laurent edited this page Jan 22, 2022 · 1 revision

A proposal (aka state commitment) is a message sent by the sequencer to a L1 contract (currently called State Commitment Chain) to commit to a block (and in particular its state root).

A proposal consists of:

  1. An epoch number (*).
  2. Hash of the deposit block starting the epoch. This is necessary to deal with L1 chain re-orgs.
  3. Some proposed Merkle roots
    • state root after the execution of the epoch
    • logs root for every block in the epoch (or single logs root for the whole epoch??)
    • more?
  4. Hash of parent proposal (to verify that the timestamp is properly monotonic)

(*) An epoch number is an L1 block number — TBD either the block number of the L1 block from which the deposit block is generated, or the number of that block + the sequencing window.