Full record of the species-swap experiment: NaCl and ZnS with one exchanged species pair, bit-identical geometry, and the response of every sanity-card gate, bond valence sums, Ewald energies, and prototype-aware matching.
Every gate passes. The structure is still wrong.
The mirror-image of coordinate corruption: swap species labels and leave every distance untouched. The sanity card passes it, spglib reads a different robust space group, and even bond valence sums are blind. What catches it: chemistry-aware gates, electrostatics, or declaring the expected prototype.