Unify proof type + link public values #989
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR unifies the proof type in
fixed_recursive_verifier
, so that we deal with the sameEvmProof
at any level of the tree, and includes check on the public values trie roots when merging proofs. A few design questions / assumptions I wasn't sure on how you were envisioning things:For checking thatblock_metadata
match, I only consideredblock_timestamp
, although we could extend it to the other fields as well.The above also stores the latestblock_metadata
when aggregating two proofs. Do we want to keep track of all the block metadatas from past proofs?prove_block()
, the consistency check between trie roots assumes the block proof (if any) is always on the left side.