-
Notifications
You must be signed in to change notification settings - Fork 0
docs: zeto change-log update #117
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
Conversation
Reviewer's Guide by SourceryThis pull request introduces documentation for the Zeto Smart Contract Set, a new set of zero-knowledge-based tokens on the SettleMint platform. It details the various fungible and non-fungible token types, zero-knowledge DVP capabilities, testing and deployment procedures, subgraph integration, and links to the open-source repository. Class diagram for Zeto Smart Contract token hierarchyclassDiagram
class Zeto_Base {
<<abstract>>
+transfer()
+balanceOf()
}
class Zeto_Anon {
+anonymousTransfer()
}
class Zeto_AnonEnc {
+encryptedTransfer()
-encryptData()
}
class Zeto_AnonNullifier {
+nullifierBasedTransfer()
-checkDoubleSpend()
}
class Zeto_AnonNullifierKyc {
+kycTransfer()
-verifyIdentity()
}
class Zeto_AnonEncNullifier {
+encryptedNullifierTransfer()
-validateNullifier()
}
class Zeto_AnonEncNullifierKyc {
+compliantEncryptedTransfer()
-validateKYC()
}
class Zeto_NfAnon {
+anonymousNFTTransfer()
+ownerOf()
}
class Zeto_NfAnonNullifier {
+nullifierNFTTransfer()
-trackOwnership()
}
Zeto_Base <|-- Zeto_Anon
Zeto_Base <|-- Zeto_AnonEnc
Zeto_Base <|-- Zeto_AnonNullifier
Zeto_AnonNullifier <|-- Zeto_AnonNullifierKyc
Zeto_Base <|-- Zeto_AnonEncNullifier
Zeto_AnonEncNullifier <|-- Zeto_AnonEncNullifierKyc
Zeto_Base <|-- Zeto_NfAnon
Zeto_NfAnon <|-- Zeto_NfAnonNullifier
note for Zeto_Base "Base contract for all Zeto tokens"
note for Zeto_AnonEncNullifierKyc "Most comprehensive token with all privacy features"
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
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 @SaeeDawod - I've reviewed your changes - here's some feedback:
Overall Comments:
- Please add information about security assumptions, cryptographic primitives used, and audit status of the contracts. This is crucial for zero-knowledge implementations.
- The linked repository appears to be private. Please either make it public or provide alternative documentation access instructions.
Here's what I looked at during the review
- 🟡 General issues: 3 issues found
- 🟢 Security: all looks good
- 🟢 Review instructions: all looks good
- 🟢 Testing: all looks good
- 🟢 Complexity: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
| 4. **Zeto_AnonNullifierKyc** | ||
| - KYC-enabled anonymous transfers | ||
| - Regulatory compliance features | ||
| - Identity verification while maintaining privacy |
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.
suggestion (typo): Use "KYC" instead of "Kyc" for consistency.
It's generally recommended to use all caps for acronyms like KYC (Know Your Customer).
Suggested implementation:
4. **Zeto_AnonNullifierKYC**
6. **Zeto_AnonEncNullifierKYC**
Note: If this contract name is referenced elsewhere in the codebase (like in actual smart contract files, tests, or documentation), those references will also need to be updated to match this new capitalization.
| 5. **Zeto_AnonEncNullifier** | ||
| - Encrypted transfers with nullifiers | ||
| - Combined encryption and tracking | ||
| - Maximum privacy with spending controls |
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.
suggestion (typo): Use "KYC" instead of "Kyc" for consistency.
It's generally recommended to use all caps for acronyms like KYC (Know Your Customer).
Suggested implementation:
4. **Zeto_AnonNullifierKYC**
6. **Zeto_AnonEncNullifierKYC**
| 6. **Zeto_AnonEncNullifierKyc** | ||
| - KYC-enabled encrypted transfers | ||
| - Full suite of privacy features | ||
| - Compliant with regulatory requirements |
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.
suggestion (typo): Use "KYC" instead of "Kyc" for consistency.
It's generally recommended to use all caps for acronyms like KYC (Know Your Customer).
Suggested implementation:
4. **Zeto_AnonNullifierKYC**
6. **Zeto_AnonEncNullifierKYC**
snigdha920
left a comment
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.
Should we use full sentences for the points? I'm wondering if this is too concise and feels like a rough sheet Eg. this can be
## Subgraph Integration
This smart contract sets includes fully pre-configured subgraph templates for all contracts.
Summary by Sourcery
Introduce the Zeto Smart Contract Set, a new collection of zero-knowledge ERC20 and ERC721 token contracts. It includes fungible and non-fungible token types with varying privacy and compliance features, zero-knowledge DVP functionality, and subgraph integration. The set also provides tools for testing, deployment, and trusted setup.
New Features:
Documentation: