Commit Graph

5 Commits

Author SHA1 Message Date
56273795a0 fix: syntax error in charts.py - mismatched bracket
All checks were successful
Deploy Development / deploy (push) Successful in 51s
Build Test / lint-backend (push) Successful in 1s
Build Test / build-frontend (push) Successful in 14s
2026-03-29 07:34:27 +02:00
4c22f999c4 feat: Konzept-konforme Nutrition Charts (E1-E5 komplett)
All checks were successful
Deploy Development / deploy (push) Successful in 53s
Build Test / lint-backend (push) Successful in 1s
Build Test / build-frontend (push) Successful in 17s
Backend Enhancements:
- E1: Energy Balance mit 7d/14d rolling averages + balance calculation
- E2: Protein Adequacy mit 7d/28d rolling averages
- E3: Weekly Macro Distribution (100% stacked bars, ISO weeks, CV)
- E4: Nutrition Adherence Score (0-100, goal-aware weighting)
- E5: Energy Availability Warning (multi-trigger heuristic system)

Frontend Refactoring:
- NutritionCharts.jsx komplett überarbeitet
- ScoreCard component für E4 (circular score display)
- WarningCard component für E5 (ampel system)
- Alle Charts zeigen jetzt Trends statt nur Rohdaten
- Legend + enhanced metadata display

API Updates:
- getWeeklyMacroDistributionChart (weeks parameter)
- getNutritionAdherenceScore
- getEnergyAvailabilityWarning
- Removed old getMacroDistributionChart (pie)

Konzept-Compliance:
- Zeitfenster: 7d, 28d, 90d selectors
- Deutlich höhere Aussagekraft durch rolling averages
- Goal-mode-abhängige Score-Gewichtung
- Cross-domain warning system (nutrition × recovery × body)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-29 07:28:56 +02:00
176be3233e fix: add missing prefix to charts router
All checks were successful
Deploy Development / deploy (push) Successful in 46s
Build Test / lint-backend (push) Successful in 0s
Build Test / build-frontend (push) Successful in 14s
Charts router had no prefix, causing 404 errors.

Fixed:
- Added prefix="/api/charts" to APIRouter()
- Changed all endpoint paths from "/charts/..." to "/..."
  (prefix already includes /api/charts)

Now endpoints resolve correctly:
/api/charts/energy-balance
/api/charts/recovery-score
etc.

All 23 chart endpoints now accessible.
2026-03-29 07:08:05 +02:00
782f79fe04 feat: Phase 0c - Complete chart endpoints (E1-E5, A1-A8, R1-R5, C1-C4)
All checks were successful
Deploy Development / deploy (push) Successful in 44s
Build Test / lint-backend (push) Successful in 0s
Build Test / build-frontend (push) Successful in 14s
- Nutrition: Energy balance, macro distribution, protein adequacy, consistency (4 endpoints)
- Activity: Volume, type distribution, quality, load, monotony, ability balance (7 endpoints)
- Recovery: Recovery score, HRV/RHR, sleep, sleep debt, vitals matrix (5 endpoints)
- Correlations: Weight-energy, LBM-protein, load-vitals, recovery-performance (4 endpoints)

Total: 20 new chart endpoints (3 → 23 total)
All endpoints return Chart.js-compatible JSON
All use data_layer functions (Single Source of Truth)

charts.py: 329 → 2246 lines (+1917)
2026-03-28 22:08:31 +01:00
c79cc9eafb feat: Phase 0c - Multi-Layer Data Architecture (Proof of Concept)
All checks were successful
Deploy Development / deploy (push) Successful in 47s
Build Test / lint-backend (push) Successful in 0s
Build Test / build-frontend (push) Successful in 15s
- Add data_layer/ module structure with utils.py + body_metrics.py
- Migrate 3 functions: weight_trend, body_composition, circumference_summary
- Refactor placeholders to use data layer
- Add charts router with 3 Chart.js endpoints
- Tests: Syntax , Confidence logic 

Phase 0c PoC (3 functions): Foundation for 40+ remaining functions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-28 18:26:22 +01:00