Skip to content

specs: host 5/ZK-PROOF-OF-PERSONHOOD here again - #34

Closed
phipsae wants to merge 2 commits into
ci/registry-generatorfrom
specs/host-proof-of-personhood
Closed

phipsae wants to merge 2 commits into
ci/registry-generatorfrom
specs/host-proof-of-personhood

Conversation

@phipsae

@phipsae phipsae commented Sep 14, 2026 •

Copy link
Copy Markdown
Collaborator

This needs the spec's editors to agree before it merges. Based on #32.

This one is a question about where the spec should live, not a cleanup.

What happened to spec 5

Date Event
18 Mar 2026 5/ZK-HUMAN-VERIFICATION written here, 426 lines, Nicole as editor
14 May 2026 Nicole creates zkID's specs/ folder, commit message says "import ... human verification"
1 Jul 2026 #24 deletes 422 of those lines here and leaves a four-line pointer at zkID

So the text started in this repository, moved to zkID, and this repository was left pointing at its own spec. That is the split #29 exists to fix. It also means hosting it here is restoring the original arrangement rather than taking anyone's work, and the editor and contributors are unchanged either way.

Worth noting that zkID's copy still says it is governed by 1/COSS in this repo, so zkID already treats this repository as the process home.

What this pull request does

Brings the text back and sets role: hosted.

It takes zkID's current version, not the March copy from here. The spec has grown from 434 to 721 lines since, gaining a split CertChain and DeviceSig circuit design, a verifier API with error codes and status queries, and nullifier persistence. Taking the old local copy would have thrown six months of work away.

The body differs from zkID's main branch in exactly four places, and nothing else. Front matter authorship is unchanged.

Line Change Why
Change Process names process/ instead of a URL pointing back here that URL pointed at this repo's old path
Verifier Implementations canonical home is now ethereum/access-layer-specs it said privacy-ethereum/zkID, contradicting role: hosted in the same file
Verifier Implementations zkmopro/zkID described as a fork of ethereum/zkID it said "fork of this repository", which stops making sense once the spec lives here
Two OpenAC paper links privacy-ethereum/zkID to ethereum/zkID the old org only resolves by redirect

An earlier version of this description claimed the body was byte-identical apart from the governance line. That was wrong, and review caught it. The canonical-home sentence would have shipped saying the spec belongs to zkID while the metadata said it belongs here.

Status moves from idea to draft, since a 721-line spec with a full circuit design is past an idea.

The spec map also drops the proof-of-personhood row, because the spec no longer lives elsewhere, and its two remaining rows move from privacy-ethereum/zkID to ethereum/zkID, which had only been resolving through a redirect.

The ask

That zkID keeps the implementation and links here for the spec, rather than holding both. If you would rather keep the canonical text in zkID, say so and I will close this, and #31 already marks spec 5 as indexed with the history recorded, which is at least honest about where the text is.

The same question applies to OpenAC and ZK Age Verification in zkID, but one at a time.

🤖 Generated with Claude Code

Philip Krause and others added 2 commits September 14, 2026 18:02
This spec was written in this repository on 18 March 2026, imported into
zkID on 14 May, and reduced here to a four-line pointer on 1 July in #24.
The repo ended up pointing at its own spec.

Brings the text back and sets role to hosted. It takes zkID's current
version, not the copy this repo had in March, because the spec has grown
since, a split CertChain and DeviceSig circuit design, a verifier API
with error codes, and nullifier persistence. The body is byte-identical
to zkID's main branch apart from the governance line, which now names
process/ instead of a URL pointing back here.

Editors and contributors are unchanged.

The Access Layer spec map drops the proof-of-personhood row, since the
spec no longer lives elsewhere, and the two remaining rows move from
privacy-ethereum/zkID to ethereum/zkID, which had only been resolving by
redirect.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The imported text still said "this spec's canonical home is
privacy-ethereum/zkID", which contradicts the front matter in this same
commit saying role: hosted and upstream: null. A reader would have got
opposite answers from the metadata and the prose.

The passage now names ethereum/access-layer-specs, and describes
zkmopro/zkID as a fork of the ethereum/zkID implementation repo rather
than "a fork of this repository", which stopped making sense once the
spec moved here.

Two OpenAC paper links also pointed at privacy-ethereum/zkID, which only
resolved through a redirect after zkID moved to the ethereum org.

The body now differs from zkID's main branch in four places rather than
one, all of them recorded above.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.

1 participant