We want to make sure phrases end correctly and consistently.
Correct punctuation makes the meaning clearer to end users.
Clearer meaning makes it easier to make a good translation.
Consistent punctuation makes it easier for developers to work with.
Consistent punctuation is a sign of higher quality product.
Missing punctuation is a sign that partial phrases are in use or an error has been made.
… THIS FILTER Locale::Maketext::Utils::Phrase::Norm::Whitespace.
This is not enforced anywhere since we want to assume the coder knows what they are doing.
Problem should be self explanatory. Ending punctuation is not !, ?, ., :, bracket notation, or an ellipsis character.
If it is legit you could address this by adding a [comment] to the end for clarity and to make it harder to use as a partial phrase.
For some reason I must not end well[comment,no puncuation because …]
If it is titlecase and it has word longer than 2 characters that must start with a lower case letter you have 2 options:
Buy [asis,aCme™] Products
People [comment,this-has-to-start-with-lowercase-because-…]for Love
See "extra filters" in Locale::Maketext::Utils::Phrase::Norm for more details.