# Checks (P4) | # | check | outcome | |---|---|---| | 1 | Clean re-run (delete results.json, rerun analysis.py) reproduces byte-identical results.json | PASS (cmp identical) | | 2 | n_supported+n_not_supported+n_not_assessable = 6 = n_analysed | PASS | | 3 | verdicts/locators/reasons each have exactly keys A1–A6; labels in allowed set | PASS | | 4 | Source SHA-256 match README | PASS | | 5 | A1: printed % (-35.0) equals 100(exp(-0.431)-1) = -35.01 rounded; |z| = 2.052 > 1.96 and > 2.0; ** printed | PASS | | 6 | A3: printed -24.7% equals implied -24.65%; asserted 28.3% ≠ | PASS (assertion contradicted) | | 7 | A4: 95% CI [-0.896, 0.084] contains estimate and zero; same under 2.0 ([-0.906, 0.094]); asserted interval equals ±1 SE [-0.656,-0.156] | PASS (assertion contradicted) | | 8 | A5: regex search for men/women/male/female/sex/gender in DCR extract returns no lines | PASS (not_assessable) | | 9 | A6: CI contains estimate; 1.99/17.3 = 11.50% | PASS | | 10 | data/ unchanged after accidental write (data/out removed; hashes re-verified; listing shows only original files) | PASS | | 11 | Baseline vs final: 4/6 agree; disagreements (A2 sign, A5 missing subgroup) are explained by baseline ignoring sign and population | PASS (expected) | | 12 | Internal inconsistency A19 SE 0.218 vs Table 6 0.210 | Reported in data_issues; |z| with 0.218 = 1.977 (>1.96, <2.0); not decisive for A1 since A1 cites Table 6 and ** printed in both |