-
Notifications
You must be signed in to change notification settings - Fork 221
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
orchestration - ICA Controller - Distribution - Withdraw Delegator Reward API #9071
Comments
Should I take the name Also: is it supposed to be a function? or a method on an object? We don't yet have Orchestrator.getChain nor I suppose
at @0xpatrickdev 's suggestion, I added a method there in #9307 |
The spec for withdrawRewards says
How do I/we get a signal when the rewards are withdrawn? p.s. I'll assume a reply from |
refs: #9071 I'm not confident this closes #9071; see that issue for questions about scope. ## Description Adds `WithdrawReward` on `invitationMakers` of `StakingAccountHolder`, following the pattern set by `Delegate`. ### Security Considerations I'm a bit uneasy about lack of guards for the helper facet (`helper: UnguardedHelperI`). It seems to impose a non-local review burden: we have to be sure every call to the helper facet passes only args that have already been guarded. I tripped on it, once: I passed the wrong type of thing to a helper method and didn't get a helpful guard violation message. ### Scaling Considerations While proportionally, the amount of work done doesn't outgrow the message size (presuming an IBC transaction is O(1)), in absolute terms, it seems unlikely that the fee for a `WithdrawReward` `MsgSpendAction` compensates for the cost of the IBC transaction. ### Documentation Considerations It's not entirely clear to me what the status of `StakingAccountHolder` is. Is it an example? If so, maybe this is `docs` rather than `feat`? ### Testing Considerations Based on internal discussions, the tests here are unit tests that mock the rest of the system. ### Upgrade Considerations This presumably gets deployed with the rest of orchestration in an upcoming chain-halting upgrade.
What is the Problem Being Solved?
#9065#8881 describes a generic method for sending ICA commands.The
WithdrawDelegatorReward
API should build on that, allowingcosmos.distribution.v1beta1.MsgWithdrawDelegatorReward
messages to be sent without the caller needing to build a representation of the message objects.Description of the Design
Security Considerations
Scaling Considerations
Test Plan
Upgrade Considerations
The text was updated successfully, but these errors were encountered: