A basic example of something that would break if the environment is not activated is binaries, like mypy.
You have a script that calls "mypy"? Gotta be in the virtual environment to invoke it, otherwise the executable might not be found, or worse, it might run another executable.
One of the thing that the virtual environment does is modify the PATH to lookup executables from the virtual environment first.
This is to ensure that when a script calls binaries like mypy/python, it's going to find the same binary from the environment it's currently running in.
Typically if the environment is not activated, python is going to lookup to /usr/bin/python and might be something else.
This is most noticeable when there are different versions of python on the systems and when having scripts that invoke themselves.