Verification checks (P4)
- Clean re-run (results.json deleted, regenerated twice, byte-identical via cmp): PASS
- E1 matches printed % change -35.0 at 1dp: PASS
- E1 recompute: PASS
- E2 recompute 100*1.47/75.0: PASS
- E3 recompute 100*-0.388*0.047: PASS
- E3 magnitude vs abstract '2% employment decline' (same order, negative): PASS
- E4 null with missing_quantity and harmonisable false: PASS
- E5 = 100*-0.0962: PASS
- signs preserved vs baseline printed values: PASS
- n_harmonised + n_not_harmonisable == n_analysed == 5: PASS
- harmonisable items have null missing_quantity: PASS
- n_input_rows matches wc -l: PASS
- feasibility complete consistent (every item has value or justified impossibility): PASS
- exclusions: 5 raw - 0 removed = 5 analysed: PASS