# Flex Auth replay contract fixtures Copied byte-for-byte on 2026-09-09 from flex-auth revision `88b354377c8e26b162f1234e673072f1c06dcd89`, examples/secrets-engine/ and its replay/ directory. Contract: FLEX-DEC-2026-012. These are standalone evaluator outputs, not deployment evidence. Each output is paired with its independently supplied check_request input. Tests compute submitted_request_digest from that input; they do not reconstruct it from the enriched response. Existing request_digest, approval_binding_digest, policy-package and registry-snapshot pins are unchanged. Policy remains v2. Approval correspondence compares claim.binding.pdp_digest with the evaluator's approval_binding_digest. Neither is computed from the unenriched request. Tests inject the actual decision time instead of modifying captured lifetimes. The older flex-auth-live fixture remains untouched and must fail the new contract because it has no submitted_request_digest. `tools/exercise_approval_identity.py` additionally compiles the owner evaluator and runs real KeyCape/Approval Engine/Flex Auth joins with synthetic credentials, including registry override and destructive-action dual control. Its receipt pins source, binary and producer inputs; it makes no live admission claim.