FA-097 / Distributed coordination / Member archive
Election votes prefer a longer but older log · case 02
A candidate with more entries from an older term receives a vote over the voter's newer history.
Case contract
State is [current term,voted candidate or None], local log is [last term,last index], and requests are [election term,candidate,last log term,last index]. Newer terms clear the vote even if the candidate is rejected. Grant only in current term to an up-to-date log and an unclaimed or same vote. Return [term,voted candidate,grant decisions]. This is a voting-rule model, not a consensus implementation.
Why this case matters
Models two interacting durable election invariants: freshness by log term and one candidate per election term, including term advancement on rejected requests.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| longer old-term log rejected | [12, "a", [true]] | [12, null, [false]] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗