| Re-run analysis.py twice, byte-compare results.json |
PASS (identical) |
| Memo reproduced from data: alpha 2.0925, beta 0.1017, se 0.0448, t 2.27, p 0.0238, n 400 |
PASS (alpha_hat, beta_hat, se_iid, t_iid, p_iid match to reported precision) |
| Manual Bartlett sandwich equals statsmodels HAC SE (rel tol 1e-8, assert in script) |
PASS |
| se_iid > 0, se_hac > 0 |
PASS (0.0448, 0.0651) |
| CI contains beta_hat; CI = beta ± 1.96 se_hac |
PASS ([-0.0260, 0.2294]) |
| t_hac = beta_hat/se_hac; p_hac from N(0,1) |
PASS (1.562, 0.118) |
| memo_claim_supported == (p_hac<0.05) and CI covers 0 consistent |
PASS (false; CI covers 0) |
| Exclusion ledger: 400 - 0 = n_analysed 400 |
PASS |
| Magnitude vs baseline: se_hac/se_iid = 1.45; with rho_resid≈0.61 and x ac1≈0.66, Andrews-type inflation factor sqrt((1+ρxρu)/(1-ρxρu)) ≈ 1.53 — consistent |
PASS |
| Sensitivity: verdict unchanged for all L in {5,8,12,16,24} (min p 0.114) |
PASS |