Current section
Files
Jump to
Current section
Files
priv/conformance/valid/personalization-forbid-exercise.json
{
"$schema": "https://wpl.dev/schemas/wpl/v1.schema.json",
"version": "1.7.0",
"plan": {
"id": "plan_forbid_exercise_17",
"name": "Forbid Exercise Personalization Plan",
"description": "Exercises the forbid_exercise action type and the in operator introduced in schema 1.7.0.",
"type": "workout",
"visibility": "template",
"metadata": {
"tags": [
"personalization",
"safety"
],
"difficulty": "adaptive",
"estimated_duration_days": 28,
"language": "en"
},
"goals": [
{
"id": "goal_safe_strength",
"type": "primary",
"category": "strength",
"name": "Build strength safely around injuries"
}
],
"personalization": {
"inputs": [
{
"id": "injuries",
"type": "array",
"source": "user.injuries"
},
{
"id": "cycle_day",
"type": "number",
"source": "wellness.menstrual_phase"
}
],
"rules": [
{
"id": "forbid_knee_dominant",
"condition": {
"field": "injuries",
"op": "contains",
"value": "torn_meniscus"
},
"actions": [
{
"type": "forbid_exercise",
"exercise": "barbell_back_squat",
"scope": "plan"
}
]
},
{
"id": "flow_window_forbid",
"condition": {
"field": "cycle_day",
"op": "in",
"value": [1, 2, 3]
},
"actions": [
{
"type": "forbid_exercise",
"exercise": "heavy_deadlift"
}
]
}
]
},
"phases": [
{
"id": "phase_1",
"name": "Block 1",
"order": 1,
"duration": {
"value": 1,
"unit": "weeks"
},
"weeks": [
{
"id": "wk_1",
"name": "Week 1",
"order": 1,
"days": [
{
"id": "d_1",
"day_of_week": 1,
"name": "Day 1",
"type": "training"
}
]
}
]
}
]
}
}