meldestelle/docs/04_Agents/Roadmaps/Rulebook_Roadmap.md

5.6 KiB
Raw Blame History

📜 [Ö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
      • Ergebnis: siehe docs/03_Domain/02_Reference/Validierungsregeln.md Abschnitt „OEPSMitgliedsnummer“
    • FEI-ID
      • Gültiges Format definieren (numerisch 78 stellig + LegacyCode NNNAA NN)
      • Pflichtregel national/international festhalten (Turnierkategorieabhängig)
      • Ungültige Beispiele dokumentieren
      • Ergebnis: siehe docs/03_Domain/02_Reference/Validierungsregeln.md Abschnitt „FEIID“
      • BackendLookup: GET /api/fei/resolve/{id} (MasterdataSCS), MappingQuelle data/fei-id-mapping.json — dokumentiert in Validierungsregeln 2.9
    • Lizenzklassen (R1R4, RD1RD3, LZF)
      • Vollständige Liste aller gültigen Lizenzklassen
      • Erste LizenzZuordnungstabellen (Springen + Dressur) als DRAFT mit ParagraphenPlatzhaltern
      • Ergebnis: siehe docs/03_Domain/02_Reference/Validierungsregeln.md Abschnitt „Lizenzklassen“
    • Altersklassen Pferd
      • Mindestalter je Disziplin/Klasse als DRAFTTabellen (ÖTO/FEI) ergänzt
      • Berechnungsregel: Stichtag 1. Jänner des Geburtsjahres
      • Ergebnis: siehe docs/03_Domain/02_Reference/Validierungsregeln.md Abschnitt „Altersklassen Pferd“
    • Ergebnis als Dokument docs/03_Domain/02_Reference/Validierungsregeln.md ablegen (Status: DRAFT v0.3)
  • A-2 | Abteilungs-Zwangsteilungsregeln vollständig spezifizieren

    • CSN-C-NEU: Bewerb ≤95cm → ohne Lizenz | mit Lizenz (§ 231 ÖTO, Platzhalter) — spezifiziert
    • CSN-C-NEU: Bewerb ≥100cm → R1 | R2 und höher (§ 231 ÖTO, Platzhalter) — spezifiziert
    • Weitere Pflicht-Teilungsregeln geprüft: CDN, CCN — derzeit keine generische Zwangsteilung wie CSN-C-NEU identifiziert (PlatzhalterParagraphen nachtragen)
    • Ergebnis dokumentiert in docs/03_Domain/02_Reference/TURNIER_KLASSEN.md
    • ParagraphenPins ergänzt (Springen § 231, Dressur § 103, CCN Kap. §§3xx) und einheitliche LabelKonventionen definiert ("ohne Lizenz", "mit Lizenz", "R2 und höher"; Keys: LZF_ONLY, R1_PLUS, R1_ONLY, R2_PLUS).
    • Optionale Jugend-/Jahrgangsteilungen als RegelModell (RegulationasData) ergänzt, keine systemweite Pflicht.

🟠 Sprint B — Kurzfristig (nächste Woche)

  • B-1 | Validierungs-Implementierung Frontend begleiten

    • Spezifikation aus Sprint A-1 (v0.3 DRAFT) 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

    • FEI Legacy→Numeric Resolver implementiert (/api/fei/resolve/{id}) — erste Version in MasterdataSCS
    • Spezifikation aus Sprint A-1 an 👷 Backend übergeben (Lizenz-/Altersmatrix als RegulationasData)
    • 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) v0.3 👷 Backend: serverseitige Validierung (Blocker)
Validierungs-Spezifikation (A-1) v0.3 🎨 Frontend: Live-Feedback in Dialogen (Blocker)
Validierungs-Spezifikation (A-1) v0.3 🧐 QA: Testfälle für Validierung
Abteilungs-Zwangsteilungsregeln (A-2) 👷 Backend: Bewerb.validate() (Blocker)
Funktionärs-Qualifikationen (C-2) 👷 Backend: Enum-Implementierung