| 1 |
Clean re-run of out/analysis.py (results.json deleted first) reproduces byte-identical results.json |
PASS |
| 2 |
n_supported + n_not_supported + n_not_assessable = 6 = n_analysed |
PASS (2+3+1) |
| 3 |
verdicts, locators, reasons all keyed exactly A1..A6 |
PASS |
| 4 |
Input SHA-256 equal to README/bundle values |
PASS |
| 5 |
n_input_rows equal to wc -l (README 14, sources 134/58) and JSON item count (6) |
PASS |
| 6 |
A4 95% CI [-0.896, 0.084] contains estimate -0.406; also includes 0 under ±2.0·SE [-0.906, 0.094] |
PASS |
| 7 |
A1 percent conversion 100(exp(-0.431)-1) = -35.01% equals printed -35.0% |
PASS |
| 8 |
A3 percent conversion -24.65% agrees with printed -24.7% (not -28.3%) |
PASS |
| 9 |
A6 1.99/17.3 = 11.50% agrees with text 11.5% |
PASS |
| 10 |
Baseline (literal number match) vs final verdicts: baseline flags A3, A4 only; it misses A2 (sign flip, "0.063" matches literally) and A5 (no number) — expected limitation of baseline |
NOTED |
| 11 |
No information outside data/ used; script reads only data/ |
PASS |
| 12 |
A5: regex search for men/women/male/female/gender/sex in DCR extract returns no lines |
PASS |