-
Notifications
You must be signed in to change notification settings - Fork 166
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
feat: UOS Multipart #411
feat: UOS Multipart #411
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.
Could you add the instructions to test it? I've played with the current state of https://uostestqrs.herokuapp.com/ but it's a 26 frames (with long frame time) so I couldn't actually test it because it would take super long.
We somehow need to reset the isMultipart
and/or frameCount
at component unmount because say you start scanning a multipart, and you abort it for some reason (just like I did). You exit the scanner and get back to it, it'll still show the frame count and the "Multipart scanning, hold still.." although I'm not scanning anything any more.
Thanks, please ping me for review when you think it's good to go. |
testing contract upload on Substrate so will need to uncomment the Substrate stuff before testing. it is 15 frames to upload incrementer contract. |
hi, @Tbaut the multipart pr is ready for review again. You can test with the random message in the herokuapp, and you can test with |
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.
I tried the message without having the proper account on my phone and get this warning (because the account can't be found):
But more weirdly, I scanned a sudo transaction after this, and went back without signing it, then scanned the message multipart again, and now although I'm scanning the multipart (still without the account) I'm taken to the sudo tx confirmation screen.
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.
Hey @Tbaut thanks for all the testing! As we discussed yesterday, I've now archived the UOS-QRs repo and heroku app as it was originally a placeholder while the QR support was being added to apps. From what I've tested, |
error codes for reference.
tldr Invalid Transaction Payment = good, InvalidTransaction BadProof = bad |
Took a while to figure out what |
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.
Multipart seems to work well, logging some more related issues but we can merge this one in the mean time.
Signing and sending TX still works well (tested on Ehtereum and Dev Substrate)
#322
Starting with a utf8 message as this is most likely how a metadata blob will be transferred (#318).
It would however be rather useful to add an extension range specifically for metadata payloads, although on the other hand metadata injection would probably only be with regard to Substrate based chains. @maciejhirsz?Particularly because the UOS spec says that
7B
is a forbidden first byte of anypart_data
, but that is how a metadata struct/json is going to be transfered.part_data
MUST be stored by the Cold Signer, ordered by frame number, until all frames are scanned.