Commit Graph

324 Commits

Author SHA1 Message Date
ffe73b9061 Remove obsolete chat logs and migrate relevant assets from docs/Neumarkt2026/ and docs/BilderSuDo/ to docs/80_Assets/. Update references and initiate consolidation of documentation. 2026-04-09 22:02:14 +02:00
452c50c31b docs(frontend): add navigation and flow diagrams for wizard steps
Some checks failed
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
- Created `Navigation_Wizard_Flows.drawio` to map the Navigation Rail and 3-step wizard process (Veranstaltung → Turnier → Bewerbe) with detailed routes and guards.
- Introduced `_mapping_alt-zu-neu.md` to document screenshot renaming and restructuring for enhanced organization.
- Refined folder layout in `docs/06_Frontend/Screenshots/` for flows and components.
2026-04-09 15:52:44 +02:00
4d6a1d5f16 docs(c4): migrate architecture diagrams to draw.io and refine container/workflow visualizations
Some checks failed
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
- Replaced outdated `.puml` and `.mermaid` diagrams with modernized `.drawio` versions for enhanced clarity.
- Added `container_diagram.drawio` to depict offline-first architecture and backend synchronization workflow.
- Introduced `workflow_turnieranlage.drawio` to visualize the tournament creation process (3-step wizard).
- Archived legacy diagrams under `docs/01_Architecture/_archive` for reference.
2026-04-09 14:15:31 +02:00
276e3cc3dd docs(c4): migrate architecture diagrams to draw.io and refine container/workflow visualizations
- Replaced outdated `.puml` and `.mermaid` diagrams with modernized `.drawio` versions for enhanced clarity.
- Added `container_diagram.drawio` to depict offline-first architecture and backend synchronization workflow.
- Introduced `workflow_turnieranlage.drawio` to visualize the tournament creation process (3-step wizard).
- Archived legacy diagrams under `docs/01_Architecture/_archive` for reference.
2026-04-09 11:32:06 +02:00
c11bffef22 feat(docs+domain): refine event and tournament models, align with updated domain terminology
- **Documentation:**
  - Added `2026-04-09_Session_Log_Turnier_Veranstaltung_Domain_Alignment.md` to document validation and updates to `Veranstaltung` and `Turnier` domain models.
  - Updated `Overview.md` to reflect new terminology and added attributes for `Veranstaltung` (`Austragungsplätze`, `Artikel-Preisliste`) and `Turnier`
(`Turnierbeauftragter`, updated `Reglement`, `Nennschluss`, `Nachnenngebühr`, and `Nenntauschbörse`).

- **Domain Updates:**
  - Adjusted `Turnier` model: renamed `richterObmannId` → `turnierbeauftragterId`, added missing fields (`nennschluss`,
2026-04-09 10:09:21 +02:00
d7095bef47 Document findings and planned corrections from architecture review: outline five key gaps in the domain models (Veranstaltung, Turnier) and propose updates to align with business requirements.
Some checks failed
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
2026-04-08 23:53:12 +02:00
f2dff2a4d8 Remove Dom prefix from domain models: rename classes to reflect business terminology, update references in tests, repositories, and services; add ADR for new naming conventions. 2026-04-08 23:00:52 +02:00
8bc6f8e1df Register events modules in Gradle build and refactor VeranstaltungController: remove unused use cases, streamline request handling, and improve error responses. 2026-04-08 22:56:21 +02:00
df8bce4277 Add new chat session and extend Gemini conversation: document architecture discussions, domain model updates, Dom prefix removal plan, and phase-based roadmap for Bewerb and related entities. 2026-04-08 20:17:26 +02:00
2e4cb6d042 Enhance ZNS import documentation: add detailed steps for database initialization, parser validation, import strategy optimization, and frontend integration. 2026-04-08 20:17:20 +02:00
3ce085ea18 docs: add class diagram for core entities in C4 architecture
Some checks failed
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
- Created `class_diagram_core.drawio` to visualize core domain entities (`Veranstaltung`, `Platz`, `Turnier`, etc.).
- Included relationships and associations between entities such as 1:N and reference mappings.
- Structured diagram to align with Clean Architecture principles for better domain comprehension.
2026-04-08 14:39:06 +02:00
8f0640810b docs: add C4 model for renamed and extended domain components
- Introduced `Kernentitaeten_Umbenennung.puml` to document the planned renaming and structural updates to core domain entities.
- Visualized key contexts (`Event Management`, `Billing`, `Competition`, `Registration`, `Actor`) and their relationships.
- Included recommendations for simplification of naming conventions in Clean Architecture.
2026-04-08 14:12:07 +02:00
7d8596570a docs: add session notes on hierarchy visualization and class naming discussion
- Logged additional ideas in `Chat-Verlauf-Gemini_2026-04-07.md` regarding visualizing hierarchy, inheritance, and class structure.
- Documented discussion on reevaluating "Dom..." class prefixes and planning for implementation steps.
2026-04-08 14:11:45 +02:00
31eb8f083d docs: improve formatting and structure for "Chat-Verlauf" logs
- Standardized section headers in `Chat-Verlauf-Gemini_2026-04-07.md` for better clarity.
- Adjusted markdown formatting for participant labels ("Ich", "Gemini") to ensure consistent separation and readability.
- Leveraged markdown lists to enhance the readability of ÖTO § 3 guidelines and constraints.
- Resolved minor inconsistencies in indentation to ensure visual alignment across all sections.
2026-04-08 13:10:37 +02:00
9ff543dc14 feat(domain+infra+docs): define and integrate essential tournament foundation components
Some checks failed
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
- **Domain Enhancements:**
  - Introduced `TurnierNummer` (mandatory, 5 digits) field in `DomTurnier` to establish unique tournament identification.
  - Added `TeilnehmerKreisE` enum representing participation constraints defined in ÖTO § 3 (e.g., J, P, H).
  - Extended `DomTurnier` model with `einschraenkungen` field to store applicable participant restrictions.

- **Infrastructure Updates:**
  - Updated `TurnierTable` to include `turnier_nummer` (varchar) and `einschraenkungen` (text/JSON).
  - Created Flyway migration to add new columns to `turniere` table and backfill existing data.
  - Enhanced repository methods (`TurnierRepositoryImpl`) to handle the new fields.

- **Validation and API Expansion:**
  - Added validation for mandatory 5-digit format of `TurnierNummer` and ensured `einschraenkungen` values conform to the ÖTO spec.
  - Updated relevant APIs (`CreateTurnierUseCase`, `TurniereController`) to accept and process new fields.

- **Documentation:**
  - Updated the glossary in `Ubiquitous_Language.md` to include new concepts (`TurnierNummer` and participation constraints).

This enhancement lays the groundwork for ÖTO-compliant tournament management with precise scope and constraint controls.
2026-04-07 19:29:03 +02:00
92f22faf2f docs: enhance glossary formatting for consistency and readability
- Standardized table layouts by aligning column headers and content across all alphabetical sections.
- Improved text organization and adjusted spacing for better readability.
- Retained all existing references and definitions without modifications to their meaning.
2026-04-07 19:28:38 +02:00
6b9177e818 feat(db+domain): add turniernummer and einschraenkungen fields for tournament scope and constraints
- **Database Changes:** Introduced `turnier_nummer` (mandatory, 5 digits) and `einschraenkungen` (mandatory, ÖTO-specific constraints) columns in `turniere` table. Seeded `turnier_nummer` with `oeps_turniernummer` where applicable.
- **Domain Models:** Extended `Turnier` and `DomTurnier` with `turnierNummer` and `einschraenkungen` fields. Added `TeilnehmerKreisE` enum for mapping restriction types.
- **Services and Controllers:** Updated repository and service operations to handle the new fields. Controllers reflect the new request models for creation and updates.
- **Validation:** Enforced input validation for `turnierNummer` format and `einschraenkungen` values.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-07 15:07:25 +02:00
7bf89c58d3 Refactor license matrix and tokenizer logic: rename LicenseTable to LizenzTable, replace LicenseMatrixService with LizenzMatrixService, enhance tokenizer with normalized and fallback token handling, improve ZNS import for license extraction, and update related documentation.
Some checks are pending
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Waiting to run
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Waiting to run
2026-04-06 23:52:06 +02:00
abaaeddaaf Standardize and refactor master data infrastructure: rename tables for plural consistency, remove unused entity tables, improve ZNS import mappings with enriched license properties, introduce Altersklasse domain model, activate Consul service discovery, and update application configuration accordingly. 2026-04-06 19:50:37 +02:00
1b6f8e7c59 Refactor BundeslandRepository, implement V012 migration for Reiter master data changes, harmonize domain models, resolve repository interface inconsistencies, and enhance ZNS import with relational mapping improvements. 2026-04-06 16:51:18 +02:00
1a6f2ea7ad Remove deprecated ZnsLegacyParsers, update MASTER_ROADMAP to reflect cleanup of parser remnants, stabilize ZNS import tests, and improve ZnsImportService with refined ZipInputStream management and enhanced functionary-reiter matching logic. 2026-04-06 14:41:50 +02:00
3cab4c4f47 Link Funktionaer to Reiter via reiter_id, implement findByName in ReiterRepository, optimize ZNS import for functionary-reiter matching, remove redundant fields from FunktionaerTable, and add database migration V011. 2026-04-06 14:21:11 +02:00
9237882437 Integrate qualification master data (QualifikationMasterTable) with functionary models, update schema and repository logic, refactor satzID references, and harmonize database migration (V010). 2026-04-06 13:59:14 +02:00
c35869f8ee Integrate qualification master data system (QualifikationMasterTable) for functionaries, refactor mapping logic in repositories, enhance database initialization for ZNS and Masterdata services, and add a seeder for ÖTO/FEI qualification data. Fix PSQLException during ZNS imports. 2026-04-06 13:53:15 +02:00
933ef9cd6c Resolve port conflicts in masterdata-service: update application.yml with separated bind addresses (Spring: 127.0.0.1, Ktor: 0.0.0.0), change management port to 8086, and add explicit datasource and Flyway configuration. Fix startup issues with Database.connect() in MasterdataDatabaseConfiguration. 2026-04-06 09:43:31 +02:00
aa9e2da3a3 Remove deprecated ZnsLegacyParsersTest.kt, synchronize database schema with Exposed domain models (migration V010), add license-related fields to Reiter, integrate updated LicenseMatrixService fallback logic, improve ZnsImportService with file archiving, and add ZNS testing runbook. 2026-04-06 01:46:26 +02:00
f50d4deb16 Refactor domain models (DomFunktionaer, DomReiter, DomPferd) to align with ZNS conventions: simplify naming, update properties, and enhance parser logic. Adjust related controllers, repository methods, and tests. Update MASTER_ROADMAP with changes to domain models. 2026-04-06 00:00:23 +02:00
a61dda69d1 Refactor domain models (DomFunktionaer, DomReiter, DomPferd) for ZNS alignment: update properties, streamline validation logic, and enhance parser to support new format. Adjust controllers and repository methods accordingly. 2026-04-05 08:21:16 +02:00
8771c7ce27 Archive legacy specifications document OETO-2026_Meldestelle_Pflichtenheft_V2.4_2021-07-28.md and replace it with a Markdown version for improved readability and metadata inclusion. Confirm compliance with structured documentation standards. 2026-04-04 21:00:18 +02:00
ef234747bc Create C-3 proposal for reorganizing docs/ folder structure: document hotspots, define target hierarchy, and outline migration plan. Update README.md and Curator roadmap with proposal details.
Some checks failed
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
2026-04-03 23:19:28 +02:00
7150622e1d Update setup guide and README to emphasize desktop-first development. Add detailed instructions for local setup, including prerequisites (JDK 25, Gradle 9.4.0, Docker), and clarify Docker backend stack as optional. Mark Sprint C tasks C-1 and C-2 as complete. 2026-04-03 23:11:20 +02:00
c6f28462eb Update MVVM + UDF documentation: add metadata, extend examples, and consolidate references. Mark Curator roadmap tasks as complete. 2026-04-03 23:05:17 +02:00
dbe7c74a9c Document tenant-aware database schema, multi-tenant strategy, and API references:
- Add database schema documentation: `Database_Schema_V1-V009.md` for tenant-isolated entities (`veranstaltungen`, `turniere`, `bewerbe`, etc.).
- Draft initial Kassa API reference: `Kassa_API.md` (status: DRAFT).
- Finalize Stammdaten API reference: `API_Uebersicht_Stammdaten.md` (status: ACTIVE).
- Summarize tenant isolation and multi-tenant strategy in `Multi_Tenant_Kurz.md`.
- Update `README.md` with links to new references. Mark B-2 roadmap tasks as partially complete.
2026-04-03 22:59:45 +02:00
6e484ee9a1 Update MASTER_ROADMAP with Offline-First product focus and Phase 8 milestones. Add detailed concept document for Desktop↔Backend synchronization (konzept-offline-first-desktop-backend-de.md). Mark Sprint C tasks C-1 and C-2 as complete and link ADR-0021/0022 dependencies. 2026-04-03 22:52:19 +02:00
6c64444a98 Add journal log: Fix Flyway migration issues in ping-service with service-specific schema history configuration.
Some checks failed
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Waiting to run
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
2026-04-03 21:52:30 +02:00
35f8b46e6c Archive outdated journal logs and documents. Add Postman Runbook structure and centralize API testing documentation. Update Flyway configuration for ping-service with service-specific schema history. 2026-04-03 21:48:39 +02:00
b9ec070993 docs: log session outcomes and apply enhancements across multiple components
Some checks failed
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
- **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
ed3d327c82 docs(curator): log session outcomes and finalize B-1 roadmap updates
- Logged session in `2026-04-03_Curator_B1_Roadmaps-Verzeichnis.md`, summarizing all roadmap reviews and corrections.
- Updated `Curator_Roadmap.md`: marked Sprint B-1 as complete, adjusted dependencies, and refined upcoming priorities.
- Corrected `QA_Roadmap.md` Sprint-B header to reflect partial completion (`🔴🟡`).
- Added detailed revisions for QA, backlog, and dependency management in all roadmaps.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 11:58:10 +02:00
52f2a54e0b feat(docs): finalize editing forms guideline and define empty state specification
- Marked `Editier-Formulare_Dialog-vs-Fullscreen_v1.md` as APPROVED with finalized mapping for all edit screens.
- Created `Empty-States_Spezifikation_v1.md` to outline design, behavior, and implementation plan for empty states across 10 screens.
- Logged session outcomes in `2026-04-03_UIUX_B1_B4_Editier-Formulare_Empty-States_Curator_Log.md`.
- Updated `UIUX_Roadmap.md` to reflect Sprint B completion and tasks for Sprint C-1.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 11:54:44 +02:00
59f7f8d4ad feat(tests): add QA test suites for onboarding and departmental logic validation
- **Onboarding (B-2):** Extracted `OnboardingValidator` and added `OnboardingValidatorTest` for edge-case validations (17 new unit tests: field guards, double-click prevention, cancel/reset behavior, `rememberSaveable` regression fix).
- **Departmental Logic (B-3):** Extended `AbteilungsRegelServiceTest` with 14 new tests covering CSN-C-NEU splitting logic (≤95 cm: license-free/licensed, ≥100 cm: R1/R2+), Caprilli regressions, and organizational/separate award scenarios.
- Updated `AbteilungsRegelService.kt` to implement CSN-C-NEU logic and added `ORGANISATORISCH` + `SEPARATE_SIEGEREHRUNG` enums for new rules.
- Updated Changelog and QA roadmap with completed tasks.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 11:46:05 +02:00
7ff48ed3d7 feat(devops): configure desktop packaging and introduce semantic versioning
- Added `nativeDistributions` for Linux (.deb), Windows (.msi), and macOS (.dmg) in `build.gradle.kts` with platform-specific settings, embedded JRE, and JVM-args.
- Implemented centralized semantic versioning via `version.properties` as the single source of truth, applying it across all builds.
- Introduced CI/CD release workflow (`.gitea/workflows/release.yml`) for auto-tagging, artifact builds, and release summaries.
- Created `CHANGELOG.md` following Keep-a-Changelog format for tracking changes.
- Documented icon requirements and packaging steps in `ICONS_PLACEHOLDER.md`.
- Updated DevOps roadmap to reflect completed Sprint C-1 and C-2 tasks.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 11:26:46 +02:00
c696b8c50e feat(db): add regulation-as-data tables for license height and horse age matrices
- Introduced `license_height_matrix` for mapping minimum license requirements to jump heights (ÖTO § 231).
- Added `horse_min_age_matrix` for defining minimum horse ages by discipline, height, or level (ÖTO § 103, FEI GR Art. 136).
- Populated both tables with ÖTO 2026 and FEI-compliant seed data.
- Updated Flyway V008 to remove incorrect `RD4` entry and annotated corrected enum references.
- Created Flyway V009 for introducing the new tables and their seeds.
- Aligned documentation, validation rules, and roadmaps for backend implementation handover.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 11:10:45 +02:00
1f9f528554 fix(tests): resolve EntriesIsolationIntegrationTest failures with test-specific DB config
- Added `TestExposedConfiguration` to connect Exposed with Spring `DataSource` in the `test` profile.
- Downgraded `springdoc` version from `3.0.0` to `2.8.9` for Spring Boot 3.x compatibility.
- Applied `@ActiveProfiles("test")` to `EntriesIsolationIntegrationTest`.
- Updated roadmap documentation to reflect bugfix and test success.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 10:52:40 +02:00
f4844eb428 fix(tests): resolve EntriesIsolationIntegrationTest failures with test-specific DB config
- Added `TestExposedConfiguration` to connect Exposed with Spring `DataSource` in the `test` profile.
- Downgraded `springdoc` version from `3.0.0` to `2.8.9` for Spring Boot 3.x compatibility.
- Applied `@ActiveProfiles("test")` to `EntriesIsolationIntegrationTest`.
- Updated roadmap documentation to reflect bugfix and test success.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 10:24:08 +02:00
2270f9602f feat(api): extend Masterdata API with CRUD endpoints for Pferde and Funktionäre
- Added full CRUD support for Pferde (list, search, get by ID, create, update, delete) with filters for Jahrgang and BesitzerId.
- Introduced FunktionaerController, offering CRUD operations for Funktionäre (list, search, get by ID, create, update, delete) with filtering by Rolle.
- Enhanced HorseController and ReiterController with updated data models, additional request validation, and detailed filtering options.
- Extended backend configurations to register new controllers and route handlers.
- Updated roadmaps and progress documents to reflect completed Sprint B-1 tasks.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 10:12:36 +02:00
2dd5453365 docs: add ADR-0022 for LAN-Sync protocol implementation
- Documented a hybrid "Event-Sourcing Light with Lamport Clocks" approach for offline-first LAN synchronization between Meldestelle and Richter-Turm.
- Included detailed options analysis (Event-Sourcing, CRDT, Timestamp-Sync) and rationale for the selected solution.
- Added specifications: SyncEvent model, Lamport clock rules, WebSocket protocol (handshake, sync, recovery), and domain mastership rules.
- Defined snapshot strategy to ensure scalable logs and efficient replay.
- Outlined implementation plan in four phases, highlighting task breakdown for backend and frontend teams.
- Updated architect, backend, and frontend roadmaps to reflect ADR-0022 integration steps.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 09:45:55 +02:00
236876a043 docs: restructure and streamline sprint execution order
- Consolidated and removed redundant steps in `SPRINT_EXECUTION_ORDER.md`.
- Simplified descriptions and roadmap formatting for improved clarity.
- Updated progress and dependencies to align with Phase 8 objectives.
- Adjusted role-specific roadmaps to reflect the latest sprint updates.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 09:43:11 +02:00
14b458860c feat(validation): integrate ÖTO/FEI rule validations and centralized validators
- Added `OetoValidators` with live-validation for OEPS numbers, FEI-IDs, license classes, and horse data to align with ÖTO/FEI 2026 standards.
- Expanded `ReiterProfilViewModel` and `PferdProfilViewModel` to include validation states (`ValidationResult`) for enhanced form feedback and dirty state tracking.
- Standardized mock data in `Stores.kt` and `NennungModels.kt` to comply with updated validation rules.
- Created `OetoValidatorsTest` to ensure validation logic accuracy (30 unit tests, all green).
- Updated `build.gradle.kts` to include `kotlin.test` dependency for JVM testing.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-03 09:04:12 +02:00
f82dbd64a5 Integrate Ktor HTTP clients and repositories for Veranstalter and Turnier features:
- Add `ApiRoutes` for central backend routing configuration.
- Implement `DefaultVeranstalterRepository` and `DefaultTurnierRepository` with Ktor clients.
- Add domain models (`Turnier`, `Bewerb`, `Abteilung`, `Veranstalter`) and respective repository interfaces.
- Replace fake VeranstalterRepository with real implementation.
- Update DI with `veranstalterModule` and HTTP client injection.
- Simplify TokenProvider and update HttpClient setup (timeouts, retries, logging).
- Mark roadmap tasks B-2 as partially complete.
2026-04-03 01:09:35 +02:00
a5c1fb5bae Mark Sprint B-1 and B-2 tasks as complete: finalize CI/CD pipeline for headless Compose Desktop tests, implement Gradle build optimizations, and update roadmap. Add new Gitea Actions workflow for desktop builds and tests. 2026-04-03 00:48:58 +02:00