As written in [1], bullseye will not see unversioned python packages and the unversioned python command being built from the python-defaults package.
It seems to be a little bit more controversial what should happen to the python command in the long term. Some people argue that python should never point to python3, because it's incompatible, however Debian will have difficulties to explain that decision to users who start with Python3 and are not aware of the 2 to 3 transition. So yes, in the long term, Debian should have a python command again. One solution could be not to ship the python command in bullseye, forcing users to adjust their local installations. This has the advantage that the error of an unknown interpreter should be pretty clear. But leaves users without a python command for the next two years until bullseye+1. Describing here a solution which is implemented for Ubuntu focal (20.04 LTS). A new source package what-is-python (-perl-dont-hurt-me) ships binary packages python-is-python2, python-dev-is-python2, python-is-python3 and python-dev-is-python3. The python-is-python2 package provides the python package, such that packages that still depend on python are not removed on a distro upgrade. On new installs, python-is-python3 is not installed by default, but the user gets a hint from command-not-found to install the package if he tries to run python. Package dependencies on the new four binary packages have to be disallowed in the Python policy. Note that such a package including the Provides should only be uploaded once all dependencies on the unversioned python packages are gone. Matthias [1] https://lists.debian.org/debian-python/2020/07/msg00039.html [2] https://launchpad.net/ubuntu/+source/what-is-python