01
Two loops, one boundary
Inner loop · agentInvestigate → implement → test → report
Outer loop · humanChoose → frame → verify → approve → learn
Evidence crosses the boundary: plans, diffs, tests, logs, and a short explanation.The highest-leverage human intervention often happens before generation. An hour reviewing a concise plan can replace a long search through a large generated diff for the decision that went wrong.
02
Set each switch separately
LoopOracleMode
Fix one lint violationLint + focused testsDark
Mechanical dependency updateBuild + compatibility suiteEarned dark
Change a public APITests miss ecosystem costLit
Modify auth or billingLarge blast radiusLit
The dangerous policy is one global switch. All dark grows hidden debt; all lit turns human review into an unbounded queue.
03
Architecture becomes a safety system
Good boundaries, clear types, short call stacks, dependency injection, and test seams are not nostalgic craft. They reduce blast radius and give automated checks something rigid to enforce.