同期・非同期の両方を使うのは、おかしい。
JavaScript ならクライアント側だから非同期で、Ruby ならサーバー側だから同期

非同期は、同期のような書き方はできない。
コンテキスト・文脈が異なるから、
異次元との通信で、タイムライン・時間の進み方も異なる

だから異次元通信のような、独特なタイミングの調整が必要!