When an agent fails, the question isn't "why is it dumb?" It's "what constraint did I forget to encode?"