chore(translations): sync Crowdin update translations
What changed, and why it matters
This commit only updates translated text strings in the Trezor firmware. It changes wording in Czech, German, Spanish, French, and Portuguese translation files, plus the translation signature metadata. There are no code changes, no security fixes, and no behavior changes.
No security action required. Treat as routine localization maintenance.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff is limited to JSON translation files under core/translations/. Changes include correcting typos (e.g., Czech ‘Zdat’ → ‘Zadat’), expanding abbreviations (e.g., German ‘Mitunterzeich.’ → ‘Mitunterzeichner’), unifying per-device variant strings, and updating the signatures.json merkle root, timestamp, and commit reference. No executable code, cryptographic logic, or security boundary is modified.
Changed components
core/translations/cs.jsoncore/translations/de.jsoncore/translations/es.jsoncore/translations/fr.jsoncore/translations/pt.jsoncore/translations/signatures.jsonInspect captured patch +37 / −52
diff --git a/core/translations/cs.json b/core/translations/cs.json
index 5037fb9e..dbdffd8a 100644
--- a/core/translations/cs.json
+++ b/core/translations/cs.json
@@ -1100,14 +1100,24 @@
"Delizia": "Potvrďte podržením",
"Eckhart": ""
},
- "instructions__hold_to_continue": "Pokračujte podržením",
+ "instructions__hold_to_continue": {
+ "Bolt": "Pokračujte podržením",
+ "Caesar": "Pokračujte podržením",
+ "Delizia": "Pokračujte podržením",
+ "Eckhart": "Pokračovat podržením"
+ },
"instructions__hold_to_exit_tutorial": {
"Bolt": "",
"Caesar": "",
"Delizia": "Ukončete tutoriál podržením",
"Eckhart": "Ukončit tutoriál podržením"
},
- "instructions__hold_to_sign": "Podepište podržením",
+ "instructions__hold_to_sign": {
+ "Bolt": "Podepište podržením",
+ "Caesar": "Podepište podržením",
+ "Delizia": "Podepište podržením",
+ "Eckhart": "Podepsat podržením"
+ },
"instructions__learn_more": "Zjistit více",
"instructions__menu_to_continue": "Pokračujte přes nabídku",
"instructions__shares_continue_with_x_template": {
@@ -2000,7 +2010,7 @@
"Bolt": "Pokračujte dalším podílem.",
"Caesar": "Následuje další podíl.",
"Delizia": "Pokračujte dalším podílem.",
- "Eckhart": "Zdat další podíl"
+ "Eckhart": "Zadat další podíl"
},
"reset__continue_with_share_template": {
"Bolt": "Pokračujte podílem {0}.",
diff --git a/core/translations/de.json b/core/translations/de.json
index 66fc8e5d..fc2046ad 100644
--- a/core/translations/de.json
+++ b/core/translations/de.json
@@ -75,8 +75,8 @@
"address__public_key": "Public Key",
"address__public_key_confirmed": "Public Key bestätigt",
"address__qr_code": "QR-Code",
- "address__title_cosigner": "Mitunterzeich.",
- "address__title_cosigner_template": "Cosigner {0}",
+ "address__title_cosigner": "Mitunterzeichner",
+ "address__title_cosigner_template": "Mitunterzeichner {0}",
"address__title_provider_address": "Anbieteradresse",
"address__title_receive_address": "Empfangsadresse",
"address__title_refund_address": "Refund-Adresse",
@@ -2122,14 +2122,9 @@
"Eckhart": ""
},
"recovery__dry_run_bip39_valid_match": "Das eingegebene Wallet-Backup ist gültig und passt zu dem auf dem Gerät.",
- "recovery__dry_run_bip39_valid_mismatch": "Das eingegebene Wallet-Backup ist gültig und passt zu dem auf dem Gerät.",
+ "recovery__dry_run_bip39_valid_mismatch": "Das eingegebene Wallet-Backup ist gültig, passt aber nicht zu dem auf dem Gerät.",
"recovery__dry_run_slip39_valid_match": "Das eingegebene Wallet-Backup ist gültig und passt zu dem auf dem Gerät.",
- "recovery__dry_run_slip39_valid_mismatch": {
- "Bolt": "Das eingegebene Wallet-Backup ist gültig und passt zu dem auf dem Gerät.",
- "Caesar": "Das eingegebene Wallet-Backup ist gültig und passt zu dem auf dem Gerät.",
- "Delizia": "Eingegebener Recovery Seed ist gültig, passt aber nicht zu dem auf dem Gerät.",
- "Eckhart": "Eingegebener Recovery Seed ist gültig, passt aber nicht zu dem auf dem Gerät."
- },
+ "recovery__dry_run_slip39_valid_mismatch": "Das eingegebene Wallet-Backup ist gültig, passt aber nicht zu dem auf dem Gerät.",
"recovery__enter_any_share": "Share eingeben",
"recovery__enter_backup": "Gib dein Backup ein.",
"recovery__enter_different_share": {
@@ -3071,7 +3066,7 @@
"Eckhart": "Max. Rent-Gebühr"
},
"solana__multiple_signers": "Mehrere Unterzeichner",
- "solana__offchain_is_multisig": "Die folgende Nachricht erfordert mehrere Signierer.",
+ "solana__offchain_is_multisig": "Die folgende Nachricht erfordert mehrere Unterzeichner.",
"solana__priority_fee": "Prioritätsgebühr",
"solana__stake": "Stake",
"solana__stake_account": "Staking-Konto",
diff --git a/core/translations/es.json b/core/translations/es.json
index 8a09a855..8974fdca 100644
--- a/core/translations/es.json
+++ b/core/translations/es.json
@@ -381,7 +381,7 @@
"buttons__continue": "Continuar",
"buttons__details": "Detalles",
"buttons__enable": "Activar",
- "buttons__enter_share": "Ingr. parte",
+ "buttons__enter_share": "Ingresar parte",
"buttons__export": "Exportar",
"buttons__finish": "Finalizar",
"buttons__format": "Formatear",
@@ -1854,8 +1854,8 @@
"recovery__progress_will_be_lost": "Se perderá todo el progreso.",
"recovery__share_already_entered": {
"Bolt": "Ya se ha introducido esta parte.",
- "Caesar": "Ya se ha introducido esta parte.",
- "Delizia": "Ya se ha introducido la parte",
+ "Caesar": "Ya se ha introducido esta parte",
+ "Delizia": "Ya se ha introducido esta parte",
"Eckhart": "Ya se ha introducido esta parte. Ingresa una distinta."
},
"recovery__share_does_not_match": {
@@ -1884,12 +1884,7 @@
"recovery__title_dry_run": "Verif. c. seg.",
"recovery__title_recover": "Recuperar billetera",
"recovery__title_remaining_shares": "Partes restantes",
- "recovery__title_unlock_repeated_backup": {
- "Bolt": "Respaldo con múltiples partes",
- "Caesar": "Respaldo con múltiplas partes",
- "Delizia": "Respaldo con múltiples partes",
- "Eckhart": "Respaldo con múltiples partes"
- },
+ "recovery__title_unlock_repeated_backup": "Respaldo con múltiples partes",
"recovery__type_word_x_of_y_template": "Escribe palabra {0} de {1}",
"recovery__unlock_repeated_backup": "¿Crear copia de seguridad adicional?",
"recovery__unlock_repeated_backup_verb": "Crear c. seg",
@@ -1940,13 +1935,13 @@
"Eckhart": "El umbral de grupo determina el núm. de grupos necesarios para recuperar la billetera."
},
"reset__all_x_of_y_template": {
- "Bolt": "{0} de {1} partes",
+ "Bolt": "las {0} partes de {1}",
"Caesar": "",
"Delizia": "",
"Eckhart": ""
},
"reset__any_x_of_y_template": {
- "Bolt": "{0} de {1} partes",
+ "Bolt": "{0} partes cualesquiera de {1}",
"Caesar": "",
"Delizia": "",
"Eckhart": ""
@@ -2013,12 +2008,7 @@
"Delizia": "",
"Eckhart": ""
},
- "reset__create_x_of_y_multi_share_backup_template": {
- "Bolt": "¿Quieres crear c. seg. de múltiples partes {0} de {1}?",
- "Caesar": "¿Quieres crear {0} de {1} c. seg. de múltiples partes?",
- "Delizia": "¿Quieres crear {0} de {1} c. seg. de múltiples partes?",
- "Eckhart": "¿Quieres crear {0} de {1} c. seg. de múltiples partes?"
- },
+ "reset__create_x_of_y_multi_share_backup_template": "¿Quieres crear {0} de {1} c. seg. de múltiples partes?",
"reset__finished_verifying_group_template": {
"Bolt": "Has verificado tus partes de recuperación del grupo {0}.",
"Caesar": "Has verificado tus partes de recuperación del grupo {0}.",
@@ -2044,10 +2034,10 @@
"Eckhart": "Un grupo consta de partes de recuperación."
},
"reset__group_info": {
- "Bolt": "Cada grupo tiene un núm. de partes y su propio umbral. En los siguientes pasos, ajustarás el núm. de partes y los umbrales.",
+ "Bolt": "Cada grupo tiene un número de partes y su propio umbral. En los siguientes pasos, ajustarás el núm. de partes y los umbrales.",
"Caesar": "",
- "Delizia": "Cada grupo tiene un núm. de partes y su propio umbral. En los siguientes pasos, ajustarás el núm. de partes y los umbrales.",
- "Eckhart": "Cada grupo tiene un núm. de partes y su propio umbral. En los siguientes pasos, ajustarás el núm. de partes y los umbrales."
+ "Delizia": "Cada grupo tiene un número de partes y su propio umbral. En los siguientes pasos, ajustarás el núm. de partes y los umbrales.",
+ "Eckhart": "Cada grupo tiene un número de partes y su propio umbral. En los siguientes pasos, ajustarás el núm. de partes y los umbrales."
},
"reset__group_share_checked_successfully_template": {
"Bolt": "Parte {1} del grupo {0} verificada con éxito.",
@@ -2080,7 +2070,7 @@
"Eckhart": ""
},
"reset__need_any_share_template": {
- "Bolt": "Para la recup. necesitas {0} partes cualesquiera.",
+ "Bolt": "Para la recuperación necesitas {0} partes cualesquiera.",
"Caesar": "",
"Delizia": "",
"Eckhart": ""
@@ -2092,7 +2082,7 @@
"Eckhart": ""
},
"reset__needed_to_recover_your_wallet": {
- "Bolt": "neces. para recuperar tu billetera. ",
+ "Bolt": "necesarias para recuperar tu billetera. ",
"Caesar": "",
"Delizia": "",
"Eckhart": ""
@@ -2179,7 +2169,7 @@
"Bolt": "",
"Caesar": "",
"Delizia": "",
- "Eckhart": "Seleccionar la palabra {0} de la parte {1}"
+ "Eckhart": "Seleccionar la palabra {0} de\nla parte {1}"
},
"reset__select_word_template": {
"Bolt": "",
@@ -2308,7 +2298,7 @@
"Eckhart": "Escribe y verifica las partes de respaldo"
},
"reset__the_threshold_sets_the_number_of_shares": {
- "Bolt": "El umbral define el núm. de partes. ",
+ "Bolt": "El umbral define el número de partes ",
"Caesar": "",
"Delizia": "",
"Eckhart": ""
diff --git a/core/translations/fr.json b/core/translations/fr.json
index f86aa504..f14546b6 100644
--- a/core/translations/fr.json
+++ b/core/translations/fr.json
@@ -3385,12 +3385,7 @@
"words__about": "À propos",
"words__account": "Compte",
"words__account_colon": "Compte :",
- "words__account_deletion": {
- "Bolt": "Supprimer compte",
- "Caesar": "Supprimer compte",
- "Delizia": "Supprimer compte",
- "Eckhart": "Suppression de compte"
- },
+ "words__account_deletion": "Suppression de compte",
"words__address": "Adresse",
"words__amount": "Montant",
"words__are_you_sure": "Êtes-vous sûr ?",
diff --git a/core/translations/pt.json b/core/translations/pt.json
index 7a0e0c87..1bb6d6e9 100644
--- a/core/translations/pt.json
+++ b/core/translations/pt.json
@@ -1894,12 +1894,7 @@
"recovery__dry_run_bip39_valid_match": "O backup de carteira inserido é válido e coincide com o deste dispositivo.",
"recovery__dry_run_bip39_valid_mismatch": "O backup de carteira inserido é válido, mas não coincide com o deste dispositivo.",
"recovery__dry_run_slip39_valid_match": "O backup de carteira inserido é válido e coincide com o deste dispositivo.",
- "recovery__dry_run_slip39_valid_mismatch": {
- "Bolt": "O backup de carteira inserido é válido, mas não coincide com o deste dispositivo.",
- "Caesar": "O backup de carteira inserido é válido, mas não coincide com o deste dispositivo.",
- "Delizia": "O backup de carteira inserido é válido, mas não coincide com o que está neste dispositivo.",
- "Eckhart": "O backup de carteira inserido é válido, mas não coincide com o que está neste dispositivo."
- },
+ "recovery__dry_run_slip39_valid_mismatch": "O backup de carteira inserido é válido, mas não coincide com o deste dispositivo.",
"recovery__enter_any_share": "Insira qualquer share",
"recovery__enter_backup": "Insira seu backup.",
"recovery__enter_different_share": {
diff --git a/core/translations/signatures.json b/core/translations/signatures.json
index 2624b19c..08ae5854 100644
--- a/core/translations/signatures.json
+++ b/core/translations/signatures.json
@@ -1,8 +1,8 @@
{
"current": {
- "merkle_root": "1efaa39712969a99bc063f5c3a71e4134441dafdf35749c3b757425d2eba2c60",
- "datetime": "2026-07-01T08:37:28.103468+00:00",
- "commit": "cf3136f6503efcae4cbfb9686cde358ceaee76e7"
+ "merkle_root": "3bff99ef6b8aea6da8c2fc01315656508428e466a90a252ce4b40f0b067f1014",
+ "datetime": "2026-07-02T12:14:47.245865+00:00",
+ "commit": "c9eda1cad58c0af6759515cd359151c8dde344a3"
},
"history": [
{
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.