Solidity core contract differential fuzzing
The original purpose of this fuzzing suite was to give more confidence around the changes in https://github.com/wormhole-foundation/wormhole/pull/3366. This fuzz test suite uses both the currently deployed core contract, and deploys the current local implementation, before performing an arbitrary sequence of calls across both forks.
Given the timeline and consensus around that PR is unclear I've decided to pull these fuzz tests into this PR.
Fuzz tests can be executed with:
echidna fuzz-upgrade/DiffFuzzUpgrades.sol --contract DiffFuzzUpgrades --config fuzz-upgrade/CryticConfig.yaml
If this test is valuable, should it be run in CI alongside the others?
I was concerned about tying CI to an RPC given we're forking mainnet for this fuzz test, and from what I've seen it looks like we hit the endpoint pretty hard
Closing as part of cleanup. The branch can be retrieved here and the PR reopened from a fork if required.