All checks were successful
Deploy Development / deploy (push) Successful in 38s
Test Suite / pytest-backend (push) Successful in 35s
Test Suite / lint-backend (push) Successful in 0s
Test Suite / build-frontend (push) Successful in 11s
Test Suite / playwright-tests (push) Successful in 1m4s
- Updated app version to 0.8.102, reflecting recent enhancements in combination exercises. - Introduced structured method profiles for combination exercises, allowing for detailed planning and coaching support. - Enhanced frontend components to display method profiles in the Exercise and Combination Coach views. - Updated documentation to include new specifications and implementation details for method archetypes and profiles. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
3.8 KiB
3.8 KiB
Umsetzungsplan: Trainingsmodule & Kombinationsübungen
Bezug: functional/Shinkan Trainingsmodule Kombinationsuebungen Spezifikation V2.md (Kopf „V3“, inkl. § 10.2.1, § 10.4 Coaching-Stufen, Anhang A Implementierungsabgleich — Drift-Schutz)
Technische Entwurfsspezifikation: technical/TRAINING_MODULES_AND_COMBINATION_EXERCISES_SPEC.md
Stand dieses Dokuments: 2026-05-12 (Abgleich mit Code ~App 0.8.102)
Ziele
Umsetzung der MVP-Punkte aus der Fachspezifikation ohne die bestehende Planung zu destabilisieren: schrittweise Migrationen, bestehende Sektions-/Item-Struktur (training_unit_sections, training_unit_section_items) beibehalten, Kopiersemantik bei Übernahmen.
Phasenüberblick
| Phase | Inhalt | Status |
|---|---|---|
| 1 | Trainingsmodule (Bibliothek): Tabellen training_modules, training_module_items; REST CRUD mit Governance wie andere Bibliotheken; Übernahme in eine bestehende Einheit per POST /api/training-units/{id}/apply-training-module (Anfügen ans Ende eines Abschnitts via section_order_index); optionale Lineage-Spalte source_training_module_id auf Planungsitems; UI: Liste/Editor unter /planning/training-modules, Link von der Planung, Modal „Modul übernehmen“ |
umgesetzt (MVP Schritt 1) |
| 2 | Kombinationsübungen: exercise_kind/combination_*, Slots, Pools, method_archetype, method_profile (JSON) |
teilweise — Migration 056, CRUD/API, Picker/Liste; Übungsformular: geführtes method_profile nach Archetyp (CombinationMethodProfileEditor, combinationMethodProfileUi.js) plus Roh‑JSON; Backend: keine strenge Validierung Profil ↔ Archetyp |
| 3 | Planungsblöcke: Gruppierung, Auflösen, „als Modul speichern“, erweiterter Übernahmemodus (Zwischenposition) | geplant |
| 4 | Coaching: Archetyp-Support | teilweise: Stufe A nach Fachspez § 10.4 (Slotliste, Kandidaten aus Katalog geladen, Archetyp-Hilfstexte in CombinationCoachSlots/combinationArchetypes.js); Stufe B/C (Zeitleisten-Splitting, Stations-/Intervall-Timing) — offen, siehe Anhang A der Fachspez |
| 5 | Rahmenprogramm: Modulübernahme UX in Slot-Blueprint-Editor konsolidieren | geplant |
Coaching — verbindliche Arbeitspakete (gegen Spec-Drift)
| Paket | Spec-Referenz | Kurzinhalt |
|---|---|---|
| 4a (Ist/Ziel) | § 10.2.1 | Archetyp-Schlüssel bleiben identisch zu backend/routers/exercises.py (COMBINATION_ARCHETYPE_IDS) und frontend/src/constants/combinationArchetypes.js. |
| 4b | § 10.4 Stufe A | Slots + Kandidaten; Archetyp-Hilfstext; method_profile lesend unter der Kopf-Zeile (Key/Wert‑Liste wenn gepflegt); Feintuning Labels optional. |
| 4c | § 10.4 Stufe B | Entscheidung: virtuelle Substeps vs. persistierte Items; Konsistenz sectionsToPutPayload/Ist-Zeit. |
| 4d | § 10.4 Stufe C | Archetyp-spezifische Timer/Wechsel/Abhaken an method_profile — nach 4b/4c. |
Phase 1 (technische Notizen)
- Governance:
visibility/club_id/created_byanalogtraining_plan_templates; Listenfilterlibrary_content_visibility_sql. - Übernahme: Keine Live-Verknüpfung; Items werden kopiert;
source_training_module_iddokumentiert Herkunft. - Schnittstelle Übernahme:
section_order_indexentspricht der Reihenfolge der Abschnitte in der gespeicherten Einheit (0-basiert), konsistent zur Planungs-API.
Pflege nach Merge
DATABASE_SCHEMA.mdbei größeren Schema-Erweiterungen ergänzen.ACCESS_LAYER_ENDPOINT_AUDIT.mdbei neuen mandantenbezogenen Endpunkten fortpflegen.- Nach jeder Kombi-/Coach-Änderung:
functional/… Spezifikation V2.mdAnhang A und diese Tabelle Phasen 2/4 abstimmen.