The only time I encounter what you describe is when I mock the server
side code on the client side. In other words, in your code example, I
might have myRemoteService actually be an instance of some
MyRemoteServiceAsyncMock, that returns dummy data while I wait for
someone else to write the server side impl (or until I do it myself).
In that case the async call is actually sync and so I might need a
deferred command to make sure that code outside the async call is run
before the call itself. Otherwise you should be able to count on
things happening in the expected order.