-
Notifications
You must be signed in to change notification settings - Fork 678
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
Runtime fuzzer #4524
Runtime fuzzer #4524
Conversation
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.
Adding a readme on how to run the fuzzer could be helpful
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.
The code looks good to me, left just a couple of small nits.
Two comments/questions:
- should we perhaps add this to the nightly pipeline? To run the fuzzing for half-an-hour every night, or something like this? Not sure what's the best strategy?
- did we try to estimate how well our generator works? Can we, eg, detect an overflow if we replace some of
checked_add
s with plain+
?
At this point, fuzzer is very weak, so probably shouldn't add it to the nightly pipeline yet. |
Process-wise, I'd suggest adding stuff to CI as early as possible, and then using CI as a ratchet, to make sure that stuff can progress forward, but can not regress. That is, the benefit of CI at this stage is not that we catch bugs, but that we prevent fuzzing infra itself from regressing. But this is a "rule of thumb" suggestion, there's little specific benefits in this case. |
@matklad do you mind creating an issue for this? |
Adding creating of an arbitrary Scenario with Transfer, Stake, and CreateAccount transactions. Also adding fuzzing target.
Currently, all the bounds for random numbers are also chosen randomly (by me).
Next pr will add contract calls, but it will only be for contracts from 'runtime/near-test-contracts'