shuffle with the same seed isn't stable for item subsets and supersets:
import random
def shuffle(seed, v):
    v = list(v)
    random.Random(x=seed).shuffle(v)
    return v
assert (
    shuffle(1, "abcd") == ["d", "a", "c", "b"]
    and shuffle(1, "abc") == ["b", "c", "a"]
)eg if you remove tests due to "--lf" or "--sw", or add/remove tests