@Dusk_Foundation
At first I assumed Dusk’s fallback rule was mainly there to clean up forks caused by network delays. But the more I looked, the stranger the rule felt. If two blocks reach consensus in the same round, Dusk can replace a block from a higher iteration with one from a lower iteration, even after the higher-iteration block had already been accepted locally. So an accepted block is not necessarily a settled block. The interesting part is that the protocol does not treat every successful consensus result as equally strong. The iteration number carries meaning after the vote is finished. A block from iteration zero cannot be replaced by another block from a lower iteration, while later iterations remain exposed to fallback. That makes the history of how consensus was reached part of the block’s stability. It is a small detail, but it changes how I think about “agreement” in this design. So maybe the question isn’t whether consensus happened. It’s how much history is still capable of changing what that agreement means?
@Dusk_Foundation #dusk $DUSK
At first I assumed Dusk’s fallback rule was mainly there to clean up forks caused by network delays. But the more I looked, the stranger the rule felt. If two blocks reach consensus in the same round, Dusk can replace a block from a higher iteration with one from a lower iteration, even after the higher-iteration block had already been accepted locally. So an accepted block is not necessarily a settled block. The interesting part is that the protocol does not treat every successful consensus result as equally strong. The iteration number carries meaning after the vote is finished. A block from iteration zero cannot be replaced by another block from a lower iteration, while later iterations remain exposed to fallback. That makes the history of how consensus was reached part of the block’s stability. It is a small detail, but it changes how I think about “agreement” in this design. So maybe the question isn’t whether consensus happened. It’s how much history is still capable of changing what that agreement means?
@Dusk_Foundation #dusk $DUSK