Files
meldestelle/docs/04_Agents/Besprechung_2026-04-03/Berichte/Bericht_Backend.md
T
stefan b9ec070993
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
docs: log session outcomes and apply enhancements across multiple components
- **Docker Fixes:** Resolved failed builds for Gateway and Ping services by switching to `eclipse-temurin:21-jdk-alpine`, correcting Gradle configurations, and fixing cache mount paths.
- **ZNS-Import Consul Registration:** Enabled Consul service discovery by updating `application.yaml` and `build.gradle.kts`.
- **pgAdmin Provisioning:** Preconfigured the database server in `servers.json` and updated `dc-ops.yaml` for seamless setup.
- **Postman Documentation:** Added a detailed Postman test guide covering environment setup, endpoint groups, and recommended test sequences.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 14:24:46 +02:00

3.2 KiB
Raw Blame History

👷 [Backend Developer] — Zwischenbericht zur Besprechung vom 3. April 2026

Datum: 3. April 2026, ca. 13:00 Uhr Rolle: Spring Boot / Ktor, Kotlin, SQL, API-Design, Datenbankschema, Services


Was wurde erreicht?

Sprint A — weitgehend abgeschlossen

  • Datenbankschema (A-2): Tabellen veranstaltungen, turniere, bewerbe, abteilungen, teilnehmer_konten, turnier_kassa mit FK-Ketten implementiert. Flyway-Migrationen V1V3 laufen durch. DomainHierarchyMigrationTest ist grün.
  • Tenant-Isolation (A-1): ADR-0021 vollständig umgesetzt. TenantWebFilter, TenantRegistry (JDBC), JdbcTenantRegistry, TenantMigrationsRunner und MDC-Logging implementiert. Flyway pro Tenant-Schema. Alle Unit-Tests (JdbcTenantRegistryTest) grün. E2E-Isolationstest (EntriesIsolationIntegrationTest) wieder aktiv und grün. Kritischer Bugfix: springdoc 3.0.0 → 2.8.9 (ClassNotFoundException behoben).
  • Validierungs-Grundlage (A-3 teilweise): Entkoppelte Policy-Schnittstelle + Bewerb-Descriptor implementiert. Konkrete ÖTO-Regeln/Limits als Policy-Implementierung umgesetzt.

Sprint B (teilweise) — CRUD vollständig

  • CRUD-Endpunkte (B-1): Alle Kern-Entitäten vollständig implementiert:
    • Veranstaltung: GET, PUT
    • Turniere: POST, GET, GET{id}, PUT, DELETE, PATCH /status
    • Bewerbe, Abteilungen: vollständige CRUD-Endpunkte
    • Reiter, Pferde, Vereine, Funktionäre: vollständige CRUD inkl. Filter-Parameter
    • Konsistentes Error-Format (problem+json), Service-Guardrails für PUBLISHED-Lock
  • Regulation-as-Data (via Rulebook B-2): LizenzKlasseE-Enum mit R4 ergänzt, RD4-Fehler korrigiert. Flyway V009: license_height_matrix + horse_min_age_matrix angelegt und befüllt. FEI Legacy→Numeric Resolver implementiert (/api/fei/resolve/{id}).

🔄 Was ist noch offen?

Sprint A — Restpunkt

  • A-3 Sonderregeln: Einarbeitung der Rulebook-B-2-Spezifikation (wartet auf finale Übergabe).

Sprint B — offen

  • B-1 Rest: OpenAPI-Dokumentation (Springdoc) noch ausstehend. E2E-Tests für CRUD-Flows.
  • B-2 Kassa-Service: TeilnehmerKonto-Service, Zahlvorgang-Service, Rechnungs-Generierung und Endpunkte noch nicht implementiert.
  • B-3 ÖTO-Validierung serverseitig: OEPS/FEI-Formate, Lizenzklassen, Altersklassen, CSN-C-NEU-Zwangsteilung — wartet auf Rulebook-Spezifikation.

Sprint C — geplant

  • C-1 Nennungs-Service, C-2 Stammdaten-Seeder, C-3 LAN-Sync-Endpunkte (ADR-0022 freigegeben).

🔗 Abhängigkeiten

Warte auf Von wem Betrifft
Rulebook B-2 Spezifikation 📜 Rulebook A-3, B-3

💬 Botschaft an die Runde

Das Backend hat eine solide Grundlage: Tenant-Isolation läuft, alle CRUD-Endpunkte für Stammdaten sind fertig, das Datenbankschema ist vollständig. Der nächste große Block ist der Kassa-Service (B-2) — der ist noch komplett offen. Die ÖTO-Validierung (B-3) wartet auf die finale Rulebook-Übergabe. Sobald das Rulebook-Team B-2 abschließt, kann das Backend sofort mit A-3 und B-3 starten.