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

🔴 Ecosystem Project Idea: Alternative Fault Detector #90

Closed
smartcontracts opened this issue Jun 27, 2023 · 3 comments
Closed

🔴 Ecosystem Project Idea: Alternative Fault Detector #90

smartcontracts opened this issue Jun 27, 2023 · 3 comments

Comments

@smartcontracts
Copy link
Contributor

What is an Ecosystem Project Idea?

An Ecosystem Project Idea is an idea for a project that someone could build within the Optimism ecosystem. As opposed to an Ecosystem Concept or an Ecosystem Idea, an Ecosystem Project is generally more fleshed out and corresponds to a relatively clear product to be built.


Summary

L2 state proposals are published to the L2OutputOracle contract, and it's crucial that these proposals align with the accurate L2 state. OP Labs has built a service—the fault detector—that confirms this. However, to enhance the robustness of the system, it would be useful to have a secondary, independent implementation of the fault detector. This will provide an extra layer of assurance and help detect any potential bugs in the current fault detector.

Possible Features

  • Listen for new output proposal events for a given L2 block number.
  • Locally generate an output proposal for that specific L2 block number.
  • Perform a comparison between the locally generated proposal and the one received.
  • Flag any discrepancies between the two, raising an error when necessary.

Impact

  • Serve as a safeguard against potential bugs in the current fault detector.
  • Enhance the reliability and security of our L2 state verification process.
  • Provide peace of mind through this added layer of validation.
@aodhgan
Copy link

aodhgan commented Dec 7, 2023

@smartcontracts just some questions about this:

  • interpreting this as an alternative implementation of op-program, does it need all the fault proof functionality or just yes/no that the derivation logic and state transition function matches the L2OracleOutput?
  • what is the acceptance criteria (are there any restrictions around implmentation language/component reuse)?

@shuse2
Copy link

shuse2 commented Dec 19, 2023

@aodhgan, if you are not working on this yet, we would like to take this forward 💪

@shuse2
Copy link

shuse2 commented Feb 29, 2024

@smartcontracts
Here's the link to alternative implementation of fault detector https://github.com/LiskHQ/op-fault-detector we built in Go.
Please take a look

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

No branches or pull requests

4 participants