I think DVV merge will break. This can only happen when two vclocks descend each other: that means they are causally equal but with different timestamp(s) against some counter. The DVV merge will drop any value that is both dominated and not in both objects. If A and B have a dot {id, {1, TSA}} and {id, {1, TSB}} and a vclock [{id, {1, TSA|TSB}}] both dots will be dropped as both are dominated, and neither is in both objects.