From 4817f7de2f83b3ee80218777caf77db8342bf100 Mon Sep 17 00:00:00 2001 From: Deeman Date: Thu, 26 Feb 2026 00:12:29 +0100 Subject: [PATCH] feat(extract): add 4 weather locations (ES, PE, UG, CI) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Expands coverage from 8 to 12 coffee-growing regions: - brazil_espirito_santo (Robusta/Conilon — largest BR Robusta state) - peru_jaen (Arabica — fastest-growing origin, top-10 global producer) - uganda_elgon (Robusta — 4th largest African producer) - ivory_coast_daloa (Robusta — historically significant West African origin) Now 8 Arabica + 4 Robusta regions = 12 calls/day (well within OWM free tier). Backfill cost: ~21,900 additional calls over ~44 days at 500/run. Co-Authored-By: Claude Sonnet 4.6 --- extract/openweathermap/src/openweathermap/locations.py | 10 +++++++++- transform/sqlmesh_materia/seeds/weather_locations.csv | 4 ++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/extract/openweathermap/src/openweathermap/locations.py b/extract/openweathermap/src/openweathermap/locations.py index 6d0aa4b..5ed1acc 100644 --- a/extract/openweathermap/src/openweathermap/locations.py +++ b/extract/openweathermap/src/openweathermap/locations.py @@ -28,8 +28,16 @@ LOCATIONS: list[dict] = [ {"id": "guatemala_antigua", "lat": 14.5586, "lon": -90.7295, "name": "Antigua", "country": "GT", "variety": "Arabica"}, # Indonesia — Sumatra (Mandheling); significant Robusta production {"id": "indonesia_sumatra", "lat": 3.5952, "lon": 98.6722, "name": "Sumatra", "country": "ID", "variety": "Robusta"}, + # Brazil — Espírito Santo; largest Conilon (Robusta) producing state in Brazil + {"id": "brazil_espirito_santo", "lat": -19.3908, "lon": -40.0668, "name": "Espírito Santo", "country": "BR", "variety": "Robusta"}, + # Peru — Jaén/Cajamarca; fastest-growing Arabica origin, top-10 global producer + {"id": "peru_jaen", "lat": -5.7064, "lon": -78.8077, "name": "Jaén", "country": "PE", "variety": "Arabica"}, + # Uganda — Mount Elgon/Bugisu; 4th largest African producer, significant Robusta + {"id": "uganda_elgon", "lat": 1.0826, "lon": 34.1751, "name": "Mount Elgon", "country": "UG", "variety": "Robusta"}, + # Ivory Coast — Daloa region; historically significant West African Robusta + {"id": "ivory_coast_daloa", "lat": 6.8774, "lon": -6.4502, "name": "Daloa", "country": "CI", "variety": "Robusta"}, ] -assert len(LOCATIONS) == 8, f"Expected 8 locations, got {len(LOCATIONS)}" +assert len(LOCATIONS) == 12, f"Expected 12 locations, got {len(LOCATIONS)}" assert all("id" in loc and "lat" in loc and "lon" in loc for loc in LOCATIONS), \ "Each location must have id, lat, lon" diff --git a/transform/sqlmesh_materia/seeds/weather_locations.csv b/transform/sqlmesh_materia/seeds/weather_locations.csv index 6c6ad7a..26e75cb 100644 --- a/transform/sqlmesh_materia/seeds/weather_locations.csv +++ b/transform/sqlmesh_materia/seeds/weather_locations.csv @@ -7,3 +7,7 @@ ethiopia_sidama;Sidama;ET;6.7612;38.4721;Arabica honduras_copan;Copán;HN;14.8333;-89.1500;Arabica guatemala_antigua;Antigua;GT;14.5586;-90.7295;Arabica indonesia_sumatra;Sumatra;ID;3.5952;98.6722;Robusta +brazil_espirito_santo;Espírito Santo;BR;-19.3908;-40.0668;Robusta +peru_jaen;Jaén;PE;-5.7064;-78.8077;Arabica +uganda_elgon;Mount Elgon;UG;1.0826;34.1751;Robusta +ivory_coast_daloa;Daloa;CI;6.8774;-6.4502;Robusta