yoroi-frontend
yoroi-frontend copied to clipboard
Pool is shown as UNKNOWN in delegator dashboards after metadata has been updated in a valid manner when past URLs are reused (even in alternation)
Internal/External External otherwise.
Summary Pool is shown as UNKNOWN for days in delegator dashboards after metadata has been updated in a valid manner when past URLs are reused, even when URLs are used in an alternate fashion.
Steps to reproduce Steps to reproduce the behavior:
- Change pool description in the metadata on-chain in a valid manner using URL A
- Verify Daedalus has picked up the change
- Verify adapools.org has picked up the change
- Verify pooltool.io has picked up the change
- Verify cardanoscan.io has picked up the change
- Double check pool metadata settings at pool.vet
- Download metadata file from registered URL to shell with e.g. wget and double check hash with cardano-cli
- Double check there are no SMASH API errors
- Double check SMASH server is uptodate
- Check Yoroi delegation dashboard is OK
- Change pool description again using a new URL B and repeat steps 1 to 10
- Change pool description again reusing URL A and repeat steps 1 to 10 with new hash and new description
- Notice error in Yoroi Dashboard, pool is shown as UNKNOWN POOL (On Mobile "GO TO WEBSITE" Button is broken as well) for multiple days as Yoroi detects a hash mismatch between the new file content of URL A and the for URL A stored old hash and aborts
- Re-run modification transaction with no change in data with URL A
- UNKNOWN bug is fixed within 24 hours by submitting the transaction with the old URL twice
Expected behavior Yoroi updates valid pool metadata in the same efficient manner as other wallets and tools by refreshing with the new hash and new description with a reused alternate URL, provided this URL has not been used in the current valid registration.
Screenshots and attachments
I had this issue with STR8 pool, ID: 000006d97fd0415d2dafdbb8b782717a3d3ff32f865792b8df7ddd00. I updated the description in metadata on June 5th 17:13 UTC:
Daedalus wallets I checked were quick to update (validating metdata hash) the description on the same day within minutes, as was adapools, pooltool, and cardanoscan I checked.
Pool.vet check was ok as well:
wget https://straightpool.github.io/about/poolmeta.json
cardano-cli stake-pool metadata-hash --pool-metadata-file poolmeta.json
returned the correct hash as well 45e9013747baa8d48f392a907b0299f519e8fd4eaa7453f1fcc70780148cfbf2
There were no SMASH API errors:
https://smash.cardano-mainnet.iohk.io/api/v1/errors/000006d97fd0415d2dafdbb8b782717a3d3ff32f865792b8df7ddd00
SMASH was up-to-date:
https://smash.cardano-mainnet.iohk.io/api/v1/metadata/000006d97fd0415d2dafdbb8b782717a3d3ff32f865792b8df7ddd00/45e9013747baa8d48f392a907b0299f519e8fd4eaa7453f1fcc70780148cfbf2
Yet, Yoroi showed UNKNOWN POOL to delegators in the Dashboard (in both Desktop and Android Yoroi wallets), the delegation list fed by adapools.org is fine
Check-ins with display of UNKOWN POOL:
- Negative check on June 15th 18:11 UTC, more than 10 days
- Resubmitted transaction on June 15th 21:30 UTC
- Fixed: June 16th 06:20 UTC
Additional context Instead of creating a new metadata file for each description change, I hosted two metadata files "poolmeta.json" and "poolmetadata.json" and alternate between those two, expecting this to work. When I switched to using "poolmeta.json" again (last use was in July 2020) it had a different description and hash from what the backend in Yoroi has seen previously.
The Yoroi backend detected a hash mismatch with the first modification run, Yoroi backend remembered the hash for the old version of URL A and expected the new file content of the old URL to match, this of course failed. The first run most likely updated the hash in the backend so after the next re-registration run the now updated stored hash for URL A matched the new file content.
As a workaround to avoid this issue with Yoroi dashboard the same URL for poolmeta data should never be re-used not even in an alternate fashion or if it is reused the modification transaction should be submitted twice in short succession.
The Yoroi backend uses a number of servers so if after the fix not all wallets show the new metadata correctly other servers shall fall in line in a few days at most as a pure caching issue remains.
My pool is having the same issue.
Exactly same issue our pool "ADASquirrel" Ticker [SQRL] Pool vet output "ALL GREEN"
https://pool.vet/#c9a397b8aa1d963030999d4edfd0f809f290f9899c73dfa1ad3a6d70
Daedalus=OK
Yoroi PC (CHROME) = Unknown Pool
Yoroi Iphone = Unknown Pool
This is really frustrating, especially for a new little stake pool trying to find new delegators :-(
After some days ... Pool still unknown ... Any news ?
My pool has recovered from the condition. I want to estimate it took around 5 days to recover.
Been having the exact same issue with our pool ASPEN for the past few days. Is the solution to just wait?
-Just noticed the additional context in OP. Thanks for the detailed post and update! Really frustrating...
I think the solution is just waiting . . . but i think that there's some BUG !!! :-( Not really fair for little stake pool trying to find new delegators :-(
Oh yea, @adasquirrel01 , we've been losing delegators in a steady stream for the past 36 hours or so. This may seem like a trivial UI bug to the Yoroi team, but we're losing a lot of hard-earned delegators due to this UI issue that neither Daedalus nor PoolTool have.
I previously reported that the issue went away, but now it's back. The Yoroi wallet shows "Stake Pool Delegated UNKNOWN POOL" when delegated to my pool.
I see the issue via frontend as well; a delegator brought it up to my attention. Pool is still searchable from delegation list. but delegation-dashboard shows as unknown.
However, after just refreshing yoroi... at 9:46 EST it now shows the correct name and no longer says UNKNOWN POOL.
8 day . . . STAKE POOL IS STILL UNKNOWN !!!!!!
Still unknown on Yoroi mobile, stille unknown on Yoroi Desktop !!!
:-(
8 day . . . STAKE POOL IS STILL UNKNOWN !!!!!!
Still unknown on Yoroi mobile, stille unknown on Yoroi Desktop !!!
:-(
Yes it is really a Yoroi backend issue. I have contacted the Yoroi team they are looking into this.
Thanks a lot ! We've just 12 little delegates so far, and i'm scared to loose some of them :-(
Hello all. Elite Stake Pool is experiencing the same issue with Elite Stake Pool 1. Our pool displays as unknown and is perfectly fine everywhere else (poolstats, pooltool, adapools, pool.pm, Daedalus etc)
We are very concerned that this will impact our delegate's confidence in the pool and will therefore potentially re-delegate elsewhere. We will keep an eye on this and report back when it rectifies but obviously, we don't want to see this every metadata change :(
Is there an update on this issue please?
From 12 to 11 Delegators now . . peoples start to loose trust in us . . . after 10 days !!! STILL UNKNOWN !! THIS IS CRAZY !!! THERE'S NO WAY TO SURVIVE AS LITTLE POOL :-(
ANY UPDATES ??
Update: Last night I started debugging this with the very supportive Yoroi team, thank you for being on top of this! There are multiple reasons a pool can be displayed as UNKNOWN. The team is fully aware this is very frustrating. So far known and confirmed issues:
- Metadata file is invalid
- Metadata file is not yet fully synched through all caches
Normally, the issue fixes itself after a couple of days. By the principle of exclusion I try to identify what is unique to the Yoroi dashboard to cause this prolonged issue. Will update when I know more.
Is there any update from the Yoroi team directly? I have sent a support ticket to them but not heard anything. It would be nice to hear from Yoroi/Emurgo directly?
This issue is still impacting us and as stated the meta data file is not invalid. Pool.Vet shows it is ok, as does poolstats.org, pooltool.io, adapools, pool.pm, Daedalus etc)
If metadata is valid on Pool.vet . . . problem is 100% Related to CACHE !!! Now i see the pool on my smartphone (SQRL) but i still see UNKNOWN pool on the Desktop APP ! Hope this help !
fyi, our pool (Elite Stake Pool 1) shows as Unknown within the Chrome extension AND Android App AND IoS app. - The "Go to Website" button also does not work while the status is "Unknown Pool"
fyi, our pool (Elite Stake Pool 1) shows as Unknown within the Chrome extension AND Android App AND IoS app. - The "Go to Website" button also does not work while the status is "Unknown Pool"
Yup same here, it is a Yoroi backend issue so two frontends to the same backend should behave the same.
I fixed the problem within 24 hours by re-running the modification transaction. Root cause for my issue has been isolated, issue updated.
Thank you for the update Straightpool
Same solution worked for us on the ASPEN pool. Thanks for the workaround @Straightpool ! We owe you some 🍻 at the next Cardano summit ;)
@Straightpool , thank you for the extremely detailed description and the reproduction instruction! 👍
Still blocked by the smash issue