Simplify and correct version negotiation