[INFO] cloning repository https://github.com/tomas-rampas/raft-consensus-poc [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tomas-rampas/raft-consensus-poc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomas-rampas%2Fraft-consensus-poc", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomas-rampas%2Fraft-consensus-poc'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4579047e815845c9493133ba0b6b4f46c54bb8d5 [INFO] testing tomas-rampas/raft-consensus-poc against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftomas-rampas%2Fraft-consensus-poc" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tomas-rampas/raft-consensus-poc [INFO] finished tweaking git repo https://github.com/tomas-rampas/raft-consensus-poc [INFO] tweaked toml for git repo https://github.com/tomas-rampas/raft-consensus-poc written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tomas-rampas/raft-consensus-poc on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/tomas-rampas/raft-consensus-poc already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 681976eeffd5eedb914328eb8173523bea5d30b20801b81eaadef32a6a28740d [INFO] running `Command { std: "docker" "start" "-a" "681976eeffd5eedb914328eb8173523bea5d30b20801b81eaadef32a6a28740d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "681976eeffd5eedb914328eb8173523bea5d30b20801b81eaadef32a6a28740d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "681976eeffd5eedb914328eb8173523bea5d30b20801b81eaadef32a6a28740d", kill_on_drop: false }` [INFO] [stdout] 681976eeffd5eedb914328eb8173523bea5d30b20801b81eaadef32a6a28740d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0521dffdc7abc5736752191c74b4347073d973d4ca4628fdcf951019f458eb6d [INFO] running `Command { std: "docker" "start" "-a" "0521dffdc7abc5736752191c74b4347073d973d4ca4628fdcf951019f458eb6d", kill_on_drop: false }` [INFO] [stderr] Compiling smallvec v1.15.1 [INFO] [stderr] Compiling bytes v1.10.1 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Compiling httparse v1.10.1 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling slab v0.4.10 [INFO] [stderr] Compiling syn v2.0.104 [INFO] [stderr] Compiling mio v1.0.4 [INFO] [stderr] Compiling signal-hook-registry v1.4.6 [INFO] [stderr] Compiling socket2 v0.6.0 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling tracing-core v0.1.34 [INFO] [stderr] Compiling utf-8 v0.7.6 [INFO] [stderr] Compiling data-encoding v2.9.0 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling hashbrown v0.15.4 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling multer v2.1.0 [INFO] [stderr] Compiling regex-syntax v0.8.5 [INFO] [stderr] Compiling serde_json v1.0.142 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling memchr v2.7.5 [INFO] [stderr] Compiling mime_guess v2.0.5 [INFO] [stderr] Compiling socket2 v0.5.10 [INFO] [stderr] Compiling encoding_rs v0.8.35 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling parking_lot v0.12.4 [INFO] [stderr] Compiling tracing-log v0.2.0 [INFO] [stderr] Compiling thread_local v1.1.9 [INFO] [stderr] Compiling iana-time-zone v0.1.63 [INFO] [stderr] Compiling indexmap v2.10.0 [INFO] [stderr] Compiling http v0.2.12 [INFO] [stderr] Compiling http v1.3.1 [INFO] [stderr] Compiling http-body v0.4.6 [INFO] [stderr] Compiling headers-core v0.2.0 [INFO] [stderr] Compiling headers v0.3.9 [INFO] [stderr] Compiling regex-automata v0.4.9 [INFO] [stderr] Compiling regex v1.11.1 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling tracing-attributes v0.1.30 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling tokio v1.47.1 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling pin-project v1.1.10 [INFO] [stderr] Compiling yoke v0.8.0 [INFO] [stderr] Compiling zerotrie v0.2.2 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling tracing-subscriber v0.3.19 [INFO] [stderr] Compiling zerovec v0.11.3 [INFO] [stderr] Compiling tinystr v0.8.1 [INFO] [stderr] Compiling potential_utf v0.1.2 [INFO] [stderr] Compiling icu_locale_core v2.0.0 [INFO] [stderr] Compiling icu_collections v2.0.0 [INFO] [stderr] Compiling icu_provider v2.0.0 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling icu_properties v2.0.1 [INFO] [stderr] Compiling icu_normalizer v2.0.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.0.3 [INFO] [stderr] Compiling url v2.5.4 [INFO] [stderr] Compiling tokio-util v0.7.16 [INFO] [stderr] Compiling tungstenite v0.21.0 [INFO] [stderr] Compiling tungstenite v0.20.1 [INFO] [stderr] Compiling h2 v0.3.27 [INFO] [stderr] Compiling tokio-tungstenite v0.20.1 [INFO] [stderr] Compiling serde_urlencoded v0.7.1 [INFO] [stderr] Compiling chrono v0.4.41 [INFO] [stderr] Compiling tokio-tungstenite v0.21.0 [INFO] [stderr] Compiling hyper v0.14.32 [INFO] [stderr] Compiling warp v0.3.7 [INFO] [stderr] Compiling raft-poc v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field `last_applied` is never read [INFO] [stdout] --> src/raft/core.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct VolatileState { [INFO] [stdout] | ------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 81 | pub last_applied: u64, [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `VolatileState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `proposed_index` and `created_at` are never read [INFO] [stdout] --> src/raft/core.rs:104:9 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct PendingProposal { [INFO] [stdout] | --------------- fields in this struct [INFO] [stdout] 103 | /// The log index where this proposal would be placed if committed [INFO] [stdout] 104 | pub proposed_index: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 112 | pub created_at: Instant, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PendingProposal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_election_timeout` is never used [INFO] [stdout] --> src/raft/core.rs:231:12 [INFO] [stdout] | [INFO] [stdout] 195 | impl Node { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn set_election_timeout(&mut self, timeout_ms: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_pending_proposals` is never used [INFO] [stdout] --> src/raft/algorithm.rs:348:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl Node { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 348 | pub fn get_pending_proposals(&self) -> Vec<(u64, &crate::raft::core::PendingProposal)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `to` is never read [INFO] [stdout] --> src/raft/rpc.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 130 | AppendEntriesResponse { [INFO] [stdout] | --------------------- field in this variant [INFO] [stdout] ... [INFO] [stdout] 134 | to: NodeId, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `RpcMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `to` is never read [INFO] [stdout] --> src/raft/rpc.rs:152:9 [INFO] [stdout] | [INFO] [stdout] 148 | RequestVoteResponse { [INFO] [stdout] | ------------------- field in this variant [INFO] [stdout] ... [INFO] [stdout] 152 | to: NodeId, [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = note: `RpcMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `from` is never read [INFO] [stdout] --> src/raft/rpc.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 157 | ClientCommand { [INFO] [stdout] | ------------- field in this variant [INFO] [stdout] 158 | /// ID of the client (or simulation controller) [INFO] [stdout] 159 | from: NodeId, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RpcMessage` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `from`, `to`, and `message_type` are never used [INFO] [stdout] --> src/raft/rpc.rs:198:12 [INFO] [stdout] | [INFO] [stdout] 167 | impl RpcMessage { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 198 | pub fn from(&self) -> NodeId { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 209 | pub fn to(&self) -> NodeId { [INFO] [stdout] | ^^ [INFO] [stdout] ... [INFO] [stdout] 220 | pub fn message_type(&self) -> &'static str { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NodeHandle` is never constructed [INFO] [stdout] --> src/raft/simulation.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct NodeHandle { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `send`, and `create_pair` are never used [INFO] [stdout] --> src/raft/simulation.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl NodeHandle { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 24 | /// Creates a new NodeHandle with unbounded channels [INFO] [stdout] 25 | pub fn new(node_id: NodeId) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn send(&self, message: RpcMessage) -> Result<(), mpsc::error::SendError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn create_pair(node_id1: NodeId, node_id2: NodeId) -> (Self, Self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `all_node_ids` is never used [INFO] [stdout] --> src/raft/simulation.rs:116:12 [INFO] [stdout] | [INFO] [stdout] 56 | impl ClusterChannels { [INFO] [stdout] | -------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 116 | pub fn all_node_ids(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receiver_count` and `get_stats` are never used [INFO] [stdout] --> src/raft/events.rs:619:12 [INFO] [stdout] | [INFO] [stdout] 502 | impl EventBroadcaster { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 619 | pub fn receiver_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 624 | pub fn get_stats(&self) -> EventBroadcasterStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventBroadcasterStats` is never constructed [INFO] [stdout] --> src/raft/events.rs:641:12 [INFO] [stdout] | [INFO] [stdout] 641 | pub struct EventBroadcasterStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_websocket_server` is never used [INFO] [stdout] --> src/raft/websocket.rs:558:14 [INFO] [stdout] | [INFO] [stdout] 558 | pub async fn spawn_websocket_server( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 06s [INFO] running `Command { std: "docker" "inspect" "0521dffdc7abc5736752191c74b4347073d973d4ca4628fdcf951019f458eb6d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0521dffdc7abc5736752191c74b4347073d973d4ca4628fdcf951019f458eb6d", kill_on_drop: false }` [INFO] [stdout] 0521dffdc7abc5736752191c74b4347073d973d4ca4628fdcf951019f458eb6d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c94f11bc88c92e4a714a5f5ef21142721af553f85afd619b1a00ce8a9ab0ea90 [INFO] running `Command { std: "docker" "start" "-a" "c94f11bc88c92e4a714a5f5ef21142721af553f85afd619b1a00ce8a9ab0ea90", kill_on_drop: false }` [INFO] [stderr] Compiling raft-poc v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `EventBroadcaster` and `RaftEventType` [INFO] [stdout] --> src/raft/websocket.rs:603:31 [INFO] [stdout] | [INFO] [stdout] 603 | use crate::raft::events::{EventBroadcaster, RaftEventType}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LogEntry` and `NodeId` [INFO] [stdout] --> src/raft/tests.rs:214:30 [INFO] [stdout] | [INFO] [stdout] 214 | use super::super::core::{LogEntry, NodeId}; [INFO] [stdout] | ^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::super::rpc::*` [INFO] [stdout] --> src/raft/tests.rs:376:9 [INFO] [stdout] | [INFO] [stdout] 376 | use super::super::rpc::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokio::time::Duration` [INFO] [stdout] --> src/raft/tests.rs:378:9 [INFO] [stdout] | [INFO] [stdout] 378 | use tokio::time::Duration; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `super::super::events::EventBroadcaster` [INFO] [stdout] --> src/raft/integration_tests.rs:4:9 [INFO] [stdout] | [INFO] [stdout] 4 | use super::super::events::EventBroadcaster; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/raft/integration_tests.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `timeout` [INFO] [stdout] --> src/raft/integration_tests.rs:8:40 [INFO] [stdout] | [INFO] [stdout] 8 | use tokio::time::{Duration, sleep, timeout}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cluster_channels` [INFO] [stdout] --> src/raft/integration_tests.rs:324:14 [INFO] [stdout] | [INFO] [stdout] 324 | let (cluster_channels, _event_broadcaster, join_handles) = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_channels` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cluster_channels` [INFO] [stdout] --> src/raft/integration_tests.rs:353:14 [INFO] [stdout] | [INFO] [stdout] 353 | let (cluster_channels, _event_broadcaster, join_handles) = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_channels` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `cluster_channels` [INFO] [stdout] --> src/raft/integration_tests.rs:574:14 [INFO] [stdout] | [INFO] [stdout] 574 | let (cluster_channels, _event_broadcaster, join_handles) = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_channels` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `created_at` is never read [INFO] [stdout] --> src/raft/core.rs:112:9 [INFO] [stdout] | [INFO] [stdout] 102 | pub struct PendingProposal { [INFO] [stdout] | --------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 112 | pub created_at: Instant, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `PendingProposal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `set_election_timeout` is never used [INFO] [stdout] --> src/raft/core.rs:231:12 [INFO] [stdout] | [INFO] [stdout] 195 | impl Node { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 231 | pub fn set_election_timeout(&mut self, timeout_ms: u64) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get_pending_proposals` is never used [INFO] [stdout] --> src/raft/algorithm.rs:348:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl Node { [INFO] [stdout] | --------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 348 | pub fn get_pending_proposals(&self) -> Vec<(u64, &crate::raft::core::PendingProposal)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `NodeHandle` is never constructed [INFO] [stdout] --> src/raft/simulation.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 14 | pub struct NodeHandle { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `send`, and `create_pair` are never used [INFO] [stdout] --> src/raft/simulation.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl NodeHandle { [INFO] [stdout] | --------------- associated items in this implementation [INFO] [stdout] 24 | /// Creates a new NodeHandle with unbounded channels [INFO] [stdout] 25 | pub fn new(node_id: NodeId) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 35 | pub fn send(&self, message: RpcMessage) -> Result<(), mpsc::error::SendError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub fn create_pair(node_id1: NodeId, node_id2: NodeId) -> (Self, Self) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `receiver_count` and `get_stats` are never used [INFO] [stdout] --> src/raft/events.rs:619:12 [INFO] [stdout] | [INFO] [stdout] 502 | impl EventBroadcaster { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 619 | pub fn receiver_count(&self) -> usize { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 624 | pub fn get_stats(&self) -> EventBroadcasterStats { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EventBroadcasterStats` is never constructed [INFO] [stdout] --> src/raft/events.rs:641:12 [INFO] [stdout] | [INFO] [stdout] 641 | pub struct EventBroadcasterStats { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `spawn_websocket_server` is never used [INFO] [stdout] --> src/raft/websocket.rs:558:14 [INFO] [stdout] | [INFO] [stdout] 558 | pub async fn spawn_websocket_server( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wait_for_leader_election` is never used [INFO] [stdout] --> src/raft/integration_tests.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 12 | async fn wait_for_leader_election( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 7.50s [INFO] running `Command { std: "docker" "inspect" "c94f11bc88c92e4a714a5f5ef21142721af553f85afd619b1a00ce8a9ab0ea90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c94f11bc88c92e4a714a5f5ef21142721af553f85afd619b1a00ce8a9ab0ea90", kill_on_drop: false }` [INFO] [stdout] c94f11bc88c92e4a714a5f5ef21142721af553f85afd619b1a00ce8a9ab0ea90 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7e64b24537fc16528fd3639b9d5b1180b5b24869d29f6ca3a9ddc939767ea7dd [INFO] running `Command { std: "docker" "start" "-a" "7e64b24537fc16528fd3639b9d5b1180b5b24869d29f6ca3a9ddc939767ea7dd", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `EventBroadcaster` and `RaftEventType` [INFO] [stderr] --> src/raft/websocket.rs:603:31 [INFO] [stderr] | [INFO] [stderr] 603 | use crate::raft::events::{EventBroadcaster, RaftEventType}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `LogEntry` and `NodeId` [INFO] [stderr] --> src/raft/tests.rs:214:30 [INFO] [stderr] | [INFO] [stderr] 214 | use super::super::core::{LogEntry, NodeId}; [INFO] [stderr] | ^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::super::rpc::*` [INFO] [stderr] --> src/raft/tests.rs:376:9 [INFO] [stderr] | [INFO] [stderr] 376 | use super::super::rpc::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `tokio::time::Duration` [INFO] [stderr] --> src/raft/tests.rs:378:9 [INFO] [stderr] | [INFO] [stderr] 378 | use tokio::time::Duration; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `super::super::events::EventBroadcaster` [INFO] [stderr] --> src/raft/integration_tests.rs:4:9 [INFO] [stderr] | [INFO] [stderr] 4 | use super::super::events::EventBroadcaster; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/raft/integration_tests.rs:7:9 [INFO] [stderr] | [INFO] [stderr] 7 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `timeout` [INFO] [stderr] --> src/raft/integration_tests.rs:8:40 [INFO] [stderr] | [INFO] [stderr] 8 | use tokio::time::{Duration, sleep, timeout}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cluster_channels` [INFO] [stderr] --> src/raft/integration_tests.rs:324:14 [INFO] [stderr] | [INFO] [stderr] 324 | let (cluster_channels, _event_broadcaster, join_handles) = [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_channels` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cluster_channels` [INFO] [stderr] --> src/raft/integration_tests.rs:353:14 [INFO] [stderr] | [INFO] [stderr] 353 | let (cluster_channels, _event_broadcaster, join_handles) = [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_channels` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `cluster_channels` [INFO] [stderr] --> src/raft/integration_tests.rs:574:14 [INFO] [stderr] | [INFO] [stderr] 574 | let (cluster_channels, _event_broadcaster, join_handles) = [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cluster_channels` [INFO] [stderr] [INFO] [stderr] warning: field `created_at` is never read [INFO] [stderr] --> src/raft/core.rs:112:9 [INFO] [stderr] | [INFO] [stderr] 102 | pub struct PendingProposal { [INFO] [stderr] | --------------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 112 | pub created_at: Instant, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `PendingProposal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: method `set_election_timeout` is never used [INFO] [stderr] --> src/raft/core.rs:231:12 [INFO] [stderr] | [INFO] [stderr] 195 | impl Node { [INFO] [stderr] | --------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 231 | pub fn set_election_timeout(&mut self, timeout_ms: u64) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `get_pending_proposals` is never used [INFO] [stderr] --> src/raft/algorithm.rs:348:12 [INFO] [stderr] | [INFO] [stderr] 18 | impl Node { [INFO] [stderr] | --------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 348 | pub fn get_pending_proposals(&self) -> Vec<(u64, &crate::raft::core::PendingProposal)> { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `NodeHandle` is never constructed [INFO] [stderr] --> src/raft/simulation.rs:14:12 [INFO] [stderr] | [INFO] [stderr] 14 | pub struct NodeHandle { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `new`, `send`, and `create_pair` are never used [INFO] [stderr] --> src/raft/simulation.rs:25:12 [INFO] [stderr] | [INFO] [stderr] 23 | impl NodeHandle { [INFO] [stderr] | --------------- associated items in this implementation [INFO] [stderr] 24 | /// Creates a new NodeHandle with unbounded channels [INFO] [stderr] 25 | pub fn new(node_id: NodeId) -> Self { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 35 | pub fn send(&self, message: RpcMessage) -> Result<(), mpsc::error::SendError> { [INFO] [stderr] | ^^^^ [INFO] [stderr] ... [INFO] [stderr] 40 | pub fn create_pair(node_id1: NodeId, node_id2: NodeId) -> (Self, Self) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `receiver_count` and `get_stats` are never used [INFO] [stderr] --> src/raft/events.rs:619:12 [INFO] [stderr] | [INFO] [stderr] 502 | impl EventBroadcaster { [INFO] [stderr] | --------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 619 | pub fn receiver_count(&self) -> usize { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 624 | pub fn get_stats(&self) -> EventBroadcasterStats { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `EventBroadcasterStats` is never constructed [INFO] [stderr] --> src/raft/events.rs:641:12 [INFO] [stderr] | [INFO] [stderr] 641 | pub struct EventBroadcasterStats { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `spawn_websocket_server` is never used [INFO] [stderr] --> src/raft/websocket.rs:558:14 [INFO] [stderr] | [INFO] [stderr] 558 | pub async fn spawn_websocket_server( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `wait_for_leader_election` is never used [INFO] [stderr] --> src/raft/integration_tests.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 12 | async fn wait_for_leader_election( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `raft-poc` (bin "raft-poc" test) generated 19 warnings (run `cargo fix --bin "raft-poc" --tests` to apply 7 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/raft_poc-a295aac823063056) [INFO] [stdout] [INFO] [stdout] running 48 tests [INFO] [stdout] 2025-09-01T06:31:39.916740Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting commit index advancement test [INFO] [stdout] 2025-09-01T06:31:39.916852Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 5 nodes [INFO] [stdout] test raft::events::tests::test_event_creation ... ok [INFO] [stdout] test raft::events::tests::test_event_broadcaster ... ok [INFO] [stdout] test raft::events::tests::test_event_deduplication_time_window ... ok [INFO] [stdout] test raft::events::tests::test_event_deduplication ... ok [INFO] [stdout] test raft::events::tests::test_event_serialization ... ok [INFO] [stdout] 2025-09-01T06:31:39.917197Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting heartbeat maintenance test [INFO] [stdout] 2025-09-01T06:31:39.917222Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.917295Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.917361Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting proposal rejection cases test [INFO] [stdout] 2025-09-01T06:31:39.917369Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.917377Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.917382Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.917416Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 3 [INFO] [stdout] 2025-09-01T06:31:39.917428Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 4 [INFO] [stdout] 2025-09-01T06:31:39.917443Z  INFO raft_poc::raft::simulation: โœ… All 5 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.917473Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.918903Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting proposal consensus flow test for visualization [INFO] [stdout] 2025-09-01T06:31:39.918932Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.918942Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting leader election test with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.918976Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.916758Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting detailed election process test for visualization [INFO] [stdout] 2025-09-01T06:31:39.919106Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.917472Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting normal cluster operation test [INFO] [stdout] 2025-09-01T06:31:39.919159Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.917517Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.919227Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.919255Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.919273Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 3 started as Follower node_id=3 [INFO] [stdout] 2025-09-01T06:31:39.919305Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.919306Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 4 started as Follower node_id=4 [INFO] [stdout] 2025-09-01T06:31:39.919343Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.919354Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.917590Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.919364Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.919377Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned, waiting for leader election [INFO] [stdout] 2025-09-01T06:31:39.919395Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.919409Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.919406Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.919411Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.919418Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.919430Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned, waiting for leader election [INFO] [stdout] 2025-09-01T06:31:39.919438Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.919449Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.919452Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.919449Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.919473Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.919481Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.919499Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.919508Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.919512Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.919522Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.919535Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned, waiting for leader election and heartbeat establishment [INFO] [stdout] 2025-09-01T06:31:39.916798Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting concurrent proposals test [INFO] [stdout] 2025-09-01T06:31:39.919559Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.919573Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.917862Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting leader election test with 5 nodes [INFO] [stdout] 2025-09-01T06:31:39.919646Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 5 nodes [INFO] [stdout] 2025-09-01T06:31:39.918215Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting network partition recovery test [INFO] [stdout] 2025-09-01T06:31:39.919734Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 5 nodes [INFO] [stdout] 2025-09-01T06:31:39.919781Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.919816Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.919846Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.919856Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.919900Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.919937Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.919970Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.919987Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.918663Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting split vote resolution test [INFO] [stdout] 2025-09-01T06:31:39.920017Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 4 nodes [INFO] [stdout] 2025-09-01T06:31:39.920165Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.920226Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.920246Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.920279Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.920290Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.920300Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 3 [INFO] [stdout] 2025-09-01T06:31:39.920336Z  INFO raft_poc::raft::simulation: โœ… All 4 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.920350Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… 4-node cluster spawned [INFO] [stdout] 2025-09-01T06:31:39.920354Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.920374Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.920377Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.920390Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.920400Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.920401Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.920421Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.920422Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.920438Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 3 started as Follower node_id=3 [INFO] [stdout] 2025-09-01T06:31:39.919620Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.920263Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.919474Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.918502Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting election timeout ranges test [INFO] [stdout] 2025-09-01T06:31:39.920535Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.918401Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting split vote test with 4 nodes [INFO] [stdout] 2025-09-01T06:31:39.920592Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 4 nodes [INFO] [stdout] 2025-09-01T06:31:39.919991Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.920646Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.920659Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 3 [INFO] [stdout] 2025-09-01T06:31:39.920671Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 4 [INFO] [stdout] 2025-09-01T06:31:39.920682Z  INFO raft_poc::raft::simulation: โœ… All 5 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.920728Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… 5-node cluster spawned, establishing stable leadership [INFO] [stdout] 2025-09-01T06:31:39.920765Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.920813Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.920870Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.920908Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 3 started as Follower node_id=3 [INFO] [stdout] 2025-09-01T06:31:39.920935Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 4 started as Follower node_id=4 [INFO] [stdout] 2025-09-01T06:31:39.921007Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned, waiting for natural election [INFO] [stdout] 2025-09-01T06:31:39.921030Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.921060Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.921086Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.921230Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.921260Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.921273Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.921284Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.921298Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned, waiting for leader election [INFO] [stdout] 2025-09-01T06:31:39.921328Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.921359Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.921396Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.921694Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.921726Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.921739Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.921750Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.921763Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned for timeout testing [INFO] [stdout] 2025-09-01T06:31:39.921786Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.921826Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.921849Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.918303Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting leader forwarding test [INFO] [stdout] 2025-09-01T06:31:39.921997Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 5 nodes [INFO] [stdout] 2025-09-01T06:31:39.922127Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.922153Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.922165Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.922177Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 3 [INFO] [stdout] 2025-09-01T06:31:39.922195Z  INFO raft_poc::raft::simulation: โœ… All 4 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.922219Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.922247Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.922250Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.922264Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.922276Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.922280Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 3 started as Follower node_id=3 [INFO] [stdout] 2025-09-01T06:31:39.922288Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.922298Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 3 [INFO] [stdout] 2025-09-01T06:31:39.922308Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 4 [INFO] [stdout] 2025-09-01T06:31:39.920487Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.920451Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.927107Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.930037Z  INFO raft_poc::raft::simulation: โœ… All 5 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.930091Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… 5-node cluster spawned, waiting for leader election [INFO] [stdout] 2025-09-01T06:31:39.930135Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.930175Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.930201Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.930226Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 3 started as Follower node_id=3 [INFO] [stdout] 2025-09-01T06:31:39.930274Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 4 started as Follower node_id=4 [INFO] [stdout] 2025-09-01T06:31:39.931004Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 3 [INFO] [stdout] 2025-09-01T06:31:39.931128Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 4 [INFO] [stdout] 2025-09-01T06:31:39.935030Z  INFO raft_poc::raft::simulation: โœ… All 5 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.936040Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.937017Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.937463Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.937657Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 3 started as Follower node_id=3 [INFO] [stdout] 2025-09-01T06:31:39.937751Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 4 started as Follower node_id=4 [INFO] [stdout] 2025-09-01T06:31:39.941334Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting heartbeat failure detection test [INFO] [stdout] 2025-09-01T06:31:39.941366Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.941653Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.941689Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.941702Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.941712Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.941727Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Cluster spawned, waiting for stable leadership [INFO] [stdout] 2025-09-01T06:31:39.941765Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.942104Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿงช Starting log replication test [INFO] [stdout] 2025-09-01T06:31:39.942145Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:39.942372Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:39.942396Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:39.942407Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:39.942418Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] 2025-09-01T06:31:39.942440Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 0 started as Follower node_id=0 [INFO] [stdout] 2025-09-01T06:31:39.942477Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.942502Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:39.942582Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 1 started as Follower node_id=1 [INFO] [stdout] 2025-09-01T06:31:39.942608Z  INFO raft_poc::raft::simulation: ๐ŸŸข Node 2 started as Follower node_id=2 [INFO] [stdout] 2025-09-01T06:31:41.919320Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'test_commit_0' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:41.921160Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Election period completed, checking for leader [INFO] [stdout] 2025-09-01T06:31:41.921195Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Leader election test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_leader_election_3_nodes ... ok [INFO] [stdout] 2025-09-01T06:31:41.921826Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.921869Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=1 [INFO] [stdout] test raft::tests::algorithm_tests::test_become_candidate ... ok [INFO] [stdout] 2025-09-01T06:31:41.922207Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 0 with majority votes! node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.922274Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=1 [INFO] [stdout] test raft::tests::algorithm_tests::test_become_leader ... ok [INFO] [stdout] 2025-09-01T06:31:41.922538Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 0 with majority votes! node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.923990Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.924072Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'cmd1' โ†’ pending proposal at index 1 (term 0) | Need 2/3 acks for consensus node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.924115Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 1 achieved consensus โ†’ moving to committed log node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.924146Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'cmd1' committed to log at index 1 (term 0) | Acknowledged by: [1] node_id=1 [INFO] [stdout] test raft::tests::algorithm_tests::test_client_submit ... ok [INFO] [stdout] 2025-09-01T06:31:41.925074Z  INFO raft_poc::raft::algorithm: Updating term from 0 to 1 due to AppendEntries from leader 0 node_id=1 [INFO] [stdout] test raft::tests::algorithm_tests::test_handle_append_entries_basic ... ok [INFO] [stdout] test raft::tests::algorithm_tests::test_handle_request_vote_basic ... ok [INFO] [stdout] test raft::tests::core_tests::test_client_submit_as_follower ... ok [INFO] [stdout] 2025-09-01T06:31:41.926421Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'test command' โ†’ pending proposal at index 1 (term 0) | Need 2/3 acks for consensus node_id=0 [INFO] [stdout] test raft::tests::core_tests::test_client_submit_as_leader ... ok [INFO] [stdout] 2025-09-01T06:31:41.926738Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'test command' โ†’ pending proposal at index 1 (term 1) | Need 2/3 acks for consensus node_id=0 [INFO] [stdout] 2025-09-01T06:31:41.926769Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 1 achieved consensus โ†’ moving to committed log node_id=0 [INFO] [stdout] 2025-09-01T06:31:41.926780Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'test command' committed to log at index 1 (term 1) | Acknowledged by: [0] node_id=0 [INFO] [stdout] test raft::tests::core_tests::test_commit_proposal ... ok [INFO] [stdout] test raft::tests::core_tests::test_election_timeout ... ok [INFO] [stdout] 2025-09-01T06:31:41.934152Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 0 with majority votes! node_id=0 [INFO] [stdout] 2025-09-01T06:31:41.934206Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=0 [INFO] [stdout] test raft::tests::core_tests::test_heartbeat_timing ... ok [INFO] [stdout] test raft::tests::core_tests::test_last_log_index_and_term ... ok [INFO] [stdout] test raft::tests::core_tests::test_leader_volatile_state_initialization ... ok [INFO] [stdout] test raft::tests::core_tests::test_log_entry_creation ... ok [INFO] [stdout] test raft::tests::core_tests::test_log_term_retrieval ... ok [INFO] [stdout] test raft::tests::core_tests::test_node_creation ... ok [INFO] [stdout] test raft::tests::core_tests::test_pending_proposal_acknowledgments ... ok [INFO] [stdout] test raft::tests::core_tests::test_pending_proposal_creation ... ok [INFO] [stdout] test raft::tests::core_tests::test_persistent_state_default ... ok [INFO] [stdout] 2025-09-01T06:31:41.943257Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'command1' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:41.944601Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'command2' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:41.945563Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'command3' by Follower 2 (WILL REJECT) node_id=2 [INFO] [stdout] test raft::tests::core_tests::test_volatile_state_default ... ok [INFO] [stdout] test raft::tests::rpc_tests::test_append_entries_request_creation ... ok [INFO] [stdout] test raft::tests::rpc_tests::test_request_vote_request_creation ... ok [INFO] [stdout] test raft::tests::rpc_tests::test_rpc_message_append_entries_request ... ok [INFO] [stdout] test raft::tests::rpc_tests::test_rpc_message_client_command ... ok [INFO] [stdout] test raft::tests::simulation_tests::test_cluster_channels_creation ... ok [INFO] [stdout] 2025-09-01T06:31:41.949739Z  INFO raft_poc::raft::simulation: ๐ŸŽ† Creating cluster with 3 nodes [INFO] [stdout] 2025-09-01T06:31:41.950027Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 0 [INFO] [stdout] 2025-09-01T06:31:41.950064Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 1 [INFO] [stdout] 2025-09-01T06:31:41.950077Z  INFO raft_poc::raft::simulation: ๐Ÿš€ Spawning node 2 [INFO] [stdout] 2025-09-01T06:31:41.950090Z  INFO raft_poc::raft::simulation: โœ… All 3 nodes spawned successfully [INFO] [stdout] test raft::tests::simulation_tests::test_spawn_cluster ... ok [INFO] [stdout] test raft::websocket::tests::test_event_serialization ... ok [INFO] [stdout] test raft::websocket::tests::test_websocket_config ... ok [INFO] [stdout] 2025-09-01T06:31:42.019785Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'test_commit_1' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.121288Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'test_commit_2' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.221698Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'test_commit_3' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.323289Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'test_commit_4' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.434418Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.434509Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.434537Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.434567Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 4 nodes for term 1 (need 3/5 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.434622Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 4 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.477085Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.477165Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.477187Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.477209Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.477239Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.655206Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.655288Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.655312Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.655333Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 1 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.655369Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.666255Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.666336Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.666358Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.666379Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 0 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.666406Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.668157Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.668213Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.668232Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.668252Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 4 nodes for term 1 (need 3/5 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.668298Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 4 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.716089Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.716172Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.716198Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.716223Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 0 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.716266Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.761885Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.761994Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.762023Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/3 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.762048Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 1 requesting votes from 3 nodes for term 1 (need 3/4 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.762103Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 3 nodes for election term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.776236Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.776323Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.776350Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.776374Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 0 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.776412Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.827369Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.827454Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.827479Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.827500Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 1 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.827534Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.875087Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.875162Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.875184Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.875208Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 4 nodes for term 1 (need 3/5 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.875234Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 4 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.920234Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Submitting test proposal for consensus flow visualization [INFO] [stdout] 2025-09-01T06:31:42.920887Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Testing proposal submission to follower (should forward) [INFO] [stdout] 2025-09-01T06:31:42.921038Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_TEST_0' by Candidate 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.922165Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Submitting multiple concurrent proposals [INFO] [stdout] 2025-09-01T06:31:42.922256Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'CONCURRENT_PROPOSAL_0' by Candidate 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:42.922522Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Testing cluster behavior under stress (simulating partition scenarios) [INFO] [stdout] 2025-09-01T06:31:42.922609Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Observing heartbeat patterns [INFO] [stdout] 2025-09-01T06:31:42.924360Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” First election completed, triggering manual election [INFO] [stdout] 2025-09-01T06:31:42.924441Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'SIMULATE_ELECTION_TIMEOUT' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.928203Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.928352Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.928407Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.928469Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 4 nodes for term 1 (need 3/5 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.928531Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 4 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:42.928867Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.928933Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.928967Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.928994Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 1 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.929030Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.932170Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Testing systematic forwarding from each node [INFO] [stdout] 2025-09-01T06:31:42.932225Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ“ค Submitted 'FORWARDING_FROM_NODE_0' to node 0 [INFO] [stdout] 2025-09-01T06:31:42.935863Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Election period completed for 5-node cluster [INFO] [stdout] 2025-09-01T06:31:42.935904Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… 5-node leader election test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_leader_election_5_nodes ... ok [INFO] [stdout] 2025-09-01T06:31:42.943001Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Simulating leader failure to test heartbeat failure detection [INFO] [stdout] 2025-09-01T06:31:42.943198Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'SIMULATE_LEADER_FAILURE' by Candidate 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.943262Z  INFO raft_poc::raft::simulation: ๐Ÿ‘‘ Received leader failure simulation command, state: Candidate node_id=1 [INFO] [stdout] 2025-09-01T06:31:42.948277Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=3 [INFO] [stdout] 2025-09-01T06:31:42.948354Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:42.948377Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/3 votes) node_id=3 [INFO] [stdout] 2025-09-01T06:31:42.948397Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 3 requesting votes from 3 nodes for term 1 (need 3/4 votes) node_id=3 [INFO] [stdout] 2025-09-01T06:31:42.948430Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 3 nodes for election term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.075872Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'CONCURRENT_PROPOSAL_3' by Candidate 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.124131Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'SIMULATE_PARTITION' by Candidate 2 (WILL REJECT) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.333932Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ“ค Submitted 'FORWARDING_FROM_NODE_1' to node 1 [INFO] [stdout] 2025-09-01T06:31:43.349242Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.349322Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.349347Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.349377Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.349407Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.435419Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 3 granted vote to candidate 2 for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.435524Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 4 granted vote to candidate 2 for term 1 node_id=4 [INFO] [stdout] 2025-09-01T06:31:43.435557Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 2 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.435630Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_1' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.435683Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 2 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.435714Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_0' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.435761Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 3! Now have 2/3 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.435790Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 4! Now have 3/3 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.435798Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.435811Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 4 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.435821Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 2 transitioning Candidate โ†’ Leader (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.435843Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 2 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.479300Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 2 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.479409Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 2 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.479446Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 1! Now have 2/2 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.479473Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.479488Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.479498Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 2 transitioning Candidate โ†’ Leader (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.479520Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 2 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.540292Z  WARN raft_poc::raft::simulation: โฐ Election timeout! Current state: Follower, term: 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.540371Z  INFO raft_poc::raft::algorithm: ๐Ÿ—ณ๏ธ Starting election for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.540396Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ Became candidate for term 1, voted for self (1/2 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.540422Z  INFO raft_poc::raft::simulation: ๐Ÿ—ณ๏ธ ELECTION STARTED: Candidate 2 requesting votes from 2 nodes for term 1 (need 2/3 votes) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.540452Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค VOTE REQUESTS SENT: RequestVote broadcasted to 2 nodes for election term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.656353Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 1 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.656455Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 1 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.656484Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'TEST_PROPOSAL_FOR_VISUALIZATION' by Follower 0 (WILL REJECT) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.656518Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 2! Now have 2/2 votes for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.656548Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.656561Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.656571Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 1 transitioning Candidate โ†’ Leader (term 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.656593Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.668336Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 0 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.668439Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 0 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.668476Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 2! Now have 2/2 votes for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.668495Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.668507Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.668517Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 0 transitioning Candidate โ†’ Leader (term 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.668549Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 0 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.717350Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 0 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.717446Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'CONCURRENT_PROPOSAL_2' by Follower 2 (WILL REJECT) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.717506Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 0 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.717544Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'CONCURRENT_PROPOSAL_1' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.717570Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'CONCURRENT_PROPOSAL_4' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.717614Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 2! Now have 2/2 votes for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.717644Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.717658Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.717669Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 0 transitioning Candidate โ†’ Leader (term 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.717692Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 0 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.734649Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ“ค Submitted 'FORWARDING_FROM_NODE_2' to node 2 [INFO] [stdout] 2025-09-01T06:31:43.734748Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_2' by Leader 2 (WILL PROCESS) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734776Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'FORWARDING_FROM_NODE_2' โ†’ pending proposal at index 1 (term 1) | Need 3/5 acks for consensus node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734801Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'FORWARDING_FROM_NODE_2' accepted as pending proposal at index 1 (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734822Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 1 (awaiting consensus) - STEP 2/4 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734836Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 1 to 4 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734851Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 0: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734884Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 0 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734903Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 0 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734930Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 1: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734944Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 1 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734980Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 1 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.734996Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 3: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.735010Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 3 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.735023Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 3 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.735032Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 4: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.735050Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 4 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.735062Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 4 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.735105Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.735144Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.735185Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.735201Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.735231Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.735246Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.735275Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=4 [INFO] [stdout] 2025-09-01T06:31:43.735289Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=4 [INFO] [stdout] 2025-09-01T06:31:43.735332Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 0 acknowledged proposal 1 โ†’ 2/3 acks (waiting for more...) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.764397Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 3 granted vote to candidate 1 for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.764508Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 1 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.764542Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 1 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.764567Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 3! Now have 2/3 votes for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.764595Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 0! Now have 3/3 votes for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.764601Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.764612Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 3 followers node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.764619Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 1 transitioning Candidate โ†’ Leader (term 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.764637Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.777917Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 0 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.778036Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_TEST_1' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.778097Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 0 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.778134Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_TEST_2' by Follower 2 (WILL REJECT) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.778185Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 1! Now have 2/2 votes for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.778220Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.778234Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.778243Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 0 transitioning Candidate โ†’ Leader (term 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.778261Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 0 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.824754Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Proposal rejection testing completed [INFO] [stdout] 2025-09-01T06:31:43.828316Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 1 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.828401Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 1 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.828426Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 2! Now have 2/2 votes for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.828465Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.828477Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.828486Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 1 transitioning Candidate โ†’ Leader (term 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.828504Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.877075Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 4 granted vote to candidate 2 for term 1 node_id=4 [INFO] [stdout] 2025-09-01T06:31:43.877164Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 2 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.877188Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'SIMULATE_PARTITION' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.877215Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 2 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.877259Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 3 granted vote to candidate 2 for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.877281Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 4! Now have 2/3 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.877312Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 1! Now have 3/3 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.877320Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.877332Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 4 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.877341Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 2 transitioning Candidate โ†’ Leader (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.877366Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 2 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.924241Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Split vote scenario test period completed [INFO] [stdout] 2025-09-01T06:31:43.924300Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Split vote scenario test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_split_vote_scenario ... ok [INFO] [stdout] 2025-09-01T06:31:43.930267Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 2 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.930373Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 3 granted vote to candidate 2 for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.930408Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 4 granted vote to candidate 2 for term 1 node_id=4 [INFO] [stdout] 2025-09-01T06:31:43.930431Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 2 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.930454Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 0! Now have 2/3 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930479Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 3! Now have 3/3 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930488Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930501Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 4 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930510Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 2 transitioning Candidate โ†’ Leader (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930531Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 2 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930594Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 1 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.930791Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 1 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.930825Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 0! Now have 2/2 votes for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.930842Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.930863Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.930873Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 1 transitioning Candidate โ†’ Leader (term 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.930893Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.944266Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Log replication test completed [INFO] [stdout] 2025-09-01T06:31:43.944327Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Log replication test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_log_replication ... ok [INFO] [stdout] 2025-09-01T06:31:43.950300Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 2 granted vote to candidate 3 for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:43.950417Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 3 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:43.950453Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 3 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:43.950497Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 2! Now have 2/3 votes for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.950527Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 0! Now have 3/3 votes for term 1 node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.950538Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.950552Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 3 followers node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.950574Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 3 transitioning Candidate โ†’ Leader (term 1) node_id=3 [INFO] [stdout] 2025-09-01T06:31:43.950597Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 3 node_id=3 [INFO] [stdout] 2025-09-01T06:31:44.136195Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ“ค Submitted 'FORWARDING_FROM_NODE_3' to node 3 [INFO] [stdout] 2025-09-01T06:31:44.136315Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_3' by Follower 3 (WILL REJECT) node_id=3 [INFO] [stdout] 2025-09-01T06:31:44.136353Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค FORWARDING: Command 'FORWARDING_FROM_NODE_3' from follower 3 to leader 2 node_id=3 [INFO] [stdout] 2025-09-01T06:31:44.350269Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 1 granted vote to candidate 2 for term 1 node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.350396Z  INFO raft_poc::raft::simulation: โœ… VOTE GRANTED: Node 0 granted vote to candidate 2 for term 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.350455Z  INFO raft_poc::raft::algorithm: โœ… Vote granted from Node 1! Now have 2/2 votes for term 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.350493Z  INFO raft_poc::raft::algorithm: ๐Ÿ‘‘ Became LEADER for term 1 with majority votes! node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.350510Z  INFO raft_poc::raft::algorithm: โค๏ธ Starting to send heartbeats to 2 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.350531Z  INFO raft_poc::raft::simulation: ๐Ÿšจ LEADER ELECTION SUCCESS: Node 2 transitioning Candidate โ†’ Leader (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.350555Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENTS EMITTED: LeaderElected + StateChange events sent for new leader 2 node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.544113Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ“ค Submitted 'FORWARDING_FROM_NODE_4' to node 4 [INFO] [stdout] 2025-09-01T06:31:44.544237Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_4' by Follower 4 (WILL REJECT) node_id=4 [INFO] [stdout] 2025-09-01T06:31:44.544270Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค FORWARDING: Command 'FORWARDING_FROM_NODE_4' from follower 4 to leader 2 node_id=4 [INFO] [stdout] 2025-09-01T06:31:44.736888Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.736996Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 0 โ†’ leader 2 for proposal 1 (2/3 acks, consensus: false) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.737052Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 1 acknowledged proposal 1 โ†’ 3/3 acks (CONSENSUS ACHIEVED!) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.737088Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ CONSENSUS DETECTED: Proposal 1 has 3/3 acks - ready to commit! node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.737101Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 1 achieved consensus โ†’ moving to committed log node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.737120Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'FORWARDING_FROM_NODE_2' committed to log at index 1 (term 1) | Acknowledged by: [2, 0, 1] node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.921224Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” First proposal completed, submitting to different node [INFO] [stdout] 2025-09-01T06:31:44.921355Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'TEST_FORWARDING_PROPOSAL' by Leader 1 (WILL PROCESS) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921401Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'TEST_FORWARDING_PROPOSAL' โ†’ pending proposal at index 1 (term 1) | Need 2/3 acks for consensus node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921425Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'TEST_FORWARDING_PROPOSAL' accepted as pending proposal at index 1 (term 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921446Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 1 (awaiting consensus) - STEP 2/4 node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921465Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 1 to 2 followers node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921479Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 0: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921511Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 1 โ†’ follower 0 (1 entries) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921527Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 0 successfully node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921544Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 2: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921596Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 1 โ†’ follower 2 (1 entries) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921609Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 2 successfully node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921649Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 1 with 1 entries (term: 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.921682Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 1 โ†’ SUCCESS (ACK) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.921732Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 1 with 1 entries (term: 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.921755Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 1 โ†’ SUCCESS (ACK) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.921794Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 0 acknowledged proposal 1 โ†’ 2/2 acks (CONSENSUS ACHIEVED!) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921818Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ CONSENSUS DETECTED: Proposal 1 has 2/2 acks - ready to commit! node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921830Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 1 achieved consensus โ†’ moving to committed log node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921838Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'TEST_FORWARDING_PROPOSAL' committed to log at index 1 (term 1) | Acknowledged by: [1, 0] node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.921896Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'normal_op_0' by Leader 0 (WILL PROCESS) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.921977Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'normal_op_0' โ†’ pending proposal at index 1 (term 1) | Need 2/3 acks for consensus node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922001Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'normal_op_0' accepted as pending proposal at index 1 (term 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922018Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 1 (awaiting consensus) - STEP 2/4 node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922034Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 1 to 2 followers node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922046Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 1: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922075Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 0 โ†’ follower 1 (1 entries) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922092Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 1 successfully node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922107Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 2: Sending AppendEntries with 1 entries (0 committed + 1 pending) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922116Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 0 โ†’ follower 2 (1 entries) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922126Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 2 successfully node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922167Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 0 with 1 entries (term: 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.922195Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 0 โ†’ SUCCESS (ACK) node_id=1 [INFO] [stdout] 2025-09-01T06:31:44.922236Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 0 with 1 entries (term: 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.922256Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 0 โ†’ SUCCESS (ACK) node_id=2 [INFO] [stdout] 2025-09-01T06:31:44.922287Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 1 acknowledged proposal 1 โ†’ 2/2 acks (CONSENSUS ACHIEVED!) node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922308Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ CONSENSUS DETECTED: Proposal 1 has 2/2 acks - ready to commit! node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922318Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 1 achieved consensus โ†’ moving to committed log node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.922336Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'normal_op_0' committed to log at index 1 (term 1) | Acknowledged by: [0, 1] node_id=0 [INFO] [stdout] 2025-09-01T06:31:44.923021Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Split vote resolution test period completed [INFO] [stdout] 2025-09-01T06:31:44.923051Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Split vote scenario test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_split_vote_resolution ... ok [INFO] [stdout] 2025-09-01T06:31:44.924677Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Manual election completed [INFO] [stdout] 2025-09-01T06:31:44.924714Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Detailed election process test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_election_process_detailed ... ok [INFO] [stdout] 2025-09-01T06:31:45.122914Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'normal_op_1' by Follower 1 (WILL REJECT) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.122989Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค FORWARDING: Command 'normal_op_1' from follower 1 to leader 0 node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.323546Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'normal_op_2' by Follower 2 (WILL REJECT) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.323612Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค FORWARDING: Command 'normal_op_2' from follower 2 to leader 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.425223Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Commit index advancement test completed [INFO] [stdout] 2025-09-01T06:31:45.425277Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Commit index advancement test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_commit_index_advancement ... ok [INFO] [stdout] 2025-09-01T06:31:45.739234Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 1 node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739298Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 1 โ†’ leader 2 for proposal 1 (3/3 acks, consensus: true) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739325Z  INFO raft_poc::raft::simulation: ๐ŸŽ‰ PROPOSALS COMMITTED: 1 new entries added to committed log (index 1 โ†’ 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739345Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ReplicationCompleted for 1 entries achieving consensus node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739405Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_3' by Leader 2 (WILL PROCESS) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739434Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'FORWARDING_FROM_NODE_3' โ†’ pending proposal at index 2 (term 1) | Need 3/5 acks for consensus node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739445Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'FORWARDING_FROM_NODE_3' accepted as pending proposal at index 2 (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739474Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 2 (awaiting consensus) - STEP 2/4 node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739484Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 2 to 4 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739497Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 0: Sending AppendEntries with 2 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739526Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 2 LogEntryProposed events from leader 2 โ†’ follower 0 (2 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739545Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 0 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739563Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 1: Sending AppendEntries with 2 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739586Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 2 LogEntryProposed events from leader 2 โ†’ follower 1 (2 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739597Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 1 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739604Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 3: Sending AppendEntries with 1 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739614Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 3 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739624Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 3 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739632Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 4: Sending AppendEntries with 1 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739643Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 4 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739653Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 4 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739684Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'FORWARDING_FROM_NODE_4' by Leader 2 (WILL PROCESS) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739696Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'FORWARDING_FROM_NODE_4' โ†’ pending proposal at index 2 (term 1) | Need 3/5 acks for consensus node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739704Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'FORWARDING_FROM_NODE_4' accepted as pending proposal at index 2 (term 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739717Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 2 (awaiting consensus) - STEP 2/4 node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739725Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 2 to 4 followers node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739735Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 0: Sending AppendEntries with 2 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739749Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 2 LogEntryProposed events from leader 2 โ†’ follower 0 (2 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739759Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 0 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739767Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 1: Sending AppendEntries with 2 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739781Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 2 LogEntryProposed events from leader 2 โ†’ follower 1 (2 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739790Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 1 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739799Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 3: Sending AppendEntries with 1 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739810Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 3 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739819Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 3 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739826Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 4: Sending AppendEntries with 1 entries (1 committed + 1 pending) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739837Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 2 โ†’ follower 4 (1 entries) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739901Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 4 successfully node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.739997Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 2 entries (term: 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.740068Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.740116Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 2 entries (term: 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.740159Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.740210Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 2 entries (term: 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.740255Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.740314Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 2 entries (term: 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.740409Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.740475Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=3 [INFO] [stdout] 2025-09-01T06:31:45.740518Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=3 [INFO] [stdout] 2025-09-01T06:31:45.740585Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=3 [INFO] [stdout] 2025-09-01T06:31:45.740631Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=3 [INFO] [stdout] 2025-09-01T06:31:45.740693Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=4 [INFO] [stdout] 2025-09-01T06:31:45.740733Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=4 [INFO] [stdout] 2025-09-01T06:31:45.740784Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 2 with 1 entries (term: 1) node_id=4 [INFO] [stdout] 2025-09-01T06:31:45.740819Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 2 โ†’ SUCCESS (ACK) node_id=4 [INFO] [stdout] 2025-09-01T06:31:45.740882Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 0 acknowledged proposal 2 โ†’ 2/3 acks (waiting for more...) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.825574Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Proposal rejection cases test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_proposal_rejection_cases ... ok [INFO] [stdout] 2025-09-01T06:31:45.923673Z  INFO raft_poc::raft::integration_tests::integration_tests: โฑ๏ธ Election occurred within 6 seconds [INFO] [stdout] 2025-09-01T06:31:45.923725Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Election timeout ranges test completed [INFO] [stdout] 2025-09-01T06:31:45.923900Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 0 node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.923981Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 0 โ†’ leader 1 for proposal 1 (2/2 acks, consensus: true) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924053Z  INFO raft_poc::raft::simulation: ๐ŸŽ‰ PROPOSALS COMMITTED: 1 new entries added to committed log (index 1 โ†’ 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924128Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ReplicationCompleted for 1 entries achieving consensus node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924215Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924251Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 1 โ†’ leader 0 for proposal 1 (2/2 acks, consensus: true) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924262Z  INFO raft_poc::raft::simulation: ๐ŸŽ‰ PROPOSALS COMMITTED: 1 new entries added to committed log (index 1 โ†’ 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924282Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ReplicationCompleted for 1 entries achieving consensus node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924328Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'normal_op_1' by Leader 0 (WILL PROCESS) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924354Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'normal_op_1' โ†’ pending proposal at index 2 (term 1) | Need 2/3 acks for consensus node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924366Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'normal_op_1' accepted as pending proposal at index 2 (term 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924382Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 2 (awaiting consensus) - STEP 2/4 node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924394Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 2 to 2 followers node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924407Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 1: Sending AppendEntries with 2 entries (1 committed + 1 pending) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924432Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 2 LogEntryProposed events from leader 0 โ†’ follower 1 (2 entries) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924450Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 1 successfully node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924465Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 2: Sending AppendEntries with 1 entries (1 committed + 1 pending) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924477Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 0 โ†’ follower 2 (1 entries) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924490Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 2 successfully node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924511Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ClientCommandReceived 'normal_op_2' by Leader 0 (WILL PROCESS) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924523Z  INFO raft_poc::raft::algorithm: ๐Ÿ“‹ STEP 1/4 - PROPOSAL CREATED: Command 'normal_op_2' โ†’ pending proposal at index 2 (term 1) | Need 2/3 acks for consensus node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924532Z  INFO raft_poc::raft::simulation: ๐Ÿ”„ CONSENSUS FLOW START: Client command 'normal_op_2' accepted as pending proposal at index 2 (term 1) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924546Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: LogEntryProposed for proposal 2 (awaiting consensus) - STEP 2/4 node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924565Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค STEP 2/4 - REPLICATING: Broadcasting AppendEntries with proposal 2 to 2 followers node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924588Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 1: Sending AppendEntries with 2 entries (1 committed + 1 pending) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924606Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 2 LogEntryProposed events from leader 0 โ†’ follower 1 (2 entries) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924618Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 1 successfully node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924626Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค โ†’ Follower 2: Sending AppendEntries with 1 entries (1 committed + 1 pending) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924638Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: 1 LogEntryProposed events from leader 0 โ†’ follower 2 (1 entries) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924648Z  INFO raft_poc::raft::simulation: โœ… AppendEntries sent to follower 2 successfully node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924692Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 0 with 2 entries (term: 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924712Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 0 โ†’ SUCCESS (ACK) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924736Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 0 with 2 entries (term: 1) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924752Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 0 โ†’ SUCCESS (ACK) node_id=1 [INFO] [stdout] 2025-09-01T06:31:45.924782Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 0 with 1 entries (term: 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.924807Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 0 โ†’ SUCCESS (ACK) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.924830Z  INFO raft_poc::raft::simulation: ๐Ÿ“ฅ RECEIVED: AppendEntries from leader 0 with 1 entries (term: 1) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.924842Z  INFO raft_poc::raft::simulation: ๐Ÿ“ค RESPONDING: AppendEntries response to leader 0 โ†’ SUCCESS (ACK) node_id=2 [INFO] [stdout] 2025-09-01T06:31:45.924880Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 1 acknowledged proposal 2 โ†’ 2/2 acks (CONSENSUS ACHIEVED!) node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924895Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ CONSENSUS DETECTED: Proposal 2 has 2/2 acks - ready to commit! node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924905Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 2 achieved consensus โ†’ moving to committed log node_id=0 [INFO] [stdout] 2025-09-01T06:31:45.924914Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'normal_op_2' committed to log at index 2 (term 1) | Acknowledged by: [0, 1] node_id=0 [INFO] [stdout] test raft::integration_tests::integration_tests::test_election_timeout_ranges ... ok [INFO] [stdout] 2025-09-01T06:31:46.742272Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:46.742342Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 0 โ†’ leader 2 for proposal 2 (2/3 acks, consensus: false) node_id=2 [INFO] [stdout] 2025-09-01T06:31:46.742401Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 0 acknowledged proposal 2 โ†’ 2/3 acks (waiting for more...) node_id=2 [INFO] [stdout] 2025-09-01T06:31:46.921988Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Proposal consensus flow test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_proposal_consensus_flow ... ok [INFO] [stdout] 2025-09-01T06:31:46.926260Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 1 node_id=0 [INFO] [stdout] 2025-09-01T06:31:46.926315Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 1 โ†’ leader 0 for proposal 2 (2/2 acks, consensus: true) node_id=0 [INFO] [stdout] 2025-09-01T06:31:46.926329Z  INFO raft_poc::raft::simulation: ๐ŸŽ‰ PROPOSALS COMMITTED: 1 new entries added to committed log (index 2 โ†’ 2) node_id=0 [INFO] [stdout] 2025-09-01T06:31:46.926349Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ReplicationCompleted for 1 entries achieving consensus node_id=0 [INFO] [stdout] 2025-09-01T06:31:47.179088Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Concurrent proposals test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_concurrent_proposals ... ok [INFO] [stdout] 2025-09-01T06:31:47.341099Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Partition simulation completed, observing recovery [INFO] [stdout] 2025-09-01T06:31:47.525994Z  INFO raft_poc::raft::integration_tests::integration_tests: ๐Ÿ” Normal operation test completed [INFO] [stdout] 2025-09-01T06:31:47.526041Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Normal cluster operation test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_normal_cluster_operation ... ok [INFO] [stdout] 2025-09-01T06:31:47.770418Z  INFO raft_poc::raft::simulation: ๐Ÿ“Š Found 1 consensus ACK(s) to emit for follower 0 node_id=2 [INFO] [stdout] 2025-09-01T06:31:47.770477Z  INFO raft_poc::raft::simulation: ๐Ÿ“ก EVENT EMITTED: ConsensusAckReceived from follower 0 โ†’ leader 2 for proposal 2 (2/3 acks, consensus: false) node_id=2 [INFO] [stdout] 2025-09-01T06:31:47.770518Z  INFO raft_poc::raft::algorithm: ๐Ÿ“ STEP 3/4 - ACK RECEIVED: Follower 1 acknowledged proposal 2 โ†’ 3/3 acks (CONSENSUS ACHIEVED!) node_id=2 [INFO] [stdout] 2025-09-01T06:31:47.770532Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ CONSENSUS DETECTED: Proposal 2 has 3/3 acks - ready to commit! node_id=2 [INFO] [stdout] 2025-09-01T06:31:47.770543Z  INFO raft_poc::raft::algorithm: ๐ŸŽฏ STEP 4/4 - COMMITTING: Proposal 2 achieved consensus โ†’ moving to committed log node_id=2 [INFO] [stdout] 2025-09-01T06:31:47.770552Z  INFO raft_poc::raft::algorithm: โœ… CONSENSUS FLOW COMPLETE: Command 'FORWARDING_FROM_NODE_4' committed to log at index 2 (term 1) | Acknowledged by: [2, 0, 1] node_id=2 [INFO] [stdout] 2025-09-01T06:31:47.923227Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Heartbeat maintenance test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_heartbeat_maintenance ... ok [INFO] [stdout] 2025-09-01T06:31:47.946282Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Leader forwarding test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_leader_forwarding ... ok [INFO] [stdout] 2025-09-01T06:31:48.944410Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Heartbeat failure detection test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_heartbeat_failure_detection ... ok [INFO] [stdout] 2025-09-01T06:31:50.351098Z  INFO raft_poc::raft::integration_tests::integration_tests: โœ… Network partition recovery test completed [INFO] [stdout] test raft::integration_tests::integration_tests::test_network_partition_recovery ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 48 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 10.44s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "7e64b24537fc16528fd3639b9d5b1180b5b24869d29f6ca3a9ddc939767ea7dd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7e64b24537fc16528fd3639b9d5b1180b5b24869d29f6ca3a9ddc939767ea7dd", kill_on_drop: false }` [INFO] [stdout] 7e64b24537fc16528fd3639b9d5b1180b5b24869d29f6ca3a9ddc939767ea7dd