How to pass a reference to a trait object from async function to another async function?

T: Sync is for<'a> &'a T: Send. Here's my favorite exploration of those traits. Note that the restraint is not only about serial access. But even if it was, the trait system is at too abstract of a layer to prove there is none here.

Other options include using dyn MyTrait + Sync or adding a Sync supertrait bound.