After PR #3554 we set ForwardingPolicy::Disabled and ignore Relay::Plan in the broadcast implementation.
Commonware's simplex engine now supports forwarding certified blocks to peers who missed them — either to all non-voters (Silent) or just the next view's leader (NextLeader). The Plan enum distinguishes initial Propose broadcasts from targeted Forward { round, peers } rebroadcasts.
We should:
- Evaluate whether enabling forwarding improves liveness under real-world conditions (missed proposals, slow validators)
- If so, implement plan-aware relay logic that handles
Forward by sending only to the specified peers
- Pick the right policy (
Silent vs NextLeader) based on our validator set size and network profile
After PR #3554 we set
ForwardingPolicy::Disabledand ignoreRelay::Planin thebroadcastimplementation.Commonware's simplex engine now supports forwarding certified blocks to peers who missed them — either to all non-voters (
Silent) or just the next view's leader (NextLeader). ThePlanenum distinguishes initialProposebroadcasts from targetedForward { round, peers }rebroadcasts.We should:
Forwardby sending only to the specified peersSilentvsNextLeader) based on our validator set size and network profile