Skip to content

Commit 785172b

Browse files
committed
feat: implements simulation for block building
1 parent e0c79f7 commit 785172b

File tree

4 files changed

+119
-289
lines changed

4 files changed

+119
-289
lines changed

Cargo.toml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,12 @@ path = "bin/submit_transaction.rs"
2424
[dependencies]
2525
init4-bin-base = { git = "https://github.com/init4tech/bin-base.git" }
2626

27-
signet-bundle = { git = "https://github.com/init4tech/signet-sdk", branch = "main" }
28-
signet-types = { git = "https://github.com/init4tech/signet-sdk", branch = "main" }
29-
signet-zenith = { git = "https://github.com/init4tech/signet-sdk", branch = "main" }
27+
signet-zenith = { git = "https://github.com/init4tech/signet-sdk", branch = "prestwich/sim-crate" }
28+
signet-types = { git = "https://github.com/init4tech/signet-sdk", branch = "prestwich/sim-crate" }
29+
signet-bundle = { git = "https://github.com/init4tech/signet-sdk", branch = "prestwich/sim-crate" }
30+
signet-sim = { git = "https://github.com/init4tech/signet-sdk", branch = "prestwich/sim-crate" }
31+
32+
trevm = { version = "0.20.10", features = ["concurrent-db", "test-utils"] }
3033

3134
alloy = { version = "0.12.6", features = [
3235
"full",

bin/builder.rs

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
1-
#![allow(dead_code)]
2-
3-
use builder::config::BuilderConfig;
4-
use builder::service::serve_builder_with_span;
5-
use builder::tasks::block::BlockBuilder;
6-
use builder::tasks::metrics::MetricsTask;
7-
use builder::tasks::oauth::Authenticator;
8-
use builder::tasks::submit::SubmitTask;
9-
1+
use builder::{
2+
config::BuilderConfig,
3+
service::serve_builder_with_span,
4+
tasks::{
5+
block::BlockBuilder, bundler, metrics::MetricsTask, oauth::Authenticator,
6+
submit::SubmitTask, tx_poller,
7+
},
8+
};
109
use tokio::select;
1110

1211
#[tokio::main]
@@ -39,14 +38,28 @@ async fn main() -> eyre::Result<()> {
3938
outbound_tx_channel: tx_channel,
4039
};
4140

41+
let tx_poller = tx_poller::TxPoller::new(&config);
42+
let (tx_receiver, tx_poller_jh) = tx_poller.spawn();
43+
44+
let bundle_poller = bundler::BundlePoller::new(&config, authenticator.clone());
45+
let (bundle_receiver, bundle_poller_jh) = bundle_poller.spawn();
46+
4247
let authenticator_jh = authenticator.spawn();
48+
4349
let (submit_channel, submit_jh) = submit.spawn();
44-
let build_jh = builder.spawn(submit_channel);
50+
51+
let build_jh = builder.spawn(ru_provider, tx_receiver, bundle_receiver, submit_channel);
4552

4653
let port = config.builder_port;
4754
let server = serve_builder_with_span(([0, 0, 0, 0], port), span);
4855

4956
select! {
57+
_ = tx_poller_jh => {
58+
tracing::info!("tx_poller finished");
59+
},
60+
_ = bundle_poller_jh => {
61+
tracing::info!("bundle_poller finished");
62+
},
5063
_ = submit_jh => {
5164
tracing::info!("submit finished");
5265
},

0 commit comments

Comments
 (0)