I guess I don't understand. Set their launch requirements and any launch vehicle that meets those requirements that is available can be optionally chosen. I mean if you meet fairing size, maximum forces, launch profile requirements, etc, why do you need multi-year notice. I would think 1 year would be plenty. If there are variables that they need to be fixed multiple years before a launch, then those should be set as part of the launch vehicle requirements to reduce those variables. However, beware artificial and unnecessary requirements biased to force a certain selection. Starship and SL5 are both vehicles not yet flown waiting to be proven out. SL5 will be much more expensive but is further along. Fixed choices should not be made for hardware that has not even been flown (including SL5). Starship is in the phase of rapid prototyping. SL5 is much further along, but still unproven and hideously expensive. I believe this is mainly a political attempt to force the selection of SL5 because it is more tangible at this current point in time. In another year, Starship may be much more tangible and obviously much cheaper.
Ridiculous that some senator (Palpatine?) ties NASA's hands and exploits the system to appease his constituents. I don't think SLS will fly for years as it is serving it's perfidious purpose by being Earth bound.