Wrote a test that was doing some more intense verification of equality of two tables and I was surprised to find that the tables were in fact not equal.
Digging into it some more, I eventually found that the keys and values were identical, save for the timestamp. Despite the Mutations coming from the local WAL having timestamps set by the server, these got lost.
Specifically, the "real" timestamp is stored on the ServerMutation, not each ColumnUpdate. On the peer, when the BatchWriter makes a shallow copy of the (Server)Mutation to apply on the target table for replication, we lose that ServerMutation and get a "regular" Mutation which has updates that don't have any timestamp set. If the BatchWriter didn't make the shallow copy, this should work.