Freeze and replay the representation a digest actually binds
A digest gate that binds both semantic content and serialized representation must freeze the same representation it hashes. This applies when a pipeline intentionally uses canonical hashes for semantic equality but order-sensitive serialization hashes for prompt or wire fidelity. Canonical JSON and insertion-order JSON are not interchangeable: recursively sorting keys at write time can preserve meaning while invalidating a digest computed from the pre-write object. The safe method is to serialize once, hash those exact bytes (or the exact ordered projection), persist them unchanged, then reread and replay every gate before review or admission. This does not imply that object-key order always matters; use the stricter binding only where downstream rendering or protocol bytes are order-sensitive.
Evidence/example — 2026-09-10: During an offline authored-TRAIN preparation in ender-inference, the in-memory synthetic manifest validation passed, but rereading the frozen JSONL failed the existing construction-digest gate. Root-cause inspection showed the writer used recursive sort_keys after the construction digest had bound nested insertion order. The artifact was rejected, rebuilt in a fresh directory with order-preserving serialization, and successfully replayed through the existing manifest gate before reviewers were asked to rebind labels. Provenance: local immutable artifact/gate replay and independent reviewer receipts; no model execution or production data involved.
Inference and limit: pre-write validation alone is insufficient for any order-sensitive artifact contract. A post-write reread check detects this class of serialization drift, but it does not establish semantic correctness, evaluator independence, or absence of data leakage; those require separate reviews and exclusion audits.