From d78ba7a3ea7de93442037f2b80752123a32f6927 Mon Sep 17 00:00:00 2001 From: vicnaum Date: Sat, 16 Sep 2023 21:22:39 +0200 Subject: [PATCH 1/5] test: fix passing wrong currency test in collect --- test/modules/act/collect/BaseFeeCollectModule.t.sol | 1 + 1 file changed, 1 insertion(+) diff --git a/test/modules/act/collect/BaseFeeCollectModule.t.sol b/test/modules/act/collect/BaseFeeCollectModule.t.sol index 0de3f54..e2d3585 100644 --- a/test/modules/act/collect/BaseFeeCollectModule.t.sol +++ b/test/modules/act/collect/BaseFeeCollectModule.t.sol @@ -259,6 +259,7 @@ contract BaseFeeCollectModule_ProcessCollect is BaseFeeCollectModuleBase { vm.assume(pubId != 0); vm.assume(transactionExecutor != address(0)); // vm.assume(!moduleGlobals.isCurrencyWhitelisted(passedCurrency)); // TODO: Verify that's right + vm.assume(passedCurrency != exampleInitData.currency); vm.assume(collectorProfileId != 0); vm.assume(collectorProfileOwner != address(0)); vm.assume(amount != 0); From 47b5750c3934902f707c424f3e8954d662210f57 Mon Sep 17 00:00:00 2001 From: vicnaum Date: Sat, 16 Sep 2023 22:02:10 +0200 Subject: [PATCH 2/5] deploy: devnet4 --- addressesV2.txt | 40 ++++++++++++++++++++-------------------- backendEnv.txt | 24 ++++++++++++------------ foundry.toml | 30 ++++++++++++++++-------------- 3 files changed, 48 insertions(+), 46 deletions(-) diff --git a/addressesV2.txt b/addressesV2.txt index 59da577..e50cb8b 100644 --- a/addressesV2.txt +++ b/addressesV2.txt @@ -1,23 +1,23 @@ -ModuleRegistryIpml: 0xA13C1b742939FCE37badF14c1fA8d30763b48dAF -ModuleRegistry: 0xB10e362799ABbeDeD0133Ea06aF5cb8A758C79b6 -FollowNFT: 0x7fcAC9cA70743D82c669b1778A164F502dEc776b -LensHubImpl: 0x89aBcd78B9C7CcC9FC584281fb3D8b468E63c96a -LensHub: 0x7620135962A2Ab6bfE153159Dcdb50F06Bbf97fC -LensHandlesImpl: 0xaaaEC0c47fA661B90b11a751818757cc03297991 -LensHandles: 0x2869C9B72b7d2Ce4CFBd214e0f2Efa11eeCFD634 -TokenHandleRegistryImpl: 0x54b54BAb3388d4307DAa080531c89e9C45274894 -TokenHandleRegistry: 0x96d8680D1c1CC6f35B2D5048b2Ca12272f165A1A -ProfileCreationProxy: 0x44e76976517E7a0181A5Ce49A87b5eb6E9AF013E -CollectNFT: 0x9f8e7052410685a1428C2819963796292D53dE5C -CollectPublicationActionImpl: 0x430216f61c1569f43c2d11b5Bc160b2647ce2769 -CollectPublicationActionProxy: 0xE18F310D8b5221dCCD24c4E54E3AA23ff7cda1b4 -SimpleFeeCollectModule: 0x6FE3Aa2527d1afA67Ef5Df5c08e2A945C49123B8 -MultirecipientFeeCollectModule: 0x31F6e52fF715f39D58f4CEaB3831b6AD7D58924A -FeeFollowModule: 0x69Be59b4bDBb091b8cdAdD466f1bC685b753a02D -RevertFollowModule: 0x2BD4C016c1555fE26Cd9c734bCa4235657fFa338 -DegreesOfSeparationReferenceModule: 0x876d615CF7c62e67fBF0d29DddEE68ab8b3A11A9 -FollowerOnlyReferenceModule: 0x066bAeB41D91dC89a73F32C8fA043C16A83E78B5 -FollowerOnlyReferenceModule: 0x066bAeB41D91dC89a73F32C8fA043C16A83E78B5 +ModuleRegistryIpml: 0x7CfbC5e48bEF6c334E4486107D959Bb566913837 +ModuleRegistry: 0x8834aE494ADD3C56d274Fe88243526DBAB15dEF8 +FollowNFT: 0x535FDf959f86E95eB95d03E112fb7CFA2Bf4fE15 +LensHubImpl: 0xEA0563b6Af1Af7B9b132Be335a518b41cFf35536 +LensHub: 0xC1E77eE73403B8a7478884915aA599932A677870 +LensHandlesImpl: 0x01B282B6e55F8B20c17680aAE87FBDf9f0364F72 +LensHandles: 0xc3a1fabd7f8d290f7b0C45AA88af6e9c9E267843 +TokenHandleRegistryImpl: 0x77706372deCeb81D49422F9115680B4873722AF1 +TokenHandleRegistry: 0x9cD0d07AB772e42ed3497DD379360daBcD94352A +ProfileCreationProxy: 0x2549f9Bbccdc5a65DDCeA45eF91dC9BdE30697c2 +CollectNFT: 0xfD8671cC32ca785Cb4fb81431CF0Acfe7d4dAa3F +CollectPublicationActionImpl: 0x9Bdf84E54476af64e761FfE27F67A13c78E7c90D +CollectPublicationActionProxy: 0x5FE7918C3Ef48E6C5Fd79dD22A3120a3C4967aC2 +SimpleFeeCollectModule: 0x98daD8B389417A5A7D971D7F83406Ac7c646A8e2 +MultirecipientFeeCollectModule: 0xa878101e04518693ABE7fccd03778174A2B08159 +FeeFollowModule: 0x77f8d9af54b1C9d3e2ef117EFFD062025f5a2806 +RevertFollowModule: 0xF756ae2aa35062a684E91Be3D75084bbCD8d4fDF +DegreesOfSeparationReferenceModule: 0x3A79D0b0f4375AfB9D33089B9f92f381d55110FC +FollowerOnlyReferenceModule: 0x4Ad4Deb491E8BC0d68D70CD99178dE871750E005 +FollowerOnlyReferenceModule: 0x4Ad4Deb491E8BC0d68D70CD99178dE871750E005 USDC: 0x2058A9D7613eEE744279e3856Ef0eAda5FCbaA7e DAI: 0x001B3B4d0F3714Ca98ba10F6042DaEbF0B1B7b6F WETH: 0x3C68CE8504087f89c640D02d133646d98e64ddd9 diff --git a/backendEnv.txt b/backendEnv.txt index 46a8a6f..94fc154 100644 --- a/backendEnv.txt +++ b/backendEnv.txt @@ -1,21 +1,21 @@ ## Hub -LENS_HUB_PROXY=0x7620135962A2Ab6bfE153159Dcdb50F06Bbf97fC +LENS_HUB_PROXY=0xC1E77eE73403B8a7478884915aA599932A677870 ## LensHandles -LENS_HANDLE_PROXY=0x2869C9B72b7d2Ce4CFBd214e0f2Efa11eeCFD634 +LENS_HANDLE_PROXY=0xc3a1fabd7f8d290f7b0C45AA88af6e9c9E267843 # TokenHandleRegistry -LENS_TOKEN_HANDLE_REGISTRY_PROXY=0x96d8680D1c1CC6f35B2D5048b2Ca12272f165A1A +LENS_TOKEN_HANDLE_REGISTRY_PROXY=0x9cD0d07AB772e42ed3497DD379360daBcD94352A # Collection open actions -LENS_COLLECT_PUBLICATION_ACTION_PROXY=0xE18F310D8b5221dCCD24c4E54E3AA23ff7cda1b4 +LENS_COLLECT_PUBLICATION_ACTION_PROXY=0x5FE7918C3Ef48E6C5Fd79dD22A3120a3C4967aC2 ## Profile creation proxy -PROFILE_CREATION_PROXY=0x44e76976517E7a0181A5Ce49A87b5eb6E9AF013E +PROFILE_CREATION_PROXY=0x2549f9Bbccdc5a65DDCeA45eF91dC9BdE30697c2 ## ModuleGlobals -GLOBAL_MODULE=0xB10e362799ABbeDeD0133Ea06aF5cb8A758C79b6 +GLOBAL_MODULE=0x8834aE494ADD3C56d274Fe88243526DBAB15dEF8 # v2 modules -MULTIRECIPIENT_FEE_COLLECT_OPEN_ACTION_MODULE=0x31F6e52fF715f39D58f4CEaB3831b6AD7D58924A -SIMPLE_COLLECT_OPEN_ACTION_MODULE=0x6FE3Aa2527d1afA67Ef5Df5c08e2A945C49123B8 +MULTIRECIPIENT_FEE_COLLECT_OPEN_ACTION_MODULE=0xa878101e04518693ABE7fccd03778174A2B08159 +SIMPLE_COLLECT_OPEN_ACTION_MODULE=0x98daD8B389417A5A7D971D7F83406Ac7c646A8e2 ### follow modules -FEE_FOLLOW_MODULE=0x69Be59b4bDBb091b8cdAdD466f1bC685b753a02D -REVERT_FOLLOW_MODULE=0x2BD4C016c1555fE26Cd9c734bCa4235657fFa338 +FEE_FOLLOW_MODULE=0x77f8d9af54b1C9d3e2ef117EFFD062025f5a2806 +REVERT_FOLLOW_MODULE=0xF756ae2aa35062a684E91Be3D75084bbCD8d4fDF ## REFERENCE MODULES -FOLLOWER_ONLY_REFERENCE_MODULE=0x066bAeB41D91dC89a73F32C8fA043C16A83E78B5 -DEGREE_OF_SEPERATION_REFERENCE_MODULE=0x876d615CF7c62e67fBF0d29DddEE68ab8b3A11A9 +FOLLOWER_ONLY_REFERENCE_MODULE=0x4Ad4Deb491E8BC0d68D70CD99178dE871750E005 +DEGREE_OF_SEPERATION_REFERENCE_MODULE=0x3A79D0b0f4375AfB9D33089B9f92f381d55110FC diff --git a/foundry.toml b/foundry.toml index 0e6c5e1..4c11ff1 100644 --- a/foundry.toml +++ b/foundry.toml @@ -5,25 +5,27 @@ libs = ['node_modules', 'lib'] test = 'test' cache_path = 'forge-cache' fs_permissions = [{ access = "read-write", path = "./"}] +solc_version = '0.8.19' optimizer = true optimizer_runs = 10 ignored_error_codes = [] via_ir = true + libraries = [ - "contracts/libraries/ActionLib.sol:ActionLib:0x26a9fa0bbbbcd1596b08dc7e9a6f9b437c1ad735", - "contracts/libraries/FollowLib.sol:FollowLib:0x002415dbc60caea8ced1de154ed64df5734ac339", - "contracts/libraries/GovernanceLib.sol:GovernanceLib:0xda8bf37ef63460d9867e4c5e2990e738c89d4b1b", - "contracts/libraries/LegacyCollectLib.sol:LegacyCollectLib:0xa54dfd4e2cf1398db71c250d201f3071e2ce582b", - "contracts/libraries/MetaTxLib.sol:MetaTxLib:0xeb7f340ff7a090bccf0d24829681f248e863e7eb", - "contracts/libraries/MigrationLib.sol:MigrationLib:0x7ba5304ecce85441a7da6ead150e51322faa607b", - "contracts/libraries/ProfileLib.sol:ProfileLib:0x6486ce46fd092c7ffaa55ea4fc733a997892207f", - "contracts/libraries/PublicationLib.sol:PublicationLib:0x4c7be49a0317ad72ae1c180a1be3710ba6fc0c56", - "contracts/libraries/ValidationLib.sol:ValidationLib:0xa2b9c96ff3337962f8dd9fafe260a95168854ef7", - "contracts/libraries/token-uris/FollowTokenURILib.sol:FollowTokenURILib:0xc83fd6feb6c35e99a77441660f4f1215c1d138bd", - "contracts/libraries/token-uris/HandleTokenURILib.sol:HandleTokenURILib:0xe63da517c5202db5a9f8951090ae6c0ef84c80e5", - "contracts/libraries/token-uris/ProfileTokenURILib.sol:ProfileTokenURILib:0xd546a4dc0efc68e49000a26ec5c7f8c6ba32e2ed", - "contracts/libraries/token-uris/TokenURIMainFontLib.sol:TokenURIMainFontLib:0x7a7ebf5194e36b76e68610a469d6b6c03a1b05f0", - "contracts/libraries/token-uris/TokenURISecondaryFontLib.sol:TokenURISecondaryFontLib:0x4f1a85154af212eb146b459f477c89e873b479fb", + "contracts/libraries/ActionLib.sol:ActionLib:0x8de25afc4b37e0adbb58caf3df06faf419455404", + "contracts/libraries/FollowLib.sol:FollowLib:0xd5fb386bc55966d4cff7a8ef6eb292f537eeb7a4", + "contracts/libraries/GovernanceLib.sol:GovernanceLib:0xc946e6807472f8ceef87cfa0253e78e921f16773", + "contracts/libraries/LegacyCollectLib.sol:LegacyCollectLib:0xa0528a82fccbe1c871336d0fa09cf3acf0d3946a", + "contracts/libraries/MetaTxLib.sol:MetaTxLib:0x6d3671d37252d27f03efb01c1995a73162473571", + "contracts/libraries/MigrationLib.sol:MigrationLib:0x20a0201951b4a67c70b2aa7af5c6e3e322d81388", + "contracts/libraries/ProfileLib.sol:ProfileLib:0xc806cd6d9723b195c8ee758f110df224735d1d53", + "contracts/libraries/PublicationLib.sol:PublicationLib:0x7d723ad98553b7245b686a3a744758faf62a5333", + "contracts/libraries/ValidationLib.sol:ValidationLib:0x9f98f838e3db42830ef488a92c8ed9671268000e", + "contracts/libraries/token-uris/FollowTokenURILib.sol:FollowTokenURILib:0xb9711f2edf7d8f901af4becbf39d0bd802e9eb0c", + "contracts/libraries/token-uris/HandleTokenURILib.sol:HandleTokenURILib:0x7e34ec095a1a8ada535d90bb3cbabd8740fe5a44", + "contracts/libraries/token-uris/ProfileTokenURILib.sol:ProfileTokenURILib:0x8bad75519110c3161b472a0d18151ec00ac7d69a", + "contracts/libraries/token-uris/TokenURIMainFontLib.sol:TokenURIMainFontLib:0x56174f7ff96c82004d3cec42e9a99b5a44e76c77", + "contracts/libraries/token-uris/TokenURISecondaryFontLib.sol:TokenURISecondaryFontLib:0x17a9874d7a40dbd76a609d4c24fef13f4347fecc", ] [rpc_endpoints] From 15ea6d9d087bb1fd65518e8b0c0d862f3d640f08 Mon Sep 17 00:00:00 2001 From: vicnaum Date: Sat, 16 Sep 2023 22:02:31 +0200 Subject: [PATCH 3/5] misc: run script to skip tests --- script/run.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/script/run.sh b/script/run.sh index 32e57f2..4f4e78c 100644 --- a/script/run.sh +++ b/script/run.sh @@ -17,7 +17,7 @@ CALLDATA=$(cast calldata "run(string)" $TARGET) echo "Interactions calldata:" echo "$CALLDATA" -forge script script/$1.s.sol:$1 -s $CALLDATA --rpc-url $NETWORK -vv +forge script script/$1.s.sol:$1 -s $CALLDATA --rpc-url $NETWORK -vv --skip test read -p "Please verify the data and confirm the interactions logs (y/n):" CONFIRMATION @@ -25,7 +25,7 @@ if [[ "$CONFIRMATION" == "y" || "$CONFIRMATION" == "Y" ]] then echo "Broadcasting on-chain..." - FORGE_OUTPUT=$(forge script script/$1.s.sol:$1 -s $CALLDATA --rpc-url $NETWORK --broadcast --legacy) + FORGE_OUTPUT=$(forge script script/$1.s.sol:$1 -s $CALLDATA --rpc-url $NETWORK --broadcast --legacy --skip test) echo "$FORGE_OUTPUT" else echo "Deployment cancelled. Execution terminated." From 4e2da7839fb9b48f1737b253084cd588d355b7f0 Mon Sep 17 00:00:00 2001 From: vicnaum Date: Fri, 22 Sep 2023 17:22:15 +0200 Subject: [PATCH 4/5] fix: Forking block number --- script/helpers/ForkManagement.sol | 4 ++-- test/base/TestSetup.t.sol | 2 ++ test/helpers/ForkManagement.sol | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/script/helpers/ForkManagement.sol b/script/helpers/ForkManagement.sol index 00b1f62..513a6c7 100644 --- a/script/helpers/ForkManagement.sol +++ b/script/helpers/ForkManagement.sol @@ -35,7 +35,7 @@ contract ForkManagement is Script { } function initFork() internal { - targetEnv = isEnvSet('TESTING_FORK') ? vm.envString('TESTING_FORK') : ''; + targetEnv = vm.envOr('TESTING_FORK', string('')); if (bytes(targetEnv).length > 0) { fork = true; @@ -43,7 +43,7 @@ contract ForkManagement is Script { loadJson(); network = getNetwork(); vm.createSelectFork(network); - forkBlockNumber = block.number; + forkBlockNumber = vm.envOr('TESTING_FORK_BLOCK', block.number); console.log('Fork Block number:', forkBlockNumber); checkNetworkParams(); loadBaseAddresses(); diff --git a/test/base/TestSetup.t.sol b/test/base/TestSetup.t.sol index 839e6f2..b65f4d8 100644 --- a/test/base/TestSetup.t.sol +++ b/test/base/TestSetup.t.sol @@ -193,6 +193,8 @@ contract TestSetup is Test, ContractAddressesLoaderDeployer, ArrayHelpers { hub.whitelistProfileCreator(address(this), true); beforeUpgrade(); upgradeToV2(); + } else { + lensVersion = forkVersion; } vm.startPrank(deployer); diff --git a/test/helpers/ForkManagement.sol b/test/helpers/ForkManagement.sol index 0864bb9..8d8ac8d 100644 --- a/test/helpers/ForkManagement.sol +++ b/test/helpers/ForkManagement.sol @@ -42,7 +42,7 @@ contract ForkManagement is Script, KeyExists, ContractAddresses { network = getNetwork(); - forkBlockNumber = vm.envOr({name: string('FORK_BLOCK'), defaultValue: uint256(0)}); + forkBlockNumber = vm.envOr({name: string('TESTING_FORK_BLOCK'), defaultValue: uint256(0)}); if (forkBlockNumber != 0) { vm.createSelectFork(network, forkBlockNumber); console.log('Fork Block number (FIXED BLOCK):', forkBlockNumber); From aac5665c237c1fcba235473fc26d80f1feb3aced Mon Sep 17 00:00:00 2001 From: vicnaum Date: Wed, 27 Sep 2023 14:45:30 +0200 Subject: [PATCH 5/5] deploy: addresses updated for lit access control deployment script --- script/LitAccessControlDeployment.s.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/script/LitAccessControlDeployment.s.sol b/script/LitAccessControlDeployment.s.sol index e2a961a..9f907af 100644 --- a/script/LitAccessControlDeployment.s.sol +++ b/script/LitAccessControlDeployment.s.sol @@ -47,8 +47,8 @@ contract LitAccessControlDeployment is Script, ForkManagement { function deploy() internal { vm.startBroadcast(deployer.ownerPk); - address lensHub = 0x7620135962A2Ab6bfE153159Dcdb50F06Bbf97fC; - address collectPublicationAction = 0xE18F310D8b5221dCCD24c4E54E3AA23ff7cda1b4; + address lensHub = 0xC1E77eE73403B8a7478884915aA599932A677870; // TODO: Replace with reading from Addressbook + address collectPublicationAction = 0x5FE7918C3Ef48E6C5Fd79dD22A3120a3C4967aC2; // TODO: Replace with reading from Addressbook address litAccessControlImpl = address(new LitAccessControl(lensHub, collectPublicationAction));