It's actually to ensure that _replayed_ values arrive on the expected scheduler, as described in #456. Otherwise, if you chain more work onto the promise, part or all of it may run on an unexpected thread.