semantic-omission: translation drops part of the source meaning
warning — advisory, exit 0
The LLM judge found meaningful source content missing from the translation — a consequence, a condition, a warning clause that simply is not there in the target language.
What triggers it
// en.json
{ "close": "Save your work before closing, or unsaved changes will be lost." }
// es.json
{ "close": "Guarda tu trabajo antes de cerrar." } // the consequence is goneFixed
{ "close": "Guarda tu trabajo antes de cerrar, o los cambios no guardados se perderán." }Why it matters
Omissions are how warnings stop warning. The sentence still reads complete, so no reviewer notices the missing half.
How to fix it
Restore the missing content in the translation.
How to silence it
Advisory by default; --semantic-fail escalates, --ignore-keys silences a key.
Check for this in CI
npx @shipi18n/cli check ./locales -s en
# SARIF for inline PR annotations:
npx @shipi18n/cli check ./locales -s en -r sarif -o shipi18n.sarifThe structural checks need no API key. Findings of this rule link back to this page from the SARIF helpUri.
Related rules
- semantic-mistranslation — translation says something different from the source
- semantic-addition — translation adds claims the source doesn't make