From 6e65f7390a383ee5d4c1521b5b5cb8d540dc223d Mon Sep 17 00:00:00 2001 From: Jesus Lanchas Date: Fri, 14 Feb 2025 11:55:59 +0100 Subject: [PATCH] refactor: move the testnet VIP to the mainnet VIP folder --- .../{vip-500 => vip-452}/arbitrumsepolia.ts | 8 +- .../{vip-500 => vip-452}/basesepolia.ts | 8 +- .../{vip-500 => vip-452}/bsctestnet.ts | 8 +- .../{vip-500 => vip-452}/opbnbtestnet.ts | 8 +- simulations/{vip-500 => vip-452}/opsepolia.ts | 8 +- simulations/{vip-500 => vip-452}/sepolia.ts | 8 +- .../{vip-500 => vip-452}/zksyncsepolia.ts | 8 +- .../vip-500/abi/OmnichainProposalSender.json | 314 ---- simulations/vip-500/abi/XVS.json | 318 ---- simulations/vip-500/abi/XVSBridgeAdmin.json | 287 --- simulations/vip-500/abi/XVSProxyOFTSrc.json | 1616 ----------------- simulations/vip-500/abi/aggregator.json | 113 -- simulations/vip-500/abi/redstoneOracle.json | 398 ---- simulations/vip-500/abi/resilientOracle.json | 640 ------- simulations/vip-500/checkXVSBridge.ts | 194 -- vips/{vip-500 => vip-452}/bsctestnet.ts | 6 +- vips/vip-500/types.ts | 20 - 17 files changed, 31 insertions(+), 3931 deletions(-) rename simulations/{vip-500 => vip-452}/arbitrumsepolia.ts (81%) rename simulations/{vip-500 => vip-452}/basesepolia.ts (80%) rename simulations/{vip-500 => vip-452}/bsctestnet.ts (97%) rename simulations/{vip-500 => vip-452}/opbnbtestnet.ts (81%) rename simulations/{vip-500 => vip-452}/opsepolia.ts (80%) rename simulations/{vip-500 => vip-452}/sepolia.ts (80%) rename simulations/{vip-500 => vip-452}/zksyncsepolia.ts (81%) delete mode 100644 simulations/vip-500/abi/OmnichainProposalSender.json delete mode 100644 simulations/vip-500/abi/XVS.json delete mode 100644 simulations/vip-500/abi/XVSBridgeAdmin.json delete mode 100644 simulations/vip-500/abi/XVSProxyOFTSrc.json delete mode 100644 simulations/vip-500/abi/aggregator.json delete mode 100644 simulations/vip-500/abi/redstoneOracle.json delete mode 100644 simulations/vip-500/abi/resilientOracle.json delete mode 100644 simulations/vip-500/checkXVSBridge.ts rename vips/{vip-500 => vip-452}/bsctestnet.ts (98%) delete mode 100644 vips/vip-500/types.ts diff --git a/simulations/vip-500/arbitrumsepolia.ts b/simulations/vip-452/arbitrumsepolia.ts similarity index 81% rename from simulations/vip-500/arbitrumsepolia.ts rename to simulations/vip-452/arbitrumsepolia.ts index 22b048ec8..5e1a52410 100644 --- a/simulations/vip-500/arbitrumsepolia.ts +++ b/simulations/vip-452/arbitrumsepolia.ts @@ -2,19 +2,19 @@ import { NETWORK_ADDRESSES } from "src/networkAddresses"; import { LzChainId } from "src/types"; import { forking } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import { checkXVSBridge } from "./checkXVSBridge"; forking(121879821, async () => { await checkXVSBridge( LzChainId.unichainsepolia, NETWORK_ADDRESSES.arbitrumsepolia, - vip500, + vip452, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries.find(entry => entry.dstChainId === LzChainId.arbitrumsepolia) as RemoteBridgeEntry, MIN_DST_GAS, diff --git a/simulations/vip-500/basesepolia.ts b/simulations/vip-452/basesepolia.ts similarity index 80% rename from simulations/vip-500/basesepolia.ts rename to simulations/vip-452/basesepolia.ts index 1f1452e4d..c985501cc 100644 --- a/simulations/vip-500/basesepolia.ts +++ b/simulations/vip-452/basesepolia.ts @@ -2,19 +2,19 @@ import { NETWORK_ADDRESSES } from "src/networkAddresses"; import { LzChainId } from "src/types"; import { forking } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import { checkXVSBridge } from "./checkXVSBridge"; forking(21592141, async () => { await checkXVSBridge( LzChainId.unichainsepolia, NETWORK_ADDRESSES.basesepolia, - vip500, + vip452, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries.find(entry => entry.dstChainId === LzChainId.basesepolia) as RemoteBridgeEntry, MIN_DST_GAS, diff --git a/simulations/vip-500/bsctestnet.ts b/simulations/vip-452/bsctestnet.ts similarity index 97% rename from simulations/vip-500/bsctestnet.ts rename to simulations/vip-452/bsctestnet.ts index 8c35c51bf..81d73baaf 100644 --- a/simulations/vip-500/bsctestnet.ts +++ b/simulations/vip-452/bsctestnet.ts @@ -9,12 +9,12 @@ import { LzChainId } from "src/types"; import { expectEvents, initMainnetUser } from "src/utils"; import { forking, testVip } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import OMNICHAIN_PROPOSAL_SENDER_ABI from "./abi/OmnichainProposalSender.json"; import XVS_ABI from "./abi/XVS.json"; import XVS_BRIDGE_ADMIN_ABI from "./abi/XVSBridgeAdmin.json"; @@ -43,7 +43,7 @@ forking(48077026, async () => { defaultAdapterParams = ethers.utils.solidityPack(["uint16", "uint256"], [1, 300000]); }); - testVip("vip-500 testnet", await vip500(), { + testVip("vip-452 testnet", await vip452(), { callbackAfterExecution: async (txResponse: TransactionResponse) => { await expectEvents( txResponse, diff --git a/simulations/vip-500/opbnbtestnet.ts b/simulations/vip-452/opbnbtestnet.ts similarity index 81% rename from simulations/vip-500/opbnbtestnet.ts rename to simulations/vip-452/opbnbtestnet.ts index 48d7ee656..e8e757697 100644 --- a/simulations/vip-500/opbnbtestnet.ts +++ b/simulations/vip-452/opbnbtestnet.ts @@ -2,19 +2,19 @@ import { NETWORK_ADDRESSES } from "src/networkAddresses"; import { LzChainId } from "src/types"; import { forking } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import { checkXVSBridge } from "./checkXVSBridge"; forking(52074221, async () => { await checkXVSBridge( LzChainId.unichainsepolia, NETWORK_ADDRESSES.opbnbtestnet, - vip500, + vip452, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries.find(entry => entry.dstChainId === LzChainId.opbnbtestnet) as RemoteBridgeEntry, MIN_DST_GAS, diff --git a/simulations/vip-500/opsepolia.ts b/simulations/vip-452/opsepolia.ts similarity index 80% rename from simulations/vip-500/opsepolia.ts rename to simulations/vip-452/opsepolia.ts index 1ecaaa207..182ae2399 100644 --- a/simulations/vip-500/opsepolia.ts +++ b/simulations/vip-452/opsepolia.ts @@ -2,19 +2,19 @@ import { NETWORK_ADDRESSES } from "src/networkAddresses"; import { LzChainId } from "src/types"; import { forking } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import { checkXVSBridge } from "./checkXVSBridge"; forking(23575078, async () => { await checkXVSBridge( LzChainId.unichainsepolia, NETWORK_ADDRESSES.opsepolia, - vip500, + vip452, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries.find(entry => entry.dstChainId === LzChainId.opsepolia) as RemoteBridgeEntry, MIN_DST_GAS, diff --git a/simulations/vip-500/sepolia.ts b/simulations/vip-452/sepolia.ts similarity index 80% rename from simulations/vip-500/sepolia.ts rename to simulations/vip-452/sepolia.ts index bcc69db14..280e80177 100644 --- a/simulations/vip-500/sepolia.ts +++ b/simulations/vip-452/sepolia.ts @@ -2,19 +2,19 @@ import { NETWORK_ADDRESSES } from "src/networkAddresses"; import { LzChainId } from "src/types"; import { forking } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import { checkXVSBridge } from "./checkXVSBridge"; forking(7660147, async () => { await checkXVSBridge( LzChainId.unichainsepolia, NETWORK_ADDRESSES.sepolia, - vip500, + vip452, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries.find(entry => entry.dstChainId === LzChainId.sepolia) as RemoteBridgeEntry, MIN_DST_GAS, diff --git a/simulations/vip-500/zksyncsepolia.ts b/simulations/vip-452/zksyncsepolia.ts similarity index 81% rename from simulations/vip-500/zksyncsepolia.ts rename to simulations/vip-452/zksyncsepolia.ts index 5f3ceb750..708b1f5e1 100644 --- a/simulations/vip-500/zksyncsepolia.ts +++ b/simulations/vip-452/zksyncsepolia.ts @@ -2,19 +2,19 @@ import { NETWORK_ADDRESSES } from "src/networkAddresses"; import { LzChainId } from "src/types"; import { forking } from "src/vip-framework"; -import vip500, { +import vip452, { MIN_DST_GAS, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries, -} from "../../vips/vip-500/bsctestnet"; -import { RemoteBridgeEntry } from "../../vips/vip-500/types"; +} from "../../vips/vip-452/bsctestnet"; +import { RemoteBridgeEntry } from "../../vips/vip-452/types"; import { checkXVSBridge } from "./checkXVSBridge"; forking(4671599, async () => { await checkXVSBridge( LzChainId.unichainsepolia, NETWORK_ADDRESSES.zksyncsepolia, - vip500, + vip452, UNICHAIN_SEPOLIA_TRUSTED_REMOTE, remoteBridgeEntries.find(entry => entry.dstChainId === LzChainId.zksyncsepolia) as RemoteBridgeEntry, MIN_DST_GAS, diff --git a/simulations/vip-500/abi/OmnichainProposalSender.json b/simulations/vip-500/abi/OmnichainProposalSender.json deleted file mode 100644 index 66fd4df02..000000000 --- a/simulations/vip-500/abi/OmnichainProposalSender.json +++ /dev/null @@ -1,314 +0,0 @@ -[ - { - "inputs": [ - { "internalType": "contract ILayerZeroEndpoint", "name": "lzEndpoint_", "type": "address" }, - { "internalType": "address", "name": "accessControlManager_", "type": "address" } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { "inputs": [], "name": "ZeroAddressNotAllowed", "type": "error" }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "uint256", "name": "proposalId", "type": "uint256" }, - { "indexed": false, "internalType": "bytes32", "name": "executionHash", "type": "bytes32" } - ], - "name": "ClearPayload", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "uint16", "name": "remoteChainId", "type": "uint16" }, - { "indexed": false, "internalType": "uint256", "name": "proposalId", "type": "uint256" }, - { "indexed": false, "internalType": "bytes", "name": "payload", "type": "bytes" } - ], - "name": "ExecuteRemoteProposal", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "receiver", "type": "address" }, - { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } - ], - "name": "FallbackWithdraw", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "oldAccessControlManager", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "newAccessControlManager", "type": "address" } - ], - "name": "NewAccessControlManager", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "uint16", "name": "chainId", "type": "uint16" }, - { "indexed": false, "internalType": "uint256", "name": "oldMaxLimit", "type": "uint256" }, - { "indexed": false, "internalType": "uint256", "name": "newMaxLimit", "type": "uint256" } - ], - "name": "SetMaxDailyLimit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "uint16", "name": "remoteChainId", "type": "uint16" }, - { "indexed": false, "internalType": "bytes", "name": "oldRemoteAddress", "type": "bytes" }, - { "indexed": false, "internalType": "bytes", "name": "newRemoteAddress", "type": "bytes" } - ], - "name": "SetTrustedRemoteAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "uint256", "name": "proposalId", "type": "uint256" }, - { "indexed": true, "internalType": "uint16", "name": "remoteChainId", "type": "uint16" }, - { "indexed": false, "internalType": "bytes", "name": "payload", "type": "bytes" }, - { "indexed": false, "internalType": "bytes", "name": "adapterParams", "type": "bytes" }, - { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" }, - { "indexed": false, "internalType": "bytes", "name": "reason", "type": "bytes" } - ], - "name": "StorePayload", - "type": "event" - }, - { - "anonymous": false, - "inputs": [{ "indexed": true, "internalType": "uint16", "name": "chainId", "type": "uint16" }], - "name": "TrustedRemoteRemoved", - "type": "event" - }, - { - "anonymous": false, - "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "LZ_ENDPOINT", - "outputs": [{ "internalType": "contract ILayerZeroEndpoint", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "accessControlManager", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], - "name": "chainIdToLast24HourCommandsSent", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], - "name": "chainIdToLast24HourWindowStart", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], - "name": "chainIdToLastProposalSentTimestamp", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], - "name": "chainIdToMaxDailyLimit", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint16", "name": "remoteChainId_", "type": "uint16" }, - { "internalType": "bytes", "name": "payload_", "type": "bytes" }, - { "internalType": "bool", "name": "useZro_", "type": "bool" }, - { "internalType": "bytes", "name": "adapterParams_", "type": "bytes" } - ], - "name": "estimateFees", - "outputs": [ - { "internalType": "uint256", "name": "", "type": "uint256" }, - { "internalType": "uint256", "name": "", "type": "uint256" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint16", "name": "remoteChainId_", "type": "uint16" }, - { "internalType": "bytes", "name": "payload_", "type": "bytes" }, - { "internalType": "bytes", "name": "adapterParams_", "type": "bytes" }, - { "internalType": "address", "name": "zroPaymentAddress_", "type": "address" } - ], - "name": "execute", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "to_", "type": "address" }, - { "internalType": "uint256", "name": "pId_", "type": "uint256" }, - { "internalType": "uint16", "name": "remoteChainId_", "type": "uint16" }, - { "internalType": "bytes", "name": "payload_", "type": "bytes" }, - { "internalType": "bytes", "name": "adapterParams_", "type": "bytes" }, - { "internalType": "uint256", "name": "originalValue_", "type": "uint256" } - ], - "name": "fallbackWithdraw", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint16", "name": "version_", "type": "uint16" }, - { "internalType": "uint16", "name": "chainId_", "type": "uint16" }, - { "internalType": "uint256", "name": "configType_", "type": "uint256" } - ], - "name": "getConfig", - "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "proposalCount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "remoteChainId_", "type": "uint16" }], - "name": "removeTrustedRemote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [ - { "internalType": "uint256", "name": "pId_", "type": "uint256" }, - { "internalType": "uint16", "name": "remoteChainId_", "type": "uint16" }, - { "internalType": "bytes", "name": "payload_", "type": "bytes" }, - { "internalType": "bytes", "name": "adapterParams_", "type": "bytes" }, - { "internalType": "address", "name": "zroPaymentAddress_", "type": "address" }, - { "internalType": "uint256", "name": "originalValue_", "type": "uint256" } - ], - "name": "retryExecute", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "accessControlManager_", "type": "address" }], - "name": "setAccessControlManager", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint16", "name": "version_", "type": "uint16" }, - { "internalType": "uint16", "name": "chainId_", "type": "uint16" }, - { "internalType": "uint256", "name": "configType_", "type": "uint256" }, - { "internalType": "bytes", "name": "config_", "type": "bytes" } - ], - "name": "setConfig", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint16", "name": "chainId_", "type": "uint16" }, - { "internalType": "uint256", "name": "limit_", "type": "uint256" } - ], - "name": "setMaxDailyLimit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "version_", "type": "uint16" }], - "name": "setSendVersion", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "uint16", "name": "remoteChainId_", "type": "uint16" }, - { "internalType": "bytes", "name": "newRemoteAddress_", "type": "bytes" } - ], - "name": "setTrustedRemoteAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "name": "storedExecutionHashes", - "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], - "name": "trustedRemoteLookup", - "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }], - "stateMutability": "view", - "type": "function" - }, - { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" } -] diff --git a/simulations/vip-500/abi/XVS.json b/simulations/vip-500/abi/XVS.json deleted file mode 100644 index 0835d2fe4..000000000 --- a/simulations/vip-500/abi/XVS.json +++ /dev/null @@ -1,318 +0,0 @@ -[ - { - "inputs": [{ "internalType": "address", "name": "accessControlManager_", "type": "address" }], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [{ "internalType": "address", "name": "user", "type": "address" }], - "name": "AccountBlacklisted", - "type": "error" - }, - { "inputs": [], "name": "AddressesMustDiffer", "type": "error" }, - { "inputs": [], "name": "MintLimitExceed", "type": "error" }, - { "inputs": [], "name": "MintedAmountExceed", "type": "error" }, - { "inputs": [], "name": "NewCapNotGreaterThanMintedTokens", "type": "error" }, - { "inputs": [], "name": "Unauthorized", "type": "error" }, - { "inputs": [], "name": "ZeroAddressNotAllowed", "type": "error" }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, - { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } - ], - "name": "Approval", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, - { "indexed": false, "internalType": "bool", "name": "value", "type": "bool" } - ], - "name": "BlacklistUpdated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "minter", "type": "address" }, - { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } - ], - "name": "MintCapChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "minter", "type": "address" }, - { "indexed": false, "internalType": "uint256", "name": "newLimit", "type": "uint256" } - ], - "name": "MintLimitDecreased", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "minter", "type": "address" }, - { "indexed": false, "internalType": "uint256", "name": "newLimit", "type": "uint256" } - ], - "name": "MintLimitIncreased", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "source", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "destination", "type": "address" } - ], - "name": "MintedTokensMigrated", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "oldAccessControlManager", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "newAccessControlManager", "type": "address" } - ], - "name": "NewAccessControlManager", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, - { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, - { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [{ "indexed": false, "internalType": "address", "name": "account", "type": "address" }], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "accessControlManager", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "owner", "type": "address" }, - { "internalType": "address", "name": "spender", "type": "address" } - ], - "name": "allowance", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "spender", "type": "address" }, - { "internalType": "uint256", "name": "amount", "type": "uint256" } - ], - "name": "approve", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "account", "type": "address" }], - "name": "balanceOf", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "account_", "type": "address" }, - { "internalType": "uint256", "name": "amount_", "type": "uint256" } - ], - "name": "burn", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "decimals", - "outputs": [{ "internalType": "uint8", "name": "", "type": "uint8" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "spender", "type": "address" }, - { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } - ], - "name": "decreaseAllowance", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "spender", "type": "address" }, - { "internalType": "uint256", "name": "addedValue", "type": "uint256" } - ], - "name": "increaseAllowance", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "user_", "type": "address" }], - "name": "isBlackListed", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "source_", "type": "address" }, - { "internalType": "address", "name": "destination_", "type": "address" } - ], - "name": "migrateMinterTokens", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "account_", "type": "address" }, - { "internalType": "uint256", "name": "amount_", "type": "uint256" } - ], - "name": "mint", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "", "type": "address" }], - "name": "minterToCap", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "", "type": "address" }], - "name": "minterToMintedAmount", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "name", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [{ "internalType": "address", "name": "", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [], - "name": "paused", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [{ "internalType": "address", "name": "newAccessControlAddress_", "type": "address" }], - "name": "setAccessControlManager", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "minter_", "type": "address" }, - { "internalType": "uint256", "name": "amount_", "type": "uint256" } - ], - "name": "setMintCap", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "symbol", - "outputs": [{ "internalType": "string", "name": "", "type": "string" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "totalSupply", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "to", "type": "address" }, - { "internalType": "uint256", "name": "amount", "type": "uint256" } - ], - "name": "transfer", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "from", "type": "address" }, - { "internalType": "address", "name": "to", "type": "address" }, - { "internalType": "uint256", "name": "amount", "type": "uint256" } - ], - "name": "transferFrom", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "newOwner", "type": "address" }], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, - { - "inputs": [ - { "internalType": "address", "name": "user_", "type": "address" }, - { "internalType": "bool", "name": "value_", "type": "bool" } - ], - "name": "updateBlacklist", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/simulations/vip-500/abi/XVSBridgeAdmin.json b/simulations/vip-500/abi/XVSBridgeAdmin.json deleted file mode 100644 index 36158eeba..000000000 --- a/simulations/vip-500/abi/XVSBridgeAdmin.json +++ /dev/null @@ -1,287 +0,0 @@ -[ - { - "inputs": [ - { - "internalType": "address", - "name": "XVSBridge_", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "address", - "name": "calledContract", - "type": "address" - }, - { - "internalType": "string", - "name": "methodSignature", - "type": "string" - } - ], - "name": "Unauthorized", - "type": "error" - }, - { - "inputs": [], - "name": "ZeroAddressNotAllowed", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "string", - "name": "signature", - "type": "string" - }, - { - "indexed": false, - "internalType": "bool", - "name": "isRemoved", - "type": "bool" - } - ], - "name": "FunctionRegistryChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldAccessControlManager", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAccessControlManager", - "type": "address" - } - ], - "name": "NewAccessControlManager", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [], - "name": "XVSBridge", - "outputs": [ - { - "internalType": "contract IXVSProxyOFT", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "accessControlManager", - "outputs": [ - { - "internalType": "contract IAccessControlManagerV8", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "", - "type": "bytes4" - } - ], - "name": "functionRegistry", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "accessControlManager_", - "type": "address" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pendingOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "accessControlManager_", - "type": "address" - } - ], - "name": "setAccessControlManager", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner_", - "type": "address" - } - ], - "name": "transferBridgeOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "string[]", - "name": "signatures_", - "type": "string[]" - }, - { - "internalType": "bool[]", - "name": "remove_", - "type": "bool[]" - } - ], - "name": "upsertSignature", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/simulations/vip-500/abi/XVSProxyOFTSrc.json b/simulations/vip-500/abi/XVSProxyOFTSrc.json deleted file mode 100644 index e88302d59..000000000 --- a/simulations/vip-500/abi/XVSProxyOFTSrc.json +++ /dev/null @@ -1,1616 +0,0 @@ -[ - { - "inputs": [], - "name": "ZeroAddressNotAllowed", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "_hash", - "type": "bytes32" - } - ], - "name": "CallOFTReceivedSuccess", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_reason", - "type": "bytes" - } - ], - "name": "MessageFailed", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "_address", - "type": "address" - } - ], - "name": "NonContractAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "oldOracle", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOracle", - "type": "address" - } - ], - "name": "OracleChanged", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "indexed": true, - "internalType": "address", - "name": "_to", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "ReceiveFromChain", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "indexed": false, - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "indexed": false, - "internalType": "bytes32", - "name": "_payloadHash", - "type": "bytes32" - } - ], - "name": "RetryMessageSuccess", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "indexed": true, - "internalType": "address", - "name": "_from", - "type": "address" - }, - { - "indexed": true, - "internalType": "bytes32", - "name": "_toAddress", - "type": "bytes32" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } - ], - "name": "SendToChain", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "chainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "oldMaxLimit", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newMaxLimit", - "type": "uint256" - } - ], - "name": "SetMaxDailyLimit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "chainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "oldMaxLimit", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newMaxLimit", - "type": "uint256" - } - ], - "name": "SetMaxDailyReceiveLimit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "chainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "oldMaxLimit", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newMaxLimit", - "type": "uint256" - } - ], - "name": "SetMaxSingleReceiveTransactionLimit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "chainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "oldMaxLimit", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newMaxLimit", - "type": "uint256" - } - ], - "name": "SetMaxSingleTransactionLimit", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "uint16", - "name": "_type", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "_minDstGas", - "type": "uint256" - } - ], - "name": "SetMinDstGas", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "precrime", - "type": "address" - } - ], - "name": "SetPrecrime", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "_remoteChainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_path", - "type": "bytes" - } - ], - "name": "SetTrustedRemote", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint16", - "name": "_remoteChainId", - "type": "uint16" - }, - { - "indexed": false, - "internalType": "bytes", - "name": "_remoteAddress", - "type": "bytes" - } - ], - "name": "SetTrustedRemoteAddress", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "addr", - "type": "address" - }, - { - "indexed": false, - "internalType": "bool", - "name": "isWhitelist", - "type": "bool" - } - ], - "name": "SetWhitelist", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "DEFAULT_PAYLOAD_SIZE_LIMIT", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "NO_EXTRA_GAS", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "PT_SEND", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "PT_SEND_AND_CALL", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "internalType": "bytes32", - "name": "_from", - "type": "bytes32" - }, - { - "internalType": "address", - "name": "_to", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - }, - { - "internalType": "uint256", - "name": "_gasForCall", - "type": "uint256" - } - ], - "name": "callOnOFTReceived", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToLast24HourReceiveWindowStart", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToLast24HourReceived", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToLast24HourTransferred", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToLast24HourWindowStart", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToMaxDailyLimit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToMaxDailyReceiveLimit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToMaxSingleReceiveTransactionLimit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "chainIdToMaxSingleTransactionLimit", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "circulatingSupply", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "", - "type": "uint64" - } - ], - "name": "creditedPackets", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "internalType": "bytes32", - "name": "_toAddress", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "_dstGasForCall", - "type": "uint64" - }, - { - "internalType": "bool", - "name": "_useZro", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "_adapterParams", - "type": "bytes" - } - ], - "name": "estimateSendAndCallFee", - "outputs": [ - { - "internalType": "uint256", - "name": "nativeFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "zroFee", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "internalType": "bytes32", - "name": "_toAddress", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "_useZro", - "type": "bool" - }, - { - "internalType": "bytes", - "name": "_adapterParams", - "type": "bytes" - } - ], - "name": "estimateSendFee", - "outputs": [ - { - "internalType": "uint256", - "name": "nativeFee", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "zroFee", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "", - "type": "uint64" - } - ], - "name": "failedMessages", - "outputs": [ - { - "internalType": "bytes32", - "name": "", - "type": "bytes32" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - } - ], - "name": "forceResumeReceive", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_version", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "_chainId", - "type": "uint16" - }, - { - "internalType": "address", - "name": "", - "type": "address" - }, - { - "internalType": "uint256", - "name": "_configType", - "type": "uint256" - } - ], - "name": "getConfig", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_remoteChainId", - "type": "uint16" - } - ], - "name": "getTrustedRemoteAddress", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - } - ], - "name": "isTrustedRemote", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "lzEndpoint", - "outputs": [ - { - "internalType": "contract ILayerZeroEndpoint", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - } - ], - "name": "lzReceive", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "minDstGasLookup", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - } - ], - "name": "nonblockingLzReceive", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "oracle", - "outputs": [ - { - "internalType": "contract ResilientOracleInterface", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "payloadSizeLimitLookup", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "precrime", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_srcChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_srcAddress", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "_nonce", - "type": "uint64" - }, - { - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - } - ], - "name": "retryMessage", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_from", - "type": "address" - }, - { - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "internalType": "bytes32", - "name": "_toAddress", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_payload", - "type": "bytes" - }, - { - "internalType": "uint64", - "name": "_dstGasForCall", - "type": "uint64" - }, - { - "components": [ - { - "internalType": "address payable", - "name": "refundAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "zroPaymentAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "adapterParams", - "type": "bytes" - } - ], - "internalType": "struct ICommonOFT.LzCallParams", - "name": "_callParams", - "type": "tuple" - } - ], - "name": "sendAndCall", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_from", - "type": "address" - }, - { - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "internalType": "bytes32", - "name": "_toAddress", - "type": "bytes32" - }, - { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - }, - { - "components": [ - { - "internalType": "address payable", - "name": "refundAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "zroPaymentAddress", - "type": "address" - }, - { - "internalType": "bytes", - "name": "adapterParams", - "type": "bytes" - } - ], - "internalType": "struct ICommonOFT.LzCallParams", - "name": "_callParams", - "type": "tuple" - } - ], - "name": "sendFrom", - "outputs": [], - "stateMutability": "payable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_version", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "_chainId", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "_configType", - "type": "uint256" - }, - { - "internalType": "bytes", - "name": "_config", - "type": "bytes" - } - ], - "name": "setConfig", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "chainId_", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "limit_", - "type": "uint256" - } - ], - "name": "setMaxDailyLimit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "chainId_", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "limit_", - "type": "uint256" - } - ], - "name": "setMaxDailyReceiveLimit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "chainId_", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "limit_", - "type": "uint256" - } - ], - "name": "setMaxSingleReceiveTransactionLimit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "chainId_", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "limit_", - "type": "uint256" - } - ], - "name": "setMaxSingleTransactionLimit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "internalType": "uint16", - "name": "_packetType", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "_minGas", - "type": "uint256" - } - ], - "name": "setMinDstGas", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "oracleAddress_", - "type": "address" - } - ], - "name": "setOracle", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_dstChainId", - "type": "uint16" - }, - { - "internalType": "uint256", - "name": "_size", - "type": "uint256" - } - ], - "name": "setPayloadSizeLimit", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "_precrime", - "type": "address" - } - ], - "name": "setPrecrime", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_version", - "type": "uint16" - } - ], - "name": "setReceiveVersion", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_version", - "type": "uint16" - } - ], - "name": "setSendVersion", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_remoteChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_path", - "type": "bytes" - } - ], - "name": "setTrustedRemote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "_remoteChainId", - "type": "uint16" - }, - { - "internalType": "bytes", - "name": "_remoteAddress", - "type": "bytes" - } - ], - "name": "setTrustedRemoteAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "user_", - "type": "address" - }, - { - "internalType": "bool", - "name": "val_", - "type": "bool" - } - ], - "name": "setWhitelist", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "sharedDecimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "bytes4", - "name": "interfaceId", - "type": "bytes4" - } - ], - "name": "supportsInterface", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "token", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint16", - "name": "", - "type": "uint16" - } - ], - "name": "trustedRemoteLookup", - "outputs": [ - { - "internalType": "bytes", - "name": "", - "type": "bytes" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "whitelist", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/simulations/vip-500/abi/aggregator.json b/simulations/vip-500/abi/aggregator.json deleted file mode 100644 index 9fe87222f..000000000 --- a/simulations/vip-500/abi/aggregator.json +++ /dev/null @@ -1,113 +0,0 @@ -[ - { - "inputs": [], - "name": "decimals", - "outputs": [ - { - "internalType": "uint8", - "name": "", - "type": "uint8" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "description", - "outputs": [ - { - "internalType": "string", - "name": "", - "type": "string" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "uint80", - "name": "_roundId", - "type": "uint80" - } - ], - "name": "getRoundData", - "outputs": [ - { - "internalType": "uint80", - "name": "roundId", - "type": "uint80" - }, - { - "internalType": "int256", - "name": "answer", - "type": "int256" - }, - { - "internalType": "uint256", - "name": "startedAt", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "updatedAt", - "type": "uint256" - }, - { - "internalType": "uint80", - "name": "answeredInRound", - "type": "uint80" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "latestRoundData", - "outputs": [ - { - "internalType": "uint80", - "name": "roundId", - "type": "uint80" - }, - { - "internalType": "int256", - "name": "answer", - "type": "int256" - }, - { - "internalType": "uint256", - "name": "startedAt", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "updatedAt", - "type": "uint256" - }, - { - "internalType": "uint80", - "name": "answeredInRound", - "type": "uint80" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "version", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/simulations/vip-500/abi/redstoneOracle.json b/simulations/vip-500/abi/redstoneOracle.json deleted file mode 100644 index dba10f01c..000000000 --- a/simulations/vip-500/abi/redstoneOracle.json +++ /dev/null @@ -1,398 +0,0 @@ -[ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "address", - "name": "calledContract", - "type": "address" - }, - { - "internalType": "string", - "name": "methodSignature", - "type": "string" - } - ], - "name": "Unauthorized", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldAccessControlManager", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAccessControlManager", - "type": "address" - } - ], - "name": "NewAccessControlManager", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "previousPriceMantissa", - "type": "uint256" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "newPriceMantissa", - "type": "uint256" - } - ], - "name": "PricePosted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "feed", - "type": "address" - }, - { - "indexed": false, - "internalType": "uint256", - "name": "maxStalePeriod", - "type": "uint256" - } - ], - "name": "TokenConfigAdded", - "type": "event" - }, - { - "inputs": [], - "name": "NATIVE_TOKEN_ADDR", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "accessControlManager", - "outputs": [ - { - "internalType": "contract IAccessControlManagerV8", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - } - ], - "name": "getPrice", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "accessControlManager_", - "type": "address" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pendingOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "prices", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "accessControlManager_", - "type": "address" - } - ], - "name": "setAccessControlManager", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "uint256", - "name": "price", - "type": "uint256" - } - ], - "name": "setDirectPrice", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address", - "name": "feed", - "type": "address" - }, - { - "internalType": "uint256", - "name": "maxStalePeriod", - "type": "uint256" - } - ], - "internalType": "struct ChainlinkOracle.TokenConfig", - "name": "tokenConfig", - "type": "tuple" - } - ], - "name": "setTokenConfig", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address", - "name": "feed", - "type": "address" - }, - { - "internalType": "uint256", - "name": "maxStalePeriod", - "type": "uint256" - } - ], - "internalType": "struct ChainlinkOracle.TokenConfig[]", - "name": "tokenConfigs_", - "type": "tuple[]" - } - ], - "name": "setTokenConfigs", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "name": "tokenConfigs", - "outputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address", - "name": "feed", - "type": "address" - }, - { - "internalType": "uint256", - "name": "maxStalePeriod", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - } -] diff --git a/simulations/vip-500/abi/resilientOracle.json b/simulations/vip-500/abi/resilientOracle.json deleted file mode 100644 index 35f52caa0..000000000 --- a/simulations/vip-500/abi/resilientOracle.json +++ /dev/null @@ -1,640 +0,0 @@ -[ - { - "inputs": [ - { - "internalType": "address", - "name": "nativeMarketAddress", - "type": "address" - }, - { - "internalType": "address", - "name": "vaiAddress", - "type": "address" - }, - { - "internalType": "contract BoundValidatorInterface", - "name": "_boundValidator", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "sender", - "type": "address" - }, - { - "internalType": "address", - "name": "calledContract", - "type": "address" - }, - { - "internalType": "string", - "name": "methodSignature", - "type": "string" - } - ], - "name": "Unauthorized", - "type": "error" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "uint8", - "name": "version", - "type": "uint8" - } - ], - "name": "Initialized", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "oldAccessControlManager", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "newAccessControlManager", - "type": "address" - } - ], - "name": "NewAccessControlManager", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "role", - "type": "uint256" - }, - { - "indexed": true, - "internalType": "bool", - "name": "enable", - "type": "bool" - } - ], - "name": "OracleEnabled", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "oracle", - "type": "address" - }, - { - "indexed": true, - "internalType": "uint256", - "name": "role", - "type": "uint256" - } - ], - "name": "OracleSet", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferStarted", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "OwnershipTransferred", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Paused", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "mainOracle", - "type": "address" - }, - { - "indexed": true, - "internalType": "address", - "name": "pivotOracle", - "type": "address" - }, - { - "indexed": false, - "internalType": "address", - "name": "fallbackOracle", - "type": "address" - } - ], - "name": "TokenConfigAdded", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": false, - "internalType": "address", - "name": "account", - "type": "address" - } - ], - "name": "Unpaused", - "type": "event" - }, - { - "inputs": [], - "name": "INVALID_PRICE", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "NATIVE_TOKEN_ADDR", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "acceptOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "accessControlManager", - "outputs": [ - { - "internalType": "contract IAccessControlManagerV8", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "boundValidator", - "outputs": [ - { - "internalType": "contract BoundValidatorInterface", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "enum ResilientOracle.OracleRole", - "name": "role", - "type": "uint8" - }, - { - "internalType": "bool", - "name": "enable", - "type": "bool" - } - ], - "name": "enableOracle", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "enum ResilientOracle.OracleRole", - "name": "role", - "type": "uint8" - } - ], - "name": "getOracle", - "outputs": [ - { - "internalType": "address", - "name": "oracle", - "type": "address" - }, - { - "internalType": "bool", - "name": "enabled", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - } - ], - "name": "getPrice", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - } - ], - "name": "getTokenConfig", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address[3]", - "name": "oracles", - "type": "address[3]" - }, - { - "internalType": "bool[3]", - "name": "enableFlagsForOracles", - "type": "bool[3]" - } - ], - "internalType": "struct ResilientOracle.TokenConfig", - "name": "", - "type": "tuple" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "vToken", - "type": "address" - } - ], - "name": "getUnderlyingPrice", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "accessControlManager_", - "type": "address" - } - ], - "name": "initialize", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "nativeMarket", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "owner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "paused", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "pendingOwner", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "accessControlManager_", - "type": "address" - } - ], - "name": "setAccessControlManager", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address", - "name": "oracle", - "type": "address" - }, - { - "internalType": "enum ResilientOracle.OracleRole", - "name": "role", - "type": "uint8" - } - ], - "name": "setOracle", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address[3]", - "name": "oracles", - "type": "address[3]" - }, - { - "internalType": "bool[3]", - "name": "enableFlagsForOracles", - "type": "bool[3]" - } - ], - "internalType": "struct ResilientOracle.TokenConfig", - "name": "tokenConfig", - "type": "tuple" - } - ], - "name": "setTokenConfig", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "components": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - }, - { - "internalType": "address[3]", - "name": "oracles", - "type": "address[3]" - }, - { - "internalType": "bool[3]", - "name": "enableFlagsForOracles", - "type": "bool[3]" - } - ], - "internalType": "struct ResilientOracle.TokenConfig[]", - "name": "tokenConfigs_", - "type": "tuple[]" - } - ], - "name": "setTokenConfigs", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "unpause", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "asset", - "type": "address" - } - ], - "name": "updateAssetPrice", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "vToken", - "type": "address" - } - ], - "name": "updatePrice", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "vai", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - } -] diff --git a/simulations/vip-500/checkXVSBridge.ts b/simulations/vip-500/checkXVSBridge.ts deleted file mode 100644 index 4201716a1..000000000 --- a/simulations/vip-500/checkXVSBridge.ts +++ /dev/null @@ -1,194 +0,0 @@ -import { SignerWithAddress } from "@nomiclabs/hardhat-ethers/signers"; -import { expect } from "chai"; -import { Contract } from "ethers"; -import { parseUnits } from "ethers/lib/utils"; -import { ethers } from "hardhat"; -import { Proposal } from "src/types"; -import { expectEvents, initMainnetUser, setMaxStalePeriod } from "src/utils"; -import { testForkedNetworkVipCommands } from "src/vip-framework"; - -import { RemoteBridgeEntry } from "../../vips/vip-407/types"; -import XVS_ABI from "./abi/XVS.json"; -import XVS_BRIDGE_ADMIN_ABI from "./abi/XVSBridgeAdmin.json"; -import XVS_BRIDGE_SRC_ABI from "./abi/XVSProxyOFTSrc.json"; -import RESILIENT_ORACLE_ABI from "./abi/resilientOracle.json"; - -const XVS_HOLDER = "0x000000000000000000000000000000000000dEaD"; - -export async function checkXVSBridge( - remoteLzChainId: number | undefined, - networkAddresses: { [key: string]: any }, - vip: () => Promise, - trustedRemote: string, - bridgeConfiguration: RemoteBridgeEntry, - minDstGas: string, -) { - const provider = ethers.provider; - let resilientOracle: Contract; - let bridge: Contract; - let xvs: Contract; - let xvsHolderSigner: SignerWithAddress; - let receiver: SignerWithAddress; - let receiverAddressBytes32: string; - let defaultAdapterParams: string; - - beforeEach(async () => { - bridge = new ethers.Contract(bridgeConfiguration.proxyOFT, XVS_BRIDGE_SRC_ABI, provider); - xvsHolderSigner = await initMainnetUser(XVS_HOLDER, ethers.utils.parseEther("2")); - [receiver] = await ethers.getSigners(); - receiverAddressBytes32 = ethers.utils.defaultAbiCoder.encode(["address"], [receiver.address]); - defaultAdapterParams = ethers.utils.solidityPack(["uint16", "uint256"], [1, 300000]); - resilientOracle = new ethers.Contract(networkAddresses.RESILIENT_ORACLE, RESILIENT_ORACLE_ABI, provider); - - // Let's fund the XVS_HOLDER wallet with some XVS tokens - const impersonatedBridge = await initMainnetUser(bridge.address, parseUnits("1", 18)); - - xvs = new ethers.Contract(networkAddresses.XVS, XVS_ABI, impersonatedBridge); - await xvs.mint(XVS_HOLDER, parseUnits("10000", 18)); - }); - - testForkedNetworkVipCommands("VIP", await vip(), { - callbackAfterExecution: async txResponse => { - await expectEvents( - txResponse, - [XVS_BRIDGE_ADMIN_ABI, XVS_BRIDGE_SRC_ABI], - [ - "SetMinDstGas", - "SetMaxSingleTransactionLimit", - "SetMaxDailyLimit", - "SetMaxSingleReceiveTransactionLimit", - "SetMaxDailyReceiveLimit", - "SetTrustedRemoteAddress", - "Failure", - ], - [1, 1, 1, 1, 1, 1, 0], - ); - }, - }); - - describe("Post-VIP behavior", () => { - before(async () => { - await setMaxStalePeriod(resilientOracle, xvs); - }); - - it("Should match trusted remote address", async () => { - expect(await bridge.getTrustedRemoteAddress(remoteLzChainId)).to.equal(trustedRemote.toLowerCase()); - }); - - it("Should match minDestGas value", async () => { - expect(await bridge.minDstGasLookup(remoteLzChainId, 0)).to.equal(minDstGas); - }); - - describe("Limits", () => { - it("Should match single send transaction limit", async () => { - expect(await bridge.chainIdToMaxSingleTransactionLimit(remoteLzChainId)).to.equal( - bridgeConfiguration.maxSingleTransactionLimit, - ); - }); - - it("Should match single receive transaction limit", async () => { - expect(await bridge.chainIdToMaxSingleReceiveTransactionLimit(remoteLzChainId)).to.equal( - bridgeConfiguration.maxSingleReceiveTransactionLimit, - ); - }); - - it("Should match max daily send limit", async () => { - expect(await bridge.chainIdToMaxDailyLimit(remoteLzChainId)).to.equal(bridgeConfiguration.maxDailyLimit); - }); - - it("Should match max daily receive limit", async () => { - expect(await bridge.chainIdToMaxDailyReceiveLimit(remoteLzChainId)).to.equal( - bridgeConfiguration.maxDailyReceiveLimit, - ); - }); - }); - - it("Should emit an event on successfull bridging of XVS", async () => { - const amount = parseUnits("0.5", 18); - const nativeFee = ( - await bridge.estimateSendFee(remoteLzChainId, receiverAddressBytes32, amount, false, defaultAdapterParams) - ).nativeFee; - - await xvs.connect(xvsHolderSigner).approve(bridge.address, amount); - await expect( - bridge - .connect(xvsHolderSigner) - .sendFrom( - XVS_HOLDER, - remoteLzChainId, - receiverAddressBytes32, - amount, - [XVS_HOLDER, ethers.constants.AddressZero, defaultAdapterParams], - { value: nativeFee }, - ), - ) - .to.be.emit(bridge, "SendToChain") - .withArgs(remoteLzChainId, XVS_HOLDER, receiverAddressBytes32, amount); - }); - - it("Reverts if single transaction limit exceed", async function () { - const amount = ethers.utils.parseUnits("10000", 18); - await xvs.connect(xvsHolderSigner).approve(bridge.address, amount); - - const nativeFee = ( - await bridge.estimateSendFee(remoteLzChainId, receiverAddressBytes32, amount, false, defaultAdapterParams) - ).nativeFee; - await expect( - bridge - .connect(xvsHolderSigner) - .sendFrom( - XVS_HOLDER, - remoteLzChainId, - receiverAddressBytes32, - amount, - [XVS_HOLDER, ethers.constants.AddressZero, defaultAdapterParams], - { value: nativeFee }, - ), - ).to.be.revertedWith("Single Transaction Limit Exceed"); - }); - - it("Reverts if max daily transaction limit exceed", async function () { - const xvsPrice = await resilientOracle.getPrice(networkAddresses.XVS); - const singleTransactionLimit = await bridge.chainIdToMaxSingleTransactionLimit(remoteLzChainId); - const dailyTransactionLimit = await bridge.chainIdToMaxDailyLimit(remoteLzChainId); - const safeTransactionAmount = parseUnits(singleTransactionLimit.div(xvsPrice).sub(1).toString(), 18); - const safeTransactionOcurrencies = dailyTransactionLimit.div(singleTransactionLimit); - - await xvs.connect(xvsHolderSigner).approve(bridge.address, ethers.constants.MaxUint256); // Let's approve enough XVS - const nativeFee = ( - await bridge.estimateSendFee( - remoteLzChainId, - receiverAddressBytes32, - safeTransactionAmount, - false, - defaultAdapterParams, - ) - ).nativeFee; - - for (let i = 0; i < safeTransactionOcurrencies; i++) { - await bridge - .connect(xvsHolderSigner) - .sendFrom( - XVS_HOLDER, - remoteLzChainId, - receiverAddressBytes32, - safeTransactionAmount, - [XVS_HOLDER, ethers.constants.AddressZero, defaultAdapterParams], - { value: nativeFee }, - ); - } - await expect( - bridge - .connect(xvsHolderSigner) - .sendFrom( - XVS_HOLDER, - remoteLzChainId, - receiverAddressBytes32, - safeTransactionAmount, - [XVS_HOLDER, ethers.constants.AddressZero, defaultAdapterParams], - { value: nativeFee }, - ), - ).to.be.revertedWith("Daily Transaction Limit Exceed"); - }); - }); -} diff --git a/vips/vip-500/bsctestnet.ts b/vips/vip-452/bsctestnet.ts similarity index 98% rename from vips/vip-500/bsctestnet.ts rename to vips/vip-452/bsctestnet.ts index f26a88246..6b32d6a50 100644 --- a/vips/vip-500/bsctestnet.ts +++ b/vips/vip-452/bsctestnet.ts @@ -115,10 +115,10 @@ function getRemoteBridgeCommands(remoteBridgeEntry: RemoteBridgeEntry): RemoteBr ]; } -const vip500 = () => { +const vip452 = () => { const meta = { version: "v2", - title: "VIP-500 Enable Unichain sepolia bridge", + title: "VIP-452 Enable Unichain sepolia bridge", description: `#### Summary Enable Unichain sepolia bridge`, forDescription: "I agree that Venus Protocol should proceed with this proposal", againstDescription: "I do not think that Venus Protocol should proceed with this proposal", @@ -128,4 +128,4 @@ const vip500 = () => { return makeProposal(remoteBridgeEntries.flatMap(getRemoteBridgeCommands), meta, ProposalType.REGULAR); }; -export default vip500; +export default vip452; diff --git a/vips/vip-500/types.ts b/vips/vip-500/types.ts deleted file mode 100644 index 53c654bb7..000000000 --- a/vips/vip-500/types.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { BigNumber } from "ethers"; - -import { LzChainId } from "../../src/types"; - -export type RemoteBridgeEntry = { - bridgeAdmin: string; - proxyOFT: string; - maxDailyLimit: BigNumber | number; - maxSingleTransactionLimit: BigNumber | number; - maxDailyReceiveLimit: BigNumber | number; - maxSingleReceiveTransactionLimit: BigNumber | number; - dstChainId: LzChainId | undefined; -}; - -export type RemoteBridgeCommand = { - target: string; - signature: string; - params: any[]; - dstChainId: LzChainId | undefined; -};