I think you should read Kant. He makes a big deal about whether someone who is impulsively good is as good as someone who is logically good.