Deep Dive

Vote programs and the leader schedule.

What a vote account signs each slot, how the vote program records it, and why the leader schedule leans on those signatures.

Checked against vote program, Agave v2.1.x, commit 7d2e3a1

The vote account

A vote account is owned by the vote program at Vote111111111111111111111111111111111111111. It holds the validator's identity, the voter authority, and the commission taken from stake rewards. It is the account a validator's stake is delegated toward.

What is signed

Each slot the validator signs a vote on a fork, recording the bank hash and the slot it considers correct. The vote program appends these to the account's vote history, and the network weights the fork by the stake behind those votes.

Leader schedule

The leader schedule is derived from the stake distribution across vote accounts. More stake behind a vote account means more slots assigned to its validator, which is why delegation and vote-account choice are the two levers an operator pulls.

References

  • Vote program — Vote111111111111111111111111111111111111111
  • Agave client — v2.1.x, commit 7d2e3a1
  • Related — Stake accounts deep dive