Skip to content

Commit 6c306c9

Browse files
authored
chore: add base sepolia (#762)
* feat: Add Base Sepolia * fix: Add values and sepolia fork schedule * fix: mainnet schedule * fix: mainnet schedule * fix: Chain ID
1 parent 6a157e9 commit 6c306c9

File tree

4 files changed

+47
-0
lines changed

4 files changed

+47
-0
lines changed

common/src/fork_schedule.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,13 @@ pub struct ForkSchedule {
2727
pub bedrock_timestamp: u64,
2828
pub regolith_timestamp: u64,
2929
pub canyon_timestamp: u64,
30+
pub delta_timestamp: u64,
3031
pub ecotone_timestamp: u64,
3132
pub fjord_timestamp: u64,
3233
pub granite_timestamp: u64,
3334
pub holocene_timestamp: u64,
3435
pub isthmus_timestamp: u64,
36+
pub jovian_timestamp: u64,
3537
}
3638

3739
impl Default for ForkSchedule {
@@ -61,11 +63,13 @@ impl Default for ForkSchedule {
6163
bedrock_timestamp: u64::MAX,
6264
regolith_timestamp: u64::MAX,
6365
canyon_timestamp: u64::MAX,
66+
delta_timestamp: u64::MAX,
6467
ecotone_timestamp: u64::MAX,
6568
fjord_timestamp: u64::MAX,
6669
granite_timestamp: u64::MAX,
6770
holocene_timestamp: u64::MAX,
6871
isthmus_timestamp: u64::MAX,
72+
jovian_timestamp: u64::MAX,
6973
}
7074
}
7175
}

helios-ts/lib.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -476,6 +476,7 @@ export type Network =
476476
// OP Stack networks
477477
| "op-mainnet" // OP Mainnet (chain ID: 10)
478478
| "base" // Base mainnet (chain ID: 8453)
479+
| "base-sepolia" // Base Sepolia testnet (chain ID: 85432)
479480
| "worldchain" // Worldchain mainnet (chain ID: 480)
480481
| "zora" // Zora mainnet (chain ID: 7777777)
481482
| "unichain" // Unichain mainnet (chain ID: 130)

helios-ts/src/opstack.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ impl OpStackClient {
4242
let network_config = match network.as_str() {
4343
"op-mainnet" => NetworkConfig::from(Network::OpMainnet),
4444
"base" => NetworkConfig::from(Network::Base),
45+
"base-sepolia" => NetworkConfig::from(Network::BaseSepolia),
4546
"worldchain" => NetworkConfig::from(Network::Worldchain),
4647
"zora" => NetworkConfig::from(Network::Zora),
4748
"unichain" => NetworkConfig::from(Network::Unichain),

opstack/src/config.rs

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ pub struct NetworkConfig {
4747
pub enum Network {
4848
OpMainnet,
4949
Base,
50+
BaseSepolia,
5051
Worldchain,
5152
Zora,
5253
Unichain,
@@ -57,6 +58,7 @@ impl Display for Network {
5758
match self {
5859
Self::OpMainnet => f.write_str("op-mainnet"),
5960
Self::Base => f.write_str("base"),
61+
Self::BaseSepolia => f.write_str("base-sepolia"),
6062
Self::Worldchain => f.write_str("worldchain"),
6163
Self::Zora => f.write_str("zora"),
6264
Self::Unichain => f.write_str("unichain"),
@@ -71,6 +73,7 @@ impl FromStr for Network {
7173
match s {
7274
"op-mainnet" => Ok(Self::OpMainnet),
7375
"base" => Ok(Self::Base),
76+
"base-sepolia" => Ok(Self::BaseSepolia),
7477
"worldchain" => Ok(Self::Worldchain),
7578
"zora" => Ok(Self::Zora),
7679
"unichain" => Ok(Self::Unichain),
@@ -108,6 +111,21 @@ impl From<Network> for NetworkConfig {
108111
},
109112
verify_unsafe_signer: false,
110113
},
114+
Network::BaseSepolia => NetworkConfig {
115+
consensus_rpc: Some(
116+
"https://base-sepolia.operationsolarstorm.org"
117+
.parse()
118+
.unwrap(),
119+
),
120+
chain: ChainConfig {
121+
chain_id: 84532,
122+
unsafe_signer: address!("0xb830b99c95Ea32300039624Cb567d324D4b1D83C"),
123+
system_config_contract: address!("0xf272670eb55e895584501d564AfEB048bEd26194"),
124+
eth_network: EthNetwork::Sepolia,
125+
forks: SuperchainForkSchedule::sepolia(),
126+
},
127+
verify_unsafe_signer: false,
128+
},
111129
Network::Worldchain => NetworkConfig {
112130
consensus_rpc: Some(
113131
"https://worldchain.operationsolarstorm.org"
@@ -197,16 +215,39 @@ impl Config {
197215
pub struct SuperchainForkSchedule;
198216

199217
impl SuperchainForkSchedule {
218+
/// Mainnet network upgrade schedule
219+
/// https://docs.optimism.io/op-stack/protocol/network-upgrades
200220
pub fn mainnet() -> ForkSchedule {
201221
ForkSchedule {
202222
bedrock_timestamp: 0,
203223
regolith_timestamp: 0,
204224
canyon_timestamp: 1704992401,
225+
delta_timestamp: 1708560000,
205226
ecotone_timestamp: 1710374401,
206227
fjord_timestamp: 1720627201,
207228
granite_timestamp: 1726070401,
208229
holocene_timestamp: 1736445601,
209230
isthmus_timestamp: 1744905600,
231+
jovian_timestamp: 1764691201,
232+
233+
..Default::default()
234+
}
235+
}
236+
237+
/// Sepolia network upgrade schedule
238+
/// https://docs.optimism.io/op-stack/protocol/network-upgrades
239+
pub fn sepolia() -> ForkSchedule {
240+
ForkSchedule {
241+
bedrock_timestamp: 0,
242+
regolith_timestamp: 0,
243+
canyon_timestamp: 1699981200, // 2023-11-14 17:00:00 UTC
244+
delta_timestamp: 1703203200, // 2023-12-22 00:00:00 UTC
245+
ecotone_timestamp: 1708534800, // 2024-02-21 17:00:00 UTC
246+
fjord_timestamp: 1716998400, // 2024-05-29 16:00:00 UTC
247+
granite_timestamp: 1723478400, // 2024-08-12 16:00:00 UTC
248+
holocene_timestamp: 1732633200, // 2024-11-26 15:00:00 UTC
249+
isthmus_timestamp: 1744905600, // 2025-04-17 16:00:00 UTC
250+
jovian_timestamp: 1763568001, // 2025-11-19 16:00:01 UTC
210251

211252
..Default::default()
212253
}

0 commit comments

Comments
 (0)