chore(core): add confirmation-related English string entries
What changed, and why it matters
This commit only adds two new English text labels, 'Confirm all' and 'Show next', to the Trezor firmware's translation system. It updates the generated code that maps internal keys to user-visible strings and refreshes the translation signature metadata. There is no change to security logic, user prompts, or how confirmations work.
No security action needed; treat as routine localization maintenance.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff is a pure localization/data change: it registers MP_QSTR_words__confirm_all and MP_QSTR_words__show_next, adds corresponding enum variants and string tables in translated_string.rs, updates mock keys, en.json, order.json, and regenerates signatures.json with a new merkle_root/commit/datetime. No Rust/Python UI flow code is modified, no confirmation behavior is altered, and no security boundary is affected.
Changed components
core/embed/rust/librust_qstr.hcore/embed/rust/src/translations/generated/translated_string.rscore/mocks/trezortranslate_keys.pyicore/translations/en.jsoncore/translations/order.jsoncore/translations/signatures.jsonInspect captured patch +80 / −4
diff --git a/core/embed/rust/librust_qstr.h b/core/embed/rust/librust_qstr.h
index 9e00cd44..d0142cc8 100644
--- a/core/embed/rust/librust_qstr.h
+++ b/core/embed/rust/librust_qstr.h
@@ -993,6 +993,7 @@ static void _librust_qstrs(void) {
MP_QSTR_words__chain;
MP_QSTR_words__comm_trouble;
MP_QSTR_words__confirm;
+ MP_QSTR_words__confirm_all;
MP_QSTR_words__confirm_fee;
MP_QSTR_words__connect;
MP_QSTR_words__connected;
@@ -1040,6 +1041,7 @@ static void _librust_qstrs(void) {
MP_QSTR_words__send;
MP_QSTR_words__set;
MP_QSTR_words__settings;
+ MP_QSTR_words__show_next;
MP_QSTR_words__sign;
MP_QSTR_words__signer;
MP_QSTR_words__swap;
diff --git a/core/embed/rust/src/translations/generated/translated_string.rs b/core/embed/rust/src/translations/generated/translated_string.rs
index 5fc3fe75..b8669c7f 100644
--- a/core/embed/rust/src/translations/generated/translated_string.rs
+++ b/core/embed/rust/src/translations/generated/translated_string.rs
@@ -1565,6 +1565,8 @@ pub enum TranslatedString {
ethereum__eip_7702_title = 1176, // "Smart accounts"
#[cfg(feature = "universal_fw")]
ethereum__eip_7702 = 1177, // {"Bolt": "Authorize the following contract as an EIP-7702 on your account", "Caesar": "Authorize the following contract as an EIP-7702 on your account", "Delizia": "Authorize the following contract as an EIP-7702 on your account?", "Eckhart": "Authorize the following contract as an EIP-7702 on your account?"}
+ words__confirm_all = 1178, // "Confirm all"
+ words__show_next = 1179, // "Show next"
}
impl TranslatedString {
@@ -2750,6 +2752,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", feature = "universal_fw"))]
@@ -3933,6 +3937,8 @@ impl TranslatedString {
21574,
21588,
21651,
+ 21662,
+ 21671,
];
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -5115,6 +5121,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -6298,6 +6306,8 @@ impl TranslatedString {
21574,
21588,
21651,
+ 21662,
+ 21671,
];
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -7480,6 +7490,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -8663,6 +8675,8 @@ impl TranslatedString {
21574,
21588,
21651,
+ 21662,
+ 21671,
];
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -9845,6 +9859,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -11028,6 +11044,8 @@ impl TranslatedString {
21574,
21588,
21651,
+ 21662,
+ 21671,
];
} else if #[cfg(feature = "layout_caesar")] {
@@ -12211,6 +12229,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", feature = "universal_fw"))]
@@ -13394,6 +13414,8 @@ impl TranslatedString {
18687,
18701,
18764,
+ 18775,
+ 18784,
];
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -14576,6 +14598,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -15759,6 +15783,8 @@ impl TranslatedString {
18687,
18701,
18764,
+ 18775,
+ 18784,
];
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -16941,6 +16967,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -18124,6 +18152,8 @@ impl TranslatedString {
18687,
18701,
18764,
+ 18775,
+ 18784,
];
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -19306,6 +19336,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -20489,6 +20521,8 @@ impl TranslatedString {
18687,
18701,
18764,
+ 18775,
+ 18784,
];
} else if #[cfg(feature = "layout_delizia")] {
@@ -21672,6 +21706,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", feature = "universal_fw"))]
@@ -22855,6 +22891,8 @@ impl TranslatedString {
20575,
20589,
20653,
+ 20664,
+ 20673,
];
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -24037,6 +24075,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -25220,6 +25260,8 @@ impl TranslatedString {
20575,
20589,
20653,
+ 20664,
+ 20673,
];
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -26402,6 +26444,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -27585,6 +27629,8 @@ impl TranslatedString {
20575,
20589,
20653,
+ 20664,
+ 20673,
];
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -28767,6 +28813,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -29950,6 +29998,8 @@ impl TranslatedString {
20575,
20589,
20653,
+ 20664,
+ 20673,
];
} else if #[cfg(feature = "layout_eckhart")] {
@@ -31133,6 +31183,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", feature = "universal_fw"))]
@@ -32316,6 +32368,8 @@ impl TranslatedString {
21330,
21344,
21408,
+ 21419,
+ 21428,
];
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -33498,6 +33552,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(feature = "debug", not(feature = "universal_fw")))]
@@ -34681,6 +34737,8 @@ impl TranslatedString {
21330,
21344,
21408,
+ 21419,
+ 21428,
];
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -35863,6 +35921,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), feature = "universal_fw"))]
@@ -37046,6 +37106,8 @@ impl TranslatedString {
21330,
21344,
21408,
+ 21419,
+ 21428,
];
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -38228,6 +38290,8 @@ impl TranslatedString {
"Fee limit",
"Smart accounts",
"Authorize the following contract as an EIP-7702 on your account?",
+ "Confirm all",
+ "Show next",
);
#[cfg(all(not(feature = "debug"), not(feature = "universal_fw")))]
@@ -39411,6 +39475,8 @@ impl TranslatedString {
21330,
21344,
21408,
+ 21419,
+ 21428,
];
}
@@ -40902,6 +40968,7 @@ impl TranslatedString {
(Qstr::MP_QSTR_words__chain, Self::words__chain),
(Qstr::MP_QSTR_words__comm_trouble, Self::words__comm_trouble),
(Qstr::MP_QSTR_words__confirm, Self::words__confirm),
+ (Qstr::MP_QSTR_words__confirm_all, Self::words__confirm_all),
(Qstr::MP_QSTR_words__confirm_fee, Self::words__confirm_fee),
(Qstr::MP_QSTR_words__connect, Self::words__connect),
(Qstr::MP_QSTR_words__connected, Self::words__connected),
@@ -40949,6 +41016,7 @@ impl TranslatedString {
(Qstr::MP_QSTR_words__send, Self::words__send),
(Qstr::MP_QSTR_words__set, Self::words__set),
(Qstr::MP_QSTR_words__settings, Self::words__settings),
+ (Qstr::MP_QSTR_words__show_next, Self::words__show_next),
(Qstr::MP_QSTR_words__sign, Self::words__sign),
(Qstr::MP_QSTR_words__signer, Self::words__signer),
(Qstr::MP_QSTR_words__swap, Self::words__swap),
diff --git a/core/mocks/trezortranslate_keys.pyi b/core/mocks/trezortranslate_keys.pyi
index 5c3e1a66..03adc48b 100644
--- a/core/mocks/trezortranslate_keys.pyi
+++ b/core/mocks/trezortranslate_keys.pyi
@@ -1064,6 +1064,7 @@ class TR:
words__chain: str = "Chain"
words__comm_trouble: str = "Your Trezor is having trouble communicating with your connected device."
words__confirm: str = "Confirm"
+ words__confirm_all: str = "Confirm all"
words__confirm_fee: str = "Confirm fee"
words__connect: str = "Connect"
words__connected: str = "Connected"
@@ -1111,6 +1112,7 @@ class TR:
words__send: str = "Send"
words__set: str = "Set"
words__settings: str = "Settings"
+ words__show_next: str = "Show next"
words__sign: str = "Sign"
words__signer: str = "Signer"
words__swap: str = "Swap"
diff --git a/core/translations/en.json b/core/translations/en.json
index c2b5e086..ea37401c 100644
--- a/core/translations/en.json
+++ b/core/translations/en.json
@@ -2471,6 +2471,7 @@
"words__chain": "Chain",
"words__comm_trouble": "Your Trezor is having trouble communicating with your connected device.",
"words__confirm": "Confirm",
+ "words__confirm_all": "Confirm all",
"words__confirm_fee": "Confirm fee",
"words__connect": "Connect",
"words__connected": "Connected",
@@ -2528,6 +2529,7 @@
"words__send": "Send",
"words__set": "Set",
"words__settings": "Settings",
+ "words__show_next": "Show next",
"words__sign": "Sign",
"words__signer": "Signer",
"words__swap": "Swap",
diff --git a/core/translations/order.json b/core/translations/order.json
index 93f9fe07..31b6d3dc 100644
--- a/core/translations/order.json
+++ b/core/translations/order.json
@@ -1176,5 +1176,7 @@
"1174": "words__note",
"1175": "words__fee_limit",
"1176": "ethereum__eip_7702_title",
- "1177": "ethereum__eip_7702"
+ "1177": "ethereum__eip_7702",
+ "1178": "words__confirm_all",
+ "1179": "words__show_next"
}
diff --git a/core/translations/signatures.json b/core/translations/signatures.json
index 1cee576d..4e0d317e 100644
--- a/core/translations/signatures.json
+++ b/core/translations/signatures.json
@@ -1,8 +1,8 @@
{
"current": {
- "merkle_root": "95d09fed4f8b04df65d670021ea40394f8f79f0ef1b9c97cf995c9161725a444",
- "datetime": "2026-02-11T11:34:03.899989+00:00",
- "commit": "6764036fe7184a044cc03a746c3e130bf26ccdbb"
+ "merkle_root": "cd99a3720e1bc7b6e8d2a054995e6203ea2cd6dbb3b8d173566405fad8465362",
+ "datetime": "2026-02-12T17:20:33.526586+00:00",
+ "commit": "3e178be4bf2feda07246488a8f04fc48ecec2614"
},
"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.