-- ===================================================================== -- TeeCup — migrasjon 080 -- hazard_group: eksplisitt paring av forkant/bakkant til SAMME hindring -- ===================================================================== -- Konkret anledning (ADR-084): hull-diagrammet for rangefinderen -- (ADR-083) trengte en måte å vise ÉN hindring med både forkant- og -- bakkant-avstand (f.eks. en bunker sin fremre og bakre kant), i -- stedet for å vise hvert koordinatpunkt som sin egen markør. Første -- forsøk grupperte punkter på `poi_type`+`side_fairway` -- avvist av -- bruker: to ATSKILTE hindringer av samme type på samme side (f.eks. -- to venstre fairway-bunkere) ville da feilaktig blitt slått sammen -- til én. -- -- Verken `golfapi_course_coordinate` eller `teeoff_course_coordinate` -- hadde noen eksisterende gruppe-/hindrings-id å bruke i stedet -- -- `id`-kolonnen er en usorterbar `gen_random_uuid()`, ingen -- `created_at`, og verken GolfAPI sin kildedata eller den manuelle -- feltbefarings-flyten (ADR-081) har noe naturlig gruppe-nøkkel. -- -- `hazard_group` er derfor en NY, nullable, FRITT SATT tekstkolonne -- -- samme "menneskelig tolkning ved data-inntasting"-mønster som -- `poi_type`/`location` allerede er. `NULL` (dagens tilstand for ALT -- eksisterende data) = enkeltstående punkt, ALDRI slått sammen med -- noe -- ingen regresjon. Ikke-null = et menneske har eksplisitt -- bekreftet at to (eller flere) punkter er samme fysiske hindring. -- Kun meningsfullt unikt INNENFOR ett hull, ikke globalt håndhevet. -- ===================================================================== \set ON_ERROR_STOP on ALTER TABLE golfapi_course_coordinate ADD COLUMN hazard_group text; ALTER TABLE teeoff_course_coordinate ADD COLUMN hazard_group text;