Skip to content

chore(networks): bump base/base pin for mainnet Denim - #91

Closed
zencephalon wants to merge 1 commit into
base-anvil-forkfrom
bump-base-denim-mainnet
Closed

zencephalon wants to merge 1 commit into
base-anvil-forkfrom
bump-base-denim-mainnet

Conversation

@zencephalon

@zencephalon zencephalon commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Motivation

base/base v1.5.1 schedules Denim on Base mainnet for 2026-11-05 18:00 UTC (denim_timestamp: 1_793_901_600). base-anvil is pinned to base/base f9d7bf5, which has Denim on Sepolia only. This bumps the pin so base-anvil carries the same chain config and the latest Denim precompile code before mainnet activates.

Solution

  • ./script/bump-base.sh 990694fce8f1358b71cf0854e871f74e2a3e2cb9 (base/base main as of 2026-10-23), following RELEASES.md. This includes chore(common): schedule Mainnet Denim upgrade base#6124 (schedule mainnet Denim).
  • Cargo.lock changes only the base/base source lines. No code changes.
  • Why main and not the v1.5.1 tag: v1.5.1 is cut from the release branch and is on revm 42 / alloy-evm 0.38 / reth base-v2.5.2.8. Pinning it would downgrade the EVM stack that chore(evm): align dependencies with Base Reth 2.7 #90 aligned with Reth 2.7. main stays on revm 43 / alloy-evm 0.39 / reth base-v2.7.0.2 and has the same mainnet and Sepolia Denim timestamps as v1.5.1.

Testing (macOS arm64):

  • cargo build --release -p anvil -p forge OK.
  • cargo test -p foundry-evm-networks: 3 passed. cargo test -p anvil --lib base (the --base CLI parsing tests): 4 passed.
  • smoke/: FOUNDRY_BASE=true forge test and FOUNDRY_BASE=denim forge test, test_basePrecompileSeededActive passes.
  • Fork of Base mainnet at block 52,995,190 with bare --base, --base cobalt and --base denim: B-20 policyId(keccak256("SEIZE_EXEMPT_POLICY")) matches mainnet on two live tokens (129 and 0), and an unknown scope reverts as on mainnet. Same results as the current base-anvil-fork build.

Follow-up, not in this PR: DEFAULT_BASE_UPGRADE (and the default_missing_value = "cobalt" literal) is still Cobalt. Its doc comment says to bump it alongside bump-base.sh as upgrades land. Since with_chain_id(8453) also applies the default, flipping it before 2026-11-05 would run Denim logic on mainnet forks early, so it may be best timed with activation. Happy to send that separately if you want it.

cc @amiecorso @stephancill @rayyan224

PR Checklist

  • Added Tests
  • Added Documentation
  • Breaking changes

Retarget base-common-precompiles / base-common-chains to base/base main
990694fce8f1358b71cf0854e871f74e2a3e2cb9 via ./script/bump-base.sh.
This picks up base/base#6124, which schedules Denim on Base mainnet at
1793901600 (2026-11-05 18:00 UTC), plus the precompile changes on main
since f9d7bf5.

main stays on revm 43 / alloy-evm 0.39 / reth base-v2.7.0.x, so the
EVM alignment from #90 is unchanged. Pinning the v1.5.1 tag instead
would downgrade to revm 42 / reth base-v2.5.2.8. Cargo.lock changes
only the base/base source lines.
@zencephalon

Copy link
Copy Markdown
Contributor Author

FYI the cargo deny failure is RUSTSEC-2026-0385 in commonware-cryptography 2026.7.1 (via tempo-primitives). That crate is unchanged here (the lockfile diff only touches base/base sources), so it should fail on base-anvil-fork too; it looks like a newly published advisory rather than something from this bump. Left it alone to keep this PR to the pin.

@rayyan224 rayyan224 mentioned this pull request Oct 23, 2026
1 of 3 tasks
@zencephalon

Copy link
Copy Markdown
Contributor Author

closing this one, v1.5.1 shipped the same pin bump (f4d1d3e → base/base 990694f) plus the Denim default flip in #92, so nothing left here. thanks for getting it out!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants