There are many reasons your spouse may be dishonest with you. Maybe they’re not fully coming clean because:
They have already disappointed you, and they’re afraid of your reaction;
They promised to change a pattern, and they haven’t;
They promised to get something done, but didn’t…even though they meant to.
People often lie not necessarily to deceive, but to protect their own ego. They’re ashamed of what they’re trying to cover up, they are afraid of the consequences, and they don’t want to have to live with your disappointment in them. When this is the case, it can be easy for them to convince themselves that they’re not really lying.