FAILURE LABS

Break it on purpose

Failure Labs are the spine of Course 001. Every lab has five artifacts:

fault profile
expected invariant
reproduction command
observable symptoms
automated pass/fail check

A lab does not pass because the run eventually finished. A lab passes only when the relevant invariant is directly checked.

Lab catalog

Lab Failure Primitive learned
01 Kill the Agent state must survive coming
02 False Completion evidence-backed progress coming
03 Pull the Plug checkpoint + replay semantics coming
04 Duplicate Report idempotency + reconciliation coming
05 Two Workers, One Run leases + ownership coming
06 Failure Matrix failure-specific routing coming
07 Three-Hour Approval durable human waits coming
08 Context Rot reconstructed working context coming
09 Silent Run progress-aware observability coming
10 Hostile Vendor trust boundaries + permissions coming
11 The Judge That Agreed With Everyone validated evals coming
12 Replace the Harness framework portability coming
13 The Redeploy automatic recovery coming
14 All of them, at once system-level reliability coming

Lab numbers run 01 to 14, independent of module numbers: Modules 00 and 13 carry written exercises instead of a lab (the twelve-scenario classification and the case-study extraction).

The standard lab page

Every lab follows the same shape, and each part earns its place:

Failure
One sentence describing what is intentionally broken.
Prediction
Before running it, you write down what you think will happen.
Reproduce
One command: make lab LAB=05. No setup reconstructed from prose.
Observe
Where to look, not what the answer is: the dashboard, run_events, the trace, the runs table, the external side-effect table.
Diagnose
Questions that force mechanism-level thinking.
Fix
The invariant is stated; the implementation is yours.
Prove
A deterministic test or a measured comparison.
Production extension
What the course implementation simplifies, stated plainly.

Run the fixture server

git clone https://github.com/ogkranthi/air-course-long
cd air-course-long && make fixtures   # deterministic vendor sites on :8001

A failure course becomes weak when every student sees a different website, latency profile, or model behavior. Environmental faults stay deterministic; model-semantic behavior can still vary, so the model and prompt versions are recorded with every run so results can be compared.