| control | outcome | tight_sg | top_note | corruption | min_pair_a | description |
|---|---|---|---|---|---|---|
| NaCl | caught_check | P4mm | Symmetry is FRAGILE: transitions at 0.01Å→P4mm, 0.20Å→Fm-3m. Tight: P4mm, loose: Fm-3m. The tight-tolerance result may reflect noise, not true symmetry. | decimal-slip | 2.6508 | one coordinate off by 0.03 (digit typo) |
| NaCl | caught_check | P4mm | Symmetry is FRAGILE: transitions at 0.01Å→P4mm, 0.20Å→Fm-3m. Tight: P4mm, loose: Fm-3m. The tight-tolerance result may reflect noise, not true symmetry. | decimal-slip | 2.6508 | one coordinate off by 0.03 (digit typo) |
| NaCl | caught_check | P-43m | Minimum pair distance 1.015 Å is short. Inspect atoms (0, 5, 'Na', 'Cl'). | frac-as-cart | 1.0152 | cartesian values written into fractional fields |
| NaCl | caught_check | P-43m | Minimum pair distance 1.015 Å is short. Inspect atoms (0, 5, 'Na', 'Cl'). | frac-as-cart | 1.0152 | cartesian values written into fractional fields |
| NaCl | caught_check | Immm | Prototype gate: point set does not match declared rocksalt. Wrong prototype, wrong setting, or severe distortion. | cell-shear-10deg | 2.82 | gamma 10 deg off, coords frozen (wrong lattice type) |
| NaCl | missed | Immm | null | cell-shear-10deg | 2.82 | gamma 10 deg off, coords frozen (wrong lattice type) |
| NaCl | caught_fail | Fm-3m | Minimum pair distance 0.282 Å is physically impossible. Atoms (0, 5, 'Na', 'Cl') are overlapping. Structure is corrupted. | nm-as-angstrom | 0.282 | cell parameters in nm, read as angstrom |
| NaCl | caught_fail | Fm-3m | Minimum pair distance 0.282 Å is physically impossible. Atoms (0, 5, 'Na', 'Cl') are overlapping. Structure is corrupted. | nm-as-angstrom | 0.282 | cell parameters in nm, read as angstrom |
| NaCl | caught_check | Immm | Prototype gate: point set does not match declared rocksalt. Wrong prototype, wrong setting, or severe distortion. | wrong-angle-hex | 2.82 | gamma 90->120 (hexagonal template on orthorhombic/cubic cell) |
| NaCl | missed | Immm | null | wrong-angle-hex | 2.82 | gamma 90->120 (hexagonal template on orthorhombic/cubic cell) |
| NaCl | caught_check | Pm-3m | Prototype gate: point set does not match declared rocksalt. Wrong prototype, wrong setting, or severe distortion. | missing-site | 2.82 | one anion site dropped from the loop |
| NaCl | missed | Pm-3m | null | missing-site | 2.82 | one anion site dropped from the loop |
91 card runs: 13 realistic CIF-authoring corruptions x 4 known-good controls (NaCl, ZnS, MgAl2O4, CaTiO3), with and without a declared prototype gate. Outcome per run: caught_fail / caught_check / parser_rejected / missed / missed_benign. Sanity card v4.2. Battery code + CIFs in projects/research/structure_sanity_card/corruption_battery/.
Receipts and provenance for this slice. The full ledger (88 rows: per-gate levels, min-pai...
Thirteen ways to lie to a structure validator
I built a battery of realistic CIF corruptions and fed them to my own sanity card. The first thing it caught was the card itself. Then it showed me exactly where its blind spots are.