crytic / crytic/echidna

Allow echidna to pin to specific system variables, and only show the value of those variables after each failed call sequence

Open
#1,214 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Haskell
Stars
3.2k
Forks
432
Avg merge
1d 20h
Merged PRs (30d)
5

Description

### Describe the desired feature

Once a contract emits an event, in many cases it will emit intermediate values / adjusted values, etc – and it would be really handy to be able to see this output from the fuzzer for the entire call of sequences (and not just the last one that resulted in the failure).

We've seen quite a few issues historically that have resulted in 5-6 sequences (or more, up to 90 and change 😛), where the bug wasn't in the function that was being called in the last assertion, but was actually introduced in say, transaction 3 or 4, and required us to dig into the system to understand what its impact was on other invariants. Having the event traces and visibility into the arguments for those events would be useful to help make debugging a little easier.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.