-- =====================================================================
--  TeeCup — Københavner/Copenhagen, migrasjon 042. Andre av åtte nye
--  turneringsformater denne runden (se plan/ADR for full liste).
--
--  Flatt felt, nøyaktig 3 spillere, INGEN sider -- passer ikke ADR-011s
--  to-lags-modell (bekreftet av ADR-011s eget 2026-07-19-notat). Hører
--  derfor hjemme i frittstående runder (round.play_format) OG den
--  individuelle org-turnering-modellen (ADR-037, tournament.scoring_
--  method) -- ALDRI org-lagturneringer.
--
--  6 poeng per hull fordelt etter relativ rangering (se handicap_engine.py
--  sin copenhagen_points_for_hole -- kilde: spilletyper-og-spilleformer-
--  2023.pdf s.4). Frittstående runder er individuell-ball (som stroke/
--  stableford), beregnes helt ved lesing fra eksisterende round_hole --
--  INGEN nye kolonner der. Den individuelle org-modellen cacher derimot
--  et ferdig utregnet resultat per deltaker (samme mønster som gross_
--  total/net_total/stableford_points i tournament_round_score, migrasjon
--  040) -- én ny kolonne.
-- =====================================================================
\set ON_ERROR_STOP on

ALTER TABLE round DROP CONSTRAINT round_play_format_check;
ALTER TABLE round ADD CONSTRAINT round_play_format_check
    CHECK (play_format IN ('stroke', 'match', 'skins', 'fourball', 'foursome', 'greensome', 'scramble_2', 'scramble_4', 'stableford', 'chapman', 'copenhagen'));

ALTER TABLE tournament DROP CONSTRAINT tournament_scoring_method_check;
ALTER TABLE tournament ADD CONSTRAINT tournament_scoring_method_check
    CHECK (scoring_method IS NULL OR scoring_method IN ('stroke_gross', 'stroke_net', 'stableford', 'copenhagen'));

ALTER TABLE tournament_round_score ADD COLUMN copenhagen_points smallint;
