ENGLAND AND WALES — ORIGINAL PHASE 3 — ew-phase3-v1

PURPOSE
Assemble 35,672 LSOA2021 areas × 2022–2025 = 142,688 annual rows.
No accident model, feature effect or insurer-claims validation is fitted here.
The 62-candidate ew-v4 feature registry and its nationally frozen bands are reused.
18 deferred candidates remain deferred. Missing values are not zeros.

USE
lsoa-year-panel.csv.gz: one row per LSOA/year, including zero collisions.
modelling-panel-with-features.csv.gz: the same rows joined to all frozen feature
value/band/status fields. CSV band0 denotes the declared Z band only, not missing.
The feature dictionary/vintage register are in /research/ew-deciles/v4/.
Use analysisEligible for conditional baseline development; preserve excluded rows.
validatedFrequencyEligible is FALSE for every row. strictExposureEligible is a
stricter diagnostic filter, not certification. The phase4 protocol must predeclare
its model cohort and compare denominators on identical outcome rows.

RATE AND SCOPE
ratePer100k = distinct definite-motor injury collisions / preferredMiles ×100,000,
only when the reporting/geography/comparison gates pass and miles are positive.
A positive-exposure zero-collision row has rate0. Withheld rates are blank.
unknownInclusiveRatePer100k adds spatially assigned unresolved motor states; it
is a classification sensitivity bound, not a statistical confidence interval.
Police-reported injury collision frequency is not all insurer claim frequency.

EXPOSURE
AADF includes both travel directions: flow × published km/1.609344 × calendar days.
Annual Counted/Estimated flags and motorway/A-road mileage are retained.
Accepted major routes require same road number, endpoints<=100m, count point<=75m,
route/published length0.8–1.2 and >=99% within its calibration authority.
Primary source section miles use published AADF length, apportioned by routed
segment length when accepted. physicalRoutedMajorMiles separately records
AADF × actual routed in-area segment length × days /1.609344, without normalising
to published length. It covers accepted routes only; it is not an all-road denominator.
Failed routes use same-number then same-class length shares, explicitly flagged.
Minor residual = authority all-motor miles minus reconstructed major miles.
This absorbs major-source length discrepancies; it is not independent minor data.
officialMiles, publishedMajorMiles and minorResidualMiles repeat CONTROL totals
on each LSOA row. Never sum these repeated fields across LSOAs. preferredMiles
and its alternatives are the row-level exposures. majorFallbackShare is the
LSOA major fallback proportion; controlMajorFallbackShare is repeated control
area context. majorMilesInSharedRouteSections flags whole section allocations
where routes share links, not measured overlap mileage. ri maps to the OS source
identifier through road-link-index.csv.gz.
Three independently outcome-free minor allocations: fitted Poisson flow × length,
shrunk traffic benchmark × length, and length alone. The chosen flow is selected
using counted2022–23 sites and five spatial-block folds;2024/25 are diagnostics.
Scenario min/max/spread measure allocation sensitivity, not probabilistic error.
Density and binary resident urban status enter fitted exposure; related feature
findings must survive alternative-denominator sensitivity on identical rows.
urbanFraction is a legacy field name for a binary LSOA urban indicator, NOT the
fraction of residents urban and NOT DfT road-specific urban/rural classification.

GEOGRAPHY
The OS April2026 network is access-screened by excluding fictitious and Restricted
Local Access links. Remaining access is a proxy, not certified public access.
The static2026 road network is retrospective for every year. Full LSOA polygons
and EPSG27700 geometry are used. Coincident road lengths are assigned once;
ambiguous collision-boundary points stay unassigned. Nearest compatible road
alignment<=30m is only a diagnostic and never changes exposure or primary counts.
2022 Cumbria uses one combined published control across319 successor LSOAs.
Never interpret its successor allocations as separate published authority totals.
Barnsley/Sheffield current vs UTLA23 geography remains an analysis exclusion.

VALIDATION LIMITS
Authority conservation establishes arithmetic consistency, not LSOA validity.
Point-count traffic validation is not validation at unsampled links or LSOAs.
Reporting flags, all-collision RAS0403 comparisons and source-code warnings are
retained. Welsh2023 speed fields do not resolve the separate E6 speed source gate.
2025 has previously been examined; no untouched test-set claim is made.
No browser interaction checks were available; see release-verification.json.

OFFLINE COMPACT REPRODUCTION
Unzip reproduce-ew-phase3-v1.zip into an empty directory; create a Python3.12
virtual environment and install public/research/ew-deciles/phase3-v1/requirements.txt.
Run: python scripts/reproduce-ew-phase3.py
This reassembles the panel, feature join, eligibility, reconciliation and area
lookup from audited compact inputs; panel-output-checksums.json verifies exact bytes.
It does not independently regenerate source geometry, routing or traffic fits.

DEEP REPRODUCTION
The source repository contains scripts/build-ew-phase3.py and its frozen helpers.
Obtain the exact hashed source files from source-register.json (canonical public
URLs are https://johanstrydom.com/ plus archive paths); supply the pinned road and
boundary ZIPs named in the script to --sources and an empty --cache directory.
Run --stage prepare, major, model, collisions, panel sequentially. Use an environment
with at least8GB RAM; partitioned geometry checkpoints allow restart. Do not run
multiple heavy national stages concurrently. All original frozen releases remain
read-only. package-ew-phase3.py documents the publication. No downloads occur in
the scientific build script. Full-source hashes must match; changed data needs a
new version. Numerical library differences may affect final floating-point bytes.
