teecup/frontend
Erol Haagenrud c15c68efca Update Todos
Add non-org-scoped teeoff search + personal-course detail endpoints to rounds.py

Build /rounds list page + component

Build /rounds/new creation flow (course search/create, tee, date, holes)

Build /rounds/[id] detail page (participants, hole-by-hole stats, complete)

Link new feature from dashboard

Scratch-verify backend additions + typecheck production build

Deploy live after user confirmation

Update ADR-033/FEATURE_BACKLOG/CLAUDE.md status
Frontend for standalone round tracking is built and fully verified in scratch — 22 backend contract checks plus a live end-to-end test against both course sources (custom bane and real teeoff lookup), and a clean typechecked production build (docker build --target builder) showing all new routes (/rounds, /rounds/new, /rounds/[id]).

What's new, in summary:

Backend: three additions to app/routers/rounds.py — non-org-scoped teeoff facility/course search (/rounds/official-search*), a personal-course detail endpoint exposing tee/gender info, and a GET .../holes endpoint (needed since RoundOut never carried hole-level data). Also changed the hole-PATCH endpoint to return the full updated row instead of {"ok": true}. No migration — no schema touched.
Frontend: /rounds (list), /rounds/new (course search or create, tee/date/holes-planned), /rounds/[id] (participants, hole-by-hole stat entry with GIR auto-derived, complete-round flow with HCP differential summary). Linked from the dashboard both as a header shortcut and a prominent "Egne runder" entry card.
One thing worth flagging: the hole-PATCH endpoint replaces all fields every call rather than doing a true partial update, so the frontend always merges the current hole state before sending a patch — I confirmed this contract explicitly in scratch (a naive partial PATCH silently nulls out unrelated fields).
2026-07-23 05:51:26 +02:00
..
app Update Todos 2026-07-23 05:51:26 +02:00
components Update Todos 2026-07-23 05:51:26 +02:00
lib PWA er bygget og scratch/build-verifisert. Status: 2026-07-19 23:51:08 +02:00
public PWA er bygget og scratch/build-verifisert. Status: 2026-07-19 23:51:08 +02:00
.dockerignore Alt rent, ingen byggeartefakter liggende igjen, dokumentasjonen oppdatert. Oppsummering: 2026-07-17 22:28:43 +02:00
.gitignore Før grafikk 2026-07-17 21:57:44 +02:00
components.json Før kommunikasjon med V0 2026-07-17 21:40:42 +02:00
Dockerfile ADR-018 er nå helt ferdig — backend, begge frontend-skjermer, og nå Open Graph-metadata, alt live samme dag. Oppsummert: 2026-07-18 10:58:36 +02:00
next.config.mjs Migrasjonen er kjørt, og jeg har fortsatt helt til et komplett, verifisert API-lag. 2026-07-22 11:31:08 +02:00
package.json Alt rent, ingen byggeartefakter liggende igjen, dokumentasjonen oppdatert. Oppsummering: 2026-07-17 22:28:43 +02:00
pnpm-lock.yaml Før grafikk 2026-07-17 21:57:44 +02:00
postcss.config.mjs Før kommunikasjon med V0 2026-07-17 21:40:42 +02:00
tsconfig.json Før kommunikasjon med V0 2026-07-17 21:40:42 +02:00