Skip to content

Commit b99e287

Browse files
committed
report: capture the shielded confirm screens, which nothing has ever shown
The RC run produced 1037 OLED frames. Not one matches pczt, orchard, shielded or ironwood. Every catalogued Zcash PCZT test carries an empty screenshot list, so the screenshot filter never selected any of them and no shielded confirm screen has ever been rendered into the evidence. That blind spot hid a real defect. The per-output shielded confirm builds "Send shielded ZEC?\n<unified address>\nAmount: %s" for a three-row body, and a real Orchard unified address is 106 characters -- three full rows on its own, as the captured display-address frame shows. So the address tail and the entire Amount line are never drawn. It is not a cosmetic screen either: fsm_msg_zcash.h says total_amount is "a summary prompt" and that Orchard output values "have their own verification gates", and this is that gate. total_amount itself is taken straight from the host message. Nothing looked wrong from outside, because the two Zcash flows that do get captured both render correctly: the transparent output screen has a ~35 character t-address that fits, and display-address uses the paged confirm_zcash_address path that handles all 106 characters. Request frames on the one catalogued test that exercises a real shielded output. This does not fix the rendering -- it makes the screen visible to review, so the fix can be checked against a captured frame instead of an assertion. Verified: --screenshot-filter now selects the test, and the report still renders 325 tests and passes --validate-junit against the RC artifacts.
1 parent 74768b0 commit b99e287

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

‎scripts/generate-test-report.py‎

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2038,8 +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.',
2042-
[]),
2041+
'are interleaved. Screenshots requested because this is the only catalogued test that '
2042+
'renders the per-output shielded confirm, and that screen is the designed verification '
2043+
'gate for Orchard output values -- fsm_msg_zcash.h states outright that total_amount is '
2044+
'only a summary prompt and that output values "have their own verification gates". No '
2045+
'shielded frame has ever been captured: the RC run produced 1037 OLED frames and not '
2046+
'one matches pczt/orchard/shielded/ironwood, which is why a rendering defect on that '
2047+
'screen went unseen while the transparent path (short t-address, fits) looked correct.',
2048+
['Shielded output confirm', 'Shielded transaction summary']),
20432049
('Z18', 'test_msg_zcash_sign_pczt',
20442050
'test_missing_is_spend_is_rejected_before_device_call',
20452051
'Missing spend classification rejected',

0 commit comments

Comments
 (0)