both here and immediate, I wonder if these shouldn't be matched in nesting, that is:

 1. do async-listener stuff
 1. do domain stuff
 1. do handler
 1. do domain stuff
 1. do async-listener stuff

Looking to make sure the ordering here is paired among them such that we're not getting negative interaction between the two -- though right now there's probably no code or state sharing it just makes my spidey sense tingle