Some checks failed
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2.3 KiB
2.3 KiB
📓 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-featuregreift nun über ein Interface (ZnsImportProvider) auf den Importer zu. Keine zirkulären oder unerlaubten Feature-Abhängigkeiten mehr. - Docker-Readiness: Der
zns-import-serviceist 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
NetworkDiscoveryServicevom 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.