Yes votes are recorded participant states before the final decision.

highlighted = computed this step

Yes votes

A yes vote records that one prepared participant is willing to commit. Commit is still only a derived possibility until the coordinator decides.

yes vote is recorded state\text{yes vote is recorded state}

All listed votes are yes

The compiler finds 2 yes votes for 2 participants, so commitAllowed is yes. No commit row is rendered until a decide event appears.

yes votes=2,participants=2\text{yes votes}=2,\quad \text{participants}=2

two-phase commit is rendered here as a tiny exact FSM trace; timeouts, recovery, network partitions, availability, and database-product behavior are out of scope.

Yes voteseventcoordinatordecisionvotesparticipantsinitialinitpendingnoneP1:init, P2:initprepare CwaitingpendingnoneP1:prepared, P2:preparedvote P1 yeswaitingpendingP1:yesP1:voted_yes, P2:preparedvote P2 yeswaitingpendingP1:yes, P2:yesP1:voted_yes, P2:voted_yes participant statesparticipantvotestateP1yesvoted_yesP2yesvoted_yes compiled summaryfactvaluedecisionpendingoutcomependingcoordinatorwaitingcommitAllowedyesabortReasonnone

Summary

Yes votes make commit allowed only when every participant has voted yes. Note: this toy trace does not model durable vote logging.

all yes allows commit\text{all yes allows commit}