Factor out all descriptions into a separate source
This would be important for internationalization for example.
We should probably check what are the best practices for this.
This also means that the backend should send back the error name rather than text, and the frontend should find a translation.