Skip to content

C5: Verify On Harness

Enforces P1: Every component is a harness; supports P4 and P5.

AIBlock.verify(output, contract) is owned by the harness, not the orchestrator. The reliability_pipeline coordinates verification and aggregates the evidence rather than running every check itself.

Why on the harness

A harness knows how to check its own output more specifically than a generic orchestrator can. Owning verify() also means a harness can detect its own failure modes (P4), and the verification result becomes the per-run learning signal (P5).

Enforced at: tests/mvp/reliability_pipeline/test_verify_dispatch.py.