I value an honest person I may disagree with far more than a fake person who says what you want to hear. At least the honest person leaves themselves open to discussion or debate.
How you distinguish the two? The first could be a contariam. The second someone who believes in building bridges.
Just listen for when they show and tell you who they are. There's always going to be false positives for either camp. You never know someones history and they could act 'dishonest' to avoid being outcasted again, or like you said, they could be contrarian/have a rude idea of honesty (the i speak my mind type). Anecdotally, I dont think people flipflop between the two very often so when you see someone show their colours then you had better be paying attention.