went through this entire topic once again
Hey @MedTechCD. I appreciate you taking the time for the responses. I’m afraid the topic is a convoluted mess now because it was me testing stuff and blabbering about my findings as I went along. During todays run I’ve thought about extracting the at least 3 different suggestions I mentioned above into their own topics, will see if I do that later. But frankly if the overwhelming opinion of everyone is that all of this is not relevant for intervals.icu I might just let it die. 
there are multiple pitfalls to implement this:
I really understand what is possible now after these experiments, and can take a good guess at how and why it is implemented like this - I am specifically suggesting to allow for the one specific case I am mentioning. I.e. having multiple laps or workout steps in one workout, each based on any one of the intensities already supported by intervals.icu; and each of them being exported to the watch as-is without clearing it out due to the priorities setting.
Note, I am not asking to overwork the whole scheme as it is now. I assume there are use-cases where the current way it works makes perfect sense. One solution would be, for example, to extend the priorities setting for the workout generation and add a “As-is” setting (in addition to the “Power, HR, Pace” … choices). When the user picks that, intervals.icu would simply export the intensities as the user has said. All the extra logic (of zeroing out the not prioritized intensities) would simply be switched off.
Have you tried building a workout with Garmin’s workout builder consisting of laps with different type targets AND have you executed this to check what your device does in that case?
Yes, this is no problem for either the FIT file format nor for Garmin watches. All my devices are from Garmin, so I cannot speak for other vendors. But naively I’d expect this to be a pretty standard feature, really; I can think of quite some everyday use-cases where one may want to make use of it.
For example, I created a FIT file within connect.garmin.com with 3 workout steps; one based on HR, one on Pace, one on Cadence. It works fine on my pretty old Garmin Fenix 6 Pro. Unfortunately the forum does not let me attach .fit files, but converting it with runalyze’s FIT file viewer turns out this:
SUCCESS
# File size: 263, protocol version: 1.00, profile_version: 211.87
# File header CRC: expected=0xFBBC, calculated=0xFBBC
= TYPE=0 NAME=file_id NUMBER=0
--- type=5=workout
--- manufacturer=1=garmin
--- garmin_product=65534=connect
--- time_created=1135232964=2025-12-21T06:29:24Z
--- serial_number=***=***
==
= TYPE=0 NAME=file_creator NUMBER=49
--- hardware_version=0=0
--- software_version=2525=2525
==
= TYPE=0 NAME=workout NUMBER=26
--- wkt_name="Lauftraining"
--- xxx10=0=0
--- xxx9=1=1
--- xxx23=0=0
--- xxx21=0=0
--- xxx24=0=0
--- xxx22=0=0
--- sport=1=running
--- sub_sport=0=generic
--- capabilities=32=protected=0,resistance=0,grade=0,power=0,cadence=0,distance=0,heart_rate=0,speed=0,tcx=32,new_leaf=0,firstbeat=0,fitness_equipment=0,custom=0,interval=0
--- num_valid_steps=3=3
--- xxx254=0=0
==
= TYPE=0 NAME=workout_step NUMBER=27
--- message_index=0=selected=0,reserved=0,mask=0
--- intensity=2=warmup
--- custom_target_speed_low=2778=10.001 km/h
--- custom_target_speed_high=3030=10.908 km/h
--- target_speed_zone=0=0
--- target_type=0=speed
--- xxx20=0=0
--- duration_type=5=open
--- weight_display_unit=1=kilogram
==
= TYPE=0 NAME=workout_step NUMBER=27
--- message_index=1=selected=0,reserved=0,mask=1
--- intensity=0=active
--- target_hr_zone=3=3
--- target_type=1=heart_rate
--- xxx20=0=0
--- duration_type=5=open
--- weight_display_unit=1=kilogram
==
= TYPE=0 NAME=workout_step NUMBER=27
--- message_index=2=selected=0,reserved=0,mask=2
--- intensity=3=cooldown
--- custom_target_cadence_low=87=87 rpm
--- custom_target_cadence_high=92=92 rpm
--- target_cadence_zone=0=0
--- target_type=3=cadence
--- xxx20=0=0
--- duration_type=5=open
--- weight_display_unit=1=kilogram
==
# CRC: expected=0xCCB6, calculated=0xCCB6
As we see, the specification of intensity is part of the individual workout steps, not a global property of the FIT file.
My thought is that a) intervals.icu is already creating these files, obviously. b) It already knows how to create workout steps on all the different intensity metrics. c) It can already mix these in the builder. So logically, there should be no resistance or huge structural change required to pass the settings from the builder on to the FIT file.