So – on the one hand, The Haunting of Villa Diodati wasn’t a fluke. On the other hand, this is basically that story all over again. The Doctor and co turn up to a spooky old house and run around dealing with old enemies and various spatio-temporal phenomena until it’s time for the Doctor to come face to face with the big bad, be taken over by something it was carrying – and boom, we realise this was all just a set-up for the big confrontation next week. Only this time, some clot has edited in five minutes of another unrelated story at random points through the episode.

That’s not to say I didn’t like it. Actually, I liked it a lot. But it’s odd that Maxine Alderton has chosen to, or been asked to, more or less replicate last season’s antepenultimate episode for this season. Anyway, trying to apportion credit or blame by looking at the title sequence is a mug’s game. I don’t know who wrote what, and I won’t pretend to. What I will say is that while some characters and some sequences work better than others, there’s a real sense of pace and jeopardy and energy here that has been pretty much completely absent from the show for quite some time.

Let me get some niggles out of the way first. The cliffhanger resolution is frankly drab. Quipping furiously to try and distract us from the vacuity of the explanations offered, this is little more than “with one bound they were free.” Some of the dialogue hints at terrible things happening to the TARDIS interior when Jodie connects those wires, but no – a few sparks, a bit of a pop and everything is fine. And what’s the point of bunching up your three regulars so they can all fit nicely into a single 16:9 frame and then cutting that frame into three vertical slices?

Once the action gets going, a lot of this is Blink redux, with a bit of Time of Angels mixed in. Just as in early episodes this year, the script is largely happy to have the angels play the hits rather than reinvent themselves. And just as before, the direction is sometimes sloppy about who is looking where and when, how fast the angels move and so on. Also sloppy is that nearly-fabulous mirror shot. Annabel Scholey stands up revealing that her mirror image has wings. But where’s the pull-back into the rest of the bathroom which we needed to establish whether Claire really has wings or only sees them in the mirror (or has become nothing more than a mirror reflection)?

Claire of course is the woman we saw in episode one, but it doesn’t affect the story one jot that they’ve met before and in fact the script is playing silly games here. We’re meant to think that Claire met the Doctor out of order. She calmly greets her as if she’s an old friend. In fact, she’s only glimpsed the Doctor and the TARDIS in a confusing and disorienting premonition that she can’t yet make any sense of – but you get no hint of that in the episode one encounter.

What you do get in the early portions of this episode is Scholey and Kevin McNally playing actual characters who sound like they have agency and interiority in a genuinely interesting and dramatic situation. This isn’t just competent, it’s seriously properly good. McNally’s Professor Jericho doesn’t tear up the rule book (and we could probably have done without name-dropping Belsen) but he’s well-thought out, very well played and he works. And Scholey continues to deliver on the promise she showed in episode one, bucking the trend I identified in last week’s review of the casting director not having as good an eye under this regime.

Also more than pulling their weight are Gerald and Jean, who aren’t fleshed out quite as much, but still pop off the screen in the way that so many characters in this era of the show refuse to. True, we have to overlook the way in which small-minded little Englander Gerald, who’s never even considered that his grand-niece might be a person worth talking to, still blithely allows himself to be given orders by a teenager from the colonies. But – hey! – someone has remembered that Yas is/used to be/wants to be/once wanted to be a copper so that’s something.

For all her running around and barking orders, the Doctor achieves very little once again, and as usual is relegated to the role of companion in her own story, desperately asking questions so better-informed characters can fill her in with exposition dumps. The difference this time round is that what is happening to her and the other characters really does feel exciting and high stakes and like it matters. And the expo-dumps when they come are genuinely interesting. I’m even starting to give the tiniest of fucks about the Division and the Doctor’s role in it, truth be told. Claire turning to stone is a hugely arresting image and the twist of the angel being the quarry rather than the hunter is fabulous – as is the incredible sight of the quantum extracted village just petering out into empty space, and the 1967 and 1901 versions sitting side by side. True, the old Peggy / young Peggy business is a direct lift from Blink but it was a good story beat before Steven Moffat used it and it’s still a good story beat here. I just don’t know what it adds, other than a feeling of familiarity.

What really lets these scenes down is Dan, whose entire character has just disintegrated over the last two episodes. Lately he just says or does whatever is required to keep the plot wheels turning. Swap him out and put in Ryan or Graham and nothing changes. In fact, take him out all together and just have Yaz on her own and nothing changes. And further undermining the title character for no particular purpose, Yaz has to tell the Doctor not to go through the time barrier which is so wrong it almost hurts. And how do Yaz and Dan even know how the Angels work? All the Doctor has told them is “Don’t Blink”. She doesn’t explain to them (or the audience) why not or what the consequences will be until the episode is almost over.

But before it’s over, it’s going to deliver one of the finest cliffhangers of the revived series, with everyone in massive trouble – and then nearly fuck up that brilliant ending by channel-surfing to the tedious adventures of Vinder and Bel.

So, let’s just ignore the whole silly Vinder/Bel/Azure plot which obviously could have been in another episode, but that’s not the game this season is playing, so okay, fine, I suppose. What’s left is generally pretty bloody good, both as a thrilling 45 minute slab of escapist TV and as part four of a six part adventure. In particular, the Doctor has been turned into an angel and Yaz and Dan are stuck 120 years in the past, with no TARDIS and no way of getting help. That’s exactly the kind of big, complicated problem which would have benefited from having six whole episodes to sort it out. Shame there’s only two left.

Oh – and what happened to the closing theme music? I don’t much like this version of the theme but it seemed to be missing its bassline tonight. Was that deliberate? If so, why?

So... what did I think of Once, Upon Time?