From afe875f6fd05802c3916b297862469c0f4b647d9 Mon Sep 17 00:00:00 2001 From: Grga Date: Wed, 12 Nov 2025 13:12:43 +0100 Subject: [PATCH 1/3] Updated replayer address and first block slot --- .github/workflows/tests.yaml | 2 +- .gitignore | 2 +- node/testing/src/scenarios/solo_node/bootstrap.rs | 2 +- node/testing/tests/single_node.rs | 13 ++++++++++++- p2p/src/p2p_state.rs | 2 +- test.sh | 9 +++++++++ website/docs/developers/testing/scenario-tests.md | 2 +- 7 files changed, 26 insertions(+), 6 deletions(-) create mode 100644 test.sh diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 11401b8008..f43a1e4d28 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -578,7 +578,7 @@ jobs: # to allow connection with replayer # TODO: remove when replayer supports identify KEEP_CONNECTION_WITH_UNKNOWN_STREAM: true - REPLAYER_MULTIADDR: "/dns4/primary-tcp-proxy.hz.minaprotocol.network/tcp/40110/p2p/12D3KooWPayQEdprqY2m3biReUUybA5LoULpJE7YWu6wetEKKELv" + REPLAYER_MULTIADDR: "/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA" BPF_ALIAS: /coda/0.0.1/29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6-0.0.0.0 strategy: matrix: diff --git a/.gitignore b/.gitignore index 6c054a415c..0eaeb2b6d0 100644 --- a/.gitignore +++ b/.gitignore @@ -19,4 +19,4 @@ website/static/api-docs/ ledger/3.0.0mainnet ledger/berkeley-devnet mina-workdir -.idea/ \ No newline at end of file +.idea/ diff --git a/node/testing/src/scenarios/solo_node/bootstrap.rs b/node/testing/src/scenarios/solo_node/bootstrap.rs index 74f7a3adc1..36716e803d 100644 --- a/node/testing/src/scenarios/solo_node/bootstrap.rs +++ b/node/testing/src/scenarios/solo_node/bootstrap.rs @@ -22,7 +22,7 @@ pub struct SoloNodeBootstrap; // This test will fail if we don't start with this as the initial time because // the time validation for the first block will reject it. fn first_block_slot_timestamp_nanos(config: &RustNodeTestingConfig) -> u64 { - let first_block_global_slot = 46891; // Update if replay changes + let first_block_global_slot = 279218; // Update if replay changes let protocol_constants = config.genesis.protocol_constants().unwrap(); let genesis_timestamp_ms = protocol_constants.genesis_state_timestamp.0.as_u64(); let milliseconds_per_slot = constraint_constants().block_window_duration_ms; diff --git a/node/testing/tests/single_node.rs b/node/testing/tests/single_node.rs index c21042e3f8..7ea827bb87 100644 --- a/node/testing/tests/single_node.rs +++ b/node/testing/tests/single_node.rs @@ -28,8 +28,19 @@ scenario_test!( SoloNodeSyncRootSnarkedLedger ); +// TO RUN locally: +// export MINA_DISCOVERY_FILTER_ADDR=false +// export KEEP_CONNECTION_WITH_UNKNOWN_STREAM=true +// export REPLAYER_MULTIADDR=/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA +// export BPF_ALIAS=/coda/0.0.1/29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6-0.0.0.0 + + +// cargo test --release \ +// --package=mina-node-testing +// --package=cli -- \ +// --exact bootstrap_from_replayer +// --nocapture scenario_test!( - #[ignore = "investigate failure, see 1591"] bootstrap_from_replayer, SoloNodeBootstrap, SoloNodeBootstrap diff --git a/p2p/src/p2p_state.rs b/p2p/src/p2p_state.rs index 8edf9e5817..339aa143f2 100644 --- a/p2p/src/p2p_state.rs +++ b/p2p/src/p2p_state.rs @@ -74,7 +74,7 @@ impl P2pState { mina_core::log::info!( mina_core::log::system_time(); kind = "P2pState new", - summary = format!("Current node's id: {peer_id_str}"), + summary = format!("Current node's id: {my_id}"), peer_id_str = peer_id_str, ); } diff --git a/test.sh b/test.sh new file mode 100644 index 0000000000..d31b25409c --- /dev/null +++ b/test.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +export MINA_DISCOVERY_FILTER_ADDR=false +export KEEP_CONNECTION_WITH_UNKNOWN_STREAM=true +export REPLAYER_MULTIADDR=/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA +export BPF_ALIAS=/coda/0.0.1/29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6-0.0.0.0 + + +cargo test --release --package=mina-node-testing --package=cli -- --exact bootstrap_from_replayer --nocapture \ No newline at end of file diff --git a/website/docs/developers/testing/scenario-tests.md b/website/docs/developers/testing/scenario-tests.md index c064d14b8e..be2416fb78 100644 --- a/website/docs/developers/testing/scenario-tests.md +++ b/website/docs/developers/testing/scenario-tests.md @@ -450,7 +450,7 @@ For network connectivity in testing environments, you may need to configure: ```bash # Enable connection to replayer service (used in CI) -export REPLAYER_MULTIADDR="/dns4/primary-tcp-proxy.hz.minaprotocol.network/tcp/40110/p2p/12D3KooWPayQEdprqY2m3biReUUybA5LoULpJE7YWu6wetEKKELv" +export REPLAYER_MULTIADDR="/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA" # Allow local address discovery export MINA_DISCOVERY_FILTER_ADDR=false From bef0d334b653e1e3fd69bb0c823f744ab8b47c94 Mon Sep 17 00:00:00 2001 From: Grga Date: Wed, 12 Nov 2025 20:13:28 +0100 Subject: [PATCH 2/3] Update node/testing/tests/single_node.rs Co-authored-by: Danny Willems --- node/testing/tests/single_node.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/node/testing/tests/single_node.rs b/node/testing/tests/single_node.rs index 7ea827bb87..6be9ef0489 100644 --- a/node/testing/tests/single_node.rs +++ b/node/testing/tests/single_node.rs @@ -28,7 +28,8 @@ scenario_test!( SoloNodeSyncRootSnarkedLedger ); -// TO RUN locally: +// To run locally: +// ```bash // export MINA_DISCOVERY_FILTER_ADDR=false // export KEEP_CONNECTION_WITH_UNKNOWN_STREAM=true // export REPLAYER_MULTIADDR=/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA From 937ba61d2163d0cc0b0f0e95e494176882b4737b Mon Sep 17 00:00:00 2001 From: Grga Date: Fri, 21 Nov 2025 08:53:00 +0100 Subject: [PATCH 3/3] Update node/testing/tests/single_node.rs Co-authored-by: Danny Willems --- .github/workflows/tests.yaml | 2 +- node/testing/src/scenarios/solo_node/bootstrap.rs | 3 ++- node/testing/tests/single_node.rs | 5 ++--- test.sh | 9 --------- .../scripts/infrastructure/replayer-nodes.txt | 1 + website/docs/developers/testing/scenario-tests.md | 2 +- .../node-operators/infrastructure/replayer-nodes.mdx | 10 +++++++++- 7 files changed, 16 insertions(+), 16 deletions(-) delete mode 100644 test.sh create mode 100644 website/docs/developers/scripts/infrastructure/replayer-nodes.txt diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index f43a1e4d28..76c1d4dd5e 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -578,7 +578,7 @@ jobs: # to allow connection with replayer # TODO: remove when replayer supports identify KEEP_CONNECTION_WITH_UNKNOWN_STREAM: true - REPLAYER_MULTIADDR: "/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA" + REPLAYER_MULTIADDR: "/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWQi9rSWT2kmEavbEc5eP13nG1FRStMiERKZB3wPJSkNrE" BPF_ALIAS: /coda/0.0.1/29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6-0.0.0.0 strategy: matrix: diff --git a/node/testing/src/scenarios/solo_node/bootstrap.rs b/node/testing/src/scenarios/solo_node/bootstrap.rs index 36716e803d..a74dde3e32 100644 --- a/node/testing/src/scenarios/solo_node/bootstrap.rs +++ b/node/testing/src/scenarios/solo_node/bootstrap.rs @@ -22,7 +22,7 @@ pub struct SoloNodeBootstrap; // This test will fail if we don't start with this as the initial time because // the time validation for the first block will reject it. fn first_block_slot_timestamp_nanos(config: &RustNodeTestingConfig) -> u64 { - let first_block_global_slot = 279218; // Update if replay changes + let first_block_global_slot = 290000; // Update if replay changes let protocol_constants = config.genesis.protocol_constants().unwrap(); let genesis_timestamp_ms = protocol_constants.genesis_state_timestamp.0.as_u64(); let milliseconds_per_slot = constraint_constants().block_window_duration_ms; @@ -38,6 +38,7 @@ fn first_block_slot_timestamp_nanos(config: &RustNodeTestingConfig) -> u64 { impl SoloNodeBootstrap { pub async fn run(self, mut runner: ClusterRunner<'_>) { + std::env::set_var("MINA_DISCOVERY_FILTER_ADDR", "true"); use self::TransitionFrontierSyncState::*; const TIMEOUT: Duration = Duration::from_secs(60 * 40); diff --git a/node/testing/tests/single_node.rs b/node/testing/tests/single_node.rs index 6be9ef0489..91db326566 100644 --- a/node/testing/tests/single_node.rs +++ b/node/testing/tests/single_node.rs @@ -32,15 +32,14 @@ scenario_test!( // ```bash // export MINA_DISCOVERY_FILTER_ADDR=false // export KEEP_CONNECTION_WITH_UNKNOWN_STREAM=true -// export REPLAYER_MULTIADDR=/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA +// export REPLAYER_MULTIADDR=/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWQi9rSWT2kmEavbEc5eP13nG1FRStMiERKZB3wPJSkNrE // export BPF_ALIAS=/coda/0.0.1/29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6-0.0.0.0 - - // cargo test --release \ // --package=mina-node-testing // --package=cli -- \ // --exact bootstrap_from_replayer // --nocapture +// ``` scenario_test!( bootstrap_from_replayer, SoloNodeBootstrap, diff --git a/test.sh b/test.sh deleted file mode 100644 index d31b25409c..0000000000 --- a/test.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -export MINA_DISCOVERY_FILTER_ADDR=false -export KEEP_CONNECTION_WITH_UNKNOWN_STREAM=true -export REPLAYER_MULTIADDR=/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA -export BPF_ALIAS=/coda/0.0.1/29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6-0.0.0.0 - - -cargo test --release --package=mina-node-testing --package=cli -- --exact bootstrap_from_replayer --nocapture \ No newline at end of file diff --git a/website/docs/developers/scripts/infrastructure/replayer-nodes.txt b/website/docs/developers/scripts/infrastructure/replayer-nodes.txt new file mode 100644 index 0000000000..d87cecddeb --- /dev/null +++ b/website/docs/developers/scripts/infrastructure/replayer-nodes.txt @@ -0,0 +1 @@ +/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWQi9rSWT2kmEavbEc5eP13nG1FRStMiERKZB3wPJSkNrE \ No newline at end of file diff --git a/website/docs/developers/testing/scenario-tests.md b/website/docs/developers/testing/scenario-tests.md index be2416fb78..bb726feb47 100644 --- a/website/docs/developers/testing/scenario-tests.md +++ b/website/docs/developers/testing/scenario-tests.md @@ -450,7 +450,7 @@ For network connectivity in testing environments, you may need to configure: ```bash # Enable connection to replayer service (used in CI) -export REPLAYER_MULTIADDR="/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWNazk9D7RnbHFaPEfrL7BReAKr3rDRf7PivS2Lwx3ShAA" +export REPLAYER_MULTIADDR="/dns4/mina-rust-ci-1-libp2p.gcp.o1test.net/tcp/8302/p2p/12D3KooWQi9rSWT2kmEavbEc5eP13nG1FRStMiERKZB3wPJSkNrE" # Allow local address discovery export MINA_DISCOVERY_FILTER_ADDR=false diff --git a/website/docs/node-operators/infrastructure/replayer-nodes.mdx b/website/docs/node-operators/infrastructure/replayer-nodes.mdx index df9f10679b..b96ed198d7 100644 --- a/website/docs/node-operators/infrastructure/replayer-nodes.mdx +++ b/website/docs/node-operators/infrastructure/replayer-nodes.mdx @@ -4,6 +4,9 @@ description: o1Labs replayer nodes for debugging and verification sidebar_position: 7 --- +import CodeBlock from "@theme/CodeBlock"; +import ReplayerNodesList from "!!raw-loader!../../developers/scripts/infrastructure/replayer-nodes.txt"; + # Replayer Nodes This section is still a work in progress. It will cover nodes running with @@ -15,4 +18,9 @@ replaying node execution, see the [Replayer documentation](/docs/developers/testing/replayer) in the developers testing section. -Track progress: [Issue #1619](https://github.com/o1-labs/mina-rust/issues/1619) + + {ReplayerNodesList} +