Write the full check(row) for the two-feature contract — null policy first (logins required, tickets nullable), then type, then range — and run the three rows through it, printing ("OK " if clean else "FAIL") followed by the error list (or empty string).