Artifact text file uploads are now rejected if they contain the Unicode replacement character or an unpaired surrogate
When a text-type file is validated for publishing to an Artifact, content containing the Unicode replacement character (U+FFFD, the symbol that appears when text can't be decoded properly) or an unpaired surrogate (a broken piece of a multi-part character) is now rejected with a specific error. For HTML files, the error also explains that the character should be escaped as � instead.
This catches text corruption before it's published, rather than letting broken or unreadable characters make it into a live artifact.