Interesting post! I disagree :)
You say "if async is only discovered during side effects, it’s already too late", which is true. The solution is to update async stuff first, _then_ run side effects once resolved. Repeat until settled.
So if I have something like this, and `slug` changes...