From 59076e3689554422a865935c3a44868b2c72313f Mon Sep 17 00:00:00 2001 From: pblivin0x Date: Wed, 27 Apr 2022 12:59:44 -0400 Subject: [PATCH 1/3] add intro and WrapExtension spec to instrinsically productive assets STIP --- STIPS/STIP-012.md | 271 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 271 insertions(+) create mode 100644 STIPS/STIP-012.md diff --git a/STIPS/STIP-012.md b/STIPS/STIP-012.md new file mode 100644 index 0000000..f307672 --- /dev/null +++ b/STIPS/STIP-012.md @@ -0,0 +1,271 @@ +# STIP-012: Intrinsically Productive Assets + +*Using template v0.1* + +## Abstract + +Currently, SetToken managers using self-service manager contracts do not have the capabilities to improve their passive returns by depositing their SetToken's components into popular interest-yielding protocols like Aave, Compound, and Yearn. + +## Motivation + +This STIP proposes we provide infrastructure for the [DelegatedManager system](https://docs.tokensets.com/developers/contracts/strategies/delegatedmanager-system) to deposit assets into yield bearing vaults, claim protocol rewards earned from those deposits, and withdraw assets at any time. This enables the self-service manager system to access the functionality provided by the `WrapModuleV2`, `ClaimModule`, and `AirdropModule`. + +## Background Information + +[WrapModuleV2](https://github.com/SetProtocol/set-protocol-v2/blob/master/contracts/protocol/modules/v1/WrapModuleV2.sol) - Module that enables the wrapping of ERC20 and Ether positions via third party protocols. The WrapModuleV2 works in conjunction with WrapV2Adapters. There are WrapV2Adapters for blank, blank, blank. + +[ClaimModule](https://github.com/SetProtocol/set-protocol-v2/blob/master/contracts/protocol/modules/v1/ClaimModule.sol) - Module that enables managers to claim tokens from external protocols given to the Set as part of participating in incentivized activities such as depositing assets. The ClaimModule works in conjunction with ClaimAdapters. There are ClaimAdapters for blank, blank, blank + +[AirdropModule](https://github.com/SetProtocol/set-protocol-v2/blob/master/contracts/protocol/modules/v1/AirdropModule.sol) - Module that enables managers to absorb tokens sent to the SetToken into the token's positions. With each SetToken, managers are able to specify + +- the airdrops they want to include +- an airdrop fee recipient +- airdrop fee +- whether all users are allowed to trigger an airdrop + + +## Open Questions + +- [ ] Is more functionality necessary to provide asset managers needs for intrinsically productive assets? + - There is potential need for the ability to trade and wrap in a single transaction, especially when dealing with ETH. This has come up with the [CurveStEthExchangeAdapter](https://github.com/SetProtocol/set-protocol-v2/blob/master/contracts/protocol/integration/exchange/CurveStEthExchangeAdapter.sol). + +## Feasibility Analysis + +### WrapExtension + +This extension submits calls to the `WrapModuleV2` from the `DelegatedManager`. This contract enables `DelegatedManager`'s to wrap and unwrap ERC20 and Ether positions. + +### Individual ClaimExtension and AirdropExtension + +These extensions submit calls to the `ClaimModule` and `AirdropModule` from the DelegatedManager. These extensions maintain the level of functionality of the modules, but require two transactions to claim external protocol rewards and absorb them in to the `SetToken`. + +### Combined ClaimExtension and AirdropExtension + +This single extension submits calls to the `ClaimModule` and `AirdropModule` from the DelegatedManager. This extension would claim external protocol rewards and absorb them in to the `SetToken` in a single transaction. Endpoints for the standalone `AirdropModule` functionality are provided. + +### Recommended Solution + +We recommend implementing the `WrapExtension` and the `ClaimExtension` which calls both the `ClaimModule` and `AirdropModule`. This solutions allows `DelegatedManager`'s with a single transaction experience for wrapping assets, claiming external protocol rewards into a `SetToken`, and unwrapping assets. + +## Timeline + +| Action | End Date | +|--- |--- | +| Technical Spec | 4/25 | +| Implementation | 4/29 | +| Auditors | TBD | +| Launch | TBD | + +## Checkpoint 1 +Before more in depth design of the contract flows lets make sure that all the work done to this point has been exhaustive. It should be clear what we're doing, why, and for who. All necessary information on external protocols should be gathered and potential solutions considered. At this point we should be in alignment with product on the non-technical requirements for this feature. It is up to the reviewer to determine whether we move onto the next step. + +**Reviewer**: + +## Proposed Architecture Changes +A diagram would be helpful here to see where new feature slot into the system. Additionally a brief description of any new contracts is helpful. +## Requirements + +### WrapExtension + +- Allow `owner` to enable functionality of WrapModuleV2 with only a state change and no contract deployment +- Allow privileged `operator`(s) to wrap and unwrap ERC20 and ether positions via third party protocols + +### ClaimExtension +- Allow `owner` to enable functionality of ClaimModule and AirdropModule with only a state change and no contract deployment +- Use ClaimModule to claim external protocol rewards and AirdropModule to absorb them into SetToken positions in a single transaction + +## User Flows + + +### ClaimExtension.claimAndAbsorb() + + + +## Checkpoint 2 +Before we spec out the contract(s) in depth we want to make sure that we are aligned on all the technical requirements and flows for contract interaction. Again the who, what, when, why should be clearly illuminated for each flow. It is up to the reviewer to determine whether we move onto the next step. + +**Reviewer**: + +Reviewer: [] +## Specification + +### WrapExtension + +#### Inheritance + +- BaseGlobalExtension + +#### Events + +##### WrapExtensionInitialized + +| Type | Name | Description | +|------ |------ |------------- | +|address|_setToken|Address of SetToken with WrapExtension initialized| +|address|_delegatedManager|Address of DelegatedManager with WrapExtension initialized| + +#### Global Variables + +| Type | Name | Description | +|------ |------ |------------- | +|IWrapModuleV2|wrapModule|WrapModuleV2 for SetToken| + +#### Functions +| Name | Caller | Description | +|------ |------ |------------- | +|initializeModule|owner|Initializes the WrapModuleV2 on the SetToken associated with the DelegatedManager| +|initializeExtension|owner|Initializes the WrapExtension on the DelegatedManager| +|initializeModuleAndExtension|owner|Initializes the WrapModuleV2 on the SetToken and the WrapExtension on the DelegatedManager| +|removeExtension|manager|Remove an existing SetToken and DelegatedManager tracked by the WrapExtension| +|wrap|operator|Instructs the SetToken to wrap an underlying asset into a wrappedToken via a specified adapter.| +|wrapWithEther|operator|Instructs the SetToken to wrap Ether into a wrappedToken via a specified adapter.| +|unwrap|operator|Instructs the SetToken to unwrap a wrapped asset into its underlying via a specified adapter.| +|unwrapWithEther|operator|Instructs the SetToken to unwrap a wrapped asset collateralized by Ether into Wrapped Ether.| + +--- + +#### Functions + +> wrap + +ONLY OPERATOR: Instructs the SetToken to wrap an underlying asset into a wrappedToken via a specified adapter. + +```solidity +function wrap( + ISetToken _setToken, + address _underlyingToken, + address _wrappedToken, + uint256 _underlyingUnits, + string calldata _integrationName, + bytes memory _wrapData +) + external + onlyOperator(_setToken) +``` ++ Formulate call to wrap asset from manager + ```solidity + bytes memory callData = abi.encodeWithSelector( + IWrapModuleV2.wrap.selector, + _setToken, + _underlyingToken, + _wrappedToken, + _underlyingUnits, + _integrationName, + _wrapData + ); + ``` ++ call *_invokeManager(_manager(_setToken), address(wrapModule), callData);* + +--- + +> wrapWithEther + +ONLY OPERATOR: Instructs the SetToken to wrap Ether into a wrappedToken via a specified adapter. + +```solidity +function wrapWithEther( + ISetToken _setToken, + address _wrappedToken, + uint256 _underlyingUnits, + string calldata _integrationName, + bytes memory _wrapData +) + external + onlyOperator(_setToken) +``` ++ Formulate call to wrap Ether from manager + ```solidity + bytes memory callData = abi.encodeWithSelector( + IWrapModuleV2.wrapWithEther.selector, + _setToken, + _wrappedToken, + _underlyingUnits, + _integrationName, + _wrapData + ); + ``` ++ call *_invokeManager(_manager(_setToken), address(wrapModule), callData);* + +--- + +> unwrap + +ONLY OPERATOR: Instructs the SetToken to unwrap a wrapped asset into its underlying via a specified adapter. + +```solidity +function unwrap( + ISetToken _setToken, + address _underlyingToken, + address _wrappedToken, + uint256 _wrappedUnits, + string calldata _integrationName, + bytes memory _unwrapData +) + external + onlyOperator(_setToken) +``` ++ Formulate call to unwrap asset from manager + ```solidity + bytes memory callData = abi.encodeWithSelector( + IWrapModuleV2.unwrap.selector, + _setToken, + _underlyingToken, + _wrappedToken, + _wrappedUnits, + _integrationName, + _unwrapData + ); + ``` ++ call *_invokeManager(_manager(_setToken), address(wrapModule), callData);* + +--- + +> unwrapWithEther + +ONLY OPERATOR: Instructs the SetToken to unwrap a wrapped asset collateralized by Ether into Wrapped Ether. + +```solidity +function unwrapWithEther( + ISetToken _setToken, + address _wrappedToken, + uint256 _wrappedUnits, + string calldata _integrationName, + bytes memory _unwrapData +) + external + onlyOperator(_setToken) +``` ++ Formulate call to unwrap Ether from manager + ```solidity + bytes memory callData = abi.encodeWithSelector( + IWrapModuleV2.unwrapWithEther.selector, + _setToken, + _wrappedToken, + _wrappedUnits, + _integrationName, + _unwrapData + ); + ``` ++ call *_invokeManager(_manager(_setToken), address(wrapModule), callData);* + +--- + +### ClaimExtension + +#### Inheritance + +- BaseGlobalExtension + + +## Checkpoint 3 +Before we move onto the implementation phase we want to make sure that we are aligned on the spec. All contracts should be specced out, their state and external function signatures should be defined. For more complex contracts, internal function definition is preferred in order to align on proper abstractions. Reviewer should take care to make sure that all stake holders (product, app engineering) have their needs met in this stage. + +**Reviewer**: + +## Implementation +[Implementation PR](https://github.com/SetProtocol/set-v2-strategies/pull/35) +## Documentation +[Link to Documentation on feature]() +## Deployment +[Link to Deployment script PR]() +[Link to Deploy outputs PR]() From 68e41e8db8b509e2c69830e12b92acc51ba6f010 Mon Sep 17 00:00:00 2001 From: pblivin0x Date: Tue, 3 May 2022 10:12:00 -0400 Subject: [PATCH 2/3] add ClaimExtension functions --- STIPS/STIP-012.md | 88 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 87 insertions(+), 1 deletion(-) diff --git a/STIPS/STIP-012.md b/STIPS/STIP-012.md index f307672..ce90519 100644 --- a/STIPS/STIP-012.md +++ b/STIPS/STIP-012.md @@ -52,7 +52,7 @@ We recommend implementing the `WrapExtension` and the `ClaimExtension` which cal | Action | End Date | |--- |--- | | Technical Spec | 4/25 | -| Implementation | 4/29 | +| Implementation | 5/4 | | Auditors | TBD | | Launch | TBD | @@ -141,6 +141,7 @@ function wrap( ) external onlyOperator(_setToken) + onlyAllowedAsset(_setToken, _wrappedToken) ``` + Formulate call to wrap asset from manager ```solidity @@ -172,6 +173,7 @@ function wrapWithEther( ) external onlyOperator(_setToken) + onlyAllowedAsset(_setToken, _wrappedToken) ``` + Formulate call to wrap Ether from manager ```solidity @@ -203,6 +205,7 @@ function unwrap( ) external onlyOperator(_setToken) + onlyAllowedAsset(_setToken, _underlyingToken) ``` + Formulate call to unwrap asset from manager ```solidity @@ -234,6 +237,7 @@ function unwrapWithEther( ) external onlyOperator(_setToken) + onlyAllowedAsset(_setToken, address(wrapModule.weth())) ``` + Formulate call to unwrap Ether from manager ```solidity @@ -256,6 +260,88 @@ function unwrapWithEther( - BaseGlobalExtension +#### Events + +##### ClaimExtensionInitialized + +| Type | Name | Description | +|------ |------ |------------- | +|address|_setToken|Address of SetToken with ClaimExtension initialized| +|address|_delegatedManager|Address of DelegatedManager with ClaimExtension initialized| + +#### Global Variables + +| Type | Name | Description | +|------ |------ |------------- | +|IAirdropModule|airdropModule|Instance of AirdropModule| +|IClaimModule|claimModule|Instance of ClaimModule| +|IIntegrationRegistry|integrationRegistry|Instance of IntegrationRegistry| + +#### Functions +| Name | Caller | Description | +|------ |------ |------------- | +|initializeAirdropModule|owner|Initializes AirdropModule on the SetToken associated with the DelegatedManager| +|initializeClaimModule|owner|Initializes ClaimModule on the SetToken associated with the DelegatedManager| +|initializeExtension|owner|Initializes ClaimExtension to the DelegatedManager| +|initializeModulesAndExtension|owner|Initializes ClaimExtension to the DelegatedManager and AirdropModule and ClaimModule to the SetToken| +|removeExtension|manager|Remove an existing SetToken and DelegatedManager tracked by the ClaimExtension| +|batchAbsorb|validAbsorbCaller|Absorb passed tokens into respective positions| +|absorb|validAbsorbCaller|Absorb specified token into position| +|addAirdrop|owner|Adds new tokens to be added to positions when absorb is called| +|removeAirdrop|owner|Removes tokens from list to be absorbed| +|updateAnyoneAbsorb|owner|Update whether manager allows other addresses to call absorb| +|updateAirdropFeeRecipient|owner|Update address AirdropModule manager fees are sent to| +|updateAirdropFee|owner|Update airdrop fee percentage| +|claimAndAbsorb|validClaimAndAbsorbCaller|Claim the rewards available on the rewardPool for the specified claim integration and absorb the reward token into position| +|batchClaimAndAbsorb|validClaimAndAbsorbCaller|Claims rewards on all the passed rewardPool/claim integration pairs and absorb the reward tokens into positions| +|updateAnyoneClaim|owner|Update whether manager allows other addresses to call claim| +|addClaim|owner|Adds a new claim integration for an existent rewardPool| +|batchAddClaim|owner|Adds a new rewardPool to the list to perform claims for the SetToken indicating the list of claim integrations| +|removeClaim|owner|Removes a claim integration from an existent rewardPool| +|batchRemoveClaim|owner|Batch removes claims from SetToken's settings| + +--- + +> claimAndAbsorb + +ONLY VALID CLAIM AND ABSORB CALLER: Claim the rewards available on the rewardPool for the specified claim integration and absorb the reward token into position. + +```solidity +function claimAndAbsorb( + ISetToken _setToken, + address _rewardPool, + string calldata _integrationName +) + external + onlyValidClaimAndAbsorbCaller(_setToken) +``` ++ Get rewards token from the rewards pool and verify it is an allowed asset + ```solidity + IClaimAdapter adapter = IClaimAdapter(integrationRegistry.getIntegrationAdapter(address(claimModule), _integrationName)); + IERC20 rewardsToken = adapter.getTokenAddress(_rewardPool); + require(_manager(_setToken).isAllowedAsset(address(rewardsToken)), "Must be allowed asset"); + ``` ++ Claim the rewards available on the rewardPool + ```solidity + bytes memory callData = abi.encodeWithSelector( + IClaimModule.claim.selector, + _setToken, + _rewardPool, + _integrationName + ); + _invokeManager(_manager(_setToken), address(claimModule), callData); + ``` ++ Absorb the reward token into position + ```solidity + bytes memory callData = abi.encodeWithSelector( + IAirdropModule.absorb.selector, + _setToken, + _token + ); + _invokeManager(_manager(_setToken), address(airdropModule), callData); + ``` + +--- ## Checkpoint 3 Before we move onto the implementation phase we want to make sure that we are aligned on the spec. All contracts should be specced out, their state and external function signatures should be defined. For more complex contracts, internal function definition is preferred in order to align on proper abstractions. Reviewer should take care to make sure that all stake holders (product, app engineering) have their needs met in this stage. From 22952ccf0aed46e904acb633a0347b1de6a88457 Mon Sep 17 00:00:00 2001 From: pblivin0x Date: Tue, 3 May 2022 13:05:40 -0400 Subject: [PATCH 3/3] add diagrams, clean requirements --- STIPS/STIP-012.md | 25 ++++++++++++++++++++++--- assets/stip-012/image1.png | Bin 0 -> 57859 bytes assets/stip-012/image2.png | Bin 0 -> 25821 bytes 3 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 assets/stip-012/image1.png create mode 100644 assets/stip-012/image2.png diff --git a/STIPS/STIP-012.md b/STIPS/STIP-012.md index ce90519..7a5e69f 100644 --- a/STIPS/STIP-012.md +++ b/STIPS/STIP-012.md @@ -62,24 +62,43 @@ Before more in depth design of the contract flows lets make sure that all the wo **Reviewer**: ## Proposed Architecture Changes -A diagram would be helpful here to see where new feature slot into the system. Additionally a brief description of any new contracts is helpful. + +![ProductiveAssetExtensions](../assets/stip-012/image1.png "") + +**ClaimExtension**: Global extension which provides privileged `operator`(s) the ability to `claimAndAbsorb` rewards from external protocols and the `owner` the ability to restrict the `operator`(s) permissions with an asset whitelist. + +**WrapExtension**: Global extension which provides privileged `operator`(s) the ability to `wrap` and `unwrap` ERC20 and Ether positions on external protocols and the `owner` the ability to restrict the `operator`(s) permissions with an asset whitelist. + ## Requirements ### WrapExtension - Allow `owner` to enable functionality of WrapModuleV2 with only a state change and no contract deployment - Allow privileged `operator`(s) to wrap and unwrap ERC20 and ether positions via third party protocols +- Allow `owner` to restrict assets the privileged `operator`(s) can wrap and unwrap into with an asset whitelist +- Allow `owner` to control SetToken's configuration on the WrapModuleV2 ### ClaimExtension + - Allow `owner` to enable functionality of ClaimModule and AirdropModule with only a state change and no contract deployment -- Use ClaimModule to claim external protocol rewards and AirdropModule to absorb them into SetToken positions in a single transaction +- Allow privileged `operator`(s) the ability to claim external protocol rewards and absorb them into SetToken positions in a single transaction +- Allow privileged `operator`(s) the ability to absorb tokens them into SetToken positions +- Allow `owner` to restrict assets the privileged `operator`(s) can absorb with an asset whitelist +- Allow `owner` to control SetToken's configuration on the AirdropModule +- Allow `owner` to control SetToken's configuration on the ClaimModule ## User Flows - ### ClaimExtension.claimAndAbsorb() +![claimAndAbsorbFlow](../assets/stip-012/image2.png "") + +An `operator` wants to claim rewards from an external protocol and absorb those rewards into the SetToken's positions. +1. The operator calls `claimAndAbsorb` passing in the the `rewardsPool` and `integrationName` from which they would like to claim +2. The rewardsToken is validated to be on the asset whitelist +3. Claim `callData` is encoded and the `ClaimModule` is invoked through the `DelegatedManager` +4. Absorb `callData` is encoded and the `AirdropModule` is invoked through the `DelegatedManager` ## Checkpoint 2 Before we spec out the contract(s) in depth we want to make sure that we are aligned on all the technical requirements and flows for contract interaction. Again the who, what, when, why should be clearly illuminated for each flow. It is up to the reviewer to determine whether we move onto the next step. diff --git a/assets/stip-012/image1.png b/assets/stip-012/image1.png new file mode 100644 index 0000000000000000000000000000000000000000..3aafbe1d826bc5fd2f20a3f74e0fbad06af9701a GIT binary patch literal 57859 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 L$}*KwCL#X=4SJ}F literal 0 HcmV?d00001 diff --git a/assets/stip-012/image2.png b/assets/stip-012/image2.png new file mode 100644 index 0000000000000000000000000000000000000000..62e19141f77ed687169a3e2fcf31df37bd14fd5f GIT binary patch literal 25821 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