Mainnet Beta and Osaka hardfork schedule
Gravity v1.9.1 schedules the coordinated mainnet Beta and Osaka hardforks for Gravity chain ID 127001. Both forks share the same wall-clock activation.
Mainnet operators running v1.9.0 (or any binary without these timestamps) must upgrade to v1.9.1 before activation. Older binaries will not apply Beta / Osaka rules and will diverge once the hardfork fires.
Activation
- Beijing: 2026-08-18 10:00:00 UTC+08:00
- UTC: 2026-08-18 02:00:00 UTC
- Unix timestamp:
1787018400 - Mainnet chain ID:
127001
Beta (betaTime) and Osaka (osakaTime) are pinned to the same value.
This release only changes the mainnet hardfork schedule table. The bundled gravity-reth pin is unchanged from v1.9.0 (bc817c64…).
What's changed
Schedule mainnet Beta + Osaka
#812 extends the binary-authoritative HARDCODED table and override path so mainnet pins:
extra_fields["betaTime"]→ Gravity Beta (EL)- typed
osakaTime→ Ethereum Osaka (EL)
If the supplied genesis omits either field or disagrees with the binary, startup overrides it and emits a grep-friendly warning. Non-mainnet chain IDs continue to use genesis-provided values.
Delay to 2026-08-18 02:00 UTC
#816 moves the coordinated timestamp from the originally planned 2026-08-17 05:00:00 UTC (1786942800) to 2026-08-18 02:00:00 UTC (1787018400). Beta and Osaka still activate together.
What activates at Beta / Osaka
With the greth v2.3.0 pin already shipped in v1.9.0, this schedule turns those dormant rules on:
At Beta (betaTime):
- EIP-7702 lockdown ends (gravity-reth#412): SetCode (type-4) transactions and txs involving delegated accounts are no longer force-filtered by the emergency lockdown path.
- Block-gas last-gate packing (gravity-reth#414): packing validates first and applies gas as the last gate, discarding non-fitting transactions instead of prefix-cutting the ordered list into near-empty blocks.
At Osaka (osakaTime, same instant):
- 30M per-tx gas cap (gravity-reth#401): Gravity uses a flat Monad-style
30_000_000cap (aligned with system-transaction gas limit), enforced in executor config, consensus block checks, and the pipetx_filterguard.
Compatibility and operator notes
- Coordinated upgrade required before activation: every mainnet validator and full node must run v1.9.1 (or a later binary that carries
betaTime/osakaTime=1787018400) before 2026-08-18 02:00:00 UTC. - Do not stay on v1.9.0 past the deadline: v1.9.0 has no mainnet Beta/Osaka schedule; after activation it will execute under different fork rules than v1.9.1.
- EIP-7702 returns at Beta: SetCode and delegated-account traffic become valid again at the activation instant, subject to the durable skip path for recoverable invalids.
- No runtime override: hardfork times remain binary-authoritative. Changing them requires another release binary.
- Dependency pin unchanged: no greth or gaptos revision bump in this release.
Docker image
The release pipeline publishes:
docker pull ghcr.io/galxe/gravity_node:v1.9.1Dependency revision
gravity-reth: unchanged atbc817c642c9c3816cc4e22754e13e3c9633419ddgravity-aptos: unchanged atb1f68dc85781ef0d28a568d9d64604b153be9d9e