This commit is contained in:
2026-09-01 15:48:43 +02:00
parent e274ece128
commit d928dfe316
6 changed files with 364 additions and 154 deletions
+19 -12
View File
@@ -6,29 +6,30 @@ Es verwaltet:
- Plaene
- Uebungen in einer zentralen Uebungsbibliothek
- einfache Progressionsvarianten pro Uebung
- Trainingstage
- Warm-up und Cool-down pro Trainingstag
- Uebungen, die an Trainingstagen hinterlegt sind
Nicht mehr enthalten sind PDF-Erzeugung, Rezeptsammlungen, Progressionen,
Planvorschlaege, Analyse-/ChatGPT-Anbindungen und Farbdefinitionen fuer eine
Ausgabeoberflaeche.
Nicht mehr enthalten sind PDF-Erzeugung, Rezeptsammlungen,
Progressionsregeln, Wochenlogik, Tracking, Pruefungen, Planvorschlaege,
Analyse-/ChatGPT-Anbindungen und Farbdefinitionen fuer eine Ausgabeoberflaeche.
## Datenvertrag
Trainingsplaene verwenden:
```text
schema_version: 4
contract_version: 3
schema_version: 5
contract_version: 4
```
Eine Plan-Config ist bewusst flach:
```json
{
"schema_version": 4,
"contract_version": 3,
"schema_version": 5,
"contract_version": 4,
"plan_id": "basis-plan",
"meta": {
"title": "Basis-Plan"
@@ -37,7 +38,12 @@ Eine Plan-Config ist bewusst flach:
{
"id": "exercise-squat",
"name": "Squat",
"cue": "Sauber und kontrolliert"
"progressions": [
{ "id": "progression-deep-squat-hold", "name": "Deep Squat Hold" },
{ "id": "progression-negative-squat", "name": "Negative Squat" },
{ "id": "progression-full-squat", "name": "Full Squat" }
],
"current_progression_id": "progression-deep-squat-hold"
}
],
"days": [
@@ -50,9 +56,7 @@ Eine Plan-Config ist bewusst flach:
"exercises": [
{
"id": "day-exercise-1",
"exercise_id": "exercise-squat",
"sets": 3,
"reps": "8-12"
"exercise_id": "exercise-squat"
}
]
}
@@ -92,5 +96,8 @@ Der alte aktive Config-Zugriff bleibt fuer einfache Clients erhalten:
Aeltere Trainingsplaene werden beim Laden auf den flachen Vertrag reduziert.
Uebungen aus alten Rotationen werden in die Uebungsbibliothek uebernommen und
als Tagesuebungen referenziert. Warm-up und Cool-down werden aus den bisherigen
als Tagesuebungen referenziert. Alte `stages.steps` oder `variants` werden
dedupliziert als einfache Progressionsvarianten an die Uebung gehaengt; die
erste Variante wird als aktuelle Wahrheit gesetzt, wenn noch keine aktuelle
Progression gespeichert ist. Warm-up und Cool-down werden aus den bisherigen
Tages- oder `prepost`-Feldern uebernommen.