I think there are limits to how good one’s values can get without facing one’s past sins.
I don’t think this is true, or at least I don’t think it’s obvious. When opinions change in Democratic societies, in my experience the generic stance is “That’s how I always felt, I’m glad everyone else caught up.” But clearly _someone_ must have changed their mind about gay marriage between 2005 and 2015. I don’t think there’s a limit on how far you can shift without penitence. I’m not sure that’s how human psychology works.
Certainly preference cascades and demographic change can explain some changes in public opinion, but I also think that people actually change their minds. Having lived through it, I’m pretty confident that the shift in public opinion on gay marriage was due at least in part to some people genuinely changing their minds, and even then penitence is rare to non-existent.