Skip to content

Release v2.10.1

Choose a tag to compare

@sameh-farouk sameh-farouk released this 29 Sep 09:04
· 13 commits to development since this release
b950278

Release Notes

New Feature: Twin Ownership Transfer

A new two-party ownership transfer flow has been introduced for twins. This is especially useful if the mnemonic controlling a twin may have been leaked, allowing the owner to quickly transfer control to a new secure account.

  • Initiate transfer: Current owner requests transfer to a new account.
  • Accept transfer: The new account accepts to finalize.
  • Cancel transfer: Current owner can cancel a pending transfer at any time.
  • Balance handling: On acceptance, reserved balances tied to the twin are moved to the new owner, and ownership/indexes are updated.

Key Details

  • One pending transfer per twin at a time.
  • Transfer requires two-party consent (owner + recipient).
  • Defensive checks ensure consistency of ownership and accounting.
  • created_at timestamp stored for potential future expiry logic.

Events

  • TwinTransferRequested, TwinOwnershipTransferred, TwinTransferCanceled → each includes request_id, twin_id, from, and to.

Compatibility

  • Backward compatible, no storage migration required.

Security

  • Designed for rapid recovery in case of compromised credentials (leaked mnemonic).
  • Ownership and balances update atomically, ensuring integrity.

⚠️ Limitation

After ownership is transferred, it may take some time for the new public key used for RMB end-to-end encrypted communication to propagate across the network due to caching. During this window, users may experience temporary service degradation.

📑 Changelog

v2.10.1 (2025-09-29)

Full Changelog

📁 Other pull requests