Giter Site home page Giter Site logo

espresso-sequencer's People

Contributors

akonring avatar alxiong avatar alysiahuggins avatar ancient123 avatar ayiga avatar bfish713 avatar clu8 avatar dailinsubjam avatar dependabot[bot] avatar dieracdelta avatar fkrell avatar ggutoski avatar github-actions[bot] avatar gooddaisy avatar imabdulbasit avatar imjeremyhe avatar jbearer avatar jparr721 avatar laplacefox avatar lukaszrzasik avatar move47 avatar mrain avatar nomaxg avatar nyospe avatar philippecamacho avatar rob-maron avatar shenkeyao avatar ss-es avatar sveitser avatar tbro avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

espresso-sequencer's Issues

Implement HotShot-Hermez Adapter

Note: we haven't decided yet if this adapter should be a stand-alone service or if it should be integrated into the zkEVM application. Task details may change slightly based on that decision.

Design rollup contract

Dependencies

  • Decide if we first use a dummy contract, or if we modify the zkevm-node contracts (currently they are source available, but not licensed).

Tasks

Test infrastructure for contract development

We can borrow from CAPE. If we do write our own rollup contract it may be worth it to invest a bit of extra time to use foundry-rs.

Note that the zkevm-node test infrastructure already runs a local geth client for testing. The testing infrastructure mentioned here is only used for contract development, not for testing the integration with the zkevm-node (for which we will use the zkevm-node test infrastructure).

Tasks

`State`: Implement `validate_block`

Needed to satisfy HotShotState trait for State

  • validate_block needs to check that the parent state commitment of the block matches the current state commitment of the state.
  • check that view number is greater than current view number
  • check that the first block only contains a genesis transaction.
  • check that no genesis transaction (except for in the first block).

Interface to register a VM

As long as it's possible to integrate an app with the sequencer we can consider this done. We currently don't plan on having multiple VMs.

Experiment: zkevm-node Sequencer bypass

  1. Run the zkevm-node locally
  2. Insert a batch with one EVM transaction into the corresponding zkevm-node database
  3. Check if the Aggregator can compute the proof
  4. Document what happens

Define opaque transaction with application tag

This type should be an enum with 2 variants, one being a special type of genesis transaction the other one being the regular transaction type the sequencer processes.

  • Add Genesis transaction variant containing ChainVariables.
  • Add regular transaction variant, name suggestion: Wrapped
  • #48

Disable unused services/components of Polygon Hermez (Sequencer, mempool)

No dependencies.

This is not a high priority task because as long as we don't make any requests with method eth_sendRawTransaction to the zkevm-node JsonRPC they shouldn't really do anything. I still think it would be nicer for testing locally if we can do so without running the zkevm-node Sequencer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.