diff --git a/FEATURE_BACKLOG.md b/FEATURE_BACKLOG.md index 824e30c..1701806 100644 --- a/FEATURE_BACKLOG.md +++ b/FEATURE_BACKLOG.md @@ -7,8 +7,8 @@ > Status-koder: ✅ ferdig · 🔨 pågår · 📋 planlagt/fanget · ❓ trenger beslutning > · 🔀 endret fra opprinnelig råd · 💤 utsatt (bevisst) > -> Sist oppdatert: 2026-08-14 (stale-opprydding — seks seksjoner rettet -> til å reflektere faktisk levert status, se CHANGELOG.md samme dato) +> Sist oppdatert: 2026-08-17 (NGF-spilleform-sammenligning, manuell +> koordinat-editor og spiller-CSV-import notert, se seksjonene nederst) --- @@ -4517,3 +4517,116 @@ innlogging/auth-flyten fikk den nye "clubhouse"-paletten. Resten av appen palett (se DESIGN_SYSTEM.md) inntil videre — retemaes gradvis, skjerm for skjerm, når de likevel røres i senere runder. Ingen egen stor retemaings-runde er igangsatt eller bedt om. + +## NGF spilleformer vs. det TeeCup faktisk har bygget — 📋 NOTERT, IKKE besluttet hva som skal bygges + +Bruker lastet opp NGF sitt offisielle "Spilleformer"-dokument (sist +endret 4. oktober 2023, `Temp-uploads/spilletyper-og-spilleformer-2023 +(1).pdf` — identisk med den tidligere opplastede versjonen samme navn +uten "(1)") 2026-08-17 og ba om en sammenligning mot alt TeeCup faktisk +har bygget. Sjekket mot de LIVE CHECK-constraintene i `teecup_db` (ikke +bare dokumentasjon): `round.play_format`, `session.format`, +`tournament.scoring_method`. + +**Dekket** (rett frem eller under annet navn): Single/match, Foursome, +Four-Ball, Greensome, Scramble (2-/4-manns + egen solo-variant utover +NGF), Individuell slagspill, Stableford, Eclectic, Flaggkonkurranse, +Københavner, Nassau (bygget som poeng-panel oppå en singel-match, ikke +egen format-verdi), Chapman (= NGFs "Irish Greensome", samme mekanikk +annet navn), High-low-high (= NGFs "Four-ball beste og dårligste"). +Skins/Bingo Bango Bongo/Money Ball/Shamble er TeeCup-tillegg UTOVER +NGF-lista (ikke i dokumentet i det hele tatt). + +**Ikke dekket -- ekte hull i NGF-lista, ingen omtale andre steder i +denne filen:** +- **Amerikaner** -- 4 spillere, 12 poeng/hull fordelt etter plassering + (8-4-0-0 / 6-6-0-0 / 4-4-4-0 / 3-3-3-3 osv. avhengig av utfall) +- **Four-ball sammenlagt** / **Four-ball besteball og sammenlagt** -- + enklere lag-sammenlagt-varianter (kun best-ball-varianten er bygget) +- **Hallington** -- poengformel (hullets par × 2 minus brukte slag) +- **Hidden hole** -- et forhåndsbestemt antall tilfeldige hull trekkes + ut og telles etter at hele runden er spilt +- **Ransome** -- 3×6-hulls rotasjon: fourball → foursome → sammenlagt +- **Mexican Scramble** -- scramble-variant der spilleren hvis slag ble + valgt ikke får slå neste slag +- **Mulligan** -- HCP-baserte omslag, kan tas når som helst +- **Snorkonkurranse** -- spilleren får en snor (lengde = spillehandicap + i meter) til å forbedre ballens leie med +- **Three-ball match / Threesome (match og slagspill)** -- ekte + 3-spiller-matchformater (kan i praksis omgås i dag med 3 separate + 1v1-matcher manuelt satt opp, men ikke som egen, sammenhengende + turneringsform) +- **Maksimum Score** som egen, distinkt konkurranseform (migrasjon 038 + sin generelle "pickup"-mekanikk dekker DELER av dette, men ikke som + eget valgbart format med par+4-cap) +- **Bogey/Par-konkurranse** -- matchspill mot et fast target-resultat, + ikke stableford-poeng +- **Nærmest hullet / Lengste drive** -- vanlige side-konkurranser ved + siden av hovedturneringen, ingen støtte i det hele tatt (verken som + eget "mini-format" eller som en tilleggsmarkering på en runde/økt) + +**Vurdert, men trolig ikke aktuelt å bygge:** Pro Am er en deltaker- +sammensetning (profesjonell + amatører), ikke en distinkt scoringsform +-- TeeCup har ingen pro/am-status-modell i dag, og det er uklart om det +gir egenverdi å bygge som eget format fremfor bare la brukeren sette opp +et vanlig lag. + +**Neste steg:** ingen bygging igangsatt. Når/hvis bruker vil prioritere +noen av disse, bør de vurderes én om gangen (samme mønster som de åtte +formatene i punkt 14/CHANGELOG.md) -- flere av dem (Nærmest hullet/ +Lengste drive spesielt) er trolig enklere å bygge enn et helt nytt +scoringsformat, siden de er sidespill uavhengig av selve rundens +hovedformat. + +## Manuell koordinat-editor for rangefinder-punkter — 📋 NOTERT, IKKE besluttet/designet + +Etter ADR-081 (migrasjon 079, rangefinder for offisielle baner) kan +koordinater for en offisiell (TeeOff-koblet) bane settes via `PUT /orgs/ +{id}/courses/{id}/coordinates` -- men KUN via et rått API-kall (Claude +kjørte dette manuelt for Tjøme, to runder på rad). Bruker ba 2026-08-17 +om en ekte selvbetjent vei: "et system for mulighet for å legge inn +koordinater manuelt, uten at jeg må spørre deg." + +**Grunnlag allerede på plass, verifisert denne runden:** +- Skrive-endepunktet for OFFISIELLE baner finnes allerede (`courses.py`, + se ADR-081) -- mangler kun et menneskelig grensesnitt foran seg. +- GolfAPI-koblede PERSONLIGE baner (`personal_course`/`golfapi_course_ + coordinate`) har derimot INGEN manuell skrive-vei i det hele tatt -- + fylles i dag kun automatisk via `golfapi_cache.get_or_fetch_golfapi_ + course()`. Bør trolig få en tilsvarende manuell overstyrings-/ + tilleggs-vei, ikke bare offisielle baner. +- `MapPointPicker` (`frontend/components/shot/map-point-picker.tsx`, + Mapbox, brukt til slagmåling/ADR-048) er en FERDIG, produksjonsbrukt + "klikk et punkt på kartet og få lat/long tilbake"-komponent -- den + tyngste enkeltbrikken en koordinat-editor trenger finnes allerede, + trolig gjenbrukbar med moderat tilpasning fremfor å bygges fra bunnen. +- Selve TYPE-valget (bunker/vann/tre/landemerke/tee/green osv. + + front/midt/bak + venstre/senter/høyre) må fortsatt gjøres av et + menneske via et skjema/dropdown -- Tjøme-rundens "Voll"/"Bjella"- + erfaring viste konkret at fritekst-til-kategori IKKE kan automatiseres + pålitelig. Editoren bør altså være: velg bane/hull → klikk punkt på + kart (eller tast lat/long manuelt) → velg type/plassering/side fra + dropdown → lagre. Sannsynligvis også en tabell-/listevisning av + allerede lagrede punkter per hull (les via eksisterende `GET .../ + coordinates`) med slette-/rediger-mulighet. + +**Neste steg:** egen planrunde (ikke påbegynt) -- avklare om `GET`/`PUT` +trenger utvidelse for GolfAPI-baner, konkret UI-flyt (kart vs. rent +skjema, eller begge), og om dette skal være en frittstående admin-side +eller hektes inn i eksisterende baneoppsett-flyt i `courses.py`-relatert +UI (se "Baneoppsett i turneringer"-seksjonen over). + +## Massimport av spillere til organisasjon/turnering (CSV) + redigerbar spillertabell — 🔨 PÅBEGYNT 2026-08-17 + +Bruker ba om en måte å masseimportere spillere fremfor én-og-én, og +spurte konkret om en tabell der ALLE felt er redigerbare. Research denne +runden bekreftet: ingen bulk-endepunkt finnes (`POST /orgs/{id}/players` +er kun én-om-gangen, frontend gjør det i en løkke i dag), og INGEN +redigerbar-tabell-UI-mønster finnes noe sted i kodebasen (all redigering +i dag er skjema/modal-basert) -- begge deler er reelt nytt arbeid, ikke +gjenbruk av et eksisterende mønster. `player.user_id` kobles automatisk +til en ekte konto ved fremtidig innlogging via e-post (samme mekanisme +som selvregistrering), så importen selv trenger ikke håndtere +invitasjon -- bare opprette rader. + +Se ADR (skrives når planen er ferdig) for design/omfang.