Skip to content

Commit 08bb034

Browse files
chore: rename pulkitpareek18/ZeroAuth → zeroauth-dev/ZeroAuth in docs (#51)
Repo transferred from personal GitHub account to the new zeroauth-dev organization. This commit refreshes hard-coded references in markdown, HTML, YAML, and config so links don't rely on the GitHub auto-redirect indefinitely. No code or behavior changes — only string replacements. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent d9b1e0f commit 08bb034

19 files changed

Lines changed: 81 additions & 81 deletions

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ body:
66
attributes:
77
value: |
88
Thanks for taking the time to file a bug report. **Security
9-
vulnerabilities should not be reported here** — see [SECURITY.md](https://github.com/pulkitpareek18/ZeroAuth/blob/main/SECURITY.md).
9+
vulnerabilities should not be reported here** — see [SECURITY.md](https://github.com/zeroauth-dev/ZeroAuth/blob/main/SECURITY.md).
1010
1111
- type: textarea
1212
id: description

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
blank_issues_enabled: false
22
contact_links:
33
- name: Security vulnerability
4-
url: https://github.com/pulkitpareek18/ZeroAuth/blob/main/SECURITY.md
4+
url: https://github.com/zeroauth-dev/ZeroAuth/blob/main/SECURITY.md
55
about: Please report security issues privately, not as a public issue.
66
- name: Documentation
77
url: https://zeroauth.dev/docs/
88
about: Browse the full hosted documentation site.
99
- name: Discussions
10-
url: https://github.com/pulkitpareek18/ZeroAuth/discussions
10+
url: https://github.com/zeroauth-dev/ZeroAuth/discussions
1111
about: Ask questions or propose changes before opening an issue.

.github/ISSUE_TEMPLATE/feature_request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ body:
66
attributes:
77
value: |
88
For broader proposals, consider opening a
9-
[discussion](https://github.com/pulkitpareek18/ZeroAuth/discussions)
9+
[discussion](https://github.com/zeroauth-dev/ZeroAuth/discussions)
1010
first so we can align on scope.
1111
1212
- type: textarea

CONTRIBUTING.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,19 @@ welcome bug reports, fixes, integrations, and ideas.
55

66
## Ways to contribute
77

8-
- **Found a bug?** Open an [issue](https://github.com/pulkitpareek18/ZeroAuth/issues/new).
8+
- **Found a bug?** Open an [issue](https://github.com/zeroauth-dev/ZeroAuth/issues/new).
99
Include reproduction steps, expected vs. actual behaviour, and your
1010
environment (`node -v`, OS, Docker version).
1111
- **Have a feature in mind?** Start a
12-
[discussion](https://github.com/pulkitpareek18/ZeroAuth/discussions) before
12+
[discussion](https://github.com/zeroauth-dev/ZeroAuth/discussions) before
1313
opening a PR — we'd rather agree on direction first.
1414
- **Found a security vulnerability?** **Do not** open a public issue. See
1515
[SECURITY.md](SECURITY.md).
1616

1717
## Development setup
1818

1919
```bash
20-
git clone https://github.com/pulkitpareek18/ZeroAuth.git
20+
git clone https://github.com/zeroauth-dev/ZeroAuth.git
2121
cd ZeroAuth
2222
npm run setup # installs all workspaces, builds everything
2323
cp .env.example .env # local env (uses Base Sepolia testnet by default)

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
</p>
2323

2424
<p>
25-
<a href="https://github.com/pulkitpareek18/ZeroAuth/blob/main/LICENSE"><img src="https://img.shields.io/github/license/pulkitpareek18/ZeroAuth?color=blue" alt="License" /></a>
26-
<a href="https://github.com/pulkitpareek18/ZeroAuth/stargazers"><img src="https://img.shields.io/github/stars/pulkitpareek18/ZeroAuth?style=flat" alt="Stars" /></a>
27-
<a href="https://github.com/pulkitpareek18/ZeroAuth/issues"><img src="https://img.shields.io/github/issues/pulkitpareek18/ZeroAuth" alt="Issues" /></a>
25+
<a href="https://github.com/zeroauth-dev/ZeroAuth/blob/main/LICENSE"><img src="https://img.shields.io/github/license/zeroauth-dev/ZeroAuth?color=blue" alt="License" /></a>
26+
<a href="https://github.com/zeroauth-dev/ZeroAuth/stargazers"><img src="https://img.shields.io/github/stars/zeroauth-dev/ZeroAuth?style=flat" alt="Stars" /></a>
27+
<a href="https://github.com/zeroauth-dev/ZeroAuth/issues"><img src="https://img.shields.io/github/issues/zeroauth-dev/ZeroAuth" alt="Issues" /></a>
2828
<img src="https://img.shields.io/badge/node-%3E%3D20-brightgreen" alt="Node 20+" />
2929
<img src="https://img.shields.io/badge/typescript-strict-blue" alt="TypeScript strict" />
3030
<img src="https://img.shields.io/badge/zk-Groth16-purple" alt="Groth16" />
@@ -125,7 +125,7 @@ Full API reference at [zeroauth.dev/docs/reference/api-reference](https://zeroau
125125
### Run it yourself (Docker, ~2 minutes)
126126

127127
```bash
128-
git clone https://github.com/pulkitpareek18/ZeroAuth.git
128+
git clone https://github.com/zeroauth-dev/ZeroAuth.git
129129
cd ZeroAuth
130130
cp .env.example .env # generates fresh secrets via scripts/deploy.sh
131131
./scripts/deploy.sh dev

adr/0004-governance-in-separate-repo.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# ADR-0004 — Split governance docs into a separate repo (`pulkitpareek18/ZeroAuth-Governance`)
1+
# ADR-0004 — Split governance docs into a separate repo (`zeroauth-dev/ZeroAuth-Governance`)
22

33
## Status
44

@@ -23,12 +23,12 @@ The reasons we revisited:
2323

2424
1. **The DPDP §8(7) breach-notification procedure was unwritten.** No document anywhere named which lawyer gets called, in what time window, with what information. That's a legal-teeth gap, not a hygiene gap. It has to land somewhere; writing it in a code repo would mix legal blast radius with engineering blast radius.
2525
2. **Compliance mappings have multiple-regulator scope.** A DPDP / IRDAI / RBI / MeitY mapping is read by auditors and a buyer's security team. Forcing them to clone a TypeScript repo to find it is friction at exactly the wrong moment in a pilot conversation.
26-
3. **The canonical threat model needs a stable URL** before repo #2 (verifier, B02, Week 2) exists. If the verifier's component threat model points at `pulkitpareek18/ZeroAuth/docs/threat_model.md`, the link rots the moment we split the verifier; if it points at a governance repo, the URL is stable forever.
26+
3. **The canonical threat model needs a stable URL** before repo #2 (verifier, B02, Week 2) exists. If the verifier's component threat model points at `zeroauth-dev/ZeroAuth/docs/threat_model.md`, the link rots the moment we split the verifier; if it points at a governance repo, the URL is stable forever.
2727
4. **Two-reviewer enforcement is easier with a dedicated repo.** Path-globbed CODEOWNERS in a code repo gets bypassed under deadline pressure ("just merge the policy change inline, fix it later"). A standalone repo where every PR is *by definition* a policy change makes the discipline mechanical.
2828

2929
## Decision
3030

31-
Create `pulkitpareek18/ZeroAuth-Governance` as a separate public GitHub repo with the structure from `governance_CLAUDE.md`:
31+
Create `zeroauth-dev/ZeroAuth-Governance` as a separate public GitHub repo with the structure from `governance_CLAUDE.md`:
3232

3333
- `docs/shared/{security-policy, coding-standards, naming-conventions, incident-response, breach-notification}.md`
3434
- `docs/threat-model/{canonical, api, verifier, iot, sdk, dashboard}.md`
@@ -41,7 +41,7 @@ Create `pulkitpareek18/ZeroAuth-Governance` as a separate public GitHub repo wit
4141

4242
The repo is **public**, CC-BY-4.0 licensed — same posture as the main `ZeroAuth` repo. The audit story benefits from open visibility.
4343

44-
This repo (`pulkitpareek18/ZeroAuth`) keeps:
44+
This repo (`zeroauth-dev/ZeroAuth`) keeps:
4545

4646
- `CLAUDE.md` — the constitution for this repo, links to the canonical shared docs
4747
- `docs/api_contract.md` — API-specific contract (won't move)
@@ -53,7 +53,7 @@ This repo (`pulkitpareek18/ZeroAuth`) keeps:
5353

5454
- **Positive — DPDP §8(7) procedure now exists.** Written down, with named counsel contacts (TODO entries where contacts aren't confirmed yet). Drillable. Reviewable.
5555
- **Positive — auditor-friendly surface.** A buyer's security team can clone one repo and read every policy without slogging through TypeScript. The W08 evidence-pack assembler from the operational suite reads from `evidence-pack-sources/CHECKSUMS.md` cleanly.
56-
- **Positive — stable URLs across the 8-week build.** When B02 (verifier, Week 2), B03 (IoT, Week 3), B04 (SDK, Week 5) split out, they all link to `github.com/pulkitpareek18/ZeroAuth-Governance/blob/main/docs/threat-model/canonical.md` — that URL doesn't move.
56+
- **Positive — stable URLs across the 8-week build.** When B02 (verifier, Week 2), B03 (IoT, Week 3), B04 (SDK, Week 5) split out, they all link to `github.com/zeroauth-dev/ZeroAuth-Governance/blob/main/docs/threat-model/canonical.md` — that URL doesn't move.
5757
- **Positive — two-reviewer rule is mechanical.** CODEOWNERS in the governance repo names both Pulkit and Amit on `/docs/shared/` and `/docs/compliance/`. Counsel review is enforced manually (counsel doesn't have GitHub access) by a note in the PR description before merge.
5858
- **Negative — two repos to clone on a fresh dev machine.** Mitigated: `scripts/setup-dev.sh` (TODO) will clone both side by side.
5959
- **Negative — cross-repo links rot more easily than same-repo links.** Mitigated by `markdown-link-check` CI on every PR in both repos.
@@ -81,8 +81,8 @@ The governance repo doesn't get folded back into the API repo. The split is mono
8181

8282
- B06 build prompt: `zeroauth_prompt_suite/04_development_suite/02_claude_code_dev/build_prompts/B06_governance_repo_bootstrap.md`
8383
- Governance constitution: `zeroauth_prompt_suite/04_development_suite/02_claude_code_dev/CLAUDE_md/governance_CLAUDE.md`
84-
- New repo: <https://github.com/pulkitpareek18/ZeroAuth-Governance>
85-
- Canonical threat model (new home): <https://github.com/pulkitpareek18/ZeroAuth-Governance/blob/main/docs/threat-model/canonical.md>
84+
- New repo: <https://github.com/zeroauth-dev/ZeroAuth-Governance>
85+
- Canonical threat model (new home): <https://github.com/zeroauth-dev/ZeroAuth-Governance/blob/main/docs/threat-model/canonical.md>
8686
- Brainstorm session on Day 3 (Wed May 13 2026) weighing collapsed vs separate repo: this conversation
8787

8888
---

adr/0005-adopt-nodemailer-for-smtp.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ Accepted
66

77
## Context
88

9-
[Issue #27](https://github.com/pulkitpareek18/ZeroAuth/issues/27) (F-2 from PR #22 security review) needs email infrastructure to close the email-enumeration finding properly. Beyond that single fix, several pending workstreams converge on "we need transactional email":
9+
[Issue #27](https://github.com/zeroauth-dev/ZeroAuth/issues/27) (F-2 from PR #22 security review) needs email infrastructure to close the email-enumeration finding properly. Beyond that single fix, several pending workstreams converge on "we need transactional email":
1010

11-
- **Breach-notification procedure** in `pulkitpareek18/ZeroAuth-Governance: docs/shared/breach-notification.md` step §3 requires emailing every affected tenant within 6 hours of confirmation — currently has no implementation
11+
- **Breach-notification procedure** in `zeroauth-dev/ZeroAuth-Governance: docs/shared/breach-notification.md` step §3 requires emailing every affected tenant within 6 hours of confirmation — currently has no implementation
1212
- **Password reset flow** — entirely missing today; we ship console accounts with no recovery path
1313
- **Welcome email on signup** — minor UX win, plus a server-side signal that the address is real
1414
- **"Someone tried to sign up with your email" notice** — security signal for legitimate account holders, partial mitigation for F-2 enumeration
@@ -57,7 +57,7 @@ Adopt **`nodemailer` v8.x** (latest stable, MIT-0 licensed) as the SMTP transpor
5757

5858
## Threat model delta
5959

60-
- New egress to `smtp-relay.brevo.com:587` from the API process. Update `pulkitpareek18/ZeroAuth-Governance: docs/threat-model/canonical.md` to add A-V06 (SMTP credential exfiltration / Brevo account takeover risk) — tracked as a follow-up.
60+
- New egress to `smtp-relay.brevo.com:587` from the API process. Update `zeroauth-dev/ZeroAuth-Governance: docs/threat-model/canonical.md` to add A-V06 (SMTP credential exfiltration / Brevo account takeover risk) — tracked as a follow-up.
6161

6262
## Operational notes
6363

@@ -71,8 +71,8 @@ Adopt **`nodemailer` v8.x** (latest stable, MIT-0 licensed) as the SMTP transpor
7171
- nodemailer source: <https://github.com/nodemailer/nodemailer>
7272
- nodemailer license (MIT-0): <https://github.com/nodemailer/nodemailer/blob/master/LICENSE>
7373
- Brevo SMTP docs: <https://developers.brevo.com/docs/smtp-integration>
74-
- DPDP §8(7) breach-notification procedure that depends on this: `pulkitpareek18/ZeroAuth-Governance: docs/shared/breach-notification.md`
75-
- Issue this unblocks: <https://github.com/pulkitpareek18/ZeroAuth/issues/27>
74+
- DPDP §8(7) breach-notification procedure that depends on this: `zeroauth-dev/ZeroAuth-Governance: docs/shared/breach-notification.md`
75+
- Issue this unblocks: <https://github.com/zeroauth-dev/ZeroAuth/issues/27>
7676

7777
---
7878

adr/0006-verifier-typescript-not-rust.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ The plan-mode doc's §3.3 recommended **Plan A**. Pulkit picked **Plan B** on Th
2020

2121
## Decision
2222

23-
The Groth16 verifier ships as **`@zeroauth/verifier`, an npm workspace inside `pulkitpareek18/ZeroAuth`**, written in TypeScript on top of `snarkjs`. It runs as a separate Docker container (`zeroauth-verifier`) bound to `127.0.0.1:3001` on the Docker network. The API container reaches it via HTTP — never inline anymore.
23+
The Groth16 verifier ships as **`@zeroauth/verifier`, an npm workspace inside `zeroauth-dev/ZeroAuth`**, written in TypeScript on top of `snarkjs`. It runs as a separate Docker container (`zeroauth-verifier`) bound to `127.0.0.1:3001` on the Docker network. The API container reaches it via HTTP — never inline anymore.
2424

2525
Shipped in three PRs today:
2626

27-
- [PR #35](https://github.com/pulkitpareek18/ZeroAuth/pull/35) — Dockerfile `verifier-build` + `verifier-production` stages, compose service, `VERIFIER_URL` wired into the API's environment.
28-
- [PR #36](https://github.com/pulkitpareek18/ZeroAuth/pull/36) — Healthcheck hotfix (`localhost``127.0.0.1` because alpine busybox `wget` hits IPv6 first).
29-
- [PR #37](https://github.com/pulkitpareek18/ZeroAuth/pull/37) — SQLite append-only audit log + hash chain (the design doc §4.3 component).
27+
- [PR #35](https://github.com/zeroauth-dev/ZeroAuth/pull/35) — Dockerfile `verifier-build` + `verifier-production` stages, compose service, `VERIFIER_URL` wired into the API's environment.
28+
- [PR #36](https://github.com/zeroauth-dev/ZeroAuth/pull/36) — Healthcheck hotfix (`localhost``127.0.0.1` because alpine busybox `wget` hits IPv6 first).
29+
- [PR #37](https://github.com/zeroauth-dev/ZeroAuth/pull/37) — SQLite append-only audit log + hash chain (the design doc §4.3 component).
3030

3131
The inline-`snarkjs` fallback in `src/services/zkp.ts` **stays in the codebase for two more weeks** as a safety net while the verifier service soaks in production. It activates only when `VERIFIER_URL` is unset (which never happens in prod — the value is hard-set in `docker-compose.yml`'s `environment:` block). Retirement is scheduled for end of Week 4 of the build cycle (~2026-06-08), as a separate PR.
3232

@@ -52,7 +52,7 @@ Single-engineer velocity. The Rust path was the brainstorm's recommendation when
5252
- **No reproducible build provenance** for the verifier image. Docker `buildx --provenance --sbom` would produce signed attestations, but the `better-sqlite3` native build (alpine arm64-musl has no prebuilt → node-gyp compile via apk-added python+make+g++) is non-deterministic. The audit story is therefore "trust the image" not "verify the image's bytes." Acceptable for v0; this is the single biggest delta vs Plan A.
5353
- **Larger transitive surface.** snarkjs has ~12 transitive deps vs arkworks' ~6. Each is JS, MIT-licensed, audited; but the larger surface is real.
5454
- **`cryptographer-reviewer` subagent calibration** assumes Rust + arkworks per its current spec. The subagent works against snarkjs too (it's just JS) but the review is less precise — Rust's type system catches a class of memory-safety bugs the reviewer can stop looking for. With snarkjs, the reviewer has to reason about JS-level invariants. Documented in the subagent's known-limitations section (TBD).
55-
- **No `--unsafe` audit story.** TypeScript has no equivalent of Rust's `unsafe` block, so the "no unsafe without an ADR" rule in B02's quality bar doesn't transfer. The closest analog is "no `any` in exported signatures + no `dangerouslySetInnerHTML` in user-rendering code" which is already in our [`coding-standards.md`](https://github.com/pulkitpareek18/ZeroAuth-Governance/blob/main/docs/shared/coding-standards.md).
55+
- **No `--unsafe` audit story.** TypeScript has no equivalent of Rust's `unsafe` block, so the "no unsafe without an ADR" rule in B02's quality bar doesn't transfer. The closest analog is "no `any` in exported signatures + no `dangerouslySetInnerHTML` in user-rendering code" which is already in our [`coding-standards.md`](https://github.com/zeroauth-dev/ZeroAuth-Governance/blob/main/docs/shared/coding-standards.md).
5656
- **Container image size is bigger.** Alpine + node + snarkjs + better-sqlite3 → ~140MB. A static Rust binary would be ~20MB. We're not bandwidth-constrained at single-VPS scale; revisit if/when we go multi-region.
5757

5858
### Neutral
@@ -85,8 +85,8 @@ If during the soak window any verifier failure mode surfaces that we can't fix f
8585

8686
- Plan-mode design doc: [`docs/design/verifier-service-split.md`](../docs/design/verifier-service-split.md)
8787
- B02 build prompt (rejected path): `zeroauth_prompt_suite/04_development_suite/02_claude_code_dev/build_prompts/B02_verifier_service_bootstrap.md`
88-
- Issue tracking: [#35](https://github.com/pulkitpareek18/ZeroAuth/pull/35), [#36](https://github.com/pulkitpareek18/ZeroAuth/pull/36), [#37](https://github.com/pulkitpareek18/ZeroAuth/pull/37)
89-
- Component threat model (to be promoted from stub in the governance repo): `pulkitpareek18/ZeroAuth-Governance: docs/threat-model/verifier.md`
88+
- Issue tracking: [#35](https://github.com/zeroauth-dev/ZeroAuth/pull/35), [#36](https://github.com/zeroauth-dev/ZeroAuth/pull/36), [#37](https://github.com/zeroauth-dev/ZeroAuth/pull/37)
89+
- Component threat model (to be promoted from stub in the governance repo): `zeroauth-dev/ZeroAuth-Governance: docs/threat-model/verifier.md`
9090

9191
---
9292

0 commit comments

Comments
 (0)