chore(docs): add CHANGELOG and operations runbook for masterdata service

- Introduced `CHANGELOG.md` to document essential changes in the Masterdata-SCS, including ADRs, database schema updates, domain logic additions, API enhancements, and observability improvements.
- Added `masterdata-ops.md` runbook detailing operational procedures such as backup, restore, import management, and troubleshooting.
- Updated roadmaps to reference the new documentation and mark relevant tasks as complete.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
2026-03-30 15:40:05 +02:00
parent 2f17778df6
commit 2262826603
4 changed files with 112 additions and 2 deletions
@@ -0,0 +1,41 @@
# Changelog: Masterdata-SCS (Stammdaten)
Alle wesentlichen Änderungen am Masterdata-SCS (Stammdaten) werden in dieser Datei dokumentiert.
## [1.0.0-SNAPSHOT] - 2026-03-30
### Hinzugefügt
- **ADRs:**
- `ADR-0017`: Importer-Einbettung als Worker im Masterdata-SCS.
- `ADR-0018`: Rule-Versionierung (Regulation-as-Data) für ÖTO-Konformität.
- `ADR-0019`: API-Schichten-Trennung (REST vs. Ingestion).
- **Datenbank:**
- Exposed-Tabellen für Reiter, Pferde, Vereine, Funktionäre, Turnierklassen, Lizenzen, Richtverfahren, Gebühren und
Regel-Konfigurationen.
- Flyway-Migrationen (V005-V007) zur Schema-Erstellung und -Bereinigung.
- **Domänenlogik:**
- Rule-Engine zur Berechnung von Altersklassen, Lizenz-Prüfungen und Abteilungsregeln (§ 39 ÖTO).
- Use-Cases für Stammdaten-Management.
- **API:**
- Ktor-REST-Endpunkte für `/rules/turnierklassen`, `/rules/lizenzen` etc.
- OpenAPI 3 Spezifikation (`documentation.yaml`).
- **Observability:**
- Micrometer/Prometheus Integration für API-Metriken.
- Spring Boot Actuator für Health-Checks und Monitoring.
- Strukturiertes Logging mit Logback.
- **Operations:**
- Operatives Runbook (`masterdata-ops.md`) für Backup, Restore und Import.
### Geändert
- **Architektur:** Migration zu einer hexagonalen Architektur mit strikter Trennung zwischen Domäne, Infrastruktur und
API.
- **Schema:** Harmonisierung der Tabellennamen zwischen SQL und Exposed.
### Behoben
- Namenskonflikte in `HorseRepositoryImpl` (Spalte `name`).
- Typ-Inkompatibilitäten bei Datums-Werten (Kotlin 2.1.20 `Instant`).
- YAML-Syntaxfehler in der OpenAPI-Dokumentation.
- Idempotency-Plugin Pipeline-Issues im Ktor-Context.