# Verification checks (P4) - Clean re-run of out/analysis.py: results.json byte-identical (cmp) -> PASS - n_harmonised equals count of non-null values -> PASS - n_not_harmonisable equals count harmonisable=false -> PASS - n_harmonised + n_not_harmonisable = n_analysed = 5 -> PASS - null value <=> harmonisable false <=> missing_quantity set -> PASS - all non-null values finite -> PASS - E1 matches printed % change -35.0% to 0.05 -> PASS - signs preserved vs printed effects (E1-,E2+,E3-,E5-) -> PASS - E2 near text-implied scale (abstract 1.5 pp on ~75%) -> PASS - E3 magnitude comparable to abstract '2% employment decline' -> PASS - E5 = 100*baseline printed value -> PASS - n_input_rows matches wc -l (134,58,66,91,16) and 5 items -> PASS - exclusion ledger: 5 - 0 = 5 analysed -> PASS - No standard errors / CIs are produced (none required), so CI-containment and SE-positivity checks are not applicable. - No date-ordering constraints apply beyond using only the provided extracts (all are dated before the task date).