core, params, builder: chicago hf for v2.8.0 release#2219
Conversation
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.
Tip: disable this comment in your organization's Code Review settings.
There was a problem hiding this comment.
Pull request overview
This PR introduces the Chicago Bor hard fork (v2.8.0), implementing PIP-88 gas repricing for cold storage access (SLOAD/SSTORE) and several precompiles, plus wiring fork activation through chain rules, EVM dispatch, and genesis configs.
Changes:
- Add Chicago fork flagging (
ChicagoBlock,IsChicago) to Bor chain config/rules and forkid fork-gathering. - Implement PIP-88 gas repricing in the EVM (new Chicago jump table; new SLOAD/SSTORE gas funcs; repriced precompile gas schedules).
- Add targeted tests validating repriced gas and fork-boundary dispatch; update genesis JSONs with activation blocks.
Reviewed changes
Copilot reviewed 14 out of 15 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| params/protocol_params.go | Adds PIP-88 gas constants for cold storage and repriced precompiles. |
| params/config.go | Adds Chicago fork activation field/methods and exposes IsChicago via Rules. |
| core/vm/operations_acl.go | Implements PIP-88 SLOAD/SSTORE dynamic gas calculators and wiring. |
| core/vm/jump_table.go | Introduces Chicago instruction set (LisovoPro + PIP-88). |
| core/vm/jump_table_export.go | Adds instruction-set lookup dispatch for Chicago. |
| core/vm/evm.go | Selects Chicago jump table when Chicago rules are active. |
| core/vm/eips.go | Adds enablePIP88 jump-table patcher. |
| core/vm/contracts.go | Adds Chicago precompile set and PIP-88 repricing via pip88 flags. |
| core/vm/contracts_test.go | Adds/extends tests for PIP-88 precompile gas, SSTORE gas, and fork boundary behavior. |
| core/forkid/forkid.go | Includes ChicagoBlock in Bor fork list gathering for forkid. |
| cmd/keeper/go.mod | Bumps golang.org/x/sys indirect dependency. |
| cmd/keeper/go.sum | Adds checksum entry for updated golang.org/x/sys go.mod. |
| builder/files/genesis-mainnet-v1.json | Adds Chicago activation block for mainnet genesis config. |
| builder/files/genesis-amoy.json | Adds Chicago activation block for Amoy genesis config. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #2219 +/- ##
==========================================
- Coverage 52.60% 52.25% -0.35%
==========================================
Files 885 885
Lines 156570 155752 -818
==========================================
- Hits 82362 81392 -970
- Misses 68992 69124 +132
- Partials 5216 5236 +20
... and 30 files with indirect coverage changes
🚀 New features to boost your workflow:
|
|


Summary
This release includes the changes required for an upcoming hardfork (Chicago)
Activation
3835800087218600Rollout notes
master(hotfix-style release flow) to ship independently ofdevelop's pending content. Post-release backportmaster→developwill follow.Executed tests
Kurtosis devnets.