-
Notifications
You must be signed in to change notification settings - Fork 53
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
WEB3-208: Add IRiscZeroSelectable interface #313
Conversation
require(verifier.SELECTOR() == hex"50bd1769"); | ||
IRiscZeroSelectable selectable = IRiscZeroSelectable(verifier); | ||
require(selectable.SELECTOR() == hex"50bd1769"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this change should be required, right? Because the SELECTOR
function exists on RiscZeroGroth16Verifier
Co-authored-by: Victor Graf <[email protected]>
I like the contents of this PR, except the Makefile, so I removed that file in 44c372b and am going to merge this PR. My understanding is that the problem that the makefile is solving is that we need a good way to create a deployment that includes the router and associated verifiers. Instead of a risc0-ethereum/contracts/src/test/RiscZeroCheats.sol Lines 77 to 89 in 6a4eff5
|
Thi PR introduces a new interface called
IRiscZeroSelectable
that leverages the already existingSELECTOR
constant of theRiscZeroGroth16Verifier
(and more in general of any base implementation) to abstract from the base implementation when requiring the value of its selector (e.g., during deployment).It also adds a
Makefile
to quickly deploy a local devnet and fixes some printing to create a proper TOML block e.g.,