"""Verify the frozen release and reproduce its selected address counts."""
import csv, hashlib, json
from pathlib import Path
r = Path(__file__).resolve().parent
for name, digest in json.loads((r/'checksums.json').read_text()).items():
    assert hashlib.sha256((r/name).read_bytes()).hexdigest() == digest, name
with (r/'records.csv').open(newline='') as f: rows = list(csv.DictReader(f))
assert len(rows) == len({x['record_id'] for x in rows}) == 14673
selected = [x for x in rows if x['house_description_match'] == 'true']
def addresses(group): return {(x['address'], x['zip']) for x in group}
assert len(selected) == 3793 and len(addresses(selected)) == 3792
months = {m:len(addresses(x for x in selected if x['permit_date'].startswith(m))) for m in ['2026-07','2026-08']}
assert months == {'2026-07':475, '2026-08':426}
print(json.dumps({'records':len(rows), 'matching_addresses':len(addresses(selected)), 'months':months,
                  'change':months['2026-08']-months['2026-07']}, indent=2))
