Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ZCash transparent release #577

Open
cypt4 opened this issue Jan 10, 2024 · 2 comments
Open

ZCash transparent release #577

cypt4 opened this issue Jan 10, 2024 · 2 comments
Assignees

Comments

@cypt4
Copy link

cypt4 commented Jan 10, 2024

Release Date/Target: 1.63

  • Release Date: End of Jan 2024

Summary:

We are going to announce Zcash transparent address support to the Zcash community.
Transparent addresses are very similar to bitcoin.
So we need to test general flows:

  1. Feature can be enabled using Enable BraveWallet ZCash support" flag in brave://flags.
  2. Account creation:
  • Zcash accounts for mainnet and testnet could be created. There should be a chooser to select desired account type network.
  • Multiple derived accounts per one seed phrase are supported.
  • No import\hardware import available yet. Zcash shouldn't be in options.
  • Accounts could be restored on the restored seed phrase. No discovery implemented yet so accounts should be manually created in this case.
  1. Sending on the mainnet\testnet networks:
  • Transparent t* addresses and unified addresses(u\utest) with transparent part are supported. Unified addresses without a transparent part are not supported(there should be a error).
  • Fee estimation should be same as the final one.
  • Blockexplorer TX url could be opened after transaction logged.
  • Outgoing TX should be added to the TX history. Status should be updated according TX status.
  • Unused receiver address related to the account should be shown when clicking deposit button. After this address receives money it becomes used, so new address should be generated.
  • Every outgoing transaction should have unique change address related to the sender account.
  • Sending should work correctly between accounts inside and outside the wallet.
  1. Balance:
  • Balance resolution should be correct when account has a number of used receiver\change addresses.
  • Balance should be updated after transaction completes.
  • Balance should have relative estimation in dollars.
  • After account is restored balance should be shown correctly.

Related GH issues/Documentation:

brave/brave-core#20145
brave/brave-core#19783
brave/brave-core#20351
brave/brave-core#20537
brave/brave-core#21150
brave/brave-core#21460

@srirambv srirambv self-assigned this Jan 11, 2024
@srirambv
Copy link
Contributor

srirambv commented Feb 8, 2024

Verification passed on

Brave 1.64.53 Chromium: 121.0.6167.139 (Official Build) nightly (64-bit)
Revision 191f7f23eaab918ac1a55a8328b891350364ca73
OS Linux
  • Verified test plan from issue description
    Feature can be enabled using Enable BraveWallet ZCash support flag in brave://flags.
      • Verified feature flag is available and disabled by default
      • Verified enabling the flag enables ZCash
        Zcash Flag
    1. Account creation
      Zcash accounts for mainnet and testnet could be created. There should be a chooser to select desired account type network.
      • Verified create ZCash account has a dropdown to select Mainnet and Testnet accounts
      • Verified able to create Mainnet account and Testnet account
      • Verified if ZCash is not enabled during onboarding then selecting ZCash on Buy screen shows account creation modal for both Mainnet and Testnet
      Onboarding Account Creation
      ZCashOnboarding.mp4
      ZCash.Account.creation.mp4
      Multiple derived accounts per one seed phrase are supported.
      • Verified multiple accounts can be created using the same seed phrase
      No import\hardware import available yet. Zcash shouldn't be in options.
      • Verified ZCash is not shown as an option to import account via private key or via hardware
      Account.Import.mp4
      Accounts could be restored on the restored seed phrase. No discovery implemented yet so accounts should be manually created in this case.
      • Verified accounts can be resored when seed is restored
      • Verified accounts get created in the same order during restore
      Account.Import.mp4
    2. Sending on the mainnet\testnet networks
      Transparent t* addresses and unified addresses(u\utest) with transparent part are supported. Unified addresses without a transparent part are not supported(there should be a error).
      • Verified unable to send transaction to unified address without transparent part
      • Verified able to send transaction to unified address with transparent part
      Unified-Non-Transparent Unified Transparent
      Unified-Non-transparent.mp4
      Unified-Transparent.mp4
      • Verified able to send to transparent address on Guarda Wallet, hash
      Fee estimation should be same as the final one.
      • Verified fee estimation is same after the transaction
      • Verified fee estimate shown in confirmation panel and on block explorer are same
      Blockexplorer TX url could be opened after transaction logged.
      • Verified able toopen block explorer transaction URL after transaction is logged
      • Note: Ran into Internal error a few times when reloading the transaction block explorer URL which is known
      Outgoing TX should be added to the TX history. Status should be updated according TX status.
      • Verified outgoing transaction is added to transaction history
      • Verified transaction status from submitted to confirmed is updated correctly
      Unused receiver address related to the account should be shown when clicking deposit button. After this address receives money it becomes used, so new address should be generated.
      • Verified receiver address is shown on clicking deposit button
      • Verified receiver address changes after a send transaction is completed
      Every outgoing transaction should have unique change address related to the sender account.
      • Verified outgoing transaction changes address related to sender account
      Sending should work correctly between accounts inside and outside the wallet.
      • Verified sending between Brave Wallet accounts work as expected
      • Verified sending between Brave Wallet and YWallet work as expected
    3. Balance
      1. Balance resolution should be correct when account has a number of used receiver\change addresses.
      2. Balance should be updated after transaction completes.
      • Verified sending account balance updates after transaction completes
      • Verified receiving account balance also updates after transaction completes
      3. Balance should have relative estimation in dollars.
      • Verified balance shows relative estimation in dollars
      accountbalance accountbalance1
      4. After account is restored balance should be shown correctly.
      - Verified restoring accounts restores balance
      AccountRestore.mp4

Logged issues

@cypt4
Copy link
Author

cypt4 commented Feb 9, 2024

brave/brave-browser#35883 - Wrong transparent address is extracted from unified address

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants