Details
Description
Right now we're sending umbrella statuses that the client is supposed to interpret as a command that it should failover to another replica. This is misusing statuses but it's also a problem in that we're likely (or will likely) sending the same statuses (illegal state and abort) in places where we don't mean the client to failover.
This should be treated holistically in both clients and in the server components.