Skip to content

Commit 5761392

Browse files
committed
report: say which Zcash shielded tests never touch a device
Chasing a rendering defect on the per-output shielded confirm turned up something worse than a missing screenshot: ZcashSignPCZT is never sent to a device anywhere in this suite. Every test in test_msg_zcash_sign_pczt drives a ScriptedTransport with canned responses -- they are offline contract tests that prove the client builds and orders its messages correctly, and prove nothing whatsoever about firmware behaviour. The device-driven Zcash tests cover transparent signing, display-address, FVK derivation and the seed fingerprint. None of them signs a shielded output. So the on-device shielded path -- including the confirm screen that fsm_msg_zcash.h designates as the verification gate for Orchard output values, since total_amount is "a summary prompt" taken from the host -- has no automated coverage at all. The catalog gave no hint of this. The section Z entries read exactly like the device tests around them, and that is how a screen nobody has ever rendered sat behind seven green checks. Say it in the entry instead. No screenshot hint: requesting frames from a test that cannot reach a device would produce silently zero of them, which is the same class of empty-but-green evidence this whole pass exists to remove. Verified: --screenshot-filter does not select it, and the report still renders 325 tests and passes --validate-junit against the RC artifacts.
1 parent 74768b0 commit 5761392

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

scripts/generate-test-report.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2038,7 +2038,14 @@ def _arg_shown(a):
20382038
'test_private_send_preserves_compact_real_spend_order',
20392039
'Private send preserves real-spend signature order',
20402040
'Compact device signatures remain ordered by the real-spend actions when dummy actions '
2041-
'are interleaved.',
2041+
'are interleaved. OFFLINE CONTRACT TEST -- like every test in test_msg_zcash_sign_pczt, '
2042+
'it drives a ScriptedTransport with canned responses and never reaches a device. It '
2043+
'proves the client builds and orders the messages correctly; it proves nothing about '
2044+
'firmware behaviour, and it can never produce an OLED frame. ZcashSignPCZT is not sent '
2045+
'to a device anywhere in this suite, so the on-device shielded signing path -- '
2046+
'including the per-output confirm that is the designed verification gate for Orchard '
2047+
'output values -- has no automated coverage at all. Shielded signing must be walked on '
2048+
'real hardware.',
20422049
[]),
20432050
('Z18', 'test_msg_zcash_sign_pczt',
20442051
'test_missing_is_spend_is_rejected_before_device_call',

0 commit comments

Comments
 (0)