Good news for pet people out there! Now when you transfer a pet, it must be accepted or rejected. This means you won’t have a random user sending you pets anymore.
When you go to transfer a pet, you can choose an expiration time. You can choose no expiration, 1 day, 7 days, and 30 days. After the time you selected, the transfer request will become invalid.
If you’re the pet owner, you can cancel the request before it’s expired or before the other person accepts if you’ve changed your mind.
For anyone curious about the results: if you abandon a pet before your friend accepts the transfer request, they get an error message saying you no longer own the pet. So everything works ok. :D
(I still don't think you should be able to battle with it or anything, but that's another matter.)