1# Verification checks (P4)2| # | check | outcome |3|---|---|---|4| 1 | Clean re-run of out/analysis.py (results.json and exclusions.csv deleted first) gives byte-identical results.json | PASS |5| 2 | Hand-coded Newey–West (Bartlett, L=8, n/(n-2) correction) SE = 0.0653108 matches se_hac | PASS |6| 3 | t_hac = beta_hat / se_hac | PASS |7| 4 | beta_ci_low < beta_hat < beta_ci_high | PASS |8| 5 | se_iid > 0, se_hac > 0; se_hac/se_iid = 1.46 > 1, as expected with positively autocorrelated x and u | PASS |9| 6 | Baseline (iid) reproduces memo: a=2.0925, b=0.1017, se=0.0448, t=2.27, p=0.0238 | PASS |10| 7 | Exclusion ledger: 400 raw − 0 removed = 400 = n_analysed | PASS |11| 8 | Verdict consistency: p_hac>0.05 and CI contains 0 -> memo_claim_supported=false; holds for all lags in {5,8,12,16,24} | PASS |12| 9 | rho_resid=0.61 vs stated ~0.7: plausible (OLS residual autocorrelation is biased downward in finite samples); not a failure | NOTE |13