@Watcher pardon my ignorance but how do you check that a gym was attacked recently? I know you can see if a gym is currently under attack, but other than your Pokémon losing a big chunk of health I don’t know how you see a gym was attacked?
The first instance sounds like somebody beat the gym where your exeggutor was stationed. The instance with Chansey seems like was attacked one time while you were away, but somone only battled it one time knocking out a big chunk of motivation.
As far as uncontested gyms, that doesn’t prove anything. There are many players who have 20 gyms but will continue to battle to kick out players from opposing teams which leave the gyms empty. I did it today, I booted out a rival player but didn’t realize I was holding 20 gyms so it became uncontested.
The number of players who hold gyms for weeks with Pokémon at no motivation seems to contradict the theory. It is of course possible but seems unlikely as there are plausible answers to each report.