промисы тут вообще не причем...
просто в текущей реализации "самодельные" async ф-ии не работает так как описано в доках, хотя в node.js работает.
Вместо немедленного возврата промиса сейчас асинк ф-ия (САМОДЕЛЬНАЯ) возвращает его только после выполнения своего тела.
Фактически сейчас async это генератор-фия с немедленным вызовом .next()и без yield()
а встроенные разрабами мозилы async ф-ии, наприме fetch() работают по докам, немедленный возврат промиса и выполнение следующей строки.
покопавшись в отладчике — вроде fetch определен как генератор а не асинк или возможно и как оба сразу... но точно не как только async