@gooddollar/goodprotocol 1.0.29-beta.1 → 1.0.29-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/artifacts/abis/AdminWallet.min.json +1 -1
  2. package/artifacts/abis/Faucet.min.json +1 -0
  3. package/artifacts/abis/GoodDollarStaking.min.json +1 -1
  4. package/artifacts/abis/GoodDollarStakingMock.min.json +1 -1
  5. package/artifacts/abis/IGoodDollar.min.json +1 -1
  6. package/artifacts/abis/IGovernanceStaking.min.json +1 -0
  7. package/artifacts/abis/IIdentity.min.json +1 -1
  8. package/artifacts/abis/IIdentityV2.min.json +1 -0
  9. package/artifacts/abis/IdentityV2.min.json +1 -0
  10. package/artifacts/abis/InvitesV2.min.json +1 -0
  11. package/artifacts/abis/UBIScheme.min.json +1 -1
  12. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  13. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  14. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  15. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  16. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  17. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  18. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/IGoodDollar.json +39 -0
  27. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/IIdentity.json +51 -0
  31. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +4 -0
  32. package/artifacts/contracts/Interfaces.sol/IIdentityV2.json +281 -0
  33. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  35. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  36. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  37. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  38. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  39. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  40. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  41. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  42. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  43. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  44. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +4 -0
  45. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +684 -0
  46. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  47. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +2 -2
  48. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  49. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  50. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  51. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
  52. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  53. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
  54. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  55. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.json +15 -2
  56. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +4 -0
  57. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.json +24 -0
  58. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  59. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  60. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
  61. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  62. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  63. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  64. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  65. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  66. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +4 -0
  67. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +1000 -0
  68. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  69. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
  70. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +4 -0
  71. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.json +586 -0
  72. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  73. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  74. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  75. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  76. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.json +2 -2
  77. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  78. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.json +2 -2
  79. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  80. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.json +2 -2
  81. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  82. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  83. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  84. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.json +15 -2
  85. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  86. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
  87. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  89. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  90. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  91. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.json +2 -2
  92. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  93. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  94. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +2 -2
  95. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  96. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  97. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  98. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  99. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  100. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
  101. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  102. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  103. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  104. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  105. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  106. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  107. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
  108. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  109. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
  110. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  111. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  112. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  113. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  114. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  115. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  116. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  117. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  118. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  119. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.json +2 -2
  120. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  121. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
  122. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  123. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
  124. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  125. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  126. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +2 -2
  127. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  128. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
  129. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  130. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
  131. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  132. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  133. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  134. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  135. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  136. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  137. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  138. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
  139. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  140. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  141. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  142. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
  143. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  144. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  145. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  146. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  147. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  148. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  149. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  150. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  151. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  152. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  153. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  154. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  155. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  156. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  157. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  158. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +15 -22
  159. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  160. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +76 -56
  161. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  162. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  163. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
  164. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  165. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
  166. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  167. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
  168. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  169. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  170. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  171. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +2 -2
  172. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  173. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  174. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  175. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +2 -2
  176. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  177. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.json +2 -2
  178. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  179. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  180. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  181. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
  182. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  183. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
  184. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  185. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
  186. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  187. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
  188. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  189. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  190. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  191. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  192. package/contracts/Interfaces.sol +26 -0
  193. package/contracts/fuseFaucet/Faucet.sol +245 -0
  194. package/contracts/governance/GoodDollarStaking.sol +23 -9
  195. package/contracts/identity/IdentityV2.sol +434 -0
  196. package/contracts/invite/InvitesV2.sol +316 -0
  197. package/contracts/ubi/UBIScheme.sol +45 -40
  198. package/contracts/utils/AdminWallet.sol +42 -11
  199. package/hardhat.config.ts +16 -2
  200. package/package.json +3 -2
  201. package/releases/deploy-settings.json +36 -1
  202. package/releases/deployment.json +93 -52
  203. package/scripts/deployFullDAO.ts +39 -19
  204. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +45 -0
  205. package/scripts/multichain-deploy/{basicdao-deploy.ts → 1_basicdao-deploy.ts} +56 -52
  206. package/scripts/multichain-deploy/2_helpers-deploy.ts +143 -0
  207. package/scripts/multichain-deploy/{gdSavings-deploy.ts → 3_gdSavings-deploy.ts} +90 -76
  208. package/scripts/multichain-deploy/4_ubi-deploy.ts +121 -0
  209. package/scripts/multichain-deploy/5_gov-deploy.ts +123 -0
  210. package/scripts/multichain-deploy/helpers.ts +0 -1
  211. package/scripts/multichain-deploy/verifyEtherscan.ts +84 -0
  212. package/scripts/test/localOldDaoDeploy.ts +10 -3
  213. package/scripts/upgrades/identity-upgrade.ts +153 -0
  214. package/scripts/{multichain-deploy → upgrades}/nonubiDistribution-deploy.ts +2 -5
  215. package/test/helpers.ts +12 -8
  216. package/test/ubi/UBIScheme.test.ts +30 -30
  217. package/test/ubi/UBISchemeCycle.test.ts +9 -7
  218. package/test/utils/AdminWallet.test.ts +33 -11
  219. package/types/AdminWallet.ts +124 -113
  220. package/types/Faucet.ts +1014 -0
  221. package/types/GoodDollarStaking.ts +34 -0
  222. package/types/GoodDollarStakingMock.ts +34 -0
  223. package/types/IERC1271.ts +109 -0
  224. package/types/IGoodDollar.ts +54 -0
  225. package/types/IGovernanceStaking.ts +98 -0
  226. package/types/IIdentity.ts +75 -0
  227. package/types/IIdentityV2.ts +526 -0
  228. package/types/IdentityV2.ts +1612 -0
  229. package/types/InvitesV2.ts +933 -0
  230. package/types/UBIScheme.ts +19 -40
  231. package/types/factories/AaveStakingFactory__factory.ts +1 -1
  232. package/types/factories/AdminWallet__factory.ts +75 -55
  233. package/types/factories/BaseShareFieldV2__factory.ts +1 -1
  234. package/types/factories/BaseShareField__factory.ts +1 -1
  235. package/types/factories/ClaimersDistribution__factory.ts +1 -1
  236. package/types/factories/CompoundStakingFactory__factory.ts +1 -1
  237. package/types/factories/CompoundVotingMachine__factory.ts +1 -1
  238. package/types/factories/DAOContract__factory.ts +1 -1
  239. package/types/factories/DAOUpgradeableContract__factory.ts +1 -1
  240. package/types/factories/DistributionBridgeMock__factory.ts +1 -1
  241. package/types/factories/DistributionHelperTestHelper__factory.ts +1 -1
  242. package/types/factories/DistributionHelperTest__factory.ts +1 -1
  243. package/types/factories/DistributionHelper__factory.ts +1 -1
  244. package/types/factories/DonationsStaking__factory.ts +1 -1
  245. package/types/factories/ExchangeHelper__factory.ts +1 -1
  246. package/types/factories/Faucet__factory.ts +729 -0
  247. package/types/factories/FuseFaucet__factory.ts +1 -1
  248. package/types/factories/FuseStakingV3__factory.ts +1 -1
  249. package/types/factories/GReputation__factory.ts +1 -1
  250. package/types/factories/GoodAaveStakingV2__factory.ts +1 -1
  251. package/types/factories/GoodAaveStaking__factory.ts +1 -1
  252. package/types/factories/GoodCompoundStakingTest__factory.ts +1 -1
  253. package/types/factories/GoodCompoundStakingV2__factory.ts +1 -1
  254. package/types/factories/GoodCompoundStaking__factory.ts +1 -1
  255. package/types/factories/GoodDollarMintBurnWrapper__factory.ts +1 -1
  256. package/types/factories/GoodDollarStakingMock__factory.ts +14 -1
  257. package/types/factories/GoodDollarStaking__factory.ts +14 -1
  258. package/types/factories/GoodFundManagerTest__factory.ts +1 -1
  259. package/types/factories/GoodFundManager__factory.ts +1 -1
  260. package/types/factories/GoodMarketMaker__factory.ts +1 -1
  261. package/types/factories/GoodReserveCDai__factory.ts +1 -1
  262. package/types/factories/GovernanceStaking__factory.ts +1 -1
  263. package/types/factories/IERC1271__factory.ts +47 -0
  264. package/types/factories/IGoodDollar__factory.ts +39 -0
  265. package/types/factories/IGovernanceStaking__factory.ts +39 -0
  266. package/types/factories/IIdentityV2__factory.ts +293 -0
  267. package/types/factories/IIdentity__factory.ts +51 -0
  268. package/types/factories/IdentityV2__factory.ts +1048 -0
  269. package/types/factories/InvitesV1__factory.ts +1 -1
  270. package/types/factories/InvitesV2__factory.ts +634 -0
  271. package/types/factories/MultichainBridgeHelper__factory.ts +1 -1
  272. package/types/factories/MultichainRouterMock__factory.ts +1 -1
  273. package/types/factories/OverMintTesterRegularStake__factory.ts +1 -1
  274. package/types/factories/OverMintTester__factory.ts +1 -1
  275. package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +1 -1
  276. package/types/factories/ProtocolUpgradeFuse__factory.ts +1 -1
  277. package/types/factories/ProtocolUpgradeRecover__factory.ts +1 -1
  278. package/types/factories/ProtocolUpgrade__factory.ts +1 -1
  279. package/types/factories/ReputationTestHelper__factory.ts +1 -1
  280. package/types/factories/Reputation__factory.ts +1 -1
  281. package/types/factories/StakersDistribution__factory.ts +1 -1
  282. package/types/factories/SwapHelperTest__factory.ts +1 -1
  283. package/types/factories/UBIScheme__factory.ts +14 -21
  284. package/types/factories/UniswapV2SwapHelper__factory.ts +1 -1
  285. package/types/factories/UpgradableMock2__factory.ts +1 -1
  286. package/types/factories/UpgradableMock3__factory.ts +1 -1
  287. package/types/factories/UpgradableMock4__factory.ts +1 -1
  288. package/types/factories/UpgradableMock__factory.ts +1 -1
  289. package/types/hardhat.d.ts +54 -0
  290. package/types/index.ts +12 -0
  291. package/yarn.lock +4 -4
@@ -1,8 +1,13 @@
1
1
  {
2
2
  "default": {
3
3
  "governance": {
4
+ "gdaoAirdrop": "0x2feece0e9bc03b54e63e6eb7abb81a128f6bc7ce9a3bafd5ca2bea0c40e3634b",
5
+ "gdaoTotalSupply": "24000000000000000000000000",
4
6
  "proposalVotingPeriod": 241920
5
7
  },
8
+ "guardiansSafe": null,
9
+ "walletAdminsCount": 10,
10
+ "gasPrice": 100000000,
6
11
  "compound": {},
7
12
  "aave": {},
8
13
  "expansionRatio": {
@@ -20,6 +25,14 @@
20
25
  "GoodAaveStaking": {
21
26
  "stkAaveClaimCost": 50000,
22
27
  "CollectInterestGasCost": 250000
28
+ },
29
+ "savings": {
30
+ "blockAPY": "1000000007735630000",
31
+ "daysUntilUpgrade": "7",
32
+ "blocksPerYear": "6307200"
33
+ },
34
+ "ubi": {
35
+ "maxInactiveDays": 14
23
36
  }
24
37
  },
25
38
  "develop": {
@@ -47,7 +60,9 @@
47
60
  "gdaoAirdrop": "0x2feece0e9bc03b54e63e6eb7abb81a128f6bc7ce9a3bafd5ca2bea0c40e3634b",
48
61
  "gdaoTotalSupply": "24000000000000000000000000",
49
62
  "proposalVotingPeriod": 241920
50
- }
63
+ },
64
+ "walletAdminsCount": 10,
65
+ "gasPrice": 1000000000
51
66
  },
52
67
  "dapptest-mainnet": {
53
68
  "gdxAirdrop": "0x707f775d730a9b17ee62c21e00188da4dff26602a58c338269cd115f30acbe2f",
@@ -84,6 +99,9 @@
84
99
  "gdaoAirdrop": "0x2feece0e9bc03b54e63e6eb7abb81a128f6bc7ce9a3bafd5ca2bea0c40e3634b",
85
100
  "gdaoTotalSupply": "24000000000000000000000000",
86
101
  "proposalVotingPeriod": 241920
102
+ },
103
+ "savings": {
104
+ "daysUntilUpgrade": "7"
87
105
  }
88
106
  },
89
107
  "fuse-mainnet": {
@@ -193,6 +211,9 @@
193
211
  "gdaoTotalSupply": "96000000000000000000000000",
194
212
  "proposalVotingPeriod": 241920,
195
213
  "guardian": "0x914dA3B2508634998d244059dAb5488D9bA1814f"
214
+ },
215
+ "savings": {
216
+ "daysUntilUpgrade": 30
196
217
  }
197
218
  },
198
219
  "production-mainnet": {
@@ -224,5 +245,19 @@
224
245
  "eth_usd": "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419"
225
246
  },
226
247
  "uniswapRouter": "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D"
248
+ },
249
+ "staging-celo": {
250
+ "guardiansSafe": "0xdF3e980a175904a26A7BA627048a789Ae6A141cD",
251
+ "gasPrice": 150000000
252
+ },
253
+ "production-celo": {
254
+ "governance": {
255
+ "gdaoAirdrop": "0x2feece0e9bc03b54e63e6eb7abb81a128f6bc7ce9a3bafd5ca2bea0c40e3634b",
256
+ "gdaoTotalSupply": "96000000000000000000000000",
257
+ "proposalVotingPeriod": 241920,
258
+ "guardian": "0x914dA3B2508634998d244059dAb5488D9bA1814f"
259
+ },
260
+ "gasPrice": 150000000,
261
+ "guardiansSafe": "0xC9D09BA972B4EB6Bb7347F2229FB6d50434fFCa6"
227
262
  }
228
263
  }
@@ -198,74 +198,77 @@
198
198
  "FeeFormula": "0x416B5A5e12235De6838D62Fd053e7Ce59E944426"
199
199
  },
200
200
  "dapptest": {
201
- "NameService": "0x9059f66843F564f7870f7135fB039EB2034a23a3",
202
- "GReputation": "0x90dE2F86DBdB2110a798326e880c83bc8779d149",
203
- "CompoundVotingMachine": "0x2EF9f88EEB737655FF01F9b5017f1e3399726AF1",
204
- "ClaimersDistribution": "0x035A59F228e776Cc396a8F5E1cEF989E235B0035",
205
- "GovernanceStaking": "0xC65cCB966873969179B6b0bA53D67D14Bbf1204C",
206
- "UBIScheme": "0xBb02F06762FBc51aD222915e6855f7482a93F9Cd",
207
- "ProtocolUpgradeFuse": "0xBb976201B607f16dc76586dB8Ca5EF6C50C41c22",
208
- "HomeBridge": "0x180FAF09AdD6a27554b11a131DCe6f6A3ddF4cBf",
209
- "AdminWallet": "0xB8357F7f41125d4b24AD052c1b7288BeF5C43446",
210
- "Identity": "0x63766F0efAa46a86E9055bB46e41ff7bc64CBEA2",
211
- "GoodDollar": "0x94a9D2532DA2d9153336159907604A01c3E91C11",
212
- "Controller": "0x0B57Fd12F7A95c322aD176D23765507ce09892Cb",
213
- "Avatar": "0xf6Ee31185AC05C2b558fF2a561C600AF3E9486dd",
214
- "FirstClaimPool": "0xC20654dB7F9483f10c91dc94924dC8F04F79bfd5",
215
- "BancorFormula": "0x6852Adb5Fce1D73c08A9b3Aa7edE9A03437ac2fE",
201
+ "NameService": "0xb239f127ec7e3972e7D119A28C7133EA2Da1E48B",
202
+ "GReputation": "0xB002b01194a459a8177eff2E962455F92ac389cc",
203
+ "CompoundVotingMachine": "0xa5cA8E6C1071A32fe951aA5b1c9580624dA91e9d",
204
+ "ClaimersDistribution": "0xFb1a81A9907deE3719C6caB552dAD568097eF990",
205
+ "GovernanceStaking": "0x8ac87219a0F5639BC01b470F87BA2b26356CB2B9",
206
+ "UBIScheme": "0x209C0bD29eBbc2b29cc7D14749B1C0405FBe752c",
207
+ "ProtocolUpgradeFuse": "0xdF46e54aAadC1d55198A4a8b4674D7a4c927097A",
208
+ "HomeBridge": "0xb932C8342106776E73E39D695F3FFC3A9624eCE0",
209
+ "AdminWallet": "0xd9fEc8238711935D6c8d79Bef2B9546ef23FC046",
210
+ "Identity": "0xb185E9f6531BA9877741022C92CE858cDCc5760E",
211
+ "GoodDollar": "0xd04Fe2BB71024dAae0FB7Eb72983ffE2287EE6c6",
212
+ "Controller": "0x2fd807D24be2c4F06Edf4351AF78c4b6984A15c1",
213
+ "Avatar": "0x2E571dc3F27343Bcd3c7d69aA213543EE3551812",
214
+ "FirstClaimPool": "0x3C1Cb427D20F15563aDa8C249E71db76d7183B6c",
215
+ "BancorFormula": "0x0fe4223AD99dF788A6Dcad148eB4086E6389cEB6",
216
216
  "DAI": "0x0000000000000000000000000000000000000000",
217
217
  "cDAI": "0x0000000000000000000000000000000000000000",
218
218
  "COMP": "0x0000000000000000000000000000000000000000",
219
219
  "networkId": 4447,
220
220
  "network": "dapptest",
221
- "FeeFormula": "0x24ef01de6baE76eE73Da210940A296F739d87952",
222
- "OneTimePayments": "0xB10982193B39Eda3428d6AaeBbd7986f2A2Baa1a",
223
- "Invites": "0x74156A1F9736307b7AD34e3691f3A5B54A0B3Eb8",
224
- "FuseFaucet": "0x0Db32f0b116773fDD78C2e1b5E6609CC502e6784",
225
- "ProxyFactory": "0xCD8a1C3ba11CF5ECfa6267617243239504a98d90"
221
+ "FeeFormula": "0x193521C8934bCF3473453AF4321911E7A89E0E12",
222
+ "OneTimePayments": "0x22a9B82A6c3D2BFB68F324B2e8367f346Dd6f32a",
223
+ "Invites": "0x547382C0D1b23f707918D3c83A77317B71Aa8470",
224
+ "FuseFaucet": "0x7C8BaafA542c57fF9B2B90612bf8aB9E86e22C09",
225
+ "ProxyFactory": "0xaC47e91215fb80462139756f43438402998E4A3a",
226
+ "Faucet": "0x7bEf5612eC11446539C55ffD43B625b3472Cb7df",
227
+ "GoodDollarMintBurnWrapper": "0x214a2cCD52eC9c1A0e0E4719C3c5115aa297A9c5",
228
+ "GoodDollarStaking": "0x29be9D4e2aEe72C6Edbd6231f276A544296cc4F9"
226
229
  },
227
230
  "dapptest-mainnet": {
228
- "NameService": "0xe528aaCA8E7cD3ce503bB4a2dEadFD4088229E1F",
229
- "GReputation": "0x77423AE3ce64482ef3BB601a2EA42cf30349735A",
230
- "CompoundVotingMachine": "0x6804DB9596c651A1CA24bBB821712A8899932d76",
231
- "GoodMarketMaker": "0xa36ADAE77B1f6f87eD60aafEF9c080c38Ca30D0F",
232
- "GoodReserveCDai": "0x411CEb987F801CdEa5a301a0CCfa4a5Df37f3f7F",
233
- "ExchangeHelper": "0x1333788523bEA7C7cBdd0684Bd1ee75E940fF0Eb",
234
- "GoodFundManager": "0x50589243cb1d8eEF751f4BAb253Aabef6e434c0d",
235
- "StakersDistribution": "0x214c3C71191AB9bD868a5f408A61c540c787662F",
236
- "ProtocolUpgrade": "0x1Fb0D426927Dab092Def63b73E1397b3F29E7b33",
237
- "CompoundStakingFactory": "0xe4FEed16F54b4244C174b408Ba3B5F1f19DD1E4D",
238
- "AaveStakingFactory": "0xe7213b68DC25bf30bC7f1DE9BAead075c66979F9",
239
- "ForeignBridge": "0x570ADc5880D778aE5935f199aa590091586CDf75",
240
- "Contribution": "0x24F2D7c50357C7B1156Ca85945D3A901c88651cB",
231
+ "NameService": "0xA2c7592B4247006E41E8a0886Db287f6BA3DC049",
232
+ "GReputation": "0xEce03a3bCE02D078fE865f3325fd494a6824825F",
233
+ "CompoundVotingMachine": "0xb22B8BF2513009a3DE34c660e1E47ad088BE80e3",
234
+ "GoodMarketMaker": "0x57397a279Ac60DE40064B1ff19bc81bBB8F9f3bD",
235
+ "GoodReserveCDai": "0x142D861B73c5C844DAC197b8d39Aeb2e4A3E71b3",
236
+ "ExchangeHelper": "0x0a0007808320f9370320600aeEe6C86215dd4F34",
237
+ "GoodFundManager": "0xe72EF6746EB1aD74b75fe7c416569043322AaC5d",
238
+ "StakersDistribution": "0xf9AF73432e5c668Cf19fc344eD6F6C43BCf96282",
239
+ "ProtocolUpgrade": "0x4951A1C579039EbfCBA0BE33D2cd3A6D30b0f802",
240
+ "CompoundStakingFactory": "0xb007167714e2940013EC3bb551584130B7497E22",
241
+ "AaveStakingFactory": "0x6b39b761b1b64C8C095BF0e3Bb0c6a74705b4788",
242
+ "ForeignBridge": "0xa4E00CB342B36eC9fDc4B50b3d527c3643D4C49e",
243
+ "Contribution": "0x2A590C461Db46bca129E8dBe5C3998A8fF402e76",
241
244
  "StakingContracts": [
242
245
  [
243
- "0xc782Ee4B0d6204Ff77471884bB95d2D2f8D60fE6",
246
+ "0x0ACd281Ae4afcfD9Be74F196b3B9577DAcC2ba62",
244
247
  13888
245
248
  ]
246
249
  ],
247
- "DonationsStaking": "0x4bfd12E943f25621d4FA368Ca7a5c0E7F6488000",
248
- "Identity": "0xb2377aAE57F2072F52FBc38696BE573af2ce5bd9",
249
- "GoodDollar": "0x5Bbaf48c102373B55079F941c40822C96E715d62",
250
- "Controller": "0x67d49FAF26CA6A34D483B6BDFA45824EdA64D509",
251
- "Avatar": "0xE9ED26a450aC15ea88b5801E5940B58F2f778b03",
250
+ "DonationsStaking": "0x2F5557fE53429e50511f836AE65A9E89AEF57e93",
251
+ "Identity": "0xA9e6Bfa2BF53dE88FEb19761D9b2eE2e821bF1Bf",
252
+ "GoodDollar": "0x74C33AFBa5a1fA6473dadA1b1976b105a4ab391A",
253
+ "Controller": "0xe5B6b170AB9a28C516b375465D11D77683A26550",
254
+ "Avatar": "0xa5875EdD032eFbe7773084ae23C588daC243bc01",
252
255
  "FirstClaimPool": "0xe3963EF7CC3044B64842d0AAe7F2Bf1543D341Ec",
253
- "BancorFormula": "0x30474Ce2DE03045B8D0AE76F8a30DbfC8f000cea",
254
- "DAI": "0xadf7b0f46EB35C748438F3e215F064E01cc7f5dF",
255
- "cDAI": "0x0037272a7048132b10Dd8970AC964Bab2fDB3F62",
256
- "COMP": "0xE8E9B139c6477D4EaD599bE5f2bB9335533D14f7",
256
+ "BancorFormula": "0x742489F22807ebB4C36ca6cD95c3e1C044B7B6c8",
257
+ "DAI": "0x33E45b187da34826aBCEDA1039231Be46f1b05Af",
258
+ "cDAI": "0xA21DDc1f17dF41589BC6A5209292AED2dF61Cc94",
259
+ "COMP": "0x0c626FC4A447b01554518550e30600136864640B",
257
260
  "networkId": 4447,
258
261
  "network": "dapptest-mainnet",
259
- "FeeFormula": "0x8B87065fdfe4A130108E50f74ae7F85cD20A5967",
262
+ "FeeFormula": "0x3fdc08D815cc4ED3B7F69Ee246716f2C8bCD6b07",
260
263
  "ProxyFactory": "0xF47e3B0A1952A81F1afc41172762CB7CE8700133",
261
- "UniswapV2SwapHelper": "0xB4059a6808Af368A69d12FBbD104Bb6B9c37e629",
262
- "ETHUsdOracle": "0x79613D7834Ad35EE8dC3F9298030eaADc2A8c250",
263
- "DAIEthOracle": "0x6397866132887b206EEA19f910730443E71a8CfB",
264
- "DAIUsdOracle": "0xC2E1FC63cE06C279c5De18D7119C7cA123B42C1c",
265
- "COMPUsdOracle": "0x9301981F27950e6546033EADD046C86754263f2D",
266
- "USDCUsdOracle": "0x89Be7D874a17cD0295B2d86436a920593b5f4480",
267
- "AAVEUsdOracle": "0xDFF3455E08AB33B1599D1c5B5A1D65de63d3FCd0",
268
- "GasPriceOracle": "0xFAE6fA2097792Edfd7429A282F21ec2D955279D9"
264
+ "UniswapV2SwapHelper": "0x2e8880cAdC08E9B438c6052F5ce3869FBd6cE513",
265
+ "ETHUsdOracle": "0x2F54D1563963fC04770E85AF819c89Dc807f6a06",
266
+ "DAIEthOracle": "0x158d291D8b47F056751cfF47d1eEcd19FDF9B6f8",
267
+ "DAIUsdOracle": "0x70E5370b8981Abc6e14C91F4AcE823954EFC8eA3",
268
+ "COMPUsdOracle": "0x9338CA7d556248055f5751d85cDA7aD6eF254433",
269
+ "USDCUsdOracle": "0x4000F8820522AC96C4221b299876e3e53bCc8525",
270
+ "AAVEUsdOracle": "0x9c65f85425c619A6cB6D29fF8d57ef696323d188",
271
+ "GasPriceOracle": "0x7Cf4be31f546c04787886358b9486ca3d62B9acf"
269
272
  },
270
273
  "staging-mainnet": {
271
274
  "NameService": "0xC87FAb8A8CDD346079ca6177e47408Ba18066104",
@@ -552,6 +555,7 @@
552
555
  "production-celo": {
553
556
  "ProxyFactory": "0x99C22e78A579e2176311c736C4c9F0b0D5A47806",
554
557
  "GoodDollar": "0xf2283840cE37DAe0a06B40a9A80603977f36fA3F",
558
+ "FeeFormula": "0xb25de92ce16127ebf6659a7a30a9f395c7bbf182",
555
559
  "Avatar": "0xCD5e8a81B1e02c1837A674f87dF327C14f4e5748",
556
560
  "Controller": "0x3D0bacBdC06A28971855275D511e6249bE67112d",
557
561
  "Identity": "0x96B81f82A29e78C5ba9E2034Ce8490fd641a24eb",
@@ -562,5 +566,42 @@
562
566
  "networkId": 42220,
563
567
  "GoodDollarMintBurnWrapper": "0x5566b6E4962BA83e05a426Ad89031ec18e9CadD3",
564
568
  "MultichainRouter": "0xf27Ee99622C3C9b264583dACB2cCE056e194494f"
569
+ },
570
+ "development-celo": {
571
+ "ProxyFactory": "0xA441cd89b0964B51d23201d65E037DA7aF8F74E9",
572
+ "GoodDollar": "0xAB89A70d1Af04ED8badf915Ba1f5b28E9F322624",
573
+ "Avatar": "0xE0e3BFb1A1850bdFe36ED1563CC2abB6A8B6De78",
574
+ "Controller": "0x6717A1948328C8eCCb5C933Fae90e0631C2486fE",
575
+ "Identity": "0xec97ee6d70C626044224998192B96fEF05949De1",
576
+ "NameService": "0x266E5a0931E52229CC241376bC701Ab6199Aec4D",
577
+ "GReputation": "0x6614823763EAd52aCc4952b9634624439B738683",
578
+ "AdminWallet": "0xb7b543bfd9e2E0AD1d0aA68f56c883Dd377E3D24",
579
+ "Faucet": "0x256AFcfEcB5C7f62CE46b54492Bb8ac38163672f",
580
+ "Invites": "0xdC8F0da3f29A3C419a8EEf36665ba2a3EF737B8f",
581
+ "GoodDollarMintBurnWrapper": "0x3fa553a5a044D5c4f5C70878148568410305f953",
582
+ "GoodDollarStaking": "0xCfa54Ad5a00b0AAd3873B4E269Feb331e6293682",
583
+ "UBIScheme": "0x2d42e6220af2485d1e6E5B4d3661A74671AA9a79",
584
+ "ClaimersDistribution": "0x80018e6Dd79f6B892Fca6b592746136a3aa5ef6d",
585
+ "CompoundVotingMachine": "0x00e44d746F3931cAB775099F4C6451f893BB9378"
586
+ },
587
+ "staging-celo": {
588
+ "ProxyFactory": "0x7e8292481EA8EbEb49e486B7e99c00C50fBa2689",
589
+ "GoodDollar": "0x33265D74abd5ae87cA02A4Fb0C30B7405C8b0682",
590
+ "Avatar": "0x2FD18f9de3F581Ca492A485D2b32E361EeAE2e63",
591
+ "Controller": "0xa229BdD05436362484b10586dAa79a316e3080C5",
592
+ "Identity": "0xc82d50c667F389906aCA4B72D577fA56Bf7F8910",
593
+ "NameService": "0x8d0b621796445454180e7DD25f96B1782848338B",
594
+ "GReputation": "0x759a03326df90b740f6b8b6D31e12a3F95D64C28",
595
+ "FeeFormula": "0xcf08461E5bAd9C508D482329Eae0f1b4c4D4c489",
596
+ "DAOCreator": "0xA614d2641c21FEa4c73A2D6e71C6ad341349808B",
597
+ "AddFounders": "0x558fA360988601601ac410678963Bf785156076D",
598
+ "AdminWallet": "0x822590F8baf606b1e18dC1FA8Ca39D5C66C20981",
599
+ "Faucet": "0x9803B5811260Bfd1F5b0b0c9eC9aD4bF96D7ea94",
600
+ "Invites": "0x4E094c2e35e57c90667AbD6D8FE25CE63F4ae00B",
601
+ "GoodDollarMintBurnWrapper": "0x156Fd9563973EFB94a297B76CFac32CdC92a8d1A",
602
+ "GoodDollarStaking": "0xDcB36664440937E4f11002C2471a456AEeD9b7DC",
603
+ "UBIScheme": "0x04f2Cf8865e2ddfEf0047FdfA7A1b05ade614288",
604
+ "ClaimersDistribution": "0x83186CE77ef296BA6561096447938AE05D1F026e",
605
+ "CompoundVotingMachine": "0xEdde78b850a08B6b8AB3E84f61cD6dC70Cc7f156"
565
606
  }
566
607
  }
@@ -6,13 +6,11 @@ import { network, ethers, upgrades } from "hardhat";
6
6
  import { Contract } from "ethers";
7
7
  import { range } from "lodash";
8
8
  import DAOCreatorABI from "@gooddollar/goodcontracts/build/contracts/DaoCreatorGoodDollar.json";
9
- import IdentityABI from "@gooddollar/goodcontracts/build/contracts/Identity.json";
10
9
  import FeeFormulaABI from "@gooddollar/goodcontracts/build/contracts/FeeFormula.json";
11
10
  import AddFoundersABI from "@gooddollar/goodcontracts/build/contracts/AddFoundersGoodDollar.json";
12
11
  import ContributionCalculation from "@gooddollar/goodcontracts/stakingModel/build/contracts/ContributionCalculation.json";
13
12
  import FirstClaimPool from "@gooddollar/goodcontracts/stakingModel/build/contracts/FirstClaimPool.json";
14
13
  import BridgeMock from "@gooddollar/goodcontracts/stakingModel/build/contracts/BridgeMock.json";
15
- import AdminWalletABI from "@gooddollar/goodcontracts/build/contracts/AdminWallet.json";
16
14
  import OTPABI from "@gooddollar/goodcontracts/build/contracts/OneTimePayments.json";
17
15
  import HomeBridgeABI from "@gooddollar/goodcontracts/build/contracts/DeployHomeBridge.json";
18
16
  import ForeignBridgeABI from "@gooddollar/goodcontracts/build/contracts/DeployForeignBridge.json";
@@ -65,11 +63,14 @@ export const createDAO = async () => {
65
63
  root
66
64
  );
67
65
 
68
- const IdentityFactory = new ethers.ContractFactory(
69
- IdentityABI.abi,
70
- IdentityABI.bytecode,
71
- root
72
- );
66
+ // const IdentityFactory = new ethers.ContractFactory(
67
+ // IdentityABI.abi,
68
+ // IdentityABI.bytecode,
69
+ // root
70
+ // );
71
+
72
+ const IdentityFactory = await ethers.getContractFactory("IdentityV2");
73
+
73
74
  const FeeFormulaFactory = new ethers.ContractFactory(
74
75
  FeeFormulaABI.abi,
75
76
  FeeFormulaABI.bytecode,
@@ -95,9 +96,15 @@ export const createDAO = async () => {
95
96
  // "0x6F1BAbfF5E119d61F0c6d8653d84E8B284B87091"
96
97
  // );
97
98
 
98
- const Identity = (await IdentityFactory.deploy().then(
99
- printDeploy
100
- )) as Contract;
99
+ // const Identity = (await IdentityFactory.deploy().then(
100
+ // printDeploy
101
+ // )) as Contract;
102
+
103
+ const Identity = await upgrades.deployProxy(
104
+ IdentityFactory,
105
+ [root.address, ethers.constants.AddressZero],
106
+ { kind: "uups" }
107
+ );
101
108
  // const Identity = await ethers.getContractAt(
102
109
  // IdentityABI.abi,
103
110
  // release.Identity
@@ -111,8 +118,8 @@ export const createDAO = async () => {
111
118
  printDeploy
112
119
  )) as Contract;
113
120
 
114
- await Identity.setAuthenticationPeriod(365).then(printDeploy);
115
- console.log("setAuthPeriod");
121
+ // await Identity.setAuthenticationPeriod(365).then(printDeploy);
122
+ // console.log("setAuthPeriod");
116
123
  await daoCreator
117
124
  .forgeOrg(
118
125
  "GoodDollar",
@@ -144,7 +151,7 @@ export const createDAO = async () => {
144
151
  // root
145
152
  // );
146
153
 
147
- await Identity.setAvatar(Avatar.address).then(printDeploy);
154
+ // await Identity.setAvatar(Avatar.address).then(printDeploy);
148
155
 
149
156
  console.log("Done deploying DAO, setting schemes permissions");
150
157
 
@@ -201,9 +208,7 @@ export const createDAO = async () => {
201
208
  gd
202
209
  );
203
210
  schemes.push(sidechain.OneTimePayments.address);
204
- const adminWallet = await deployAdminWallet(Identity.address);
205
211
  Object.entries(sidechain).forEach(([k, v]) => (release[k] = v.address));
206
- release["AdminWallet"] = adminWallet.address;
207
212
  }
208
213
 
209
214
  await releaser(release, network.name);
@@ -242,7 +247,17 @@ export const createDAO = async () => {
242
247
  UpgradeScheme: ethers.constants.AddressZero
243
248
  };
244
249
 
250
+ console.log("deploying v2...");
245
251
  const v2 = await deployV2(network.name, false, olddao);
252
+ console.log("deploying adminWallet...");
253
+ const adminWallet = await deployAdminWallet(Identity.address, v2.NameService);
254
+ console.log("setting up identity:", {
255
+ ns: v2.NameService,
256
+ identity: Identity.address
257
+ });
258
+ await Identity.initDAO(v2.NameService);
259
+ release["AdminWallet"] = adminWallet.address;
260
+
246
261
  release = { ...v2, ...release };
247
262
  await releaser(release, network.name);
248
263
  // await pressAnyKey();
@@ -329,6 +344,7 @@ const deployBridge = async (Avatar, gd, setSchemes, isMainnet) => {
329
344
  };
330
345
 
331
346
  const deployMainnet = async (Avatar, Identity) => {
347
+ console.log("deploying mainnet...");
332
348
  const [root] = await ethers.getSigners();
333
349
 
334
350
  const cdaiFactory = await ethers.getContractFactory("cDAIMock");
@@ -415,6 +431,7 @@ export const deploySidechain = async (
415
431
  identity,
416
432
  gd
417
433
  ) => {
434
+ console.log("deploying sidechain...");
418
435
  const root = (await ethers.getSigners())[0];
419
436
  const fcFactory = new ethers.ContractFactory(
420
437
  FirstClaimPool.abi,
@@ -502,7 +519,7 @@ export const deploySidechain = async (
502
519
  };
503
520
  };
504
521
 
505
- const deployAdminWallet = async identity => {
522
+ const deployAdminWallet = async (identity, ns) => {
506
523
  const root = (await ethers.getSigners())[0];
507
524
  const hdNode = ethers.utils.HDNode.fromMnemonic(process.env.ADMIN_MNEMONIC);
508
525
  const admins = range(0, 50).map(i =>
@@ -512,8 +529,9 @@ const deployAdminWallet = async identity => {
512
529
  const adminWallet = (await upgrades
513
530
  .deployProxy(await ethers.getContractFactory("AdminWallet"), [
514
531
  admins.slice(0, 20).map(_ => _.address),
532
+ ns,
515
533
  root.address,
516
- identity
534
+ 1e9
517
535
  ])
518
536
  .then(printDeploy)) as Contract;
519
537
 
@@ -530,8 +548,10 @@ const deployAdminWallet = async identity => {
530
548
  // )
531
549
  // .then(printDeploy)) as Contract;
532
550
 
533
- const id = await ethers.getContractAt("IIdentity", identity);
534
- await id.addIdentityAdmin(adminWallet.address).then(printDeploy);
551
+ const id = await ethers.getContractAt("IdentityV2", identity);
552
+ await id
553
+ .grantRole(await id.IDENTITY_ADMIN_ROLE(), adminWallet.address)
554
+ .then(printDeploy);
535
555
  await root
536
556
  .sendTransaction({
537
557
  to: adminWallet.address,
@@ -0,0 +1,45 @@
1
+ import { network, ethers, upgrades, run } from "hardhat";
2
+ import { Contract } from "ethers";
3
+
4
+ import { deployDeterministic, printDeploy } from "./helpers";
5
+ import releaser from "../../scripts/releaser";
6
+ import dao from "../../releases/deployment.json";
7
+
8
+ const { name } = network;
9
+
10
+ export const deployProxy = async (defaultAdmin = null) => {
11
+ let release: { [key: string]: any } = dao[network.name] || {};
12
+
13
+ if (network.name.match(/production|staging|fuse/) && release.ProxyFactory) {
14
+ throw new Error("ProxyFactory already exists for env");
15
+ }
16
+ let [root] = await ethers.getSigners();
17
+ //generic call permissions
18
+ let schemeMock = root;
19
+
20
+ console.log("got signers:", {
21
+ network,
22
+ root: root.address,
23
+ schemeMock: schemeMock.address,
24
+ balance: await ethers.provider
25
+ .getBalance(root.address)
26
+ .then(_ => _.toString())
27
+ });
28
+
29
+ const proxyFactory = await (
30
+ await ethers.getContractFactory("ProxyFactory1967")
31
+ ).deploy();
32
+
33
+ release = {
34
+ ProxyFactory: proxyFactory.address
35
+ };
36
+ await releaser(release, network.name, "deployment", false);
37
+ };
38
+
39
+ export const main = async (networkName = name) => {
40
+ await deployProxy().catch(console.log);
41
+ };
42
+
43
+ if (process.argv[1].includes("proxyFactory-deploy")) {
44
+ main();
45
+ }