I used to think “better prompt” would fix everything.
Then I watched my system break because the agent returned:
Sure! { "route": "PLAN", }
So now I treat agent outputs like API responses:
- Strict JSON only (no “helpful” prose)
- Exact schema (keys + types)
- No extra keys
- Validate before the next step reads it
- Retry with validator errors (max 2)
- If missing info -> return unknown instead of guessing
It’s not glamorous, but it’s what turns “cool demo” into “works in production.”
If you’ve built agents: what’s your biggest source of failures, format drift, tool errors, or retrieval/routing?
[link] [comments]