Ура!
Чтобы такого не было, нужно TypeScript использовать
Или можно от промисов отказаться в пользу async/await, там такой ошибки не может быть
ну не, можно и на async/await написать что-то странное.
но читабельность будет немного лучше, да.
вот только лучше бы как раз с промисами разобраться, чтобы не было эффекта "карго-культа" на async/await