-
Notifications
You must be signed in to change notification settings - Fork 44
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
Cosmos ledger can't sign TX #4731
Comments
Progress so far: I am able to sign vote and create-text-proposal transactions with ledger by using But the only proposal type supported by CosmJS so far is TextProposal. So it throws this error for Community Spend proposal: The relevant line of code is here: https://github.com/cosmos/cosmjs/blob/358260bff71c9d3e7ad6644fcf64dc00325cdfb9/packages/stargate/src/modules/gov/aminomessages.ts#L169-L192 There is some movement on updating amino types in cosmjs-types via telescope: confio/cosmjs-types#68 , but I don't know yet if this will add support for CommunityPoolSpendProposal. I may raise a request with cosmjs to support other proposal types for amino MsgSubmitProposal. Another option: We may be able to implement it ourselves with telescope (like we did with gov v1), but this is non-trivial. Immediate option is to enable Ledger support, but leave CommunitySpendProposal ledger support as a follow-up issue. |
check makeSignDoc for similar issue |
I'm pretty sure we need to make our own implementation of so we can manually register the needed amino types. |
Current challenge. Using a Ledger device, submit a MsgProposalSubmit with a type My problem right now:
This article is useful in that it explains how Amino encoding can be in JSON or binary. |
Re Re Telescope -- the part that confuses me is that I see the types/encoding for CommunityPoolSpendProposal right in |
This encodes correctly, but when routed through cosmJs it gives the original error noted,
The current So cosmJS is being used twice here:
The issue arises in 2b. CosmJS only supports TextProposal in amino, thus the error. My thought for using Telescope is that we could generate the amino code we need, and manually add support for CommunitySpend if necessary. Telescope also provides a SigningClient. |
@mhagel this is clarifying, thanks! Investigating further: |
@jnaviask Yes this is probably the recommended way. I considered this before and got sidetracked somehow, but I will give it another shot. Edit: although I believe the |
I made some devnet improvements to make this easier to test. That added at least 3 points of effort that I hadn't accounted for in my initial estimate. |
Describe the bug
Unable to sign with ledger.
Error on Keplr:
Incompatible Signing Requested - Error: SIGN_MODE_DIRECT can't be signed on Ledger. Contact the web app provider to fix this issue
To Reproduce
Attempt to create a proposal with a ledger account.
Expected behavior
I can sign a tx with a ledger address (create a proposal)
Additional context
Quasar reported
The text was updated successfully, but these errors were encountered: