crytic/echidna

Save inputs as soon as possible

arcz opened this issue · 1 comments

arcz commented

We wait till the end of the campaign to dump reproducers/corpus to files. If Echidna crashes the information is most likely lost. Saving corpus also takes a considerable amount of time though I believe this is an issue on its own.

With the new event system, we can make it a lot better with the following:

  • Listen for TestFalsified/TestOptimized events and save reproducers
  • Listen for NewCoverage events and save corpus, this needs the call sequence to be added to NewCoverage event
  • Skip saving inputs that are replayed, NewCoverage is emitted during the replay, so this part most likely needs to look into the initial corpus to figure out if the input is already in there
  • Remove saving reproducers and corpus after the campaign in main
arcz commented

Done in #1167