Veil-Project / veil

Veil-Project
MIT License
118 stars 91 forks source link

Wallet can't mint Zerocoin via UI (RPC works) #603

Open crypt0-fusi0n opened 5 years ago

crypt0-fusi0n commented 5 years ago

This is affecting the current master branch..

Here's what I did to produce the issue.

  1. Sent wallet some basecoins (made sure Automint was set to 10k so nothing was autominted)
  2. Minted a portion of the basecoins, the change went to CT.
  3. After waiting for confirmation so I can mint more zerocoins, UI displayed as per below gif. (Mint button is disabled with error msg on UI)
  4. Restarted the wallet but the problem persisted.

NOTE: mintzerocoin rpc still works fine.

Cantmintzerocoin

MisterKangaroo commented 5 years ago

Have the same issue with the actual master version... You can't mint as long as there is no 10.1 basecoin available, even if you have enough in CT or RingCT. Once you send 10.1+ to a basecoin address it works.

Version: actual master

OS: Ubuntu 18. basecoin needed 04

seanPhill commented 5 years ago

Is that video sped up? Did you actually click to mint and not even wait a second before clicking to mint from basecoin when you had no basecoins, and then shut it down without waiting? I don't have anything ready to test this with at the moment, but I have seen no change from the previously working zerocoin minting from the GUI. However, lately I have been using the Debug Console, because it is quicker. I'll check on a test machine once I get one going again.

I can't test anything at the moment, because that computer still says it has 41 minutes remaining on a MacOS update. And it's been saying that for 15 minutes. It went to 40 minutes and then recalculated back again!

crypt0-fusi0n commented 5 years ago

That video is in real time... except the part where I restarted the wallet (I paused the recording and resumed after wallet started back up)

MisterKangaroo commented 5 years ago

Guess error got introduced with the following commit: https://github.com/Veil-Project/veil/commit/46949fe276f3d7299c6f13ce3008d67b08eda534

@presstab

seanPhill commented 5 years ago

I think so. I NEVER had a problem minting from the GUI before that. I just didn't notice when it happened, because recently I've been minting with mintzerocoin Amount, which is so much easier, when you're already in the Debug Console.

crypt0-fusi0n commented 5 years ago

cool @MisterKangaroo ... looks like an easy fix.

veilgets commented 5 years ago

Bounty price: 325 Bounty Increased

veilgets commented 5 years ago

Developer: MatWaller

4x13 commented 5 years ago

This issue also stops Auto-minting from functioning, so is important to fix asap. It appears if you hold the 10.1 in basecoin, everything seems to function correctly, so may just be a check is blocking out the other coin types from minting

seanPhill commented 4 years ago

This relates to commit: https://github.com/Veil-Project/veil/commit/46949fe276f3d7299c6f13ce3008d67b08eda534 which relates to issue: https://github.com/Veil-Project/veil/issues/226

The problem is that the requirement was to make sure that there was enough Veil to mint at least one zerocoin. This was defined at 10.1 (although 10.01 should have been fine). The trouble begins when the balance is checked, only checking basecoin!!

This has been known by some in the community, that you can simply hit [enter] instead of clicking the button!

I don't think that disabling the button was ever an original requirement. It was only a suggestion that people get a warning that they don't have enough Veil to mint, in order to explain the fact that they couldn't mint. If they don't have enough, they already cannot mint, without disabling any button!

Only checking the basecoin balance, even when the basecoin checkbox is not ticked, breaks minting from stealth, although various people discovered the workaround of either usng the Debug Console, or hitting enter rather than the button.

If the warning is to remain, the word "basecoin" should be removed, unless the checkbox is ticked. If "basecoin" is to be mentioned, then it should change to "CT or RingCT" depending on the state of the checkbox.