damn, need even more consistency checks to tackle this bug
wooo, that was nasty. `_: NonEmpty` doesn't match when `that` comes from another outer instance, even if both instances are the "same" according to id; so the other instances come from two different deserialisation points, that did fail with two leaves not matching although being logically the same.