One of the strengths of vertico is its modularity and compatibility with builtin APIs. Unfortunately, this also makes it difficult to restore a vertico session because vertico does not have access to the full completion state in the way that more monolithic completion packages like helm and ivy do. Some of it might even be created through a series of function calls which would be hard to reconstruct.
I would guess that vertico is not always able to repeat extended commands properly and so they are disabled by default. Unfortunately, vertico-repeat is fairly limited. Check out this post for more information. https://www.reddit.com/r/emacs/s/TV1Asbrhel
Minad (the vertico author) made some attempts at a better repeat extension but they all have various limitations. I ended up making my own repeat extension but it had issues as well so I've since abandoned it.
Unfortunately, if you must have such a feature in full generality, I'd recommend that you use helm or ivy instead. Personally, I've just learned to live with it as the advantages of the vertico stack are worth it IMO.