Bläddra i källkod

doc/architecture/consensus: finalization logic updated

aggstam 3 år sedan
förälder
incheckning
baa995be88
1 ändrade filer med 5 tillägg och 11 borttagningar
  1. 5 11
      doc/src/architecture/consensus.md

+ 5 - 11
doc/src/architecture/consensus.md

@@ -23,7 +23,7 @@ blockchain achieve consensus.
 As described in previous chapter, DarkFi is based on Ouroboros
 Crypsinous. Therefore, block production involves the following steps:
 
-At the start of every slot, each node runs a leader selection algorithm
+At the start of every slot, each node runs the leader selection algorithm
 to determine if they are the slot's leader. If successful, they can
 produce a block containing unproposed transactions. This block is then
 appended to the largest known fork and shared with rest of the nodes on
@@ -122,12 +122,11 @@ Extending the canonical blockchain with a new block proposal:
 ## Finalization
 
 When the finalization sync period kicks in, each node looks up the longest
-fork chain it holds. This must be at least 3 blocks long and there must
-be no other fork chain with same length.  If such a fork chain exists,
-nodes finalize all block proposals up to the last one by appending them
+fork chain it holds. There must be no other fork chain with same length.
+If such a fork chain exists, nodes finalize all block proposals by appending them
 to the canonical blockchain.
 
-Once finalized, all other fork chains are removed from the memory pool.
+Once finalized, all fork chains are removed from the memory pool.
 Practically this means that no finalization can occur while there are
 competing fork chains of the same length. In such a case, finalization
 can only occur when we have a a slot with a single leader.
@@ -168,10 +167,5 @@ F2 and all other forks get dropped:
                    |
                    |/--[L4]                   <-- F3
 
-
-This results in the following state:
-
-    [C]--...--[C]--|--[L6]
-
-The canonical blockchain contains blocks L0, L3 and L5b from fork F2.
+The canonical blockchain now contains blocks L0, L3, L5b and L6 from fork F2.