meldestelle/docs/99_Journal/2026-04-22_Masterdata_DI_and_Consul_Fix.md
StefanMoCoAt d4cc0eb77d ### feat: verbessere DI, Healthcheck-Logik und Reiter-API
- **Healthcheck:** Aktualisiere Dockerfile und konsolidiere Ports für konsistente Service-Gesundheitsprüfungen (8086 für Actuator, 8091 für API-Traffic).
- **ReiterRepository:** Implementiere `KtorReiterRepository` zur Nutzung der Backend-Stammdaten über API.
- **DI-Module:** Passe `ReiterModule` und `VereinFeatureModule` an, um den authentifizierten `apiClient` zu verwenden.
- **Masterdata-Service:** Synchronisiere Environment-Variablen und Konsul-Konfiguration mit aktualisierten Ports.
2026-04-22 12:11:38 +02:00

1.8 KiB

Session-Journal: 22. April 2026 - Masterdata DI & Consul Fix

🎯 Status & Highlights

  • DI-Stabilität: Koin-Abstürze in der Desktop-App behoben durch explizite Injektion des apiClient.
  • Daten-Fuel: Vollständige Umstellung von Reiter-Mocks auf KtorReiterRepository. Die 48.753 Reiter sind nun via API erreichbar.
  • Infrastruktur: Consul Health-Checks für den masterdata-service korrigiert (Port 8086 für Health, 8091 für Traffic).
  • ZNS-Korrektur: Verifizierung der Import-Mengen (21.206 Pferde erfolgreich importiert).

🛠️ Durchgeführte Änderungen

Frontend (Desktop & Common)

  • VereinFeatureModule & ReiterModule: Umstellung auf named("apiClient"), um den authentifizierten Ktor-Client zu nutzen.
  • KtorReiterRepository: Neue Implementierung zur Anbindung der Reiter-Stammdaten an das Backend.
  • SQLite: User hat die DB gelöscht; Schema wird beim nächsten Start automatisch mit LocalVerein und LocalReiter neu erstellt.

Backend & DevOps

  • masterdata-service (application.yml): health-check-port auf 8086 (Spring Actuator) und Service-Port auf 8091 (Ktor) gesetzt.
  • dc-backend.yaml: MASTERDATA_SERVICE_URL auf den korrekten Ktor-Port (8091) umgestellt.

🧐 QA & Verifizierung

  • Build: ./gradlew :frontend:shells:meldestelle-desktop:compileKotlinJvm ist GRÜN.
  • Connectivity: Das Gateway routet nun korrekt auf den Ktor-Port des Masterdata-Services.

🚀 Next Steps

  1. Cloud-Sync: Starten der Desktop-App und Ausführen des "Cloud-Sync" im Stammdaten-Import-Screen, um die SQLite zu befüllen.
  2. Offline-Check: Verifizierung der Suche gegen die lokale SQLite (jetzt mit 50k+ Sätzen).
  3. Pferde-Schema: Erweiterung der SQLite um LocalPferd (für die 21k Pferde).

🏗️ [Lead Architect] | 👷 [Backend Developer] | 🎨 [Frontend Expert]