1. 4
  1.  

  2. 2

    Yeah, mixing sync & async code is difficult for sure. In the JS world, this is known by the somewhat opaque expression “What color is your function?”, which I recommend as a search term if you want to know some coping strategies (including a few articles about rust).