// определяем модель данных
paymentProvider: {
type: ENUM('stripe', 'paypal', 'coupon')
}
// далее где-то в коде сломались тихо
user.paymentProvider = 'stirpe';
// или сломались явно
user.paymentProvider = User.PAYMENT_PROVIDER_STIRPE;
На опечатку в константе будет ругаться компилятор, а на опечатку в волшебной строке — нет, и ошибка вылезет только в рантайме.
Ну окей, в приведенном примере не все языки ругнутся на этапе валидации синтаксиса, но ошибка все равно поймается раньше, чем будет обращение к базе.