feat: integrate new desktop shell and extend backend & ADRs

- Added `meldestelle-desktop` module using JVM/Compose Desktop, registered in `settings.gradle.kts`.
- Integrated new screens and desktop navigation into core: `Veranstaltungen`, `TurnierDetail`, etc.
- Expanded backend with `ExposedFunktionaerRepository` in `officials-infrastructure`.
- Completed ADRs for bounded context mapping (`ADR-0014`) and context map (`ADR-0015`).
- Updated and extended project documentation with session logs and architecture decisions.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
2026-03-24 18:22:15 +01:00
parent c624df8744
commit 354bd49de6
75 changed files with 7616 additions and 48 deletions
@@ -0,0 +1,75 @@
---
type: SessionLog
date: 2026-03-24
agents:
- Lead Architect
- Curator
status: ABGESCHLOSSEN
---
# Session Log: ADR-0014 & ADR-0015 — Bounded Context Mapping & Context Map
🏗️ **[Lead Architect]** | 🧹 **[Curator]** | 24. März 2026
---
## Ziel der Session
ADRs für Bounded Context Mapping und Context Map vervollständigen (PHASE 4, Task 1).
---
## Ergebnisse
### ADR-0014: Bounded Context Mapping (SCS-Architektur)
**Datei:** `docs/01_Architecture/adr/0014-bounded-context-mapping-de.md`
Dokumentiert die 6 Bounded Contexts als Self-Contained Systems:
| Context | Domänen-Typ | Priorität |
|----------------------------|-------------------|-----------|
| `registration-context` | Core Domain | P1 |
| `actor-context` | Supporting Domain | P1 |
| `competition-context` | Supporting Domain | P2 |
| `event-management-context` | Supporting Domain | P2 |
| `billing-context` | Generic Domain | P3 |
| `identity-context` | Generic Domain | P3 |
Für jeden Context dokumentiert: Aggregate Roots, Ubiquitous Language (Auswahl), Kern-Invarianten.
Begründung für Ablehnung der alten technischen Modulaufteilung (`masterdata`, `members`, `horses`, `events`).
---
### ADR-0015: Context Map & Integration Patterns
**Datei:** `docs/01_Architecture/adr/0015-context-map-de.md`
Dokumentiert 7 Context-Beziehungen mit ASCII-Diagramm und Detailtabellen:
| Beziehung | Pattern |
|-----------------------------------------------------|-----------------------------------|
| ZNS → `actor-context` | Upstream/Downstream + ACL |
| `actor-context``registration-context` | Customer/Supplier + Shared Kernel |
| `event-management-context``registration-context` | Customer/Supplier + Shared Kernel |
| `registration-context``competition-context` | Domain Events (asynchron) |
| `registration-context``billing-context` | Domain Events + ACL |
| `competition-context``billing-context` | Domain Events + ACL |
| Keycloak → alle Contexts | Conformist (OIDC/JWT) |
Enthält: ACL-Implementierungsrichtlinien, Offline-First-Verhalten pro Szenario.
---
## MASTER_ROADMAP Updates
- `[x]` **ADRs vervollständigen** (PHASE 4, Lead Architect) — abgeschlossen
- ADR-Tabelle: Einträge #8 (ADR-0014) und #9 (ADR-0015) hinzugefügt
---
## Offene Punkte (nächste Session)
- `[ ]` **API-Design:** Schnittstellen zwischen den Contexts definieren (Anti-Corruption Layer) — Lead Architect
- `[ ]` **`actor-context`:** `DomPferd`, `DomFunktionär`, `DomVerein` implementieren — Backend Developer