If we follow this trail of logic, Xander should have been offed right after the 'Pack' episode, Cordelia after the 'Wish' - as well as Anya, Willow after 'I Robot you Jane', 'Something Blue' or right after 'Wrecked'. Joyce should have been a goner after Gingerbread. Andrew should have been offed in S6 - before he had a chance to off Jonathan, who btw should have been dead after 'Superstar' episode. It would have also been proper to kill Buffy after 'Normal Again', and then we could have had a show with all of the Cordettes plus some new Slayer called after Faith was offed right in the Faith Hope and Trick episode.
Xander wasn't there when principal Flutie was killed and the killers were under a spell and not responsible for their actions. Xander is not to blame, the zookeeper was - and he got fed to the hyenas.
Cordelia did not have any idea that her wish was to be carried out. Cordelia is not to blame for anything more than idle words which were not even voiced as a threat. As obnoxious as Cordelia and the Cordettes were, they deserved embarrassment but did nothing deserving of death. Anya deserved to die - her spreading of misery for a thousand years starting with the spell cast on her husband to make him a troll, before she accepted the status of a demon, was worthy of death.
Willow's spells did not kill anyone until Warren. Her actions in much of the show were increasingly reckless but not fatal until she killed Warren and Warren was going to remain a threat until he was killed. Her continued attack on Andrew and Johnathan would have been murder if they had succeeded and are still attempted murder. If Xander had not succeeded in getting her to abort the end of the world, I would not have had any compunctions about someone killing her to stop the spell.
Agreed that Joyce should have been gone after "Gingerbread", but the episode did show that we have not progressed far enough from the Dark Ages. The modern witchhunts of the McCarthy era were handled more explicitly in "Are You Now or Have You Ever Been" on Angel - these are events in living memory that could easily be repeated now.
Andrew is an easily influenced person, lost in a world of Dungeons and Dragons and Star Trek and Star Wars and James Bond and all sorts of similar fantasies, who was influenced to kill Johnathan. He may try to make a defense of diminished capacity as a result of this, but it was murder.
"Superstar" did not result in anything other than endangerment of Buffy and Johnathan acted at the last minute to save her.
"Normal Again" was a case of hallucinogenic poisoning that led to a dangerous mental state. Buffy was not responsible for her actions.
It wouldn't have bothered me if Buffy had killed Faith and she almost did.
But I maintain Giles is a separate case. He was not under any direct threat other than the disapproval and possible expulsion from the Watcher's Council. He cannot use the defense that he was under a spell, subject to a hallucinogen or anything else that would alter his mental function. He was an educated man who had overcome a past where magic had cost the life of one of his friends and he could be held responsible for that. He was an intelligent man who should have known that obedience to arbitrary rules was wrong and should have known many examples from history where psychopathic people or organizations depended on obedience as a force multiplier for their evil. But he went along because of his fears of loss of acceptance from people who should not have mattered.