In my experience, it's (a), with one caveat:
- If you start a wild pet battle and forfeit without killing anything, the pet returns in a few seconds, with the same trio of pets and breeds. You can even restart that fight and forfeit multiple times, and the pets/quality/breeds will remain the same. On many occasions, I've left rares I didn't want up for other people and even announced locations in /general.
- If you start a wild pet battle and kill the first pet or two and forfeit, the pet disappears. If the rare is the first pet of the trio and you kill it accidentally, you can't forfeit and reset it. Even if the rare is the third of the trio, and you only kill the first pet and forfeit, it's gone.
I follow the logic that over time, rare pets would keep getting replaced with non-rares that people leave up, but as others have mentioned, there's incidental AoE, there are people who do wild battles for XP, along with server resets. And personally, I'll often kill pets outright if a trio is poor quality stuff it's unlikely anyone would want. So they do seem to get recycled pretty regularly.