-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
StataGSM #612
base: main
Are you sure you want to change the base?
StataGSM #612
Conversation
src/20250114_AaveV3Ethereum_GSMsMigrationToGSM4626/IGsmRegistry.sol
Outdated
Show resolved
Hide resolved
...114_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.sol
Outdated
Show resolved
Hide resolved
...114_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.sol
Show resolved
Hide resolved
...114_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.sol
Outdated
Show resolved
Hide resolved
src/20250114_AaveV3Ethereum_GSMsMigrationToGSM4626/GSMsMigrationToGSM4626.md
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Show resolved
Hide resolved
...114_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.sol
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
...114_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.sol
Outdated
Show resolved
Hide resolved
* - Discussion: https://governance.aave.com/t/arfc-deploy-statausdc-and-statausdt-gsms-on-ethereum/20682 | ||
*/ | ||
contract AaveV3Ethereum_GSMsMigrationToGSM4626_20250114 is IProposalGenericExecutor { | ||
using SafeERC20 for IERC20; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
apparently not needed. import neither
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's used in forceApprove()
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
...4_AaveV3Ethereum_GSMsMigrationToGSM4626/AaveV3Ethereum_GSMsMigrationToGSM4626_20250114.t.sol
Outdated
Show resolved
Hide resolved
interface IFeeStrategy { | ||
function getBuyFee(uint256 grossAmount) external view returns (uint256); | ||
function getSellFee(uint256 grossAmount) external view returns (uint256); | ||
} | ||
|
||
interface IOracleSwapFreezer { | ||
function getCanUnfreeze() external view returns (bool); | ||
function getFreezeBound() external view returns (uint128, uint128); | ||
function getUnfreezeBound() external view returns (uint128, uint128); | ||
function checkUpkeep(bytes calldata) external view returns (bool, bytes memory); | ||
function performUpkeep(bytes calldata) external; | ||
} | ||
|
||
interface IFixedPriceStrategy4626 { | ||
function getAssetPriceInGho(uint256 assetAmount, bool roundUp) external view returns (uint256); | ||
function getGhoPriceInAsset(uint256 ghoAmount, bool roundUp) external view returns (uint256); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should these be moved to src/interfaces
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i don't think they'll be used too often so didn't want to pollute the interfaces folder
In order to earn yield on the assets held on the GSM, upgrade from a native token GSM to a stataGSM.
CHANGELOG
Upgrade GSM implementation to new stataGSM and migrate liquidity.
Add tests for GSM functionality and set up.