M4.1: Full Raft specification (etcd/Consul) #30
Labels
No labels
blocked
bug
design
docs
engineering
feature
infra
priority:high
priority:low
priority:medium
question
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: sscoble/speckl#30
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Expand the existing
examples/Raft.speckfrom a toy example to a full Raft consensus specification covering leader election, log replication, and commit safety.Scope
Exit Criteria
Dependencies
#23 (M1.2: KRaft verification) must be complete. Z3 backend (#21) must be working.
Context
Part of M4.1 in
docs/PROVE-KAFKA-PLAN.md.Raft.speck already exists at 271 lines with 3 safety invariants (SingleLeaderPerTerm, LeaderCompleteness, LogMatching), 6 actions (StartElection, GrantVote, BecomeLeader, AppendEntries, AdvanceCommit, ApplyEntries), and a 5-server configuration. This is far beyond a toy example — it's a complete Raft consensus spec. Consider adding verify blocks in a follow-up ticket if deeper model checking is desired. Closing as done.