Files
meldestelle/docs/clients/visionen/MP-24.md
T
stefan 114236c8d9 feat(MP-27): backend consolidation, gateway routing & service dockerfiles
Summary
- Backend Services (Entries, Results, Scheduling) haben Dockerfiles.
- Docker Compose Orchestrierung steht (DB + Gateway + Services).
- Gateway Routing für `entries-service` implementiert (StripPrefix, Path Rewrites).
- Health-Checks und 409-Conflict-Demo Endpunkt verifiziert.

Verification
- `docker compose up --build` -> Success
- `curl http://localhost:8081/api/entries` -> 200 OK (routed through Gateway)

Ref: MP-27
2025-12-08 11:39:43 +01:00

22 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## Epic 4: Frontend Core etablieren (Network, LocalDB, DesignSystem, Domain)
* Zusammenfassung: Koin/KtorClient, SQLDelight, DesignSystemKonsolidierung, Shared Domain Models
* Beschreibung:
* Ziel: Eine stabile, wiederverwendbare Basis für alle Features/Shells schaffen.
* Deliverables:
* `frontend/core/network`:
* Ktor `HttpClient` mit Plugins: Auth, Retry, JSON, Timeouts, Logging.
* KoinModule mit `single(named("apiClient"))` Export.
* `frontend/core/local-db`:
* SQLDelightSetup (KMP), SchemaOrdner, `1.sqm` Migration, BuildKonfig.
* Konvention: Keine InlineSQL in BusinessCode; Nutzung der generierten Queries.
* `frontend/core/design-system`:
* Konsolidierte `AppTheme`, Komponenten, Tokens.
* `frontend/core/domain`:
* Gemeinsame Modelle/IDs (z. B. `Turnier`, `Pruefung`, `Start`, `ReiterId`, `PferdId`, `Lizenz` …).
* Definition of Done (DoD):
* Kein Vorkommen manueller `Authorization`Header im Code (nur DI`apiClient`).
* SQLDelight generiert Code; eine DemoQuery kompiliert für das WebTarget.
* DesignSystem kompiliert; `AppTheme` nutzbar in Shell/FeatureSample.
* `core/domain` wird von Features konsumiert, ohne Feature→Feature Abhängigkeiten.