Hmm, I think the way I have it is correct.  Here the Target is the remote dead shard copy that needs to be replaced.  We need to make sure that we don't skip over anything that the client might not have seen, so we need to pick a local Source sequence for which everything "beneath" it is wholly contained in the Target sequence observed by the client.

I'm happy to take suggestions on a better naming convention.