obsidiansystems / ledger-app-tezos

Ledger app for Tezos
Apache License 2.0
101 stars 51 forks source link

Improve "Unrecognized Operation" messages for Transfers with params and batch transfers #154

Open jevonearth opened 4 years ago

jevonearth commented 4 years ago

When asking the ledger to sign operations with params, we get the message "Unrecognized Operation" which is not reassuring to the user.

I understand screen real estate on the Ledger devices is tight.

Can we update the app to print "TX with params from SOURCE to DEST amount AMOUNT"

I believe a similar improvement can be made for batch operations, although I have not verified this yet.

roxaneletourneau commented 4 years ago

In addition to @jevonearth 's comment, we noticed that the unrecognized operation message is displayed when we are working with smart contracts (deploy and calling a method).

andrewpaulicek commented 4 years ago

I think we really need this.

"TX with params from SOURCE to DEST amount AMOUNT" would be perfect.

mikereinhart commented 4 years ago

Hi - was the behavior you're asking for observable for you on versions prior to the current release?

utdrmac commented 3 years ago

Jumping in here:

If I try to send 1 transaction, ledger shows everything correctly. It decodes the bytes to show you source, destination, fee, etc.

But if I attempt to use the new batch transaction feature, sending 2+ in a single operation, the ledger doesn't know how to decode the bytes in such a way to present all of the info to you. Thus, it says it's unrecognized and shows you the signature of the decoded bytes.

This is a critical issue with the new tezos-client v8.

mikereinhart commented 3 years ago

Thanks @utdrmac, what do you think would be the best UX for a situation like this? Seems it might be too much to prompt for each tx in the batch, but I'm interested in your thoughts on this. Perhaps some aggregate information on the total amount being transferred?

Sounds like the current behavior you are seeing is the 'Sign Hash' functionality where the operation is hashed both on-device and (tezos-) client side for the user to verify in absence of the app's ability to produce a more informative prompt.

utdrmac commented 3 years ago

@mikereinhart Certainly too much info to display. Especially for bakers that do payouts with 100's of txns per operation. And now with Delphi lowering txn costs, easily 500+ txns per op. I think displaying the total amount is good and continuing to show the calculated hash so users can verify on-screen and on-device. Maybe also display the number of txns within the op?