Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Milestone Design #9

Open
8 tasks
frisitano opened this issue Dec 30, 2024 · 1 comment
Open
8 tasks

Milestone Design #9

frisitano opened this issue Dec 30, 2024 · 1 comment

Comments

@frisitano
Copy link
Collaborator

frisitano commented Dec 30, 2024

Overview

This issue will define the milestones that will be leveraged to implement the rollup node. The intention of these milestones will be to provide a functional solution that provides incremental value as quickly as possible.

Milestone 1 - L2 P2P Sync

In milestone 1 we will build a rollup node that will exclusively use the L2 p2p network to sync to the chain tip. A potential design for this milestone is that when the rollup node is launched it will leverage an initial trust anchor to fetch the latest (safe?) L2 block. This will be used to invoke a fork-choice update (FCU) using the engine API on the execution node. When the execution client has synced to the latest safe block the rollup node will then use the blocks gossiped over the L2 p2p network to follow the chain tip.

There are several trust assumptions associated with this milestone:

  1. The trust anchor used to fetch the latest safe L2 head is honest.
  2. There is no equivocation on blocks gossiped over the L2 p2p network.

Tasks:

Milestone 2 - Unsafe Block Consolidation

In milestone 2 we will implement logic that allows us to consolidate the unsafe chain that has been built using blocks gossiped over the L2 p2p network with data derived from L1. This will be achieved by deriving the latest payload attributes from data posted on L1 and asserting consistency with the chain derived on L2.

Tasks:

Milestone 3 - Provable Derivation Pipeline

The provable derivation pipeline is used to incrementally read batches posted on L1, extract the payload attributes associated with the blocks, and execute blocks to construct the chain tip. This process should be compatible with a no_std environment such that it can be used to generate a proof attesting to the chain.

Tasks:

@frisitano
Copy link
Collaborator Author

The initial sync of the chain can source the block hash from the singed block gossiped over P2P.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant