Дмитрий, каждая миграция на изменение enum выполнится просто с одинаковыми параметрами. Да она выполнится 3-5-10 раз (это тоже решается если разбирать мусорку из миграций хотя-бы раз в год), но она выполнится с тем массивом который указан в типах.
Александр, по ссылке написано буквами "выполнить валидацию поля, только если это поле присутствует в проверяемых данных", а не "sometimes как раз останавливает проверку, если предыдущее правило false", а это значит что если если поле в реквесте есть, а оно есть, то оно должно быть обязательным и должно быть картинкой в соответствии с тем что написано выше, собственно ответ сервера соответствующий.
Александр, sometimes не имеет ничего общего с тем что ты написал, читай документацию. Проверка останавливается как только любое правило возвращает false. Не надо усложнять себе жизнь лишними правилами.
Изучать начал а документацию не читал. Сядь прочитай ее с начала и до конца там 15 страниц всего. Они дадут более чем достаточное представление что умеет фреймворк
JhaoDa, не чем не "желательно" потому что не меняет ничего. Он сделан не для того чтобы его применять потому что все равно ничего не поломается/изменится.