An error message should help someone understand what prevented an action and how to proceed. A generic failure label often leaves the person repeating the same step. I try to make the message specific to the task.
For a form, that might mean identifying the field and describing the expected input. For a temporary failure, it may mean offering a safe retry. The aim is to help the person recover while keeping their existing work intact.
