# TODO Schema work pending (being designed in a separate session) — the workout exercise list (`WorkoutLogListView`) has UI already waiting on these: - **Bodyweight indicator**: the row hides weight when `loadType != .weight`, treating `LoadType.none` as "bodyweight". Decide whether that's the durable semantic or whether exercises need an explicit `.bodyweight` load type / flag (e.g. weighted pull-ups would need weight *and* bodyweight semantics). - **Machine comfort settings** (iOS UI built): `machineSettings: [MachineSetting]?` exists on both `ExerciseDocument` and `WorkoutLogDocument` (plus the cache entities and mappers). The optional doubles as the machine-based flag — nil means "not a machine exercise", empty means "machine exercise, nothing recorded yet". Built on iOS: the exercise add/edit screen's Machine section (toggle + ordered reorderable/deletable settings via the shared `MachineSettingsEditor`), the plan-time snapshot from exercise → log at workout start / add-exercise, and the in-workout row's Settings affordance (shown for any machine-based log) opening an editor sheet that saves to the log *and* writes back to the split's exercise as the durable default (following the seed clone-on-edit redirect). Remaining: **watch-side display** — the watch app doesn't yet surface or edit machine settings, and its own "add exercise to a running workout" path (`Workouts Watch App/Views/WorkoutLogListView.swift`) doesn't snapshot `machineSettings` into the new log.