docs: update system hardening roadmap with completed tasks and verification notes

Added progress updates for completed roadmap tasks, including dependency management (Spring Cloud, SQLDelight, core-utils refactoring, Redis-to-Valkey migration). Added verification notes with dates, ensuring alignment with current implementation status and next steps.
This commit is contained in:
2026-03-09 10:49:13 +01:00
parent f022de7358
commit f47e5f6415
2 changed files with 21 additions and 17 deletions
@@ -2,7 +2,7 @@
type: Roadmap type: Roadmap
status: ARCHIVED status: ARCHIVED
owner: Lead Architect owner: Lead Architect
last_update: 2026-01-15 last_update: 2026-03-09
--- ---
# Roadmap Q1 2026: "Operation Tracer Bullet" # Roadmap Q1 2026: "Operation Tracer Bullet"
@@ -20,9 +20,9 @@ last_update: 2026-01-15
Das Ziel dieser Phase ist es, die Entwicklungsumgebung (Build, Docker, Dependencies) so zu stabilisieren, dass alle Entwickler (und Agenten) reibungslos arbeiten können. 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) ### 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`. - [x] **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. - [ ] **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). - [x] **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. - [ ] **Micrometer Upgrade:** Explizites Setzen von Micrometer `1.16.1` für besseren Java 25 Support.
### 1.2 Infrastruktur & Docker (DevOps) ### 1.2 Infrastruktur & Docker (DevOps)
@@ -37,7 +37,7 @@ Das Ziel dieser Phase ist es, die Entwicklungsumgebung (Build, Docker, Dependenc
Implementierung des ersten vertikalen Durchstichs. Implementierung des ersten vertikalen Durchstichs.
### 2.1 Modul-Struktur & API (Backend Dev) ### 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. - [x] **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`). - [ ] **API Definition:** Erstellung von `:contracts:ping-api` mit KMP-kompatiblen DTOs (`PingResponse`).
### 2.2 Service Implementation (Backend Dev) ### 2.2 Service Implementation (Backend Dev)
@@ -58,15 +58,15 @@ Anbindung des Frontends an den neuen Service.
- [ ] **Integration:** Aufruf von `/api/ping` und `/api/ping/secure` und Anzeige im UI. - [ ] **Integration:** Aufruf von `/api/ping` und `/api/ping/secure` und Anzeige im UI.
### 3.2 Offline-Sync Basis (Frontend Expert) ### 3.2 Offline-Sync Basis (Frontend Expert)
- [ ] **Sync-Logik:** Erste Implementierung eines Sync-Mechanismus (z.B. Queue für Offline-Requests) basierend auf SQLDelight. - [x] **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) ## Phase 4: Review & Hardening (Woche 4)
### 4.1 Quality Assurance (QA Specialist) ### 4.1 Quality Assurance (QA Specialist)
- [ ] **Integrationstests:** Automatisierte Tests, die den gesamten Flow (Frontend -> Gateway -> Service) prüfen. - [ ] **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. - [ ] **Lasttests:** Einfache Lasttests auf den `ping-service` zur Validierung der Virtual Threads. _(zurückgestellt — erst bei fachlicher Implementierung)_
### 4.2 Documentation (Curator) ### 4.2 Documentation (Curator)
- [ ] **Update Docs:** Aktualisierung der Architektur-Dokumentation basierend auf den Erkenntnissen. - [ ] **Update Docs:** Aktualisierung der Architektur-Dokumentation basierend auf den Erkenntnissen.
@@ -2,7 +2,7 @@
type: Roadmap type: Roadmap
status: ARCHIVED status: ARCHIVED
owner: Lead Architect owner: Lead Architect
last_update: 2026-01-15 last_update: 2026-03-09
--- ---
# Roadmap: System Hardening & Stability # Roadmap: System Hardening & Stability
@@ -15,36 +15,40 @@ last_update: 2026-01-15
## 1. Backend & Build System (Architect / Backend Dev) ## 1. Backend & Build System (Architect / Backend Dev)
### 1.1 Dependency Management ### 1.1 Dependency Management
- [ ] **Spring Cloud 2025.0.1 Downgrade:** - [x] **Spring Cloud 2025.0.1 Downgrade:**
- `libs.versions.toml`: Spring Cloud Version auf `2025.0.1` setzen. - `libs.versions.toml`: Spring Cloud Version auf `2025.0.1` setzen.
- `platform/build.gradle.kts`: BOM Import prüfen. - `platform/build.gradle.kts`: BOM Import prüfen.
- Ziel: Behebung der `ClassNotFoundException` im Gateway (CircuitBreaker). - Ziel: Behebung der `ClassNotFoundException` im Gateway (CircuitBreaker).
- _(verifiziert 2026-03-09)_
- [ ] **Micrometer 1.16.1:** - [ ] **Micrometer 1.16.1:**
- Explizites Upgrade in `libs.versions.toml` für Java 25 Kompatibilität. - Explizites Upgrade in `libs.versions.toml` für Java 25 Kompatibilität.
- [ ] **KMP Database Cleanup:** - [x] **KMP Database Cleanup:**
- Entscheidung: SQLDelight für KMP Client. - Entscheidung: SQLDelight für KMP Client.
- Entfernen von Room Dependencies (falls nicht zwingend benötigt). - Entfernen von Room Dependencies (falls nicht zwingend benötigt).
- Exposed Version im Backend prüfen (`0.5x` vs `1.0.0-rc`). - Exposed Version im Backend prüfen (`0.5x` vs `1.0.0-rc`).
- _(verifiziert 2026-03-09: Room entfernt, SQLDelight 2.2.1 aktiv in frontend/core/local-db)_
### 1.2 Modul-Struktur ### 1.2 Modul-Struktur
- [ ] **`core-utils` Refactoring:** - [x] **`core-utils` Refactoring:**
- Verschieben von `DatabaseUtils` (JVM-Code) aus `core-utils` nach `:backend:infrastructure:persistence`. - Verschieben von `DatabaseUtils` (JVM-Code) aus `core-utils` nach `:backend:infrastructure:persistence`.
- Sicherstellen, dass `core-utils` rein `commonMain` kompatibel ist. - Sicherstellen, dass `core-utils` rein `commonMain` kompatibel ist.
- _(verifiziert 2026-03-09: Stub-Datei mit Redirect vorhanden, Code in persistence)_
--- ---
## 2. Infrastructure & DevOps (DevOps Engineer) ## 2. Infrastructure & DevOps (DevOps Engineer)
### 2.1 Docker Environment ### 2.1 Docker Environment
- [ ] **Redis -> Valkey Migration:** - [x] **Redis -> Valkey Migration:**
- Prüfen, ob wir Redis durch Valkey (Open Source Fork) ersetzen, um Lizenzprobleme zu vermeiden. - Prüfen, ob wir Redis durch Valkey (Open Source Fork) ersetzen, um Lizenzprobleme zu vermeiden.
- Update `docker-compose.yaml`. - Update `docker-compose.yaml`.
- [ ] **Keycloak Härtung:** - _(verifiziert 2026-03-09: valkey/valkey:9-alpine läuft produktiv in dc-infra.yaml)_
- [ ] **Keycloak Härtung:** _(offen — Priorität: technische Stabilisierung)_
- Export der Realm-Config (`meldestelle-realm.json`) und Mounten im Container (statt manueller Config). - Export der Realm-Config (`meldestelle-realm.json`) und Mounten im Container (statt manueller Config).
- Sicherstellen, dass `frontend-client` korrekte Redirect-URIs für Desktop & Web hat. - Sicherstellen, dass `frontend-client` korrekte Redirect-URIs für Desktop & Web hat.
### 2.2 Observability ### 2.2 Observability
- [ ] **Zipkin Integration:** - [ ] **Zipkin Integration:** _(offen — Priorität: technische Stabilisierung)_
- Prüfen, ob Traces vom Gateway bis zur DB durchgereicht werden. - Prüfen, ob Traces vom Gateway bis zur DB durchgereicht werden.
- Ggf. `micrometer-tracing-bridge-brave` konfigurieren. - Ggf. `micrometer-tracing-bridge-brave` konfigurieren.
@@ -53,10 +57,10 @@ last_update: 2026-01-15
## 3. Frontend (Frontend Expert) ## 3. Frontend (Frontend Expert)
### 3.1 Build Fixes ### 3.1 Build Fixes
- [ ] **Wasm Worker Fix:** - [ ] **Wasm Worker Fix:** _(zurückgestellt — erst nach DevOps-Stabilisierung)_
- Behebung der `Unresolved reference: Worker` Fehler im `composeApp:wasmJsBrowserDistribution` Task. - Behebung der `Unresolved reference: Worker` Fehler im `composeApp:wasmJsBrowserDistribution` Task.
- Prüfen der `kotlinx-browser` Version. - Prüfen der `kotlinx-browser` Version.
### 3.2 Auth Integration ### 3.2 Auth Integration
- [ ] **OIDC Client:** - [ ] **OIDC Client:** _(offen — abhängig von Keycloak Härtung)_
- Implementierung des Login-Flows mit `ktor-client-auth` und Keycloak. - Implementierung des Login-Flows mit `ktor-client-auth` und Keycloak.