Question
Your team's Rust codebase has hard rules: all errors flow through a custom `AppError` type via `thiserror`, no `unwrap()` in non-test code, and all public functions are documented. You're giving an AI agent a task to add a new metrics-ingestion endpoint. How do you keep the agent inside these guardrails so its output doesn't need a convention-cleanup pass on review? What's the difference between a guardrail the agent will actually honor and one it'll quietly violate?
Treat the AI’s output as a draft to verify, not an answer to trust. Name the specific flaw and the input that triggers it, say how you’d catch it — tests, edge cases, reading critically — and how you’d re-prompt or decompose to get it right.
Vibe coding: describe the solution in plain language (or narrate it) and the coach grades your approach. Generating runnable code from your description is coming next.