Skip to content

fix(report): stop declaring screens seven tests cannot draw - #42

Merged
BitHighlander merged 1 commit into
masterfrom
fix/report-screenshot-audit
Aug 21, 2026
Merged

fix(report): stop declaring screens seven tests cannot draw#42
BitHighlander merged 1 commit into
masterfrom
fix/report-screenshot-audit

Conversation

@BitHighlander

Copy link
Copy Markdown
Owner

The report's own gate was failing:

screenshot audit FAILED -- declared screens with no capture:
  test_msg_ethereum_getaddress::test_ethereum_getaddress
  test_msg_ripple_get_address::test_ripple_get_address
  test_msg_ethereum_clear_signing::test_valid_metadata_returns_verified
  test_msg_solana_getaddress::test_solana_get_address
  test_msg_tron_getaddress::test_tron_get_address
  test_msg_ton_getaddress::test_ton_get_address
  test_msg_zcash_orchard::test_fvk_reference_vectors

None is a missing capture. Each entry declared a screen the test can never produce:

  • the five getaddress tests return the address on the wire; the drawn address is the show_address sibling, separately catalogued and capturing it (S3b, T3b, N2b, B4);
  • test_valid_metadata_returns_verified asserts the VERIFIED classification before anything is rendered;
  • test_fvk_reference_vectors is reference-vector arithmetic compared in memory.

So the declarations were wrong, not the runs. Emptied, each with a line saying why it is empty and where the screen actually lives — an empty list already means something in this catalog, so it must read as intent rather than omission.

This matters beyond tidiness. The audit is a release gate, and a gate that fails for a reason nobody can fix gets ignored — and an ignored gate is the one that misses the real defect later.

screenshot audit: every declared screen was captured

The report's own gate was failing:

    screenshot audit FAILED -- declared screens with no capture:
      test_msg_ethereum_getaddress::test_ethereum_getaddress
      test_msg_ripple_get_address::test_ripple_get_address
      test_msg_ethereum_clear_signing::test_valid_metadata_returns_verified
      test_msg_solana_getaddress::test_solana_get_address
      test_msg_tron_getaddress::test_tron_get_address
      test_msg_ton_getaddress::test_ton_get_address
      test_msg_zcash_orchard::test_fvk_reference_vectors

None of them is a missing capture. Each entry declared a screen the test can
never produce:

  - the five *getaddress* tests return the address ON THE WIRE. The drawn
    address is the *show_address* sibling, which is separately catalogued and
    does capture it (S3b, T3b, N2b, B4).
  - test_valid_metadata_returns_verified asserts the VERIFIED classification
    before anything is rendered.
  - test_fvk_reference_vectors is reference-vector arithmetic compared in
    memory.

So the declarations were wrong, not the runs. Emptied, and each carries a line
saying why it is empty and where the screen actually lives -- an empty list is
already meaningful in this catalog ("refusal paths draw nothing, and their
evidence is the Failure on the wire plus the ABSENCE of a ButtonRequest"), so
it must read as intent rather than omission.

This matters beyond tidiness. The audit is a release gate, and a gate that
fails for a reason nobody can fix gets ignored -- and an ignored gate is the
one that misses the real defect later. It now passes:

    screenshot audit: every declared screen was captured
@BitHighlander
BitHighlander merged commit 1dacea4 into master Aug 21, 2026
2 of 5 checks passed
@BitHighlander
BitHighlander deleted the fix/report-screenshot-audit branch August 21, 2026 19:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant