meldestelle/docs/01_Architecture/_archive/2026-01-15_Roadmap_2026_Q1.md
Stefan Mogeritsch 440ab4b141 docs: finalize Keycloak hardening and validate updated Realm config
Documented the completed Keycloak hardening steps, including PKCE S256 support, CORS security improvements, strengthened password policy, and logout redirect URI configurations. Verified and updated the `meldestelle-realm.json` and roadmap to reflect these changes.

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

4.2 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.

1.2 Infrastruktur & Docker (DevOps)

  • Gateway CircuitBreaker: Behebung des ClassNotFoundException / NoSuchMethodError im Gateway (vermutlich Folge des Spring Cloud Konflikts).
  • Docker Stabilität: Sicherstellen, dass docker compose up zuverlässig alle Services (Consul, Keycloak, Postgres) startet und vernetzt.
  • 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).

2.2 Service Implementation (Backend Dev)

  • Ping Service: Implementierung von :backend:services:ping:ping-service mit Spring Boot 3.5.9.
  • Security: Integration von OAuth2 Resource Server (Keycloak) und Absicherung des /secure Endpoints.
  • Discovery: Registrierung bei Consul.
  • Observability: Tracing mit Zipkin und Metrics mit Prometheus aktivieren.

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).
  • Auth: Implementierung des OIDC-Flows im Frontend (Login via Keycloak), Speichern des Tokens.
  • Integration: Aufruf von /api/ping und /api/ping/secure und Anzeige im UI.

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.