What is a Draft Project Idea?
A Draft Project Idea is a concept for a project within the Optimism ecosystem that is generally considered valuable but has not yet been fleshed out into a clearly defined product. Draft Project Ideas may be converted into Ecosystem Project Ideas as they are explored further and more thoroughly specified.
A fault proof is a mechanism that proves that a given program with some agreed-upon starting state and agreed-upon inputs did not generate some proposed output. Combined with an optimistic output proposal mechanism, fault proofs are an effective way of scaling the computational abilities of a smart contract by limiting onchain interactions to only the case where a proposed output is invalid.
Several different fault proof systems exist already and more will be developed as time goes on. In general, the overall structure of a fault proving system tends to be identical except for specific areas. We believe that these key areas can be abstracted away into modules in a larger fault proving framework that would make it possible to reuse code from across the ecosystem and reduce the amount of duplicated work.
A basic model for a framework like this would contain the following components:
Fault proof developers then only need to implement the "program executor" and the "smart contract opcode executor" for any given machine architecture while the rest of the logic is handled by the framework. For example, it should be easy to slot in a MIPS fault proof or a RISC-V fault proof within this system without having to re-implement everything.
A fault proof framework would have a significant impact because: