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

Create Sapling-only transaction v5 test vectors #2047

Closed
7 tasks
Tracked by #2266
teor2345 opened this issue Apr 21, 2021 · 2 comments
Closed
7 tasks
Tracked by #2266

Create Sapling-only transaction v5 test vectors #2047

teor2345 opened this issue Apr 21, 2021 · 2 comments
Labels
A-rust Area: Updates to Rust code C-enhancement Category: This is an improvement NU-5 Network Upgrade: NU5 specific tasks

Comments

@teor2345
Copy link
Contributor

teor2345 commented Apr 21, 2021

Is your feature request related to a problem? Please describe.

There are no hard-coded serialized Transaction v5 test vectors yet.

Describe the solution you'd like

Create or obtain at least one of each of the following types of test vectors:

  • Sapling only
  • Transparent only
  • Sapling/Transparent
    • shielding (transparent to sapling)
    • unshielding (sapling to transparent)
  • an empty v5 transaction (which will fail the "at least one transfer" consensus rule)

All these test vectors should have empty orchard actions sections.

Describe alternatives you've considered

Do nothing - we might discover incompatibilities when we deploy on testnet or mainnet.

We could wait for zcashd to create test vectors, and use theirs.

@teor2345 teor2345 added A-rust Area: Updates to Rust code C-enhancement Category: This is an improvement S-needs-triage Status: A bug report needs triage NU-5 Network Upgrade: NU5 specific tasks P-Medium labels Apr 21, 2021
@teor2345
Copy link
Contributor Author

@oxarbitrage if you're blocked on the Orchard parsing you could do the sapling test vectors instead.

@teor2345
Copy link
Contributor Author

We've effectively covered these cases using a fake v5 transaction conversion function, and the empty v5 transaction creation function.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-rust Area: Updates to Rust code C-enhancement Category: This is an improvement NU-5 Network Upgrade: NU5 specific tasks
Projects
None yet
Development

No branches or pull requests

3 participants