Given that you may be picking a random node's seq value, it seems like history should be pulled from the same node. Granted we should always be writing target first so source should always be a subset if its not equal but it seems like the sort of thing we should at least throw an error on (ie, if TargetSeq < SourceSeq).