Skip to content

list_placeholder_mismatches

List TRANSLATIONS whose interpolation VARIABLES drift from their source value (Placeholder mismatch, PM2) - a broken {{name}} / {count} is a runtime bug (missing data, or a crash). Detection is by variable NAME and brace-agnostic (i18next {{}}, ICU {}, Ruby %{} all compared by name), evaluated PER LANGUAGE. Each item = {key_uuid, key ('namespace::name'), namespace_slug, language (BCP-47), source_value, source_vars[], target_value, target_vars[], missing[] (vars in the source absent from this translation), extra[] (vars in this translation unknown to the source)}. This is the worklist the sonenta-source-health agent repairs: rewrite the target value so its variables match the source, write it back (propose_translation), then RE-CALL this tool - total == 0 confirms the fix (no server auto-fix). READ-ONLY. 0 credits.

NameTypeDescription
project_uuidstringoptionalProject UUID. Required when multiple projects are configured (SONENTA_PROJECTS); defaults to the single configured project otherwise.
version_idstringoptionalOptional version UUID; defaults to the production version.
key_idstringoptionalRestrict to a single key by its UUID.
language_codestringoptionalRestrict to a single target language by its BCP-47 code (e.g. 'fr').
{
"tool": "list_placeholder_mismatches",
"arguments": {}
}