--- name: m04-metrics-engine description: MetricsEngine — расчёт метрик тренировки (adherence, тоннаж, 1ПМ, пульс-метрики, красные флаги) → src.workout_metrics --- # m04-metrics-engine Сервис `MetricsEngine` в `Server.WatchBody.Core` (`Metrics\`): детерминированный расчёт метрик одной тренировки атлета по его данным (`workout`, `workout_set`, `daily_log`, активная версия программы через ProgramStore) и upsert в `src.workout_metrics`. Вызывается из sync (m02) после коммита пакета; сбой расчёта не ломает sync. Пороги красных флагов — конфиг `Safety.*` (Р3-А). Правила прогрессии (m05) читают `workout_metrics` — этот модуль в план ничего не пишет. - Требования: [module_reqs.md](module_reqs.md) - План работ: [readme.md](readme.md) - Спецификации: [api_specs/](api_specs/)