You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A minimum bread holding balance (minimumProjectBalance) variable should be added to the contract (and the initializer/ json configs)
A setter function should be added with access control
If a project does not hold the minimum amount in their address, the transfer of voted yield should not occur
A test should be added to confirm this behavior
sequenceDiagram
YieldDistributor ->> YieldDistributor : distributeYield()
loop For each project in the projects array
YieldDistributor ->> YieldDistributor : uint256 projectBalance = BREAD.balanceOf(projects[i])
alt if balance below min
YieldDistributor ->> YieldDistributor : BREAD.transfer(projects[i], _votedSplit);
end
YieldDistributor ->> YieldDistributor : calculate `_votedSplit` for `projects[i]`
YieldDistributor ->> Project : BREAD.transfer(projects[i], _votedSplit + _baseSplit);
end
Loading
Note: The expected behavior should be that if the project does not hold the minimum amount of $BREAD in their account, the transfer will not execute. Other projects should still receive their expected amount, without augmenting their yield allocation. The yield will stay in the contract, and will increase their yield allocation in the upcoming month (in the event the project does not hold $BREAD in the next cycle as well). This allows for a "soft-penalty", as this distributes the project's yield to the other projects in the next cycle, but still allows the project to receive part of that yield and simplifies the implementation.
The text was updated successfully, but these errors were encountered:
minimumProjectBalance
) variable should be added to the contract (and the initializer/ json configs)Note: The expected behavior should be that if the project does not hold the minimum amount of $BREAD in their account, the transfer will not execute. Other projects should still receive their expected amount, without augmenting their yield allocation. The yield will stay in the contract, and will increase their yield allocation in the upcoming month (in the event the project does not hold $BREAD in the next cycle as well). This allows for a "soft-penalty", as this distributes the project's yield to the other projects in the next cycle, but still allows the project to receive part of that yield and simplifies the implementation.
The text was updated successfully, but these errors were encountered: