meldestelle/docs/01_Architecture/_archive/2026-01-15_Roadmap_2026_Q1.md
Stefan Mogeritsch 23e08403f1 docs: finalize and verify Ping Service tracer bullet implementation and sync fix
Updated `MASTER_ROADMAP_2026_Q1.md` and session logs to reflect completion of the Ping Service tracer bullet. Verified the end-to-end stack, including frontend, backend, and Gateway integration. Fixed query parameter mismatch in `PingApiKoinClient.syncPings()` (`lastSyncTimestamp` → `since`) for proper Delta-Sync functionality. Marked related roadmap tasks as completed.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-09 15:51:42 +01:00

5.0 KiB

type status owner last_update
Roadmap ARCHIVED Lead Architect 2026-03-09

Roadmap Q1 2026: "Operation Tracer Bullet"

Hinweis: Dieses Dokument ist veraltet. Bitte nutze die MASTER_ROADMAP_2026_Q1.md als Single Source of Truth.

Status: Draft Owner: Lead Software Architect Ziel: Stabilisierung der Architektur und Durchstich ("Tracer Bullet") mit dem ping-service.


Phase 1: Fundament & Stabilisierung (Woche 1-2)

Das Ziel dieser Phase ist es, die Entwicklungsumgebung (Build, Docker, Dependencies) so zu stabilisieren, dass alle Entwickler (und Agenten) reibungslos arbeiten können.

1.1 Build-System & Dependencies (Architect)

  • Spring Cloud Fix: Downgrade von 2025.1.0 (Oakwood) auf 2025.0.1 (Northfields) in libs.versions.toml und platform-bom. (verifiziert 2026-03-09)
  • Wasm Build Fix: Analyse und Behebung der Worker / Unresolved reference Fehler im Frontend-Build. Ggf. explizite Dependency für kotlinx-browser prüfen. (zurückgestellt — erst nach DevOps-Stabilisierung)
  • Dependency Cleanup: Entfernen von redundanten Datenbank-Libs (Entscheidung: SQLDelight für KMP Client, Room entfernen wenn nicht genutzt; Exposed im Backend auf 1.0.0-rc-4 heben). (verifiziert 2026-03-09: Room entfernt, SQLDelight 2.2.1 aktiv)
  • Micrometer Upgrade: Explizites Setzen von Micrometer 1.16.1 für besseren Java 25 Support. (verifiziert 2026-03-09: micrometer = "1.16.1" bereits in libs.versions.toml gesetzt)

1.2 Infrastruktur & Docker (DevOps)

  • Gateway CircuitBreaker: Behebung des ClassNotFoundException / NoSuchMethodError im Gateway (vermutlich Folge des Spring Cloud Konflikts). (verifiziert 2026-03-09: Spring Cloud 2025.0.1 + reactor-resilience4j korrekt; GatewayConfig.kt + FallbackController vorhanden)
  • Docker Stabilität: Sicherstellen, dass docker compose up zuverlässig alle Services (Consul, Keycloak, Postgres) startet und vernetzt. (verifiziert 2026-03-09: 3 Bugs behoben — KC_COMMAND, Valkey Env-Vars, Gateway Property-Namespace)
  • Keycloak Config: Validierung der Realm-Konfiguration (meldestelle) und der Client-Scopes für den ping-service. (verifiziert 2026-03-09: frontend-client + PKCE + CORS-Härtung + Password-Policy umgesetzt)

Phase 2: Backend Implementation "Ping" (Woche 2-3)

Implementierung des ersten vertikalen Durchstichs.

2.1 Modul-Struktur & API (Backend Dev)

  • Refactoring core-utils: Verschieben von JVM-spezifischem Code (DatabaseUtils) nach :backend:infrastructure:persistence. core-utils muss "pure KMP" sein. (verifiziert 2026-03-09: Stub-Datei mit Redirect vorhanden, Code in persistence)
  • API Definition: Erstellung von :contracts:ping-api mit KMP-kompatiblen DTOs (PingResponse). (verifiziert 2026-03-09)

2.2 Service Implementation (Backend Dev)

  • Ping Service: Implementierung von :backend:services:ping:ping-service mit Spring Boot 3.5.9. (verifiziert 2026-03-09)
  • Security: Integration von OAuth2 Resource Server (Keycloak) und Absicherung des /secure Endpoints. ( verifiziert 2026-03-09: GlobalSecurityConfig via ComponentScan)
  • Discovery: Registrierung bei Consul. (verifiziert 2026-03-09: application.yaml konfiguriert)
  • Observability: Tracing mit Zipkin und Metrics mit Prometheus aktivieren. (verifiziert 2026-03-09: monitoring-client Bundle + Gateway B3-Fix)

Phase 3: Frontend Integration (Woche 3-4)

Anbindung des Frontends an den neuen Service.

3.1 HTTP Client & Sync (Frontend Expert)

  • Ktor Client: Konfiguration des HTTP-Clients für die Kommunikation mit dem Gateway (http://localhost:8080). (verifiziert 2026-03-09)
  • Auth: Implementierung des OIDC-Flows im Frontend (Login via Keycloak), Speichern des Tokens. (verifiziert 2026-03-09: PKCE S256 + frontend-client + JVM/JS actual-Implementierungen)
  • Integration: Aufruf von /api/ping und /api/ping/secure und Anzeige im UI. (verifiziert 2026-03-09: PingScreen in MainApp integriert; Sync-Bug lastSyncTimestampsince behoben)

3.2 Offline-Sync Basis (Frontend Expert)

  • Sync-Logik: Erste Implementierung eines Sync-Mechanismus (z.B. Queue für Offline-Requests) basierend auf SQLDelight. (verifiziert 2026-03-09: frontend/core/local-db vollständig implementiert)

Phase 4: Review & Hardening (Woche 4)

4.1 Quality Assurance (QA Specialist)

  • Integrationstests: Automatisierte Tests, die den gesamten Flow (Frontend -> Gateway -> Service) prüfen. (zurückgestellt — erst nach DevOps/CI-CD-Stabilisierung)
  • Lasttests: Einfache Lasttests auf den ping-service zur Validierung der Virtual Threads. (zurückgestellt — erst bei fachlicher Implementierung)

4.2 Documentation (Curator)

  • Update Docs: Aktualisierung der Architektur-Dokumentation basierend auf den Erkenntnissen.
  • Onboarding: Sicherstellen, dass neue Entwickler das Projekt mit einem Befehl starten können.