This is the meat of it, here. I think it's fine solution if we end up in a situation where a test needs to be different on upstream and downstream, and there's no other possible way to make our framework deal with this situation.

Since we've already merged the version picker function, I think this idea works as a last-resort or stopgap mechanism to use while we come up with a better way to deal with different upstream and downstream tests.