UP local election data now live in data/release/, with a generated catalog, column dictionary, row units, join keys, and SHA-256 manifest.
- 212,525 GP-head source records across 2005, 2010, 2015, and 2021; 373,096 candidates in 2021.
- 39 office-specific tables remain provisional source observations (
assignment_usable=false). Their row counts are not distinct seat counts. - Corrected 2015 winner-list semantics and retained both actual candidate names in the unresolved 2021 conflicting-winner contest.
- Analytical tables omit phone numbers and unrecovered headers. Original evidence is preserved separately.
Download up_v2_data.tar.gz, verify it against up_v2_data.sha256, and extract it at the repository root. Start with data/release/CATALOG.md and data/release/DICTIONARY.md.
Validation: 75 Python tests, four R checks, Linux Docker checks, GitHub CI, independent model review, and an offline rebuild reproducing all 54 table hashes.
Original inputs and historical evidence are preserved in the source-evidence release. All 77 evidence assets and the final data download were independently downloaded and hash-verified.