docs(core,prodtest): changelog update core v2.12.2 prodtest v0.3.8
What changed, and why it matters
This commit is a documentation-only changelog update for the Trezor firmware release 2.12.2 and prodtest 0.3.8. It does not change any code, but it lists several security fixes that are part of this release. The most important ones affect Bitcoin and Solana transactions: Bitcoin signing could misidentify external inputs, and replacement transactions (RBF) could silently add new external outputs. Solana token transfers could display the wrong recipient address when using address lookup tables, and some Solana instruction parameters were not shown to the user for confirmation. Because the actual code changes are not in this commit, the risk assessment is based on the vendor's own changelog descriptions.
Treat this as a release-notes commit that announces security fixes shipped elsewhere. Review the actual implementation commits for the four security items (Bitcoin external input, Bitcoin RBF outputs, Solana hidden parameters, Solana ALT recipient) to assess their severity and confirm the fixes. Users should upgrade to firmware 2.12.2 when it is released, especially if they sign Bitcoin or Solana transactions. No immediate action is required solely from this changelog commit.
Security signals we found
Bitcoin external input misidentification in signing
Bitcoin RBF replacement transaction allows new external outputs
Solana hidden instruction parameters not confirmed by user
Solana token transfer recipient misdisplayed for ALT addresses
Changelog-only commit, no source diff for security fixes
Evidence from the diff
The diff only deletes changelog fragment files and inserts their contents into the per-device CHANGELOG.md files for core v2.12.2 and prodtest v0.3.8. No source code is modified. The changelog records four security-relevant items: (1) ‘Fix external input misidentification in bitcoin signing’ — a logic bug in how the firmware classifies inputs that do not belong to the wallet; (2) ‘Reject new external outputs in bitcoin replacement transactions’ — an RBF policy gap that allowed added outputs to bypass user confirmation; (3) ‘Ask user for confirmation of some previously hidden Solana instruction parameters’ — missing UI disclosure of transaction details; and (4) ‘Fixed Solana token transfer showing the lookup-table address as the recipient for ALT-referenced destinations’ — incorrect recipient decoding for ALT-based token transfers. The Bitcoin items are the most severe because they affect transaction integrity and could lead to unauthorized spending or fee manipulation. The Solana items are UI/confirmation issues that could mislead users. The commit also includes non-security fixes and prodtest manufacturing-tool changes that are not user-facing security issues.
Changed components
Trezor Core firmware Bitcoin signing flowTrezor Core firmware RBF/replacement transaction handlingTrezor Core firmware Solana transaction parsing and confirmation UITrezor Core firmware Solana SPL token transfer displayTrezor prodtest manufacturing tool (non-user-facing)Inspect captured patch +205 / −20
diff --git a/core/.changelog.d/+external.security b/core/.changelog.d/+external.security
deleted file mode 100644
index 082be74c..00000000
--- a/core/.changelog.d/+external.security
+++ /dev/null
@@ -1 +0,0 @@
-Fix external input misidentification in bitcoin signing.
diff --git a/core/.changelog.d/+rbf.security b/core/.changelog.d/+rbf.security
deleted file mode 100644
index e49d0829..00000000
--- a/core/.changelog.d/+rbf.security
+++ /dev/null
@@ -1 +0,0 @@
-Reject new external outputs in bitcoin replacement transactions.
diff --git a/core/.changelog.d/281.security b/core/.changelog.d/281.security
deleted file mode 100644
index 5eb1da68..00000000
--- a/core/.changelog.d/281.security
+++ /dev/null
@@ -1 +0,0 @@
-Ask user for confirmation of some previously hidden Solana instruction parameters.
diff --git a/core/.changelog.d/286.security b/core/.changelog.d/286.security
deleted file mode 100644
index e16d0a7b..00000000
--- a/core/.changelog.d/286.security
+++ /dev/null
@@ -1 +0,0 @@
-Fixed Solana token transfer showing the lookup-table address as the recipient for ALT-referenced destinations.
diff --git a/core/.changelog.d/3446.fixed b/core/.changelog.d/3446.fixed
deleted file mode 100644
index 3939b499..00000000
--- a/core/.changelog.d/3446.fixed
+++ /dev/null
@@ -1 +0,0 @@
-Solana: allow chunkified addresses.
diff --git a/core/.changelog.d/6211.fixed b/core/.changelog.d/6211.fixed
deleted file mode 100644
index 3ae78f34..00000000
--- a/core/.changelog.d/6211.fixed
+++ /dev/null
@@ -1 +0,0 @@
-[T3W1] Fix menu closing after change of settings.
diff --git a/core/.changelog.d/6348.fixed b/core/.changelog.d/6348.fixed
deleted file mode 100644
index 789887f2..00000000
--- a/core/.changelog.d/6348.fixed
+++ /dev/null
@@ -1 +0,0 @@
-Avoid failing backup flow on I/O errors.
diff --git a/core/.changelog.d/6733.added b/core/.changelog.d/6733.added
deleted file mode 100644
index 813fbe4b..00000000
--- a/core/.changelog.d/6733.added
+++ /dev/null
@@ -1 +0,0 @@
-Ethereum: improved clear signing support.
diff --git a/core/.changelog.d/6941.fixed b/core/.changelog.d/6941.fixed
deleted file mode 100644
index 0e367e98..00000000
--- a/core/.changelog.d/6941.fixed
+++ /dev/null
@@ -1 +0,0 @@
-[T2B1,T2T1,T3B1,T3T1] Return an explicit error when try to derive seed on Bitcoin-only firmware.
diff --git a/core/.changelog.d/6984.fixed b/core/.changelog.d/6984.fixed
deleted file mode 100644
index 7f4b4089..00000000
--- a/core/.changelog.d/6984.fixed
+++ /dev/null
@@ -1 +0,0 @@
-[T3W1] Close FIDO2 error popup after 4 seconds.
diff --git a/core/.changelog.d/7065.fixed b/core/.changelog.d/7065.fixed
deleted file mode 100644
index 4b9b7bc8..00000000
--- a/core/.changelog.d/7065.fixed
+++ /dev/null
@@ -1 +0,0 @@
-Solana: show each instruction's program id when displaying details for unknown programs instead of a generic "Unsupported program" label.
diff --git a/core/.changelog.d/7101.added b/core/.changelog.d/7101.added
deleted file mode 100644
index 34a7ba1a..00000000
--- a/core/.changelog.d/7101.added
+++ /dev/null
@@ -1 +0,0 @@
-Tron: Claim voting rewards.
diff --git a/core/.changelog.d/7202.fixed b/core/.changelog.d/7202.fixed
deleted file mode 100644
index 887d0423..00000000
--- a/core/.changelog.d/7202.fixed
+++ /dev/null
@@ -1 +0,0 @@
-[T3W1] Fix device menu refresh.
diff --git a/core/CHANGELOG.T2B1.md b/core/CHANGELOG.T2B1.md
index 9bb229e5..c5643106 100644
--- a/core/CHANGELOG.T2B1.md
+++ b/core/CHANGELOG.T2B1.md
@@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
+## [2.12.2] (22nd July 2026)
+
+### Added
+- Ethereum: Improved clear signing support. [#6733]
+- Tron: Claim voting rewards. [#7101]
+
+### Fixed
+- Solana: Allow chunkified addresses. [#3446]
+- Avoid failing backup flow on I/O errors. [#6348]
+- Return an explicit error when try to derive seed on Bitcoin-only firmware. [#6941]
+- Solana: Show program id instead of 'unsupported program' label. [#7065]
+
+### Security
+- Ask user for confirmation of some previously hidden Solana instruction parameters.
+- Solana: Fixed token transfer recipient for ALT addresses.
+- Fix external input misidentification in bitcoin signing.
+- Reject new external outputs in bitcoin replacement transactions.
+
## [2.12.1] (17th June 2026)
### Added
@@ -345,6 +363,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#3440]: https://github.com/trezor/trezor-firmware/pull/3440
[#3442]: https://github.com/trezor/trezor-firmware/pull/3442
[#3445]: https://github.com/trezor/trezor-firmware/pull/3445
+[#3446]: https://github.com/trezor/trezor-firmware/pull/3446
[#3458]: https://github.com/trezor/trezor-firmware/pull/3458
[#3475]: https://github.com/trezor/trezor-firmware/pull/3475
[#3477]: https://github.com/trezor/trezor-firmware/pull/3477
@@ -430,6 +449,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6109]: https://github.com/trezor/trezor-firmware/pull/6109
[#6165]: https://github.com/trezor/trezor-firmware/pull/6165
[#6202]: https://github.com/trezor/trezor-firmware/pull/6202
+[#6211]: https://github.com/trezor/trezor-firmware/pull/6211
[#6225]: https://github.com/trezor/trezor-firmware/pull/6225
[#6228]: https://github.com/trezor/trezor-firmware/pull/6228
[#6247]: https://github.com/trezor/trezor-firmware/pull/6247
@@ -447,7 +467,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6597]: https://github.com/trezor/trezor-firmware/pull/6597
[#6601]: https://github.com/trezor/trezor-firmware/pull/6601
[#6709]: https://github.com/trezor/trezor-firmware/pull/6709
+[#6710]: https://github.com/trezor/trezor-firmware/pull/6710
+[#6733]: https://github.com/trezor/trezor-firmware/pull/6733
[#6759]: https://github.com/trezor/trezor-firmware/pull/6759
[#6780]: https://github.com/trezor/trezor-firmware/pull/6780
[#6843]: https://github.com/trezor/trezor-firmware/pull/6843
-
+[#6900]: https://github.com/trezor/trezor-firmware/pull/6900
+[#6941]: https://github.com/trezor/trezor-firmware/pull/6941
+[#6984]: https://github.com/trezor/trezor-firmware/pull/6984
+[#7065]: https://github.com/trezor/trezor-firmware/pull/7065
+[#7101]: https://github.com/trezor/trezor-firmware/pull/7101
+[#7202]: https://github.com/trezor/trezor-firmware/pull/7202
diff --git a/core/CHANGELOG.T2T1.md b/core/CHANGELOG.T2T1.md
index 303ef27e..2530e4a9 100644
--- a/core/CHANGELOG.T2T1.md
+++ b/core/CHANGELOG.T2T1.md
@@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
+## [2.12.2] (22nd July 2026)
+
+### Added
+- Ethereum: Improved clear signing support. [#6733]
+- Tron: Claim voting rewards. [#7101]
+
+### Fixed
+- Solana: Allow chunkified addresses. [#3446]
+- Avoid failing backup flow on I/O errors. [#6348]
+- Return an explicit error when try to derive seed on Bitcoin-only firmware. [#6941]
+- Solana: Show program id instead of 'unsupported program' label. [#7065]
+
+### Security
+- Ask user for confirmation of some previously hidden Solana instruction parameters.
+- Solana: Fixed token transfer recipient for ALT addresses.
+- Fix external input misidentification in bitcoin signing.
+- Reject new external outputs in bitcoin replacement transactions.
+
## [2.12.1] (17th June 2026)
### Added
@@ -18,6 +36,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Improved Tron TRX transfer flow. [#6520]
- Improve Stellar confirmations flows. [#6709]
+### Security
+- Fix device locking if only SD card protection is enabled.
+
## [2.12.0] (21st May 2026)
### Added
@@ -1123,6 +1144,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#3440]: https://github.com/trezor/trezor-firmware/pull/3440
[#3442]: https://github.com/trezor/trezor-firmware/pull/3442
[#3445]: https://github.com/trezor/trezor-firmware/pull/3445
+[#3446]: https://github.com/trezor/trezor-firmware/pull/3446
[#3458]: https://github.com/trezor/trezor-firmware/pull/3458
[#3475]: https://github.com/trezor/trezor-firmware/pull/3475
[#3477]: https://github.com/trezor/trezor-firmware/pull/3477
@@ -1291,6 +1313,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6165]: https://github.com/trezor/trezor-firmware/pull/6165
[#6186]: https://github.com/trezor/trezor-firmware/pull/6186
[#6202]: https://github.com/trezor/trezor-firmware/pull/6202
+[#6211]: https://github.com/trezor/trezor-firmware/pull/6211
[#6225]: https://github.com/trezor/trezor-firmware/pull/6225
[#6228]: https://github.com/trezor/trezor-firmware/pull/6228
[#6236]: https://github.com/trezor/trezor-firmware/pull/6236
@@ -1300,6 +1323,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6281]: https://github.com/trezor/trezor-firmware/pull/6281
[#6321]: https://github.com/trezor/trezor-firmware/pull/6321
[#6342]: https://github.com/trezor/trezor-firmware/pull/6342
+[#6348]: https://github.com/trezor/trezor-firmware/pull/6348
[#6349]: https://github.com/trezor/trezor-firmware/pull/6349
[#6358]: https://github.com/trezor/trezor-firmware/pull/6358
[#6370]: https://github.com/trezor/trezor-firmware/pull/6370
@@ -1320,8 +1344,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6707]: https://github.com/trezor/trezor-firmware/pull/6707
[#6709]: https://github.com/trezor/trezor-firmware/pull/6709
[#6710]: https://github.com/trezor/trezor-firmware/pull/6710
+[#6733]: https://github.com/trezor/trezor-firmware/pull/6733
[#6759]: https://github.com/trezor/trezor-firmware/pull/6759
[#6780]: https://github.com/trezor/trezor-firmware/pull/6780
[#6807]: https://github.com/trezor/trezor-firmware/pull/6807
[#6843]: https://github.com/trezor/trezor-firmware/pull/6843
[#6900]: https://github.com/trezor/trezor-firmware/pull/6900
+[#6941]: https://github.com/trezor/trezor-firmware/pull/6941
+[#6984]: https://github.com/trezor/trezor-firmware/pull/6984
+[#7065]: https://github.com/trezor/trezor-firmware/pull/7065
+[#7101]: https://github.com/trezor/trezor-firmware/pull/7101
+[#7202]: https://github.com/trezor/trezor-firmware/pull/7202
diff --git a/core/CHANGELOG.T3B1.md b/core/CHANGELOG.T3B1.md
index a622a9a6..e5fe3f4f 100644
--- a/core/CHANGELOG.T3B1.md
+++ b/core/CHANGELOG.T3B1.md
@@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
+## [2.12.2] (22nd July 2026)
+
+### Added
+- Ethereum: Improved clear signing support. [#6733]
+- Tron: Claim voting rewards. [#7101]
+
+### Fixed
+- Solana: Allow chunkified addresses. [#3446]
+- Avoid failing backup flow on I/O errors. [#6348]
+- Return an explicit error when try to derive seed on Bitcoin-only firmware. [#6941]
+- Solana: Show program id instead of 'unsupported program' label. [#7065]
+
+### Security
+- Ask user for confirmation of some previously hidden Solana instruction parameters.
+- Solana: Fixed token transfer recipient for ALT addresses.
+- Fix external input misidentification in bitcoin signing.
+- Reject new external outputs in bitcoin replacement transactions.
+
## [2.12.1] (17th June 2026)
### Added
@@ -247,6 +265,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#1120]: https://github.com/trezor/trezor-firmware/pull/1120
[#2299]: https://github.com/trezor/trezor-firmware/pull/2299
[#3324]: https://github.com/trezor/trezor-firmware/pull/3324
+[#3359]: https://github.com/trezor/trezor-firmware/pull/3359
+[#3370]: https://github.com/trezor/trezor-firmware/pull/3370
+[#3377]: https://github.com/trezor/trezor-firmware/pull/3377
+[#3411]: https://github.com/trezor/trezor-firmware/pull/3411
+[#3424]: https://github.com/trezor/trezor-firmware/pull/3424
+[#3434]: https://github.com/trezor/trezor-firmware/pull/3434
+[#3440]: https://github.com/trezor/trezor-firmware/pull/3440
+[#3442]: https://github.com/trezor/trezor-firmware/pull/3442
+[#3445]: https://github.com/trezor/trezor-firmware/pull/3445
+[#3446]: https://github.com/trezor/trezor-firmware/pull/3446
+[#3458]: https://github.com/trezor/trezor-firmware/pull/3458
+[#3475]: https://github.com/trezor/trezor-firmware/pull/3475
+[#3477]: https://github.com/trezor/trezor-firmware/pull/3477
+[#3496]: https://github.com/trezor/trezor-firmware/pull/3496
[#3503]: https://github.com/trezor/trezor-firmware/pull/3503
[#3509]: https://github.com/trezor/trezor-firmware/pull/3509
[#3541]: https://github.com/trezor/trezor-firmware/pull/3541
@@ -321,11 +353,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6109]: https://github.com/trezor/trezor-firmware/pull/6109
[#6165]: https://github.com/trezor/trezor-firmware/pull/6165
[#6202]: https://github.com/trezor/trezor-firmware/pull/6202
+[#6211]: https://github.com/trezor/trezor-firmware/pull/6211
[#6225]: https://github.com/trezor/trezor-firmware/pull/6225
[#6228]: https://github.com/trezor/trezor-firmware/pull/6228
[#6247]: https://github.com/trezor/trezor-firmware/pull/6247
[#6279]: https://github.com/trezor/trezor-firmware/pull/6279
[#6321]: https://github.com/trezor/trezor-firmware/pull/6321
+[#6342]: https://github.com/trezor/trezor-firmware/pull/6342
+[#6348]: https://github.com/trezor/trezor-firmware/pull/6348
[#6349]: https://github.com/trezor/trezor-firmware/pull/6349
[#6358]: https://github.com/trezor/trezor-firmware/pull/6358
[#6370]: https://github.com/trezor/trezor-firmware/pull/6370
@@ -338,7 +373,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6597]: https://github.com/trezor/trezor-firmware/pull/6597
[#6601]: https://github.com/trezor/trezor-firmware/pull/6601
[#6709]: https://github.com/trezor/trezor-firmware/pull/6709
+[#6710]: https://github.com/trezor/trezor-firmware/pull/6710
+[#6733]: https://github.com/trezor/trezor-firmware/pull/6733
[#6759]: https://github.com/trezor/trezor-firmware/pull/6759
[#6780]: https://github.com/trezor/trezor-firmware/pull/6780
[#6843]: https://github.com/trezor/trezor-firmware/pull/6843
-
+[#6900]: https://github.com/trezor/trezor-firmware/pull/6900
+[#6941]: https://github.com/trezor/trezor-firmware/pull/6941
+[#6984]: https://github.com/trezor/trezor-firmware/pull/6984
+[#7065]: https://github.com/trezor/trezor-firmware/pull/7065
+[#7101]: https://github.com/trezor/trezor-firmware/pull/7101
+[#7202]: https://github.com/trezor/trezor-firmware/pull/7202
diff --git a/core/CHANGELOG.T3T1.md b/core/CHANGELOG.T3T1.md
index 05ef3815..1094fb5a 100644
--- a/core/CHANGELOG.T3T1.md
+++ b/core/CHANGELOG.T3T1.md
@@ -4,6 +4,24 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
+## [2.12.2] (22nd July 2026)
+
+### Added
+- Ethereum: Improved clear signing support. [#6733]
+- Tron: Claim voting rewards. [#7101]
+
+### Fixed
+- Solana: allow chunkified addresses. [#3446]
+- Avoid failing backup flow on I/O errors. [#6348]
+- Return an explicit error when try to derive seed on Bitcoin-only firmware. [#6941]
+- Solana: Show program id instead of 'unsupported program' label. [#7065]
+
+### Security
+- Ask user for confirmation of some previously hidden Solana instruction parameters.
+- Solana: Fixed token transfer recipient for ALT addresses.
+- Fix external input misidentification in bitcoin signing.
+- Reject new external outputs in bitcoin replacement transactions.
+
## [2.12.1] (17th June 2026)
### Added
@@ -327,6 +345,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#2299]: https://github.com/trezor/trezor-firmware/pull/2299
[#3035]: https://github.com/trezor/trezor-firmware/pull/3035
[#3442]: https://github.com/trezor/trezor-firmware/pull/3442
+[#3445]: https://github.com/trezor/trezor-firmware/pull/3445
+[#3446]: https://github.com/trezor/trezor-firmware/pull/3446
+[#3458]: https://github.com/trezor/trezor-firmware/pull/3458
+[#3475]: https://github.com/trezor/trezor-firmware/pull/3475
+[#3477]: https://github.com/trezor/trezor-firmware/pull/3477
+[#3496]: https://github.com/trezor/trezor-firmware/pull/3496
[#3503]: https://github.com/trezor/trezor-firmware/pull/3503
[#3509]: https://github.com/trezor/trezor-firmware/pull/3509
[#3536]: https://github.com/trezor/trezor-firmware/pull/3536
@@ -444,11 +468,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6109]: https://github.com/trezor/trezor-firmware/pull/6109
[#6165]: https://github.com/trezor/trezor-firmware/pull/6165
[#6202]: https://github.com/trezor/trezor-firmware/pull/6202
+[#6211]: https://github.com/trezor/trezor-firmware/pull/6211
[#6225]: https://github.com/trezor/trezor-firmware/pull/6225
[#6228]: https://github.com/trezor/trezor-firmware/pull/6228
[#6247]: https://github.com/trezor/trezor-firmware/pull/6247
[#6321]: https://github.com/trezor/trezor-firmware/pull/6321
[#6342]: https://github.com/trezor/trezor-firmware/pull/6342
+[#6348]: https://github.com/trezor/trezor-firmware/pull/6348
[#6349]: https://github.com/trezor/trezor-firmware/pull/6349
[#6358]: https://github.com/trezor/trezor-firmware/pull/6358
[#6370]: https://github.com/trezor/trezor-firmware/pull/6370
@@ -462,7 +488,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6601]: https://github.com/trezor/trezor-firmware/pull/6601
[#6620]: https://github.com/trezor/trezor-firmware/pull/6620
[#6709]: https://github.com/trezor/trezor-firmware/pull/6709
+[#6710]: https://github.com/trezor/trezor-firmware/pull/6710
+[#6733]: https://github.com/trezor/trezor-firmware/pull/6733
[#6759]: https://github.com/trezor/trezor-firmware/pull/6759
[#6780]: https://github.com/trezor/trezor-firmware/pull/6780
[#6843]: https://github.com/trezor/trezor-firmware/pull/6843
-
+[#6900]: https://github.com/trezor/trezor-firmware/pull/6900
+[#6941]: https://github.com/trezor/trezor-firmware/pull/6941
+[#6984]: https://github.com/trezor/trezor-firmware/pull/6984
+[#7065]: https://github.com/trezor/trezor-firmware/pull/7065
+[#7101]: https://github.com/trezor/trezor-firmware/pull/7101
+[#7202]: https://github.com/trezor/trezor-firmware/pull/7202
diff --git a/core/CHANGELOG.T3W1.md b/core/CHANGELOG.T3W1.md
index 153c0c9d..48466638 100644
--- a/core/CHANGELOG.T3W1.md
+++ b/core/CHANGELOG.T3W1.md
@@ -4,6 +4,26 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
+## [2.12.2] (22nd July 2026)
+
+### Added
+- Ethereum: Improved clear signing support. [#6733]
+- Tron: Claim voting rewards. [#7101]
+
+### Fixed
+- Solana: Allow chunkified addresses. [#3446]
+- Fix menu closing after change of settings. [#6211]
+- Avoid failing backup flow on I/O errors. [#6348]
+- Close FIDO2 error popup after 4 seconds. [#6984]
+- Solana: Show program id instead of 'unsupported program' label. [#7065]
+- Fix device menu refresh. [#7202]
+
+### Security
+- Ask user for confirmation of some previously hidden Solana instruction parameters.
+- Solana: Fixed token transfer recipient for ALT addresses.
+- Fix external input misidentification in bitcoin signing.
+- Reject new external outputs in bitcoin replacement transactions.
+
## [2.12.1] (17th June 2026)
### Added
@@ -151,6 +171,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
- Exit pairing screen when already paired host connects. [#5897]
[#69]: https://github.com/trezor/trezor-firmware/pull/69
+[#3446]: https://github.com/trezor/trezor-firmware/pull/3446
[#5358]: https://github.com/trezor/trezor-firmware/pull/5358
[#5723]: https://github.com/trezor/trezor-firmware/pull/5723
[#5845]: https://github.com/trezor/trezor-firmware/pull/5845
@@ -188,6 +209,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6165]: https://github.com/trezor/trezor-firmware/pull/6165
[#6186]: https://github.com/trezor/trezor-firmware/pull/6186
[#6202]: https://github.com/trezor/trezor-firmware/pull/6202
+[#6211]: https://github.com/trezor/trezor-firmware/pull/6211
[#6225]: https://github.com/trezor/trezor-firmware/pull/6225
[#6228]: https://github.com/trezor/trezor-firmware/pull/6228
[#6247]: https://github.com/trezor/trezor-firmware/pull/6247
@@ -195,6 +217,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6279]: https://github.com/trezor/trezor-firmware/pull/6279
[#6281]: https://github.com/trezor/trezor-firmware/pull/6281
[#6321]: https://github.com/trezor/trezor-firmware/pull/6321
+[#6348]: https://github.com/trezor/trezor-firmware/pull/6348
[#6349]: https://github.com/trezor/trezor-firmware/pull/6349
[#6358]: https://github.com/trezor/trezor-firmware/pull/6358
[#6370]: https://github.com/trezor/trezor-firmware/pull/6370
@@ -215,8 +238,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6707]: https://github.com/trezor/trezor-firmware/pull/6707
[#6709]: https://github.com/trezor/trezor-firmware/pull/6709
[#6710]: https://github.com/trezor/trezor-firmware/pull/6710
+[#6733]: https://github.com/trezor/trezor-firmware/pull/6733
[#6759]: https://github.com/trezor/trezor-firmware/pull/6759
[#6780]: https://github.com/trezor/trezor-firmware/pull/6780
[#6807]: https://github.com/trezor/trezor-firmware/pull/6807
[#6843]: https://github.com/trezor/trezor-firmware/pull/6843
[#6900]: https://github.com/trezor/trezor-firmware/pull/6900
+[#6984]: https://github.com/trezor/trezor-firmware/pull/6984
+[#7065]: https://github.com/trezor/trezor-firmware/pull/7065
+[#7101]: https://github.com/trezor/trezor-firmware/pull/7101
+[#7202]: https://github.com/trezor/trezor-firmware/pull/7202
diff --git a/core/CHANGELOG.md b/core/CHANGELOG.md
index c7d552ae..7044b2be 100644
--- a/core/CHANGELOG.md
+++ b/core/CHANGELOG.md
@@ -4,6 +4,27 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
+## [2.12.2] (22nd July 2026)
+
+### Added
+- Ethereum: Improved clear signing support. [#6733]
+- Tron: Claim voting rewards. [#7101]
+
+### Fixed
+- Solana: Allow chunkified addresses. [#3446]
+- [T3W1] Fix menu closing after change of settings. [#6211]
+- Avoid failing backup flow on I/O errors. [#6348]
+- [T2B1,T2T1,T3B1,T3T1] Return an explicit error when try to derive seed on Bitcoin-only firmware. [#6941]
+- [T3W1] Close FIDO2 error popup after 4 seconds. [#6984]
+- Solana: Show program id instead of 'unsupported program' label. [#7065]
+- [T3W1] Fix device menu refresh. [#7202]
+
+### Security
+- Ask user for confirmation of some previously hidden Solana instruction parameters.
+- Solana: Fixed token transfer recipient for ALT addresses.
+- Fix external input misidentification in bitcoin signing.
+- Reject new external outputs in bitcoin replacement transactions.
+
## [2.12.1] (17th June 2026)
### Added
@@ -1274,6 +1295,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#3440]: https://github.com/trezor/trezor-firmware/pull/3440
[#3442]: https://github.com/trezor/trezor-firmware/pull/3442
[#3445]: https://github.com/trezor/trezor-firmware/pull/3445
+[#3446]: https://github.com/trezor/trezor-firmware/pull/3446
[#3458]: https://github.com/trezor/trezor-firmware/pull/3458
[#3475]: https://github.com/trezor/trezor-firmware/pull/3475
[#3477]: https://github.com/trezor/trezor-firmware/pull/3477
@@ -1442,6 +1464,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6165]: https://github.com/trezor/trezor-firmware/pull/6165
[#6186]: https://github.com/trezor/trezor-firmware/pull/6186
[#6202]: https://github.com/trezor/trezor-firmware/pull/6202
+[#6211]: https://github.com/trezor/trezor-firmware/pull/6211
[#6225]: https://github.com/trezor/trezor-firmware/pull/6225
[#6228]: https://github.com/trezor/trezor-firmware/pull/6228
[#6236]: https://github.com/trezor/trezor-firmware/pull/6236
@@ -1451,6 +1474,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6281]: https://github.com/trezor/trezor-firmware/pull/6281
[#6321]: https://github.com/trezor/trezor-firmware/pull/6321
[#6342]: https://github.com/trezor/trezor-firmware/pull/6342
+[#6348]: https://github.com/trezor/trezor-firmware/pull/6348
[#6349]: https://github.com/trezor/trezor-firmware/pull/6349
[#6358]: https://github.com/trezor/trezor-firmware/pull/6358
[#6370]: https://github.com/trezor/trezor-firmware/pull/6370
@@ -1471,8 +1495,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
[#6707]: https://github.com/trezor/trezor-firmware/pull/6707
[#6709]: https://github.com/trezor/trezor-firmware/pull/6709
[#6710]: https://github.com/trezor/trezor-firmware/pull/6710
+[#6733]: https://github.com/trezor/trezor-firmware/pull/6733
[#6759]: https://github.com/trezor/trezor-firmware/pull/6759
[#6780]: https://github.com/trezor/trezor-firmware/pull/6780
[#6807]: https://github.com/trezor/trezor-firmware/pull/6807
[#6843]: https://github.com/trezor/trezor-firmware/pull/6843
[#6900]: https://github.com/trezor/trezor-firmware/pull/6900
+[#6941]: https://github.com/trezor/trezor-firmware/pull/6941
+[#6984]: https://github.com/trezor/trezor-firmware/pull/6984
+[#7065]: https://github.com/trezor/trezor-firmware/pull/7065
+[#7101]: https://github.com/trezor/trezor-firmware/pull/7101
+[#7202]: https://github.com/trezor/trezor-firmware/pull/7202
diff --git a/core/embed/projects/prodtest/.changelog.d/+uptime.added b/core/embed/projects/prodtest/.changelog.d/+uptime.added
deleted file mode 100644
index d0a5d222..00000000
--- a/core/embed/projects/prodtest/.changelog.d/+uptime.added
+++ /dev/null
@@ -1 +0,0 @@
-Add `prodtest-uptime` command returning the device uptime in milliseconds.
diff --git a/core/embed/projects/prodtest/.changelog.d/6829.added b/core/embed/projects/prodtest/.changelog.d/6829.added
deleted file mode 100644
index 3a192041..00000000
--- a/core/embed/projects/prodtest/.changelog.d/6829.added
+++ /dev/null
@@ -1 +0,0 @@
-Introduce prodtest error codes.
diff --git a/core/embed/projects/prodtest/.changelog.d/7161.added b/core/embed/projects/prodtest/.changelog.d/7161.added
deleted file mode 100644
index f225fa20..00000000
--- a/core/embed/projects/prodtest/.changelog.d/7161.added
+++ /dev/null
@@ -1 +0,0 @@
-Add focused `tropic-stress-*` commands and `tropic-test-*` commands that also check operation results.
diff --git a/core/embed/projects/prodtest/.changelog.d/7161.deprecated b/core/embed/projects/prodtest/.changelog.d/7161.deprecated
deleted file mode 100644
index 9687b5b8..00000000
--- a/core/embed/projects/prodtest/.changelog.d/7161.deprecated
+++ /dev/null
@@ -1 +0,0 @@
-Deprecate `tropic-stress-test`. Use `tropic-stress-*` commands instead.
diff --git a/core/embed/projects/prodtest/CHANGELOG.md b/core/embed/projects/prodtest/CHANGELOG.md
index 180f8d6b..b0d71a9d 100644
--- a/core/embed/projects/prodtest/CHANGELOG.md
+++ b/core/embed/projects/prodtest/CHANGELOG.md
@@ -1,4 +1,14 @@
+## 0.3.8 [22nd July 2026]
+
+### Added
+- Introduce prodtest error codes. [#6829]
+- Add focused `tropic-stress-*` commands and `tropic-test-*` commands that also check operation results. [#7161]
+- Add `prodtest-uptime` command returning the device uptime in milliseconds.
+
+### Deprecated
+- Deprecate `tropic-stress-test`. Use `tropic-stress-*` commands instead. [#7161]
+
## 0.3.7 [26th March 2026]
### Added
@@ -219,3 +229,5 @@
[#6346]: https://github.com/trezor/trezor-firmware/pull/6346
[#6613]: https://github.com/trezor/trezor-firmware/pull/6613
[#6621]: https://github.com/trezor/trezor-firmware/pull/6621
+[#6829]: https://github.com/trezor/trezor-firmware/pull/6829
+[#7161]: https://github.com/trezor/trezor-firmware/pull/7161
Why this scored 70/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.