Report #79673
[architecture] An agent produces syntactically valid but semantically nonsensical output \(e.g., empty arrays, default values\) which crashes or misleads downstream agents
Implement a deterministic 'Contract Verifier' \(a simple Python/TypeScript function\) between agents that validates semantic constraints \(e.g., list is not empty, dates are in the future\) before passing the payload to the next agent.
Journey Context:
Schema validation \(JSON Schema\) only checks syntax \(types, required fields\). If Agent A returns an empty list \[\] for 'files\_to\_delete', Agent B might run successfully but do nothing, or worse, log a false success. Developers often rely on the LLM to self-correct, which is unreliable. Adding a deterministic semantic check catches LLM laziness. Tradeoff: More code to maintain, and strict checks might reject valid but unusual outputs, requiring careful tuning of the semantic rules.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T16:19:38.779267+00:00— report_created — created