After the retcon of "the Angels freeze because they THINK you can see them", no 2 on my list of big gripes with this story was, not the crack in time doohickey itself
, but the way it was used. I'll forgive Moffat for having it lead to a prison in the first episode and the end of the universe now, maybe these are 2 different cracks
. However, there's also this memory erasing business, and that just ties the story in knots.
The best I can make of the "reset" ending is that it happened for the Doctor, Amy and River Song, because time travellers have special memories, but it didn't happen
for anyone else. Hence Amy remembered her escorts after they'd disappeared into it, but the soldier who was left behind with her didn't. Logical so far, but what do the soldiers actually think they're doing there, at the end of the story? And why does River Song, apparently a seasoned time traveller herself, think she might get a pardon?
As far as I can see, her next trip to the parole board is going to go like this:
"Well, Doctor Song, we sent a task force to the wrecked starship like you said, but there was nothing there."
"But it was full of Weeping Angels! . . . . Oh. Hang on. They got erased from history, didn't they? But they were there! We saved the entire planet."
"All we know is that several men had their necks broken. Since you and your friends were the only people on the scene..."
"No, it was the Angels!"
"Well it sounds to me like you made up the whole thing in the hope you'd get a chance to give your guards the slip, and killed a few of them into the bargain."
(As she is taken back to her cell, RS makes a mental note that next time, she musn't erase all traces of her good deeds from the space-time continuum.)
PS - of course it's possible those men didn't die after all, once the Angels were erased. Have I missed another "Everyone lives!" ?