There is also at least one invocation where you made the call is asynchronous, when it should be synchronous instead - in DistributedTaskPart.execute(). So I still think having no default response mode would be an improvement.

Even making SYNCHRONOUS the default would be better, at least we'd be consistent with the other methods in RpcManagerImpl that don't have a sync parameter.

Perhaps requiring a ResponseMode parameter instead would be even better?