# CON018-LAB1 — Publication candidate gate

Implement `evaluate_candidate(case)` in `starter.py` using only the supplied fixture evidence.

Return these fields: `source_predicate`, `provenance_predicate`, `rights_predicate`, `approval_predicate`, `qc_predicate`, `blocking_gate`, `release_state`, `recheck_trigger`.

Rules to preserve: predicates are independent; candidate digest binds approval; C2PA validity supports provenance only; mandatory failures cannot be averaged away. Do not invent rights, approvals, or QC judgments.
