What's supposed to happen is that ensurepip installs a fresh copy into
the virtual environment.
It *doesn't* happen under Python 3 on Fedora when system site-packages
is visible, because if python3 is installed, then python3-pip will
*also* be installed, and you get the behaviour you're seeing.
So this should be filed as a bug against the Fedora python package for
doing the wrong thing by default.
However, it isn't clear that this qualifies as an upstream bug, as
ensurepip in general is *supposed* to be a no-op when pip is already
installed.