Skip to content
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

Remove duplicate user command fields #884

Merged
merged 67 commits into from
May 30, 2023

Conversation

nholland94
Copy link
Contributor

As part of MinaProtocol/mina#13048, a bug was discovered with how the signed command transaction logic would handle inputs where duplicate fields must be equal (this bug only existed in the berkeley version of the code, not what is released to mainnet). As part of fixing this, I opted to remove the duplicate fields to ensure that we aren't missing checks anywhere. The duplicate fields only existed to support user command tokens before mainnet, a feature which was cut from scope for mainnet, and has now been superseded by the zkapps token design.

This PR propagates these changes into SnarkyJS.

Copy link
Member

@mitschabaude mitschabaude left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks very thorough, thanks @nholland94!

Unit tests seem to fail because the js_of_ocaml build artifact doesn't reflect these changes yet. Mina-signer doesn't depend on OCaml by itself, but the tests that check mina-signer for correctness do.
Which brings up the question: Is there a Mina branch this corresponds to? This probably won't be compatible with the current testnet, so we shouldn't merge this PR to main. I'll switch the base branch to berkeley, which is where we land upcoming changes that correspond to Mina's berkeley branch

EDIT: looks like we haven't updated berkeley in a while, so this includes a bunch of changes from main now. This is fine, I reviewed this PR and I think it only needs updated bindings before it's good to go

@mitschabaude mitschabaude changed the base branch from main to berkeley May 2, 2023 08:13
mitschabaude and others added 20 commits May 8, 2023 20:47
Clean up previous proof arguments handling in Pickles/SnarkyJS
…ck trace path to improve readability of error messages
…Stacktrace keyword covers both class and method decorators
Improve stack traces thrown from OCaml
@nholland94 nholland94 force-pushed the remove-duplicate-user-command-fields branch 3 times, most recently from 31dcf69 to 835c6fc Compare May 9, 2023 21:57
@mitschabaude mitschabaude merged commit 265c311 into berkeley May 30, 2023
@mitschabaude mitschabaude deleted the remove-duplicate-user-command-fields branch May 30, 2023 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants