Я слегка не правильно написал.
Суть в том, что await всегда тормозит функцию. Теперь представь, что бы было без async ключевого слова. Есть два исхода, либо они убирают этот функционал с постоянным торможением, но тогда await не делает ровным счётом ничего без async. Либо оставляют, но делают этим ещё хуже. Так как человек вызывает с виду обычную синхронную функцию, не делает никаких ожиданий, а она ему по какой то причине тормозит всё.
Не стоит сравнивать await и промисы. Промисы ты можешь спокойно обрабатывать через next. в то время как await без async теряет весь функционал.