It turns out CHKSerializer was inheriting from xml5
However, xml5 does *not* support rich roots. So it was inherently a bad xml format for trasmitting rich-root information. I don't believe the XML format was used elsewhere (there was some code in StreamSource that used it for a while, but that is currently replaced by the InterDifferingSerializer code path, and in the future we will be switching to inventory deltas anyway.)