Skip to content

feat(l1): ethrex_replay add tooling for periodic replay runs #4108

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 117 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 112 commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
c8c3e24
Fix ExecutionWitness serde
ilitteri Aug 7, 2025
92ccf11
Rewrite rebuild trie function
ilitteri Aug 7, 2025
f4ea7de
Fix chain config used in `ethrex-replay execute block`
ilitteri Aug 7, 2025
dd26674
Fix chain config in every command
ilitteri Aug 7, 2025
4c0fcbe
Retrieve only canonical blocks
ilitteri Aug 7, 2025
b3fb896
Improve logging
ilitteri Aug 7, 2025
6bb5b56
Remove leftover `dbg!`s
ilitteri Aug 7, 2025
df14985
Add network to cache file name
ilitteri Aug 7, 2025
af82b43
Update fetch_rangedata_from_client
ilitteri Aug 7, 2025
8741e6f
Add error log when debug_executionWitness request fails
ilitteri Aug 7, 2025
048ec5c
Remove needless field
ilitteri Aug 7, 2025
859e5fc
Implement `Deserialize` for `ExecutionWitnessResult`
ilitteri Aug 7, 2025
02e1362
Implement `Serialize` for `ExecutionWitnessResult`
ilitteri Aug 7, 2025
601c312
Cleanup
ilitteri Aug 7, 2025
e890ab3
Inserts must come before deletes, otherwise deletes might require ext…
ilitteri Aug 7, 2025
de51069
Update cmd/ethrex_replay/src/fetcher.rs
JereSalo Aug 8, 2025
098f901
Update cmd/ethrex_replay/src/cli.rs
JereSalo Aug 8, 2025
b8847f7
Update crates/common/types/block_execution_witness.rs
JereSalo Aug 8, 2025
f2d3c48
Rethink serde
ilitteri Aug 8, 2025
31fd4c5
Fix
ilitteri Aug 8, 2025
806fcdf
Fix trie rebuild in deserialization
ilitteri Aug 8, 2025
3d35ca6
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 8, 2025
646adf5
fill state and keys
JereSalo Aug 8, 2025
8cc7c69
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
JereSalo Aug 8, 2025
fcdb1ed
Fix `ExecutionWitnessResult` serialization
ilitteri Aug 8, 2025
0421704
Add warn log when cache fails to be loaded
ilitteri Aug 8, 2025
d9dcabb
Add chain config to ProgramInput for convenience
ilitteri Aug 8, 2025
3bfe0f2
add chain_config in missing places
JereSalo Aug 8, 2025
f27d06d
Use correct chain id
ilitteri Aug 8, 2025
7cf2648
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 8, 2025
e721b08
Avoid rebuilding trie twice in L1
ilitteri Aug 8, 2025
f3bf3df
Merge branch 'main' into fix_execution_witness_serde
ilitteri Aug 8, 2025
24157c7
fix chain config problem
JereSalo Aug 8, 2025
fb7ac8a
Decouple `RpcExecutionWitness` from `ExecutionWitnessResult`
ilitteri Aug 9, 2025
15c10f9
Initial version of the forever run binary
ilitteri Aug 9, 2025
c950039
Wait at most 12 seconds for next execution
ilitteri Aug 9, 2025
5c305e7
Add comment
ilitteri Aug 9, 2025
022e9d9
Add useful log
ilitteri Aug 9, 2025
ade4e83
Fix log
ilitteri Aug 9, 2025
a5fa2d6
fix blockchain tests
JereSalo Aug 11, 2025
88566e5
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 11, 2025
6ce281a
Name script
ilitteri Aug 11, 2025
d8585f2
run cargo fmt
JereSalo Aug 11, 2025
e895dd8
make rebuild trie private
JereSalo Aug 11, 2025
94ebdda
remove temp log
ilitteri Aug 11, 2025
3da1c46
Rename replayer bin
ilitteri Aug 11, 2025
4c60354
Reorg replayer bin files
ilitteri Aug 11, 2025
b95f02c
remove chain config from ProverInput
JereSalo Aug 11, 2025
bed4fc1
initialize witness with ChainConfig and remove it from ProgramInput
JereSalo Aug 11, 2025
b57b5e2
remove duplicate function
JereSalo Aug 11, 2025
8e2546b
Add support for sending reports to slack
ilitteri Aug 11, 2025
6a15716
remove chainconfig from load_cache
JereSalo Aug 11, 2025
ab75cfe
cargo fmt
JereSalo Aug 11, 2025
9b3eff6
leave a todo
JereSalo Aug 11, 2025
d07c4dc
Add sepolia rpc url
ilitteri Aug 11, 2025
2926250
rename witness to rpc_witness in function
JereSalo Aug 11, 2025
33447ed
remove storage_trie_nodes because we have keys
JereSalo Aug 11, 2025
35ef067
simplify network clap
JereSalo Aug 11, 2025
6548ed7
refactor(l1): create cmd common module and move network to it (#4016)
JereSalo Aug 11, 2025
bf490fb
Add args to `replayer` bin
ilitteri Aug 11, 2025
1a8804b
create config crate
JereSalo Aug 11, 2025
e290ccb
run cargo fmt
JereSalo Aug 11, 2025
727f745
remove fixme comment
JereSalo Aug 11, 2025
0b5df09
Remove old error log
ilitteri Aug 11, 2025
bd585a7
Error log when execution fails and info log when it succeeds
ilitteri Aug 11, 2025
984140b
remove argument from rebuild_tries
JereSalo Aug 11, 2025
09cb2ee
change error type for parent block header not found
JereSalo Aug 11, 2025
7c40845
Cleanup
ilitteri Aug 11, 2025
3fc118a
Enable the possibility to prove and execute
ilitteri Aug 11, 2025
052355b
apply suggested nit when loading cache
JereSalo Aug 11, 2025
5575cdb
Fix display
ilitteri Aug 11, 2025
65f4562
remove unnecessary code and change comment
JereSalo Aug 12, 2025
4a1059e
Merge branch 'main' into fix_execution_witness_serde
JereSalo Aug 12, 2025
b3f5c96
nit in test_runner witness
JereSalo Aug 12, 2025
d8b701c
remove p2p from replay workspace
JereSalo Aug 12, 2025
e387035
add issue number
JereSalo Aug 12, 2025
04bd47d
Fix proving part of the script
ilitteri Aug 12, 2025
a49c67e
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 12, 2025
e119ef5
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 12, 2025
eb7e08d
Fix block run report generation
ilitteri Aug 13, 2025
6bb27dc
merge main
JereSalo Aug 13, 2025
5e66561
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 13, 2025
19e6d74
Add log to display which block is being replayed
ilitteri Aug 14, 2025
5cdb8c6
reafctor: make only one rpc url required
tomip01 Aug 14, 2025
a04a175
Merge branch 'fix_execution_witness_serde_bin' of github.com:lambdacl…
tomip01 Aug 14, 2025
366373b
Improve recently added log to display etherscan's block URLs
ilitteri Aug 14, 2025
53af66d
Notify to Slack all proven block results
ilitteri Aug 14, 2025
5d5544d
Fix format duration (show hours now)
ilitteri Aug 14, 2025
3e1f814
Merge branch 'main' into fix_execution_witness_serde
JereSalo Aug 14, 2025
efdd49b
Merge branch 'main' into fix_execution_witness_serde
ilitteri Aug 14, 2025
87b42b4
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 14, 2025
17385e5
Print time taken in slack message
ilitteri Aug 15, 2025
33521d9
Make slack message header consistent
ilitteri Aug 15, 2025
7427a23
Revert "Make slack message header consistent"
ilitteri Aug 15, 2025
0b22a4f
Merge branch 'main' into fix_execution_witness_serde
ilitteri Aug 18, 2025
9ce30b4
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 18, 2025
c20a5ed
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 19, 2025
0f59dcb
Fix bad merge
ilitteri Aug 19, 2025
98b41b3
Update cmd/ethrex_replay/src/fetcher.rs
JereSalo Aug 19, 2025
9c01482
remove duplicate code for rebuilding tries
JereSalo Aug 19, 2025
230259d
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 19, 2025
e9d8ac0
mention issue
JereSalo Aug 19, 2025
59a61ea
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 19, 2025
0966582
get parent block header correctly
JereSalo Aug 20, 2025
0190b3e
move config to common and remove src folder
JereSalo Aug 20, 2025
59cbbf2
replace panic for error
JereSalo Aug 20, 2025
627d67d
improve error parent block header
JereSalo Aug 20, 2025
437f399
merge main
JereSalo Aug 20, 2025
720fd0a
Merge branch 'main' into fix_execution_witness_serde
ilitteri Aug 20, 2025
c787cac
Merge branch 'fix_execution_witness_serde' of github.com:lambdaclass/…
ilitteri Aug 20, 2025
592011e
Merge main
ilitteri Aug 20, 2025
61fe7f1
Move replayer to tooling
ilitteri Aug 20, 2025
a87cece
Leftovers
ilitteri Aug 20, 2025
8bd0e41
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 20, 2025
9b9415f
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 21, 2025
6bc4db3
Merge branch 'main' of github.com:lambdaclass/ethrex into fix_executi…
ilitteri Aug 21, 2025
7392be9
Try send slack message in every prove result and only in failed execu…
ilitteri Aug 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 29 additions & 19 deletions .github/workflows/tag_release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,18 +22,29 @@ jobs:
- ubuntu-22.04
- ubuntu-24.04-arm
- macos-latest
gpu:
- true
- false
include:
- platform: ubuntu-22.04
os: linux
arch: x86_64
prover_features: sp1,risc0,gpu
prover_features: sp1,risc0
cpu_flags: RUSTFLAGS='-C target-cpu=x86-64-v2'
- platform: ubuntu-24.04-arm
os: linux
arch: aarch64
prover_features: sp1,gpu
prover_features: sp1
- platform: macos-latest
os: macos
arch: aarch64
- gpu: true
gpu_flags: NVCC_PREPEND_FLAGS='-arch=sm_70'
gpu_feature: ",gpu"
gpu_suffix: "-gpu"
exclude:
- platform: macos-latest
gpu: true
runs-on: ${{ matrix.platform }}
steps:
- name: Free Disk Space (Ubuntu)
Expand All @@ -51,7 +62,7 @@ jobs:
with:
toolchain: ${{ vars.RUST_VERSION }}

- name: Install SP1
- name: Install SP1 (only Linux)
if: ${{ matrix.os == 'linux' }}
env:
SHELL: /bin/bash
Expand All @@ -60,13 +71,13 @@ jobs:
curl -L https://sp1up.succinct.xyz | bash
~/.sp1/bin/sp1up --version 5.0.8

- name: Set up QEMU
- name: Set up QEMU (only Linux ARM)
if: ${{ matrix.platform == 'ubuntu-24.04-arm' }}
uses: docker/setup-qemu-action@v3
with:
platforms: amd64

- name: Install RISC0
- name: Install RISC0 (only Linux x86)
if: ${{ matrix.platform == 'ubuntu-22.04' }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
Expand All @@ -75,8 +86,9 @@ jobs:
~/.risc0/bin/rzup install cargo-risczero 2.3.1
~/.risc0/bin/rzup install rust

- uses: Jimver/cuda-toolkit@v0.2.24
if: ${{ matrix.platform == 'ubuntu-22.04' }}
- name: Install CUDA (only Linux x86 GPU)
uses: Jimver/cuda-toolkit@v0.2.24
if: ${{ matrix.platform == 'ubuntu-22.04' && matrix.gpu }}
id: cuda-toolkit
with:
cuda: "12.9.0"
Expand All @@ -96,18 +108,13 @@ jobs:
sudo curl -L -o /usr/local/bin/solc https://github.com/nikitastupin/solc/raw/refs/heads/main/linux/aarch64/solc-v0.8.29
sudo chmod +x /usr/local/bin/solc

- name: Set compiler envs
if: ${{ matrix.os == 'linux' }}
run: |
echo COMPILE_FLAGS="RUSTFLAGS='-C target-cpu=native' NVCC_PREPEND_FLAGS='-arch=sm_70'" >> $GITHUB_ENV

- name: Build ethrex
run: |
COMPILE_CONTRACTS=true ${{ env.COMPILE_FLAGS }} cargo build --release --features "${{ matrix.prover_features }}" --bin ethrex
mv target/release/ethrex ethrex-${{ matrix.os }}_${{ matrix.arch }}
COMPILE_CONTRACTS=true ${{ matrix.cpu_flags }} ${{ matrix.gpu_flags }} cargo build --release --features "${{ matrix.prover_features }}${{ matrix.gpu_feature }}" --bin ethrex
mv target/release/ethrex ethrex-${{ matrix.os }}_${{ matrix.arch }}${{ matrix.gpu_suffix }}

- name: Copy verification keys
if: ${{ matrix.platform == 'ubuntu-22.04' }} # Run only once
if: ${{ matrix.platform == 'ubuntu-22.04' && matrix.gpu }} # Run only once
run: |
mkdir -p ./verification_keys
mv crates/l2/prover/zkvm/interface/risc0/out/riscv32im-risc0-vk verification_keys/ethrex-riscv32im-risc0-vk
Expand All @@ -116,11 +123,11 @@ jobs:
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: ethrex-${{ matrix.os }}_${{ matrix.arch }}
path: ethrex-${{ matrix.os }}_${{ matrix.arch }}
name: ethrex-${{ matrix.os }}_${{ matrix.arch }}${{ matrix.gpu_suffix }}
path: ethrex-${{ matrix.os }}_${{ matrix.arch }}${{ matrix.gpu_suffix }}

- name: Upload verification keys
if: ${{ matrix.platform == 'ubuntu-22.04' }} # Run only once
if: ${{ matrix.platform == 'ubuntu-22.04' && matrix.gpu }} # Run only once
uses: actions/upload-artifact@v4
with:
name: verification_keys
Expand Down Expand Up @@ -229,4 +236,7 @@ jobs:
prerelease: false
tag_name: ${{ github.ref_name }}
name: "ethrex: ${{ github.ref_name }}"
body: ${{ steps.changelog.outputs.changes }}
body: >
Installation and running instructions can be found in [our docs](https://docs.ethrex.xyz/)

${{ steps.changelog.outputs.changes }}
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# Generated by Cargo
# will have compiled files and executables
debug/
**/target/

# These are backup files generated by rustfmt
Expand Down Expand Up @@ -49,7 +48,6 @@ loc_report.md
loc_report_slack.txt
loc_report_github.txt
loc_report.json
ethrex.redb

# used by Flamegraph and Samply
cmd/ef_tests/state/levm_perfgraphs
Expand Down
26 changes: 15 additions & 11 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ members = [
"tooling/load_test",
"tooling/loc",
"tooling/archive_sync",
"crates/common/config",
]
resolver = "2"

Expand All @@ -52,6 +53,7 @@ debug = 2
[workspace.dependencies]
ethrex-blockchain = { path = "./crates/blockchain" }
ethrex-common = { path = "./crates/common" }
ethrex-config = { path = "./crates/common/config" }
ethrex-p2p = { path = "./crates/networking/p2p" }
ethrex-rpc = { path = "./crates/networking/rpc" }
ethrex-storage = { path = "./crates/storage" }
Expand Down Expand Up @@ -91,7 +93,6 @@ jsonwebtoken = "9.3.0"
rand = "0.8.5"
cfg-if = "1.0.0"
reqwest = { version = "0.12.7", features = ["json"] }
redb = "=2.4.0"
snap = "1.1.1"
secp256k1 = { version = "0.29.1", default-features = false, features = [
"global-context",
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ build: ## 🔨 Build the client
lint: ## 🧹 Linter check
# Note that we are compiling without the "gpu" feature (see #4048 for why)
# To compile with it you can replace '-F' with '--all-features', but you need to have nvcc installed
cargo clippy --all-targets -F debug,redb,risc0,sp1,sync-test \
cargo clippy --all-targets -F debug,risc0,sp1,sync-test \
--workspace --exclude ethrex-replay --exclude ethrex-prover --exclude zkvm_interface --exclude ef_tests-blockchain \
--release -- -D warnings

Expand Down
6 changes: 1 addition & 5 deletions cmd/ef_tests/blockchain/test_runner.rs
Original file line number Diff line number Diff line change
Expand Up @@ -409,11 +409,7 @@ async fn re_run_stateless(
let mut witness = blockchain.generate_witness_for_blocks(&blocks).await;
// Set a default witness if execution should fail as db will not have the required data to generate the witness
if test_should_fail && witness.is_err() {
witness = Ok(ExecutionWitnessResult {
state_trie_nodes: Some(Vec::new()),
storage_trie_nodes: Some(HashMap::new()),
..Default::default()
})
witness = Ok(ExecutionWitnessResult::default())
} else if !test_should_fail && witness.is_err() {
return Err("Failed to create witness for a test that should not fail".into());
}
Expand Down
3 changes: 1 addition & 2 deletions cmd/ethrex/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ build = "build.rs"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
ethrex-config.workspace = true
ethrex-blockchain.workspace = true
ethrex-rpc.workspace = true
ethrex-common.workspace = true
Expand Down Expand Up @@ -35,7 +36,6 @@ anyhow = "1.0.86"
rand = "0.8.5"
local-ip-address = "0.6"
tokio-util.workspace = true
redb = { workspace = true, optional = true }
lazy_static.workspace = true
secp256k1.workspace = true
keccak-hash.workspace = true
Expand Down Expand Up @@ -71,7 +71,6 @@ c-kzg = [
]
metrics = ["ethrex-blockchain/metrics", "ethrex-l2/metrics"]
libmdbx = ["ethrex-storage/libmdbx"]
redb = ["dep:redb", "ethrex-storage/redb"]
blst = ["ethrex-vm/blst"]
rollup_storage_sql = ["ethrex-storage-rollup/sql"]
sync-test = ["ethrex-p2p/sync-test"]
Expand Down
2 changes: 1 addition & 1 deletion cmd/ethrex/bench/import_blocks_benchmark.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
use criterion::{Criterion, criterion_group, criterion_main};
use ethrex::{
cli::{import_blocks, remove_db},
networks::Network,
utils::{default_datadir, init_datadir},
};
use ethrex_blockchain::BlockchainType;
use ethrex_config::networks::Network;
use ethrex_vm::EvmEngine;

#[inline]
Expand Down
2 changes: 1 addition & 1 deletion cmd/ethrex/cli.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ use crate::{
self,
command::{DB_ETHREX_DEV_L1, DB_ETHREX_DEV_L2},
},
networks::Network,
utils::{self, default_datadir, get_client_version, init_datadir},
};
use ethrex_config::networks::Network;

#[allow(clippy::upper_case_acronyms)]
#[derive(ClapParser)]
Expand Down
3 changes: 2 additions & 1 deletion cmd/ethrex/ethrex.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ use ethrex::{
initializers::{init_l1, init_tracing},
utils::{NodeConfigFile, store_node_config_file},
};
use ethrex_p2p::{kademlia::KademliaTable, types::NodeRecord};
use ethrex_p2p::kademlia::KademliaTable;
use ethrex_p2p::types::NodeRecord;
use std::{path::PathBuf, sync::Arc, time::Duration};
use tokio::{
signal::unix::{SignalKind, signal},
Expand Down
6 changes: 2 additions & 4 deletions cmd/ethrex/initializers.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
use crate::{
cli::Options,
networks::Network,
utils::{
get_client_version, init_datadir, parse_socket_addr, read_jwtsecret_file,
read_node_config_file,
},
};
use ethrex_blockchain::{Blockchain, BlockchainType};
use ethrex_common::types::Genesis;
use ethrex_config::networks::Network;

use ethrex_metrics::profiling::{FunctionProfilingLayer, initialize_block_processing_profile};

Expand Down Expand Up @@ -102,10 +102,8 @@ pub fn open_store(data_dir: &str) -> Store {
cfg_if::cfg_if! {
if #[cfg(feature = "libmdbx")] {
let engine_type = EngineType::Libmdbx;
} else if #[cfg(feature = "redb")] {
let engine_type = EngineType::RedB;
} else {
error!("No database specified. The feature flag `redb` or `libmdbx` should've been set while building.");
error!("No database specified. The feature flag `libmdbx` should've been set while building.");
panic!("Specify the desired database engine.");
}
}
Expand Down
6 changes: 2 additions & 4 deletions cmd/ethrex/l2/command.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ use crate::{
deployer::{DeployerOptions, deploy_l1_contracts},
options::{Options, ProverClientOptions},
},
networks::Network,
utils::{default_datadir, init_datadir, parse_private_key},
};
use clap::{FromArgMatches, Parser, Subcommand};
use ethrex_common::{
Address, H256, U256,
types::{BYTES_PER_BLOB, BlobsBundle, BlockHeader, batch::Batch, bytes_from_blob},
};
use ethrex_config::networks::Network;
use ethrex_l2_common::{calldata::Value, l1_messages::get_l1_message_hash, state_diff::StateDiff};
use ethrex_l2_sdk::call_contract;
use ethrex_rpc::{
Expand Down Expand Up @@ -284,10 +284,8 @@ impl Command {
cfg_if::cfg_if! {
if #[cfg(feature = "libmdbx")] {
let store_type = EngineType::Libmdbx;
} else if #[cfg(feature = "redb")] {
let store_type = EngineType::RedB;
} else {
eyre::bail!("Expected one of libmdbx or redb store engine");
eyre::bail!("Expected libmdbx store engine");
}
};
cfg_if::cfg_if! {
Expand Down
2 changes: 1 addition & 1 deletion cmd/ethrex/l2/deployer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ use ethrex_common::H160;
use hex::FromHexError;
use secp256k1::SecretKey;

use crate::networks::{LOCAL_DEVNET_GENESIS_CONTENTS, LOCAL_DEVNETL2_GENESIS_CONTENTS};
use ethrex_config::networks::{LOCAL_DEVNET_GENESIS_CONTENTS, LOCAL_DEVNETL2_GENESIS_CONTENTS};

#[derive(Parser)]
pub struct DeployerOptions {
Expand Down
1 change: 0 additions & 1 deletion cmd/ethrex/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,3 @@ pub mod l2;
pub mod utils;

mod decode;
pub mod networks;
3 changes: 2 additions & 1 deletion cmd/ethrex_replay/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ version = "0.1.0"
edition = "2024"

[dependencies]
ethrex-config.workspace = true
ethrex-common.workspace = true
ethrex-vm.workspace = true
ethrex-levm.workspace = true
Expand All @@ -23,7 +24,7 @@ eyre.workspace = true
tokio = { version = "1.21", default-features = false, features = ["full"] }
clap.workspace = true
charming = { version = "0.4.0", features = ["ssr"] }

futures.workspace = true

[features]
risc0 = ["zkvm_interface/risc0", "ethrex-prover/risc0"]
Expand Down
Loading