// Spec before you generate · lesson 07
Lightweight spec vs full spec, or matching rigor to stakes
Spec discipline gets a bad name when people apply the same heavy process to a one-line fix that they'd apply to a payment system. That's not discipline, it's ceremony, and it burns people out on the whole idea. The real skill is matching the weight of the spec to the stakes of the work.
I run it off a simple mental table. "Build me a..." gets a full spec, all six parts, because a new thing has the most room to drift. "Quick fix for..." gets a minimal spec, usually just What and the edge cases, because the surrounding system already constrains most of it. "Architect a system" gets the full system template with data flow and failure modes, because the blast radius is enormous. And "debug this" skips spec capture almost entirely and jumps to counterexample hunting, because the thing already exists and the job is to break it, not define it.
How do you know which one a task needs?
Ask what it would cost to get it wrong. A throwaway script that only you will run tolerates a one-line spec, because the failure is a shrug and a re-run. A multi-tenant feature where one user could see another's data tolerates nothing less than full invariants, because the failure is a breach. The rigor should scale with the cost of being wrong, not with how important you're trying to feel. Under-spec the high-stakes work and you ship a landmine; over-spec the trivial work and you never ship at all.
The trap on both ends
Two failure modes bracket this. On one side, treating every task as heavy, which grinds you to a halt and teaches you to resent the process. On the other, treating every task as light, which works right up until the one time it doesn't and the light-spec habit meets a high-stakes problem. Calibration is the whole game, and it's a judgment you get better at by paying attention to which failures actually hurt.
The takeaway: match the spec's weight to the cost of being wrong, going full on the high-stakes work and minimal on the throwaway, because rigor is a tool to aim, not a badge to wear.