Skip to content

docs(release): gate status after the rc30 hardware round - #490

Merged
BitHighlander merged 1 commit into
release/7.14.2from
fix/release-doc-rc31
Aug 20, 2026
Merged

docs(release): gate status after the rc30 hardware round#490
BitHighlander merged 1 commit into
release/7.14.2from
fix/release-doc-rc31

Conversation

@BitHighlander

Copy link
Copy Markdown
Owner

Documentation only. Brings docs/release/7.14.2.md up to date for final review —
its gate table was measured at 249f2d61b, before the hardware round happened.

Gates that moved

Gate was now
1 — #429 setup as a transaction partial met (T1 on hardware)
2 — #428 approve what is signed NOT met met for the paths measured
4 — hardware OLED evidence not started met (T1–T13)
3, 6 not started unchanged — not self-certifiable

Gate 2's remaining gap is named rather than rounded off: confirm_helper()
measures only layout_standard_notification, so custom-layout address/xpub
bodies still clip with no warning
. Observed at T12 A4 and tracked against #428.

What the round established

AdvancedMode persists across a power cycle (T8 leg C). efa18ad77 and
b53b63b0a both state it is session state and build their risk analysis on that.
It isn't — blind-signing stays enabled until explicitly revoked. This needs to
be in the release notes.

#485 — the Cut Off screen that promised to reveal hidden text and redrew the
same clipped body. Fixed by #488, hardware-verified. Found by reading
confirm_sm.c:441, not by the device.

What did not pay off, recorded on purpose

Most of the wire-level checks in the round duplicated the emulator suite, which
already asserts the same Failure codes and signatures in CI. And one finding
(#484, PR #486) was retracted after resting on "the device confirmed with no
press" — the tester was pressing.

That is written into the release doc rather than quietly dropped, because the
useful conclusion is where to aim next time: the screens and the press
durations
are what hardware alone can establish. The screens are now automated
(#487, 345 → 375 captures) and the durations were measured for the pager (T13).

Why CI was measuring the wrong release

FW_VERSION fell back to 7.14.0 on the 7.14.2 branch (#467, fixed in #487),
so every test gated to 7.14.1+ was excluded from the screenshot filter and report
validation for the entire release.

Third instance of one pattern here, after the Stage-1 skip (#474) and the
integration deadlock (#477): a check that ran, went green, and measured something
other than its name.

Also repins python-keepkey to bdb4444 (the paging captures) and adds the
rc30-evidence/ set — thirteen documents, including the #484 retraction.

Supersedes the 249f2d6 table, which predates the round entirely.

Gates 1 and 4 are now met on evidence: T1 proved the #429 ceremony rolls back
on hardware, and twelve cards ran on 7.14.2 silicon. Gate 2 is met for the
paths measured, with the gap named rather than rounded off -- custom-layout
address/xpub bodies still clip unmeasured, because confirm_helper() only
measures layout_standard_notification.

Records the two things the round actually established:

  AdvancedMode PERSISTS across a power cycle. efa18ad and b53b63b both
  assert the opposite in their commit messages and build their risk analysis
  on it. Release-note correction.

  #485, the Cut Off screen that promised disclosure and redrew the same
  clipped body -- found by reading confirm_sm.c, not by the device.

And states plainly what did not pay off: most of the wire-level checks
duplicated the emulator suite, and one finding (#484/#486) was retracted after
resting on an inferred button press. Written down so the next round is aimed at
the screens and the press durations, which are the parts hardware alone can
establish.

Also records why CI was measuring the wrong release: FW_VERSION fell back to
7.14.0 (#467), so every test gated to 7.14.1+ was excluded from the screenshot
filter and from report validation for the entire release.
@BitHighlander
BitHighlander merged commit b2a39ec into release/7.14.2 Aug 20, 2026
12 checks passed
@BitHighlander
BitHighlander deleted the fix/release-doc-rc31 branch August 20, 2026 18:39
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