{
  "format": "time2bar-transfer",
  "version": 1,
  "source": "manual",
  "units": { "load": "kg", "duration": "seconds" },
  "exercises": [
    { "externalId": "pull-up", "name": "Dominadas", "aliases": ["Pull up"], "metric": "reps" },
    { "externalId": "tuck-front-lever", "name": "Front lever tuck", "metric": "hold_seconds" }
  ],
  "routines": [
    {
      "externalId": "pull-a",
      "name": "Tirón A",
      "exercises": [
        { "externalExerciseId": "pull-up", "name": "Dominadas", "order": 0, "performanceType": "reps", "setCount": 4, "targetRepsMin": 5, "targetRepsMax": 8, "targetLoadKg": 10, "restSeconds": 120 },
        { "externalExerciseId": "tuck-front-lever", "name": "Front lever tuck", "order": 1, "performanceType": "hold", "setCount": 4, "targetHoldSeconds": 12, "restSeconds": 120 },
        { "name": "Dead hang", "order": 2, "performanceType": "hold", "structure": "accumulation", "targetTotalSecondsMin": 90, "targetTotalSecondsMax": 150, "notes": "Acumular tiempo con buena forma" }
      ]
    }
  ],
  "workouts": [
    {
      "externalId": "2026-07-20-pull-a",
      "date": "2026-07-20T18:30:00+02:00",
      "name": "Tirón A",
      "status": "partial",
      "exercises": [
        { "externalExerciseId": "pull-up", "name": "Dominadas", "rpe": 8, "notes": "Técnica limpia", "restSeconds": 120, "sets": [
          { "setIndex": 0, "status": "completed", "reps": 8, "loadKg": 10, "rpe": 8, "rir": 2, "notes": "Técnica limpia" },
          { "setIndex": 1, "status": "completed", "reps": 7, "loadKg": 10, "rpe": 9, "rir": 1 }
        ] }
      ]
    }
  ],
  "warnings": []
}
