Enum — фиксированный набор констант без (или с ограниченными) данными; sealed позволяет подтипам нести разный payload и поведение.
Разбор
enum class Status { OK, FAIL } — простые метки.
sealed class Result { data class Ok(...); data class Err(...) } — разные поля.
- Enum удобен для сериализации простых статусов.
- Sealed лучше для доменных событий и UI-state.
Итог
Enum = метки; sealed = алгебраический тип с данными.