fix(core/eckhart): remove menu from WordQuiz intro
What changed, and why it matters
This commit removes a 'Skip backup' menu option that had accidentally been left on a screen shown during the wallet backup process on the Trezor Safe 5 (Eckhart layout). The change prevents a user from bypassing the backup verification quiz, but it is a UI-only fix and does not by itself create or fix a security vulnerability in the cryptographic backup process.
Treat as a hardening/UI-consistency fix rather than a critical security patch. Verify that no other layouts (e.g., Caesar, Delizia) expose a similar skip-backup menu, and confirm the underlying backup logic still enforces the quiz or equivalent verification regardless of UI path.
Security signals we found
UI flow change that removes an unintended 'skip backup' affordance
Backup verification (WordQuiz) can no longer be bypassed from the intro screen via a menu
No cryptographic, kernel, or storage-layer changes observed
No changelog entry; commit message frames the change as a UI correction, not a security fix
Evidence from the diff
In the Eckhart (T3W1) UI flow for displaying seed words, the post-backup ‘Check backup intro’ screen was built with a menu button that opened a vertical menu containing a single ‘Skip backup’ item. Selecting it returned FlowMsg::Cancelled, which allowed the user to skip the word-quiz backup check. The commit removes the menu button from the intro screen, deletes the CheckBackupMenu page/state, and removes the VerticalMenu/VerticalMenuScreen imports and plumbing. Test fixture hashes are updated because the rendered screens no longer contain the menu icon or menu page.
Changed components
core/embed/rust/src/ui/layout_eckhart/flow/show_share_words.rsTrezor Safe 5 / T3W1 (Eckhart layout) backup/seed display flowInspect captured patch +51 / −70
diff --git a/core/embed/rust/src/ui/layout_eckhart/flow/show_share_words.rs b/core/embed/rust/src/ui/layout_eckhart/flow/show_share_words.rs
index abc19136c..3c36924e6 100644
--- a/core/embed/rust/src/ui/layout_eckhart/flow/show_share_words.rs
+++ b/core/embed/rust/src/ui/layout_eckhart/flow/show_share_words.rs
@@ -21,8 +21,7 @@ use heapless::Vec;
use super::super::{
component::Button,
firmware::{
- ActionBar, Header, ShareWordsScreen, ShareWordsScreenMsg, ShortMenuVec, TextScreen,
- TextScreenMsg, VerticalMenu, VerticalMenuScreen, VerticalMenuScreenMsg,
+ ActionBar, Header, ShareWordsScreen, ShareWordsScreenMsg, TextScreen, TextScreenMsg,
},
theme::{self, gradient::Gradient},
};
@@ -33,7 +32,6 @@ pub enum ShowShareWords {
ShareWords,
Confirm,
CheckBackupIntro,
- CheckBackupMenu,
}
impl FlowController for ShowShareWords {
@@ -55,9 +53,6 @@ impl FlowController for ShowShareWords {
(Self::Confirm, FlowMsg::Cancelled) => Self::ShareWords.goto(),
(Self::Confirm, FlowMsg::Confirmed) => Self::CheckBackupIntro.goto(),
(Self::CheckBackupIntro, FlowMsg::Confirmed) => self.return_msg(FlowMsg::Confirmed),
- (Self::CheckBackupIntro, FlowMsg::Info) => Self::CheckBackupMenu.goto(),
- (Self::CheckBackupMenu, FlowMsg::Choice(0)) => self.return_msg(FlowMsg::Cancelled),
- (Self::CheckBackupMenu, FlowMsg::Cancelled) => Self::CheckBackupIntro.goto(),
_ => self.do_nothing(),
}
}
@@ -125,28 +120,15 @@ pub fn new_show_share_words_flow(
.with_placement(LinearPlacement::vertical());
let check_backup_intro = TextScreen::new(check_backup_paragraphs)
- .with_header(Header::new(TR::reset__check_wallet_backup_title.into()).with_menu_button())
+ .with_header(Header::new(TR::reset__check_wallet_backup_title.into()))
.with_action_bar(ActionBar::new_single(Button::with_text(
TR::buttons__continue.into(),
)))
.with_page_limit(1)
.map(|msg| match msg {
TextScreenMsg::Confirmed => Some(FlowMsg::Confirmed),
- TextScreenMsg::Menu => Some(FlowMsg::Info),
_ => None,
});
- let check_backup_menu = VerticalMenuScreen::new(
- VerticalMenu::<ShortMenuVec>::empty().with_item(Button::new_menu_item(
- TR::backup__title_skip.into(),
- theme::menu_item_title_orange(),
- )),
- )
- .with_header(Header::new(TR::reset__check_wallet_backup_title.into()).with_close_button())
- .map(|msg| match msg {
- VerticalMenuScreenMsg::Selected(i) => Some(FlowMsg::Choice(i)),
- VerticalMenuScreenMsg::Close => Some(FlowMsg::Cancelled),
- _ => None,
- });
let mut res = if has_intro {
SwipeFlow::new(&ShowShareWords::Instruction)?
} else {
@@ -173,7 +155,6 @@ pub fn new_show_share_words_flow(
};
res.add_page(&ShowShareWords::Confirm, confirm)?
- .add_page(&ShowShareWords::CheckBackupIntro, check_backup_intro)?
- .add_page(&ShowShareWords::CheckBackupMenu, check_backup_menu)?;
+ .add_page(&ShowShareWords::CheckBackupIntro, check_backup_intro)?;
Ok(res)
}
diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json
index 321205d5c..98ef987bf 100644
--- a/tests/ui_tests/fixtures.json
+++ b/tests/ui_tests/fixtures.json
@@ -28663,9 +28663,9 @@
"T3W1_cs_test_autolock.py::test_dryrun_enter_word_slowly": "0e62bca4700610b670081aa63ec888db805a0e8b348b6af45f45740175fe31ea",
"T3W1_cs_test_autolock.py::test_dryrun_locks_at_number_of_words": "7f3d3c84bb9a721e603f917f926005ee1b0237d3ac9d795f3659ea69687c4159",
"T3W1_cs_test_autolock.py::test_dryrun_locks_at_word_entry": "7c256a503f4a83d7a3bfd44542476039a74bdf77466c6b8ffe99b2b4c6358619",
-"T3W1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "ffc5b8ec0d8eabb197c49d80f5ab6410714ce75b08b7e5b44942809dedb4459d",
-"T3W1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "798c4bca2c6422c8d71504146100cd06666ca8704802a3d1b538a15b121105be",
-"T3W1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "39059adb7f39d50edb031c4d1ea1522669d0d5cfa33a240a567c6cfec4fd327f",
+"T3W1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "8967527ad68e6e7b670626b44eb4e9805419df45190b4a5be6722b55d0314c00",
+"T3W1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "15a4c699cc50221afbb276df706b9632891507b604acf21feb894d819cec7cca",
+"T3W1_cs_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "9a5caf0193c86e77ea9576024cfb73f0d5e80b5e533f176d4b2c0fd3f8f8febc",
"T3W1_cs_test_passphrase_bde.py::test_cycle_through_last_character": "d95ad69e00dde10dcb1a1c957e71123812567dc5e9f085d5b6826902dc4938a2",
"T3W1_cs_test_passphrase_bde.py::test_passphrase_click_same_button_many_times": "29c3f4fd4327ae8cdf2fd5e510e543ef39b7b4e21cbcab03a115bdb9ff61c6bd",
"T3W1_cs_test_passphrase_bde.py::test_passphrase_delete": "2645c149210d8c757e56d034c4cd12e559291e2cebde27067c1f6e2dd1cdcfaf",
@@ -28702,12 +28702,12 @@
"T3W1_cs_test_recovery.py::test_recovery_cancel_number_of_words": "8aabf25ebe36b4eba758b8ee3acc0bd13f2fc34fa0a2d0d09089c38f8b7b3c44",
"T3W1_cs_test_recovery.py::test_recovery_slip39_basic": "d9d7fee823428e38446d9b93fb4eca566f761d6ad9930eaa25455b44572b62d2",
"T3W1_cs_test_recovery.py::test_recovery_slip39_issue5306": "376de4455a2bb556302637baf2acef1cc45de97e1883997bad45a2dcb36411c4",
-"T3W1_cs_test_repeated_backup.py::test_repeated_backup_via_device": "f1b44a29d02996cf75be6b61a25a285b7d36056e0879b1f39da3ffc7718e2bc8",
-"T3W1_cs_test_reset_bip39.py::test_reset_bip39": "1397cc45578c7ba8157ae190cb8576594b8a3910ff76930341f6afa647c3e3e8",
+"T3W1_cs_test_repeated_backup.py::test_repeated_backup_via_device": "df4f2e860252edd8c4cef2c5a8237d66385680b19946c48667d65384544f5e1b",
+"T3W1_cs_test_reset_bip39.py::test_reset_bip39": "3138c88b0e52ff180914eac5f99db66ad53d21c2df9e8f2aebcceec62c568f6c",
"T3W1_cs_test_reset_slip39_advanced.py::test_reset_slip39_advanced[16of16]": "823fa3b97b931d505e9a6c491f2d9932f7ef8c80773552b8c13a4176ab1ffea9",
-"T3W1_cs_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "5a7cd49ba2fbffecc4c48fd4cbcf51fa1cbbd803bb3fe9cb2763848c1047e366",
-"T3W1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "c1d94b090f9a7abb98927ce9bbbd8d3aef987a596214da24971ffb347ca9e3d3",
-"T3W1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "666d80481afc87dbccfd0b735413722cf82ee4b0a0780fb0e45bd7d93aaac6cb",
+"T3W1_cs_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "995a44833d008c351fd39e07121c14ba3a03757feccb4d468409e57b178e1ad6",
+"T3W1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "c648338df8bc68dc1996b2e98e365bed12aa9311a6314327ead24e5e3b7389c6",
+"T3W1_cs_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "c27fb7675b3685cfcab2542022098bdddb24e6a138f2c1e9b75728735e9a3fa6",
"T3W1_cs_test_tutorial_eckhart.py::test_tutorial_cancel_from_confirm_menu": "53ec62fc26f76c2c4546e117c9cfac6c556232ea2c2984081da37ec28df7b042",
"T3W1_cs_test_tutorial_eckhart.py::test_tutorial_cancel_from_main_menu": "f90855b002054bc81156b51310427b5c148985093ef5c2801313ee2b896d4fb6",
"T3W1_cs_test_tutorial_eckhart.py::test_tutorial_full_completion": "9ee28e2e4ffb8d38e39c2660ee3bbe7007fe7ed51b8cb1dd0df96de990d4bf7d",
@@ -28721,9 +28721,9 @@
"T3W1_de_test_autolock.py::test_dryrun_enter_word_slowly": "433fe526588dbc5e39f2640ee0e5f05503a186a1a18724d05bded8467e40b08f",
"T3W1_de_test_autolock.py::test_dryrun_locks_at_number_of_words": "caf1c62593fe72f908f67fb2db74b112e15e608b16bf23bfbb220d8a0ac00c9a",
"T3W1_de_test_autolock.py::test_dryrun_locks_at_word_entry": "fd40127f4514fe7777385c73b0cbe4212562a702de67dec08ab80d876c577722",
-"T3W1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "c1fb446d23a9ee5567840638733b2514759415df37317625880272302173a9d5",
-"T3W1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "6422e65c077a9371f655f45fd20911c757ec9f8cad7a8fcf31bdfe4dc8563e5c",
-"T3W1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "5e90a71cfe556c830ce0207517eb461a32f268927c72ca85f835d74b14539b32",
+"T3W1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "8a89598c63eeba195ccccedd48a9a60372c77b13452b34a515cb5b5e15673b7b",
+"T3W1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "98fdc3f3ec2356a4ee3397326267b52639d4c6bd6a89820d84173b1fa6c8e78a",
+"T3W1_de_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "e4f0c930d2ed2ba6dcd79553106b5ca14a30c340bc268df9a4aea9c39af5132e",
"T3W1_de_test_passphrase_bde.py::test_cycle_through_last_character": "003ec5c754c5fc527bb941f812efd7e890d141ef93d108910dee0f9d746ea31f",
"T3W1_de_test_passphrase_bde.py::test_passphrase_click_same_button_many_times": "fc8ec8e114faeb1e8697140775aa7d787554e45628ea7289c42436ff745388bb",
"T3W1_de_test_passphrase_bde.py::test_passphrase_delete": "39f168086a7f5556305c1932460615e32f0cd7d9695928c0e658fff4e8c5af44",
@@ -28760,12 +28760,12 @@
"T3W1_de_test_recovery.py::test_recovery_cancel_number_of_words": "5e1d45b8ba5849a0e66819b7e226c552d15a7e7b3a8013bef998e579313af281",
"T3W1_de_test_recovery.py::test_recovery_slip39_basic": "31c2f2f40557eaf5b8945d1e576172ddda4ef1f9ecb351c777a57e4e2af939df",
"T3W1_de_test_recovery.py::test_recovery_slip39_issue5306": "96919a8c458dc64c0d533f55e9865e840b9790c3cf3294c2e3909f6a989df7dd",
-"T3W1_de_test_repeated_backup.py::test_repeated_backup_via_device": "5cdc5b37f28c919a78fd584e3f123d8e9c6943ed8d275d6c5e9af7ce856be1ec",
-"T3W1_de_test_reset_bip39.py::test_reset_bip39": "efb7b7def9b62c6328594844d787aa1e39180874cf9098cd37d37fc023865c36",
+"T3W1_de_test_repeated_backup.py::test_repeated_backup_via_device": "44d0e5c4c21f1576ab4e86696d1f30f06f0189cdb974d68e11c8b3b18c2ac345",
+"T3W1_de_test_reset_bip39.py::test_reset_bip39": "d5e9170d4e882e4997ec083be7077ce0006aa6dc788851ccdb15385751369439",
"T3W1_de_test_reset_slip39_advanced.py::test_reset_slip39_advanced[16of16]": "b8f776bff6ff1691dba717c698b5d24065c176f76c7039c334165de568be58be",
-"T3W1_de_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "58ea10930f40eb87b42c80f8e1e965fe474b17b7a1fe633ab9e5a0142c0e9836",
-"T3W1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "48f5aea0fc106b3f742ea34f535469c6a13df41779301e65128aba68bac47928",
-"T3W1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "9c1e2f0feb97ccca9d9fc21c6f4874f504a47588c1f80eb69e9310fe32f9b806",
+"T3W1_de_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "75995e11df6d18fc52315e69b01bed2f4f299f5b3be05fcb861cc79c4d9233a4",
+"T3W1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "24f202494694a184f44bf98ce9c730079d4a4417219c93ee230f96a12785b493",
+"T3W1_de_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "99764fcb024dc1934393f85cdaa9f3d58c274c12e3a659d4dd2bf095ad62f7be",
"T3W1_de_test_tutorial_eckhart.py::test_tutorial_cancel_from_confirm_menu": "8988556a681a01c1d1b81226e44352f33657e784828a01f69c45ae5bb6087a99",
"T3W1_de_test_tutorial_eckhart.py::test_tutorial_cancel_from_main_menu": "bca58874f0071e1e9f6aacf1b29b41a1907fa7e74c77cd6d2585e6b53e5ff237",
"T3W1_de_test_tutorial_eckhart.py::test_tutorial_full_completion": "c0eea2ad65328bd5567454f9c710bdb657bdfb7f73369763fcc586a6d0faa71d",
@@ -28779,9 +28779,9 @@
"T3W1_en_test_autolock.py::test_dryrun_enter_word_slowly": "913fa59211a7980b0cb55cb94caa3527be5375e373f041a68afc76feb5325f14",
"T3W1_en_test_autolock.py::test_dryrun_locks_at_number_of_words": "3f78341e43b310e026a56d1d94d2964d299df425c4b09972b11714ad628c0a4c",
"T3W1_en_test_autolock.py::test_dryrun_locks_at_word_entry": "75d72424f2b085199aed5c5a0467d2fac6112cf4203ad1ef097460d217096bb6",
-"T3W1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "6d1d798d51bb1ec828924c3f0e03c18ad09cb58018befcc2f7bb3caaaf7f6989",
-"T3W1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "b25a8375d3577cba282cb2e8207e3bba452bb783448dca0cc8438784f451bf69",
-"T3W1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "2852b5dcf5923fa1c68429d4b0f5926bad6dc97604c944a5599ff1d90042ccc9",
+"T3W1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "bd265b37afe7fcfecbccbf7e62ff8043607038810535005e7ff753c1a84198dc",
+"T3W1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "5a167c1a30235c5eea1943c2f1b806b37fdee2a349b908b342f66bdc8bf24cc0",
+"T3W1_en_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "10064aa951495de068f541d2ade49dd619f2863848a20154f88984309ed9f0e6",
"T3W1_en_test_passphrase_bde.py::test_cycle_through_last_character": "00427d4269dafc7ba93e8353da3b22ef45ab6d18f32daa985babe79f76c689c5",
"T3W1_en_test_passphrase_bde.py::test_passphrase_click_same_button_many_times": "579fac3a2a4690ea9d54d01479acbb6abd2ad15ba570a699828b5ab1f4afcdf8",
"T3W1_en_test_passphrase_bde.py::test_passphrase_delete": "2bb580e760219a708a20523d643027748c526328e5569ae72cc806c5d6a99319",
@@ -28818,12 +28818,12 @@
"T3W1_en_test_recovery.py::test_recovery_cancel_number_of_words": "ae88324c576806ddcedb8a4d129d33b73a2a5e737083a9f4c73c04f91cafc79d",
"T3W1_en_test_recovery.py::test_recovery_slip39_basic": "7fb38aafcf7ed204319c8da69b4f0f0939faa5f03890d6b8f924b8a5f0abda45",
"T3W1_en_test_recovery.py::test_recovery_slip39_issue5306": "2c29b5523277eeaba791685a6e7e7ca16ee905bf8453e0b7d8c0673f5266d7a7",
-"T3W1_en_test_repeated_backup.py::test_repeated_backup_via_device": "0058e992a68075e53e3e300107c0fe824d0a929cbc71bf7517f548b58093424a",
-"T3W1_en_test_reset_bip39.py::test_reset_bip39": "671e075dbe33a79c762f35d090cea5708fc6f557e09d7ce92c66deb16ac97b99",
+"T3W1_en_test_repeated_backup.py::test_repeated_backup_via_device": "cff79203352c152000a571452682db17221efa501104903a88b78754093d9832",
+"T3W1_en_test_reset_bip39.py::test_reset_bip39": "7d299ad2b9276848cef5dd931da7849e2c75a41c1eb2eb5a7b030ea0ce5797cb",
"T3W1_en_test_reset_slip39_advanced.py::test_reset_slip39_advanced[16of16]": "8af53744e2953a30b9bffb4f8156277c55eea0c4b0f520e6912e5ec279ed7d75",
-"T3W1_en_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "d86636d556a307470778fab97566dcee8455dfdf9fb65a51357401bab732803b",
-"T3W1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "0a4f2d89700a406de9547939b55a56dce41528d37e3e7023a427b84bc8f63854",
-"T3W1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "3fe4004633b9617d69fed7184c23457a04d55df0ad4730ad690f6ad45388feec",
+"T3W1_en_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "622dc0a6ea798783260d6eabd2afe2cdd97c0bd1c4416c95974c0804248083f6",
+"T3W1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "65c59c6894dbaa65fb4bff87dc009d687066d7f51ba6b1b8a47eae1ae9f5f48b",
+"T3W1_en_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "5b567654553919839255f7a1fc6e6579fc049d3eaa50ae01399c75d1c2ef8b30",
"T3W1_en_test_tutorial_eckhart.py::test_tutorial_cancel_from_confirm_menu": "90be8ec34b6f4333fd6754201cfacbdbdd002a56cc84fd19aff2deb312851b39",
"T3W1_en_test_tutorial_eckhart.py::test_tutorial_cancel_from_main_menu": "d6bbb7ef62c0d71bdfb7edd43c39fab85b40a3d2f801e2286b3bb79d79853679",
"T3W1_en_test_tutorial_eckhart.py::test_tutorial_full_completion": "5c4cd1f9965770976a5d3063c169cc07b45fb6a6e7e4b088759e9944c0ea8b95",
@@ -28837,9 +28837,9 @@
"T3W1_es_test_autolock.py::test_dryrun_enter_word_slowly": "2e80c75fd57664dc2cfeeb16f1add19564ffe3e9cffaa9df65366c2ec0bda5ac",
"T3W1_es_test_autolock.py::test_dryrun_locks_at_number_of_words": "54d0d41f51f6d520d54d5f0952582aa7278a6f9f4b147fff98a5097dc9037170",
"T3W1_es_test_autolock.py::test_dryrun_locks_at_word_entry": "dd1284e7a293b787e9a84d45ceb0210f10676e3e5bbe6ab5db094007cc3f0319",
-"T3W1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "eea30bd8801a2ed5ea4816f11090b57f56a006dca7de24c051bbb11c8d908e76",
-"T3W1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "98b3d2e3ca9a66d02bb8d36250b23c466c945ab17b71e40cf14bfd52c571cc03",
-"T3W1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "7362815e10de769a6d10374a10fbbbe745393754088944740f0c8e525e88a5d2",
+"T3W1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "9011f8e70d011f4e7ca302d5a1ce4326bc3ddd1e36c4938cc85a1804f5d074cb",
+"T3W1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "81bc0e680ea9d48f8a0fd2c140b48f004032fac1699342c3bca6d033d5baa2b7",
+"T3W1_es_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "95976146bc69a4b198818877bd0ff4215d39c42a5ffae9d26bb46ec360b78970",
"T3W1_es_test_passphrase_bde.py::test_cycle_through_last_character": "9e500a463222910f076c61ce9b7ae67f66e691052d12954452d6c8ef7970fcb0",
"T3W1_es_test_passphrase_bde.py::test_passphrase_click_same_button_many_times": "d5aa7bb97e9131ef1597fbc48b504b4c886fc975393b1ea2ee68f3d64b4eea13",
"T3W1_es_test_passphrase_bde.py::test_passphrase_delete": "1f092f6c3bce31226d121b10f7942fe23b3a48447ef3a1aa1c81f4c3e85a81ba",
@@ -28876,12 +28876,12 @@
"T3W1_es_test_recovery.py::test_recovery_cancel_number_of_words": "004e25a517323fe9a9987c1decc0eec5657090fdee7c3f0be844bf84eaf9eb2b",
"T3W1_es_test_recovery.py::test_recovery_slip39_basic": "aff4aba1d525b3c21a5e5e27069a77e8eb7e9457fed3c7614d0232d403c5f7e2",
"T3W1_es_test_recovery.py::test_recovery_slip39_issue5306": "5f849d11202c9758e58584a465017ebdbf701128d9540aca05236d7c4a6da97e",
-"T3W1_es_test_repeated_backup.py::test_repeated_backup_via_device": "302ea68251f836b9b653bba409c9cdb4b75fc8fd08bc71713c92321a0c254b9a",
-"T3W1_es_test_reset_bip39.py::test_reset_bip39": "7778026444224152820c56567c0a9d02559ba162ecd0d7431c3bfb6132b6bee4",
+"T3W1_es_test_repeated_backup.py::test_repeated_backup_via_device": "58d4382ac19b0f8750118ee149d6ab455f7c7f37cfb54ef39ba8a1c10d9f37ba",
+"T3W1_es_test_reset_bip39.py::test_reset_bip39": "38942d9c1617f3ae09c8293a1ba1787c3325c4f5d607061f9e4a3506fb3f9a9d",
"T3W1_es_test_reset_slip39_advanced.py::test_reset_slip39_advanced[16of16]": "9b60e0705b76b558a594b8d4825149de5f79812ee7d49a6e4310e47797581a36",
-"T3W1_es_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "5029021e90c5503c3d7d2a2917840c965c6da0ee0283e2ea10f69ed51ab24421",
-"T3W1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "2615af72e980e6c94e30235520b24d9ca034c72f02335f69e9ecaf38f2bd0f82",
-"T3W1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "64ae948bbf136e9ea0d88541a19957bdf791a042d9dd26e167d5f19a4b471e87",
+"T3W1_es_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "d1077dc84a154c1af1e9e68f21aa6a9329d583f0894cf54ae9ee7aed6db39ea7",
+"T3W1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "89f3f2f3b8dac2fc32d7fbd7b6c29276ddf48439948d31ad96ea56e51b6dc3f9",
+"T3W1_es_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "e9996062b35d4a046b36b21766e56a331c2ef4e025ff882ef87ec26541f3433b",
"T3W1_es_test_tutorial_eckhart.py::test_tutorial_cancel_from_confirm_menu": "ccad50570ad2f68bc321a95c29088eb0d8f0aa109591c74c33ab3387c5233d38",
"T3W1_es_test_tutorial_eckhart.py::test_tutorial_cancel_from_main_menu": "794c90436a4bb3d0a014968a8518da2205dd2eeef8cdb1a6a57abf05536c97f3",
"T3W1_es_test_tutorial_eckhart.py::test_tutorial_full_completion": "0ecc0ddfc1bc0cc9bcc328b6d1da90d4b027d0705557eea0e92c0571f91bc58f",
@@ -28895,9 +28895,9 @@
"T3W1_fr_test_autolock.py::test_dryrun_enter_word_slowly": "1e2b45b8c635bea45ae192f7a34c9a5fc42829972036727e8e19e8136169e938",
"T3W1_fr_test_autolock.py::test_dryrun_locks_at_number_of_words": "b6b0ac128d7f167b5b1463b4190f069098666848f92b2ac0702e5a337d06eaf9",
"T3W1_fr_test_autolock.py::test_dryrun_locks_at_word_entry": "7a2d6b71c63d6f62dcb70fd4383d82b941e0c8965e2de72ab9dcf18a403bc84c",
-"T3W1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "61ace43da391836ff020fc39d220eb758c7646ee45b9b1702b54d5f95e5c4241",
-"T3W1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "209fb52797c712ef2f186a8e01a1b63e05fa2409209d8679539d882dd41fac73",
-"T3W1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "f61744170b59e538b366122f04b5a64b447d969372d980fa05907ea32f27abc3",
+"T3W1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "cd97c251c2aa4fa274c238aa6c7d5e9c7f001be61fd33e8095b8c87b65a5b3ed",
+"T3W1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "91d400acf09bd0a91785d2d0d87d49912faf952d45267e78a2640f58c1ee3448",
+"T3W1_fr_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "e79b5a7871a77737488fc9e5c2b36fd4af67c47bf05c8b8d1338cbbf20b7fef6",
"T3W1_fr_test_passphrase_bde.py::test_cycle_through_last_character": "594dc85e971aa9dea6473a34d9d494a41f4ba35d0a7811c3f86628c51f3080da",
"T3W1_fr_test_passphrase_bde.py::test_passphrase_click_same_button_many_times": "36b0a9555a2074c0f55ee6035490855c17f0b0107ea9069ab38907d6813f47e6",
"T3W1_fr_test_passphrase_bde.py::test_passphrase_delete": "41fd16fc055255dc726a59211bb8131dace115174c446a416eddeef910075770",
@@ -28934,12 +28934,12 @@
"T3W1_fr_test_recovery.py::test_recovery_cancel_number_of_words": "a57510ea5b61d1e008c4ebce5e45892818875c962fe262e05a2749a7ff244897",
"T3W1_fr_test_recovery.py::test_recovery_slip39_basic": "367d92f360b7e68d71d13f998952330141dd5e2ad5a606a276dd87f58a60e10c",
"T3W1_fr_test_recovery.py::test_recovery_slip39_issue5306": "34ecdba708337f5039dd44945e823d694315a17adbe8491d911a260e4a839306",
-"T3W1_fr_test_repeated_backup.py::test_repeated_backup_via_device": "df0482a141256050a512c736e201bdc48fead95c3d03a704290d24c6b22b9a53",
-"T3W1_fr_test_reset_bip39.py::test_reset_bip39": "3d2b5c43bb8adb8780bd46626b2a3396f0a0a2a876b11f798659f0f85bddec3b",
+"T3W1_fr_test_repeated_backup.py::test_repeated_backup_via_device": "0f70b7bff6c8bed0a4f17847973e22b639bb35b999cf9446713c1fe17c0d33a8",
+"T3W1_fr_test_reset_bip39.py::test_reset_bip39": "25ace4052d8bc34903c21a29e578d9b735f0dad9bdc6efb9ecf79cf77df14fb0",
"T3W1_fr_test_reset_slip39_advanced.py::test_reset_slip39_advanced[16of16]": "e6a41b2fb512fc57fbb5f84aa5536cada54aee5418e1e82a3171b11498470448",
-"T3W1_fr_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "d1f37e72e19e67619c48dfe6b0e3b74d1b3b81e406492cdb820dd2fedc1f10f5",
-"T3W1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "0502a65f1eddbf232d2e36417daebee092e6e79043ef871cd90224c501bb15fa",
-"T3W1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "937e39f2667af22a5b71a96acfae09d7d0327058ed2f26b4622f9863c684985b",
+"T3W1_fr_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "6eac714622c01f4aec2e15bebf1b003eaee54078fcdf1cef5eb46aafa6171145",
+"T3W1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "a3dcc544c55b0522deca91a3994e6a03c96e271bf6b8127fc772abf72cf6266c",
+"T3W1_fr_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "4a9dc3f57dfde4c8d8ddeb53f09da739e215a0c1b9c181575876ef07efb315c7",
"T3W1_fr_test_tutorial_eckhart.py::test_tutorial_cancel_from_confirm_menu": "8505b8dd424b31a9efc498aad417bf6c43c5d4ef8b0dac6eb6fb690b500fa825",
"T3W1_fr_test_tutorial_eckhart.py::test_tutorial_cancel_from_main_menu": "4644d600715e270871914a527ae04ec6e0561a5e726f682720029c8c919e8eb1",
"T3W1_fr_test_tutorial_eckhart.py::test_tutorial_full_completion": "7eaf55cdeb938e48be68171f05dab3b8c5d9e6dcc46cbc1fbc0ac77aeb4143af",
@@ -28953,9 +28953,9 @@
"T3W1_pt_test_autolock.py::test_dryrun_enter_word_slowly": "1a7d97e360f321f9f1c85f12a153850ca3998170591a2b9947b1bc7e22e765a5",
"T3W1_pt_test_autolock.py::test_dryrun_locks_at_number_of_words": "ed6c8bee10effb47107bbe84db1618e232b7b3f65bec26eb5125c75f0d847373",
"T3W1_pt_test_autolock.py::test_dryrun_locks_at_word_entry": "b9dc958dedf7dac280bc907cb15562fac6617767a66f4bc0ff8c56d50632efcd",
-"T3W1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "d684986af7be9bb1e102cf5fb6ca802686d9cc12d7a78734da8eb5795c188792",
-"T3W1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "e9978ec4c701726d41d23e4fb3dc3e8644fdb5215732d70f289579158d98ee02",
-"T3W1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "0d786e67b3e8024fd0ccee6a335aebf938b5ebfe8e5d2d138789b829cb3ca219",
+"T3W1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[1of1]": "19ea46853565ca5d180e99baf3fa2a6824aeff7c7e3f1a40eb1830f2e287d028",
+"T3W1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[2of3]": "f5653b98c59977e2585364d3c1b46ceec79a598902a0b2c5bfd6be995fdb1e38",
+"T3W1_pt_test_backup_slip39_custom.py::test_backup_slip39_custom[5of5]": "1b23c74fa2371a4057ccc7595ef73aa8849ed8f7591eb065ba9c5c34a362959a",
"T3W1_pt_test_passphrase_bde.py::test_cycle_through_last_character": "88fe32de45e043a6c29f80b4466ec21bff20c6f746d46c6baa5c448e635fe4b3",
"T3W1_pt_test_passphrase_bde.py::test_passphrase_click_same_button_many_times": "10c539c17ef780b1a28a4e4f2ff0a8f65bd2e1b4dad6616ad0f0fe370a1e07a1",
"T3W1_pt_test_passphrase_bde.py::test_passphrase_delete": "8220fdea698d6176dfa56338655c8d5455733ea39dbf018401776524cc6a564a",
@@ -28992,12 +28992,12 @@
"T3W1_pt_test_recovery.py::test_recovery_cancel_number_of_words": "b859115dd649f12336bff588b0c7568c16a707851edc83555d7bf678e6a6bf65",
"T3W1_pt_test_recovery.py::test_recovery_slip39_basic": "c709b7888db35da3c21fc720a4f424af683cd97b1b40c5b99c38a68bec635915",
"T3W1_pt_test_recovery.py::test_recovery_slip39_issue5306": "dd547db33965b3445b27e83b7057d36c138dfac05def47223067a6b99eba3af7",
-"T3W1_pt_test_repeated_backup.py::test_repeated_backup_via_device": "d1e246b404c8047695c28a6d8710ecd516a6f10a71f431896159efaa19398b7b",
-"T3W1_pt_test_reset_bip39.py::test_reset_bip39": "4dc0daa428b32dfbc426feaeeb2d33c2b535ab644c6bf86ef5faac23591917b9",
+"T3W1_pt_test_repeated_backup.py::test_repeated_backup_via_device": "e2e03360aeebeca4dbff5feab5d98db01d5e4a890975736936466a8a30b576c4",
+"T3W1_pt_test_reset_bip39.py::test_reset_bip39": "83be0bd3ce8225bf24bc3f2864bebcd004b7eca8ed8d6dedc284effd41eadb70",
"T3W1_pt_test_reset_slip39_advanced.py::test_reset_slip39_advanced[16of16]": "2912ed6339c718212d38d38a9bd63f59d3639a0698011d6d484fdf9968913160",
-"T3W1_pt_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "a435bda446cfc31a086183cb8a29d8cfe9fdd110e8a5d1c152da1e89d8a36bc0",
-"T3W1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "45916faf8b58d00aa233a0beef09455fdf730812c5e074c4be5faaaa1d54473c",
-"T3W1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "6405f29e490c17ff775f775dc8cf5958cd25c7fb1f874bfa1335fc3cc517480c",
+"T3W1_pt_test_reset_slip39_advanced.py::test_reset_slip39_advanced[2of2]": "680fd801639a993b848b5f41c723fe19dde01360af02897ae0095fbdbe439ca3",
+"T3W1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[16of16]": "766ade9f0b270870ef8d46dcd69bb20f86930e9f362a3d7495333b371d60a569",
+"T3W1_pt_test_reset_slip39_basic.py::test_reset_slip39_basic[1of1]": "99973e88c6990cebc293e382797c21762b48ef002dcbee50a6e1e7432000ac16",
"T3W1_pt_test_tutorial_eckhart.py::test_tutorial_cancel_from_confirm_menu": "64d07e7e4827f77ba78361435e5d5dcc3eddaf2d52739a1200b66f0a207af54c",
"T3W1_pt_test_tutorial_eckhart.py::test_tutorial_cancel_from_main_menu": "bae77dad399be25d6968e8be2f0e8667e2e91d9db775a879d29aae6d3ec9e772",
"T3W1_pt_test_tutorial_eckhart.py::test_tutorial_full_completion": "91377e00c48536416346604bc54670b88a3843920896b66b73938f132991ded1",
Why this scored 31/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.