Last night’s third season finale of The Flash did a lot of things right, almost in spite of itself. Though the hour was clunky at times, there were some great character moments and resolutions, which will go a long way toward making up for the rest of this frustratingly uneven season. And instead of a cliffhanger or a happy ending, we’re left looking ahead to an uncertain season four. What will The Flash look like without, you know, The Flash?

First, let’s look at the things the episode did right. Despite promos that made the finale look like it would be a solid hour of everybody crying over Iris, her fate is resolved almost immediately. H.R. Wells used his weird other-dimensionly tech to disguise himself as Iris and take the hit from Savitar, dying in her place. It was a big redemption moment for H.R., and perhaps a bit too clever to be believable, but at least it didn’t take up much of the episode’s runtime, and it means we won’t have to see the lesser version of Tom Cavanagh again.

So: Iris has officially been saved, and not by Barry. That’s kind of a great thing on its own. In fact, a lot of this episode was based around the idea of help coming from unexpected places. Barry decides that instead of defeating Savitar, he needs to save him. After all, Savitar is still a version of Barry. On the one hand, it’s a solid moment of introspection on his part, reflecting a conscious decision about the kind of hero he wants to be. And on the other hand, goddammit Barry - this dude just tried to kill Iris and you want to invite him to the lab and “save” him? How the hell are you gonna “save” a crazy-ass time remnant of yourself? I’m still ranking this moment as one of the good things because we need to see more mature decision-making from The Flash, but with the caveat that it was still a pretty terrible plan. And of course it didn’t work. Savitar blows up Star Labs.

Savitar also forces Cisco to hack the Speed Force Bazooka into something that will fragment him in time, which was his plan all along to become a god. It makes no sense, but was so batshit that I kind of loved it anyway. I’m listing it as a good thing mostly because it gave Cisco an excuse to be real sassy with Evil Barry, and it played out in the climactic battle as well. Cisco does hack the Bazooka, but turns it into a master key to unlock the Speed Force, releasing Jay! Fuck yeah, Cisco. You’re the best.

Another unexpected save comes from Gypsy, who rescues Cisco from Killer Frost and Savitar… because they are connected. Gosh, I just love those two vibe-birds together. And finally, in the big showdown with Savitar, it’s Iris who saves Barry by shooting his time remnant. More of Iris being a badass next season, please!

The best thing the finale did was in its last moments, after it seems like everyone is settling in for their happy ending. It turns out that the Speed Force prison has become unstable since Jay exited it but nobody took his place. And now it’s causing earthquakes and lighting storms and general apocalyptic weather conditions. So Barry steps up to save the world by entering the Speed Force, because NONE OF THIS WOULD HAVE HAPPENED IF IT WEREN’T FOR FLASHPOINT. It’s crazy to think that Flashpoint happened at the start of this season (it feels like forever ago), and everything we’ve seen since has been repercussions from Barry’s terrible decision. And so Barry bids everyone a tearful goodbye and pays the price. Finally.

Now, for the shit that makes no sense. Remember how I said Jay got out of the Speed Force prison? He’s there with the team in a lot of scenes, but he’s mostly not shown when it comes time for Barry to take his place. It’s great that Barry stepped up, but not even allowing a moment for him to acknowledge that it’s his turn, because all the other Flashes (Wally and Jay) have spent time in that prison, struck me as odd. Also, apparently Harry was drafted to help Tracy deal with H.R.’s death (because clearly seeing her lost love’s doppelgänger is totally not a mind-fuck in any way), and then he keeps hanging around. Basically nobody ever seems to be in any rush to go back to their own reality. Don’t you people have anything you need to be doing?

Probably the biggest sore spot for me was the resolution of Killer Frost. Look — it never made any sense that Caitlin’s meta powers make her evil while Cisco, Barry, Wally, and plenty of other people don’t experience fundamental personality shifts. And finally, at H.R.’s funeral, Frost shows up to say what we’ve all been thinking: She isn’t Killer Frost, but she isn’t Caitlin anymore either, and she’s gonna go off on her own to find her new self. Cue a round of applause. It’s not that I’m unhappy it worked out that way, but really this should have been her response from the get-go. It wasn’t her choice to get meta powers (thanks, Flashpoint), and it wasn’t her choice to go full Frost (thanks, Julian). The big step was her choosing not to take Julian’s Magical Cure, which was another weird moment - he just showed up out of nowhere with a vial he worked on with Caitlin’s mom, clearly because Caitlin needed to finally have an opportunity to choose her own destiny. I’m looking forward to seeing her come back to the story at some point, because powered-up Caitlin is a much more interesting character, but I hope we can put this whole season’s worth of angst behind us.

So Barry has walked hand in hand with his Speed Force Mommy into the unknown to pay the price for his mistakes, and Team Flash is left to pick up the pieces and move on. I’m excited to see what that means for the show next season — as long as it doesn’t involve another villain who can run really, really fast.

Tori Preston is deputy editor of Pajiba. She rarely tweets here but she promises she reads all the submissions for the "Ask Pajiba (Almost) Anything" column at [email protected].