Here's a question I'm a little afraid to ask myself: when did I last hit "approve" on a chunk of code I didn't actually fully understand?
With an agent, the distance from "don't understand" to "merged" is alarmingly short. It returns a clean diff, looks reasonable, seems to run. You nod. Three days later it surfaces: it picked the wrong direction from the start — and now the whole feature is built on that wrong foundation.
"Plan before you execute" — everyone's heard it. But I've noticed most people — me, early on, included — trip on one small, fatal thing: they ask for a plan instead of gating on it.
01The difference is the full stop
✕ Asking
✓ Gating
The whole difference lives in the STOP. The gate forces a human-review moment to wedge itself between "understand" and "do."
Asking is tossing out a question and letting it run. Gating is setting a clear condition: lay out the plan, then stop, no code until I nod. A gate, not an invitation.
02A good plan answers three questions
A plan like "I'll add feature X by updating the relevant files" is useless — it sounds like substance and commits to nothing. Force it concrete enough that you catch the mistake before it codes:
- What it touches — which files, which modules will change.
- Which approach, and why — which direction it chose, and why not the other.
- What it's unsure about — the risks, the fragile parts.
Question three is gold. An agent willing to say "I'm not sure about Y" is pointing you straight at where to look. An agent certain about everything is about to surprise you in the bad way.
03The sign you just got saved
A simple test: if the plan surprises you, the gate just saved you. Surprised like "why is it editing that" — it misread the scope. Surprised like "it's about to rewrite the whole module" — five times more than you need. And if every plan matches what you were thinking? Great — you approve in ten seconds, lose nothing.
04When to skip the gate
The gate isn't free in rhythm. Small, single-file work — a typo, a button color — demanding a plan is pointless friction. The rule: the more it touches, the harder to undo, the more it deserves a gate.
This thirty-second gate, I used to skip because it felt like friction. Now I treat it like a seatbelt: rarely needed, but the one time it is, you're absurdly glad it's there.