Files
Gustavo GriecoandClaude Opus 5 2bfa64ef6c fix: handle verification and Foundry campaign modes (#1595)
* feat: add explicit verification test mode

* fix: respect sequence length in Foundry filtering

* test: use explicit verification mode for symbolic assertions

* foundry fixes

* test: add missing testFail regression test files

The contract and config used by the "foundry/TestFail.sol" test case were
left out of the previous commit, making the test fail on CI with a missing
config file.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01GWXznupnma5sEUJ7NrLDvi

* fix: fuzz check and prove functions in Foundry mode

"check" and "prove" functions are symbolic entry points, but a Foundry mode
campaign is a fuzzing campaign: symbolic execution is only used when it is
enabled, so these functions must be fuzzed like any other test function.

Before this, a stateless Foundry campaign (seqLen == 1) would neither call
nor check them, silently testing nothing for contracts whose properties all
use those prefixes.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01GWXznupnma5sEUJ7NrLDvi

* test: cover stateful and reverting check/prove functions

The stateless case was the only one covered: add a stateful campaign, where
parameterless "check" and "prove" functions are checked after each
transaction, and a "check" function that reverts, which is a failure like it
is for any other test function.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01GWXznupnma5sEUJ7NrLDvi

---------

Co-authored-by: Claude Opus 5 (1M context) <[email protected]>
2026-08-11 23:24:34 +02:00
..