Hash the Sampler Output Before You Freeze an Agent-Patch Failure
Description and use
An automation recipe that hashes sampler output, stores it in a fixture, and classifies agent‑patch runs to correctly decide when to allow a freeze.
Problem
Agent‑patch failures are hard to distinguish from flake when the sampler output is not hashed and compared, leading to false freeze decisions.
Outcome
The recipe ensures that only genuine harness flakes trigger freeze requests, preventing accidental freezes due to property misses or fixture drift.
Workflow
- Persist sampler bytes before any assertion and hash them with SHA‑256.
- Store the digest beside the run ID and confirm the pin with the standard library.
- Point the property oracle at the fixture file path, avoiding live calls.
- Record transport status in explicit fields (transport_ok, status code, timeout flag).
- Load two run records, classify the pair, and allow a freeze only for harness_flake.
- Leave expiry, merge rights, and other policy decisions outside the module.
Evidence
Persist sampler bytes before any assertion and hash them with SHA‑256.
The oracle takes a path. It does not call the model, and it does not open a socket to the generator host.
Keep the transport record small and explicit. Suggested fields are transport_ok, a status code, and a timeout flag.
Load two run records. A missing digest stops at unclassified. Different digests stop at fixture_drift and should open a fixture-refresh ticket, not a freeze.
- Record date: 2026-10-13T05:41:28.569Z