Boris Johnson was defeated again in the Commons tonight. We're starting to lose count of how many times it's happened now. He tried to hold an election using the Fixed Terms Parliament Act. He never looked like he was going to get it. And then he didn't.
But afterwards, something interesting happened. He stood up and announced that the government would put together a short bill calling for an election.
This feels like it could work. A bill like that would only need a simple majority - not the two-thirds majority he required under the Fixed-Terms Parliament Act. It would contain a set date, meaning opposition parties wouldn't have to worry that he'd pull a fast one and change it in some self-interested and venal way, which, let's face it, is his standard operating procedure.
The problem is on what the date is. The Liberal Democrats and SNP put forward a proposed bill for an election over the weekend with a date of December 9th. Johnson is sticking to the date of December 12th. So why is there so much conflict over what is ultimately just three days? The reason is that those three days are crucial to the Brexit debate.
This is how it works. Under British law you need a set number of days in which parliament is dissolved to hold an election. The Fixed Term Parliament Act put it at 17 and then the Electoral Registration and Administration Act expanded it to 25.
Go back 25 working days from December 9th and you get to the end of this week. But go back 25 working days from December 12th and you end up halfway through next week. That gap could be crucial. And if Johnson wanted to distract opposition parties with an election and then try to ram through his withdrawal agreement bill, it may be enough. He'd get the election passed, then quickly have one more try to pass his deal before it took place.
This, after all, is actually his stated plan. He told Jeremy Corbyn in his letter last week that he would use all parliamentary time, "including Fridays, weekends, the earliest starts and the latest finishes" to get his deal passed by November 6th.
The Lib Dems and SNP were therefore very careful about their timetable. The bill, if it had been accepted, would have been debated tomorrow, sent to the Lords on Wednesday, ping-ponged between the two on Thursday, and then be law in time for the weekend. Parliament would need to be immediately dissolved for the election campaign. Passing the election law would eat up this week, leaving no time for Johnson to force that deal through.
Even this is not watertight. Johnson could bring it back to the Commons after the election bill had gone to the Lords and then have parliament sit over the weekend. But given that MPs rejected his eye-wateringly tight timetable for the deal last week, it seemed likely they'd do the same this week.
Johnson seems to be sticking to the date of the 12th. Why? Beyond pride, or the political calculation that he must be seen to be in charge, it's hard to discern a reason. And it would be foolish not to ascribe more cynical reasons to him, given his track record.
This is why those few days matter. As SNP Westminster leader Ian Blckford told the Commons today: "It's not an issue of three days between election dates. It's an issue of whether we're in the EU or out of it."
He also said something interesting after the vote however. "The prime minister, if he is going to bring forward a bill, must give an absolute cast-iron assurance that up until the passage of that bill, the rising of parliament, there'll be no attempt to bring forward the withdrawal agreement bill."
This suggests the SNP might be willing to move on the dates if there is some other kind of promise not to bring the Brexit deal back to the Commons before it dissolves. Perhaps this could be written into the bill.
There's plenty of wriggle room there now. Finding the sweet spot would bring the Tories, Lib Dems and SNP on board for an election. That's enough votes to win. The momentum would then force Labour to get behind it.
Everything is right on the edge of being agreed. If Johnson sticks to the date of the 12th and refuses to provide meaningful assurances that he won't bring the Brexit deal forward, we'll know something's up. If he doesn't, then it really will seem that he wants an election and will put the deal on stand-by until it is held. If so, an election is about to take place.
Ian Dunt is editor of Politics.co.uk. His new book, How To Be A Liberal, is out in spring 2020.
The opinions in Politics.co.uk's Comment and Analysis section are those of the author and are no reflection of the views of the website or its owners.