pub fn try_commit(
double_cert: &DoubleCertificate,
store: &dyn BlockStore,
app: &dyn Application,
last_committed_height: &mut Height,
current_epoch: &Epoch,
) -> Result<CommitResult>Expand description
Execute the two-chain commit rule: When we get C_v(C_v(B_k)), commit the inner QC’s block and all uncommitted ancestors.
For each committed block, runs the full application lifecycle: begin_block → deliver_tx (×N) → end_block → on_commit
§Safety
Caller MUST verify both inner_qc and outer_qc aggregate signatures and quorum counts before calling this function. This function trusts the DoubleCertificate completely and performs no cryptographic checks.