I think the way this is headed is that parliament will successfully block no deal, Boris will call a GE and the leave date will be moved again by a couple of months or so to allow the GE to happen. And then *incredibly* really, Boris will win the GE and have a strong mandate for leave, and we'll then leave the EU some time early in the new year. Whether that will be with some deal like the May one, or just on No Deal, I am not sure, but we will leave.
That's how I see it panning out.
There's a few reasons why I think this. First and foremost is we have to remember what happened in the last GE. The Tories fought what is generally accepted to be the worst campaign ever. At the same time Corbyn played an absolute blinder. And the GE came on the back of 7 years of austerity and people thoroughly pissed off with the government. And Corbyn *still* did not win. This was his high water mark.
Johnson is *immeasurably* more charismatic than May (who had negative charisma) and there is no remote possibility of such a dire Tory campaign for a second time. The entire Leave vote will be galvanised behind Johnson, and many devout Tories from the Remain side will also vote for him rather than see Corbyn in power. Also the Labour vote in the north will be trashed, given the anti-EU sentiment and Corbyn campaigning (effectively) for Remain. I say "campaigning". Faced with these conflicting interests, he'll almost certainly campaign just as effectively as he did in the referendum, i.e. not at all. He'll come across as a weak and opportunistic charlatan who will say anything (and avoid saying anything) in order to maximise his vote and the voters will see right through it.
I am a strange fish, I realise this. To be a devout Remainer and a devout Tory, is not common on this forum. But the above scenario would certainly leave me with mixed feelings. Seeing the Tories in power with a workable majority would be a marvellous thing, with the demise of Corbyn as pure icing on the cake. But at the price of our leaving the EU. A bitter pill to swallow is that.