People are, obviously, not characters in books. They are not consistent and not easily summed up in a few words. They are contradictory and surprising. It is easy to stay angry at someone while buying into one of these narratives – e.g., “He is always critical” or “She never wants to do what I like” and so on. It is also easy to poison relationships by believing these narratives about oneself, thinking that one is ABC or XYZ. Wouldn’t it be nice if we could be described with clear delineated borders and summed up a business card? But people are too complex not to be hypocritical (to paraphrase Allen Ginsberg).
Being a hypocrite is not always a bad thing. Sometimes, it is absolutely necessary because it means that people are looking at their situation as it is, not as they want it to be. Being rigidly consistent often means deciding the “best” course of action before knowing the facts. It is knowing the answer before hearing a question. It is blindly being against new taxes or opposing particular medical treatments without understanding the underlying reasoning or mechanics behind them. Consistency is good in fiction or propaganda, but not always in real life.
Nevertheless, it is also good to have a code. It is often impossible to have all the facts and sometimes life requires swift action. Having a moral compass or at least an idea of what the world should be like is invaluable. But this is a focus on the ends, not the means. What is the result you want from your actions (or lack thereof), even if all the facts are still unknown? Sometimes people have to “break character” to create a better world. It is not a sign of weakness to do so.