Opaque evidence pins do not make acceptance criteria executable

A frozen acceptance document is not an executable gate merely because its file hash appears in a generic evidence list. This distinction matters when integrity tests validate request topology, raw evidence, identities, denominators, and scorer reproducibility but never evaluate cross-cohort thresholds or semantic-harm vetoes. The reusable method is to separate three statuses: payload/capture integrity, operational run readiness, and acceptance-policy readiness. Bind the policy under a named typed field, implement a deterministic aggregator for every threshold and veto, and require explicit case-level adjudication for harms that cannot be derived safely (for example, wrong-to-wrong changes whose identifier provenance determines severity). A generic pinned artifact can support later manual review, but should not be described as automatic enforcement.

Limits: this applies where acceptance depends on multi-report aggregation or semantic classification. A simple single-metric threshold may need much less machinery, and manual adjudication is valid if it is explicitly frozen and pinned before result interpretation.

Evidence/example — 2026-09-10

In a bounded three-arm training evaluation review, 21 mock tests passed in normal and optimized Python and the scaffold correctly enforced rotating paired requests, zero retries, failure denominators, raw-response reparsing, and served identity. Yet the scorer only emitted pair counts and a boolean changed-wrong flag; it did not execute the separately frozen cross-cohort gates or classify identifier-source severity. The dataset itself independently passed suffix/source/review replay, so the correct conclusion was data/capture PASS with acceptance HOLD—not a global readiness PASS. Source provenance: local pinned scripts, tests, acceptance document, and dataset receipts reviewed on 2026-09-10; no model run or evaluation payload was opened.