Closed facundomedica closed 2 days ago
[!WARNING]
Rate limit exceeded
@facundomedica has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 9 minutes and 35 seconds before requesting another review.
How to resolve this issue?
After the wait time has elapsed, a review can be triggered using the `@coderabbitai review` command as a PR comment. Alternatively, push new commits to this PR. We recommend that you space out your commits to avoid hitting the rate limit.How do rate limits work?
CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our [FAQ](https://coderabbit.ai/docs/faq) for further information.Commits
Files that changed from the base of the PR and between f28ec0c458fdaab479cfd07cf82c0a5d76449ee6 and 760d354cb9237eb1eda8ff2b6a3e42fe30e4b193.
The recent updates enhance the testing framework for the protocolpool
package by adding new test functions to validate fund withdrawal and expiration scenarios. Additionally, significant modifications to the Keeper
in x/protocolpool/keeper
streamline fund distribution logic, remove the RecipientFundPercentage
map, and update method signatures and calculations. A new test function for iterating and updating fund distribution ensures these changes work correctly.
File | Summary |
---|---|
tests/integration/protocolpool/... |
Added tests for fund withdrawals and expiration scenarios in module_test.go . |
x/protocolpool/keeper/keeper.go |
Removed RecipientFundPercentage map, updated fund distribution logic, and renamed methods. |
x/protocolpool/keeper/keeper_test.go |
Introduced TestIterateAndUpdateFundsDistribution to validate new distribution logic. |
sequenceDiagram
participant TestModule as Test Module
participant ProtocolPool as Protocol Pool
participant Keeper as Keeper
TestModule->>+ProtocolPool: TestWithdrawAnytime()
ProtocolPool->>+Keeper: Withdraw Fund
Keeper-->>-ProtocolPool: Fund Withdrawn
TestModule->>+ProtocolPool: TestExpireInTheMiddle()
ProtocolPool->>+Keeper: Check Fund Expiry
Keeper-->>-ProtocolPool: Fund Expired
TestModule->>+Keeper: TestIterateAndUpdateFundsDistribution()
Keeper->>+Keeper: Iterate and Update Funds
Keeper-->>-TestModule: Funds Updated
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
I think this can be removed as is unused https://github.com/cosmos/cosmos-sdk/blob/5f2bcfc416c9464661da6c81ee7d6e50653fa882/x/protocolpool/types/keys.go#L27
Description
Changes done:
RecipientFundPercentage
, as having this number without its fund's expiration is useless. We should always use the ContinuousFund and check its expiration.SetToDistribute
now adds on top of the previous value(Made
iterateAndUpdateFundsDistribution
exported for a bit just to cut some corners, will make it non-exported again)Author Checklist
All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.
I have...
!
in the type prefix if API or client breaking changeCHANGELOG.md
Reviewers Checklist
All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.
Please see Pull Request Reviewer section in the contributing guide for more information on how to review a pull request.
I have...
Summary by CodeRabbit
RecipientFundPercentage
map and adjusting methods for better accuracy.