diff --git a/.env.sample b/.env.sample index a3e08ec67..04b2a4bd5 100644 --- a/.env.sample +++ b/.env.sample @@ -21,6 +21,7 @@ POLYGONSCAN_API_KEY= ARBITRUMSCAN_API_KEY= AVASCAN_API_KEY= SEITRACE_API_KEY= +GNOSISSCAN_API_KEY= # Defender API keys DEFENDER_TEAM_API_KEY= diff --git a/.openzeppelin/unknown-100.json b/.openzeppelin/unknown-100.json new file mode 100644 index 000000000..653110124 --- /dev/null +++ b/.openzeppelin/unknown-100.json @@ -0,0 +1,515 @@ +{ + "manifestVersion": "3.2", + "admin": { + "address": "0x758b87af7fdB4783f848a1dDEa1F025dC48B9858", + "txHash": "0x6e1e1cca702eaf4a674bef0aea9ee11d6034dcaa762aa859f2260cee1b021343" + }, + "proxies": [ + { + "address": "0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3", + "txHash": "0x0cfcd74029b7269261d93a2038219c68fdb95608beade10137c0b1bb9ef200ba", + "kind": "transparent" + }, + { + "address": "0x1133eA7Af70876e64665ecD07C0A0476d09465a1", + "txHash": "0x188f37d612c88b4da8169268aca6ceab324ac94a13725feabda340ff6ed65db5", + "kind": "transparent" + } + ], + "impls": { + "2a362e3f376d2950cfc87c92b1f1891097339509448fae104fb2e5cbec04b3c2": { + "address": "0xA3Fd7042F83960398De6ceddbf513F8cac877cbE", + "txHash": "0xe6ff2ea5f9f9294fd277d4366979b2c3c3127c60c05c7a451bb4b089c559a818", + "layout": { + "solcVersion": "0.8.19", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol:36" + }, + { + "label": "__gap", + "offset": 0, + "slot": "51", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_roles", + "offset": 0, + "slot": "101", + "type": "t_mapping(t_bytes32,t_struct(RoleData)34058_storage)", + "contract": "AccessControlUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol:62" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol:260" + }, + { + "label": "anchorToProfileId", + "offset": 0, + "slot": "151", + "type": "t_mapping(t_address,t_bytes32)", + "contract": "Registry", + "src": "contracts/core/Registry.sol:108" + }, + { + "label": "profilesById", + "offset": 0, + "slot": "152", + "type": "t_mapping(t_bytes32,t_struct(Profile)2673_storage)", + "contract": "Registry", + "src": "contracts/core/Registry.sol:110" + }, + { + "label": "profileIdToPendingOwner", + "offset": 0, + "slot": "153", + "type": "t_mapping(t_bytes32,t_address)", + "contract": "Registry", + "src": "contracts/core/Registry.sol:112" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_bytes32)": { + "label": "mapping(address => bytes32)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_address)": { + "label": "mapping(bytes32 => address)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(Profile)2673_storage)": { + "label": "mapping(bytes32 => struct IRegistry.Profile)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)34058_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Metadata)3148_storage": { + "label": "struct Metadata", + "members": [ + { + "label": "protocol", + "type": "t_uint256", + "offset": 0, + "slot": "0" + }, + { + "label": "pointer", + "type": "t_string_storage", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(Profile)2673_storage": { + "label": "struct IRegistry.Profile", + "members": [ + { + "label": "id", + "type": "t_bytes32", + "offset": 0, + "slot": "0" + }, + { + "label": "nonce", + "type": "t_uint256", + "offset": 0, + "slot": "1" + }, + { + "label": "name", + "type": "t_string_storage", + "offset": 0, + "slot": "2" + }, + { + "label": "metadata", + "type": "t_struct(Metadata)3148_storage", + "offset": 0, + "slot": "3" + }, + { + "label": "owner", + "type": "t_address", + "offset": 0, + "slot": "5" + }, + { + "label": "anchor", + "type": "t_address", + "offset": 0, + "slot": "6" + } + ], + "numberOfBytes": "224" + }, + "t_struct(RoleData)34058_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + }, + "namespaces": {} + } + }, + "6451c555e01f2d700e5782c78ee5ddb2ebbcc880b492e7b87ea2a6dd2f0b92b4": { + "address": "0xB087535DB0df98fC4327136e897A5985E5Cfbd66", + "txHash": "0x16f4ce739117984b6b4ab4dd99813271a1d296ad62aabb40e57f70ac60507688", + "layout": { + "solcVersion": "0.8.19", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol:36" + }, + { + "label": "__gap", + "offset": 0, + "slot": "51", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_roles", + "offset": 0, + "slot": "101", + "type": "t_mapping(t_bytes32,t_struct(RoleData)34058_storage)", + "contract": "AccessControlUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol:62" + }, + { + "label": "__gap", + "offset": 0, + "slot": "102", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol:260" + }, + { + "label": "_status", + "offset": 0, + "slot": "151", + "type": "t_uint256", + "contract": "ReentrancyGuardUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol:38" + }, + { + "label": "__gap", + "offset": 0, + "slot": "152", + "type": "t_array(t_uint256)49_storage", + "contract": "ReentrancyGuardUpgradeable", + "src": "lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol:88" + }, + { + "label": "percentFee", + "offset": 0, + "slot": "201", + "type": "t_uint256", + "contract": "Allo", + "src": "contracts/core/Allo.sol:126" + }, + { + "label": "baseFee", + "offset": 0, + "slot": "202", + "type": "t_uint256", + "contract": "Allo", + "src": "contracts/core/Allo.sol:141" + }, + { + "label": "_poolIndex", + "offset": 0, + "slot": "203", + "type": "t_uint256", + "contract": "Allo", + "src": "contracts/core/Allo.sol:144" + }, + { + "label": "treasury", + "offset": 0, + "slot": "204", + "type": "t_address_payable", + "contract": "Allo", + "src": "contracts/core/Allo.sol:145" + }, + { + "label": "registry", + "offset": 0, + "slot": "205", + "type": "t_contract(IRegistry)2846", + "contract": "Allo", + "src": "contracts/core/Allo.sol:145" + }, + { + "label": "_nonces", + "offset": 0, + "slot": "206", + "type": "t_mapping(t_address,t_uint256)", + "contract": "Allo", + "src": "contracts/core/Allo.sol:146" + }, + { + "label": "pools", + "offset": 0, + "slot": "207", + "type": "t_mapping(t_uint256,t_struct(Pool)2319_storage)", + "contract": "Allo", + "src": "contracts/core/Allo.sol:147" + }, + { + "label": "cloneableStrategies", + "offset": 0, + "slot": "208", + "type": "t_mapping(t_address,t_bool)", + "contract": "Allo", + "src": "contracts/core/Allo.sol:149" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_address_payable": { + "label": "address payable", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_contract(IRegistry)2846": { + "label": "contract IRegistry", + "numberOfBytes": "20" + }, + "t_contract(IStrategy)3013": { + "label": "contract IStrategy", + "numberOfBytes": "20" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_uint256)": { + "label": "mapping(address => uint256)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)34058_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_struct(Pool)2319_storage)": { + "label": "mapping(uint256 => struct IAllo.Pool)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Metadata)3148_storage": { + "label": "struct Metadata", + "members": [ + { + "label": "protocol", + "type": "t_uint256", + "offset": 0, + "slot": "0" + }, + { + "label": "pointer", + "type": "t_string_storage", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_struct(Pool)2319_storage": { + "label": "struct IAllo.Pool", + "members": [ + { + "label": "profileId", + "type": "t_bytes32", + "offset": 0, + "slot": "0" + }, + { + "label": "strategy", + "type": "t_contract(IStrategy)3013", + "offset": 0, + "slot": "1" + }, + { + "label": "token", + "type": "t_address", + "offset": 0, + "slot": "2" + }, + { + "label": "metadata", + "type": "t_struct(Metadata)3148_storage", + "offset": 0, + "slot": "3" + }, + { + "label": "managerRole", + "type": "t_bytes32", + "offset": 0, + "slot": "5" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "6" + } + ], + "numberOfBytes": "224" + }, + "t_struct(RoleData)34058_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + }, + "namespaces": {} + } + } + } +} diff --git a/contracts/strategies/_poc/direct-grants-simple/DirectGrantsSimpleStrategy.sol b/contracts/strategies/_poc/direct-grants-simple/DirectGrantsSimpleStrategy.sol index 705c82051..dbe0250f2 100644 --- a/contracts/strategies/_poc/direct-grants-simple/DirectGrantsSimpleStrategy.sol +++ b/contracts/strategies/_poc/direct-grants-simple/DirectGrantsSimpleStrategy.sol @@ -299,13 +299,9 @@ contract DirectGrantsSimpleStrategy is BaseStrategy, ReentrancyGuard { { Recipient storage recipient = _recipients[_recipientId]; - if ( - milestones[_recipientId] - // Check if the recipient has any milestones, otherwise revert - .length == 0 - // Check if the milestone hasn't been updated via frontrun, otherwise revert - || keccak256(abi.encode(milestones[_recipientId])) != milestonesHash - ) { + // Check if the recipient has any milestones, otherwise revert + // Check if the milestone hasn't been updated via frontrun, otherwise revert + if (milestones[_recipientId].length == 0 || keccak256(abi.encode(milestones[_recipientId])) != milestonesHash) { revert INVALID_MILESTONE(); } diff --git a/hardhat.config.ts b/hardhat.config.ts index bb3dd100e..978792227 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -50,7 +50,8 @@ const chainIds = { avalanche: 43114, scroll: 534352, "lukso-mainnet": 42, - metisAndromeda: 1088 + metisAndromeda: 1088, + gnosis: 100, }; let deployPrivateKey = process.env.DEPLOYER_PRIVATE_KEY as string; @@ -266,6 +267,10 @@ const config: HardhatUserConfig = { ...createTestnetConfig("lukso-testnet"), url: "https://4201.rpc.thirdweb.com", }, + "gnosis": { + ...createMainnetConfig("gnosis"), + url: "https://rpc.gnosischain.com", + }, // Local Networks localhost: createTestnetConfig("localhost", "http://localhost:8545"), @@ -313,6 +318,7 @@ const config: HardhatUserConfig = { "lukso-mainnet": "no-api-key-needed", "lukso-testnet": "no-api-key-needed", metisAndromeda: "no-api-key-needed", + xdai: process.env.GNOSISSCAN_API_KEY || "", }, customChains: [ { diff --git a/reports/deployment-logs/core/deploy.log b/reports/deployment-logs/core/deploy.log index 0027322a0..1da0df1fa 100644 --- a/reports/deployment-logs/core/deploy.log +++ b/reports/deployment-logs/core/deploy.log @@ -657,3 +657,15 @@ 20240729_144601 - Deployment finished with 0 error(s) 20240729_144601 - Executing: bun hardhat run scripts/strategies/deployDirectAllocation.ts --no-compile --network metisAndromeda | tee ./reports/deployment-logs/strategies/deployDirectAllocation/metisAndromeda/20240729_144147/deploy-20240729_144147.log 20240729_144755 - Deployment finished with 0 error(s) +20240912_140627 - Executing: bun hardhat run scripts/core/deployRegistry.ts --no-compile --network gnosis | tee ./reports/deployment-logs/core/deployRegistry/gnosis/20240912_140627/deploy-20240912_140627.log +20240912_140751 - Deployment finished with 0 error(s) +20240912_140957 - Executing: bun hardhat run scripts/core/deployContractFactory.ts --no-compile --network gnosis | tee ./reports/deployment-logs/core/deployContractFactory/gnosis/20240912_140957/deploy-20240912_140957.log +20240912_141056 - Deployment finished with 0 error(s) +20240912_141056 - Executing: bun hardhat run scripts/core/deployAllo.ts --no-compile --network gnosis | tee ./reports/deployment-logs/core/deployAllo/gnosis/20240912_140957/deploy-20240912_140957.log +20240912_141208 - Deployment finished with 0 error(s) +20240912_141426 - Executing: bun hardhat run scripts/strategies/deployDonationVotingMerkleDistributionDirect.ts --no-compile --network gnosis | tee ./reports/deployment-logs/strategies/deployDonationVotingMerkleDistributionDirect/gnosis/20240912_141426/deploy-20240912_141426.log +20240912_141657 - Deployment finished with 0 error(s) +20240912_141657 - Executing: bun hardhat run scripts/strategies/deployDirectGrantsLite.ts --no-compile --network gnosis | tee ./reports/deployment-logs/strategies/deployDirectGrantsLite/gnosis/20240912_141426/deploy-20240912_141426.log +20240912_141937 - Deployment finished with 0 error(s) +20240912_141937 - Executing: bun hardhat run scripts/strategies/deployDirectAllocation.ts --no-compile --network gnosis | tee ./reports/deployment-logs/strategies/deployDirectAllocation/gnosis/20240912_141426/deploy-20240912_141426.log +20240912_142146 - Deployment finished with 0 error(s) diff --git a/reports/deployment-logs/core/deployAllo/gnosis/20240912_140957/deploy-20240912_140957.log b/reports/deployment-logs/core/deployAllo/gnosis/20240912_140957/deploy-20240912_140957.log new file mode 100644 index 000000000..9111715ea --- /dev/null +++ b/reports/deployment-logs/core/deployAllo/gnosis/20240912_140957/deploy-20240912_140957.log @@ -0,0 +1,100 @@ + + //////////////////////////////////////////////////// + Deploys Allo.sol on gnosis + //////////////////////////////////////////////////// + +┌─────────────────┬──────────────────────────────────────────────┐ +│ (index) │ Values │ +├─────────────────┼──────────────────────────────────────────────┤ +│ contract │ 'Deploy Allo.sol' │ +│ chainId │ 100 │ +│ network │ 'gnosis' │ +│ owner │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ registry │ '0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3' │ +│ treasury │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ percentFee │ 0 │ +│ baseFee │ 0 │ +│ deployerAddress │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ balance │ '115.271463708570995248' │ +└─────────────────┴──────────────────────────────────────────────┘ +Deploying Allo.sol... +Allo Proxy deployed to: 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 +Registry implementation deployed to: 0xB087535DB0df98fC4327136e897A5985E5Cfbd66 +Proxy Admin: 0x758b87af7fdB4783f848a1dDEa1F025dC48B9858 +Proxy Admin Owner: 0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C + +Verifying contract... +Verifying implementation: 0xB087535DB0df98fC4327136e897A5985E5Cfbd66 +Failed to verify implementation contract at 0xB087535DB0df98fC4327136e897A5985E5Cfbd66: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis +MissingApiKeyError: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis + at resolveApiKey (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:290:11) + at Function.fromChainConfig (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:75:28) + at getEtherscanInstance (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/utils/etherscan-api.ts:50:20) + at processTicksAndRejections (node:internal/process/task_queues:95:5) + at async fullVerifyTransparentOrUUPS (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:202:21) + at async verify (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:99:5) + at async OverriddenTaskDefinition._action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/index.ts:206:12) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async Environment.run (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14) + at async SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:546:7) + +Verifying contract... +MissingApiKeyError: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis + at resolveApiKey (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:290:11) + at Function.fromChainConfig (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:75:28) + at SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:240:35) + at processTicksAndRejections (node:internal/process/task_queues:95:5) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async hardhatVerify (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:118:12) + at async OverriddenTaskDefinition._action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/index.ts:206:12) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async Environment.run (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14) + at async SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:546:7) + + Validating getRegistry() == 0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3 + ✅ PASSED with Result: 0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3 + + Validating getTreasury() == 0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C + ✅ PASSED with Result: 0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C + + Validating getPercentFee() == 0 + ✅ PASSED with Result: 0 + + Validating getBaseFee() == 0 + ✅ PASSED with Result: 0 + + Validating owner() == 0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C + ✅ PASSED with Result: 0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C diff --git a/reports/deployment-logs/core/deployContractFactory/gnosis/20240912_140957/deploy-20240912_140957.log b/reports/deployment-logs/core/deployContractFactory/gnosis/20240912_140957/deploy-20240912_140957.log new file mode 100644 index 000000000..ac3e9e56d --- /dev/null +++ b/reports/deployment-logs/core/deployContractFactory/gnosis/20240912_140957/deploy-20240912_140957.log @@ -0,0 +1,43 @@ + + //////////////////////////////////////////////////// + Deploys ContractFactory.sol on gnosis + //////////////////////////////////////////////////// + +┌─────────────────┬──────────────────────────────────────────────┐ +│ (index) │ Values │ +├─────────────────┼──────────────────────────────────────────────┤ +│ contract │ 'Deploy ContractFactory.sol' │ +│ chainId │ 100 │ +│ network │ 'gnosis' │ +│ deployerAddress │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ balance │ '115.271819118573483118' │ +└─────────────────┴──────────────────────────────────────────────┘ +Deploying ContractFactory.sol... +ContractFactory deployed to: 0xE195743480D1591B79106FF9B296A0cD38aDa807 + +Verifying contract... +MissingApiKeyError: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis + at resolveApiKey (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:290:11) + at Function.fromChainConfig (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:75:28) + at SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:240:35) + at processTicksAndRejections (node:internal/process/task_queues:95:5) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async hardhatVerify (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:118:12) + at async OverriddenTaskDefinition._action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/index.ts:206:12) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async Environment.run (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14) + at async SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:546:7) + + Validating isDeployer(0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C) == true + ✅ PASSED with Result: true diff --git a/reports/deployment-logs/core/deployRegistry/gnosis/20240912_140627/deploy-20240912_140627.log b/reports/deployment-logs/core/deployRegistry/gnosis/20240912_140627/deploy-20240912_140627.log new file mode 100644 index 000000000..bf103b575 --- /dev/null +++ b/reports/deployment-logs/core/deployRegistry/gnosis/20240912_140627/deploy-20240912_140627.log @@ -0,0 +1,84 @@ + + //////////////////////////////////////////////////// + Deploys Registry.sol on gnosis + //////////////////////////////////////////////////// + +┌─────────────────┬──────────────────────────────────────────────┐ +│ (index) │ Values │ +├─────────────────┼──────────────────────────────────────────────┤ +│ contract │ 'Registry.sol' │ +│ chainId │ 100 │ +│ network │ 'gnosis' │ +│ deployerAddress │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ registryOwner │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ balance │ '115.275417456598671484' │ +└─────────────────┴──────────────────────────────────────────────┘ +Deploying Registry... +Registry proxy deployed to: 0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3 +Registry implementation deployed to: 0xA3Fd7042F83960398De6ceddbf513F8cac877cbE +Proxy Admin: 0x758b87af7fdB4783f848a1dDEa1F025dC48B9858 +Proxy Admin Owner: 0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C + +Verifying contract... +Verifying implementation: 0xA3Fd7042F83960398De6ceddbf513F8cac877cbE +Failed to verify implementation contract at 0xA3Fd7042F83960398De6ceddbf513F8cac877cbE: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis +MissingApiKeyError: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis + at resolveApiKey (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:290:11) + at Function.fromChainConfig (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:75:28) + at getEtherscanInstance (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/utils/etherscan-api.ts:50:20) + at processTicksAndRejections (node:internal/process/task_queues:95:5) + at async fullVerifyTransparentOrUUPS (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:202:21) + at async verify (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:99:5) + at async OverriddenTaskDefinition._action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/index.ts:206:12) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async Environment.run (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14) + at async SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:546:7) + +Verifying contract... +MissingApiKeyError: You are trying to verify a contract in 'xdai', but no API token was found for this network. Please provide one in your hardhat config. For example: + +{ + ... + etherscan: { + apiKey: { + xdai: 'your API key' + } + } +} + +See https://etherscan.io/apis + at resolveApiKey (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:290:11) + at Function.fromChainConfig (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/internal/etherscan.ts:75:28) + at SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:240:35) + at processTicksAndRejections (node:internal/process/task_queues:95:5) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async hardhatVerify (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/verify-proxy.ts:118:12) + at async OverriddenTaskDefinition._action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@openzeppelin+hardhat-upgrades@2.5.1_sym3ukwnpvfhm2yjdhnkm4xtb4/node_modules/@openzeppelin/hardhat-upgrades/src/index.ts:206:12) + at async Environment._runTaskDefinition (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:359:14) + at async Environment.run (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/hardhat/src/internal/core/runtime-environment.ts:192:14) + at async SimpleTaskDefinition.action (/Users/thelostone-mc/Labs/allo/allo-v2/node_modules/.pnpm/@nomicfoundation+hardhat-verify@1.1.1_hardhat@2.22.1/node_modules/@nomicfoundation/hardhat-verify/src/index.ts:546:7) + + Validating hasRole(0x815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747,0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C) == true + ✅ PASSED with Result: true diff --git a/reports/deployment-logs/strategies/deployDirectAllocation/gnosis/20240912_141426/deploy-20240912_141426.log b/reports/deployment-logs/strategies/deployDirectAllocation/gnosis/20240912_141426/deploy-20240912_141426.log new file mode 100644 index 000000000..3630ac36f --- /dev/null +++ b/reports/deployment-logs/strategies/deployDirectAllocation/gnosis/20240912_141426/deploy-20240912_141426.log @@ -0,0 +1,32 @@ + + //////////////////////////////////////////////////// + Deploys DirectAllocationStrategy.sol on gnosis + //////////////////////////////////////////////////// + +┌─────────────────┬──────────────────────────────────────────────┐ +│ (index) │ Values │ +├─────────────────┼──────────────────────────────────────────────┤ +│ contract │ 'DirectAllocationStrategy.sol' │ +│ chainId │ 100 │ +│ network │ 'gnosis' │ +│ deployerAddress │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ balance │ '115.261566321559636405' │ +└─────────────────┴──────────────────────────────────────────────┘ +Deploying DirectAllocationStrategy.sol +Contract DirectAllocationStrategy deployed at address: 0x56662F9c0174cD6ae14b214fC52Bd6Eb6B6eA602 + +Verifying contract... +Successfully submitted source code for contract +contracts/strategies/direct-allocation/DirectAllocation.sol:DirectAllocationStrategy at 0x56662F9c0174cD6ae14b214fC52Bd6Eb6B6eA602 +for verification on the block explorer. Waiting for verification result... + +Successfully verified contract DirectAllocationStrategy on the block explorer. +https://gnosisscan.io/address/0x56662F9c0174cD6ae14b214fC52Bd6Eb6B6eA602#code + + Validating getAllo() == 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 + ✅ PASSED with Result: 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 + + Validating getStrategyId() == 0x4cd0051913234cdd7d165b208851240d334786d6e5afbb4d0eec203515a9c6f3 + ✅ PASSED with Result: 0x4cd0051913234cdd7d165b208851240d334786d6e5afbb4d0eec203515a9c6f3 +Adding DirectAllocationStrategy v1.1 to cloneable strategies... +DirectAllocationStrategy v1.1 added to cloneable strategies. diff --git a/reports/deployment-logs/strategies/deployDirectGrantsLite/gnosis/20240912_141426/deploy-20240912_141426.log b/reports/deployment-logs/strategies/deployDirectGrantsLite/gnosis/20240912_141426/deploy-20240912_141426.log new file mode 100644 index 000000000..02b9aefd5 --- /dev/null +++ b/reports/deployment-logs/strategies/deployDirectGrantsLite/gnosis/20240912_141426/deploy-20240912_141426.log @@ -0,0 +1,32 @@ + + //////////////////////////////////////////////////// + Deploys DirectGrantsLiteStrategy.sol on gnosis + //////////////////////////////////////////////////// + +┌─────────────────┬──────────────────────────────────────────────┐ +│ (index) │ Values │ +├─────────────────┼──────────────────────────────────────────────┤ +│ contract │ 'DirectGrantsLiteStrategy.sol' │ +│ chainId │ 100 │ +│ network │ 'gnosis' │ +│ deployerAddress │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ balance │ '115.264023558576837064' │ +└─────────────────┴──────────────────────────────────────────────┘ +Deploying DirectGrantsLiteStrategy.sol +Contract DirectGrantsLiteStrategy deployed at address: 0x79A5EEc2C87Cd2116195E71af7A38647f89C8Ffa + +Verifying contract... +Successfully submitted source code for contract +contracts/strategies/direct-grants-lite/DirectGrantsLite.sol:DirectGrantsLiteStrategy at 0x79A5EEc2C87Cd2116195E71af7A38647f89C8Ffa +for verification on the block explorer. Waiting for verification result... + +Successfully verified contract DirectGrantsLiteStrategy on the block explorer. +https://gnosisscan.io/address/0x79A5EEc2C87Cd2116195E71af7A38647f89C8Ffa#code + + Validating getAllo() == 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 + ✅ PASSED with Result: 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 + + Validating getStrategyId() == 0x103732a8e473467a510d4128ee11065262bdd978f0d9dad89ba68f2c56127e27 + ✅ PASSED with Result: 0x103732a8e473467a510d4128ee11065262bdd978f0d9dad89ba68f2c56127e27 +Adding DirectGrantsLiteStrategy v1.0 to cloneable strategies... +DirectGrantsLiteStrategy v1.0 added to cloneable strategies. diff --git a/reports/deployment-logs/strategies/deployDonationVotingMerkleDistributionDirect/gnosis/20240912_141426/deploy-20240912_141426.log b/reports/deployment-logs/strategies/deployDonationVotingMerkleDistributionDirect/gnosis/20240912_141426/deploy-20240912_141426.log new file mode 100644 index 000000000..b844fcbfe --- /dev/null +++ b/reports/deployment-logs/strategies/deployDonationVotingMerkleDistributionDirect/gnosis/20240912_141426/deploy-20240912_141426.log @@ -0,0 +1,32 @@ + + //////////////////////////////////////////////////// + Deploys DonationVotingMerkleDistributionDirectTransferStrategy.sol on gnosis + //////////////////////////////////////////////////// + +┌─────────────────┬──────────────────────────────────────────────────────────────┐ +│ (index) │ Values │ +├─────────────────┼──────────────────────────────────────────────────────────────┤ +│ contract │ 'DonationVotingMerkleDistributionDirectTransferStrategy.sol' │ +│ chainId │ 100 │ +│ network │ 'gnosis' │ +│ deployerAddress │ '0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C' │ +│ balance │ '115.267871675545851017' │ +└─────────────────┴──────────────────────────────────────────────────────────────┘ +Deploying DonationVotingMerkleDistributionDirectTransferStrategy.sol +Contract DonationVotingMerkleDistributionDirectTransferStrategy deployed at address: 0x787eC93Dd71a90563979417879F5a3298389227f + +Verifying contract... +Successfully submitted source code for contract +contracts/strategies/donation-voting-merkle-distribution-direct-transfer/DonationVotingMerkleDistributionDirectTransferStrategy.sol:DonationVotingMerkleDistributionDirectTransferStrategy at 0x787eC93Dd71a90563979417879F5a3298389227f +for verification on the block explorer. Waiting for verification result... + +Successfully verified contract DonationVotingMerkleDistributionDirectTransferStrategy on the block explorer. +https://gnosisscan.io/address/0x787eC93Dd71a90563979417879F5a3298389227f#code + + Validating getAllo() == 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 + ✅ PASSED with Result: 0x1133eA7Af70876e64665ecD07C0A0476d09465a1 + + Validating getStrategyId() == 0x9fa6890423649187b1f0e8bf4265f0305ce99523c3d11aa36b35a54617bb0ec0 + ✅ PASSED with Result: 0x9fa6890423649187b1f0e8bf4265f0305ce99523c3d11aa36b35a54617bb0ec0 +Adding DonationVotingMerkleDistributionDirectTransferStrategy v2.1 to cloneable strategies... +DonationVotingMerkleDistributionDirectTransferStrategy v2.1 added to cloneable strategies. diff --git a/scripts/config/allo.config.ts b/scripts/config/allo.config.ts index 01d9be05d..33e0b519c 100644 --- a/scripts/config/allo.config.ts +++ b/scripts/config/allo.config.ts @@ -206,4 +206,11 @@ export const alloConfig: DeployParams = { percentFee: 0, baseFee: 0, }, + // Gnosis + 100: { + owner: "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + treasury: "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + percentFee: 0, + baseFee: 0, + } }; diff --git a/scripts/config/common.config.ts b/scripts/config/common.config.ts index 91aad1c5d..5c7d6e21f 100644 --- a/scripts/config/common.config.ts +++ b/scripts/config/common.config.ts @@ -146,4 +146,9 @@ export const commonConfig: DeployParams = { proxyAdminOwner: "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", permit2Address: "0xb1F795776cB9DdAC6E7e162f31C7419Dd3d48297", }, + // Gnosis + 100: { + proxyAdminOwner: "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + permit2Address: "0x000000000022D473030F116dDEE9F6B43aC78BA3", + } }; diff --git a/scripts/config/registry.config.ts b/scripts/config/registry.config.ts index adc3554dc..0f2abe7e8 100644 --- a/scripts/config/registry.config.ts +++ b/scripts/config/registry.config.ts @@ -119,4 +119,8 @@ export const registryConfig: DeployParams = { 1088: { owner: "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", }, + // Gnosis + 100: { + owner: "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + }, }; diff --git a/scripts/config/strategies.config.ts b/scripts/config/strategies.config.ts index 686688cab..3c3486735 100644 --- a/scripts/config/strategies.config.ts +++ b/scripts/config/strategies.config.ts @@ -717,4 +717,19 @@ export const strategyConfig: DeployParams = { version: "v1.1", }, }, + // Gnosis + 100: { + "donation-voting-merkle-distribution-direct": { + name: "DonationVotingMerkleDistributionDirectTransferStrategy", + version: "v2.1", + }, + "direct-grants-lite": { + name: "DirectGrantsLiteStrategy", + version: "v1.0", + }, + "direct-allocation": { + name: "DirectAllocationStrategy", + version: "v1.1", + }, + }, }; diff --git a/scripts/core/deployAllNetworks.sh b/scripts/core/deployAllNetworks.sh index 13cb32e9d..86aeb0faf 100755 --- a/scripts/core/deployAllNetworks.sh +++ b/scripts/core/deployAllNetworks.sh @@ -48,6 +48,7 @@ networks=( # "lukso-testnet" # "lukso-mainnet" # "metisAndromeda" +# "gnosis" # === ZkSync Era === # "zkSyncTestnet" @@ -61,11 +62,11 @@ scripts=( # "core/deployAllo" # "strategies/deployDonationVotingMerkleDistributionDirect" - # "strategies/deployDirectGrants" # "strategies/deployDirectGrantsLite" # "strategies/deployDirectAllocation" # "core/transferProxyAdminOwnership" + # "strategies/deployDirectGrants" # "strategies/deployDonationVotingMerkleDistributionVault" # "strategies/deployQVSimple" # "strategies/deployRFPCommittee" diff --git a/scripts/deployments/allo.deployment.json b/scripts/deployments/allo.deployment.json index 23e6cad32..2d4ea96a7 100644 --- a/scripts/deployments/allo.deployment.json +++ b/scripts/deployments/allo.deployment.json @@ -51,6 +51,19 @@ "proxyAdmin": "0x758b87af7fdB4783f848a1dDEa1F025dC48B9858", "proxyAdminOwner": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" }, + "100": { + "name": "Allo", + "implementation": "0xB087535DB0df98fC4327136e897A5985E5Cfbd66", + "proxy": "0x1133eA7Af70876e64665ecD07C0A0476d09465a1", + "treasury": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + "percentFee": 0, + "baseFee": 0, + "registry": "0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3", + "owner": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + "proxyAdmin": "0x758b87af7fdB4783f848a1dDEa1F025dC48B9858", + "proxyAdminOwner": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" + }, "137": { "name": "Allo", "implementation": "0xB087535DB0df98fC4327136e897A5985E5Cfbd66", diff --git a/scripts/deployments/contractFactory.deployment.json b/scripts/deployments/contractFactory.deployment.json index 3231cf827..121250472 100644 --- a/scripts/deployments/contractFactory.deployment.json +++ b/scripts/deployments/contractFactory.deployment.json @@ -19,6 +19,11 @@ "address": "0x1133eA7Af70876e64665ecD07C0A0476d09465a1", "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" }, + "100": { + "name": "ContractFactory", + "address": "0xE195743480D1591B79106FF9B296A0cD38aDa807", + "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" + }, "137": { "name": "ContractFactory", "address": "0xE195743480D1591B79106FF9B296A0cD38aDa807", diff --git a/scripts/deployments/directallocationstrategy.deployment.json b/scripts/deployments/directallocationstrategy.deployment.json index 30c43990d..ceba499dd 100644 --- a/scripts/deployments/directallocationstrategy.deployment.json +++ b/scripts/deployments/directallocationstrategy.deployment.json @@ -20,6 +20,13 @@ "address": "0xeB6325d9daCD1E46A20C02F46E41d4CAE45C0980", "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" }, + "100": { + "id": "0x4cd0051913234cdd7d165b208851240d334786d6e5afbb4d0eec203515a9c6f3", + "name": "DirectAllocationStrategy", + "version": "v1.1", + "address": "0x56662F9c0174cD6ae14b214fC52Bd6Eb6B6eA602", + "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" + }, "137": { "id": "0x4cd0051913234cdd7d165b208851240d334786d6e5afbb4d0eec203515a9c6f3", "name": "DirectAllocationStrategy", diff --git a/scripts/deployments/directgrantslitestrategy.deployment.json b/scripts/deployments/directgrantslitestrategy.deployment.json index dca377208..5343829ae 100644 --- a/scripts/deployments/directgrantslitestrategy.deployment.json +++ b/scripts/deployments/directgrantslitestrategy.deployment.json @@ -20,6 +20,13 @@ "address": "0xF21E0915a0b7c541483962Cc7fB4705bBd4D5248", "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" }, + "100": { + "id": "0x103732a8e473467a510d4128ee11065262bdd978f0d9dad89ba68f2c56127e27", + "name": "DirectGrantsLiteStrategy", + "version": "v1.0", + "address": "0x79A5EEc2C87Cd2116195E71af7A38647f89C8Ffa", + "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" + }, "137": { "id": "0x103732a8e473467a510d4128ee11065262bdd978f0d9dad89ba68f2c56127e27", "name": "DirectGrantsLiteStrategy", diff --git a/scripts/deployments/donationvotingmerkledistributiondirecttransferstrategy.deployment.json b/scripts/deployments/donationvotingmerkledistributiondirecttransferstrategy.deployment.json index 5742e04a8..6a6136634 100644 --- a/scripts/deployments/donationvotingmerkledistributiondirecttransferstrategy.deployment.json +++ b/scripts/deployments/donationvotingmerkledistributiondirecttransferstrategy.deployment.json @@ -27,6 +27,13 @@ "address": "0x91b5eeE385D8e0cfd49FD94D4C7aE15e1F17e0A2", "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" }, + "100": { + "id": "0x9fa6890423649187b1f0e8bf4265f0305ce99523c3d11aa36b35a54617bb0ec0", + "name": "DonationVotingMerkleDistributionDirectTransferStrategy", + "version": "v2.1", + "address": "0x787eC93Dd71a90563979417879F5a3298389227f", + "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" + }, "137": { "id": "0x9fa6890423649187b1f0e8bf4265f0305ce99523c3d11aa36b35a54617bb0ec0", "name": "DonationVotingMerkleDistributionDirectTransferStrategy", diff --git a/scripts/deployments/registry.deployment.json b/scripts/deployments/registry.deployment.json index e68dcab48..010b8c26f 100644 --- a/scripts/deployments/registry.deployment.json +++ b/scripts/deployments/registry.deployment.json @@ -35,6 +35,15 @@ "proxyAdmin": "0x758b87af7fdB4783f848a1dDEa1F025dC48B9858", "proxyAdminOwner": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" }, + "100": { + "name": "Registry", + "implementation": "0xA3Fd7042F83960398De6ceddbf513F8cac877cbE", + "proxy": "0x4AAcca72145e1dF2aeC137E1f3C5E3D75DB8b5f3", + "deployerAddress": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + "owner": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C", + "proxyAdmin": "0x758b87af7fdB4783f848a1dDEa1F025dC48B9858", + "proxyAdminOwner": "0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C" + }, "137": { "name": "Registry", "implementation": "0xA3Fd7042F83960398De6ceddbf513F8cac877cbE", diff --git a/scripts/test/createDirectAllocationPool.ts b/scripts/test/createDirectAllocationPool.ts index 55cc8afe2..42407f301 100644 --- a/scripts/test/createDirectAllocationPool.ts +++ b/scripts/test/createDirectAllocationPool.ts @@ -36,7 +36,7 @@ export async function createDirectAllocationPool() { protocol: 0, pointer: "" }, // _metadata - ['0xB8cEF765721A6da910f14Be93e7684e9a3714123'] // _managers + ['0x8C180840fcBb90CE8464B4eCd12ab0f840c6647C'] // _managers ); console.log("pool created on registry at:", instance.target); diff --git a/scripts/test/createProfile.ts b/scripts/test/createProfile.ts index 8cd23f652..2ca66c652 100644 --- a/scripts/test/createProfile.ts +++ b/scripts/test/createProfile.ts @@ -28,7 +28,7 @@ export async function createProfile() { await instance.createProfile( 1, // none - "Shitzu", // name + "Direct Allocation", // name { protocol: 1, pointer: "bafybeia4khbew3r2mkflyn7nzlvfzcb3qpfeftz5ivpzfwn77ollj47gqi"