Lily Evans appears in the Harry Potter series almost entirely through Severus Snape's memories. What we actually have of her—what she says, what she does, how she behaves toward him—is limited to a handful of scenes.
This post looks at those scenes closely, in order. The order matters.
The Hogwarts Express
The first scene we get of Lily and Severus together at Hogwarts is the only time she chooses him cleanly.
James and Sirius mock Severus on the train. Lily doesn't argue, doesn't negotiate, doesn't try to manage the situation. She gets up and leaves with him. "Come on, Severus, let's find another compartment." He is the priority. Everything else can wait.
She will never do this again.
The next time we see them together it is fifth year. It is Severus who says best friends—his word, his frame, his need. Lily confirms it—"we are, Sev"—but the confirmation lasts exactly two words before the but arrives. He is asking about the relationship. She is already onto the grievance.
Her complaint is legitimate. Mulciber used dark magic on Mary Macdonald and Severus dismisses it as "a laugh, that's all." That defense is weak and Lily is right to push back on it.
But then the Shrieking Shack comes up.
Lily tells Severus he is being "really ungrateful" to James Potter. This is the only thing she says about it. She goes straight to the social transaction—he was saved, therefore he owes gratitude.
Gratitude is a cold frame to apply to your best friend's survival. For most of us, the emotional response would come before the social accounting. For Lily it doesn't.
Severus's read—that James was protecting himself and his friends, not playing hero—is almost certainly correct, and Rowling never contradicts it. Lily doesn't engage with it as an argument. She calls him ungrateful and when he raises his werewolf theory she goes cold.
The obvious defense is that she is protecting Lupin's secret, but she is not close to the Marauders at this point, and the text gives us no reason to think she knows. The secret was closely guarded enough that Severus only figured it out through his own investigation.
This is the most unguarded window the text gives us into where Lily actually stands. Best friends. Nearly died. Ungrateful. Cold. Not the coldness of someone whose warmth has turned. The coldness of someone for whom it is simply no longer present.
This is the same year. Possibly weeks later. Severus is sitting his O.W.L.s—the text places us there explicitly, he has just finished an exam—when James and Sirius spot him across the grounds.
As James and Sirius advance on Severus, James is "glancing over his shoulder at the girls at the water's edge as he went." He is checking she is watching. This is a performance and Lily is the intended audience.
What follows is extended and escalating. Severus is disarmed. He is knocked off his feet. He is held by invisible ropes on the ground while James and Sirius mock his appearance, his hygiene, his exam performance, in front of a growing crowd.
Lily only intervenes when the humiliation tips into something physically degrading. But look at what her intervention actually is. Every exchange is between Lily and James. Go out with me and I'll leave him alone. She refuses. He returns to Severus. She tells him to stop again. He makes it about her again. Severus is on the ground between them, the occasion for a conversation that has reorganized itself entirely around whether Lily will go out with James Potter.
On the Hogwarts Express, four years earlier, she didn't negotiate. She didn't engage. She got up and left with Severus.
She doesn't do that here.
James hangs Severus upside down, "his robes falling over his head to reveal skinny, pallid legs and a pair of graying underpants." Lily, "whose furious expression had twitched for an instant as though she was going to smile," says: "Let him down!”
Rowling doesn't let her fully smile. But the twitch is there and the text makes sure we see it. Rowling was probably writing this as a signal that Lily finds James compelling despite herself—that his performance lands on her even as she tells him to stop. What she has actually written is a girl whose best friend is being humiliated in front of a crowd and who almost smiles at it.
Eventually, when Lily draws her wand, James backs down.
"You're lucky Evans was here, Snivellus."
This is not generosity. In the social world of a 1970s boarding school, being rescued by a girl is its own humiliation. James knows this. The line is one more blow on the way out: you needed her, you owe her, a girl had to speak for you.
"I don't need help from filthy little Mudbloods like her!"
"Fine. I won't bother in future. And I'd wash your pants if I were you, Snivellus."
Rowling probably thought this read as sharp and self-possessed—the cool girl walking away with the perfect line. What it actually is is a girl deploying her best friend's humiliation as wit.
Severus has been threatening to sleep outside Gryffindor Tower until Lily comes out. She is in her dressing gown when she appears. She only came because Mary told her.
"I'm sorry." "I'm not interested." "I'm sorry!" "Save your breath." He keeps trying to find a way in and she shuts each attempt down before it can become a real exchange. When he says he never meant to call her Mudblood, that it just — she finishes his sentence for him. "Slipped out?" There is, the text tells us, no pity in her voice.
"I've made excuses for you for years."
Everything she says next is true. The wannabe Death Eater friends are real. The dark magic is real. The slurs are real.
But none of it is new. Those things were already real in the corridor when she confirmed the words best friends. They were already real at the lake when she watched the disarming and the jinx and the prolonged mockery. She knew exactly who he was and what he was becoming and she maintained the language of best friendship over the top of all of it—until he directed a slur at her specifically. That is when the moral inventory arrives. That is when the years of excuses are finally over.
"I can't pretend anymore. You've chosen your way, I've chosen mine."
The text gives us one last detail about how she leaves. Not with sadness. Not with grief for something real that is ending. With a contemptuous look.
None of what this post has described is hidden in the text. It is just easier to miss if you have already decided she is good.
And the narrative has always needed her to be good. Her goodness has to justify James's reformation and Snape's lifelong devotion. The story can't afford to look at her too closely—at the gratitude lecture, at the lake, at the almost-smile, at the contemptuous look.
Fandom, inheriting that framing, hasn't either.