# 📓 Journal-Eintrag: 2026-04-16 - ZNS-First & Onboarding-Evolution ## 🏗️ Status Quo In dieser Session haben wir die Kern-Workflows für den Turnier-Start (Onboarding & Veranstaltungs-Anlage) auf ein professionelles Niveau gehoben. Der Fokus lag auf Performance ("ZNS-Light"), Architektur-Sauberkeit ("Decoupling") und UX ("Role-based Onboarding"). ## 🚀 Wichtigste Errungenschaften ### 1. ZNS-First Enrollment (ADR 0023) - **Problem**: Der Import aller ZNS-Daten (Pferde/Richter) dauerte bis zu 20 Minuten. - **Lösung**: Einführung von `ZnsImportMode.LIGHT`. Es werden nur Vereine und Lizenzen geladen, was den Initial-Import auf wenige Sekunden verkürzt. - **UI**: Der Veranstaltung-Wizard priorisiert nun den ZIP/DAT-Upload als ersten Schritt. ### 2. Architektur & Stabilität - **Entkopplung**: `veranstaltung-feature` greift nun über ein Interface (`ZnsImportProvider`) auf den Importer zu. Keine zirkulären oder unerlaubten Feature-Abhängigkeiten mehr. - **Docker-Readiness**: Der `zns-import-service` ist nun vollständig Docker-kompatibel (Health-Checks, Consul-Discovery und Streaming-Extraktion für große Dateien). - **Connectivity**: Der Offline-Status-Bug im Footer wurde durch korrekte API-Gateway-Pfade behoben. ### 3. Dynamisches Onboarding (ADR 0024) - **Master/Client Split**: Der Onboarding-Prozess unterscheidet nun explizit zwischen Master (Host) und Client. - **mDNS Discovery**: Clients müssen ihren Namen nicht mehr raten, sondern wählen freie Slots direkt aus einer Liste, die via `NetworkDiscoveryService` vom Master bereitgestellt wird. ## 🛠️ Technische Details - **Module**: `frontend:shells:meldestelle-desktop`, `frontend:features:zns-import-feature`, `backend:services:zns-import`. - **Technologien**: Compose Desktop, Koin, Kotlinx-Serialization, Spring Boot Actuator, Docker-Compose. ## 🏁 Fazit & Ausblick Die Basis für die Turnier-Verwaltung ist nun "einzementiert". Als nächstes können wir uns auf die fachliche Turnier-Anlage (Pferde/Richter Zuordnung) konzentrieren, wobei die Daten nun effizient im Hintergrund geladen werden. --- **🧹 [Curator]**: Dokumentation abgeschlossen. Journal-Eintrag erstellt. **👷 [Backend Developer]**: Alle Services sind unter Docker `healthy`. **🏗️ [Lead Architect]**: Architektur-Vorgaben (ADR 0023/0024) erfolgreich umgesetzt.