-
Notifications
You must be signed in to change notification settings - Fork 215
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
Contract Upgrade: V28 ProvisionPool and V14 Bank #10395
Comments
Thanks for creating the issue @Chris-Hibbert . A few questions here; When I read
|
Yep. The point of adding them to upgrade.go is that they will actually upgrade, and their incarnations will increment. So the test will need to be updated. I think it would be great to test both an existing and a new currency.
Turadg's suggestion is totally reasonable.
I don't think this test needs to survive after the next upgrade. It would normally go in |
Alright I'll start working on updating tests with Turadg's suggestion.
Thanks, I'll put the new tests under |
…grade Refs: #10395 fix: format fixes
Change requests to the PR indicates a dependency #10514 |
…grade Refs: #10395 fix: format fixes
…grade Refs: #10395 fix: format fixes
…grade Refs: #10395 fix: format fixes
…grade Refs: #10395 fix: format fixes
Make sure the handler returned from E(creatorFacet).makeHandler() is durable and provisionPool is upgradable multiple times. Refs: #10425 Refs: #10564 fix: remove unnecessary comment chore: get rid of ephemera, address change requests Refs: #10395 Refs: #10425 fix: drop trace chore: address change requests
Make sure the handler returned from E(creatorFacet).makeHandler() is durable and provisionPool is upgradable multiple times. Refs: #10425 Refs: #10564 fix: remove unnecessary comment chore: get rid of ephemera, address change requests Refs: #10395 Refs: #10425 fix: drop trace chore: address change requests fix: rebase fixes
Make sure the handler returned from E(creatorFacet).makeHandler() is durable and provisionPool is upgradable multiple times. Refs: #10425 Refs: #10564 fix: remove unnecessary comment chore: get rid of ephemera, address change requests Refs: #10395 Refs: #10425 fix: drop trace chore: address change requests fix: rebase fixes fix: yarn.lock fix
Make sure the handler returned from E(creatorFacet).makeHandler() is durable and provisionPool is upgradable multiple times. Refs: #10425 Refs: #10564 fix: remove unnecessary comment chore: get rid of ephemera, address change requests Refs: #10395 Refs: #10425 fix: drop trace chore: address change requests fix: rebase fixes fix: yarn.lock fix fix: bring back missing upgrade-paRegistry proposal
…grade Refs: #10395 fix: format fixes
Make sure the handler returned from E(creatorFacet).makeHandler() is durable and provisionPool is upgradable multiple times. Refs: #10425 Refs: #10564 fix: remove unnecessary comment chore: get rid of ephemera, address change requests Refs: #10395 Refs: #10425 fix: drop trace chore: address change requests fix: rebase fixes fix: yarn.lock fix fix: bring back missing upgrade-paRegistry proposal
…grade Refs: #10395 fix: format fixes
Make sure the handler returned from E(creatorFacet).makeHandler() is durable and provisionPool is upgradable multiple times. Refs: #10425 Refs: #10564 fix: remove unnecessary comment chore: get rid of ephemera, address change requests Refs: #10395 Refs: #10425 fix: drop trace chore: address change requests fix: rebase fixes fix: yarn.lock fix fix: bring back missing upgrade-paRegistry proposal
…grade (#10419) closes: #10395 closes: #10425 closes: #10564 ## Description As mentioned in #8158, we need the ability to restart or replace all vats. This PR focuses on the vats v28-provisionPool and v14-bank. The goal is to make sure after upgrading both of those vats, v28-provisionPool functionality keeps working. We pay special attention to #8722 and #8724 during the tests as those issues were identified as potential problems against v28-provisionPool upgrade. ### Security Considerations v28-provisionPool and v14-bank are critical vats for the system when it comes to onboarding new users and keeping track of ERTP representations of user assets. Reviewers, please highlight the slightest risk you see. ### Scaling Considerations v28-provisionPool vat has a linear relationship with the number of users entering the Agoric system. So it is pretty important it keeps working. Reviewers, please highlight the slightest risk you see. ### Documentation Considerations None. ### Testing Considerations During the testing, we focused on `provisionPoolAddress`' cosmos level balances as our source of truth. The reasoning behind this is; if the IST balance of the `provisionPoolAddress` it can only mean - it has received the anchor asset we've sent - v28-provisionPool is notified of this balance change - executed a swap against corresponding PSM - deposited the payout to IST purse - v14-bank updated the balances correctly In our test we send two anchor assets; * USDC_axl to make sure v28-provisionPool recovered existing purses * USD_LEMONS to make sure v28-provisionPool is notified of new assets ### Upgrade Considerations Both v28-provisionPool and v14-bank are staged upgrades in `upgrade.go`
What is the Problem Being Solved?
As mentioned in #8158, we need the ability to restart or replace all vats. This issue is focused on upgrading v28-ProvisionPool and v14-bank. They are related because of #8722 and #8724, which were addressed by #9481.
Description of the Design
These upgrades have been tested previously, and are in
agoric-3-proposals/upgrade-17
. The goal here is to reinstate those ina3p-integration
, and stage them inupgrade.go
for the next upgrade.In addition,
vat-bank
is a client offeeDistributor
, which will be separately be upgraded. Let's re-review the tests to be sure that vat-bank continues to send fees after an upgrade.Security Considerations
vat-bank is a
critical
vat. provisionPool is involved in creating new smartWallets.Scaling Considerations
not significant.
Test Plan
Move
proposals/78:upgrade-17/provisionPool.test.js
fromagoric-3-proposals
toa3p-integration
. Verify that it checks everything relevant.Upgrade Considerations
See above.
The text was updated successfully, but these errors were encountered: