From 65114ed3f0f9eb280476dedb972d6440dde0d801 Mon Sep 17 00:00:00 2001 From: Tom Johnell Date: Wed, 25 Mar 2026 14:43:05 -0500 Subject: [PATCH] fix: include unnamed rest area POIs in exit-POI linkage State rest areas in OSM are often tagged highway=rest_area with no name. The derive filter excluded POIs whose name resolved to "Unknown", which dropped 1,681 nameless rest area POIs and left 1,256 exits without any rest area services. Two changes: - Default nameless restArea POIs to name "Rest Area" in the pois table - Exempt restArea category from the unknown-name filter in exit_poi_candidates Co-Authored-By: Claude Opus 4.6 --- schema/derive.sql | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/schema/derive.sql b/schema/derive.sql index ee89d7d..6ed5c4a 100644 --- a/schema/derive.sql +++ b/schema/derive.sql @@ -302,8 +302,16 @@ SELECT src.osm_id, NULL::text AS state, src.category, - src.name, - COALESCE(NULLIF(src.display_name, ''), src.name) AS display_name, + CASE + WHEN COALESCE(NULLIF(src.name, ''), '') = '' AND src.category = 'restArea' + THEN 'Rest Area' + ELSE src.name + END AS name, + COALESCE( + NULLIF(src.display_name, ''), + NULLIF(src.name, ''), + CASE WHEN src.category = 'restArea' THEN 'Rest Area' END + ) AS display_name, src.brand, src.geom, src.tags_json @@ -351,7 +359,7 @@ FROM ( AND ST_DWithin(e.geom::geography, p.geom::geography, 800.0) WHERE p.category IS NOT NULL AND p.category <> 'restroom' - AND LOWER(TRIM(COALESCE(NULLIF(p.display_name, ''), NULLIF(p.name, ''), 'Unknown'))) <> 'unknown' + AND (p.category = 'restArea' OR LOWER(TRIM(COALESCE(NULLIF(p.display_name, ''), NULLIF(p.name, ''), 'Unknown'))) <> 'unknown') AND NOT EXISTS ( SELECT 1 FROM exit_poi_reachability prior