my agent wasn't ignoring customers, my own safety guard was eating the replies

Reddit r/AI_Agents News

Summary

A developer details how their AI agent's silence was caused by safety guards failing closed, timeouts, and nested JSON issues, emphasizing that silent failures are worse than wrong answers in customer-facing chatbots.

for weeks users reported that the agent ignored them. i assumed model flakiness and spent real time swapping models and rewriting prompts. it was never the model. three bugs, all mine, all of them producing silence instead of an error. a guard that failed closed on a delivery path. every outbound reply went through a semantic check with a 10 second timeout, and the check itself called a slow model, so it blew the timeout regularly. the timeout branch was do not send, which on a chat channel means the customer sees nothing at all. a wrong answer is recoverable, silence is not. tools removed before the turn ran, based on a small router model's guess. someone asked for a reminder, the router handed the turn a calendar pack, and the agent tried to walk the user through connecting google calendar instead of using its own scheduler. from outside that looks like a stupid model. it was caged. nested tool args arriving as json strings instead of objects. the handlers did an isinstance check for dict and silently dropped anything else, so the run_at timestamp on those reminders vanished with no error anywhere. the shared shape is that each guard turned a wrong state into a quiet one, and every one of them passed the test suite, because the tests asserted that the guard fired rather than what the user actually received. if you run agents on a live channel i'd like to know whether you landed on fail open too, or found a way to keep a blocking check without the silence risk.
Original Article

Similar Articles