From 6536200eea8b946187d537d56377b58b1641a01a Mon Sep 17 00:00:00 2001 From: The3D Date: Mon, 2 Nov 2020 11:55:37 +0100 Subject: [PATCH] Update mint/burn event on the stable debt token --- contracts/tokenization/StableDebtToken.sol | 9 +++++---- .../tokenization/interfaces/IStableDebtToken.sol | 12 ++++++------ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/contracts/tokenization/StableDebtToken.sol b/contracts/tokenization/StableDebtToken.sol index 27e90d41..4f35b76e 100644 --- a/contracts/tokenization/StableDebtToken.sol +++ b/contracts/tokenization/StableDebtToken.sol @@ -144,9 +144,9 @@ contract StableDebtToken is IStableDebtToken, DebtTokenBase { amount, previousBalance, currentBalance, - balanceIncrease, vars.newStableRate, - vars.currentAvgStableRate + vars.currentAvgStableRate, + vars.nextSupply ); return currentBalance == 0; @@ -166,6 +166,7 @@ contract StableDebtToken is IStableDebtToken, DebtTokenBase { uint256 previousSupply = totalSupply(); uint256 newStableRate = 0; + uint256 nextSupply = 0; //since the total supply and each single user debt accrue separately, //there might be accumulation errors so that the last borrower repaying @@ -175,7 +176,7 @@ contract StableDebtToken is IStableDebtToken, DebtTokenBase { _avgStableRate = 0; _totalSupply = 0; } else { - uint256 nextSupply = _totalSupply = previousSupply.sub(amount); + nextSupply = _totalSupply = previousSupply.sub(amount); newStableRate = _avgStableRate = _avgStableRate .rayMul(previousSupply.wadToRay()) .sub(_usersData[user].rayMul(amount.wadToRay())) @@ -201,7 +202,7 @@ contract StableDebtToken is IStableDebtToken, DebtTokenBase { // transfer event to track balances emit Transfer(user, address(0), amount); - emit Burn(user, amount, previousBalance, currentBalance, balanceIncrease, newStableRate); + emit Burn(user, amount, previousBalance, currentBalance, newStableRate, nextSupply); } /** diff --git a/contracts/tokenization/interfaces/IStableDebtToken.sol b/contracts/tokenization/interfaces/IStableDebtToken.sol index 7a6e5f5b..f7031ef0 100644 --- a/contracts/tokenization/interfaces/IStableDebtToken.sol +++ b/contracts/tokenization/interfaces/IStableDebtToken.sol @@ -19,18 +19,18 @@ interface IStableDebtToken { * @param amount the amount minted * @param previousBalance the previous balance of the user * @param currentBalance the current balance of the user - * @param balanceIncrease the debt increase since the last update * @param newRate the rate of the debt after the minting * @param avgStableRate the new average stable rate after the minting + * @param newTotalSupply the new total supply of the stable debt token after the action **/ event Mint( address indexed user, uint256 amount, uint256 previousBalance, uint256 currentBalance, - uint256 balanceIncrease, uint256 newRate, - uint256 avgStableRate + uint256 avgStableRate, + uint256 newTotalSupply ); /** @@ -39,16 +39,16 @@ interface IStableDebtToken { * @param amount the amount minted * @param previousBalance the previous balance of the user * @param currentBalance the current balance of the user - * @param balanceIncrease the debt increase since the last update * @param avgStableRate the new average stable rate after the minting + * @param newTotalSupply the new total supply of the stable debt token after the action **/ event Burn( address indexed user, uint256 amount, uint256 previousBalance, uint256 currentBalance, - uint256 balanceIncrease, - uint256 avgStableRate + uint256 avgStableRate, + uint256 newTotalSupply ); /**