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

[Certora] Check Missing Reverts #98

Merged
merged 19 commits into from
Dec 10, 2024
Merged

[Certora] Check Missing Reverts #98

merged 19 commits into from
Dec 10, 2024

Conversation

colin-morpho
Copy link
Contributor

@colin-morpho colin-morpho commented Nov 18, 2024

This PR: check revert conditions.
It provides rules to exhaustively check reverts conditions.
The OZ specs do not check everything we'd like to verify.

Please ensure that

  • README is updated;
  • CI is updated;
  • verification succeeds.

@colin-morpho colin-morpho added the verif Formal Verification label Nov 18, 2024
@colin-morpho colin-morpho self-assigned this Nov 18, 2024
@colin-morpho
Copy link
Contributor Author

colin-morpho commented Nov 18, 2024

As is, I dislike having that much spec files but, I'm afraid it's hard to do less without harnessing. A harness could be used to expose the internal function (_transfer, _approve, _mint, _burn) at the cost of maintaining the harness (probably minor though). They both have inconveniences, happily willing to implement suggestions 😄!

QGarchery
QGarchery previously approved these changes Nov 20, 2024
QGarchery
QGarchery previously approved these changes Nov 21, 2024
Copy link
Contributor

@QGarchery QGarchery left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks nice 🔥

colin-morpho and others added 2 commits November 22, 2024 09:39
Co-authored-by: Quentin Garchery <garchery.quentin@gmail.com>
Signed-off-by: Colin | Morpho 🦋 <colin@morpho.xyz>
Copy link
Contributor

@MathisGD MathisGD left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few comments, otherwise looking good!

@colin-morpho colin-morpho mentioned this pull request Dec 2, 2024
5 tasks
@colin-morpho colin-morpho changed the base branch from main to colin@verif/delegation-invariants December 6, 2024 08:31
@colin-morpho colin-morpho changed the base branch from colin@verif/delegation-invariants to main December 6, 2024 09:24
MathisGD
MathisGD previously approved these changes Dec 6, 2024
@QGarchery QGarchery mentioned this pull request Dec 6, 2024
3 tasks
Copy link
Contributor

@QGarchery QGarchery left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can try to remove some safe requires. Below is an example of how we could do it for mintRevertConditions

Co-authored-by: Quentin Garchery <garchery.quentin@gmail.com>
Signed-off-by: Colin | Morpho 🦋 <colin@morpho.xyz>
@colin-morpho colin-morpho merged commit be811e7 into main Dec 10, 2024
14 checks passed
@colin-morpho colin-morpho deleted the colin@verif/reverts branch December 10, 2024 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
verif Formal Verification
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants