It's tough to strictly follow the book spirit in a movie adaptation, but Harry Potter and Order of Phoenix could clearly have some mercy when it came to this girl.
In the fifth Harry Potter movie, titled Order of Phoenix, Dumbledore's Army finally falls victim to Dolores Umbridge's sabotage due to a snitch — just like it was in the books.
However, the identity of the snitch has been changed. In the book, it was Marietta Edgecombe — a Ravenclaw student who was a close friend of Cho Chang. But the movie went on to pass the torch to Cho herself, making her the one who spilled the beans about where Dumbledore's Army was stationed.
Cho was not the most prominent character in the story, serving as Harry's love interest in chapters 4 and 5. However, the fact that she was the one to frame everyone in Order of Phoenix brought a lot of hate upon her, even though the book canon makes it clear she had nothing to do with it.
In the movies, Cho snitching is used as a reason for her and Harry falling out, when actually, Cho simply chose her friend Marietta and distanced herself from Harry.
Moreover, the movie literally left Cho no chance to even do the right thing.
"Making Harry break up with Cho because she told Umbridge about Dumbledore's Army makes zero sense because Umbridge used Veritaserum on Cho. Did Harry expect Cho to be able to combat a truth serum without even the ability to Occlude?" Redditor FallenAngelII said.
According to fans, fixing this injustice would be pretty easy — after all, the movie could have included Marietta's character as a sidekick who appears for barely a second instead of throwing Cho under the bus.