Rusk Wallet v0.4.0
Pre-release
Pre-release
[0.4.0] - 2026-05-07
Added
- Select the active protocol transaction format when encoding propagated
transactions and decoding archived transaction bytes. - Add full-screen TUI mode as the default interactive wallet experience
- Add startup sync gate screen in TUI with cycle stage, progress bar, status stream, and block-height feedback
- Add chain tip height polling and display in TUI overview status
- Add explicit network indicator in TUI overview, using configured network name (including custom
--networknames) - Add
View Addressesdashboard action to show full shielded/public addresses in TUI
Changed
- Stop selecting propagated transaction envelopes from local hardfork height and use the stable client network encoding instead
- Improve TUI startup responsiveness by avoiding long blocking phases on initial sync
- Stabilize sync status transitions to reduce rapid
Synced/Syncingtoggling around normal block cadence - Rename dashboard action to
Import Different Walletand clarify that import replaces the current wallet (backup kept aswallet.dat.old) - Parallelize Phoenix note ownership scanning during sync across available logical cores
- Increase default transfer gas limit to
50_000_000and split built-in wallet actions into a150_000_000gas bucket for Boreas-era transaction costs - Delegate contract-id derivation to the canonical
dusk-coredeployment helper
Fixed
- Decode archived GraphQL transaction history by the stored envelope instead of the local hardfork schedule
- Derive Rues contract entity paths from
ContractIdbytes instead of hard-coding transfer/stake IDs - Route wallet GraphQL queries for propagation format detection through the
canonical/graphqlendpoint, removing the remaining dependency on the
legacy/on/graphql/queryroute - Restore the wallet setup option in interactive to create a new wallet when no wallet exists or when importing a different wallet
- Refuse remote
http://wallet service endpoints unless--allow-insecureis set, while keeping loopback HTTP available for local development - Batch
existing_nullifierssync queries to avoid large restore failures - Detect stale note cache (e.g., from a wiped local node) and reset it automatically before syncing
- Zeroize the validated mnemonic phrase immediately after CLI restore derives the wallet
- Create CLI mnemonic seed files with owner-only permissions on Unix
- Fix TUI stdout artifacting and stale frame residue after startup sync
- Ignore placeholder
block 0sync values so invalid heights are not shown in overview - Restore pre-submit balance checks in TUI command flow for clearer insufficient-balance feedback
- Fix new-wallet password screen cursor to follow the active input field
- Harden wallet prompt/TUI secret handling and terminal cleanup paths
- Fix TUI import/restore lock contention by closing the active wallet before importing a different one
- Clear stale cache when importing a different wallet and auto-retry connect on cache schema mismatch errors
- Avoid printing raw startup/offline connection warnings into the terminal buffer while TUI is active
- Fix Claim Reward info about the max amount & show
max: Unknownwhen stake reward lookup fails - Refresh TUI stake reward display after confirmed stake, unstake, and claim-rewards transactions