feat: Add Parmigiana testnet support for fuzz tests#95
feat: Add Parmigiana testnet support for fuzz tests#95init4samwise wants to merge 4 commits intomainfrom
Conversation
- Add ParmigianaConstants library with Parmigiana contract addresses - Update setupStd() to auto-configure based on chain ID - Add fuzz-rollup and fuzz-host profiles to foundry.toml - Add Parmigiana fuzz test jobs to CI workflow Closes ENG-1861
Update fork-rollup and fork-host jobs to use PARMIGIANA_RU_RPC_URL and PARMIGIANA_HOST_RPC_URL instead of deprecated pecorino endpoints.
prestwich
left a comment
There was a problem hiding this comment.
[Claude Code]
Verified that all Parmigiana and Pecorino constants in SignetStd.sol match the canonical values in the SDK (signet-constants crate):
- Parmigiana: All 15 constants (chain IDs, contract addresses, token addresses) match
crates/constants/src/chains/parmigiana.rs✅ - Pecorino: All 15 constants match
crates/constants/src/chains/pecorino.rs✅
Minor note: a few host token addresses (USDC, USDT, WBTC) have different EIP-55 checksum casing between Solidity and Rust, but the underlying hex values are identical.
|
Re: "why is this changing?" on The variable name changed from The old generic names ( |
|
don't change variable names randomly. the names are generic so they can be configured across testnets via the github environment |
The existing fork-rollup and fork-host jobs should use the generic RU_RPC_URL and HOST_RPC_URL environment variables, which are configured per-environment via GitHub environments. The new parmigiana-fuzz-* jobs correctly use the PARMIGIANA_ prefixed vars since they're specifically for Parmigiana testnet fuzz testing.
Summary
Migrates Solidity fuzz tests to support the Parmigiana testnet.
Changes
ParmigianaConstantslibrary with Parmigiana contract addresses (chain ID 88888). UpdatedsetupStd()to auto-configure based on detected chain ID.fuzz-rollupandfuzz-hostprofiles for running fuzz tests against specific test directories.fuzz-rollupandfuzz-hostjobs using existing RPC endpoint variables.Notes
RU_RPC_URLandHOST_RPC_URLrepository variables (no new config required)Closes ENG-1861