Meta Pool - a closed source ICP liquid staking protocol, making APY promises it doesn't keep... 🤔

Lots of questions for Meta Pool, and no obvious place to ask them at the moment.

As a liquid staking solution (that therefore inevitably aims to take on important NNS governance responsibilities), I think it’s vital for the community to be able to understand the ins and outs of this project sooner rather than later.

I’ve created this topic to get a discussion going around Meta Pool, and hopefully get some answers :slight_smile:

First few questions:

  • Where’s the source code (all of it, or is some closed source)?
    • Update: It’s a closed source solution (not visible or verifiable by the community). Developed in Mexico. Answer graciously provided by @cristian-zam (thank you). Some components appear to be open source (StakedICP source code) - thank you @LuzMargarita for sharing this.
  • Where are the canisters, and who controls them?
  • What neuron is Meta Pool using for voting, how do they vote and/or what neuron(s) do they follow, and who has the power to make (and change) that followee decision?
  • How is the APY calculated (I’ve seen it switch from ‘undefined’, to ‘20%’, to ‘8%’, all within 24 hours)? How does this relate to the APY shown here (and in fact, how does it relate to that project)?

If you’re reading this and have some answers, please post them, or tag people who you think would know.

Thank you :pray:


Other liquid staking solutions were quick to provide a place for critical discussion (e.g. WaterNeuron - which has now been adopted as an SNS, StakeGeek - which has recently bowed out)

1 Like

To hand over your ICP to a closed source centralized entity for liquid staking is the height of irresponsibility

1 Like

Hey @cristian-zam, I hope you don’t mind me reaching out to you. After a little bit of googling I saw that Meta Pool has some sort of connection to ICP Hub Mexico. Are you able to fill in any blanks, or tag people who may be able to? :pray: (maybe I have the wrong end of the stick)

1 Like

Hi @Lorimer of course I can share with you the information I know :raised_hands:
Metapool is a Liquid Stake solution built in Mexico your code is closed so I don’t know how your canisters works, your APY calculation or how gonna use or distribute the voting power.

I can put you in touch with people in metapool @LuzMargarita can connect you with the developer team or give you more answers :pray:

1 Like

Thanks Cristian, I really appreciate your quick response. Definitely keen to get more info and ask some further questions. Thanks for tagging @LuzMargarita. I’ll await further info :slight_smile:

2 Likes

@0xAegir are you able to clarify how Meta Pool relates to StakedICP? If you’re able to answer any of the questions above that would be awesome.

1 Like

Hi Lorimer! Thanks for opening this thread, we are getting things ready on our end to have an official launch and we surely will be posting a Meta Pool thread for the community. Let me give answer your questions:

Where’s the source code (all of it, or is some closed source)?

Where are the canisters , and who controls them?
What neuron is Meta Pool using for voting, how do they vote and/or what neuron(s) do they follow, and who has the power to make (and change) that followee decision?

+I shall get the dev team to give you a more complete answer but I can give you a list of the names of the neurons:

$STACK - 8yeargangDAO - Always Rejects - Anvil - Arthur’s Neuron (used to be cycle_dao) - Aviate Labs - B3Pay - CodeGov - CryptoIsGood - ELNA AI - GEEKFACTORY - Gold DAO - ICDevs.org - ICLight.io - ICP Hub Bulgaria - ICP Hub México - ICP Hub Poland - ICPL.app - ICPMANUAL - Inactive (Request Removal) - The Fools’ Court - Isaac Valadez - Jerry Banfield - John Wiegley - Krzysztof Żelazko - LORIMER - NeuronPool - Nicolas.ic - OpenChat - Paul Young - Rakeoff.io - RawTech Venture - Smaug’s Neuron for Retail Investors - Sonic AMM - Synapse.vote (NEW) - Synapse.vote (original) - Taggr Network - The Accumulators’ Neuron - WaterNeuron - ZenithCode - ysyms

How is the APY calculated (I’ve seen it switch from ‘undefined’, to ‘20%’, to ‘8%’, all within 24 hours)?

+We were having some display problems when getting the data from the APY but we fixed those frontend errors that appeared in the first hours.

How does this relate to the APY shown [here ] (and in fact, how does it relate to that project)?

is the same contract, it is now under Meta Pool’s control and has been reviewed and audited:

BlockApex | Meta Pool - Docs

The contract has its own cron-job that basically does the same calculation for the different chains within the Meta Pool, stores the price and estimates the APY.
It takes based on the rewards of the last period.

I hope this helps to clarify some of your doubts, you can also contact us through our official discord or telegram in case you need more information about the protocol.

PD: In the Discord/Telegram channels the development team will be able to answer you

2 Likes

Thanks @LuzMargarita, I really appreciate your response :slight_smile: Apologies if I’ve jumped the gun, but I see that Meta Pool for ICP is already running, and I felt a need to quickly get a handle on the essentials.

I see that this is based on the StakedICP solution. Is this the complete source code that Meta Pool is using, or are there other components? Perhaps I misinterpreted what Cristian wrote. Are you saying that Meta Pool’s solution is completely open source?

Thank you. This is important to be able to verify that the canisters are running the expected source code, who the controllers are etc.

Regarding the neurons, you’ve listed a lot there (including my one). Is the Meta Pool neuron (that’s accruing voting rewards) currently following all of those known neurons?

Any further info that would help with viewing/verifying ICP TVL etc. would be very much appreciated. Thanks again :pray:

Thanks for explaining @LuzMargarita. I also noticed that the APY was displaying 10% for the last few days but is now at 14%. Would you be able to share the variables that are involved in this calculation? Other than TVL, what other information is needed to derive the APY that Meta Pool advertises for ICP? Or is this still being tweaked?

Hi Lorimer! No problem, actually it is good to have the feedback from the community. I´m Pablo by the way, I handle ops at Meta Pool.

Like you said the stakedICP solution is the code that we are controling and is open source.

To your question regarding the neurons, yes! The protocol canisters deposit the ICP into those neurons in the NNS to earn NNS voting rewards. The canisters manage and rebalanced the neurons to maintain the liquidity and yield profile of the protocol.

This is the stICP canister ID qfr6e-biaaa-aaaak-qafuq-cai

As for the TVL, the devs are working to put that infomation on our stats, in Meta Pool we put all the relevant on chain metrics from the protocol in stats.metapool.app , so users can easily check on them in real time. We should be able to add the ICP stats next week if everything goes smooth.

Don´t hesitate to ask or reach us in our DS or TG groups that Luz posted. Regards

1 Like

Hi @Pablo, thanks for getting in touch.

Is this the entirety of Meta Pool’s ICP liquid staking solution (the old StakedICP that’s been acquired)? If I were to build the solution here should I expected the WASM hash to match that currently running by canister qfr6e? (running here)

The canister seems to be out of sync with what Meta Pool is providing. it’s currently displaying 12.15%.
image
Meta Pool’s main page says differently:


Which one are users supposed to trust? I keep seeing these numbers jump around significantly without any significant change in TVL.

UPDATE: This morning both the StackedICP canister and the Meta Pool front-end are displaying 9.25%!...

Both in sync now, but a wild departure from the previous figure, and TVL literally has remained static - what’s going on behind the scenes?! If I staked yesterday with the promise of a 14% APY (all other things being equal) how can a drop to 9.25% be justified. What happened?

Does the Meta Pool dev team reserve the right to change the APY up and down as they see fit?


Thanks @Pablo. I think the IC community should benefit from answers to these questions as they’re made available. I believe this forum is the best place for these questions (I have plenty more, but I’ll pace them out to avoid overloading you) :slight_smile: I appreciate you making yourself available to provide some clarity.

1 Like

Just to add to the above, I’ve just seen this →
image

You’ve currently provided one of the canisters @Pablo, but are you able to share and describe the rest (such as the ones ‘rebalancing’ the collection of neurons with varying dissolve delays). How does that process work - does this explain why the APY keeps changing?

Could you share the ratios that are deposited into each of the 16 neurons? The actual neuron IDs would be best, so I can verify (I’m also still unclear on who those neurons are following and/or how their NNS votes are informed).

It sounds like there’s a very real danger of a bank run scenario. Am I correct in understanding that if a sufficient number of users wanted to withdraw their ICP, the early ones would be lucky and receive ICP quickly (benefitting from the ICP recently deposited by other users), but the late ones may need to wait much longer, and the very unlucky ones will need to wait up to 8 years to see their ICP again?

1 Like