Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
b2dff1b
feat: add signet-rpc-storage crate scaffolding
prestwich Feb 11, 2026
802824b
feat: implement ETH RPC endpoints for signet-rpc-storage
prestwich Feb 12, 2026
477a732
test: add integration tests for ETH RPC endpoints
prestwich Feb 12, 2026
a435afa
fix: resolve review issues in endpoints and helpers
prestwich Feb 12, 2026
601c156
fix: correct log ordering comments in rpc test
prestwich Feb 12, 2026
35ed5cb
refactor: DRY up EVM setup, fix glob import, remove dead code
prestwich Feb 12, 2026
49ffbb6
refactor: move block resolution to StorageRpcCtx methods, drop RoTx b…
prestwich Feb 12, 2026
e7a543b
feat: add StorageRpcConfig and integrate RPC configuration values
prestwich Feb 12, 2026
fed52a0
feat: port missing RPC endpoints and add integration tests
prestwich Feb 12, 2026
291ab9f
chore: use signet-storage 0.3.0 from crates.io, remove patch overrides
prestwich Feb 13, 2026
2163d98
refactor: adapt rpc-storage to signet-storage 0.3.0 API
prestwich Feb 13, 2026
d6114f8
chore: bump signet-storage crates to 0.4.0
prestwich Feb 14, 2026
2963621
refactor: use hot storage for block resolution and header lookups
prestwich Feb 14, 2026
0c08f2f
refactor: align rpc-storage data shapes with canonical rpc crate
prestwich Feb 14, 2026
9ce7840
refactor: align filter, subscription, and tx submission behavior
prestwich Feb 14, 2026
40f5734
fix: synthesize pending header in resolve_evm_block and bump storage …
prestwich Feb 14, 2026
d90d2b7
feat: add uncle and access lists
prestwich Feb 14, 2026
4d9c6db
refactor: address PR review comments across rpc-storage crate
prestwich Feb 14, 2026
b40411e
feat: bump ajj to 0.5.0 with lazy serialization and API migration
prestwich Feb 14, 2026
9be14ce
fix: migrate signet-rpc crate to ajj 0.5.0 API
prestwich Feb 14, 2026
2dcab79
refactor: replace json! macro with typed subscription notification st…
prestwich Feb 14, 2026
0d17805
chore: bump ajj to 0.6.0
prestwich Feb 14, 2026
4eb1b0a
fix: suppress dead_code warning in test harness and fix doc link
prestwich Feb 15, 2026
a819a3f
feat: use cold storage log streaming for eth_getLogs and eth_getFilte…
prestwich Feb 15, 2026
4e9c249
chore: remove future-evaluation
prestwich Feb 15, 2026
f5b91b0
refactor: extract type definitions from endpoint files into type modules
prestwich Feb 15, 2026
afdff5a
feat: restore permit-based subscription notification batching
prestwich Feb 15, 2026
a98f49e
refactor: move orphaned types to signet-node and remove journal hash …
prestwich Feb 15, 2026
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
12 changes: 11 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ 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 @@ -55,9 +56,13 @@ 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"

# ajj
ajj = { version = "0.3.4" }
ajj = { version = "0.6.0" }

# trevm
trevm = { version = "0.34.0", features = ["full_env_cfg"] }
Expand Down Expand Up @@ -132,6 +137,11 @@ alloy-rlp = "0.3.11"
tempfile = "3.17.0"

# [patch.crates-io]
# signet-cold = { path = "../storage/crates/cold" }
# signet-hot = { path = "../storage/crates/hot" }
# signet-storage = { path = "../storage/crates/storage" }
# signet-storage-types = { path = "../storage/crates/types" }

# signet-bundle = { path = "../sdk/crates/bundle"}
# signet-constants = { path = "../sdk/crates/constants"}
# signet-evm = { path = "../sdk/crates/evm"}
Expand Down
1 change: 0 additions & 1 deletion crates/block-processor/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ repository.workspace = true
signet-constants.workspace = true
signet-evm.workspace = true
signet-extract.workspace = true
signet-journal.workspace = true
signet-types.workspace = true

init4-bin-base.workspace = true
Expand Down
33 changes: 7 additions & 26 deletions crates/block-processor/src/v1/processor.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use crate::{AliasOracle, AliasOracleFactory, Chain, metrics};
use alloy::{
consensus::BlockHeader,
primitives::{Address, B256, map::HashSet},
primitives::{Address, map::HashSet},
};
use core::fmt;
use eyre::ContextCompat;
Expand All @@ -21,10 +21,9 @@ use signet_constants::SignetSystemConstants;
use signet_db::{DataCompat, DbProviderExt, RuChain, RuRevmState, RuWriter};
use signet_evm::{BlockResult, EvmNeedsCfg, SignetDriver};
use signet_extract::{Extractor, Extracts};
use signet_journal::HostJournal;
use signet_node_types::{NodeTypesDbTrait, SignetNodeTypes};
use std::{collections::VecDeque, sync::Arc};
use tracing::{Instrument, debug, error, info, info_span, instrument};
use tracing::{Instrument, error, info, info_span, instrument};
use trevm::revm::primitives::hardfork::SpecId;

/// A block processor that listens to host chain commits and processes
Expand Down Expand Up @@ -145,7 +144,6 @@ where
let mut start = None;
let mut current = 0;
let last_ru_height = self.ru_provider.last_block_number()?;
let mut prev_block_journal = self.ru_provider.provider_rw()?.latest_journal_hash()?;

let mut net_outcome = ExecutionOutcome::default();

Expand Down Expand Up @@ -191,10 +189,8 @@ where
metrics::record_block_result(&block_result, &start_time);

let _ = span.enter();
let journal =
self.commit_evm_results(&block_extracts, &block_result, prev_block_journal)?;
self.commit_evm_results(&block_extracts, &block_result)?;

prev_block_journal = journal.journal_hash();
net_outcome.extend(block_result.execution_outcome.convert());
}
info!("committed blocks");
Expand Down Expand Up @@ -308,36 +304,21 @@ where

/// Commit the outputs of a zenith block to the database.
#[instrument(skip_all)]
fn commit_evm_results<'a>(
fn commit_evm_results(
&self,
extracts: &Extracts<'_, ExtractableChainShim<'_>>,
block_result: &'a BlockResult,
prev_block_journal: B256,
) -> eyre::Result<HostJournal<'a>> {
let journal = block_result.make_host_journal(prev_block_journal);
let time = std::time::Instant::now();
let jh = journal.journal_hash();

debug!(
target: "signet::journal::serialize",
bytes = journal.serialized().len(),
hash = %jh,
elapsed_micros = %time.elapsed().as_micros(),
"journal produced"
);

block_result: &BlockResult,
) -> eyre::Result<()> {
self.ru_provider.provider_rw()?.update(|writer| {
// add execution results to database
writer.append_host_block(
extracts.ru_header(),
extracts.transacts().cloned(),
extracts.enters(),
extracts.enter_tokens(),
block_result,
jh,
)?;
Ok(())
})?;
Ok(journal)
Ok(())
}
}
3 changes: 0 additions & 3 deletions crates/db/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ repository.workspace = true
signet-node-types.workspace = true

signet-evm.workspace = true
signet-journal.workspace = true
signet-types.workspace = true
signet-zenith.workspace = true

Expand All @@ -28,8 +27,6 @@ reth-stages-types.workspace = true
itertools.workspace = true
serde.workspace = true
tracing.workspace = true
futures-util = "0.3.31"
tokio.workspace = true
auto_impl = "1.3.0"

[dev-dependencies]
Expand Down
2 changes: 1 addition & 1 deletion crates/db/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Node.
This library contains the following:

- Traits for reading and writing Signet events
- Table definitions for Signet Events, Headers, and JournalHashes
- Table definitions for Signet Events and Headers
- Helpers for reading, writing, reverting, Signet EVM blocks and headers

## Significant Traits
Expand Down
72 changes: 0 additions & 72 deletions crates/db/src/journal/ingestor.rs

This file was deleted.

10 changes: 0 additions & 10 deletions crates/db/src/journal/mod.rs

This file was deleted.

80 changes: 0 additions & 80 deletions crates/db/src/journal/provider.rs

This file was deleted.

55 changes: 0 additions & 55 deletions crates/db/src/journal/trait.rs

This file was deleted.

5 changes: 1 addition & 4 deletions crates/db/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,14 +23,11 @@ pub use consistency::ProviderConsistencyExt;
mod convert;
pub use convert::DataCompat;

pub mod journal;

mod provider;

mod tables;
pub use tables::{
DbEnter, DbEnterToken, DbSignetEvent, DbTransact, DbZenithHeader, JournalHashes, SignetEvents,
ZenithHeaders,
DbEnter, DbEnterToken, DbSignetEvent, DbTransact, DbZenithHeader, SignetEvents, ZenithHeaders,
};

mod traits;
Expand Down
Loading