We might need to add a note about how it's critical that the same logic used in your event listeners to populate the positions *must* be used in your controller to make the positions here. It's a little unfortunate that the logic is duplicated. In reality, often in the AJAX callback, I'll "submit the form" with just the one piece of data "sport_id", and then grab the data I need from the field (since the event listeners have fired). I can't remember how clean that all ends up looking, and I have seen people confused about why we're "submitting the form", but it's a thought.

What do others think?