Quality Check tool
The Quality Check tool runs a battery of rule-based checks over each translation and records the findings on the block's properties as a JSON array of findings, along with a pass/fail flag. The checks span several categories: general text issues (empty target, whitespace mismatches, double spaces, doubled words, target identical to source, corrupted characters), inline-code consistency, span constraint violations, regex pattern preservation, and length ratios. A target locale is required; when a block has no translation, only the empty-target check applies.
With no --provider, the checks are deterministic and need no credentials.
Setting --provider instead runs LLM-judged checks: the chosen model reviews each
translation for terminology, fluency, and accuracy. The rule-based toggles
below apply to the deterministic mode; model and checks apply to the LLM
mode. Every rule check can be toggled independently, and the length checks
share the long/short ratio model used by the dedicated length-check tool.
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
absoluteMaxCharLength | integer | 255 | Maksimalt antall tegn tillatt i et målsegment |
apiKey | string | API-nøkkel for AI-leverandøren | |
charset | string | ISO-8859-1 | Navn på tegnsettkodingen det skal kontrolleres mot (f.eks. ISO-8859-1) |
checkAbsoluteMaxCharLength | boolean | false | Flagg målsegmenter som overskrider en absolutt tegnantallsgrense |
checkCharset | boolean | false | Advar hvis et måltegn ikke er inkludert i den angitte tegnsettkodingen |
checkCodeDifference | boolean | true | Kontroller at målsegmenter har de samme innebygde kodene som kildesegmenter |
checkCorruptedCharacters | boolean | true | Se etter mønstre som indikerer kodingskorrupsjon (mojibake |
checkDoubledWord | boolean | true | Kontroller for påfølgende gjentatte ord i målteksten |
checkDoubleSpaces | boolean | true | Sjekk for doble mellomrom i måltekst |
checkEmptySource | boolean | true | Kontroller om målet ikke er tomt når kilden er tom |
checkEmptyTarget | boolean | true | Sjekk for tomt mål når kilden har innhold |
checkLeadingWhitespace | boolean | true | Sjekk for avvik i innledende mellomrom mellom kilde og mål |
checkMaxCharLength | boolean | true | Flagg mål som er lengre enn en prosentandel av kildetegnlengden |
checkMaxWords | boolean | false | Flagg målsegmenter som overskrider en absolutt ordgrense |
checkMinCharLength | boolean | true | Flagg mål som er kortere enn en prosentandel av kildetegnlengden |
checkPatterns | boolean | true | Kontroller at kildemønstre har forventet tilsvarende innhold i målet |
checks | string[] | Kvalitetskontroller som skal utføres (f.eks. terminologi flyt nøyaktighet konsistens) | |
checkSourceInconsistency | boolean | false | Marker når ulike kildetekster deler samme oversettelse |
checkSpanConstraints | boolean | true | Kontroller brudd på restriksjoner for ikke-slettbare og ikke-klonerbare span-elementer |
checkTargetInconsistency | boolean | false | Marker når den samme kildeteksten er oversatt forskjellig gjennom kjøringen |
checkTargetSameAsSource | boolean | true | Kontroller når målteksten er identisk med kildeteksten |
checkTerminology | boolean | false | Aktiver terminologikontroller |
checkTrailingWhitespace | boolean | true | Kontroller for avvikende mellomrom på slutten mellom kilde og mål |
consistencyCaseSensitive | boolean | true | Om konsistenssammenligningen skiller mellom store og små bokstaver |
doubledWordExceptions | string | sie;vous;nous | Semikolonseparert liste over ord som er tillatt å gjenta (f.eks. sie;vous;nous) |
forbiddenChars | string | Tegn som ikke må forekomme i måltekst (f.eks. {}[]) | |
maxCharLengthAbove | integer | 200 | Maksimalt tillatt prosentandel av kildelengde for lang tekst |
maxCharLengthBelow | integer | 350 | Maksimalt tillatt prosentandel av kildelengde for kort tekst |
maxCharLengthBreak | integer | 20 | Antall tegn som avgjør at tekst anses som lang ved kontroll av maksimal lengde |
maxWords | integer | 0 | Maksimalt antall ord tillatt i et enkelt målsegment |
minCharLengthAbove | integer | 45 | Minimum påkrevd prosentandel av kildelengden for lang tekst |
minCharLengthBelow | integer | 30 | Minimum påkrevd prosentandel av kildelengden for kort tekst |
minCharLengthBreak | integer | 20 | Antall tegn over hvilket tekst anses som lang for minimumlengdekontrollen |
mode | string | rules | Slik kontrolleres kvalitet: deterministiske lokale regler, eller en AI-leverandørs gjennomgang |
model | string | AI-modellnavn | |
provider | string | anthropic | AI-leverandør |
requiredChars | string | Tegn som må forekomme i måltekst hvis de finnes i kildetekst (f.eks. tegnsetting) | |
strictCodeOrder | boolean | false | Flagg forskjeller når koder vises i en annen rekkefølge mellom kilde og mål |
targetSameAsSourceWithCodes | boolean | true | Inkluder innebygde koder ved sammenligning av kilde og mål for identitet |
targetSameAsSourceWithNumbers | boolean | true | Inkluder segmenter med bare tall i sammenligning der kilde er lik mål |
Configure it live
Examples
Inline-code and whitespace checks only
Focus on code preservation and whitespace, disabling the length-ratio checks.
checkCodeDifference: true
checkLeadingWhitespace: true
checkTrailingWhitespace: true
checkMaxCharLength: false
checkMinCharLength: false
Enforce an absolute character cap
Flag any target segment longer than 200 characters.
checkAbsoluteMaxCharLength: true
absoluteMaxCharLength: 200
Processing notes
Operates on translatable blocks; non-translatable structure passes through unchanged.
When a block has no translation, only the empty-target check applies.
Findings are stored on the block as a JSON array with a pass/fail flag.
Limitations
Length and ratio checks compare character lengths only when source and target are both non-empty.
The regex pattern pairs used by
checkPatternsare supplied programmatically, not as schema parameters.Requires a configured target locale.
← Back to the Tool Reference