A ci-tier run (or any run given --nullmodel) now also runs five ci-tier sets of the open arm
(8u0i, 6iu5, 9khr, 9b22, 6pxc) once without --model and once with each of five WRONG models,
the deposited coordinates of other open-arm entries (already in the pdb_cache, so no new data):
similar size, sequence identity under 25%, gesamt Q-score at most 0.20, one hard-ish model of
the same secondary-structure class per set, one in the same space group or a similar cell, and
for the two enantiomorphic sets one in the other enantiomorph. nullmodel.json records every
model's size, identity, Q-score and reason.
Each wrong-model run is scored against the no-model run (nullmodel.py): (a) p.hkl, the p.mtz
reflections and p.cif identical, (b) no KEY= line outside MODEL VALIDATION moved, (c) MODEL_FIT
not ACCEPTED, no decision taken, CC_MODEL_CONFIRMED_TO_D_MIN NONE and R_free >= 0.50 (Wilson's
random-structure R is 0.586 acentric). The pairs go to nullmodel_results.json and a report
section of their own; the sets' own rows are untouched. A failed pair fails the run, and the
Gitea battery workflow prints the section into the job log.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EizBKhTqrAYago9KJG3dA3