court_id e holds na agendaacademy_classes) podem ter sync_court_holds: quando ativo e os slots têm court_id, são criados bookings do tipo ACADEMY_CLASS_HOLD para as próximas N semanas (config/kolos_academy.court_hold_weeks_ahead / KOLOS_ACADEMY_COURT_HOLD_WEEKS).UpdateAcademyClassAction valida conflitos com exclusão da própria turma, persiste sync_court_holds e volta a sincronizar holds.src/Modules/Academy/Support/MergeContiguousAcademyPickerHours.php, ValidateAcademyScheduleSlots (UUID em court_id).app/Livewire/Concerns/WithAcademyCourtSchedulePicker.php, TrainingClasses, CoachCreateAcademyClass.resources/views/livewire/venue/training-classes.blade.php, .../academy/coach-create-academy-class.blade.php.tests/Feature/Academy/AcademyClassCourtHoldsTest.php, MergeContiguousAcademyPickerHoursTest.php.