NethermindEth / juno

Starknet client implementation.
https://juno.nethermind.io
Apache License 2.0
371 stars 158 forks source link

VerifyProofs #1873

Closed rianhughes closed 2 weeks ago

rianhughes commented 1 month ago

The PR implements VerifyRangeProof. It accounts for the cases where either 0, 1 or both boundary proofs are supplied. It does require the proof keys to be set.

Note: It does not account for the case where the proof keys are not set. I have opened a new PR that accounts for this case https://github.com/NethermindEth/juno/pull/1901

codecov[bot] commented 1 month ago

Codecov Report

Attention: Patch coverage is 74.68354% with 60 lines in your changes missing coverage. Please review.

Project coverage is 75.29%. Comparing base (52a8ea9) to head (d90633e).

Files Patch % Lines
core/trie/proof.go 71.08% 27 Missing and 21 partials :warning:
core/trie/trie.go 83.09% 7 Missing and 5 partials :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #1873 +/- ## ========================================== - Coverage 75.36% 75.29% -0.08% ========================================== Files 97 97 Lines 8342 8561 +219 ========================================== + Hits 6287 6446 +159 - Misses 1523 1556 +33 - Partials 532 559 +27 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

rianhughes commented 3 weeks ago

Note: I still need to account for edge cases (eg either single or no proof), but it would be useful to have a set of eyes on this now Update: these edge cases have been added

rianhughes commented 2 weeks ago

This PR is / can be replaced by this https://github.com/NethermindEth/juno/pull/1901

rianhughes commented 2 weeks ago

closing for https://github.com/NethermindEth/juno/pull/1901