Skip to content

2.3.0-beta

Latest

Choose a tag to compare

@Jacksper13 Jacksper13 released this 22 Jun 15:56
35fb91a
image

What's Changed

Envoy 2.3.0 is a major release packed with new features and improvements. This release introduces a redesigned Send flow, the ability to transfer funds between your own accounts without copy-pasting addresses, message signing with Envoy, a new Address Explorer, sub-sat fee rates, and adjustable QR code density for faster Passport signing. We've also added support for custom block explorers, improvements in pairing Passport Prime devices, and manual account rescans. Under the hood, this release brings major Passport Prime pairing and Bluetooth reliability improvements, security fixes, dozens of dependency security updates, and a long list of bug fixes across coin control, fee picking, onboarding, navigation, and translations.

For more details on each of the changes, keep reading below!

New Features

  • You can now use the redesigned Send flow, with a clearer, faster transaction-building experience

  • You can now Transfer funds directly between your own Envoy accounts, without having to copy and paste addresses

  • You can now craft messages in Envoy for Passport, for example as proof you control a particular address

  • You can now browse the full list of receive and change addresses for any account using the new Address Explorer

  • You can now choose sub-sat fee rates, with full support across all Foundation public servers

  • You can now adjust QR code density when signing transactions with Passport, dramatically speeding up large multi-input signing flows

  • You can now set a custom block explorer in Envoy

  • You can now manually rescan accounts to recover transactions and balances after migrations or other syncing issues

Improvements

  • The fee picker has been polished with new info banners, with improvements done to the estimated times, and fiat value now updates as the fee selection changes

  • Many previously hardcoded strings across the QuantumLink transfer flow, region pickers, onboarding, the Azteco modal, toasts, exchange rate labels, and testnet texts have been translated

  • Improved Portuguese time translations and completed missing translations across Spanish, Catalan, and Portuguese

  • Redesigned existing warning messages and connection dialogs across the app for clarity and consistency

  • Passport Prime accounts now derive their color from the account index, so each Prime account gets a distinct color instead of every account showing the same LightCopper

  • The Receive screen and descriptor card have been updated to use the latest pill button design

  • Improved the design of the "cancel transaction" screen so it matches the rest of designs in the app

  • Redesigned the three dot menus to look cleaner

  • The close (X) button on the QR scanner now has a larger tap target so it's easier to dismiss

  • Envoy now sends an extra balance graph update right after onboarding completes, so the graph appears fully refreshed instead of showing "Last Update 2 mins ago"

  • Envoy 2.3.0 is now compliant with Android's 16 KB page size requirement

  • Number formatting throughout Envoy now follow more consistent grouping, spacing, and coloring conventions

  • Transaction details now include the number of confirmations alongside the "Confirmed" status after tapping to expand

  • Added a dedicated dialog to a failed-PSBT error that previously threw an unexpected system error

  • Improved the account loading UI to more clearly communicate what's happening and to easier distinguish it from an account with hidden balance

  • The 24-word seed input screen now uses one box per row, matching the seed-quiz layout for easier reading and entry for users with extreme levels of zoom

  • Envoy now supports pairing to a specific Passport Prime device when there are multiple Primes nearby, using the device name embedded in the pairing QR

  • Envoy now correctly handles unpair events from KeyOS, and shows a clear "paired but not connected" state when Passport Prime is out of range or Bluetooth is off

  • Added a deferred deeplink flow for mini-clip onboarding for iOS users that didn't have envoy installed the first time they scan Passport Prime's QR

  • Hid the onboarding setup option for Passport Core firmware versions before 2.3.5

  • Added a warning modal that appears when receiving to a mobile hot wallet and you have at least one Passport paired, to make it clear that is not the account secured by Passport

  • Added an option to resurface all previously dismissed "don't show again" popups

  • Added drag-and-drop reordering for paired devices, matching the behavior on the accounts screen

  • Added Bitaroo as a public Electrum server option

  • Updated several dependencies to address security advisories, including multiple high-severity rust-openssl issues, libcrux-ml-dsa AVX2 signature verification, rustls-webpki CRL handling, AWS-LC PKCS7 certificate validation, and additional issues in webpki, bytes, rand, and the rsa crate

Bug Fixes

  • Fixed a critical Passport Prime security check (SCV) vulnerability where a device error response could be incorrectly reported as a successful verification

  • Fixed a Magic Backup server vulnerability that allowed unauthenticated listing, downloading, and deletion of backup data. We have the certainty this has not been exploited in the wild and a generous bounty was paid to the researcher that responsibly disclosed it. Thank you.

  • Fixed a bug where starting a new Keycard backup and backing up before completing it could erase the previous Shamir share form Envoy, leaving the user without a valid backup

  • Fixed the NGU server price endpoints, which were failing for several fiat currencies

  • Fixed a bug where a passphrased account from Passport Prime would disappear from Envoy after the device was reconnected

  • Fixed the UR transfer progress calculation so the percentage is now based on actual received-vs-expected bytes

  • Addressed three medium-severity findings from the ngwallet security audit: Electrum TLS domain validation is no longer disabled when a SOCKS proxy is configured, malformed untrusted PSBT scripts no longer panic the parser, and "do not spend" UTXO locks are properly enforced even for selected outputs

  • Hardened Bluetooth auto-reconnection between Passport Prime and Envoy, which could previously fail to re-establish reliably after sleep or backgrounding

  • Fixed a bug where the "What's new in ..." button could open a 404 GitHub page after updating firmware from settings

  • Fixed a bug where Envoy could continue showing a firmware version as available after it had been pulled from the release channel

  • Fixed a bug where account balances would briefly show 0 when pairing or removing a device

  • Fixed an Insufficient Funds error that could appear for some users even when the wallet had enough balance to cover the transaction

  • Fixed a bug where confirmed transactions could stay stuck in the "awaiting confirmation" state until the app was force-closed and reopened

  • Fixed a regression where the firmware-update red dot would not appear after pairing a Founder's Edition Passport

  • Fixed a regression where the Secure Bluetooth indicator was missing its icon

  • Fixed a visual glitch where the bottom navigation icons briefly appeared behind the hamburger menu while it was closing

  • Fixed a rare crash on iOS caused by Tor

  • Fixed a bug on iOS where the seed could persist after the app was reinstalled, causing the "Set up Mobile Wallet" screen to be skipped

  • Fixed a bug where the wrong Passport Prime icon could appear when pairing an account before the device itself

  • Fixed a rare bug where the screen could turn black after dismissing the Tor toast

  • Fixed a bug where some seed words were displayed too small to read on the view-seed screen

  • Fixed a bug where activity transactions could appear out of chronological order

  • Fixed a bug where the Save button in the add-note popup was hard to tap because the popup was not scrollable on big zoom levels

  • Fixed a bug where tapping back twice after creating a hot wallet would land on an unintended screen

  • Fixed a bug on Android where the back gesture did not behave correctly during coin selection review, the send screen, and the About screens

  • Fixed a bug where the camera would fail to close after a successful QR scan that followed a previous scan error

  • Fixed a regression where the network (testnet/mainnet) preference was not respected when restoring a backup from file

  • Fixed a bug where Envoy could not connect to a Fulcrum server over TLS

  • Fixed a bug where longer seed words could be truncated in the view-seed modal

  • Fixed a crash that could occur when scanning a random unrelated QR code during the Passport Security Check

  • Fixed a bug where the Prime version update message could be incorrect after a user cancelled an update

  • Fixed a layout bug on Android where a button could be hidden behind the system navigation bar

  • Fixed a bug where the incoming BTC graph data could stop updating on Passport Prime after pairing

  • Fixed a bug where long-pressing the amount field to paste non-numeric content could set the fiat value to 0

  • Fixed a bug where the keyboard could open unexpectedly on the Magic Backup screen after exiting the personal node Privacy screen

  • Fixed a bug where an old bottom-sheet modal could reappear unexpectedly

  • Fixed a bug where the Devices screen would flash and refresh whenever a new QuantumLink connection was established

  • Fixed a visual bug where deleting the mobile hot wallet account could turn the app black; users are now correctly routed to the Backups screen

  • Fixed a bug where the fee picker could jump unexpectedly between very different sats/vbyte values

  • Fixed a minor visual bug showing a stray dotted line in the UI

  • Fixed an incorrect icon in the onboarding scanner animation, which now shows a device instead of a bare QR

  • Fixed spacing on the Backups screen when Magic Backup was turned off

  • Fixed a bug where the Retry button did not work after an invalid QR scan during pairing

  • Fixed a bug where a renamed Passport Prime name was not stored in Magic Backup, causing the name to revert to the default after restore

  • Fixed an Android camera leak by checking camera status before each QR plugin call

  • Fixed a bug where Envoy would ping Vimeo over the network in Tor mode even when no video was being loaded

  • Fixed a bug where a repeated word could appear in the seed verification quiz

  • Fixed an unnecessary scrollbar that appeared in some Spanish-localized screens due to header overflow

  • Fixed a bug where account swipe bubbles could get stuck after a vertical scroll started on top of them