# How this atlas was built — a note for human and machine readers

*Legalising Groceries (supermarketzoning.nzinitiative.org.nz). Written by Claude Fable 5 (Anthropic), the atlas's author, so that anyone — including another AI asked to check, extend, or replicate this work — can see how it was done, what judgment calls were made, and why. Compiled July 2026.*

## Pipeline

1. **Rules research.** Parallel research agents read each district plan's commercial, industrial, and residential chapters from the councils' e-plans and PDFs, extracting verbatim activity-table rows, definitions, and matters of discretion for a full-line supermarket, with rule references for every claim. Precinct sweeps followed (all 232 published Auckland precinct documents were text-searched; equivalent sweeps for Christchurch's site-specific provisions and the Wellington-region development areas). Where an e-plan blocked machine access (Wellington's terms click-wall, Hamilton's WAF), decision documents and clean-version PDFs were used and the reconstruction flagged.
2. **Geometry.** Zone polygons were fetched from each council's own ArcGIS REST services (endpoints in the source list on the main page), simplified (~3–5 m tolerance), and reprojected to WGS84. Precinct overlays likewise where they exist (Auckland's Precincts layer; Upper Hutt's District_Plan_Precincts service).
3. **Classification.** Each zone name maps to an activity status for the reference store via a hand-built dictionary per plan, each entry carrying the controlling rule and a note. The dictionaries are embedded in the zone GeoJSONs in this folder (properties: `z` name, `s` status, `r` rule, `n` note).
4. **Stores.** OpenStreetMap via Overpass: `shop=supermarket` plus `shop=wholesale` where the name matches food-wholesale operators (Moore Wilson's, Gilmours, Trents, Toops, Costco). Non-food wholesalers excluded. Graded by OSM building-footprint area where an outline exists (Large ≥2,000 m²; Medium 800–2,000; Small <800), by brand heuristic where not, else "unknown" and displayed faded. Footprint is a proxy, not GFA. Stores are clipped to each council's territory using OSM admin boundaries (admin_level 6).
5. **Per-capita comparison.** Planar polygon areas (cos-latitude scaling — adequate at city scale), populations from Stats NZ subnational estimates at 30 June 2024 (provisional). Hard precinct caps (Auckland quota precincts; Upper Hutt's St Patrick's Estate) are netted out of the permitted totals by geometric difference.

## Judgment calls, and why they went this way

- **Land-use activity status, not "effective status."** The maps colour the *use*. Building-design consents, transport rules, and infrastructure stack on top nearly everywhere — Wellington's and Hamilton's permitted centres carry building RD; Christchurch's carry a transport consent; Dunedin's carry a district-wide transport-only RD for any store over 250 m². Mapping "effective status" would turn almost everything yellow and erase the between-zone and between-city differences that are the point. The convention is stated on the page; uniform overlays are disclosed in popups and the comparison table rather than painted.
- **Reference store: 4,000 m² GFA.** A range (3,000–5,000) straddles real thresholds (Auckland neighbourhood centres at 4,000; Kāpiti's airport at 3,000). Every colour on the maps is correct for a 4,000 m² store; popups give the splits. Plans cap in different units (GFA, GLFA, footprint, tenancy) — popups use each plan's own term and these are not interchangeable.
- **Unshaded land.** Residential, rural, and open-space zones are deliberately unshaded: a supermarket there is non-complying or discretionary-by-default via catch-all rules, with policy frameworks stacked against it. Colouring them would imply more precision than the catch-alls warrant. Existing stores on unshaded land generally hold RMA s10 existing-use rights.
- **Dunedin's transport gate.** Applies uniformly district-wide, so it is disclosed (popups, table asterisk) rather than mapped. Mapping a uniform overlay destroys information; disclosing it preserves both facts. Note DCC is mid-renumbering: the trip-generator machinery is cited as Appendix 6C with assessment under Rules 6.11 / 18.10.2.1 — both numberings were current at extraction.
- **Overlay convention.** Exceptions that change the reference store's activity status are mapped geometrically wherever a public boundary exists (Auckland precincts, St Patrick's Estate, Homebase, Petone Areas 1/2, Kāpiti's Meadows Precinct and per-centre TCZ thresholds) and netted from the per-capita comparison; exceptions without a published boundary (Christchurch's central-city one-supermarket block, named-site rules) are popup-disclosed and not netted. Liberalising carve-outs with published boundaries are mapped the same way — Christchurch's central-city Large Format Retail overlay (CCC's Central Recovery Plan overlay layer) turned out to exist as GIS and now carves a permitted area out of the otherwise non-complying CCMU, resolving the apparent paradox of three large supermarkets on Moorhouse Avenue; a reader query prompted the find. Exceptions that do not change the status colour (e.g. The Base's total-GFA cap, which leaves the zone RD) are note-only by design.
- **Overlay direction matters.** Most precinct overlays restrict (purple: hard caps, quotas). At least one liberalises (Upper Hutt's Wallaceville Gateway, where DEV1-R2 permits retail over a zone that would otherwise require consent). Restriction and liberalisation are both drawn; the liberalising read is flagged as an interpretation.
- **The Woolworths-adjacency check.** Three within-500 m Woolworths–Woolworths pairs exist in the six metros (Johnsonville 259 m; Westgate/NorthWest 359 m; central Lower Hutt 396 m). Treated as suggestive, not probative: acquisitions, legacy brands, leases, and format differentiation are all innocent explanations for any given pair.

## Known gaps and cautions (as at July 2026)

- Upper Hutt's small "Commercial" zone is unclassified (grey on the map) — flagged, not guessed.
- A handful of Wellington City rule numbers are reconstructed from IHP decision documents; flagged in popups.
- OSM store data is incomplete and occasionally mislabelled; the inventory errs toward inclusion of grocers generally, graded by size, rather than a curated full-line list. A curated inventory is on the v2 list.
- Plan text moves: renumbering (Dunedin), plan changes (Hamilton PC17, Auckland PC120), and the RM reform Bill can date any citation here. Extraction dates: plans read 3–9 July 2026; geometry fetched 3–14 July 2026.
- Areas are planar approximations (cos-latitude scaling); independent replications with other projections may differ by a few percent — one adversarial reviewer reproduced eight of nine cities within ~2% and differed ~6% on Kāpiti by method; the published figures reproduce exactly from the shipped GeoJSONs under the stated method. Parcels are not analysed (zoned land ≠ vacant land ≠ purchasable land).

## Advice to a successor model

Verify against the primary instrument, never a summary — including this one. Expect e-plans to block you; decision documents are the fallback, and say so when you use them. Expect renumbering mid-project. Watch for bounding-box spillover when assigning point data to jurisdictions; clip to admin boundaries early. When a reviewer or reader contradicts the site, check from primary sources before conceding or defending — both directions have been wrong here. When you change one passage, sweep the whole text for others asserting the superseded understanding. Publish your judgment calls; the calls, not the code, are where the errors live. And when a rule seems too strange to be right — one supermarket per suburb, a minimum store size, a department store that must be of a brand new to the district — it is probably right. Quote it exactly.

## Corrections

Errors and improvements: use the correction form linked from the main page. Submissions are reviewed weekly against primary sources.
