Skip to content

fix: refresh Italy postal geocodes with representative points - #114

Closed
jkrenge wants to merge 1 commit into
masterfrom
codex/ita-postal-geocodes
Closed

jkrenge wants to merge 1 commit into
masterfrom
codex/ita-postal-geocodes

Conversation

@jkrenge

@jkrenge jkrenge commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Superseded by consolidated postal geocoding PR #124. This PR's head commit is retained in the combined branch. Combined CI passes on Node.js 24/26 and static checks.


Summary

Support approximate delivery-to-return distance analysis with an updated ITA postal lookup.

18,415 GeoNames rows → distinct points per CAP → point nearest mean → 4,736 unique CAPs

Refresh Italy only from GeoNames IT.zip (retrieved and built 2026-11-04), CC BY 4.0 with attribution. Add a deterministic generator, offline tests, and source/coverage documentation. No shared runtime changes or dependencies.

Evidence

  • Before: 18,373 rows / 4,616 CAPs; duplicate CAPs returned the first locality.
    After: 4,736 unique full five-digit CAPs; representative source point with duplicate coordinates removed before calculation. Adds 125 codes; removes 44100, 04028, 01026, 13834, 13852, which are absent from this snapshot.
  • All 99 tests pass, including all ITA lookups, leading zeros, space suffix, city/town/island checks, unknown codes, and generator order/duplicate/invalid-input checks.
  • Lint, format check, data validation, reproducible rebuild, and diff whitespace checks pass. Data validation retains two existing AUT/BEL warnings.

Merge Danger

Door: two-way

Blast Radius: ITA

Coordinates remain strings in [longitude, latitude] order. Values can change for existing CAPs. Points are estimated representative localities, not postal centroids or address locations; national coverage is not complete. Current Lampedusa CAP 92031 is missing; old 92010 can resolve to mainland Sicily. Primary-source CAP checks and limits are in docs/geocode-ITA.md. No measured distance error bound. No merge, publication, or deployment performed.

@jkrenge
jkrenge requested a review from a team as a code owner November 4, 2026 22:02
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-04T22:04:18.712743Z 35a1ea7 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@jkrenge jkrenge closed this Nov 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant