Hard Forks
This page is generated by
scripts/version-matrix. Do not edit it by hand.
Hard forks of the L1 and of Polygon PoS: when the devnet activates each one, compared with testnet and mainnet and with what the pinned clients support.
L1 (Ethereum)
Fork epochs are the ethereum-package minimal preset defaults, overridden in src/config/input_parser.star.
| CL fork | EL fork | Devnet status | Devnet epoch | Sepolia epoch | Mainnet epoch |
|---|---|---|---|---|---|
| gloas | amsterdam | ✅ enabled | 0 | 353024 | — |
| bpo_2 | bpo2 | ✅ enabled | 0 | 275712 | 419072 |
| bpo_1 | bpo1 | ✅ enabled | 0 | 274176 | 412672 |
| fulu | osaka | ✅ enabled | 0 | 272640 | 411392 |
| electra | prague | ✅ enabled | 0 | 222464 | 364032 |
| deneb | cancun | ✅ enabled | 0 | 132608 | 269568 |
| capella | shanghai | ✅ enabled | 0 | 56832 | 194048 |
| bellatrix | — | ✅ enabled | 0 | 100 | 144896 |
| altair | — | ✅ enabled | 0 | 50 | 74240 |
Checked against:
L1_HARDFORK, the fork anvil and forge simulate, is amsterdam: ✅ matches the latest enabled EL fork.
Not enabled on devnet and not scheduled on testnet or mainnet: heze, bpo_3, bpo_4, bpo_5.
L2 (Polygon PoS)
Bor (EL) and Heimdall-v2 (CL) are different chains, so their forks are listed apart.
- Bor fork blocks are set in
EL_HARD_FORK_BLOCKSinsrc/config/constants.star. - Heimdall-v2 hardcodes its fork heights, so the devnet gets the local network heights.
EL (Bor)
| Fork | Devnet status | Devnet block | Amoy block | Mainnet block |
|---|---|---|---|---|
| hampi | ✅ enabled | 128 | — | — |
| uburu | ✅ enabled | 128 | 51978200 | 96787900 |
| austin | ✅ enabled | 128 | 44120000 | 91949700 |
| valencia | ✅ enabled | 128 | 40776000 | 89531000 |
| chicago | ✅ enabled | 128 | 38358000 | 87218600 |
| giugliano | ✅ enabled | 128 | 35573500 | 85268500 |
| lisovoPro | ✅ enabled | 128 | 34062000 | 83756500 |
| lisovo | ✅ enabled | 128 | 33634700 | 83756500 |
| dandeli | ✅ enabled | 128 | 31890000 | 81424000 |
| madhugiriPro | ✅ enabled | 128 | 29287400 | 80084800 |
| madhugiri | ✅ enabled | 128 | 28899616 | 80084800 |
| rio | ✅ enabled | 128 | 26272256 | 77414656 |
| bhilai | ✅ enabled | 0 | 22765056 | 73440256 |
| ahmedabad | ✅ enabled | 0 | 11865856 | 62278656 |
| indore | ✅ enabled | 0 | 73100 | 44934656 |
| delhi | ✅ enabled | 0 | 73100 | 38189056 |
| jaipur | ✅ enabled | 0 | 73100 | 23850000 |
Checked against: bor v2.11.0
Enabled on devnet but not supported by bor, so the setting is ignored: agra, napoli.
CL (Heimdall-v2)
| Fork | Devnet status | Devnet height | Amoy height | Mainnet height |
|---|---|---|---|---|
| karwar | ✅ enabled | 1 | 50020000 | 57006000 |
| lugano | ✅ enabled | 1 | 47105000 | 54627000 |
| kyoto | ✅ enabled | 1 | 42252000 | 51533000 |
| ithaca | ✅ enabled | 1 | 40776000 | 50185000 |
| zurich | ✅ enabled | 1 | 37750000 | 47880000 |
| phuket | ✅ enabled | 1 | 32276400 | 44070000 |
Checked against: heimdall-v2 v0.13.2