-
Notifications
You must be signed in to change notification settings - Fork 28
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
Launch GHO on Avalanche #519
base: main
Are you sure you want to change the base?
Conversation
* chore: add payload and deploy script for update of GHO variable debt token * forge install: gho-core * chore: add gho-core to dependency * test: Add tests for update of gho variable token * test: Add tests for update of gho variable token * fix: add modifier in method of interface * fix: remove gho dependency from repo and fix test * fix: Remove unnecesary dependency * fix: Add latest details --------- Co-authored-by: miguelmtzinf <[email protected]>
* fix: Make new impl constant * fix: Fix AIP text
src/20241106_Multi_GHOAvaxLaunch/AaveV3Arbitrum_GHOAvaxLaunch_20241106.sol
Outdated
Show resolved
Hide resolved
|
||
function setUp() public { | ||
// Execute Avax proposal to deploy Avax token pool | ||
vm.createSelectFork(vm.rpcUrl('avalanche'), 53559217); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there is no need to create an avalanche fork and deploy contracts there for arbitrum tests (especially because you don't seem to re-use this fork later in any of the tests as well) - pls save this for separate E2E tests where we switch between forks. for avalanche contracts (token pool, gho) can simply use makeAddr
for these chain specific tests
address ramp = makeAddr('ramp'); | ||
vm.mockCall( | ||
router, | ||
abi.encodeWithSelector(bytes4(keccak256('getOnRamp(uint64)'))), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dont need to mock on/offRamps existence on arb since they already exist & are configured, ideally i think these tests should re-use the on chain on/offRamps and router, add the avax token pool to TokenAdminRegistry (in AIP); and simply check ccipSend, onRamp (lockOrBurn), works when sending ARB -> AVAX and back for offRamp (releaseOrMint) among others like constants & configs, proxy initialization etc
we would need to probably do this for avax-chain specific tests
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually idt we'd need to do this for avax as well since AVAX<>ETH & AVAX<>ARB lanes are already configured https://docs.chain.link/ccip/directory/mainnet/chain/avalanche-mainnet if we configure the token pools in the setUp, will be interesting to add tests for the different fee-tokens
vm.expectEmit(false, true, true, true, address(TOKEN_POOL)); | ||
emit Minted(address(0), user, amount); | ||
|
||
IPoolPriorTo1_5(address(TOKEN_POOL)).releaseOrMint( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there's no scenario where we would on/offRamp from 1.4 style pools, for even the existing eth<>arb these calls go through the proxyPool which are 1.5/1.5.1 style
https://governance.aave.com/t/arfc-launch-gho-on-avalanche-set-aci-as-emissions-manager-for-rewards/19339