Everyone is exhausted, and everyone is furious. Nick Boles’s choked, emotional resignation from the Conservative party on the floor of the Commons, in despair at its refusal to compromise, will sum up a black mood for many today. Once again parliament has spoken and the only comprehensible word was “no”, with some remainers now digging in for a second referendum as obstinately as leavers are for no deal. It sounds mildly unhinged to suggest this mess gives any grounds for optimism and yet strangely enough, that must be what this unfamiliar feeling is.

We have gained more clarity about what parliament wants in two nights of indicative votes than in two years of being repeatedly beaten over the head with Theresa May’s deal. If the three votes by which Ken Clarke’s deal was lost can’t ultimately be made up – and bear in mind the cabinet is currently abstaining from voting – then both Boles’s common market 2.0 and a second referendum are still just about within sight of the finishing line.

They may not be your preferred options, just as they may not be mine. But they beat crashing out with no deal, because pretty much anything beats crashing out with no deal, and with 10 days to go that has become the priority. For those who no longer have much faith in five hours of cabinet ministers practising their leadership pitches at each other (which appears to be roughly what cabinet meetings consist of these days) they represent a sorely needed glimmer of hope.

Ironically, the thing parliament seems closest to accepting looks suspiciously like the May deal it keeps rejecting, except that this version has Clarke in charge of it. Heads we stay permanently in the customs union as he’s suggesting, presumably with the option to leave in future if we could find a way of solving the Irish border problem; tails we stay in it temporarily, but with a backstop that many Tories fear would effectively make that permanent. Either way, to get there you need a transition period, which means going through something that looks suspiciously like May’s withdrawal agreement. All Clarke has really done is what May should have done a long time ago, and been upfront that leaving the customs union is a bad idea rather than pretending it’s absolutely fine and then scrabbling around for a convoluted legal means of acknowledging reality.

We are long past the point where May can gracefully accept that course correction, however. The reason Boles ultimately snapped is that it was overwhelmingly Tory MPs voting no on Monday night, and not just to his compromise but to everything else on offer. Many were doing so because they’d still rather have May’s deal than Clarke’s version, despite their reservations about it; they understand that if the government deal falls, then so logically will the government. Which is presumably also why Labour has started voting yes to compromises not of its own devising, albeit only now this process is deep into injury time.

So what now? It’s clearly maddening that parliament can be so close to agreement, yet still so far from it; that MPs seem almost united on what form of Brexit they think the country could accept, and divided essentially over which party gets to deliver it. But by backing Boles’s compromise on Monday, the Labour leadership essentially consented to keeping freedom of movement, a move that could cost it votes in some seats. It has presumably done so either because it recognises that some political advantages must be sacrificed in the national interest, or more cynically because it thinks the public mood has shifted. And the blunt truth is that there hasn’t been a matching concession from Boles’s former party. Your move, Tories.

• Gaby Hinsliff is a Guardian columnist