# 📜 [ÖTO/FEI Rulebook Expert] — Schritt-für-Schritt Roadmap > **Stand:** 2. April 2026 > **Rolle:** Regelwerks-Wächter, Validierungs-Spezialist, ÖTO/FEI Compliance --- ## 🔴 Sprint A — Sofort (diese Woche) - [ ] **A-1** | Validierungsregeln schriftlich spezifizieren — Grundlage für alle anderen Teams - [ ] **OEPS-Mitgliedsnummer** - [ ] Gültiges Format definieren (Länge, erlaubte Zeichen, Präfixe) - [ ] Ungültige Beispiele dokumentieren - [ ] **FEI-ID** - [ ] Gültiges Format definieren - [ ] Wann ist FEI-ID Pflicht? (Turnierkategorie-abhängig) - [ ] Ungültige Beispiele dokumentieren - [ ] **Lizenzklassen (R1–R4, RD1–RD3, LZF)** - [ ] Vollständige Liste aller gültigen Lizenzklassen - [ ] Welche Lizenz erlaubt welche Bewerbsklasse? (Zuordnungstabelle Springen + Dressur) - [ ] **Altersklassen Pferd** - [ ] Mindestalter je Bewerbsklasse / Höhe (Springen + Dressur) - [ ] Berechnungsregel: Stichtag für Pferdealter (1. Jänner des Geburtsjahres) - [ ] Ergebnis als Dokument `docs/03_Domain/02_Reference/Validierungsregeln.md` ablegen - [ ] **A-2** | Abteilungs-Zwangsteilungsregeln vollständig spezifizieren - [ ] CSN-C-NEU: Bewerb ≤95cm → `ohne Lizenz` | `mit Lizenz` (§ 231 ÖTO) - [ ] CSN-C-NEU: Bewerb ≥100cm → `R1` | `R2 und höher` (§ 231 ÖTO) - [ ] Gibt es weitere Pflicht-Teilungsregeln in anderen Kategorien? (CDN, CCN prüfen) - [ ] Ergebnis in `TURNIER_KLASSEN.md` ergänzen --- ## 🟠 Sprint B — Kurzfristig (nächste Woche) - [ ] **B-1** | Validierungs-Implementierung Frontend begleiten - [ ] Spezifikation aus Sprint A-1 an 🎨 Frontend übergeben - [ ] Implementierung prüfen: Entspricht die Live-Validierung den Regelwerks-Anforderungen? - [ ] Fehlermeldungs-Texte auf Korrektheit und Verständlichkeit prüfen - [ ] **B-2** | Validierungs-Implementierung Backend begleiten - [ ] Spezifikation aus Sprint A-1 an 👷 Backend übergeben - [ ] Serverseitige Validierung prüfen: Werden alle Regeln korrekt durchgesetzt? - [ ] Grenzfälle definieren und an 🧐 QA weitergeben - [ ] **B-3** | Bewerbs-Typen und Bewertungslogik dokumentieren - [ ] Stilspringen: Berechnungsformel Grundnote − Abzüge dokumentieren (§ 204 ÖTO) - [ ] Dressurreiterprüfung: Bewertungskriterien dokumentieren (§ 103 ÖTO) - [ ] Reihungsregeln bei Punktgleichheit dokumentieren - [ ] Ergebnis: `REITER_PRUEFUNGEN.md` aktualisieren / vervollständigen --- ## 🟡 Sprint C — Mittelfristig (in 2 Wochen) - [ ] **C-1** | `AltersklasseRechner` vollständig gegen ÖTO 2026 testen - [ ] Alle Altersklassen-Grenzen aus dem Regelwerk extrahieren - [ ] Testfälle für Grenzjahre definieren (z.B. Pferd born Jan vs. Dez) - [ ] Testfälle an 🧐 QA übergeben - [ ] **C-2** | Funktionärs-Qualifikationen als Enum spezifizieren - [ ] Alle Funktionärs-Typen auflisten (Richter, Parcourschef, Veterinär, etc.) - [ ] Qualifikationsstufen je Typ definieren (z.B. Richter: Regional, National, International) - [ ] Zuordnung: Welche Qualifikation ist für welche Turnierkategorie Pflicht? - [ ] Ergebnis als Enum-Vorlage für 👷 Backend bereitstellen - [ ] **C-3** | ZNS-Export-Compliance prüfen - [ ] ZNS-Dateiformat auf Aktualität (ÖTO 2026) prüfen - [ ] Prüfungsart-Codes (`DR`, `ST`, etc.) im `zns-parser` validieren - [ ] Fehlende oder veraltete Codes identifizieren und dokumentieren --- ## ⏸️ Zurückgestellt > ⏸️ **Nenn-Formular Validierungsregeln (Lizenz × Klasse × Alter für Web-Formular)** — Nach Web-App Besprechung --- ## 📌 Abhängigkeiten | Meine Aufgabe | Blockiert / Ermöglicht wen | |---------------------------------------|--------------------------------------------------| | Validierungs-Spezifikation (A-1) | 👷 Backend: serverseitige Validierung (Blocker) | | Validierungs-Spezifikation (A-1) | 🎨 Frontend: Live-Feedback in Dialogen (Blocker) | | Validierungs-Spezifikation (A-1) | 🧐 QA: Testfälle für Validierung | | Abteilungs-Zwangsteilungsregeln (A-2) | 👷 Backend: `Bewerb.validate()` (Blocker) | | Funktionärs-Qualifikationen (C-2) | 👷 Backend: Enum-Implementierung |