feat: integrate new desktop shell and extend backend & ADRs
- Added `meldestelle-desktop` module using JVM/Compose Desktop, registered in `settings.gradle.kts`. - Integrated new screens and desktop navigation into core: `Veranstaltungen`, `TurnierDetail`, etc. - Expanded backend with `ExposedFunktionaerRepository` in `officials-infrastructure`. - Completed ADRs for bounded context mapping (`ADR-0014`) and context map (`ADR-0015`). - Updated and extended project documentation with session logs and architecture decisions. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
---
|
||||
type: Session Log
|
||||
date: 2026-03-24
|
||||
agent: ÖTO/FEI Rulebook Expert
|
||||
status: ABGESCHLOSSEN
|
||||
---
|
||||
|
||||
# Session Log: Warn-Logik-Spezifikation `competition-context`
|
||||
|
||||
🧹 **[Curator]** | 24. März 2026
|
||||
|
||||
---
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Spezifikation der `competition-context` Warn-Logik für Abteilungs-Schwellenwerte
|
||||
(MASTER_ROADMAP Phase 4, ÖTO/FEI Rulebook Expert).
|
||||
|
||||
## Ergebnis
|
||||
|
||||
### Neues Dokument erstellt
|
||||
|
||||
**`docs/03_Domain/02_Reference/OETO_Regelwerk/Warn-Logik-Spezifikation-competition-context.md`**
|
||||
|
||||
Verbindliche Implementierungs-Spezifikation für die Warn-Logik im `competition-context`.
|
||||
|
||||
### Inhalt der Spezifikation
|
||||
|
||||
**6 Warn-Codes definiert:**
|
||||
|
||||
| Warn-Code | Typ |
|
||||
|--------------------------------------------|----------------------------------------------|
|
||||
| `WARN_PFLICHT_TEILUNG_UEBERSCHRITTEN` | Starter-Schwellenwert überschritten |
|
||||
| `WARN_KANN_TEILUNG_EMPFOHLEN` | Kann-Teilung empfohlen (Dressur) |
|
||||
| `WARN_ABTEILUNG_ZU_GROSS` | Abteilung nach Teilung > 80 Starter |
|
||||
| `WARN_ABTEILUNG_MAX_UEBERSCHRITTEN` | Konfiguriertes Starter-Limit überschritten |
|
||||
| `WARN_STRUKTURELLE_TEILUNG_FEHLT` | Strukturelle Pflicht-Teilung nicht vorhanden |
|
||||
| `WARN_STRUKTURELLE_TEILUNG_UNVOLLSTAENDIG` | Strukturelle Teilung unvollständig |
|
||||
|
||||
**3 Warn-Typen mit vollständigem Entscheidungsbaum:**
|
||||
|
||||
1. Starter-Schwellenwerte (`DomBewerb.validateAbteilungsSchwellenwerte`)
|
||||
2. Abteilungs-Größe nach Teilung (`DomAbteilung.validateStarterLimit`)
|
||||
3. Strukturelle Pflicht-Teilungen (`DomBewerb.validateStrukturellesTeilung`) – NEU
|
||||
|
||||
**Strukturelle Prüfungen abgedeckt:**
|
||||
|
||||
- CSN Stil-/Idealzeitspringen ≤ 95 cm: ohne Lizenz vs. R1 (§ 200 Abs. 5.3)
|
||||
- Springpferdeprüfung 95–110 cm / Dressurpferdeprüfung Kl. A: Pferdealter 4 vs. 5–6 (§ 200 Abs. 6 / § 100 Abs. 5)
|
||||
- CSN-C-NEU ≤ 95 cm: ohne Lizenz vs. mit Lizenz (§ 231)
|
||||
- CSN-C-NEU ≥ 100 cm: R1 vs. R2+ (§ 231)
|
||||
- CCN-C-NEU Gelände ≤ 80 cm: 3 Abteilungen (§ 300)
|
||||
- CCN-C-NEU Gelände ≥ 90 cm: 2 Abteilungen (§ 300)
|
||||
- CCN Welcome / 80 cm: R2+ eigene Abteilung (§ 301 Abs. 1.4)
|
||||
- Caprilli: lizenzfrei vs. RD1+ (§ 803 Abs. 2)
|
||||
- Fahren/Fahrertreffen: F1+ eigene Abteilung (§ 850 Abs. 9)
|
||||
|
||||
**Implementierungs-Vorgaben:**
|
||||
|
||||
- Typisiertes Value Object `AbteilungsWarnung` (statt roher Strings)
|
||||
- `AbteilungsWarnungCodeE` Enum
|
||||
- `AbteilungsWarnungOverrideEvent` mit Pflicht-Begründungsfeld
|
||||
- `AbteilungsSchwellenwertConfig` (konfigurierbare Schwellenwerte, nicht hard-coded)
|
||||
- Aufruf-Zeitpunkte (Trigger) definiert
|
||||
|
||||
### Aktualisierte Dokumente
|
||||
|
||||
- `docs/01_Architecture/MASTER_ROADMAP.md` – Task als `[x]` markiert, Referenz ergänzt, Referenz-Tabelle aktualisiert
|
||||
|
||||
## Offene Fragen (weiterhin offen)
|
||||
|
||||
| # | Frage |
|
||||
|---|--------------------------------------------------------------------|
|
||||
| 1 | Gelten § 39-Schwellenwerte auch für Reitertreffen? |
|
||||
| 2 | Pflicht-Teilung bei kombinierten Turnieren (§ 4)? |
|
||||
| 3 | Voltigieren (CVN): Eigene Abteilungs-Trennungsregeln? |
|
||||
| 4 | Fahren (CAN): Eigene Starter-Schwellenwerte? |
|
||||
| 5 | Abbildung „Geldpreise > Doppeltes Gebührenordnung" im Datenmodell? |
|
||||
|
||||
---
|
||||
|
||||
*Session: 2026-03-24 | Agent: ÖTO/FEI Rulebook Expert + Curator (Junie)*
|
||||
Reference in New Issue
Block a user