Erstatter ADR-083 sin kontinuerlige crossMeters-forskyvning, som ga for liten synlig venstre/høyre-forskjell på ekte banedata (Tjøme hull 18). Baner velges nå kategorisk via side_fairway; green/tee/spiller alltid på senterakse. Ny hazard_group-kolonne (migrasjon 080, ikke rullet ut mot ekte DB ennå) lar to punkter eksplisitt pares til én carry-hindring (forkant+bakkant) uten å risikere å slå sammen to atskilte hindringer på samme side. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
32 lines
1.8 KiB
SQL
32 lines
1.8 KiB
SQL
-- =====================================================================
|
|
-- 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;
|