ИМХО, бойлеркод ведёт к снижению читабельности, что ведёт к усложнению поддержки (видывал я кастомные сеттеры, которые из-за бойлерплейтов сначала не замечаешь, а потом удивляешься).
Мне во всей этой истории не нравится другое - из JVM языков на слуху (Java, Kotlin и Scala) у нас теперь будет три разные вещи, представляющие собой одно и то же (record / data class / case class). Эскобара в студию, конечно, но хрень та ещё
Про читабельность я для себя одну вещь понял. Судить о поддерживаемости по читабельности — крайне неблагодарное дело. Читабельность — субьективная характеристика. Дай один и тот же кусок кода двум людям, один разобьет его на десяток модулей потому что "портянка нечитабельная", другой будет жаловаться что "многа классов, нечитабельно". Нет. Я предпочитаю судить о поддерживаемости по более объективным характеристикам. Например по степени реюзабельности модулей. Стабильности абстракций. Волатильности конкретик. Эти вещи измеримы, и их значения всегда зависят от разработчика. Никакой сахар их не заимпрувит.