From c2209b4472cd19c3adb7dbfdb52ed3fb07ee09e3 Mon Sep 17 00:00:00 2001 From: Nicholas Dudfield Date: Tue, 3 Mar 2026 17:41:55 +0700 Subject: [PATCH] docs(consensus): explain why seq=3 may mirror seq=2 Clarify inline that seq=3 publish can carry unchanged txSetHash while still providing extra entropySetHash delivery/fetch opportunity under packet loss or reordering. --- src/xrpld/consensus/Consensus.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/xrpld/consensus/Consensus.h b/src/xrpld/consensus/Consensus.h index 1e6651d82..ebb1598b0 100644 --- a/src/xrpld/consensus/Consensus.h +++ b/src/xrpld/consensus/Consensus.h @@ -1731,6 +1731,12 @@ Consensus::phaseEstablish( // Publish entropySetHash before accepting so lagging peers // can fetch/merge reveal sets in ConvergingReveal. + // + // This can look redundant in healthy rounds because txSetHash may + // be unchanged versus the prior proposal (for example, seq=2 and + // seq=3 showing the same tx summary in monitors). We still publish + // to create an additional delivery window for entropySetHash and + // to trigger fetch/merge on peers that missed earlier packets. if (mode_.get() == ConsensusMode::proposing) adaptor_.propose(result_->position);