Consistency is not necessary, IMO. What did Israel expect Gaza to do when they started genociding them? The deaths of all civilians as well as all combatants are the fault of Israel. They don't get to play dumb about what was going to happen after starting a genocide.
I disagree. It's difficult to ask perfection from Palestinian resistance but there were still mistakes made. But two wrongs do not make a right and we need to stay morally consistent.
If a Hamas fighter did knowingly shoot a non-combatant then that action is wrong.
But how can they possibly know someone is a non-combatant? The opponent doesn't even follow the Geneva convention, meaning it's correct to fire on people wearing a red cross, carrying a white flag, etc.