Also, your services have the free benefit of being naturally indempotent (each service receives a COPY of the message, so one service can't mess with the objects of another service) increasing your code security.
There's a typo on the bolded word, most likely you meant idempotent, but that's not really what idempotence means. I think it's clearer to replace the sentence with the explanatory text in parens, as the services are not necessary idempotent, nor are the arguments necessarily immutable. Really there's just the guarantee that the called services will not mutate the arguments because the arguments are sent via message passing.
There's a typo on the bolded word, most likely you meant idempotent, but that's not really what idempotence means. I think it's clearer to replace the sentence with the explanatory text in parens, as the services are not necessary idempotent, nor are the arguments necessarily immutable. Really there's just the guarantee that the called services will not mutate the arguments because the arguments are sent via message passing.