548 lines
19 KiB
JSON
548 lines
19 KiB
JSON
{
|
||
"program_id": "prg_2026_10_health_start",
|
||
"version": 4,
|
||
"based_on_version": 3,
|
||
"status": "draft",
|
||
"author": "user",
|
||
"created_at": "2026-10-17T19:00:00Z",
|
||
"profile": {
|
||
"age_group": "45+",
|
||
"experience": "novice",
|
||
"equipment": "gym",
|
||
"days_per_week": 3,
|
||
"goals": [
|
||
"weight_normalization",
|
||
"muscle_tone",
|
||
"testosterone_support"
|
||
],
|
||
"limitations": [
|
||
"hypertension: no breath-holding/valsava, cancel if BP>150/90 pre-session, HR cap 120 strength / 135 cardio",
|
||
"obesity: low-impact cardio only, moderate caloric deficit 300-500 kcal",
|
||
"meniscus injury: no running/jumping/deep knee flexion, squats replaced by leg press short ROM"
|
||
]
|
||
},
|
||
"weeks": [
|
||
{
|
||
"week": 1,
|
||
"goal": "вводная, адаптация: по 1 рабочему подходу, веса калибруются (последние 2 повторения с трудом, без отказа)",
|
||
"load_level": "medium_week_pattern_medium_large_small",
|
||
"sessions": [
|
||
{
|
||
"day": "monday",
|
||
"focus": "full_body_a",
|
||
"warmup_min": 12,
|
||
"cardio_after_min": 25,
|
||
"exercises": [],
|
||
"cooldown": {
|
||
"duration_min": 8,
|
||
"items": [
|
||
{
|
||
"exercise_id": "single_leg_stance",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 5,
|
||
"rest_sec": 60,
|
||
"notes": "баланс, у опоры; обе ноги"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "calf_stretch_wall",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "hip_flexor_stretch_kneeling",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "thoracic_rotation_quadruped",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 8,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"day": "wednesday",
|
||
"focus": "lower_pull_b",
|
||
"warmup_min": 12,
|
||
"cardio_after_min": 20,
|
||
"exercises": [
|
||
{
|
||
"exercise_id": "leg_press_short_rom",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "lying_leg_curl",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 120
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "lat_pulldown",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 12,
|
||
"target_rpe": 7,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "seated_cable_row",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "chest_press_machine",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "shoulder_press_machine",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "back_extension",
|
||
"sets": [
|
||
{
|
||
"weight_kg": 0,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 120,
|
||
"notes": "без переразгибания"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "incline_crunch",
|
||
"sets": [
|
||
{
|
||
"weight_kg": 0,
|
||
"reps": 15,
|
||
"target_rpe": 6,
|
||
"rest_sec": 90
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "forearm_plank",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 25,
|
||
"target_rpe": 6,
|
||
"rest_sec": 90
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"cooldown": {
|
||
"duration_min": 8,
|
||
"items": [
|
||
{
|
||
"exercise_id": "single_leg_stance",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 5,
|
||
"rest_sec": 60,
|
||
"notes": "баланс, у опоры; обе ноги"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "calf_stretch_wall",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "hip_flexor_stretch_kneeling",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "thoracic_rotation_quadruped",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 8,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"day": "friday",
|
||
"focus": "full_body_a_light",
|
||
"warmup_min": 12,
|
||
"cardio_after_min": 30,
|
||
"exercises_note": "повторить monday с весами −30%, кардио длиннее",
|
||
"exercises": [
|
||
{
|
||
"exercise_id": "leg_press_short_rom",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 150,
|
||
"notes": "вес = 70% от понедельника"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "chest_press_machine",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "seated_cable_row",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "lat_pulldown",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "seated_dumbbell_shoulder_press",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 150
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "dumbbell_curl",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 120
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "triceps_pushdown",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 120
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "incline_crunch",
|
||
"sets": [
|
||
{
|
||
"weight_kg": 0,
|
||
"reps": 15,
|
||
"target_rpe": 5,
|
||
"rest_sec": 90
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "forearm_plank",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 25,
|
||
"target_rpe": 5,
|
||
"rest_sec": 90
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"cooldown": {
|
||
"duration_min": 8,
|
||
"items": [
|
||
{
|
||
"exercise_id": "single_leg_stance",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 5,
|
||
"rest_sec": 60,
|
||
"notes": "баланс, у опоры; обе ноги"
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "calf_stretch_wall",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "hip_flexor_stretch_kneeling",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 1,
|
||
"duration_sec": 30,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"exercise_id": "thoracic_rotation_quadruped",
|
||
"sets": [
|
||
{
|
||
"weight_kg": null,
|
||
"reps": 8,
|
||
"target_rpe": 4,
|
||
"rest_sec": 30
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"week": 2,
|
||
"goal": "закрепление техники, +1 повторение там, где все подходы закрыты легко",
|
||
"sessions_note": "те же тренировки monday/wednesday/friday; в каждом упражнении 2 рабочих подхода",
|
||
"progression": {
|
||
"sets": 2,
|
||
"reps_delta": 0,
|
||
"weight_delta_pct": 0
|
||
},
|
||
"sessions": []
|
||
},
|
||
{
|
||
"week": 3,
|
||
"goal": "прогрессия повторений: +1-2 повторения в каждом подходе при том же весе",
|
||
"sessions_note": "те же тренировки; 2 подхода",
|
||
"progression": {
|
||
"sets": 2,
|
||
"reps_delta": 1,
|
||
"weight_delta_pct": 0
|
||
},
|
||
"sessions": []
|
||
},
|
||
{
|
||
"week": 4,
|
||
"goal": "достигли 15-20 повторений — +2,5-5% веса (ноги +2,5 кг, руки +0,5-1 кг), повторения откатываются к 12-15",
|
||
"sessions_note": "те же тренировки; 2 подхода; лёгкая пятница сохраняется",
|
||
"progression": {
|
||
"sets": 2,
|
||
"reps_delta": 0,
|
||
"weight_delta_pct": 3,
|
||
"weight_delta_rule": "arms +0.5-1kg, legs +2.5kg, max +400g small muscle groups"
|
||
},
|
||
"sessions": []
|
||
},
|
||
{
|
||
"week": 5,
|
||
"goal": "начало месяцев 3-4: 2-3 рабочих подхода, 12-15 повторений, отдых 1,5-2 мин",
|
||
"sessions_note": "переход к блоку «добавляем объём»; каждую 8-ю неделю — лёгкая (веса −30%)",
|
||
"progression": {
|
||
"sets": 3,
|
||
"reps_delta": 1,
|
||
"weight_delta_pct": 2,
|
||
"rest_sec": 110
|
||
},
|
||
"sessions": []
|
||
}
|
||
],
|
||
"safety": {
|
||
"pre_session_check": {
|
||
"resting_hr_max": 90,
|
||
"bp_cancel_over": "150/90",
|
||
"bp_walk_only": "140-150/90-95"
|
||
},
|
||
"strength_hr_cap": 120,
|
||
"cardio_hr_zone": [
|
||
110,
|
||
135
|
||
],
|
||
"recovery_rule": "пульс к исходному за 3-5 мин после подхода; АД за 5-10 мин после тренировки",
|
||
"red_flags": [
|
||
"боль/давление в груди",
|
||
"головокружение",
|
||
"острая боль или щелчки в колене",
|
||
"утренний пульс +8-10 от обычного 2 дня подряд"
|
||
],
|
||
"intensity_rule": "заканчивать сет за 1-2 повтора до отказа (McRobert); полный отказ и форсированные повторения исключены",
|
||
"injury_rule": "боль в колене 2 занятия подряд → упражнение заменяется (жим ногами ↔ разгибания малой амплитуды ↔ велотренажёр); боль дольше недели → следующая тренировка недели 60-70% весов"
|
||
},
|
||
"nutrition": {
|
||
"deficit_kcal": [
|
||
300,
|
||
500
|
||
],
|
||
"protein_g_per_kg_target_weight": [
|
||
1.6,
|
||
2.0
|
||
],
|
||
"fat_g_per_kg_min": 0.8,
|
||
"notes": "соль минимум; сон 8 ч; алкоголь минимум; натуральные продукты (Жижин гл. 7)",
|
||
"tracking": {
|
||
"weeks": [
|
||
1,
|
||
2,
|
||
3,
|
||
4
|
||
],
|
||
"method": "взвешивание еды + учёт в приложении",
|
||
"target": "дефицит 300-500 ккал/день, белок 1.6-2 г/кг целевого веса"
|
||
},
|
||
"protein_priority": "белок не урезать ни при каком дефиците (Attia); голодание/окна питания >12ч исключены"
|
||
},
|
||
"rationale": "v4 по итогам чтения новых книг (МакРоберт «Думай! 2», «Руки титана», «Отстой»; Аттия «Outlive»; Шварценеггер кн.5): зафиксировано правило «не до отказа» (RPE-цель 6-8, стоп за 1-2 повтора), ворота прогрессии «2 закрытые тренировки подряд», правила замены при боли в колене, приоритет белка на дефиците. Каркас недели (3 дня: средняя-большая-малая + кардио 20-30 мин после силовой) сохранён с v3.",
|
||
"corrections_from_sources": [
|
||
{
|
||
"source": "Peter Attia 'Outlive' / zone 2 framework",
|
||
"change": "(скорректировано в v3) зона 2 встроена в те же 3 дня: кардио после силовой удлинено до 20-30 мин; отдельный день не добавляется"
|
||
},
|
||
{
|
||
"source": "New Rules of Lifting for Life (Schuler/Cosgrove)",
|
||
"change": "правило 'тренируйся вокруг травмы': для каждого упражнения с болью в колене есть пара-замена (жим ногами <-> разгибания в тренажёре с малой амплитудой <-> велотренажёр)"
|
||
},
|
||
{
|
||
"source": "Strength Training Past 50 (Westcott)",
|
||
"change": "добавлен блок баланса/мобильности 5-10 мин после каждой тренировки"
|
||
},
|
||
{
|
||
"source": "Bigger Leaner Stronger (Matthews)",
|
||
"change": "недели 1-4: обязательный учёт калорий (взвешивание еды в приложении), цель дефицита уточнена"
|
||
},
|
||
{
|
||
"source": "McRobert 'Думай! 2' / 'Руки титана'",
|
||
"change": "правило интенсивности: заканчивать сет за 1-2 повтора до отказа (RPE 6-8, не 10); застой лечится сменой числа рабочих сетов (1<->2<->3), а не добавкой упражнений; при боли дольше недели — вторая тренировка недели облегчённая (60-70%)"
|
||
},
|
||
{
|
||
"source": "McRobert 'Думай! 2'",
|
||
"change": "ворота прогрессии ужесточены: вес растёт только если 2 тренировки подряд все подходы закрыты легко"
|
||
},
|
||
{
|
||
"source": "Attia 'Outlive' (гл. 10-13)",
|
||
"change": "подтверждена зона 2 как «тест на разговор» (70-85% реального макс. пульса); белок на дефиците — приоритет, длительные голодания исключены; VO2max-интервалы — опция не раньше 3-го месяца и только после кардиолога"
|
||
},
|
||
{
|
||
"source": "Schwarzenegger, энциклопедия кн.5 (гл. 4)",
|
||
"change": "красные флаги дополнены правилом травм: боль в колене 2 занятия подряд — упражнение заменяется, не «дотренировывается»"
|
||
}
|
||
],
|
||
"corrections_note": "v3: по решению пользователя отдельный 4-й день кардио исключён — перебор; зона 2 оставлена как удлинённое кардио после силовых (20-30 мин)",
|
||
"progression_gate": "вес +2.5-5% только если 2 тренировки подряд все подходы закрыты при RPE<=7 (McRobert)",
|
||
"future_options": {
|
||
"month_3_plus": "VO2max-интервалы 1×нед (4×4 мин) — только после допуска кардиолога и стабильного АД"
|
||
}
|
||
} |