Skip to content
Merged
36 changes: 4 additions & 32 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,11 @@ incremental = false
[workspace.dependencies]
signet-blobber = { version = "0.16.0-rc.7", path = "crates/blobber" }
signet-block-processor = { version = "0.16.0-rc.7", path = "crates/block-processor" }
signet-db = { version = "0.16.0-rc.7", path = "crates/db" }
signet-genesis = { version = "0.16.0-rc.7", path = "crates/genesis" }
signet-node = { version = "0.16.0-rc.7", path = "crates/node" }
signet-node-config = { version = "0.16.0-rc.7", path = "crates/node-config" }
signet-node-tests = { version = "0.16.0-rc.7", path = "crates/node-tests" }
signet-node-types = { version = "0.16.0-rc.7", path = "crates/node-types" }
signet-rpc = { version = "0.16.0-rc.7", path = "crates/rpc" }
signet-rpc-storage = { version = "0.16.0-rc.7", path = "crates/rpc-storage" }

init4-bin-base = { version = "0.18.0-rc.8", features = ["alloy"] }

Expand All @@ -56,10 +53,10 @@ signet-tx-cache = "0.16.0-rc.8"
signet-types = "0.16.0-rc.8"
signet-zenith = "0.16.0-rc.8"
signet-journal = "0.16.0-rc.8"
signet-storage = "0.6.0"
signet-cold = "0.6.0"
signet-hot = "0.6.0"
signet-storage-types = "0.6.0"
signet-storage = "0.6.2"
signet-cold = "0.6.2"
signet-hot = "0.6.2"
signet-storage-types = "0.6.2"

# ajj
ajj = { version = "0.6.0" }
Expand All @@ -76,43 +73,22 @@ alloy = { version = "1.4.0", features = [
"genesis",
"arbitrary",
] }
alloy-contract = { version = "1.4.0", features = ["pubsub"] }

# Reth
reth = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-ethereum = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-chainspec = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-codecs = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-db = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-db-api = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-db-common = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-eth-wire-types = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-exex = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-exex-test-utils = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-libmdbx = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-network-api = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-network-peers = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-node-api = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-node-ethereum = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-prune-types = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-rpc-eth-api = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-stages-types = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }
reth-transaction-pool = { git = "https://github.com/paradigmxyz/reth", tag = "v1.10.2" }

# Foundry periphery
foundry-blob-explorers = "0.17"

# Async
tokio = { version = "1.43.0", features = ["macros"] }
async-trait = "0.1.87"

# Pinned for compatibility with reth
parking_lot = "0.12"

# Misc
chrono = "0.4.38"
clap = "4"
eyre = "0.6.12"
futures-util = "0.3.31"
hex = { package = "const-hex", version = "1.10", default-features = false, features = [
Expand All @@ -121,19 +97,15 @@ hex = { package = "const-hex", version = "1.10", default-features = false, featu
itertools = "0.14.0"
metrics = "0.24.2"
openssl = { version = "0.10", features = ["vendored"] }
proptest = "1.6.0"
reqwest = "0.12.9"
serde = { version = "1.0.217", features = ["derive"] }
serde_json = "1.0.137"
smallvec = "1.15.1"
tracing = "0.1.41"
tracing-subscriber = "0.3.19"
thiserror = "2.0.12"
url = "2.5.4"
uuid = "1.16.0"

# Test Utils
alloy-rlp = "0.3.11"
tempfile = "3.17.0"

# [patch.crates-io]
Expand Down
6 changes: 2 additions & 4 deletions crates/block-processor/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -20,14 +20,12 @@ init4-bin-base.workspace = true
trevm.workspace = true

signet-blobber.workspace = true
signet-db.workspace = true
signet-node-types.workspace = true
signet-hot.workspace = true
signet-storage-types.workspace = true

alloy.workspace = true

reth.workspace = true
reth-exex.workspace = true
reth-node-api.workspace = true
reth-chainspec.workspace = true

eyre.workspace = true
Expand Down
14 changes: 6 additions & 8 deletions crates/block-processor/README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
# Signet Block Processor

Block processing logic for the Signet Node. This crate takes a reth `Chain`,
runs the Signet EVM, and commits the results to a database.
Block processing logic for the Signet Node. This crate extracts and processes
Signet blocks from host chain commits using the EVM, reading rollup state from
hot storage.

# Significant Types

- A few convenience type aliases:
- `PrimitivesOf<Host>` - The primitives type used by the host.
- `Chain<Host>` - A reth `Chain` using the host's primitives.
- `ExExNotification<Host>` - A reth `ExExNotification` using the host's
primitives.
- `SignetBlockProcessorV1<Host, Db>` - The first version of the block processor.
- `SignetBlockProcessor<H, Alias>` — The block processor. Reads state from
`HotKv` storage, runs the EVM via `signet_evm`, and returns an
`ExecutedBlock`.
10 changes: 0 additions & 10 deletions crates/block-processor/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,3 @@ pub use utils::revm_spec;

mod v1;
pub use v1::SignetBlockProcessor as SignetBlockProcessorV1;

/// Primitives used by the host.
pub type PrimitivesOf<Host> =
<<Host as reth_node_api::FullNodeTypes>::Types as reth_node_api::NodeTypes>::Primitives;

/// A [`reth::providers::Chain`] using the host primitives.
pub type Chain<Host> = reth::providers::Chain<PrimitivesOf<Host>>;

/// A [`reth_exex::ExExNotification`] using the host primitives.
pub type ExExNotification<Host> = reth_exex::ExExNotification<PrimitivesOf<Host>>;
13 changes: 0 additions & 13 deletions crates/block-processor/src/metrics.rs
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,6 @@ const ENTER_TOKEN_PROCESSED_HELP: &str =
const TRANSACT_PROCESSED: &str = "signet.block_processor.transact_events.processed";
const TRANSACT_PROCESSED_HELP: &str = "Histogram of number of transact events processed per block";

const EXTRACTION_TIME: &str = "signet.block_processor.extraction.time";
const EXTRACTION_TIME_HELP: &str = "Time taken to extract signet outputs from a host notification. Note: sometimes the extraction includes multiple blocks.";

const PROCESSING_TIME: &str = "signet.block_processor.processing.time";
const PROCESSING_TIME_HELP: &str =
"Time taken to process a single signet block from extracts, in milliseconds.";
Expand All @@ -80,7 +77,6 @@ static DESCRIBE: LazyLock<()> = LazyLock::new(|| {
describe_histogram!(ENTER_PROCESSED, ENTER_PROCESSED_HELP);
describe_histogram!(ENTER_TOKEN_PROCESSED, ENTER_TOKEN_PROCESSED_HELP);
describe_histogram!(TRANSACT_PROCESSED, TRANSACT_PROCESSED_HELP);
describe_histogram!(EXTRACTION_TIME, EXTRACTION_TIME_HELP);
describe_histogram!(PROCESSING_TIME, PROCESSING_TIME_HELP);
describe_histogram!(BLOCK_GAS_USED, BLOCK_GAS_USED_HELP);
});
Expand Down Expand Up @@ -184,15 +180,6 @@ fn record_transacts_processed(value: u64) {
transacts_processed().record(value as f64);
}

fn extraction_time() -> Histogram {
LazyLock::force(&DESCRIBE);
histogram!(EXTRACTION_TIME)
}

pub(crate) fn record_extraction_time(started_at: &std::time::Instant) {
extraction_time().record(started_at.elapsed().as_millis() as f64);
}

fn processing_time() -> Histogram {
LazyLock::force(&DESCRIBE);
histogram!(PROCESSING_TIME)
Expand Down
Loading