Skip to content

Sapling

Mehdi Bouaziz requested to merge sapling-integration into proto-proposal

This branch adds a dependency that must be installed with make build-deps for it to compile.

This MR is based on !96 (merged), the 10 first commits are part of !96 (merged), which can be reviewed independently. Comments should be added there.

REVIEW

lib_sapling/

  • rustzcash, do not review as susceptible to changes
  • core, proceed bottom-up, requires a good understanding of the sapling protocol
  • forge, very related to client
  • storage, very related to protocol storage
  • test/example.ml, useful to review the client and verify_update in the protocol

proto_alpha/lib_protocol/

Storage:

  • storage
  • sapling_storage, related to lib_sapling/storage.ml
  • sapling_services
  • contract_services

Michelson:

  • script_*

proto_alpha/lib_client_sapling

  • wallet
  • context
  • commands

organization

2 reviewers in the client + lib_sapling/forge

2 reviewers in the protocol + lib_sapling/storage

A more expert review will probably be required for core.ml, so we leave to the reviewers to decide in which depth they want to review it.

Entrypoint for the review: docs/developer/sapling.rst

AFTER/DURING REVIEW

  • refactor names that are abbreviations like nf -> nullifier
  • split initialization of storage in a separate Migration commit
  • Squash everything (don't forget to mention all authors and reviewers in the commit message) and split wrt. protocol/non-protocol
  • merge opam-repository first

Sapling umbrella task: nomadic-labs/tezos#65

Edited by Marco Stronati

Merge request reports