Checkpoint: Time & Order
Introduction
The last lesson closed with an instruction: bring the ladder. This checkpoint is where you prove you can climb it under incident-room lighting.
Five lessons ago, a timestamp was a fact. Since then: clocks turned into estimates, “when” turned into “before or after”, before-or-after got a number, the number grew into a vector that can testify, and the whole kit went on a shelf with price tags. Ten scenarios below check the only thing that matters — that you reach for the right rung when something real is on the line. Two of them hand you raw vectors and make you read them cold, because that skill decides real conflicts in real stores.

The Law of the Stretch
One compression before the exam. Every lesson in this stretch is the same law in a different costume:
“When” is an estimate with error bars. “Before” is a fact you build from messages. And you buy exactly as much order as the data needs.
- The Clock-Sync Problem: the estimate, priced. Syncing is estimating, not agreeing — and a freshly synced machine that is wrong has no way to know it.
- Physical vs Logical Time: the reframe. Influence travels only through communication, so stop asking when; ask before or after. Pairs with no chain are concurrent, and “which was first” has no answer.
- Lamport Timestamps: before-ness as a number. One integer, max-plus-one, and the one-way Clock Condition. The number orders; it never testifies.
- Vector Clocks: the testimony. One counter per machine, and the theorem goes both ways — incomparable is a proof of concurrency, and the verdict becomes keep both.
- Ordering in Practice: the shelf. One writer, sortable IDs, counters, vectors, commit-wait — order is bought, rung by rung, and the design question is how ordered the data actually needs to be.
The exam never asks for a definition. It hands you a situation and asks which costume the law is wearing.
Reading a Vector in Ten Seconds
Two of the exam's questions hand you naked vectors, because reading them is a real skill real stores demand at read-repair time. The whole method:
Compare slot by slot. Containment means order. A split means concurrent.
If every slot of a is ≤ the matching slot of b (and at least one is strictly smaller), then b's memory contains a's: a came before b, proven, both directions of the theorem. If a leads in one slot and b leads in another, stop: nothing contains anything, the writers never met, and the honest verdict is concurrent — keep both. Two traps, both drawn in the figure: ties in a slot are fine (containment only needs ≤), and sums mean nothing — a bigger total is not a later write. Ten seconds, no clock consulted.
![The ten-second vector read, drawn as two worked cases. Case one, containment: a = [2,1,0] stacked over b = [3,1,2] with a ≤ under every column, so the green verdict chip reads a → b, ordered, proven; ties in a slot are fine. Case two, the split: a = [2,2,0] over b = [3,0,2]; red rings mark a ahead in the middle slot and b ahead in the first, so the amber chip reads concurrent, keep both, and the caption warns that the totals (4 vs 5) mean nothing. Foot band: no clock consulted — the exam will hand you these cold](https://pub-a1b3030acfb94e84ba8a89fb182c53bc.r2.dev/public/sd-content-030fe2fd-a530-5273-8167-3776fe4635b0/the-reading-drill.webp)
The Exam
Ten scenarios, all lifted from the kinds of rooms where these tools earn their keep: on-call channels, design reviews, a finance dispute. Every wrong option is a real wrong turn this stretch taught you to refuse. Pass is seven of ten; miss something and the verdict names the exact lesson to revisit.

What You Can Now Do
If this stretch landed, here is the capability it certifies.
In an incident, you can read an impossible-looking log — effects before causes, negative durations, and name the instrument that lied rather than chasing a ghost bug. You know which clock measures a timeout and which one tells a human the time.
In a design review, you can hear “we'll order events by timestamp” and ask the three questions that matter: across machines? how far apart? and what breaks when the sort lies by a skew's worth? You can propose the cheapest sufficient rung with a straight face, and refuse k-sorted IDs for a ledger with the same confidence you'd accept them for a feed.
And when two writes collide, you can read their vectors cold, prove order or prove concurrency, and say what the store should do about it — including the words “keep both”, which this course watched save a hat.
That vocabulary — the estimate, the reframe, the number, the vector, the ladder — is spent constantly from here on.
Key Takeaways
- The law: “when” is an estimate; “before” is built from messages; order is bought. Five lessons, one sentence.
- The five costumes, one line each: syncing estimates and can't know it's wrong · influence travels only through communication · the number orders without testifying · the vector testifies, and incomparable means concurrent, proven · the shelf has price tags, so buy the cheapest rung that answers the question.
- The ten-second vector read: containment = order, split = concurrent, sums = nothing.
- Passing means permission. Seven of ten says you can pick the rung under pressure, and the lessons ahead assume exactly that.
Now look at what this stretch quietly avoided. Every tool here either tolerated disagreement (keep both, k-sorted, concurrent) or funneled order through one door. But some decisions cannot tolerate two answers, and cannot fit through one door that might fail: who is the leader, whether the transaction commits, which write is the write. For those, a fleet of unreliable machines with lying clocks must somehow produce one answer it will never take back, and that problem has teeth nothing in this stretch can handle. It's next: The Consensus Problem.