Date: 2026-04-24 23:10:24
| use std::{env, hint::black_box}; | |
| #[derive(Clone)] | |
| struct CorpusEntry { | |
| tx_seq: Vec<u8>, | |
| cmp_seq: Vec<u8>, | |
| is_favored: bool, | |
| } | |
| #[derive(Clone, Default)] |
Real forge invariant project used to measure end-to-end wall-clock and peak RSS of the
corpus-seed worker fan-out (companion to the micro-benchmark harness at
https://gist.github.com/mablr/b87b9d75f3723b3de8b5796c72331ae2).
Target.sol exposes a large branch surface (1600 independent branch targets, ~3200 EVM edges,
split across 8 functions to stay within solc's parser recursion limit) so coverage-guided
invariant fuzzing accumulates a sizeable persisted corpus (~370 entries, depth-2000 sequences).
Static diff triage for deciding which PRs to combine and run through scfuzzbench. The goal is to avoid benchmarking dozens of tiny AI PRs one-by-one.
These are the concrete grouped benchmark candidates, in priority order.
Foundry v1.8.0 is a testing-heavy release. It ships native symbolic testing, mutation testing, and major fuzzing and invariant improvements, while making isolate mode the default after a series of compatibility fixes. This release also ships the Rust foundryup, expands forge lint with a large set of security and gas detectors, and continues the structured CLI output work across Forge and Cast.
Testing is the main theme of v1.8.0. The release expands the ways Forge can find failures, make them reproducible, and turn them into smaller actionable counterexamples.