-
Notifications
You must be signed in to change notification settings - Fork 302
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
Implement IBC-related APIs for Skip integration #4404
Conversation
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.
LGTM
&self, | ||
_: tonic::Request<QueryEscrowAddressRequest>, | ||
) -> std::result::Result<tonic::Response<QueryEscrowAddressResponse>, tonic::Status> { | ||
unimplemented!() |
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.
Noting for the future that I think we can implement this by querying the value balance key, even though we don't have escrow accounts per se.
There's a CI failure here. On first pass, the check-all-features job failed, after which @zbuc added the "server" feature flag on the shielded-pool crate's |
Nice, the latest feature-tweak resolved. Merging to get this included in upgrade testing, pending resolution of #4430. |
These were added in penumbra-zone#4404 and made `#![deny(clippy::unwrap_used)]` unhappy. See also penumbra-zone#2920.
These were added in penumbra-zone#4404 and made `#![deny(clippy::unwrap_used)]` unhappy. See also penumbra-zone#2920.
Describe your changes
This changeset implements some APIs Skip indicated would be useful for their integration efforts.
Specifically:
cosmos.bank.v1beta1.Query/TotalSupply
-- since we aren't using the Cosmos SDK, this didn't make sense to implement directly -- instead we've implemented a similar streamingpenumbra.core.component.shielded_pool.v1.QueryService/TotalSupply
call. Please note that only IBC transferred assets will have correct amounts set; internally tracked assets currently return a 0 amount (Skip said this is fine for their uses for now)ibc.applications.transfer.v1.Query/DenomTraces
ibc.core.client.v1.Query/ClientStatus
I am not happy with some of the code I had to write to massage data into the right types but didn't have time to figure out anything better. I manually tested all three RPC methods locally and they seem to work as expected.
Issue ticket number and link
Closes #4391
Checklist before requesting a review
If this code contains consensus-breaking changes, I have added the "consensus-breaking" label. Otherwise, I declare my belief that there are not consensus-breaking changes, for the following reason: