The Pokémon Water War - S2-E25
Plot hole: When Officer Jenny says why Captain Aidan needs to get Team Wartortle to the location of the final fire, she says that Team Blastoise's path is blocked by a lorry, and Team Squirtle is not powerful enough for the fire. This does not make sense for the former as Team Blastoise later pushes the same lorry aside. (00:13:41)
Plot hole: When Team Rocket decides that they're going to capture Dragonite after it's been worn out, they appear in the blimp above the battlefield no less than ten seconds after they were shown in the stands. There is just way too little time for them to have possibly gotten up there that fast, even allowing for anime physics. (00:14:30)
Plot hole: Officer Jenny asks Ash what he knows about the "trio" when he tells her that the pirates are likely Team Rocket, but he hadn't said anything about there being three of them before that. And Jenny obviously didn't know anything about Team Rocket, either. (00:05:30)
Answer: He is a good guy but just found himself in a bad situation when he worked for Lysander. He didn't want him to harm Ash and his Pokémon when he was trying to get the special bond between Ash and his Greninja to work. He does leave Lysander and go back to being a good person.