My lawyer just called to say the contracts have been exchanged!
Next Friday is completion (i.e. when the bulk of the mortgage is transferred between bank accounts), but barring some unforeseen cataclysm, I will shortly officially be the owner of my own apartment.
Happy! Happy! Joy! Joy!