Optional ReadonlyassertWhat the report has to show. Throw to fail. The runner has already printed the standard report by the time this is called, so this is for the derived reads — gates, per-arm significance, a verdict line.
Optional ReadonlyevalDrive the measurement with this harness instead of the real claude CLI —
the declarative home for the second argument of
measureTriggerRate(spec, { evalDriver }), e.g. codexEvalDriver from
vigiles/codex, or a fake runner in a test.
⚠️ measureTriggerRate ONLY. That is not a limitation of this shape but of
the product as it stands: measureTriggerRate is the one measurement with a
public driver seam, and runEval(spec) always drives Claude Code (see
docs/harnesses.md, footnote 2). Declaring it with any other measurement is a
loud error rather than a field that silently does nothing.
Optional ReadonlyskipA lazy precondition. Return a reason to SKIP (exit 77, loud — never a silent green); return nothing to run. Lazy is the point: a probe at the top of the file would be work at import time, which is the shape being removed.
Everything an eval file declares beyond the measurement itself.