feat: checks can return strings explaining why a check failed