Putting a Dev (and only the dev) to blame is quite arrogant and maybe also a bit ignorant of all the circumstances.
Especially for such a scenario its contra productive to try putting someone to blame. There was not only the Dev, or the people who created the specification, there was also an uncountable number of people who used it already and did not insist on a change.
There is never a way to create an application to prevent all user errors. And the examples you told about, they were not there from the beginning but were created as a consequence of a user who did something wrong in the beginning.
Just that their software is probably like 20 or 30 years old, do you remember the state of blog and forum software back then?
Also you completely ignore the main usecase, which is of firering a warning in the fastest possible way.
Having a false positive from time to time is a lot less of a problem, then failing to send out the notice because of to many safety guards.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.