There is two different thing: the public JBI api that we won't change and the petals internal API that we can manipulate.
What is said in the issue description concerns the JBI api.
As for the implementation (PetalsMessageExchange), in practice, I did add a getElectedEndpoint, but that's not very important here.
It returns null if there is no elected endpoint FYI.
IMO, the existing method getEndpoint() should be renamed as getElectedEndpoint() to be more explicit. And you can add a new method returning the initial endpoint set: getEndpoint().
What does getElectedEndpoint() will return if no elected endpoint is set into the MEP ?