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

feat: Data Availability Oracle #3821

Closed
3 tasks done
Tracked by #3826
LHerskind opened this issue Jan 4, 2024 · 1 comment
Closed
3 tasks done
Tracked by #3826

feat: Data Availability Oracle #3821

LHerskind opened this issue Jan 4, 2024 · 1 comment
Labels
T-tracking Type: Tracking Issue. This contains tasklists.

Comments

@LHerskind
Copy link
Contributor

LHerskind commented Jan 4, 2024

As proposed in the yellow-paper, we should have a separate contract that handles data availability concerns. The state transitioner then can query this contract to figure out if the data is made available.

It allows us to be more modular with respect to the data layer, and makes it easier for us to switch to blobs or celestia if desired down the line.

Nevertheless, we can do it in multiple iterations to limit the changes to the node at once.
Namely we can at first create the oracle, but still follow the same publication flow, where the block is pushed to the state transitioner and it can then forward it to the data availability oracle.

Afterwards the publication of data and proof can be separated as planned. Note that altering this will also require changing how l2 block content is fetched.

Builders that are optimizing their time to build blocks (such as searcher) could preemptively apply the block changes before it have been proven on.


If we replace the available map in the Availability oracle from mapping(commitment: Fr => available: bool) with mapping(commitment: Fr => tx_hash: bytes32) we should be able to more easily get a hold of the data for syncing.


Tasks

Preview Give feedback
  1. LHerskind
  2. benesjan
  3. 0 of 2
    sklppy88
@github-project-automation github-project-automation bot moved this to Todo in A3 Jan 4, 2024
@LHerskind LHerskind self-assigned this Jan 9, 2024
@LHerskind LHerskind removed their assignment Jan 22, 2024
@LHerskind LHerskind added the T-tracking Type: Tracking Issue. This contains tasklists. label Jan 22, 2024
@LHerskind LHerskind added this to the Execution Environment milestone Jan 22, 2024
@LHerskind
Copy link
Contributor Author

Closed as its subtasks have been finished.

@github-project-automation github-project-automation bot moved this from Todo to Done in A3 Mar 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
T-tracking Type: Tracking Issue. This contains tasklists.
Projects
Archived in project
Development

No branches or pull requests

1 participant