For the drive in skills and/or autonomous, its better to set PID targets based on distance, speed, both or depends.
Usually everyone does position PID. There are uses for velocity PID as well but rarely do you care about specifying velocity.
If the goal was to drive in a circle you could use velocity PID to set the outer wheel to 2 * the velocity of the inner wheel.
I personally do PID targets with distance and (semi) proportional speed based on proximity to target. That works pretty well for me. You don’t have to use linear speeds. You can use speeds following a step function or speeds following the curve of your choice.
Really, it depends on the application and how important it is to do something quickly vs do something accurately.
Would your answers change if you accounted for the fact that robots will need to be programmed to cross the alliance bar? A set target distance will always result in mixed outcomes when crossing the alliance bar. Is PID even worth attempting in this scenario?
This year, as your stack gets high, you may have to do both position and velocity capping at different heights.