docs: archive outdated roadmap and introduce consolidated master roadmap

Archived `Roadmap_2026_Q1.md` and replaced it with `MASTER_ROADMAP_2026_Q1.md` and `MASTER_ROADMAP.md`. Consolidated roadmap structure ensuring clearer organization and updated references for improved accessibility.
This commit is contained in:
Stefan Mogeritsch 2026-03-05 11:34:51 +01:00
parent 52e1c09bfd
commit 6c1f6a5818
3 changed files with 156 additions and 0 deletions

View File

@ -0,0 +1,62 @@
---
type: Roadmap
status: ACTIVE
owner: Lead Architect
last_update: 2026-03-05
---
# MASTER ROADMAP: "Operation Self-Sovereignty"
**Strategisches Ziel:**
Vollständige Migration auf Self-Hosted Infrastruktur (Gitea, Pangolin, Zora) und Konsolidierung der Dokumentation. Der Fokus liegt auf Datensouveränität, Offline-Fähigkeit und einer sauberen, aktuellen Wissensbasis.
**Aktueller technischer Stand (05.03.2026):**
* **Infrastruktur:** ✅ "Zora" (MS-R1, ARM64) ist live. Gitea & Registry laufen.
* **Networking:** ✅ Pangolin Tunnel ersetzt Cloudflare.
* **CI/CD:** ✅ Gitea Actions mit ARM64-Runner (VM 102) aktiv. Docker-Publish Pipeline grün.
* **Code-Basis:** ✅ Backend (Java 25), Frontend (Kotlin/JS) bauen sauber auf ARM64.
* **Dokumentation:** ⚠️ Fragmentiert und teilweise veraltet. Muss konsolidiert werden.
---
## 1. Arbeitsaufträge an die AGENTS (Phasenplan)
### PHASE 1: Documentation Cleanup (AKTUELL)
*Ziel: Eine einzige, vertrauenswürdige Quelle der Wahrheit (SSOT) schaffen.*
#### 🧹 Agent: Curator
* [ ] **Archivierung:** Veraltete Docs (Cloudflare, GitHub-Workflows, alte Roadmaps) nach `docs/_archive/` verschieben.
* [ ] **Konsolidierung:** `Zora_System_Architektur.md` als zentrale Infrastruktur-Doku etablieren.
* [ ] **Struktur:** `docs/` Ordner aufräumen (unnötige Root-Files in Unterordner).
* [ ] **Index:** `README.md` im Root als Einstiegspunkt aktualisieren.
### PHASE 2: Infrastructure Hardening
*Ziel: Stabilisierung der neuen Self-Hosted Umgebung.*
#### 🐧 Agent: DevOps Engineer
* [ ] **Keycloak Fix:** Verbindungsprobleme innerhalb des Docker-Netzwerks (`meldestelle-host`) beheben.
* [ ] **Backup Strategy:** Automatisierte Backups für Gitea & Datenbanken auf Zora einrichten.
* [ ] **Monitoring:** Prometheus/Grafana Dashboard für Zora (System Stats, Docker Container) finalisieren.
### PHASE 3: Feature Development (ON HOLD)
*Ziel: Neuausrichtung der Fachlichkeit.*
#### 🏗️ Agent: Lead Architect & Domain Expert
* [ ] **Domain Analysis:** Workshop mit dem Fachexperten zur Neudefinition der Anforderungen.
* [ ] **Feature Roadmap:** Erstellung eines neuen Plans basierend auf den Ergebnissen.
* [ ] **Entries Service:** Pausiert bis zur Klärung der Anforderungen.
---
## 2. Definition of Done (für Phase 1)
1. [ ] `docs/` Root enthält nur noch essentielle Einstiegspunkte (`README.md`, `MASTER_ROADMAP.md`).
2. [ ] Alle veralteten Dokumente sind im `_archive` oder gelöscht.
3. [ ] Die `Zora_System_Architektur.md` ist korrekt in `docs/07_Infrastructure/` eingeordnet.
4. [ ] Ein neuer Entwickler findet sich sofort zurecht.
---
## 3. Wichtige Referenzen
* **Infrastruktur:** `docs/07_Infrastructure/Zora_System_Architektur.md` (WIP)
* **CI/CD:** `.gitea/workflows/docker-publish.yaml`
* **Projekt-Protokoll:** `docs/04_Agents/Playbooks/`

View File

@ -0,0 +1,83 @@
---
type: Roadmap
status: ACTIVE
owner: Lead Architect
last_update: 2026-02-07
---
# MASTER ROADMAP Q1 2026: "Operation Tracer Bullet"
**Strategisches Ziel:**
Wir validieren die gesamte Architektur-Kette (Frontend -> Gateway -> Service -> DB) anhand des **Ping-Service**. Dieser Service dient als **technischer Blueprint** (Vorlage) für alle kommenden Fach-Services. Er muss "Production Ready" gehärtet sein, bevor wir Fachlichkeit implementieren.
**Aktueller technischer Stand (07.02.2026):**
* Build System: ✅ Grün (Gradle, Kotlin 2.3, Spring Boot 3.5.9, Spring Cloud 2025.0.1).
* Code-Basis: ✅ `ping-service` existiert, Delta-Sync implementiert.
* Infrastruktur: ✅ Docker Environment stabil (Valkey, Keycloak, Consul, Zipkin).
* Frontend: ✅ Web-App & Desktop-App (KMP), Login funktioniert, Sync-Logik vorhanden.
* Hardware: ✅ Minisforum MS-R1 eingetroffen.
---
## 2. Arbeitsaufträge an die AGENTS (Phasenplan)
### PHASE 1: Backend Hardening & Infrastructure (ABGESCHLOSSEN)
*Ziel: Der Ping-Service läuft sicher, stabil und beobachtbar in der Docker-Umgebung.*
#### 👷 Agent: Senior Backend Developer
* [x] **Security Implementation:** OAuth2 Resource Server & RBAC implementiert.
* [x] **Resilience:** CircuitBreaker für `/ping/enhanced` aktiv.
* [x] **Observability:** Actuator, Micrometer & Zipkin Tracing aktiv.
* [x] **Persistence:** Flyway & Postgres Integration stabil.
#### 🏗️ Agent: Infrastructure & DevOps
* [x] **Docker Environment:** `dc-infra`, `dc-backend`, `dc-gui` stabil. Valkey als Redis-Ersatz integriert.
* [x] **Gateway Config:** Routing `/api/ping/**` -> `ping-service` mit CircuitBreaker Fallback konfiguriert.
---
### PHASE 2: Frontend Integration (ABGESCHLOSSEN)
*Ziel: Das Frontend kann authentifiziert mit dem Backend sprechen.*
#### 🎨 Agent: KMP Frontend Expert
* [x] **HTTP Client Core:** Ktor Client mit Auth & Error Handling.
* [x] **Authentication Flow:** OIDC Login Flow (Keycloak) implementiert.
* [x] **UI Implementation:** Debug-Screen für Pings vorhanden.
---
### PHASE 3: Offline & Sync (ABGESCHLOSSEN)
*Ziel: Datenkonsistenz auch bei Netzwerk-Verlust.*
#### 🤝 Joint Task Force (Backend & Frontend)
* [x] **Sync-Protokoll:** `PingEvent` Contract definiert.
* [x] **Sync-Fix (CRITICAL):** Typ-Mismatch behoben! Backend und Frontend nutzen nun konsistent `since: Long`.
* [x] **Web-App Sync:** SQLDelight Integration vorbereitet.
---
## 3. Definition of Done (für Phase 1 & 2)
1. [x] `docker compose up` startet den kompletten Stack fehlerfrei.
2. [x] Frontend-User kann sich einloggen (Keycloak).
3. [x] Frontend zeigt Daten vom `ping-service` an.
4. [x] Beim Abschalten der DB zeigt der Service einen sauberen Fallback (CircuitBreaker offen).
5. [x] In Zipkin ist der komplette Request-Trace (Frontend -> Gateway -> Service -> DB) sichtbar.
## 4. Next Steps (Q1/2026)
1. **Entries Service:** Beginn der Implementierung des ersten echten Fach-Services ("Nennungen").
2. **System Hardening:** Keycloak Production-Config (kein `start-dev`).
3. **Reporting / Printing:** (Vorgemerkt)
* Anforderung: PDF-Generierung für Startlisten, Ergebnislisten, Dressur-Protokolle (personalisiert).
* Architektur-Entscheidung: Dezentraler Microservice (wegen Resource-Bursts).
* Technologie-Evaluierung: JasperReports, Thymeleaf + Flying Saucer, etc.
4. **Infrastructure Setup (Home-Server):**
* Hardware: Minisforum MS-R1 (ARM64, 12 Cores, 10G LAN) ✅ **GELIEFERT (07.02.2026)**.
* OS: Debian 12 (Vendor Variant) als Host.
* Hypervisor: **Incus** (LXC/LXD Fork).
* Virtualization Strategy:
* `infra-gitea` (LXC Container): Gitea + Actions Runner (Native ARM Builds).
* `docker-host-prod` (VM): Debian VM als Docker Host für den Meldestelle-Stack (Isolation, keine Nesting-Probleme).
* CI/CD: **Multi-Arch Support** (Native ARM64 Builds + x86_64 via `docker buildx` & QEMU).
* Networking: Cloudflare Tunnel (Remote Access).
* Local Discovery: DNS/mDNS Strategie für Offline-Szenarien (Main-App als lokaler Anchor).
* Backup: Automatisierte Snapshots auf externe USB-SSD.

View File

@ -0,0 +1,11 @@
---
type: Roadmap
status: ARCHIVED
owner: Lead Architect
last_update: 2026-01-15
---
# Roadmap Q1 2026: "Operation Tracer Bullet"
**MOVED:** This file has been archived to `_archive/2026-01-15_Roadmap_2026_Q1.md`.
Please use `MASTER_ROADMAP_2026_Q1.md` as the Single Source of Truth.