Skip to content

Commit e6c7f12

Browse files
committed
fix(migration): fix arbitrum migration
1 parent f6c3386 commit e6c7f12

File tree

5 files changed

+53
-43
lines changed

5 files changed

+53
-43
lines changed

packages/blue-sdk/src/addresses.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {
66
} from "@morpho-org/morpho-ts";
77
import isPlainObject from "lodash.isplainobject";
88
import mergeWith from "lodash.mergewith";
9-
import { zeroAddress } from "viem";
109
import { ChainId } from "./chain.js";
1110
import { UnsupportedChainIdError } from "./errors.js";
1211
import type { Address } from "./types.js";
@@ -190,7 +189,8 @@ const _addressesRegistry = {
190189
bundler3: "0x1FA4431bC113D308beE1d46B0e98Cb805FB48C13",
191190
generalAdapter1: "0x9954aFB60BB5A222714c478ac86990F221788B88",
192191
paraswapAdapter: "0xAA5c30C1482c189cA0d56057D3ac4dD7Af1e4726",
193-
aaveV3CoreMigrationAdapter: zeroAddress, //TODO
192+
aaveV3CoreMigrationAdapter: "0x1923670d4F4eB7435d865E7477d28FEAFfA40C93",
193+
compoundV3MigrationAdapter: "0x86Ca77a4a37A9CDBe9bBf4975F6d69531B96444b",
194194
},
195195
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
196196
adaptiveCurveIrm: "0x66F30587FB8D4206918deb78ecA7d5eBbafD06DA",
@@ -287,6 +287,7 @@ const _addressesRegistry = {
287287
bundler3: "0x7DD85759182495AF7F6757DA75036d24A9B58bc3",
288288
generalAdapter1: "0xC11329d19C2275c9E759867e879ECFcEeD7e30A0",
289289
paraswapAdapter: "0xAa870Da2a9F611A3A53d0D2AEe5664B3700a59c9",
290+
compoundV3MigrationAdapter: "0x617f8d7885CCE689115Af04576F7cB6F2534fA9a",
290291
},
291292
adaptiveCurveIrm: "0x9a6061d51743B31D2c3Be75D83781Fa423f53F0E",
292293
publicAllocator: "0xB0c9a107fA17c779B3378210A7a593e88938C7C9",

packages/migration-sdk-viem/src/config.ts

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -181,26 +181,26 @@ export const migrationAddressesRegistry = {
181181
[MigratableProtocol.aaveV2]: null,
182182
[MigratableProtocol.aaveV3Optimizer]: null,
183183
},
184-
// [ChainId.ArbitrumMainnet]: {
185-
// [MigratableProtocol.aaveV3]: {
186-
// pool: {
187-
// address: "0x794a61358D6845594F94dc1DB02A252b5b4814aD",
188-
// abi: poolAbi,
189-
// },
190-
// protocolDataProvider: {
191-
// address: "0x14496b405D62c24F91f04Cda1c69Dc526D56fDE5",
192-
// abi: protocolDataProviderAbi_v3,
193-
// },
194-
// addressesProvider: {
195-
// address: "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb",
196-
// abi: addressesProviderAbi_v3,
197-
// },
198-
// },
199-
// [MigratableProtocol.compoundV3]: null,
200-
// [MigratableProtocol.compoundV2]: null,
201-
// [MigratableProtocol.aaveV2]: null,
202-
// [MigratableProtocol.aaveV3Optimizer]: null,
203-
// },
184+
[ChainId.ArbitrumMainnet]: {
185+
[MigratableProtocol.aaveV3]: {
186+
pool: {
187+
address: "0x794a61358D6845594F94dc1DB02A252b5b4814aD",
188+
abi: poolAbi,
189+
},
190+
protocolDataProvider: {
191+
address: "0x14496b405D62c24F91f04Cda1c69Dc526D56fDE5",
192+
abi: protocolDataProviderAbi_v3,
193+
},
194+
addressesProvider: {
195+
address: "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb",
196+
abi: addressesProviderAbi_v3,
197+
},
198+
},
199+
[MigratableProtocol.compoundV3]: null,
200+
[MigratableProtocol.compoundV2]: null,
201+
[MigratableProtocol.aaveV2]: null,
202+
[MigratableProtocol.aaveV3Optimizer]: null,
203+
},
204204
[ChainId.PolygonMainnet]: {
205205
[MigratableProtocol.aaveV3]: {
206206
pool: {

packages/migration-sdk-viem/test/e2e/aaveV3/borrow.test.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,14 @@ const TEST_CONFIGS = [
5151
marketTo: markets[ChainId.BaseMainnet].eth_wstEth,
5252
maxLoanPrice: 1,
5353
},
54-
// {
55-
// chainId: ChainId.ArbitrumMainnet,
56-
// aCollateralToken: "0x513c7E3a9c69cA3e22550eF58AC1C0088e918FFf",
57-
// variableDebtToken: "0x0c84331e39d6658Cd6e6b9ba04736cC4c4734351",
58-
// testFn: test[ChainId.ArbitrumMainnet] as TestAPI<ViemTestContext>,
59-
// marketTo: markets[ChainId.ArbitrumMainnet].eth_wstEth,
60-
// maxLoanPrice: 1,
61-
// },
54+
{
55+
chainId: ChainId.ArbitrumMainnet,
56+
aCollateralToken: "0x513c7E3a9c69cA3e22550eF58AC1C0088e918FFf",
57+
variableDebtToken: "0x0c84331e39d6658Cd6e6b9ba04736cC4c4734351",
58+
testFn: test[ChainId.ArbitrumMainnet] as TestAPI<ViemTestContext>,
59+
marketTo: markets[ChainId.ArbitrumMainnet].eth_wstEth,
60+
maxLoanPrice: 1,
61+
},
6262
{
6363
chainId: ChainId.PolygonMainnet,
6464
aCollateralToken: "0xe50fA9b3c56FfB159cB0FCA61F5c9D750e8128c8",

packages/migration-sdk-viem/test/e2e/aaveV3/supply.test.ts

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,13 @@ const TEST_CONFIGS = [
3333
mmWNative: "0xa0E430870c4604CcfC7B38Ca7845B1FF653D0ff1",
3434
wNativeMinPrice: 2000,
3535
},
36-
// {
37-
// chainId: ChainId.ArbitrumMainnet,
38-
// aWNative: "0xe50fA9b3c56FfB159cB0FCA61F5c9D750e8128c8",
39-
// testFn: test[ChainId.ArbitrumMainnet] as TestAPI<ViemTestContext>,
40-
// mmWNative: "0x4dB0B0a83de352817d0C30a88a36667b75D48b6E",
41-
// wNativeMinPrice: 2000,
42-
// },
36+
{
37+
chainId: ChainId.ArbitrumMainnet,
38+
aWNative: "0xe50fA9b3c56FfB159cB0FCA61F5c9D750e8128c8",
39+
testFn: test[ChainId.ArbitrumMainnet] as TestAPI<ViemTestContext>,
40+
mmWNative: "0xBD14bEa2eCECeCD5F32149B0f84BE7f7F446B964",
41+
wNativeMinPrice: 2000,
42+
},
4343
{
4444
chainId: ChainId.PolygonMainnet,
4545
aWNative: "0x6d80113e533a2C0fe82EaBD35f1875DcEA89Ea97",
@@ -294,13 +294,17 @@ describe("Supply position on AAVE V3", () => {
294294

295295
await migrationBundle.requirements.signatures[0]!.sign(client);
296296

297-
await sendTransaction(client, migrationBundle.tx());
297+
await sendTransaction(client, {
298+
...migrationBundle.tx(),
299+
gas: parseEther("0.000009"),
300+
});
298301

299302
const [
300303
bundlerPosition,
301304
wEthBundlerBalance,
302305
userPosition,
303306
userMMShares,
307+
mmBundlerBalance,
304308
] = await Promise.all([
305309
client.balanceOf({
306310
erc20: aWNative,
@@ -312,6 +316,10 @@ describe("Supply position on AAVE V3", () => {
312316
}),
313317
client.balanceOf({ erc20: aWNative }),
314318
client.balanceOf({ erc20: mmWNative }),
319+
client.balanceOf({
320+
erc20: mmWNative,
321+
owner: aaveV3CoreMigrationAdapter,
322+
}),
315323
]);
316324

317325
const userMMBalance = await client.readContract({
@@ -323,6 +331,7 @@ describe("Supply position on AAVE V3", () => {
323331

324332
expect(bundlerPosition).toEqual(0n);
325333
expect(wEthBundlerBalance).toEqual(0n);
334+
expect(mmBundlerBalance).toEqual(0n);
326335
expect(userPosition).toBeGreaterThan(positionAmount - migratedAmount); //interest have been accumulated
327336
expect(userMMBalance).toBeGreaterThanOrEqual(migratedAmount - 2n);
328337
});

packages/migration-sdk-viem/test/e2e/setup.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { ChainId } from "@morpho-org/blue-sdk";
22
import { createViemTest } from "@morpho-org/test/vitest";
3-
import { base, mainnet, polygon } from "viem/chains";
3+
import { arbitrum, base, mainnet, polygon } from "viem/chains";
44

55
export const test = {
66
[ChainId.EthMainnet]: createViemTest(mainnet, {
@@ -11,10 +11,10 @@ export const test = {
1111
forkUrl: process.env.BASE_RPC_URL,
1212
forkBlockNumber: 26_539_234,
1313
}),
14-
// [ChainId.ArbitrumMainnet]: createViemTest(arbitrum, {
15-
// forkUrl: process.env.ARBITRUM_RPC_URL,
16-
// forkBlockNumber: 358_585_968,
17-
// }),
14+
[ChainId.ArbitrumMainnet]: createViemTest(arbitrum, {
15+
forkUrl: process.env.ARBITRUM_RPC_URL,
16+
forkBlockNumber: 361_575_517,
17+
}),
1818
[ChainId.PolygonMainnet]: createViemTest(polygon, {
1919
forkUrl: process.env.POLYGON_RPC_URL,
2020
forkBlockNumber: 74_069_107,

0 commit comments

Comments
 (0)