QA your i18n files before release: missing keys, broken placeholders, ICU plurals, HTML tags, length limits, glossary, tone. JSON, PO, XLIFF, CSV. No key needed for checks; translate gaps with your own DeepL, OpenAI or Anthropic key. HTML report and CI gate.
Billing: never charges past your maximum total charge. Money is now reserved per string across all three events (string-checked, string-translated, string-ai-reviewed); strings that would not fit are not processed and not charged.
Skipped strings get an explicit not_processed dataset row per file/locale, OUTPUT.notProcessedStrings, and the status message ends with "N strings not processed (max total charge reached)". An exactly used-up budget is no longer reported as stopped.
A file/locale with no strings no longer stops the remaining files.
README: lists every provider and host called (DeepL, OpenAI, Anthropic, Google Gemini, Mistral) and states that translation/AI review need your own key.