chore(ci): differentiate `UI_FAILED` and `UI_MISSING`
What changed, and why it matters
This commit only changes the wording of a test-result message in the project's internal testing tools. It splits one message into two so that missing expected test snapshots are labeled 'UI_MISSING' rather than 'UI_FAILED'. There is no change to the firmware, wallet behavior, cryptography, or any user-facing security feature.
No security action needed. Treat as a normal non-security CI improvement.
Security signals we found
No strong security signals were identified.
Evidence from the diff
In tests/ui_tests/init.py, the terminal_summary() function previously printed ‘UI_FAILED’ whenever a UI test result passed functionally but failed the visual hash comparison. The patch distinguishes the case where no expected hash exists (expected_hash is None) and prints ‘UI_MISSING’ instead. This is a pure CI/test-reporting quality-of-life change with no security relevance.
Changed components
tests/ui_tests/__init__.pyInspect captured patch +4 / −1
diff --git a/tests/ui_tests/__init__.py b/tests/ui_tests/__init__.py
index 8b748972..a81153e2 100644
--- a/tests/ui_tests/__init__.py
+++ b/tests/ui_tests/__init__.py
@@ -152,7 +152,10 @@ def terminal_summary(
println("-------- UI tests summary: --------")
for result in TestResult.recent_results():
if result.passed and not result.ui_passed:
- println(f"UI_FAILED: {result.test.id} ({result.actual_hash})")
+ if result.expected_hash is None:
+ println(f"UI_MISSING: {result.test.id} ({result.actual_hash})")
+ else:
+ println(f"UI_FAILED: {result.test.id} ({result.actual_hash})")
println("Run ./tests/show_results.py to open test summary")
println("")
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.