Well seems really a good case here. The -f flag uses the full path of terminal and if its unable to get the process then it kills all the processes it could like pkill -f / which includes ssh. Refer here.

If you try pkill without -f then it works.
You can also check ssh verbose (ssh -v) to see what is happening in the background.