From a480372de35cf01b98025c03d9232fdcaf24e409 Mon Sep 17 00:00:00 2001 From: Dima Lekhovitsky Date: Sun, 2 Mar 2025 14:30:35 +0200 Subject: [PATCH] fix: minor v3.1 installation script updates (#30) * fix: minor v3.1 installation script updates * chore: update deps --- lib/@gearbox-protocol/core-v3 | 2 +- lib/@gearbox-protocol/governance | 2 +- lib/@gearbox-protocol/integrations-v3 | 2 +- script/LegacyHelper.sol | 5 +++++ script/V31Install.sol | 18 ++++++++++++++++++ 5 files changed, 26 insertions(+), 3 deletions(-) diff --git a/lib/@gearbox-protocol/core-v3 b/lib/@gearbox-protocol/core-v3 index f9894cb..a94cb84 160000 --- a/lib/@gearbox-protocol/core-v3 +++ b/lib/@gearbox-protocol/core-v3 @@ -1 +1 @@ -Subproject commit f9894cb5ce8c0f6fd3dd4b233e8d72f953d2fb05 +Subproject commit a94cb842d221594fff4fac92253d316c24bcad7e diff --git a/lib/@gearbox-protocol/governance b/lib/@gearbox-protocol/governance index 5dfac27..82b8613 160000 --- a/lib/@gearbox-protocol/governance +++ b/lib/@gearbox-protocol/governance @@ -1 +1 @@ -Subproject commit 5dfac272153523e82f795e3468d7ebb4d0ca044b +Subproject commit 82b8613e48111f81e8f348bb5eefe45b3d32fceb diff --git a/lib/@gearbox-protocol/integrations-v3 b/lib/@gearbox-protocol/integrations-v3 index 1449dc8..57e535e 160000 --- a/lib/@gearbox-protocol/integrations-v3 +++ b/lib/@gearbox-protocol/integrations-v3 @@ -1 +1 @@ -Subproject commit 1449dc87b2c3768a48a39e256c0c77935d0f366c +Subproject commit 57e535e9cb32f8e2ecbb81723a7f85a3b5d6396b diff --git a/script/LegacyHelper.sol b/script/LegacyHelper.sol index f57ad36..34c2834 100644 --- a/script/LegacyHelper.sol +++ b/script/LegacyHelper.sol @@ -29,6 +29,7 @@ contract LegacyHelper { string name; address weth; address gear; + address usdt; address treasury; address router; } @@ -40,6 +41,7 @@ contract LegacyHelper { name: "Ethereum", weth: 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, gear: 0xBa3335588D9403515223F109EdC4eB7269a9Ab5D, + usdt: 0xdAC17F958D2ee523a2206206994597C13D831ec7, treasury: 0x3E965117A51186e41c2BB58b729A1e518A715e5F, router: 0xA6FCd1fE716aD3801C71F2DE4E7A15f3a6994835 }), @@ -48,6 +50,7 @@ contract LegacyHelper { name: "Optimism", weth: 0x4200000000000000000000000000000000000006, gear: 0x39E6C2E1757ae4354087266E2C3EA9aC4257C1eb, + usdt: 0x0000000000000000000000000000000000000000, treasury: 0x1ACc5BC353f23B901801f3Ba48e1E51a14263808, router: 0x89f2E8F1c8d6D7cb276c81dd89128D08fc8E3363 }), @@ -56,6 +59,7 @@ contract LegacyHelper { name: "Sonic", weth: 0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38, gear: 0x0fDbce271bea0d9819034cd09021e0bBE94be3Fd, + usdt: 0x0000000000000000000000000000000000000000, treasury: 0x74028Cf1cBa6A4513c9a27137E7d0F3847833795, router: 0x9Fae6aA45aF0fcf94819fCE4f40416C76ce0928b }), @@ -64,6 +68,7 @@ contract LegacyHelper { name: "Arbitrum", weth: 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1, gear: 0x2F26337576127efabEEc1f62BE79dB1bcA9148A4, + usdt: 0x0000000000000000000000000000000000000000, treasury: 0x2c31eFFE426765E68A43163A96DD13DF70B53C14, router: 0xF26186465964ED3564EdFE0046eE65502a6Ac34D }) diff --git a/script/V31Install.sol b/script/V31Install.sol index afbd8de..5b38b29 100644 --- a/script/V31Install.sol +++ b/script/V31Install.sol @@ -6,6 +6,7 @@ import {Script} from "forge-std/Script.sol"; import {LibString} from "@solady/utils/LibString.sol"; import {IAddressProvider} from "@gearbox-protocol/governance/contracts/interfaces/IAddressProvider.sol"; +import {IBytecodeRepository} from "@gearbox-protocol/governance/contracts/interfaces/IBytecodeRepository.sol"; import {IMarketConfigurator} from "@gearbox-protocol/governance/contracts/interfaces/IMarketConfigurator.sol"; import {IMarketConfiguratorFactory} from "@gearbox-protocol/governance/contracts/interfaces/IMarketConfiguratorFactory.sol"; @@ -76,6 +77,23 @@ contract V31Install is Script, GlobalSetup, AnvilHelper, LegacyHelper { } _submitBatchAndSign("Set routers", setRouterCalls); + for (uint256 i; i < chains.length; ++i) { + if (chains[i].usdt == address(0)) continue; + CrossChainCall[] memory setUSDTPostfixCalls = new CrossChainCall[](1); + + setUSDTPostfixCalls[0] = CrossChainCall({ + chainId: chains[i].chainId, + target: address(instanceManager), + callData: abi.encodeCall( + instanceManager.configureGlobal, + ( + address(bytecodeRepository), + abi.encodeCall(IBytecodeRepository.setTokenSpecificPostfix, (chains[i].usdt, "USDT")) + ) + ) + }); + _submitBatchAndSign(string.concat("Set USDT postfix on ", chains[i].name), setUSDTPostfixCalls); + } // activate instances for (uint256 i; i < chains.length; ++i) { CrossChainCall[] memory activateCalls =