eval_gate_failed
Publish is blocked: no completed golden-transcript replay run has passed for this agent's exact current draft hash and revision, the queued/running/latest run did not pass, or the definition changed while publish acquired its lock. errors[] carries the EvalRun id when one exists (§2 Step 2).
Problem shape
Every non-2xx response is an RFC 9457 application/problem+json body. The type URI below is stable and machine-matchable, so branch on the final path segment (the code) and treat the status as redundant confirmation. See the error-handling guide.
{
"type": "https://docs.vocapable.com/errors/eval_gate_failed",
"title": "…",
"status": 409,
"detail": "…",
"instance": "/v1/…"
}