-- =====================================================================
--  TeeCup — migrasjon 085
--  Tiebreak ved likt resultat i individuelle turneringer (brutto/netto/
--  stableford): countback eller laveste HCP, valgt av organisator
-- =====================================================================
--  Bruker spurte, etter å ha fått Cut-funksjonen (ADR-087): "Ved likt
--  resultat ... Skal laveste hcp plasseres foran, beste siste 18/9/6/3/
--  siste hull plasseres foran, eller deles plasseringene. Her kan svaret
--  være forskjellig for vinner og resten av feltet."
--
--  Design bekreftet med bruker (tre spørsmål):
--  - Metoden er IKKE fastlåst i koden -- "Dette skal defineres av
--    arrangøren ved oppsett av turneringen" -- for BÅDE vinneren og
--    resten av feltet, hver for seg (samme svar begge steder, altså to
--    uavhengige innstillinger, ikke én felles).
--  - Tiebreak påvirker KUN sluttresultatet/plasseringsvisningen, ALDRI
--    selve Cut-grensen (Cut sin "topp N og delt plass" fra ADR-087
--    forblir uendret -- fullt delt plass på grensen, uansett hva
--    tiebreak-innstillingen sier).
--
--  `tiebreak_winner_method`/`tiebreak_field_method`: 'none' (uendret
--  oppførsel -- delt plassering, dagens eneste faktiske adferd) er
--  default, ingen regresjon for eksisterende turneringer. 'countback' =
--  kaskaderende "matching cards" (siste 9 -> siste 6 -> siste 3 -> siste
--  hull i turneringens SISTE runde, standard klubbgolf-metode -- ingen
--  egen dybde-parameter, kaskaden er alltid full). 'lowest_hcp' = laveste
--  handicap-indeks vinner uavgjortheten.
-- =====================================================================

\set ON_ERROR_STOP on

ALTER TABLE tournament
    ADD COLUMN tiebreak_winner_method text NOT NULL DEFAULT 'none'
        CHECK (tiebreak_winner_method IN ('none', 'countback', 'lowest_hcp')),
    ADD COLUMN tiebreak_field_method text NOT NULL DEFAULT 'none'
        CHECK (tiebreak_field_method IN ('none', 'countback', 'lowest_hcp'));
