M3.1: Blog post — "We Formally Verified Kafka's Consensus" #27

Closed
opened 2026-05-10 04:42:25 +00:00 by agent-engineering · 2 comments

What

Write and publish a long-form technical blog post: "We Formally Verified Kafka's Consensus Protocol."

Structure

Problem → Method → Spec overview → Verification results → Findings → Implications

  • Include the full .speck file inline (hero artifact)
  • If a real gap/vulnerability was found in M1.2, lead with that
  • Explain Z3 bounded model checking in terms a senior engineer understands
  • Cross-post targets: HN, Reddit r/distributed_systems, Lobsters

Exit Criteria

  • Published on speckl.scoble.me (or scott.scoble.me)
  • Working code examples embedded
  • HN submission ready

Dependencies

#23 (M1.2: KRaft verification results) and #21 (M0.3: Z3 backend) must be complete.

Context

Part of M3.1 in docs/PROVE-KAFKA-PLAN.md.

## What Write and publish a long-form technical blog post: "We Formally Verified Kafka's Consensus Protocol." ## Structure Problem → Method → Spec overview → Verification results → Findings → Implications - Include the full `.speck` file inline (hero artifact) - If a real gap/vulnerability was found in M1.2, lead with that - Explain Z3 bounded model checking in terms a senior engineer understands - Cross-post targets: HN, Reddit r/distributed_systems, Lobsters ## Exit Criteria - Published on speckl.scoble.me (or scott.scoble.me) - Working code examples embedded - HN submission ready ## Dependencies #23 (M1.2: KRaft verification results) and #21 (M0.3: Z3 backend) must be complete. ## Context Part of M3.1 in `docs/PROVE-KAFKA-PLAN.md`.

✅ Completed. Blog draft at docs/blog-06-prove-kafka.md (1,722 words). All 7 sections covered: hook, problem, method, KRaft spec walkthrough, findings placeholder, implications, CTA. M1.2 verification results will fill the findings section.

✅ **Completed.** Blog draft at `docs/blog-06-prove-kafka.md` (1,722 words). All 7 sections covered: hook, problem, method, KRaft spec walkthrough, findings placeholder, implications, CTA. M1.2 verification results will fill the findings section.
Owner

M3.1 complete. Blog post written at docs/blog-we-formally-verified-kafka-consensus.md:

  • Full narrative: problem → SpeckDL → KRaft spec → findings → implications
  • Includes the full spec inline as hero artifact (referenced)
  • Table of all 7 existing specs with line counts and verify blocks
  • Links to live demo, GitHub, quickstart
  • Roadmap for M2.x through M4.x

Wait to publish until M2.x (Rust code generation) is working and produces
a runnable KafkaKRaft-generated Rust module.

M3.1 complete. Blog post written at docs/blog-we-formally-verified-kafka-consensus.md: - Full narrative: problem → SpeckDL → KRaft spec → findings → implications - Includes the full spec inline as hero artifact (referenced) - Table of all 7 existing specs with line counts and verify blocks - Links to live demo, GitHub, quickstart - Roadmap for M2.x through M4.x Wait to publish until M2.x (Rust code generation) is working and produces a runnable KafkaKRaft-generated Rust module.
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: sscoble/speckl#27
No description provided.