uv creates links within the cache. When the cache is mounted in the container and something is updated, this creates symlinks that are not valid when the cache is used outside the devcontainer.
eg
$ find ~/.cache/uv -name 'docopt*' -type l
/home/qan22331/.cache/uv/sdists-v9/pypi/docopt/0.6.2/92J2M2352JQhVMGn-dNNa/docopt-0.6.2-py2.py3-none-any
$ readlink /home/qan22331/.cache/uv/sdists-v9/pypi/docopt/0.6.2/92J2M2352JQhVMGn-dNNa/docopt-0.6.2-py2.py3-none-any
/root/.cache/uv/archive-v0/l_SqQrH84bcUPQM1G3L5Q
where the /root/.cache/ directory refers to the cache location in the container.