The debian python maintainers are trying to phase out python 2.
python 2 has been granted a stay of execution as some important software requires it to build. However we should still be attempting to get rid of use at runtime if at all possible. Also the "unversioned python" packages have been dropped. Software that requires python 2 must depend on the explicit python2 packages and use the python2 binary name in /bin. The absolute minimum required to get pam-python and it's reverse dependencies in releasable shape for bullseye would be to switch away from the versioned python packages to the explicit python2 packages. However that is just kicking the can down the road. What needs to happen long-term is for pam-python to move to python 3. I suspect this will involve renaming the binary package and adjusting the reverse dependencies to depend on the new binary package and use python 3 compatible code.