IIRC, you can use broadcast instead of unicast.  Then you'll get back the channel + the enumerator, and you can directly create the actor instead of hiding it in a promise.  This code is fine though.