Предположим, что venv был создан с помощью python3.9 прямо перед выпуском python3.10. venv создаст каталог bin, символически связанный с системным python, как в venv/bin/python3 -> /usr/bin/python3
Этот неверсионный двоичный файл python сам по себе может не быть проблемой. Однако каталоги site-packages зависят от основной версии, из-за чего ваши проекты python3.9 больше не работают.
Я считаю venvs неизменяемым набором данной версии Python и установленных библиотек. Когда происходят серьезные изменения, разрушение и воссоздание кажется разумным. Они легкие. Конечно, мне не приходилось делать это неоднократно, как вам. Подумайте об улучшении вашей автоматизации, чтобы вы могли перестраивать все это сразу по требованию.
Arch не заинтересован в поддержке Python в течение очень долгого времени, исходя из концепции их скользящего дистрибутива. Возможно, вы сможете найти пользовательский пакет, поддерживающий, скажем, python39 в AUR, и вам будет удобно, но, возможно, нет. Подумайте о переходе на дистрибутив с долгосрочной поддержкой, чтобы у вас было больше времени на данную основную версию Python. Может быть ограничен контейнерами или чем-то еще, не нужно заменять все, что вам нравится в Arch.