diff --git a/backend/placeholder_resolver.py b/backend/placeholder_resolver.py index c371c23..1d5cf56 100644 --- a/backend/placeholder_resolver.py +++ b/backend/placeholder_resolver.py @@ -999,26 +999,69 @@ def get_placeholder_catalog(profile_id: str) -> Dict[str, List[Dict[str, str]]]: ('weight_trend', 'Gewichtstrend (7d/30d)'), ('kf_aktuell', 'Aktueller Körperfettanteil in %'), ('bmi', 'Body Mass Index'), + ('weight_7d_median', 'Gewicht 7d Median (kg)'), + ('weight_28d_slope', 'Gewichtstrend 28d (kg/Tag)'), + ('fm_28d_change', 'Fettmasse Änderung 28d (kg)'), + ('lbm_28d_change', 'Magermasse Änderung 28d (kg)'), + ('waist_28d_delta', 'Taillenumfang Änderung 28d (cm)'), + ('waist_hip_ratio', 'Taille/Hüfte-Verhältnis'), + ('recomposition_quadrant', 'Rekomposition-Status'), ], 'Ernährung': [ ('kcal_avg', 'Durchschn. Kalorien (30d)'), ('protein_avg', 'Durchschn. Protein in g (30d)'), ('carb_avg', 'Durchschn. Kohlenhydrate in g (30d)'), ('fat_avg', 'Durchschn. Fett in g (30d)'), + ('energy_balance_7d', 'Energiebilanz 7d (kcal/Tag)'), + ('protein_g_per_kg', 'Protein g/kg Körpergewicht'), + ('protein_adequacy_28d', 'Protein Adequacy Score (0-100)'), + ('macro_consistency_score', 'Makro-Konsistenz Score (0-100)'), ], 'Training': [ ('activity_summary', 'Aktivitäts-Zusammenfassung (7d)'), ('trainingstyp_verteilung', 'Verteilung nach Trainingstypen'), + ('training_minutes_week', 'Trainingsminuten pro Woche'), + ('training_frequency_7d', 'Trainingshäufigkeit 7d'), + ('quality_sessions_pct', 'Qualitätssessions (%)'),' + ('ability_balance_strength', 'Ability Balance - Kraft (0-100)'), + ('ability_balance_endurance', 'Ability Balance - Ausdauer (0-100)'), + ('proxy_internal_load_7d', 'Proxy Load 7d'), + ('rest_day_compliance', 'Ruhetags-Compliance (%)'), ], 'Schlaf & Erholung': [ ('sleep_avg_duration', 'Durchschn. Schlafdauer (7d)'), ('sleep_avg_quality', 'Durchschn. Schlafqualität (7d)'), ('rest_days_count', 'Anzahl Ruhetage (30d)'), + ('sleep_avg_duration_7d', 'Schlaf 7d (Stunden)'), + ('sleep_debt_hours', 'Schlafschuld (Stunden)'), + ('sleep_regularity_proxy', 'Schlaf-Regelmäßigkeit (Min Abweichung)'), + ('sleep_quality_7d', 'Schlafqualität 7d (0-100)'), ], 'Vitalwerte': [ ('vitals_avg_hr', 'Durchschn. Ruhepuls (7d)'), ('vitals_avg_hrv', 'Durchschn. HRV (7d)'), ('vitals_vo2_max', 'Aktueller VO2 Max'), + ('hrv_vs_baseline_pct', 'HRV vs. Baseline (%)'), + ('rhr_vs_baseline_pct', 'RHR vs. Baseline (%)'), + ('vo2max_trend_28d', 'VO2max Trend 28d'), + ], + 'Scores (Phase 0b)': [ + ('goal_progress_score', 'Goal Progress Score (0-100)'), + ('body_progress_score', 'Body Progress Score (0-100)'), + ('nutrition_score', 'Nutrition Score (0-100)'), + ('activity_score', 'Activity Score (0-100)'), + ('recovery_score', 'Recovery Score (0-100)'), + ('data_quality_score', 'Data Quality Score (0-100)'), + ], + 'Focus Areas': [ + ('top_focus_area_name', 'Top Focus Area Name'), + ('top_focus_area_progress', 'Top Focus Area Progress (%)'), + ('focus_cat_körper_progress', 'Kategorie Körper - Progress (%)'), + ('focus_cat_körper_weight', 'Kategorie Körper - Gewichtung (%)'), + ('focus_cat_ernährung_progress', 'Kategorie Ernährung - Progress (%)'), + ('focus_cat_ernährung_weight', 'Kategorie Ernährung - Gewichtung (%)'), + ('focus_cat_aktivität_progress', 'Kategorie Aktivität - Progress (%)'), + ('focus_cat_aktivität_weight', 'Kategorie Aktivität - Gewichtung (%)'), ], 'Zeitraum': [ ('datum_heute', 'Heutiges Datum'),