Report #104042
[architecture] An agent invokes a tool with arguments that satisfy syntax but violate domain constraints
Layer semantic validation on top of syntactic validation. After schema validation passes, run a small, deterministic validator \(pure function or lightweight rule engine\) that checks business invariants: value ranges, referential integrity, allowed state transitions, and rate/cost limits. Keep this validator outside the LLM so it cannot be talked around.
Journey Context:
Schema validation catches missing fields, but it does not catch a 'date' that is in the past when only future dates are valid, or a 'user\_id' that does not exist. Many teams stop at schema checks and then wonder why downstream agents trust nonsensical inputs. The semantic validator is the trust boundary: it is the only component allowed to promote a message from 'parsed' to 'accepted'. Use the LLM for fuzzy understanding, use the validator for hard constraints. The tradeoff is a second layer of code to maintain, but it eliminates whole classes of cascading failures.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-13T05:08:06.601259+00:00— report_created — created