I'm searching for a meaningful word or expression for someone who does bad things (for example, insulting others, stealing phones...) You would say they are x.
- Reformed : changed for the better.
- Rectified : corrected by removing errors.
- Rehabilitated : brought back to a good condition.
Look it up on Merriam Webster online.
You might say they are rehabilitated:
1b : to restore to good repute : reestablish the good name of
Webster online, reformed:
1 : changed for the better
If you simply wanted to say they were no longer a thief, you could use the prefix ex- and call them an ex-thief. That’s probably the most direct and easy way to do it. But that’s a prefix, not an adjective.
For verbs and phrases, you could say that someone has gone straight to indicate that they no longer engage in criminal activity, or that they had cleaned up their act.
If you wanted to introduce a sense of remorse for previous actions, then you could say that they had repented of their ways, or that they were repentant, which is indeed an adjective.
With just a touch more religious connotation follow the related words penitent (which serves as both an adjective or a noun) and repenter (which is just a noun, and seldom heard).
Further out there, you could call them a recovering thief the way they do with recovering alcoholics. That one works as an adjective.
Or if you expected their current state to be temporary only, you might try calling them a lapsed thief as has been said of lapsed Catholics, which is also an adjective.
If you were particularly cynical about their current state of non-naughtiness, you might even reach for non-reoffending or pre-recidivist. Best not said to their face, though. :)