From 0e5dc9a6cab1f9e6b7e0c2e174dac0de78bd028d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Mon, 29 Apr 2024 14:21:07 +0200 Subject: [PATCH 01/19] feat: optimize addresses and constructorArgs files --- migrations/scripts/1_deployer.js | 22 ++++++---- migrations/scripts/3_core.js | 8 ++-- migrations/scripts/4_proxies.js | 10 +++-- migrations/scripts/5_apps.js | 70 +++++++++++++++++--------------- scripts/verify-apps.js | 3 +- scripts/verify-impls.js | 3 +- 6 files changed, 67 insertions(+), 49 deletions(-) diff --git a/migrations/scripts/1_deployer.js b/migrations/scripts/1_deployer.js index 77b52653..e8ed38dc 100644 --- a/migrations/scripts/1_deployer.js +++ b/migrations/scripts/1_deployer.js @@ -14,9 +14,11 @@ module.exports = async function (deployer, network, [,,, master]) { ) { await deployer.deploy(WitnetDeployer, { from: master }) const factory = await WitnetDeployer.deployed() - addresses[network].WitnetDeployer = factory.address - if (!utils.isDryRun(network)) { - await utils.overwriteJsonFile("./migrations/addresses.json", addresses) + if (factory.address !== addresses?.default?.WitnetDeployer) { + addresses[network].WitnetDeployer = factory.address + if (!utils.isDryRun(network)) { + await utils.overwriteJsonFile("./migrations/addresses.json", addresses) + } } } else { const factory = await WitnetDeployer.at(factoryAddr) @@ -26,11 +28,17 @@ module.exports = async function (deployer, network, [,,, master]) { console.info() } - if (utils.isNullAddress(addresses[network]?.WitnetProxy)) { + const proxyAddr = addresses[network]?.WitnetProxy || addresses?.default?.WitnetProxy || "" + if ( + utils.isNullAddress(proxyAddr) || + (await web3.eth.getCode(proxyAddr)).length < 3 + ) { await deployer.deploy(WitnetProxy, { from: master }) - addresses[network].WitnetProxy = WitnetProxy.address - if (!utils.isDryRun(network)) { - await utils.overwriteJsonFile("./migrations/addresses.json", addresses) + if (WitnetProxy.address !== addresses?.default?.WitnetProxy) { + addresses[network].WitnetProxy = WitnetProxy.address + if (!utils.isDryRun(network)) { + await utils.overwriteJsonFile("./migrations/addresses.json", addresses) + } } } } diff --git a/migrations/scripts/3_core.js b/migrations/scripts/3_core.js index c8605747..6d2ba98a 100644 --- a/migrations/scripts/3_core.js +++ b/migrations/scripts/3_core.js @@ -142,9 +142,11 @@ async function deploy (specs) { if (!utils.isDryRun(network)) { await utils.overwriteJsonFile("./migrations/addresses.json", addresses) const args = await utils.readJsonFromFile("./migrations/constructorArgs.json") - if (!args[network]) args[network] = {} - args[network][key] = constructorArgs.slice(2) - await utils.overwriteJsonFile("./migrations/constructorArgs.json", args) + if (!args?.default[key] || constructorArgs.slice(2) !== args.default[key]) { + if (!args[network]) args[network] = {} + args[network][key] = constructorArgs.slice(2) + await utils.overwriteJsonFile("./migrations/constructorArgs.json", args) + } } } else { utils.traceHeader(`Skipped '${key}'`) diff --git a/migrations/scripts/4_proxies.js b/migrations/scripts/4_proxies.js index 315c90c3..40e0c528 100644 --- a/migrations/scripts/4_proxies.js +++ b/migrations/scripts/4_proxies.js @@ -88,14 +88,16 @@ async function deploy (target) { } } if ((await web3.eth.getCode(proxyAddr)).length > 3) { - addresses[network][key] = proxyAddr + if (proxyAddr !== addresses?.default[key]) { + addresses[network][key] = proxyAddr + if (!utils.isDryRun(network)) { + await utils.overwriteJsonFile("./migrations/addresses.json", addresses) + } + } } else { console.info(`Error: Contract was not deployed on expected address: ${proxyAddr}`) process.exit(1) } - if (!utils.isDryRun(network)) { - await utils.overwriteJsonFile("./migrations/addresses.json", addresses) - } } else { const oldAddr = await getProxyImplementation(from, proxyAddr) const newImpl = await artifacts.require(targets[key]).deployed() diff --git a/migrations/scripts/5_apps.js b/migrations/scripts/5_apps.js index 396008b1..ae72acda 100644 --- a/migrations/scripts/5_apps.js +++ b/migrations/scripts/5_apps.js @@ -15,20 +15,22 @@ module.exports = async function (_, network, [, from]) { // ========================================================================== // --- WitnetRandomnessV2 -------------------------------------------------- - await deploy({ - network, - targets, - from: utils.isDryRun(network) ? from : specs.WitnetRandomness.from || from, - key: "WitnetRandomness", - specs: specs.WitnetRandomness, - intrinsics: { - types: ["address", "address"], - values: [ - /* _witnetOracle */ await determineProxyAddr(from, specs.WitnetOracle?.vanity || 3), - /* _witnetOperator */ utils.isDryRun(network) ? from : specs?.WitnetRandomness?.from || from, - ], - }, - }) + if (!process.argv.includes("--no-randomness")) { + await deploy({ + network, + targets, + from: utils.isDryRun(network) ? from : specs.WitnetRandomness.from || from, + key: "WitnetRandomness", + specs: specs.WitnetRandomness, + intrinsics: { + types: ["address", "address"], + values: [ + /* _witnetOracle */ await determineProxyAddr(from, specs.WitnetOracle?.vanity || 3), + /* _witnetOperator */ utils.isDryRun(network) ? from : specs?.WitnetRandomness?.from || from, + ], + }, + }) + } } async function deploy (target) { @@ -43,12 +45,10 @@ async function deploy (target) { const artifact = artifacts.require(key) const contract = artifacts.require(targets[key]) if ( - addresses[network][targets[key]] === "" || - selection.includes(key) || - (libs && selection.filter(item => libs.includes(item)).length > 0) || - (!utils.isNullAddress(addresses[network][targets[key]]) && ( - await web3.eth.getCode(addresses[network][targets[key]])).length < 3 - ) + (!utils.isNullAddress(addresses[network][targets[key]] || addresses?.default[targets[key]]) + && (await web3.eth.getCode(addresses[network][targets[key]] || addresses?.default[targets[key]])).length < 3) + || addresses[network][targets[key]] === "" + || selection.includes(targets[key]) ) { utils.traceHeader(`Deploying '${key}'...`) console.info(" ", "> account: ", from) @@ -73,25 +73,29 @@ async function deploy (target) { const tx = await deployer.deploy(initCode, salt || "0x0", { from }) utils.traceTx(tx) if ((await web3.eth.getCode(addr)).length > 3) { - addresses[network][targets[key]] = addr + if (addr !== addresses?.default[targets[key]]) { + addresses[network][targets[key]] = addr + // save addresses file if required + if (!utils.isDryRun(network)) { + await utils.overwriteJsonFile("./migrations/addresses.json", addresses) + const args = await utils.readJsonFromFile("./migrations/constructorArgs.json") + if (!args?.default[targets[key]] || constructorArgs.slice(2) !== args.default[targets[key]]) { + if (!args[network]) args[network] = {} + args[network][targets[key]] = constructorArgs.slice(2) + await utils.overwriteJsonFile("./migrations/constructorArgs.json", args) + } + } + } } else { console.info(`Error: Contract was not deployed on expected address: ${addr}`) process.exit(1) } - // save addresses file if required - if (!utils.isDryRun(network)) { - await utils.overwriteJsonFile("./migrations/addresses.json", addresses) - const args = await utils.readJsonFromFile("./migrations/constructorArgs.json") - if (!args[network]) args[network] = {} - args[network][targets[key]] = constructorArgs.slice(2) - await utils.overwriteJsonFile("./migrations/constructorArgs.json", args) - } - } else if (addresses[network][key]) { + } else { utils.traceHeader(`Skipped '${key}'`) } - if (!utils.isNullAddress(addresses[network][targets[key]])) { - artifact.address = addresses[network][targets[key]] - contract.address = addresses[network][targets[key]] + if (!utils.isNullAddress(addresses[network][targets[key]]) || addresses?.default[targets[key]]) { + artifact.address = addresses[network][targets[key]] || addresses?.default[targets[key]] + contract.address = addresses[network][targets[key]] || addresses?.default[targets[key]] for (const index in libs) { const libname = libs[index] const lib = artifacts.require(libname) diff --git a/scripts/verify-apps.js b/scripts/verify-apps.js index cac4e373..8914ca45 100644 --- a/scripts/verify-apps.js +++ b/scripts/verify-apps.js @@ -21,8 +21,9 @@ const apps = [ artifacts.WitnetRandomness, ] const constructorArgs = require("../migrations/constructorArgs.json") +if (!constructorArgs[network]) constructorArgs[network] = {} for (const index in apps) { utils.traceVerify(network, `${apps[index]} --forceConstructorArgs string:${ - constructorArgs[network][apps[index]] + constructorArgs[network][apps[index]] || constructorArgs?.default[apps[index]] }`) } diff --git a/scripts/verify-impls.js b/scripts/verify-impls.js index eccb7290..851dc7a3 100644 --- a/scripts/verify-impls.js +++ b/scripts/verify-impls.js @@ -24,8 +24,9 @@ const impls = [ artifacts.WitnetRequestFactory, ] const constructorArgs = require("../migrations/constructorArgs.json") +if (!constructorArgs[network]) constructorArgs[network] = {} for (const index in impls) { utils.traceVerify(network, `${impls[index]} --forceConstructorArgs string:${ - constructorArgs[network][impls[index]] + constructorArgs[network][impls[index]] || constructorArgs?.default[impls[index]] } --verifiers etherscan`) } From 243d30b4431791008f248a5e883422365d84cc8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Mon, 29 Apr 2024 14:21:33 +0200 Subject: [PATCH 02/19] chore: rollback default witnesses to 10 --- contracts/apps/UsingWitnet.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/apps/UsingWitnet.sol b/contracts/apps/UsingWitnet.sol index 12ed6233..11ef2a7b 100644 --- a/contracts/apps/UsingWitnet.sol +++ b/contracts/apps/UsingWitnet.sol @@ -34,7 +34,7 @@ abstract contract UsingWitnet __witnet = _wrb; __witnetDefaultSLA = WitnetV2.RadonSLA({ // Number of nodes in the Witnet blockchain that will take part in solving the data request: - committeeSize: 15, + committeeSize: 10, // Fee in $nanoWIT paid to every node in the Witnet blockchain involved in solving the data request: witnessingFeeNanoWit: 2 * 10 ** 8 // defaults to 0.2 $WIT }); From a44b042f629af3b17df8cd01ef2046ad483e4124 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Mon, 29 Apr 2024 14:22:17 +0200 Subject: [PATCH 03/19] chore: arbitrum:goerli -> arbitrum:sepolia --- settings/networks.js | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/settings/networks.js b/settings/networks.js index f78ac368..d9ff04ec 100644 --- a/settings/networks.js +++ b/settings/networks.js @@ -3,12 +3,12 @@ module.exports = { host: "localhost", skipDryRun: true, }, - "arbitrum:goerli": { - network_id: 421613, + "arbitrum:sepolia": { + network_id: 421614, port: 8517, verify: { - apiUrl: "https://api-goerli.arbiscan.io/", - browserURL: "https://goerli.arbiscan.io/", + apiUrl: "https://api-sepolia.arbiscan.io/api", + browserURL: "https://sepolia.arbiscan.io/", }, }, "arbitrum:one": { @@ -236,8 +236,8 @@ module.exports = { port: 8508, network_id: 5003, verify: { - apiUrl: "https://explorer.sepolia.mantle.xyz/api", - explorerUrl: "https://explorer.sepolia.mantle.xyz/", + apiUrl: "https://api-sepolia.mantlescan.xyz/api", + explorerUrl: "https://sepolia.mantlescan.xyz/", }, }, "mantle:mainnet": { @@ -314,11 +314,11 @@ module.exports = { network_id: 10, verify: { apiKey: process.env.ETHERSCAN_OPTIMISM_API_KEY, - apiKey: "MY_API_KEY", - // apiUrl: "https://api-optimistic.etherscan.io/api", - apiUrl: "https://optimism.blockscout.com/api", - // explorerUrl: "https://optimistic.etherscan.io/", - explorerUrl: "https://optimism.blockscout.com/", + // apiKey: "MY_API_KEY", + apiUrl: "https://api-optimistic.etherscan.io/api", + // apiUrl: "https://optimism.blockscout.com/api", + explorerUrl: "https://optimistic.etherscan.io/", + // explorerUrl: "https://optimism.blockscout.com/", }, }, "polygon:goerli": { From 4b90de1ab63b5b6abdb87d001fb0a81b8d13cd43 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Mon, 29 Apr 2024 14:22:53 +0200 Subject: [PATCH 04/19] chore: zip addresses and constructorArgs files --- migrations/addresses.json | 32 +++++++++++++------------ migrations/constructorArgs.json | 42 +++++---------------------------- 2 files changed, 23 insertions(+), 51 deletions(-) diff --git a/migrations/addresses.json b/migrations/addresses.json index 6bd96838..f08e3c07 100644 --- a/migrations/addresses.json +++ b/migrations/addresses.json @@ -2,7 +2,9 @@ "default": { "WitnetDeployer": "0x03232aBE800D1638B30432FeEF300581De323a4E", "WitnetOracle": "0x77703aE126B971c9946d562F41Dd47071dA00777", + "WitnetProxy": "0xaC3E870BF8D13Dc39f76936b6AF8279eF5a9211F", "WitnetPriceFeeds": "0x1111AbA2164AcdC6D291b08DfB374280035E1111", + "WitnetRandomnessV2": "0xC0FFEE98AD1434aCbDB894BbB752e138c1006fAB", "WitnetRequestBytecodes": "0x000B61Fe075F545fd37767f40391658275900000", "WitnetRequestFactory": "0x000DB36997AF1F02209A6F995883B9B699900000" }, @@ -12,9 +14,13 @@ "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "base:sepolia": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", "WitnetOracleTrustableOvm2": "0x9F02CD498b47B928c5a12FdC7cEa36246d27a638", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetPriceFeedsDefault": "0xcB61b81a775E56e9Ec8884d2E13352d668294141", - "WitnetRandomnessV2": "0xC0FFEE98AD1434aCbDB894BbB752e138c1006fAB", "WitnetRequestBytecodesDefault": "0x730a88594d8287Ec898b2B7fE592aB155bE71590", "WitnetRequestFactoryDefault": "0xe1CDE456D3eC92640711625E01170A6800773b91" }, @@ -23,56 +29,52 @@ "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", - "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetOracleTrustableDefault": "0xE790FdaEa7f1f4C4Bbd74B3493Cf94E79b24396a", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetPriceFeedsDefault": "0x327470b70d0cCF47cB89a1f3475DE23Ac2437c9e", - "WitnetRandomnessV2": "0xC0FFEE98AD1434aCbDB894BbB752e138c1006fAB", "WitnetRequestBytecodesDefault": "0x34e6465f23aE086e5701A6ca8547aF7c29e0283C", "WitnetRequestFactoryDefault": "0x1869A7137dF26397999AA6DB90c7D6D029d13908" }, "mantle:sepolia": { - "WitnetProxy": "0xaC3E870BF8D13Dc39f76936b6AF8279eF5a9211F", "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", - "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", - "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190", "WitnetOracleTrustableOvm2": "0x8423ddeb7d86Ce43a9C643bE3A420Ff69825Dd53", "WitnetPriceFeedsDefault": "0x853DDf69DbEaDA2fc4A521a1dBA5Beb210a5c4d2", - "WitnetRandomnessV2": "0x1f277599E94a320A1004bF9D81794725Fd3B6816" + "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", + "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190" }, "optimism:mainnet": { "WitnetProxy": "0xADA577AC8eE9Cb726F6FC45f0B0716FD1aB3637D", "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", - "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", - "WitnetRandomnessV2": "0xC0FFEE98AD1434aCbDB894BbB752e138c1006fAB", - "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", - "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetOracleTrustableOvm2": "0x8423ddeb7d86Ce43a9C643bE3A420Ff69825Dd53", - "WitnetPriceFeedsDefault": "0x853DDf69DbEaDA2fc4A521a1dBA5Beb210a5c4d2" + "WitnetPriceFeedsDefault": "0x853DDf69DbEaDA2fc4A521a1dBA5Beb210a5c4d2", + "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", + "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190" }, "optimism:sepolia": { "WitnetProxy": "0x58Bd0091748d0438f379bbf7D8BfF3a624CEbc3F", "WitnetErrorsLib": "0x4f2F381Ed2020095F1a1B5a0BDe5AB30da916BC9", "WitnetEncodingLib": "0xf321bcD29CFc6134c9Bf42F759f428F3A6010919", - "WitnetPriceFeedsLib": "0x85aa4A0fDa112c47d4216448EE4D49Afd072675e", "WitnetOracleDataLib": "0x25d57Cf8a047B14172Ba2a929C1441E1A77c3f9D", "WitnetOracleTrustableOvm2": "0xc1C158e77A91da158a1A2D0c2A154c68a8C7c0d2", + "WitnetPriceFeedsLib": "0x85aa4A0fDa112c47d4216448EE4D49Afd072675e", "WitnetPriceFeedsDefault": "0xA936f7F4909494Ea1F7D898C2759b2324912153d", - "WitnetRandomnessV2": "0xC0FFEE98AD1434aCbDB894BbB752e138c1006fAB", "WitnetRequestBytecodesDefault": "0x2D8BCBC4F8c97CC227e770d95d19914324baBF2A", "WitnetRequestFactoryDefault": "0x3D551165020a4014A8d5b9E4b73D2b3Dbe401546" }, + "reef:testnet": {}, "ten:testnet": { "WitnetProxy": "0x4563C77E85c1374754ffec3e6220d13Ddc8620eF", "WitnetErrorsLib": "0x19900f2432ffC755224bd9e5411c5B8E07883eC8", "WitnetEncodingLib": "0xf321bcD29CFc6134c9Bf42F759f428F3A6010919", - "WitnetPriceFeedsLib": "0x85aa4A0fDa112c47d4216448EE4D49Afd072675e", "WitnetOracleDataLib": "0xBeFdE8285b613b17CE94705b53A57E5509D40397", "WitnetOracleTrustableObscuro": "", + "WitnetPriceFeedsLib": "0x85aa4A0fDa112c47d4216448EE4D49Afd072675e", "WitnetPriceFeedsDefault": "", "WitnetRequestBytecodesDefault": "0x05e81E99ba36dC08079193D0Fad4Eb579E43ECE7", "WitnetRequestFactoryDefault": "0x8C4ed866d3418c05CA0325524624EC6CE52ADC44" diff --git a/migrations/constructorArgs.json b/migrations/constructorArgs.json index 00ff2522..908685b7 100644 --- a/migrations/constructorArgs.json +++ b/migrations/constructorArgs.json @@ -1,43 +1,13 @@ { - "base:sepolia": { - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31312d38333330636665000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31312d38333330636665000000000000000000000000000000000000", + "default": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d61653734633030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31312d38333330636665000000000000000000000000000000000000", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000", "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d" }, - "ethereum:sepolia": { - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31322d35616362653333000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d35616362653333000000000000000000000000000000000000", - "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d35616362653333000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31322d32636532363233000000000000000000000000000000000000", - "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d" - }, - "mantle:sepolia": { - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000", - "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000", - "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d" - }, - "optimism:mainnet": { - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000", - "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31322d30306539323835000000000000000000000000000000000000", - "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d" - }, - "optimism:sepolia": { - "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d", - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e382d3465626434366300000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e382d3465626434366300000000000000000000000000000000000000", - "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d35616362653333000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31322d35616362653333000000000000000000000000000000000000" - }, "ten:testnet": { - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e372d3033346663383100000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e372d3033346663383100000000000000000000000000000000000000", - "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e372d3033346663383100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e372d3033346663383100000000000000000000000000000000000000" + "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e372d3033346663383100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" } } \ No newline at end of file From 48c6dd6613303b62adb789c44e18b9e3b0e6d48f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Mon, 29 Apr 2024 14:24:30 +0200 Subject: [PATCH 05/19] chore: deploy and verify on arbitrum:sepolia --- migrations/addresses.json | 8 ++++++-- truffle-config.js | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/migrations/addresses.json b/migrations/addresses.json index f08e3c07..e4070d9b 100644 --- a/migrations/addresses.json +++ b/migrations/addresses.json @@ -8,12 +8,16 @@ "WitnetRequestBytecodes": "0x000B61Fe075F545fd37767f40391658275900000", "WitnetRequestFactory": "0x000DB36997AF1F02209A6F995883B9B699900000" }, - "base:sepolia": { - "WitnetProxy": "0xaC3E870BF8D13Dc39f76936b6AF8279eF5a9211F", + "arbitrum:sepolia": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x85cd7aaF5248fC0568B003EF24FB2a5329C95c28", "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x682A7dF2852F3Df2d3B4b84803da69A38ba33180", + "WitnetRequestBytecodesDefault": "0x03604d41a0289cb9325814A6aCA8BaBEf7492B44", + "WitnetRequestFactoryDefault": "0x90a7Fc875dac0D453b43BF9E5AeE7dC68091CC24" + }, "base:sepolia": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", diff --git a/truffle-config.js b/truffle-config.js index 836b6122..214f5bc1 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -32,7 +32,7 @@ module.exports = { "truffle-plugin-verify", ], api_keys: { - arbiscan: process.env.ARBISCAN_API_KEY, + arbiscan: process.env.ETHERSCAN_ARBISCAN_API_KEY, bobascan: process.env.BOBASCAN_API_KEY, celo: process.env.CELOSCAN_API_KEY, cronos: process.env.CRONOSCAN_API_KEY, From 2ffb6f44d06255877ea642c6065fb29f1303fa72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Thu, 9 May 2024 15:27:03 +0200 Subject: [PATCH 06/19] chore: revisit etherscan config on truffle-config.js --- truffle-config.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/truffle-config.js b/truffle-config.js index 214f5bc1..0034b379 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -35,13 +35,16 @@ module.exports = { arbiscan: process.env.ETHERSCAN_ARBISCAN_API_KEY, bobascan: process.env.BOBASCAN_API_KEY, celo: process.env.CELOSCAN_API_KEY, - cronos: process.env.CRONOSCAN_API_KEY, + cronos: process.env.ETHERSCAN_CRONOS_API_KEY, + elastos: process.env.ETHERSCAN_ELASTOS_API_KEY, etherscan: process.env.ETHERSCAN_API_KEY, - mantle: process.env.ETHERSCAN_API_KEY, - moonscan: process.env.MOONSCAN_API_KEY, + kcc: process.env.ETHERSCAN_KCC_API_KEY, + mantlescan: process.env.ETHERSCAN_API_KEY, + moonscan: process.env.ETHERSCAN_MOONBEAM_API_KEY, + oklink: process.env.ETHERSCAN_OKLINK_API_KEY, + okx: process.env.ETHERSCAN_OKLINK_API_KEY, optimistic_etherscan: process.env.ETHERSCAN_OPTIMISM_API_KEY, - polygonscan: process.env.POLYGONSCAN_API_KEY, - routescan: process.env.ROUTESCAN_API_KEY, - scrollscan: process.env.SCROLLSCAN_API_KEY, + routescan: process.env.ETHERSCAN_ROUTESCAN_API_KEY, + scrollscan: process.env.ETHERSCAN_SCROLL_API_KEY, }, } From d247b6b6e9beaab5bfb73dea16ac73052e875195 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Thu, 9 May 2024 15:32:43 +0200 Subject: [PATCH 07/19] feat: enable customization of WitnetDeployer --- migrations/scripts/1_deployer.js | 13 ++++++++++--- scripts/verify-core.js | 3 ++- settings/artifacts.js | 1 + src/utils.js | 18 ++++++++++-------- 4 files changed, 23 insertions(+), 12 deletions(-) diff --git a/migrations/scripts/1_deployer.js b/migrations/scripts/1_deployer.js index e8ed38dc..9404a1b8 100644 --- a/migrations/scripts/1_deployer.js +++ b/migrations/scripts/1_deployer.js @@ -1,3 +1,4 @@ +const settings = require("../../settings") const utils = require("../../src/utils") const WitnetDeployer = artifacts.require("WitnetDeployer") @@ -12,14 +13,18 @@ module.exports = async function (deployer, network, [,,, master]) { utils.isNullAddress(factoryAddr) || (await web3.eth.getCode(factoryAddr)).length < 3 ) { - await deployer.deploy(WitnetDeployer, { from: master }) - const factory = await WitnetDeployer.deployed() + const WitnetDeployerImpl = artifacts.require(settings.getArtifacts(network).WitnetDeployer) + await deployer.deploy(WitnetDeployerImpl, { + from: settings.getSpecs(network)?.WitnetDeployer?.from || master + }) + const factory = await WitnetDeployerImpl.deployed() if (factory.address !== addresses?.default?.WitnetDeployer) { addresses[network].WitnetDeployer = factory.address if (!utils.isDryRun(network)) { await utils.overwriteJsonFile("./migrations/addresses.json", addresses) } } + WitnetDeployer.address = factory.address } else { const factory = await WitnetDeployer.at(factoryAddr) WitnetDeployer.address = factory.address @@ -33,7 +38,9 @@ module.exports = async function (deployer, network, [,,, master]) { utils.isNullAddress(proxyAddr) || (await web3.eth.getCode(proxyAddr)).length < 3 ) { - await deployer.deploy(WitnetProxy, { from: master }) + await deployer.deploy(WitnetProxy, { + from: settings.getSpecs(network)?.WitnetDeployer?.from || master + }) if (WitnetProxy.address !== addresses?.default?.WitnetProxy) { addresses[network].WitnetProxy = WitnetProxy.address if (!utils.isDryRun(network)) { diff --git a/scripts/verify-core.js b/scripts/verify-core.js index d55fb36e..9858ab3c 100644 --- a/scripts/verify-core.js +++ b/scripts/verify-core.js @@ -1,5 +1,6 @@ #!/usr/bin/env node +const settings = require("../settings") const utils = require("../src/utils") if (process.argv.length < 3) { @@ -15,7 +16,7 @@ console.info(header) console.info("=".repeat(header.length)) console.info() -utils.traceVerify(network, "WitnetDeployer") +utils.traceVerify(network, settings.getArtifacts(network).WitnetDeployer) utils.traceVerify(network, "WitnetProxy") const addresses = require("../migrations/addresses.json") diff --git a/settings/artifacts.js b/settings/artifacts.js index a73b6e94..85cf889a 100644 --- a/settings/artifacts.js +++ b/settings/artifacts.js @@ -1,5 +1,6 @@ module.exports = { default: { + WitnetDeployer: "WitnetDeployer", WitnetOracle: "WitnetOracleTrustableDefault", WitnetPriceFeeds: "WitnetPriceFeedsDefault", WitnetRandomness: "WitnetRandomnessV2", diff --git a/src/utils.js b/src/utils.js index dc74e767..90f8fb57 100644 --- a/src/utils.js +++ b/src/utils.js @@ -137,14 +137,16 @@ function traceHeader (header) { function traceTx (tx) { console.info(" ", "> transaction hash: ", tx.receipt.transactionHash) console.info(" ", "> gas used: ", tx.receipt.gasUsed.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")) - console.info(" ", "> gas price: ", tx.receipt.effectiveGasPrice / 10 ** 9, "gwei") - console.info(" ", "> total cost: ", parseFloat( - BigInt(tx.receipt.gasUsed) * - BigInt(tx.receipt.effectiveGasPrice) / - BigInt(10 ** 18) - ).toString(), - "ETH" - ) + if (tx.receipt?.effectiveGasPrice) { + console.info(" ", "> gas price: ", tx.receipt.effectiveGasPrice / 10 ** 9, "gwei") + console.info(" ", "> total cost: ", parseFloat( + BigInt(tx.receipt.gasUsed) * + BigInt(tx.receipt.effectiveGasPrice) / + BigInt(10 ** 18) + ).toString(), + "ETH" + ) + } } function traceVerify (network, verifyArgs) { From b224a3a85fa46684bd0e3f9c52bb5b6fb97f590a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Thu, 9 May 2024 15:34:45 +0200 Subject: [PATCH 08/19] chore: revisit networks config --- settings/networks.js | 167 ++++++++++++++++++++++++------------------- 1 file changed, 92 insertions(+), 75 deletions(-) diff --git a/settings/networks.js b/settings/networks.js index d9ff04ec..3f742210 100644 --- a/settings/networks.js +++ b/settings/networks.js @@ -8,7 +8,7 @@ module.exports = { port: 8517, verify: { apiUrl: "https://api-sepolia.arbiscan.io/api", - browserURL: "https://sepolia.arbiscan.io/", + explorerUrl: "https://sepolia.arbiscan.io/", }, }, "arbitrum:one": { @@ -23,8 +23,10 @@ module.exports = { network_id: 43113, port: 8533, verify: { - apiUrl: "https://api.arbiscan.io/api", - browserURL: "https://arbiscan.io/", + // apiUrl: "https://api.arbiscan.io/api", + apiKey: process.env.ETHERSCAN_ROUTESCAN_API_KEY, + apiUrl: "https://api.routescan.io/v2/network/testnet/evm/43113/etherscan/api", + explorerUrl: "https://testnet.snowtrace.io/", }, }, "base:sepolia": { @@ -33,7 +35,7 @@ module.exports = { verify: { apiKey: "MY_API_KEY", apiUrl: "https://base-sepolia.blockscout.com/api", - browserURL: "https://base-sepolia.blockscout.com/", + explorerUrl: "https://base-sepolia.blockscout.com/", }, }, "boba:bnb:testnet": { @@ -41,7 +43,7 @@ module.exports = { port: 8510, verify: { apiUrl: "https://api.routescan.io/v2/network/testnet/evm/2888/etherscan", - browserURL: "https://boba.testnet.routescan.io/", + explorerUrl: "https://boba.testnet.routescan.io/", }, }, "boba:bnb:mainnet": { @@ -49,7 +51,7 @@ module.exports = { port: 9510, verify: { apiUrl: "https://blockexplorer.bnb.boba.network/api", - browserURL: "https://blockexplorer.bnb.boba.network/", + explorerUrl: "https://blockexplorer.bnb.boba.network/", apiKey: "MY_API_KEY", }, }, @@ -58,7 +60,7 @@ module.exports = { port: 9539, verify: { apiUrl: "https://api.routescan.io/v2/network/mainnet/evm/all/etherscan", - browserURL: "https://bobascan.com/address/", + explorerUrl: "https://bobascan.com/address/", apiKey: "MY_API_KEY", }, }, @@ -67,26 +69,34 @@ module.exports = { port: 8515, verify: { apiUrl: "https://api.routescan.io/v2/network/testnet/evm/2888/etherscan", - browserURL: "https://boba.testnet.routescan.io/", + explorerUrl: "https://boba.testnet.routescan.io/", }, }, "celo:alfajores": { network_id: 44787, port: 8538, + verify: { + apiKey: process.env.ETHERSCAN_CELO_API_KEY, + apiUrl: "https://api-alfajores.celoscan.io/api", + explorerUrl: "https://alfjores.celoscan.io/", + }, }, "celo:mainnet": { network_id: 42220, port: 9538, verify: { apiKey: "MY_API_KEY", - apiUrl: "https://explorer.celo.org/alfajores/api", - browserURL: "https://explorer.celo.org/alfajores/", + apiUrl: "", + explorerUrl: "", }, }, "conflux:core:testnet": { port: 8540, - network_id: 1, - gasPrice: 10, + // network_id: 1, + verify: { + apiUrl: "https://api-testnet.confluxscan.io", + explorerUrl: "https://testnet.confluxscan.io/", + }, }, "conflux:core:mainnet": { port: 9540, @@ -94,14 +104,19 @@ module.exports = { gasPrice: 10, verify: { apiUrl: "https://explorer.celo.org/mainnet/api", - browserURL: "https://explorer.celo.org/mainnet/", + explorerUrl: "https://explorer.celo.org/mainnet/", }, }, "conflux:espace:testnet": { port: 8529, network_id: 71, - networkCheckTimeout: 999999, + // networkCheckTimeout: 999999, gas: 15000000, + verify: { + apiKey: "espace", + apiUrl: "https://evmapi-testnet.confluxscan.io/api/", + explorerUrl: "https://evmtestnet.confluxscan.io/", + } }, "conflux:espace:mainnet": { port: 9529, @@ -113,8 +128,9 @@ module.exports = { port: 8530, network_id: 338, verify: { - apiUrl: "https://cronos.org/explorer/testnet3/api", - browserURL: "https://cronos.org/explorer/testnet3", + apiKey: process.env.ETHERSCAN_CRONOS_API_KEY, + apiUrl: "https://explorer-api.cronos.org/testnet/api/v1/hardhat/contract?apikey=", + explorerUrl: "https://explorer.cronos.org/testnet", }, }, "cronos:mainnet": { @@ -125,26 +141,6 @@ module.exports = { port: 8522, network_id: 1819, }, - "ethereum:goerli": { - network_id: 5, - port: 8545, - verify: { - apiUrl: "https://api-goerli.etherscan.io/", - browserURL: "https://goerli.etherscan.io/", - }, - }, - "ethereum:mainnet": { - network_id: 1, - port: 9545, - }, - "ethereum:sepolia": { - network_id: 11155111, - port: 8506, - verify: { - apiUrl: "https://api-sepolia.etherscan.io/api", - browserURL: "https://sepolia.etherscan.io/", - }, - }, "dogechain:testnet": { port: 8519, network_id: 568, @@ -152,7 +148,7 @@ module.exports = { verify: { apiKey: "MY_API_KEY", apiUrl: "http://explorer-testnet.dogechain.dog/api", - browserURL: "https://explorer-testnet.dogechain.dog/", + explorerUrl: "https://explorer-testnet.dogechain.dog/", }, }, "dogechain:mainnet": { @@ -163,9 +159,8 @@ module.exports = { port: 8513, network_id: 21, verify: { - apiKey: "MY_API_KEY", apiUrl: "https://esc-testnet.elastos.io/api", - browserURL: "https://esc-testnet.elastos.io/address", + explorerUrl: "https://esc-testnet.elastos.io/address", }, }, "elastos:mainnet": { @@ -173,38 +168,46 @@ module.exports = { network_id: 20, verify: { apiUrl: "https://esc.elastos.io/api", - browserURL: "https://esc.elastos.io/address", + explorerUrl: "https://esc.elastos.io/address", + }, + }, + "ethereum:mainnet": { + network_id: 1, + port: 9545, + }, + "ethereum:sepolia": { + network_id: 11155111, + port: 8506, + verify: { + apiUrl: "https://api-sepolia.etherscan.io/api", + explorerUrl: "https://sepolia.etherscan.io/", }, }, "fuse:testnet": { port: 8511, network_id: 123, verify: { - apiUrl: "https://explorer.fusespark.io/api", - browserURL: "https://explorer.fusespark.io/address", apiKey: "MY_API_KEY", + apiUrl: "https://explorer.fusespark.io/api", + explorerUrl: "https://explorer.fusespark.io/address", }, }, "gnosis:testnet": { port: 8509, network_id: 10200, verify: { - apiUrl: "https://gnosis-chiado.blockscout.com/api", - browserURL: "https://gnosis-chiado.blockscout.com/address", apiKey: "MY_API_KEY", + apiUrl: "https://gnosis-chiado.blockscout.com/api", + explorerUrl: "https://gnosis-chiado.blockscout.com/address", }, }, - "harmony:testnet#0": { - port: 8534, - network_id: 1666700000, - }, "kava:testnet": { port: 8526, network_id: 2221, verify: { apiKey: "MY_API_KEY", - apiUrl: "https://explorer.testnet.kava.io/api", - browserURL: "https://explorer.testnet.kava.io/", + apiUrl: "https://testnet.explorer.kavalabs.io/api", + explorerUrl: "https://testnet.explorer.kavalabs.io/", }, }, "kava:mainnet": { @@ -215,9 +218,8 @@ module.exports = { port: 8537, network_id: 322, verify: { - apiKey: "MY_API_KEY", apiUrl: "https://scan-testnet.kcc.network/api", - browserURL: "https://scan-testnet.kcc.network/", + explorerUrl: "https://scan-testnet.kcc.network/", }, }, "kcc:mainnet": { @@ -253,14 +255,15 @@ module.exports = { port: 9536, network_id: 1088, }, - "metis:goerli": { + "metis:sepolia": { port: 8536, - network_id: 599, + network_id: 59902, verify: { apiKey: "MY_API_KEY", - apiUrl: "https://goerli.explorer.metisdevops.link/api", - explorerUrl: "https://goerli.explorer.metisdevops.link/address", - }, + apiUrl: "https://sepolia-explorer.metisdevops.link/api", + // apiUrl: "https://api.routescan.io/v2/network/sepolia/evm/59902/etherscan", + explorerUrl: "https://sepolia-explorer.metisdevops.link", + } }, "meter:testnet": { port: 8523, @@ -281,23 +284,35 @@ module.exports = { "moonbeam:moonbase": { port: 8531, network_id: 1287, + gas: 15000000, + verify: { + apiUrl: "https://api-moonbase.moonscan.io/api", + explorerUrl: "https://moonbase.moonscan.io/" + } }, - "okxchain:testnet": { + "okx:oktchain:testnet": { port: 8528, network_id: 65, + verify: { + apiUrl: "https://www.oklink.com/api/explorer/v1/contract/verify/async/api", + explorerUrl: "https://www.okx.com/explorer/oktc/", + } }, - "okxchain:mainnet": { + "okx:oktchain:mainnet": { port: 9528, network_id: 66, + verify: { + apiUrl: "https://www.oklink.com/api/explorer/v1/contract/verify/async/api/okctest", + explorerUrl: "https://www.okx.com/explorer/oktc-test/", + } }, - "optimism:goerli": { - port: 8520, - network_id: 420, + "okx:x1:sepolia": { + port: 8505, + network_id: 195, verify: { - apiKey: "MY_API_KEY", - apiUrl: "https://optimism-goerli.blockscout.com/api", - explorerUrl: "https://optimism-goerli.blockscout.com/", - }, + apiUrl: "https://www.okx.com/explorer/xlayer-test/api", + explorerUrl: "https://www.okx.com/explorer/xlayer-test" + } }, "optimism:sepolia": { port: 8503, @@ -314,16 +329,18 @@ module.exports = { network_id: 10, verify: { apiKey: process.env.ETHERSCAN_OPTIMISM_API_KEY, - // apiKey: "MY_API_KEY", apiUrl: "https://api-optimistic.etherscan.io/api", - // apiUrl: "https://optimism.blockscout.com/api", explorerUrl: "https://optimistic.etherscan.io/", - // explorerUrl: "https://optimism.blockscout.com/", }, }, - "polygon:goerli": { + "polygon:amoy": { port: 8535, - network_id: 80001, + network_id: 80002, + verify: { + apiKey: process.env.ETHERSCAN_POLYGON_API_KEY, + apiUrl: "https://api-amoy.polygonscan.com/api", + explorerUrl: "https://amoy.polygonscan.com/", + } }, "polygon:mainnet": { port: 9535, @@ -357,8 +374,8 @@ module.exports = { port: 8514, network_id: 534351, verify: { - apiUrl: "http://api-sepolia.scrollscan.io/api", - explorerUrl: "https://sepolia.scrollscan.io/", + apiUrl: "https://api-sepolia.scrollscan.com/api", + explorerUrl: "https://sepolia.scrollscan.com/", }, }, "scroll:mainnet": { @@ -383,13 +400,13 @@ module.exports = { verify: { apiKey: "abc", apiUrl: "https://rollux.tanenbaum.io/api", - explorerUrl: "https://rollux.tanenbaum.io/address/", + explorerUrl: "https://rollux.tanenbaum.io", }, }, "ten:testnet": { port: 8504, network_id: 443, - gas: 6000000, + gas: 15000000, }, "ultron:testnet": { port: 8516, From 86c95edff89a3e981989754873ba2853e1b795b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Thu, 9 May 2024 15:36:47 +0200 Subject: [PATCH 09/19] chore: upgrade all possible testnets --- .../core/customs/WitnetDeployerCfxCore.sol | 85 +++++++ .../core/customs/WitnetDeployerMeter.sol | 84 +++++++ .../customs/WitnetRequestFactoryCfxCore.sol | 4 - migrations/addresses.json | 229 +++++++++++++++++- migrations/constructorArgs.json | 32 ++- settings/artifacts.js | 20 +- settings/specs.js | 160 ++---------- 7 files changed, 451 insertions(+), 163 deletions(-) create mode 100644 contracts/core/customs/WitnetDeployerCfxCore.sol create mode 100644 contracts/core/customs/WitnetDeployerMeter.sol diff --git a/contracts/core/customs/WitnetDeployerCfxCore.sol b/contracts/core/customs/WitnetDeployerCfxCore.sol new file mode 100644 index 00000000..26b5c99e --- /dev/null +++ b/contracts/core/customs/WitnetDeployerCfxCore.sol @@ -0,0 +1,85 @@ +// SPDX-License-Identifier: MIT + +pragma solidity >=0.8.0 <0.9.0; + +import "../WitnetProxy.sol"; + +/// @notice WitnetDeployer contract used both as CREATE2 factory (EIP-1014) for Witnet artifacts, +/// @notice and CREATE3 factory (EIP-3171) for Witnet proxies, on the Conflux Core Ecosystem. +/// @author Guillermo Díaz + +contract WitnetDeployerCfxCore { + + /// @notice Use given `_initCode` and `_salt` to deploy a contract into a deterministic address. + /// @dev The address of deployed address will be determined by both the `_initCode` and the `_salt`, but not the address + /// @dev nor the nonce of the caller (i.e. see EIP-1014). + /// @param _initCode Creation code, including construction logic and input parameters. + /// @param _salt Arbitrary value to modify resulting address. + /// @return _deployed Just deployed contract address. + function deploy(bytes memory _initCode, bytes32 _salt) + public + returns (address _deployed) + { + _deployed = determineAddr(_initCode, _salt); + if (_deployed.code.length == 0) { + assembly { + _deployed := create2(0, add(_initCode, 0x20), mload(_initCode), _salt) + } + require(_deployed != address(0), "WitnetDeployer: deployment failed"); + } + } + + /// @notice Determine counter-factual address of the contract that would be deployed by the given `_initCode` and a `_salt`. + /// @param _initCode Creation code, including construction logic and input parameters. + /// @param _salt Arbitrary value to modify resulting address. + /// @return Deterministic contract address. + function determineAddr(bytes memory _initCode, bytes32 _salt) + public view + returns (address) + { + return address( + (uint160(uint(keccak256( + abi.encodePacked( + bytes1(0xff), + address(this), + _salt, + keccak256(_initCode) + ) + ))) & uint160(0x0fffFFFFFfFfffFfFfFFffFffFffFFfffFfFFFFf) + ) | uint160(0x8000000000000000000000000000000000000000) + ); + } + + function determineProxyAddr(bytes32 _salt) + public view + returns (address) + { + return determineAddr(type(WitnetProxy).creationCode, _salt); + } + + function proxify(bytes32 _proxySalt, address _firstImplementation, bytes memory _initData) + external + returns (WitnetProxy) + { + address _proxyAddr = determineProxyAddr(_proxySalt); + if (_proxyAddr.code.length == 0) { + // deploy the WitnetProxy + deploy(type(WitnetProxy).creationCode, _proxySalt); + // settle first implementation address, + WitnetProxy(payable(_proxyAddr)).upgradeTo( + _firstImplementation, + // and initialize it, providing + abi.encode( + // the owner (i.e. the caller of this function) + msg.sender, + // and some (optional) initialization data + _initData + ) + ); + return WitnetProxy(payable(_proxyAddr)); + } else { + revert("WitnetDeployer: already proxified"); + } + } + +} \ No newline at end of file diff --git a/contracts/core/customs/WitnetDeployerMeter.sol b/contracts/core/customs/WitnetDeployerMeter.sol new file mode 100644 index 00000000..8322464a --- /dev/null +++ b/contracts/core/customs/WitnetDeployerMeter.sol @@ -0,0 +1,84 @@ +// SPDX-License-Identifier: MIT + +pragma solidity >=0.8.0 <0.9.0; + +import "../WitnetProxy.sol"; + +/// @notice WitnetDeployer contract used both as CREATE2 factory (EIP-1014) for Witnet artifacts, +/// @notice and CREATE3 factory (EIP-3171) for Witnet proxies, on the Meter Ecosystem. +/// @author Guillermo Díaz + +contract WitnetDeployerMeter { + + /// @notice Use given `_initCode` and `_salt` to deploy a contract into a deterministic address. + /// @dev The address of deployed address will be determined by both the `_initCode` and the `_salt`, but not the address + /// @dev nor the nonce of the caller (i.e. see EIP-1014). + /// @param _initCode Creation code, including construction logic and input parameters. + /// @param _salt Arbitrary value to modify resulting address. + /// @return _deployed Just deployed contract address. + function deploy(bytes memory _initCode, bytes32 _salt) + public + returns (address _deployed) + { + _deployed = determineAddr(_initCode, _salt); + if (_deployed.code.length == 0) { + assembly { + _deployed := create2(0, add(_initCode, 0x20), mload(_initCode), _salt) + } + require(_deployed != address(0), "WitnetDeployerMeter: deployment failed"); + } + } + + /// @notice Determine counter-factual address of the contract that would be deployed by the given `_initCode` and a `_salt`. + /// @param _initCode Creation code, including construction logic and input parameters. + /// @param _salt Arbitrary value to modify resulting address. + /// @return Deterministic contract address. + function determineAddr(bytes memory _initCode, bytes32 _salt) + public view + returns (address) + { + return address( + uint160(uint(keccak256( + abi.encodePacked( + bytes1(0xff), + address(this), + _salt, + keccak256(_initCode) + ) + ))) + ); + } + + function determineProxyAddr(bytes32 _salt) + public view + returns (address) + { + return determineAddr(type(WitnetProxy).creationCode, _salt); + } + + function proxify(bytes32 _proxySalt, address _firstImplementation, bytes memory _initData) + external + returns (WitnetProxy) + { + address _proxyAddr = determineProxyAddr(_proxySalt); + if (_proxyAddr.code.length == 0) { + // deploy the WitnetProxy + deploy(type(WitnetProxy).creationCode, _proxySalt); + // settle first implementation address, + WitnetProxy(payable(_proxyAddr)).upgradeTo( + _firstImplementation, + // and initialize it, providing + abi.encode( + // the owner (i.e. the caller of this function) + msg.sender, + // and some (optional) initialization data + _initData + ) + ); + return WitnetProxy(payable(_proxyAddr)); + } else { + revert("WitnetDeployerMeter: already proxified"); + } + } + +} \ No newline at end of file diff --git a/contracts/core/customs/WitnetRequestFactoryCfxCore.sol b/contracts/core/customs/WitnetRequestFactoryCfxCore.sol index de13a150..ed7caf14 100644 --- a/contracts/core/customs/WitnetRequestFactoryCfxCore.sol +++ b/contracts/core/customs/WitnetRequestFactoryCfxCore.sol @@ -9,10 +9,6 @@ contract WitnetRequestFactoryCfxCore is WitnetRequestFactoryDefault { - function class() virtual override public view returns (string memory) { - return type(WitnetRequestFactoryCfxCore).name; - } - constructor( WitnetOracle _witnet, WitnetRequestBytecodes _registry, diff --git a/migrations/addresses.json b/migrations/addresses.json index e4070d9b..4f16d77e 100644 --- a/migrations/addresses.json +++ b/migrations/addresses.json @@ -16,7 +16,17 @@ "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetPriceFeedsDefault": "0x682A7dF2852F3Df2d3B4b84803da69A38ba33180", "WitnetRequestBytecodesDefault": "0x03604d41a0289cb9325814A6aCA8BaBEf7492B44", - "WitnetRequestFactoryDefault": "0x90a7Fc875dac0D453b43BF9E5AeE7dC68091CC24" + "WitnetRequestFactoryDefault": "0x90a7Fc875dac0D453b43BF9E5AeE7dC68091CC24" + }, + "avalanche:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x5B354083da3c7D034b8b95bE96aC5d114CcdA71f", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, "base:sepolia": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", @@ -28,6 +38,63 @@ "WitnetRequestBytecodesDefault": "0x730a88594d8287Ec898b2B7fE592aB155bE71590", "WitnetRequestFactoryDefault": "0xe1CDE456D3eC92640711625E01170A6800773b91" }, + "celo:alfajores": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x73280fa1238DAE165b9c37B7E877668C31b239f6", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "conflux:core:testnet": { + "WitnetDeployer": "0x8785dBa05D3B90c55c009D0C47f12A2d976C5e47", + "WitnetProxy": "0x8529DA52FF40990685B61432BA49246b94850d86", + "WitnetErrorsLib": "0x899325905515049B49e726AF5d5f24f723a5eab2", + "WitnetEncodingLib": "0x80Ea106BE90aB7b4FCac2b3D4aCe4Ea262918188", + "WitnetOracle": "0x8346D6ba3b7a04923492007cC3A2eE7135Db7463", + "WitnetOracleDataLib": "0x81cfB91911F6C8fa582033149582a63EBa39D0D3", + "WitnetOracleTrustableDefault": "0x857A67Cc046dB5D6414493ED9E65291FF2824116", + "WitnetPriceFeeds": "0x8ba3C59e1029cd90010e8C731461ddFC5f49091b", + "WitnetPriceFeedsLib": "0x8Ac628741A0983869d237AF759f39a553aE91e47", + "WitnetPriceFeedsDefault": "0x80050098a4fdd72409D6C8Ec72FD50ca460349E9", + "WitnetRandomnessV2": "0x897832C89ec306A74f9eC29abfFcaDBfCb11A13B", + "WitnetRequestBytecodes": "0x85d3E5577f947BcA1A12C00940087129A5F8B2eb", + "WitnetRequestBytecodesDefault": "0x8176457C9620E8bb508aA22062E1967726179Cc9", + "WitnetRequestFactory": "0x8daDc231C8C810CBbe2d555338bDa94DA648f964", + "WitnetRequestFactoryCfxCore": "0x8E10530323e534d953D7EC83e075eCAbB38079d8" + }, + "conflux:espace:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x1B9D8186e901b6ED7848374e81B79C9eBf74801E", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "cronos:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x44C4C71c31aD14dB5B18520D3801B88aA26427B0", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "elastos:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, "ethereum:sepolia": { "WitnetProxy": "0x21ac85A6c320E6fC89774A98732eAE733032651C", "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", @@ -39,23 +106,121 @@ "WitnetRequestBytecodesDefault": "0x34e6465f23aE086e5701A6ca8547aF7c29e0283C", "WitnetRequestFactoryDefault": "0x1869A7137dF26397999AA6DB90c7D6D029d13908" }, - "mantle:sepolia": { + "gnosis:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "kava:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "kcc:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x574235e0e798c36fF6f8c81EEdDe0134Eda59050", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "klaytn:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0xfA4817078d74D93F88738CB04883f518bC06bD81", "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "mantle:sepolia": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", "WitnetOracleTrustableOvm2": "0x8423ddeb7d86Ce43a9C643bE3A420Ff69825Dd53", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetPriceFeedsDefault": "0x853DDf69DbEaDA2fc4A521a1dBA5Beb210a5c4d2", "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190" }, + "metis:sepolia": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "meter:testnet": { + "WitnetDeployer": "0xE9D654A97eC431C4f1faba550d0a26399f6fEc80", + "WitnetProxy": "0x49c94B9d32a9AFc3C9Ce0159324b81635ac3f0Ea", + "WitnetErrorsLib": "0x02762C84752C1C1ef582E6FE8dBAF60383a87e66", + "WitnetEncodingLib": "0xA4c9D0f1DE84D190a0478FD9226Ec201Daf509E2", + "WitnetPriceFeedsLib": "0x75cC6DA115846D1E577F5C5D5566BD2C15D5d198", + "WitnetOracleDataLib": "0xCc0444d867188796254141220744BdfE9Ef6d742", + "WitnetRequestBytecodesDefault": "0x8e1EDea211ed85316Bc7F115972C995b5fA897aF", + "WitnetRequestFactoryDefault": "0xC69640F34267C5B9F58f716d1385A481D7dff10D", + "WitnetOracleTrustableDefault": "0xb7dd2cD53790a5D87f5cfD265D3bD889ed5FC28d", + "WitnetPriceFeedsDefault": "0x89eE40cfb4F7D9f56Ee2E2E9B1580176361D84eC", + "WitnetRequestBytecodes": "0x87E25Ad751306b21F9345494F163122e057B7b53", + "WitnetRequestFactory": "0xd0b4512F4c9291de4104a1ad7be0c51956044bbC", + "WitnetOracle": "0x51e12A16d52DE519f7b13bFeDa42Fb61214d32a0", + "WitnetPriceFeeds": "0xD9f5Af15288294678B0863A20F4B83eeeEAa775C", + "WitnetRandomnessV2": "0x2dE368AFC80b13E4a42990004ebC74ce125486F9", + "WitnetRequestFactoryCfxCore": "0x602e74De19acA64f6ea1E20Da94a8B4D81dF3013" + }, + "moonbeam:moonbase": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0xcE68F9D657C5B8931a1Baceb77Dc0e71499F7855", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "okx:oktchain:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "okx:x1:sepolia": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesNoSha256": "0xd3a3C178F76D788B4054C3945281F94e7122a8fD", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, "optimism:mainnet": { "WitnetProxy": "0xADA577AC8eE9Cb726F6FC45f0B0716FD1aB3637D", "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", - "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetOracleTrustableOvm2": "0x8423ddeb7d86Ce43a9C643bE3A420Ff69825Dd53", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", "WitnetPriceFeedsDefault": "0x853DDf69DbEaDA2fc4A521a1dBA5Beb210a5c4d2", "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190" @@ -71,16 +236,56 @@ "WitnetRequestBytecodesDefault": "0x2D8BCBC4F8c97CC227e770d95d19914324baBF2A", "WitnetRequestFactoryDefault": "0x3D551165020a4014A8d5b9E4b73D2b3Dbe401546" }, + "polygon:amoy": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, "reef:testnet": {}, + "scroll:sepolia": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesNoSha256": "0xd3a3C178F76D788B4054C3945281F94e7122a8fD", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "syscoin:rollux:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773", + "WitnetOracleTrustableOvm2": "0x9Bd67787019a6474ddE27f9c9A37260c87Da92B5", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11" + }, "ten:testnet": { - "WitnetProxy": "0x4563C77E85c1374754ffec3e6220d13Ddc8620eF", - "WitnetErrorsLib": "0x19900f2432ffC755224bd9e5411c5B8E07883eC8", - "WitnetEncodingLib": "0xf321bcD29CFc6134c9Bf42F759f428F3A6010919", - "WitnetOracleDataLib": "0xBeFdE8285b613b17CE94705b53A57E5509D40397", - "WitnetOracleTrustableObscuro": "", - "WitnetPriceFeedsLib": "0x85aa4A0fDa112c47d4216448EE4D49Afd072675e", - "WitnetPriceFeedsDefault": "", - "WitnetRequestBytecodesDefault": "0x05e81E99ba36dC08079193D0Fad4Eb579E43ECE7", - "WitnetRequestFactoryDefault": "0x8C4ed866d3418c05CA0325524624EC6CE52ADC44" + "WitnetProxy": "0xaC3E870BF8D13Dc39f76936b6AF8279eF5a9211F", + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetOracleTrustableObscuro": "0x2330f492635c2E7476bB2A3162e69129F6FEaB56", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" + }, + "ultron:testnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", + "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773", + "WitnetOracleTrustableDefault": "0x90A31c3f10391bd0f69a436473C96AAEe4DF0A5e", + "WitnetPriceFeedsDefault": "0x8280929b7F6adcE1CfA15b63cbEC1A7FD8cAEf11" } } \ No newline at end of file diff --git a/migrations/constructorArgs.json b/migrations/constructorArgs.json index 908685b7..de58d4de 100644 --- a/migrations/constructorArgs.json +++ b/migrations/constructorArgs.json @@ -1,13 +1,33 @@ { "default": { - "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000", - "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000", - "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31322d61653734633030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", - "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d39373833646361000000000000000000000000000000000000", - "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d" + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetRandomnessV2": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000f121b71715e71dded592f1125a06d4ed06f0694d", + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetRequestBytecodesNoSha256": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" + }, + "conflux:core:testnet": { + "WitnetRequestFactoryCfxCore": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db746300000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "0000000000000000000000008dadc231c8c810cbbe2d555338bda94da648f96400000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db74630000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetRandomnessV2": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db74630000000000000000000000001169bf81ecf738d02fd8d3824dfe02153b334ef7" + }, + "conflux:espace:testnet": { + "WitnetRequestFactoryCfxCore": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" + }, + "meter:testnet": { + "WitnetRequestFactoryDefault": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a000000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000d0b4512f4c9291de4104a1ad7be0c51956044bbc00000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a00000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", + "WitnetRandomnessV2": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a0000000000000000000000000e169bf81ecf738d02fd8d3824dfe02153b334ef7", + "WitnetRequestFactoryCfxCore": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a000000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" }, "ten:testnet": { - "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e372d3033346663383100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" + "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" + }, + "syscoin:rollux:testnet": { + "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" } } \ No newline at end of file diff --git a/settings/artifacts.js b/settings/artifacts.js index 85cf889a..0fcceffb 100644 --- a/settings/artifacts.js +++ b/settings/artifacts.js @@ -17,15 +17,30 @@ module.exports = { boba: { WitnetOracle: "WitnetOracleTrustableOvm2", }, - conflux: { + "conflux:core:testnet": { + WitnetDeployer: "WitnetDeployerCfxCore", + WitnetRequestFactory: "WitnetRequestFactoryCfxCore", + }, + "conflux:core:mainnet": { + WitnetDeployer: "WitnetDeployerCfxCore", WitnetRequestFactory: "WitnetRequestFactoryCfxCore", }, mantle: { WitnetOracle: "WitnetOracleTrustableOvm2", }, + meter: { + WitnetDeployer: "WitnetDeployerMeter", + WitnetRequestFactory: "WitnetRequestFactoryCfxCore", + }, optimism: { WitnetOracle: "WitnetOracleTrustableOvm2", }, + "okx:x1:mainnet": { + WitnetRequestBytecodes: "WitnetRequestBytecodesNoSha256", + }, + "okx:x1:sepolia": { + WitnetRequestBytecodes: "WitnetRequestBytecodesNoSha256", + }, "polygon:zkevm:goerli": { WitnetRequestBytecodes: "WitnetRequestBytecodesNoSha256", }, @@ -41,6 +56,9 @@ module.exports = { "syscoin:rollux:testnet": { WitnetOracle: "WitnetOracleTrustableOvm2", }, + "syscoin:rollux:mainnet": { + WitnetOracle: "WitnetOracleTrustableOvm2", + }, ten: { WitnetOracle: "WitnetOracleTrustableObscuro", }, diff --git a/settings/specs.js b/settings/specs.js index 1e6b7467..765e0cda 100644 --- a/settings/specs.js +++ b/settings/specs.js @@ -30,148 +30,37 @@ module.exports = { vanity: 1240014136, // 0x000DB36997AF1F02209A6F995883B9B699900000 }, }, - avalanche: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 155000, - ], - }, - }, - }, - celo: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 114000, - ], - }, - }, - }, - conflux: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 78500, - ], - }, - }, - }, - "conflux.espace.testnet": { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 225000, - ], - }, - }, - }, - "conflux.espace.mainnet": { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 225000, - ], - }, - }, - }, - cronos: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 137500, - ], - }, + "conflux:core:testnet": { + WitnetDeployer: { + from: "0x1169Bf81ecf738d02fd8d3824dfe02153B334eF7", }, - }, - dogechain: { WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 85000, - ], - }, + vanity: 3, }, - }, - harmony: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 530000, - ], - }, + WitnetPriceFeeds: { + from: "0x1169Bf81ecf738d02fd8d3824dfe02153B334eF7", + vanity: 4, }, - }, - hsc: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 85000, - ], - }, + WitnetRandomness: { + from: "0x1169Bf81ecf738d02fd8d3824dfe02153B334eF7", + vanity: 5, }, - }, - kcc: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 92500, - ], - }, + WitnetRequestBytecodes: { + vanity: 1, }, - }, - klaytn: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 105000, - ], - }, + WitnetRequestFactory: { + vanity: 2, }, }, meter: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 85000, - ], - }, + WitnetDeployer: { + from: "0xE169Bf81Ecf738d02fD8d3824DFe02153b334eF7", }, - }, - metis: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 134800, - ], - }, - }, - }, - moonbeam: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 115000, - ], - }, - }, - }, - okxchain: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 145000, - ], - }, + WitnetPriceFeeds: { + from: "0xE169Bf81Ecf738d02fD8d3824DFe02153b334eF7", }, - }, - optimism: { - WitnetOracle: { - immutables: { - // values: [ - // /* _reportResultGasBase */ 100000, - // ], - }, + WitnetRandomness: { + from: "0xE169Bf81Ecf738d02fD8d3824DFe02153b334eF7", }, }, reef: { @@ -183,13 +72,4 @@ module.exports = { }, }, }, - ultron: { - WitnetOracle: { - immutables: { - values: [ - /* _reportResultGasBase */ 83949, - ], - }, - }, - }, } From d1063eb850181e4c97503c321c3bd18367f02d49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Thu, 9 May 2024 17:24:19 +0200 Subject: [PATCH 10/19] chore: set up base:mainnet --- migrations/addresses.json | 2 ++ migrations/constructorArgs.json | 7 ++++--- settings/networks.js | 10 +++++++++- truffle-config.js | 1 + 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/migrations/addresses.json b/migrations/addresses.json index 4f16d77e..d681f17a 100644 --- a/migrations/addresses.json +++ b/migrations/addresses.json @@ -38,6 +38,8 @@ "WitnetRequestBytecodesDefault": "0x730a88594d8287Ec898b2B7fE592aB155bE71590", "WitnetRequestFactoryDefault": "0xe1CDE456D3eC92640711625E01170A6800773b91" }, + "base:mainnet": { + }, "celo:alfajores": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", diff --git a/migrations/constructorArgs.json b/migrations/constructorArgs.json index de58d4de..6dd56cbd 100644 --- a/migrations/constructorArgs.json +++ b/migrations/constructorArgs.json @@ -8,6 +8,7 @@ "WitnetRequestBytecodesNoSha256": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" }, + "base:mainnet": {}, "conflux:core:testnet": { "WitnetRequestFactoryCfxCore": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db746300000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", "WitnetOracleTrustableDefault": "0000000000000000000000008dadc231c8c810cbbe2d555338bda94da648f96400000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", @@ -24,10 +25,10 @@ "WitnetRandomnessV2": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a0000000000000000000000000e169bf81ecf738d02fd8d3824dfe02153b334ef7", "WitnetRequestFactoryCfxCore": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a000000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" }, - "ten:testnet": { - "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" - }, "syscoin:rollux:testnet": { "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" + }, + "ten:testnet": { + "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" } } \ No newline at end of file diff --git a/settings/networks.js b/settings/networks.js index 3f742210..871ab992 100644 --- a/settings/networks.js +++ b/settings/networks.js @@ -29,6 +29,14 @@ module.exports = { explorerUrl: "https://testnet.snowtrace.io/", }, }, + "base:mainnet": { + network_id: 8453, + port: 9502, + verify: { + apiUrl: "https://api.basescan.org/api", + explorerUrl: "https://basescan.com/", + }, + }, "base:sepolia": { network_id: 84532, port: 8502, @@ -129,7 +137,7 @@ module.exports = { network_id: 338, verify: { apiKey: process.env.ETHERSCAN_CRONOS_API_KEY, - apiUrl: "https://explorer-api.cronos.org/testnet/api/v1/hardhat/contract?apikey=", + apiUrl: "https://explorer-api.cronos.org/testnet/api/v1/hardhat/contract?apikey=G99km4eqHKfvEgpk6Lscsg3Y15QVLQLK", explorerUrl: "https://explorer.cronos.org/testnet", }, }, diff --git a/truffle-config.js b/truffle-config.js index 0034b379..547a51c3 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -33,6 +33,7 @@ module.exports = { ], api_keys: { arbiscan: process.env.ETHERSCAN_ARBISCAN_API_KEY, + basescan: process.env.ETHERSCAN_BASESCAN_API_KEY, bobascan: process.env.BOBASCAN_API_KEY, celo: process.env.CELOSCAN_API_KEY, cronos: process.env.ETHERSCAN_CRONOS_API_KEY, From a60e13944c477c75d5a983ccdd7c903223c7f258 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:26:11 +0200 Subject: [PATCH 11/19] fix: typo on report result batch error message --- contracts/core/defaults/WitnetOracleTrustableBase.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/core/defaults/WitnetOracleTrustableBase.sol b/contracts/core/defaults/WitnetOracleTrustableBase.sol index a1ec3d52..2936218b 100644 --- a/contracts/core/defaults/WitnetOracleTrustableBase.sol +++ b/contracts/core/defaults/WitnetOracleTrustableBase.sol @@ -657,7 +657,7 @@ abstract contract WitnetOracleTrustableBase _batchResults[_i].queryId, string(abi.encodePacked( class(), - "invalid report data" + ": invalid report data" )) ); } else { From ccf03ca176472f6c3ab68190cf0ebbb7de69c01a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:27:34 +0200 Subject: [PATCH 12/19] fix(migrations): ensure checksum on txs from address --- migrations/scripts/1_deployer.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/migrations/scripts/1_deployer.js b/migrations/scripts/1_deployer.js index 9404a1b8..c977f4ea 100644 --- a/migrations/scripts/1_deployer.js +++ b/migrations/scripts/1_deployer.js @@ -15,7 +15,7 @@ module.exports = async function (deployer, network, [,,, master]) { ) { const WitnetDeployerImpl = artifacts.require(settings.getArtifacts(network).WitnetDeployer) await deployer.deploy(WitnetDeployerImpl, { - from: settings.getSpecs(network)?.WitnetDeployer?.from || master + from: settings.getSpecs(network)?.WitnetDeployer?.from || web3.utils.toChecksumAddress(master) }) const factory = await WitnetDeployerImpl.deployed() if (factory.address !== addresses?.default?.WitnetDeployer) { From 05c3dbcd08ae8a665d9b51768acb2318cb80d267 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:28:09 +0200 Subject: [PATCH 13/19] feat: include sourcify verifier on verification scripts --- scripts/verify-impls.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/verify-impls.js b/scripts/verify-impls.js index 851dc7a3..47317a7b 100644 --- a/scripts/verify-impls.js +++ b/scripts/verify-impls.js @@ -28,5 +28,5 @@ if (!constructorArgs[network]) constructorArgs[network] = {} for (const index in impls) { utils.traceVerify(network, `${impls[index]} --forceConstructorArgs string:${ constructorArgs[network][impls[index]] || constructorArgs?.default[impls[index]] - } --verifiers etherscan`) + } --verifiers etherscan,sourcify`) } From 5755535882b54f91fac082a04a82c9b27de0775b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:28:39 +0200 Subject: [PATCH 14/19] chore: prepare specs for conflux:core:mainnet upgrade --- settings/specs.js | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/settings/specs.js b/settings/specs.js index 765e0cda..e5c9eecf 100644 --- a/settings/specs.js +++ b/settings/specs.js @@ -30,6 +30,28 @@ module.exports = { vanity: 1240014136, // 0x000DB36997AF1F02209A6F995883B9B699900000 }, }, + "conflux:core:mainnet": { + WitnetDeployer: { + from: "0x1169bf81ecf738d02fd8d3824dfe02153b334ef7", + }, + WitnetOracle: { + vanity: 3, + }, + WitnetPriceFeeds: { + from: "0x1169bf81ecf738d02fd8d3824dfe02153b334ef7", + vanity: 4, + }, + WitnetRandomness: { + from: "0x1169bf81ecf738d02fd8d3824dfe02153b334ef7", + vanity: 5, + }, + WitnetRequestBytecodes: { + vanity: 1, + }, + WitnetRequestFactory: { + vanity: 2, + }, + }, "conflux:core:testnet": { WitnetDeployer: { from: "0x1169Bf81ecf738d02fd8d3824dfe02153B334eF7", From f5c90a9f1a1ecce25b32181499a3247a666ae55a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:29:14 +0200 Subject: [PATCH 15/19] chore: prepare specs for reef:mainnet upgrade --- settings/specs.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/settings/specs.js b/settings/specs.js index e5c9eecf..4ad23d86 100644 --- a/settings/specs.js +++ b/settings/specs.js @@ -86,6 +86,12 @@ module.exports = { }, }, reef: { + WitnetDeployer: { + from: "0xB309D64D6535E95eDBA9A899A8a8D11f1BEC9357", + }, + WitnetPriceFeeds: { + from: "0xB309D64D6535E95eDBA9A899A8a8D11f1BEC9357", + }, WitnetOracle: { immutables: { values: [ @@ -93,5 +99,8 @@ module.exports = { ], }, }, + WitnetRandomness: { + from: "0xB309D64D6535E95eDBA9A899A8a8D11f1BEC9357", + }, }, } From 6bb97bf351ac887ecee7aec4377c5a3697579e21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:29:46 +0200 Subject: [PATCH 16/19] chore: revisit networks settings --- settings/networks.js | 78 ++++++++++++++++++++++++++++++++++---------- truffle-config.js | 6 ++-- 2 files changed, 65 insertions(+), 19 deletions(-) diff --git a/settings/networks.js b/settings/networks.js index 871ab992..f99d025d 100644 --- a/settings/networks.js +++ b/settings/networks.js @@ -14,16 +14,24 @@ module.exports = { "arbitrum:one": { network_id: 42161, port: 9517, + verify: { + apiUrl: "https://api.arbiscan.io/api", + explorerUrl: "https://arbiscan.io/", + }, }, "avalanche:mainnet": { network_id: 43114, port: 9533, + verify: { + apiKey: process.env.ETHERSCAN_ROUTESCAN_API_KEY, + apiUrl: "https://api.routescan.io/v2/network/mainnet/evm/43114/etherscan/api", + explorerUrl: "https://snowtrace.io/", + }, }, "avalanche:testnet": { network_id: 43113, port: 8533, verify: { - // apiUrl: "https://api.arbiscan.io/api", apiKey: process.env.ETHERSCAN_ROUTESCAN_API_KEY, apiUrl: "https://api.routescan.io/v2/network/testnet/evm/43113/etherscan/api", explorerUrl: "https://testnet.snowtrace.io/", @@ -58,21 +66,21 @@ module.exports = { network_id: 56288, port: 9510, verify: { - apiUrl: "https://blockexplorer.bnb.boba.network/api", - explorerUrl: "https://blockexplorer.bnb.boba.network/", + apiUrl: "https://api.routescan.io/v2/network/mainnet/evm/56288/etherscan", + explorerUrl: "https://bobascan.com/", apiKey: "MY_API_KEY", }, }, - "boba:ethereum:mainnet": { + "boba:eth:mainnet": { network_id: 288, port: 9539, verify: { - apiUrl: "https://api.routescan.io/v2/network/mainnet/evm/all/etherscan", + apiUrl: "https://api.routescan.io/v2/network/mainnet/evm/288/etherscan", explorerUrl: "https://bobascan.com/address/", apiKey: "MY_API_KEY", }, }, - "boba:ethereum:goerli": { + "boba:eth:goerli": { network_id: 2888, port: 8515, verify: { @@ -84,7 +92,6 @@ module.exports = { network_id: 44787, port: 8538, verify: { - apiKey: process.env.ETHERSCAN_CELO_API_KEY, apiUrl: "https://api-alfajores.celoscan.io/api", explorerUrl: "https://alfjores.celoscan.io/", }, @@ -93,14 +100,13 @@ module.exports = { network_id: 42220, port: 9538, verify: { - apiKey: "MY_API_KEY", - apiUrl: "", - explorerUrl: "", + apiUrl: "https://api.celoscan.io/api", + explorerUrl: "https://celoscan.io/", }, }, "conflux:core:testnet": { port: 8540, - // network_id: 1, + network_id: 1, verify: { apiUrl: "https://api-testnet.confluxscan.io", explorerUrl: "https://testnet.confluxscan.io/", @@ -111,8 +117,9 @@ module.exports = { network_id: 1029, gasPrice: 10, verify: { - apiUrl: "https://explorer.celo.org/mainnet/api", - explorerUrl: "https://explorer.celo.org/mainnet/", + apiKey: "MY_API_KEY", + apiUrl: "https://api.confluxscan.io/", + explorerUrl: "https://confluxscan.io/", }, }, "conflux:espace:testnet": { @@ -131,6 +138,11 @@ module.exports = { network_id: 1030, networkCheckTimeout: 999999, gas: 15000000, + verify: { + apiKey: "espace", + apiUrl: "https://evmapi.confluxscan.io/api", + explorerUrl: "https://evm.confluxscan.io/address", + } }, "cronos:testnet": { port: 8530, @@ -144,6 +156,11 @@ module.exports = { "cronos:mainnet": { port: 9530, network_id: 25, + confirmations: 2, + verify: { + apiUrl: "https://api.cronoscan.com/api", + explorerUrl: "https://cronoscan.com", + }, }, "cube:testnet": { port: 8522, @@ -162,6 +179,11 @@ module.exports = { "dogechain:mainnet": { port: 9519, network_id: 2000, + verify: { + apiKey: "MY_API_KEY", + apiUrl: "http://explorer.dogechain.dog/api", + explorerUrl: "https://explorer.dogechain.dog/", + }, }, "elastos:testnet": { port: 8513, @@ -221,6 +243,11 @@ module.exports = { "kava:mainnet": { port: 9526, network_id: 2222, + verify: { + apiKey: "MY_API_KEY", + apiUrl: "https://explorer.kavalabs.io/api", + explorerUrl: "https://explorer.kavalabs.io/", + }, }, "kcc:testnet": { port: 8537, @@ -233,6 +260,10 @@ module.exports = { "kcc:mainnet": { port: 9537, network_id: 321, + // verify: { + // apiUrl: "https://scan.kcc.io/api", + // explorerUrl: "https://scan.kcc.io/", + // }, }, "klaytn:testnet": { port: 8527, @@ -254,9 +285,8 @@ module.exports = { port: 9508, network_id: 5000, verify: { - apiKey: "MY_API_KEY", apiUrl: "https://explorer.mantle.xyz/api", - explorerUrl: "https://explorer.mantle.xyz/address", + explorerUrl: "https://explorer.mantle.xyz/", }, }, "metis:mainnet": { @@ -284,10 +314,18 @@ module.exports = { "moonbeam:mainnet": { port: 9531, network_id: 1284, + verify: { + apiUrl: "https://api-moonbeam.moonscan.io/api", + explorerUrl: "https://moonscan.io/" + } }, "moonbeam:moonriver": { port: 7531, network_id: 1285, + verify: { + apiUrl: "https://api-moonriver.moonscan.io/api", + explorerUrl: "https://moonriver.moonscan.io/" + } }, "moonbeam:moonbase": { port: 8531, @@ -335,6 +373,7 @@ module.exports = { "optimism:mainnet": { port: 9520, network_id: 10, + confirmations: 3, verify: { apiKey: process.env.ETHERSCAN_OPTIMISM_API_KEY, apiUrl: "https://api-optimistic.etherscan.io/api", @@ -353,13 +392,18 @@ module.exports = { "polygon:mainnet": { port: 9535, network_id: 137, + verify: { + apiKey: process.env.ETHERSCAN_POLYGON_API_KEY, + apiUrl: "https://api.polygonscan.com/api", + explorerUrl: "https://polygonscan.com/", + } }, "polygon:zkevm:goerli": { port: 8512, network_id: 1442, verify: { apiUrl: "https://api-testnet-zkevm.polygonscan.com/api", - explorerUrl: "https://testnet-zkevm.polygonscan.com/address", + explorerUrl: "https://testnet-zkevm.polygonscan.com/", }, }, "polygon:zkevm:mainnet": { @@ -367,7 +411,7 @@ module.exports = { network_id: 1101, verify: { apiUrl: "https://api-zkevm.polygonscan.com/api", - explorerUrl: "https://zkevm.polygonscan.com/address/", + explorerUrl: "https://zkevm.polygonscan.com/", }, }, "reef:testnet": { diff --git a/truffle-config.js b/truffle-config.js index 547a51c3..ce935b0d 100644 --- a/truffle-config.js +++ b/truffle-config.js @@ -35,16 +35,18 @@ module.exports = { arbiscan: process.env.ETHERSCAN_ARBISCAN_API_KEY, basescan: process.env.ETHERSCAN_BASESCAN_API_KEY, bobascan: process.env.BOBASCAN_API_KEY, - celo: process.env.CELOSCAN_API_KEY, + celoscan: process.env.ETHERSCAN_CELO_API_KEY, cronos: process.env.ETHERSCAN_CRONOS_API_KEY, + cronoscan: process.env.ETHERSCAN_CRONOSCAN_API_KEY, elastos: process.env.ETHERSCAN_ELASTOS_API_KEY, etherscan: process.env.ETHERSCAN_API_KEY, kcc: process.env.ETHERSCAN_KCC_API_KEY, - mantlescan: process.env.ETHERSCAN_API_KEY, + mantle: process.env.ETHERSCAN_MANTLE_API_KEY, moonscan: process.env.ETHERSCAN_MOONBEAM_API_KEY, oklink: process.env.ETHERSCAN_OKLINK_API_KEY, okx: process.env.ETHERSCAN_OKLINK_API_KEY, optimistic_etherscan: process.env.ETHERSCAN_OPTIMISM_API_KEY, + polygonscan: process.env.ETHERSCAN_POLYGON_API_KEY, routescan: process.env.ETHERSCAN_ROUTESCAN_API_KEY, scrollscan: process.env.ETHERSCAN_SCROLL_API_KEY, }, From 636d326d37d8cc30f606a67eace44d7842c60e0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:30:55 +0200 Subject: [PATCH 17/19] chore: deploy/upgrade all remaining mainnets --- migrations/addresses.json | 241 +++++++++++++++++++++++++++++++- migrations/constructorArgs.json | 142 ++++++++++++++++++- 2 files changed, 378 insertions(+), 5 deletions(-) diff --git a/migrations/addresses.json b/migrations/addresses.json index d681f17a..b1ae9034 100644 --- a/migrations/addresses.json +++ b/migrations/addresses.json @@ -8,6 +8,16 @@ "WitnetRequestBytecodes": "0x000B61Fe075F545fd37767f40391658275900000", "WitnetRequestFactory": "0x000DB36997AF1F02209A6F995883B9B699900000" }, + "arbitrum:one": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "arbitrum:sepolia": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -18,6 +28,16 @@ "WitnetRequestBytecodesDefault": "0x03604d41a0289cb9325814A6aCA8BaBEf7492B44", "WitnetRequestFactoryDefault": "0x90a7Fc875dac0D453b43BF9E5AeE7dC68091CC24" }, + "avalanche:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x412647Ff1519706C01706c5816E5cC355dd0A06D", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "avalanche:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -39,6 +59,34 @@ "WitnetRequestFactoryDefault": "0xe1CDE456D3eC92640711625E01170A6800773b91" }, "base:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableOvm2": "0xDc5Ec161b72C5710E2D648b3f360C9b76952397b", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, + "boba:bnb:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableOvm2": "0x0D929cFfa089cA99a644E10A7c7fe1C8C62F657f", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, + "boba:eth:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableOvm2": "0xDc5Ec161b72C5710E2D648b3f360C9b76952397b", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" }, "celo:alfajores": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", @@ -50,6 +98,33 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "celo:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, + "conflux:core:mainnet": { + "WitnetDeployer": "0x8785dBa05D3B90c55c009D0C47f12A2d976C5e47", + "WitnetProxy": "0x8529DA52FF40990685B61432BA49246b94850d86", + "WitnetErrorsLib": "0x899325905515049B49e726AF5d5f24f723a5eab2", + "WitnetEncodingLib": "0x80Ea106BE90aB7b4FCac2b3D4aCe4Ea262918188", + "WitnetPriceFeedsLib": "0x8Ac628741A0983869d237AF759f39a553aE91e47", + "WitnetOracleDataLib": "0x81cfB91911F6C8fa582033149582a63EBa39D0D3", + "WitnetRequestBytecodesDefault": "0x8C6cC510195f2B53abC65340346843Df91F6B940", + "WitnetRequestFactoryCfxCore": "0x839d58dE8F143bC01549A7FD62fd508BCA922C8d", + "WitnetOracleTrustableDefault": "0x8E6Ddf8bA76350A5fde230a05fc58559A90B878D", + "WitnetPriceFeedsDefault": "0x8af4262e9ECb7320a9ffdEe366172EAeA1D60e91", + "WitnetRequestBytecodes": "0x85d3E5577f947BcA1A12C00940087129A5F8B2eb", + "WitnetRequestFactory": "0x8daDc231C8C810CBbe2d555338bDa94DA648f964", + "WitnetOracle": "0x8346D6ba3b7a04923492007cC3A2eE7135Db7463", + "WitnetPriceFeeds": "0x8ba3C59e1029cd90010e8C731461ddFC5f49091b", + "WitnetRandomnessV2": "0x897832C89ec306A74f9eC29abfFcaDBfCb11A13B" + }, "conflux:core:testnet": { "WitnetDeployer": "0x8785dBa05D3B90c55c009D0C47f12A2d976C5e47", "WitnetProxy": "0x8529DA52FF40990685B61432BA49246b94850d86", @@ -67,6 +142,16 @@ "WitnetRequestFactory": "0x8daDc231C8C810CBbe2d555338bDa94DA648f964", "WitnetRequestFactoryCfxCore": "0x8E10530323e534d953D7EC83e075eCAbB38079d8" }, + "conflux:espace:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "conflux:espace:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -77,6 +162,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "cronos:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x412647Ff1519706C01706c5816E5cC355dd0A06D", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "cronos:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -87,6 +182,26 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "dogechain:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, + "elastos:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "elastos:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -118,6 +233,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "kava:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "kava:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -128,6 +253,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "kcc:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "kcc:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -138,6 +273,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "klaytn:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "klaytn:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -148,6 +293,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "mantle:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableOvm2": "0xDc5Ec161b72C5710E2D648b3f360C9b76952397b", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "mantle:sepolia": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -168,6 +323,23 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "meter:mainnet": { + "WitnetDeployer": "0x496aB880a611825c7c2322AD6d7ead0f84276327", + "WitnetProxy": "0xc0a47100832Bf857Bf1F0517F4bf84D79da60B23", + "WitnetErrorsLib": "0x5a59Ce1206B1771AcdE7ff85910F9e03Aef20EB8", + "WitnetEncodingLib": "0xfa52abc94415A334F6C846CA018290CE2755B13D", + "WitnetPriceFeedsLib": "0xBD9Ec958409eC6FbaF4d833F7Ea4e3892A406c98", + "WitnetOracleDataLib": "0x70d501E01d0EE71F8DD3e533849F5fc454359d6F", + "WitnetRequestBytecodesDefault": "0x14D3AAD34a7aB614Feaf72cc0eAab120E64d032F", + "WitnetRequestFactoryCfxCore": "0x6Ee46D8db750607ffa5Ec3Eb0DAE969E1916F417", + "WitnetOracleTrustableDefault": "0xB11b58238BAf7CBBb608C81e7792cEA29e4E19D0", + "WitnetPriceFeedsDefault": "0x7e701068365CFF4f217A32be8059550d8aEdc00D", + "WitnetRequestBytecodes": "0xBa84D2ffA26c8fC7EF2c5Bd4839B4b2E4d56D330", + "WitnetRequestFactory": "0xc5074dde3FEA0347d3B2E8C38e58e6A34FeEf8EF", + "WitnetOracle": "0x1f28E4d955eccE989c00b3871446AB22B3Fa9Cc8", + "WitnetPriceFeeds": "0x27EF7A3e155F96e68A9988EAdBF8bd3eFdba1438", + "WitnetRandomnessV2": "0x4d239f070e475E454148093781211c9eE34f476C" + }, "meter:testnet": { "WitnetDeployer": "0xE9D654A97eC431C4f1faba550d0a26399f6fEc80", "WitnetProxy": "0x49c94B9d32a9AFc3C9Ce0159324b81635ac3f0Ea", @@ -186,6 +358,16 @@ "WitnetRandomnessV2": "0x2dE368AFC80b13E4a42990004ebC74ce125486F9", "WitnetRequestFactoryCfxCore": "0x602e74De19acA64f6ea1E20Da94a8B4D81dF3013" }, + "moonbeam:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x412647Ff1519706C01706c5816E5cC355dd0A06D", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "moonbeam:moonbase": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -196,6 +378,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "moonbeam:moonriver": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x412647Ff1519706C01706c5816E5cC355dd0A06D", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "okx:oktchain:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -221,11 +413,11 @@ "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", - "WitnetOracleTrustableOvm2": "0x8423ddeb7d86Ce43a9C643bE3A420Ff69825Dd53", + "WitnetOracleTrustableOvm2": "0xDc5Ec161b72C5710E2D648b3f360C9b76952397b", "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", - "WitnetPriceFeedsDefault": "0x853DDf69DbEaDA2fc4A521a1dBA5Beb210a5c4d2", - "WitnetRequestBytecodesDefault": "0xD1960cdC1593Bb9CA75263266dAB75EE33163187", - "WitnetRequestFactoryDefault": "0x9ef37BF321828AD49F3D31Fd9Cd36921ee317190" + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04" }, "optimism:sepolia": { "WitnetProxy": "0x58Bd0091748d0438f379bbf7D8BfF3a624CEbc3F", @@ -248,7 +440,38 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "polygon:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, + "polygon:zkevm:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesNoSha256": "0x0C39d07778Fc2FF94efe889b107Deaa074041719", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x412647Ff1519706C01706c5816E5cC355dd0A06D", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, + "reef:mainnet": {}, "reef:testnet": {}, + "scroll:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesNoSha256": "0x0C39d07778Fc2FF94efe889b107Deaa074041719", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x412647Ff1519706C01706c5816E5cC355dd0A06D", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "scroll:sepolia": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", @@ -280,6 +503,16 @@ "WitnetRequestBytecodesDefault": "0x51376b77d9944bb9c5685b9d9289dd08D399B5e1", "WitnetRequestFactoryDefault": "0xB06a2fEc3Dc38b6f8Ce6337317Fcd4aAB00FE773" }, + "ultron:mainnet": { + "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", + "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", + "WitnetPriceFeedsLib": "0x579b4aD5E67E5B491a33A033A02A70769D7AF837", + "WitnetOracleDataLib": "0x561A6c8F9C9D6e7EbAEcd4963A8f27Ae13568676", + "WitnetRequestBytecodesDefault": "0x967C4A627e68770db28803d033eEBCeE615C37EB", + "WitnetRequestFactoryDefault": "0xE2CA421F5c28a04eb0B22f12512627acA9cF9E04", + "WitnetOracleTrustableDefault": "0x105EeFc7ad7A057C3BF2D516a0bFbB84E80d66eF", + "WitnetPriceFeedsDefault": "0xd26f5c402D274C1b7c443E2215221D70C0b8DeB0" + }, "ultron:testnet": { "WitnetErrorsLib": "0xa57B9dd8420631248c3DFB535f4FC9f7E2f02B4B", "WitnetEncodingLib": "0x268631E002eE8c23F4C124AfBb6fE5DBbaa6d58c", diff --git a/migrations/constructorArgs.json b/migrations/constructorArgs.json index 6dd56cbd..7d49bbaa 100644 --- a/migrations/constructorArgs.json +++ b/migrations/constructorArgs.json @@ -8,16 +8,113 @@ "WitnetRequestBytecodesNoSha256": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" }, - "base:mainnet": {}, + "arbitrum:one": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "avalanche:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "base:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "boba:bnb:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "boba:eth:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "celo:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "conflux:core:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryCfxCore": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db746300000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "0000000000000000000000008dadc231c8c810cbbe2d555338bda94da648f96400000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db74630000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRandomnessV2": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db74630000000000000000000000001169bf81ecf738d02fd8d3824dfe02153b334ef7" + }, "conflux:core:testnet": { "WitnetRequestFactoryCfxCore": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db746300000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", "WitnetOracleTrustableDefault": "0000000000000000000000008dadc231c8c810cbbe2d555338bda94da648f96400000000000000000000000085d3e5577f947bca1a12c00940087129a5f8b2eb0000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", "WitnetPriceFeedsDefault": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db74630000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", "WitnetRandomnessV2": "0000000000000000000000008346d6ba3b7a04923492007cc3a2ee7135db74630000000000000000000000001169bf81ecf738d02fd8d3824dfe02153b334ef7" }, + "conflux:espace:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, "conflux:espace:testnet": { "WitnetRequestFactoryCfxCore": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" }, + "cronos:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "dogechain:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "elastos:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "kava:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "kcc:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "klaytn:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "mantle:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "meter:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryCfxCore": "0000000000000000000000001f28e4d955ecce989c00b3871446ab22b3fa9cc8000000000000000000000000ba84d2ffa26c8fc7ef2c5bd4839b4b2e4d56d3300000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000c5074dde3fea0347d3b2e8c38e58e6a34feef8ef000000000000000000000000ba84d2ffa26c8fc7ef2c5bd4839b4b2e4d56d3300000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "0000000000000000000000001f28e4d955ecce989c00b3871446ab22b3fa9cc80000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRandomnessV2": "0000000000000000000000001f28e4d955ecce989c00b3871446ab22b3fa9cc8000000000000000000000000e169bf81ecf738d02fd8d3824dfe02153b334ef7" + }, "meter:testnet": { "WitnetRequestFactoryDefault": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a000000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000", "WitnetOracleTrustableDefault": "000000000000000000000000d0b4512f4c9291de4104a1ad7be0c51956044bbc00000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", @@ -25,10 +122,53 @@ "WitnetRandomnessV2": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a0000000000000000000000000e169bf81ecf738d02fd8d3824dfe02153b334ef7", "WitnetRequestFactoryCfxCore": "00000000000000000000000051e12a16d52de519f7b13bfeda42fb61214d32a000000000000000000000000087e25ad751306b21f9345494f163122e057b7b530000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000" }, + "moonbeam:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "moonbeam:moonriver": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "optimism:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "polygon:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "polygon:zkevm:mainnet": { + "WitnetRequestBytecodesNoSha256": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, + "reef:mainnet": {}, + "scroll:mainnet": { + "WitnetRequestBytecodesNoSha256": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" + }, "syscoin:rollux:testnet": { "WitnetOracleTrustableOvm2": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" }, "ten:testnet": { "WitnetOracleTrustableObscuro": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d34386336646436000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20" + }, + "ultron:mainnet": { + "WitnetRequestBytecodesDefault": "0000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetRequestFactoryDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da00777000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000", + "WitnetOracleTrustableDefault": "000000000000000000000000000db36997af1f02209a6f995883b9b699900000000000000000000000000000000b61fe075f545fd37767f403916582759000000000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e3aa000000000000000000000000000000000000000000000000000000000000fef90000000000000000000000000000000000000000000000000000000000010faa0000000000000000000000000000000000000000000000000000000000004e20", + "WitnetPriceFeedsDefault": "00000000000000000000000077703ae126b971c9946d562f41dd47071da007770000000000000000000000000000000000000000000000000000000000000001322e302e31342d64313036336562000000000000000000000000000000000000" } } \ No newline at end of file From 4f84be0b488c27b61de46da37a274ef988cd451f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 09:55:58 +0200 Subject: [PATCH 18/19] chore: fmt! --- migrations/scripts/1_deployer.js | 8 ++++---- migrations/scripts/5_apps.js | 8 ++++---- settings/networks.js | 30 +++++++++++++++--------------- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/migrations/scripts/1_deployer.js b/migrations/scripts/1_deployer.js index c977f4ea..19346749 100644 --- a/migrations/scripts/1_deployer.js +++ b/migrations/scripts/1_deployer.js @@ -14,8 +14,8 @@ module.exports = async function (deployer, network, [,,, master]) { (await web3.eth.getCode(factoryAddr)).length < 3 ) { const WitnetDeployerImpl = artifacts.require(settings.getArtifacts(network).WitnetDeployer) - await deployer.deploy(WitnetDeployerImpl, { - from: settings.getSpecs(network)?.WitnetDeployer?.from || web3.utils.toChecksumAddress(master) + await deployer.deploy(WitnetDeployerImpl, { + from: settings.getSpecs(network)?.WitnetDeployer?.from || web3.utils.toChecksumAddress(master), }) const factory = await WitnetDeployerImpl.deployed() if (factory.address !== addresses?.default?.WitnetDeployer) { @@ -38,8 +38,8 @@ module.exports = async function (deployer, network, [,,, master]) { utils.isNullAddress(proxyAddr) || (await web3.eth.getCode(proxyAddr)).length < 3 ) { - await deployer.deploy(WitnetProxy, { - from: settings.getSpecs(network)?.WitnetDeployer?.from || master + await deployer.deploy(WitnetProxy, { + from: settings.getSpecs(network)?.WitnetDeployer?.from || master, }) if (WitnetProxy.address !== addresses?.default?.WitnetProxy) { addresses[network].WitnetProxy = WitnetProxy.address diff --git a/migrations/scripts/5_apps.js b/migrations/scripts/5_apps.js index ae72acda..de10fff9 100644 --- a/migrations/scripts/5_apps.js +++ b/migrations/scripts/5_apps.js @@ -45,10 +45,10 @@ async function deploy (target) { const artifact = artifacts.require(key) const contract = artifacts.require(targets[key]) if ( - (!utils.isNullAddress(addresses[network][targets[key]] || addresses?.default[targets[key]]) - && (await web3.eth.getCode(addresses[network][targets[key]] || addresses?.default[targets[key]])).length < 3) - || addresses[network][targets[key]] === "" - || selection.includes(targets[key]) + (!utils.isNullAddress(addresses[network][targets[key]] || addresses?.default[targets[key]]) && + (await web3.eth.getCode(addresses[network][targets[key]] || addresses?.default[targets[key]])).length < 3) || + addresses[network][targets[key]] === "" || + selection.includes(targets[key]) ) { utils.traceHeader(`Deploying '${key}'...`) console.info(" ", "> account: ", from) diff --git a/settings/networks.js b/settings/networks.js index f99d025d..e51ce0d2 100644 --- a/settings/networks.js +++ b/settings/networks.js @@ -131,7 +131,7 @@ module.exports = { apiKey: "espace", apiUrl: "https://evmapi-testnet.confluxscan.io/api/", explorerUrl: "https://evmtestnet.confluxscan.io/", - } + }, }, "conflux:espace:mainnet": { port: 9529, @@ -142,7 +142,7 @@ module.exports = { apiKey: "espace", apiUrl: "https://evmapi.confluxscan.io/api", explorerUrl: "https://evm.confluxscan.io/address", - } + }, }, "cronos:testnet": { port: 8530, @@ -301,7 +301,7 @@ module.exports = { apiUrl: "https://sepolia-explorer.metisdevops.link/api", // apiUrl: "https://api.routescan.io/v2/network/sepolia/evm/59902/etherscan", explorerUrl: "https://sepolia-explorer.metisdevops.link", - } + }, }, "meter:testnet": { port: 8523, @@ -316,16 +316,16 @@ module.exports = { network_id: 1284, verify: { apiUrl: "https://api-moonbeam.moonscan.io/api", - explorerUrl: "https://moonscan.io/" - } + explorerUrl: "https://moonscan.io/", + }, }, "moonbeam:moonriver": { port: 7531, network_id: 1285, verify: { apiUrl: "https://api-moonriver.moonscan.io/api", - explorerUrl: "https://moonriver.moonscan.io/" - } + explorerUrl: "https://moonriver.moonscan.io/", + }, }, "moonbeam:moonbase": { port: 8531, @@ -333,8 +333,8 @@ module.exports = { gas: 15000000, verify: { apiUrl: "https://api-moonbase.moonscan.io/api", - explorerUrl: "https://moonbase.moonscan.io/" - } + explorerUrl: "https://moonbase.moonscan.io/", + }, }, "okx:oktchain:testnet": { port: 8528, @@ -342,7 +342,7 @@ module.exports = { verify: { apiUrl: "https://www.oklink.com/api/explorer/v1/contract/verify/async/api", explorerUrl: "https://www.okx.com/explorer/oktc/", - } + }, }, "okx:oktchain:mainnet": { port: 9528, @@ -350,15 +350,15 @@ module.exports = { verify: { apiUrl: "https://www.oklink.com/api/explorer/v1/contract/verify/async/api/okctest", explorerUrl: "https://www.okx.com/explorer/oktc-test/", - } + }, }, "okx:x1:sepolia": { port: 8505, network_id: 195, verify: { apiUrl: "https://www.okx.com/explorer/xlayer-test/api", - explorerUrl: "https://www.okx.com/explorer/xlayer-test" - } + explorerUrl: "https://www.okx.com/explorer/xlayer-test", + }, }, "optimism:sepolia": { port: 8503, @@ -387,7 +387,7 @@ module.exports = { apiKey: process.env.ETHERSCAN_POLYGON_API_KEY, apiUrl: "https://api-amoy.polygonscan.com/api", explorerUrl: "https://amoy.polygonscan.com/", - } + }, }, "polygon:mainnet": { port: 9535, @@ -396,7 +396,7 @@ module.exports = { apiKey: process.env.ETHERSCAN_POLYGON_API_KEY, apiUrl: "https://api.polygonscan.com/api", explorerUrl: "https://polygonscan.com/", - } + }, }, "polygon:zkevm:goerli": { port: 8512, From 4d1e464824bd7080072eb330e56faca8f89efb8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillermo=20D=C3=ADaz?= Date: Tue, 28 May 2024 10:22:06 +0200 Subject: [PATCH 19/19] chore: bump package version to 2.0.15 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ce44aab3..9876f85d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "witnet-solidity-bridge", - "version": "2.0.14", + "version": "2.0.15", "description": "Witnet Solidity Bridge contracts for EVM-compatible chains", "author": "Witnet Foundation ", "license": "MIT",