Alright, haven't watched anything the past couple of weeks so I could watch this battle all at once.
So, I will admit, that was pretty good battle. Without any shadow of a doubt, leaps and bounds ahead of anything else we've seen in Alola, it's not even a contest. Unlike most battles we've gotten this series, it actually felt like the choreography of the battle mattered, it wasn't just two Pokémon standing around and trading attacks. There was actual dynamic movement and attack patterns. If Alola could have given us battles of this quality from the beginning, then maybe I wouldn't have been so harsh on it. Well, at least we got one quality battle for entire series.
In a broader sense, I'm not sure I would say this battle can topple any of established best battles, but it's relatively high up there, maybe even the best battle we've seen since Sinnoh.
In regards to the Tapu Koko part specifically, it started off pretty good, but just skidded too a sudden halt once Tapu Koko asked Kukui to use a Z-Move. The Z-Moves had some great spectacle, but that sequence took way too long, and ruined all the momentum the battle had. Now don't get me wrong, it was a treat to see Guardian of Alola animated, but I just wish that sequence had been better integrated. Also, I feel like they didn't make Tapu Koko feel all that powerful for a Legendary Pokémon. Compared to other Legendary Pokémon Ash has officially battled (Brandon's Regis and Tobias' Darkrai and Latios), I just wasn't feeling its strength showing as much (except for the Z-Move, I supose).
Another gripe I had with the battle was Torracat's delayed evolution. What was even the point of having it evolve at that moment? I can only assume that we're never going to see it battle as Inciniroar, which is a crime shame. Why not just have it evolve just a little bit earlier, and actually show it battling in its new form? The way things are left now, it's just awkwardly left with us never seeing it battle. Don't get me wrong, I'm super happy to see that at least one of Ash's starter Pokémon gets to fully evolve (I'm so sorry Rowlet, you were robbed), but I would have liked to actually see it battle as such.
As one final point, I almost feel like it would have been better for the story if Ash had actually lost this battle. He just won a league, so it's not like he's short on things to celebrate. A loss here could be the factor that teaches him that just because he won a league, doesn't mean he's unbeatable, or that his journey is over. Seems like a missed opportunity to me.