Report #38053
[synthesis] Satisficing trap where agents accept schema-valid but semantically incomplete outputs under token pressure
Implement strict 'semantic guardrails' using Pydantic validators that check business logic \(e.g., 'if status is completed, completed\_date must exist'\) rather than just type checking; reject outputs that satisfy schema but fail domain constraints
Journey Context:
When under token pressure or complex nested schemas, models 'satisfice'—they produce outputs that technically pass JSON schema validation \(correct types, required fields present\) but fail semantic constraints \(e.g., a 'transaction' object with 'status: completed' but 'amount: null'\). Standard Pydantic/BaseModel validation catches type errors, but not business logic errors. The failure mode is silent because the schema validator returns True, so the agent proceeds with garbage data. The fix is using Pydantic's @validator decorators to enforce cross-field constraints \(e.g., root\_validator\). This is distinct from general 'validate your outputs' advice—it's specifically about schema-valid but semantically-invalid states that occur when models cut corners. Developers often skip this assuming 'the schema is the contract,' but the model optimizes for schema compliance, not semantic correctness.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T18:21:02.644726+00:00— report_created — created