There are two ways (I believe) that users can mistakenly create artifacts with an invalid artifact type. The first is via the CLI:
The other is via the s-ramp UI's Import Artifact dialog. This dialog allows the user to type in any Artifact Type they want, which is an opportunity to mess it up.
We need to make sure we have appropriate validation of any custom Artifact Type provided by the user on the server (probably in the REST layer).
For bonus points we can add validation to the UI and CLI to prevent the request from even being made to the server unless it's valid.