From 6efc81f69313ebde0d6d6d46c871999e89b8f630 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Garamv=C3=B6lgyi?= Date: Mon, 8 Dec 2025 20:17:33 +0100 Subject: [PATCH 1/3] feat: schedule Galileo and GalileoV2 on Scroll mainnet --- crates/scroll/alloy/hardforks/src/hardfork.rs | 4 ++-- crates/scroll/chainspec/src/lib.rs | 18 ++++++++++++++---- crates/scroll/evm/src/execute.rs | 2 +- crates/scroll/hardforks/src/lib.rs | 4 ++-- 4 files changed, 19 insertions(+), 9 deletions(-) diff --git a/crates/scroll/alloy/hardforks/src/hardfork.rs b/crates/scroll/alloy/hardforks/src/hardfork.rs index 058c9fdc8c0..29ecd64dc60 100644 --- a/crates/scroll/alloy/hardforks/src/hardfork.rs +++ b/crates/scroll/alloy/hardforks/src/hardfork.rs @@ -41,8 +41,8 @@ impl ScrollHardfork { (Self::Euclid, ForkCondition::Timestamp(1744815600)), (Self::EuclidV2, ForkCondition::Timestamp(1745305200)), (Self::Feynman, ForkCondition::Timestamp(1755576000)), - (Self::Galileo, ForkCondition::Timestamp(u64::MAX)), - (Self::GalileoV2, ForkCondition::Timestamp(u64::MAX)), + (Self::Galileo, ForkCondition::Timestamp(1765868400)), + (Self::GalileoV2, ForkCondition::Timestamp(1766041200)), ] } diff --git a/crates/scroll/chainspec/src/lib.rs b/crates/scroll/chainspec/src/lib.rs index d391ca07f1b..4f072754568 100644 --- a/crates/scroll/chainspec/src/lib.rs +++ b/crates/scroll/chainspec/src/lib.rs @@ -575,12 +575,17 @@ mod tests { // Feynman ( Head { number: 7096836, timestamp: 1755576000, ..Default::default() }, - ForkId { hash: ForkHash([0x38, 0x0f, 0x78, 0x5d]), next: u64::MAX }, + ForkId { hash: ForkHash([0x38, 0x0f, 0x78, 0x5d]), next: 1765868400 }, ), // Galileo ( - Head { number: 7096836, timestamp: u64::MAX, ..Default::default() }, - ForkId { hash: ForkHash([0x50, 0xe7, 0xe6, 0xd5]), next: 0 }, + Head { number: 7096836, timestamp: 1765868400, ..Default::default() }, + ForkId { hash: ForkHash([0x58, 0xdf, 0x9b, 0x21]), next: 1766041200 }, + ), + // GalileoV2 + ( + Head { number: 7096836, timestamp: 1766041200, ..Default::default() }, + ForkId { hash: ForkHash([0xca, 0x90, 0x54, 0xd4]), next: 0 }, ), ], ); @@ -633,7 +638,12 @@ mod tests { ), // Galileo ( - Head { number: 7096836, timestamp: u64::MAX, ..Default::default() }, + Head { number: 7096836, timestamp: 1765868400, ..Default::default() }, + ForkId { hash: ForkHash([0x18, 0xd3, 0xc8, 0xd9]), next: 0 }, + ), + // GalileoV2 + ( + Head { number: 7096836, timestamp: 1766041200, ..Default::default() }, ForkId { hash: ForkHash([0x18, 0xd3, 0xc8, 0xd9]), next: 0 }, ), ]; diff --git a/crates/scroll/evm/src/execute.rs b/crates/scroll/evm/src/execute.rs index 02da4109559..49fe874c64b 100644 --- a/crates/scroll/evm/src/execute.rs +++ b/crates/scroll/evm/src/execute.rs @@ -91,7 +91,7 @@ mod tests { const EUCLID_V2_BLOCK_NUMBER: u64 = 14907015; const EUCLID_V2_BLOCK_TIMESTAMP: u64 = 1745305200; const FEYNMAN_BLOCK_TIMESTAMP: u64 = 1755576000; - const GALILEO_BLOCK_TIMESTAMP: u64 = 1755576001; // TODO(thegaram): update to actual timestamp + const GALILEO_BLOCK_TIMESTAMP: u64 = 1765868400; fn state() -> State> { let db = EmptyDBTyped::::new(); diff --git a/crates/scroll/hardforks/src/lib.rs b/crates/scroll/hardforks/src/lib.rs index c96ddb3a143..29427ee0632 100644 --- a/crates/scroll/hardforks/src/lib.rs +++ b/crates/scroll/hardforks/src/lib.rs @@ -40,8 +40,8 @@ pub static SCROLL_MAINNET_HARDFORKS: LazyLock = LazyLock::new(|| (ScrollHardfork::Euclid.boxed(), ForkCondition::Timestamp(1744815600)), (ScrollHardfork::EuclidV2.boxed(), ForkCondition::Timestamp(1745305200)), (ScrollHardfork::Feynman.boxed(), ForkCondition::Timestamp(1755576000)), - (ScrollHardfork::Galileo.boxed(), ForkCondition::Timestamp(u64::MAX)), - (ScrollHardfork::GalileoV2.boxed(), ForkCondition::Timestamp(u64::MAX)), + (ScrollHardfork::Galileo.boxed(), ForkCondition::Timestamp(1765868400)), + (ScrollHardfork::GalileoV2.boxed(), ForkCondition::Timestamp(1766041200)), ]) }); From cd14859a40caee95143cab922b3111515801c816 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Garamv=C3=B6lgyi?= Date: Tue, 9 Dec 2025 09:32:39 +0100 Subject: [PATCH 2/3] use openvm v1.4.1 for lint --- .github/workflows/lint.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 14d4ec679a3..a55ee875d22 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -277,7 +277,7 @@ jobs: - uses: Swatinem/rust-cache@v2 with: cache-on-failure: true - - run: cargo install --locked --git https://github.com/openvm-org/openvm.git --tag v1.4.0 cargo-openvm + - run: cargo install --locked --git https://github.com/openvm-org/openvm.git --tag v1.4.1 cargo-openvm - name: verify openvm compatibility env: OPENVM_RUST_TOOLCHAIN: nightly-2025-08-18 From 9a4097226ab406dff2b2e95c681499dfe7e8e84b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C3=A9ter=20Garamv=C3=B6lgyi?= Date: Tue, 9 Dec 2025 09:34:42 +0100 Subject: [PATCH 3/3] use openvm v1.4.2 for lint --- .github/workflows/lint.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index a55ee875d22..8491eaf494d 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -277,7 +277,7 @@ jobs: - uses: Swatinem/rust-cache@v2 with: cache-on-failure: true - - run: cargo install --locked --git https://github.com/openvm-org/openvm.git --tag v1.4.1 cargo-openvm + - run: cargo install --locked --git https://github.com/openvm-org/openvm.git --tag v1.4.2 cargo-openvm - name: verify openvm compatibility env: OPENVM_RUST_TOOLCHAIN: nightly-2025-08-18