pub fn check(
contract: &FreshnessContract,
input: &FreshnessCheckInput,
) -> FreshnessDecisionExpand description
Evaluate contract against input, returning a deterministic
FreshnessDecision.
Precedence:
- Domain mismatch is checked first (cheap, structural).
- Signature missing-when-required is checked next.
- Signature mismatch is checked before TTL so a rotated signature never silently slips through on an unexpired contract.
- TTL (elapsed > max-age) is the last gate.
The decision is fully determined by (contract, input) — no I/O,
no clock reads.