Function decide_from_proposal_2

Source
pub async fn decide_from_proposal_2<TYPES: NodeType, I: NodeImplementation<TYPES>, V: Versions>(
    proposal: &QuorumProposalWrapper<TYPES>,
    consensus: OuterConsensus<TYPES>,
    existing_upgrade_cert: Arc<RwLock<Option<UpgradeCertificate<TYPES>>>>,
    public_key: &TYPES::SignatureKey,
    with_epochs: bool,
    membership: &EpochMembershipCoordinator<TYPES>,
    storage: &I::Storage,
    upgrade_lock: &UpgradeLock<TYPES, V>,
) -> LeafChainTraversalOutcome<TYPES>
Expand description

calculate the new decided leaf chain based on the rules of HotStuff 2

ยงPanics

If the leaf chain contains no decided leaf while reaching a decided view, which should be impossible.