Organized by project phase. Shared material (source-paper studies) applies to every phase.
| Document | What it covers |
|---|---|
| Kafka Paper Study | 8-question walkthrough of the Kafka paper: pull vs push, page cache, ISR, zero-copy |
| Kafka Section 5 | Experimental results from the paper |
| Document | What it covers |
|---|---|
| Decision Index | Architecture Decision Records — key design choices with commit links |
| ADR-001 | RWMutex for partition reads |
| ADR-002 | Synchronous architecture (no writer goroutine) |
| ADR-003 | Sparse index with interval=1 |
| ADR-004 | fdatasync over fsync |
| ADR-005 | 28-byte fixed-size message header |
| ADR-006 | Length-prefixed protobuf wire protocol |
| ADR-007 | FNV-1a hash for key-based partition routing |
| ADR-008 | Release closed segment file handles after recovery |
| ADR-009 | Fuzz testing with committed seed corpus |
| ADR-010 | Immutable closed segments (chmod 0444) |
| Document | What it covers |
|---|---|
| Implementation Plan | Build order, dependency graph between components |
| Server Design Decisions | 6-question decision tree for the TCP server: connection model, wire protocol, request lifecycle, partition sync, batching, broker API |
| Control Flow Diagrams | Mermaid diagrams: full-stack produce/consume, server lifecycle, partition-level flows |
| Concurrency Model | Four-layer locking hierarchy, parallelism model, shutdown coordination, known limitations |
| Log Design Doc | Storage layout, message format, index strategy, concurrency model, failure modes (lives with the package it documents) |
| Document | What it covers |
|---|---|
| Design Notes | Consumer groups, replication, 2PC, file descriptor management |
| Exactly-Once Penalty | Performance cost of 2PC vs at-least-once |
| Document | What it covers |
|---|---|
| README | Project overview, design decisions, phases, running |
| Progress Tracker | Phase timeline, component status, test coverage, key learnings |
| Testing Guide | All test modes: unit, race, fuzzing, benchmarks, container integration test, validator |