docs(credential-zk): add README and KNOWN_LIMITATIONS (docs parity with nft-zk)#3
Open
CjDabrow wants to merge 2 commits into
Open
Conversation
Adds the two contributor-facing docs the MIP calls for (docs parity with nft-zk): - README.md: what the primitive is, the design model (secret-derived issuer auth, hiding commitments, IMT non-revocation, soulbound), wallet/bearer profiles, circuit table, one-instance-per-class note, build/test steps. - KNOWN_LIMITATIONS.md: honest caveat list synced to the MIP Security Considerations + review issue DpacJones#2 (single-secret issuer, deploymentSalt, opaque issuance + the issuer-knowledge open point, delegation, verifier-side replay, presentation liveness under revocation churn, correlation, pending testnet + conformance vectors). Docs only; no contract or behavior change.
There was a problem hiding this comment.
Pull request overview
This PR adds contributor-facing documentation for the contracts/credential-zk reference implementation to bring it to docs parity with nft-zk.
Changes:
- Add
contracts/credential-zk/README.mddescribing the credential primitive, design model, circuits, and how to run tests. - Add
contracts/credential-zk/KNOWN_LIMITATIONS.mdenumerating known limitations and “Path to Active” TODOs for the MIP-A implementation.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| contracts/credential-zk/README.md | Adds an overview + circuit inventory + test/toolchain notes for credential-zk. |
| contracts/credential-zk/KNOWN_LIMITATIONS.md | Documents security/operational limitations and pending deliverables for MIP-A. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+9
to
+12
| Status: **v3 reference implementation. Compile-verified (compactc 0.31.0 / language 0.23.0) with 28 | ||
| in-process tests including adversarial cases.** The core state machine is sound: secret-derived issuer | ||
| authority, holder-built hiding commitments, a single bound presentation (issued ∧ not-revoked over one | ||
| opening), a path-derived revoke index, and a two-step rotation that cannot brick authority. The items |
Comment on lines
+101
to
+103
| Compiled with `compactc 0.31.0` / language `0.23.0` (`pragma language_version >= 0.23`). On Windows note | ||
| that `compact` may collide with the built-in `C:\Windows\System32\compact.exe`; ensure the Compact | ||
| toolchain resolves first. |
Addresses the automated review on PR DpacJones#3: the status/toolchain lines read as a fresh verification signal, but this is a docs-only change. Reword to attribute the 'compiles on 0.31.0, 28 tests pass' result to the MIP + commit history and note it was not re-verified here; frame the README toolchain line as the target / pinned version.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the two contributor-facing docs for
credential-zkthat the MIP calls for, bringing it to docs parity withnft-zk(which already ships a README + KNOWN_LIMITATIONS).What's in here
README.md— what the soulbound credential primitive is, the design model (secret-derived issuer auth, hiding commitments, IMT private non-revocation, soulbound-by-construction), the wallet/bearer profiles, a circuit table, the one-instance-per-class normative note, the single-file design rationale, and build/test steps (incl. the Windowscompact.exegotcha).KNOWN_LIMITATIONS.md— an honest caveat list synced to the MIP's Security Considerations and review Review: credential-zk (MIP-A) — suggestions + one design question (branch mip-a-credential-primitive) #2: single-secret issuer authority, the load-bearingdeploymentSalt, opaque issuance + the issuer-knowledge open design point, holder delegation, verifier-side replay/nullifier, presentation liveness under revocation churn, correlation/metadata, handle generation, off-chain index bookkeeping, and the pending "Path to Active" items (testnet harness, conformance vectors).Notes