Can you debug this some more and try to provide us with a little more data on what’s going on?

For example, if you execute your usual command with snap run --shell your.command you’ll find yourself in a shell inside the snap environment, with the same permissions of the actual command you were about to run. From there, if you do ls -l /dev/tty you should find the device available, and you can also run the actual sshpass command as well to explore how it behaves.