Data audit (P1)
| file | SHA-256 | rows | cols |
|---|---|---|---|
| data/canada_gdp_employment.csv | f4c8e4976fb5f5f0c326e40bcb4f85b8b22963e5be89e2729e1a430c198f2bed (matches README) | 345 data rows + header | 5 |
| data/README.md | 2000e2e64c856f80d0781666df479d4ebfc63cb09ce41d9db99c04ca2b92fa2f | — | — |
- Schema: month (date, YYYY-MM-01), gdp_level (float, chained 2017 $ millions, SAAR), gdp_yoy (%), emp_level (float, thousands), emp_yoy (%).
- Date range 1998-01-01 .. 2026-09-01, monthly, no gaps, no duplicate months.
- Missing: gdp_level, gdp_yoy missing for 2026-08, 2026-09 only (unpublished). emp complete.
- YoY recomputation from levels (rows 13+): max abs diff 5.0e-5 for both series (4-decimal rounding) — consistent.
- Anomaly: gdp_yoy/emp_yoy are populated for 1998-01..1998-12 although README says empty for the first 12 months; cannot verify (1997 levels absent). Used as given; documented in results.json data_issues.
- Anomaly: pandemic outliers 2020-03..2021-12 (GDP YoY −16.2 to +18.5). Handled by a pre-specified exclusion from estimation samples only (evaluation targets 2022-06..2026-07 unaffected).
- Information availability: the file contains values after each origin's information set (current vintage, future months). Handling: analysis.py truncates the series to gdp ≤ t−2 and emp ≤ t−1 before building every estimation sample and plug-in values; asserted in code and checked in forecasts.csv. Vintage issue (revised data) cannot be fixed; no real-time validity claimed.
- Exclusion ledger: out/exclusions.csv (per horizon, at the last origin; regression rows indexed by pseudo-origin month s).