Open Sourcing Multi-Pool Soft Staking Infrastructure with Merkle Proof Reward Distribution

Could you explain the update process and provide an example app ID so we can see the apps were updated?

I assume your flow was:

  • Emergency withdraw
  • Store all existing box data off-chain
  • Redeploy
  • Restore all box data per user in new app ID’s

This is the assumption since I don’t see an explicit update method in the TS contract. I tried to check for network requests where the App ID’s were available on your page, but they weren’t. This was a last resort since app ID’s per pool are not displayed anywhere as far as I’ve seen.

Edit: I found one actually, it doesn’t have any transactions from me but shows rewards I guess I had from the previous instance of the pool: https://explorer.perawallet.app/application/3517945745/?transaction_list_inner_as_tx=True&transaction_list_asset=3517945745&transaction_list_cursor=&is_last_page=True&display_block=True&display_date=True&last_block=0

Edit edit: It looks like the TEAL is present at first glance to prevent box deletions until a pool is deprecated. :+1:

The older pools still use the same PyTeal contract but new pools use the new Puya contract, there’s currently 2 pools using the new contract, the one you found and also the new Dolan pool

Also thank you Leo for finding a critical bug and letting me know the other day, good luck with your proposal

Of course, I appreciate your urgency in attending to it. Good luck to you as well.