You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 1a6e785
Browse filesBrowse the repository at this point in the historyBrowse files
test(report): capture the screens this release actually changed
CI captures 345 OLED PNGs and the screenshot phase reports healthy, but every
suite 7.14.2 changed captured zero of them. The rendering evidence for a
release whose entire subject is what reaches the screen did not exist.
Three separate causes, all silent:
1. SECTIONS declared no screenshot expectations for test_msg_ethereum_erc20_0x_signtx,
test_msg_binance_sign_tx or test_verify_typed_data, so screenshot_filter()
never selected them. Add a section for the display-binding paths.
2. test_msg_display_disclosure WAS in the filter and still produced nothing.
It answers ButtonRequests through its own recording callback to read the
layout, which bypasses the client's capture hook -- so the one suite written
specifically to police what the screen shows was the one suite whose screens
nobody could look at. Call _capture_oled() from the recorder.
3. The CI gate is `total PNG count > 0`. A single captured suite satisfies it.
That cannot distinguish "captured everything" from "captured something", and
in this round it passed while the release's own screens were absent. Add
--screenshot-audit: fail if any test that DECLARED screens captured none.
Skipped tests are excluded -- a version-gated test cannot draw.
Run against the rc30 artifact, the audit reports exactly the eight tests that
declared screens and captured none.
Two entries deliberately carry an EMPTY screenshot list:
- S9 test_eip1559_requires_chain_id: the refusal happens before the first
confirm(), so no screen is drawn and none should be expected. The absence
IS the assertion.
- S8 test_contract_handler_streamed_calldata_signs_full_data: every test in
test_msg_ethereum_signing_guards currently SKIPs under requires_firmware.
Declaring a screen nothing can satisfy would turn the new audit into noise.
0 commit comments