From bd39c04ebc996f6f5359dcde76bd2ce30104de4d Mon Sep 17 00:00:00 2001 From: Toby1009 <69885352+Toby1009@users.noreply.github.com> Date: Thu, 13 Aug 2026 11:26:34 +0800 Subject: [PATCH 1/4] fix(docs): repair dead external links Every external link below returns 404. Replacements were verified with a live request. - `noir-lang.org` restructured its docs, so all six links to it broke. The worst is the install command in `noir-circuits.mdx`, which a reader copies verbatim and which cannot install the toolchain. Point it at the `noirup` installer the Noir install page currently documents, and move the rest to `noir-lang.org/docs/installation`. - `crates/support/methods/README.md` carried a stale RISC Zero guide URL and an examples URL missing the repo name. The equivalent template file already has both correct. - Two blog URLs moved with the rename; the GRECO post kept its old slug. - `docsRepositoryBase` pointed at a repository that does not exist, so every "Edit this page" link on the docs site was dead. - The CRISP footer used an X handle that no longer resolves. Refs #1794 Co-Authored-By: Claude Opus 5 (1M context) --- README.md | 2 +- crates/support/methods/README.md | 4 ++-- docs/pages/CRISP/setup.mdx | 2 +- docs/pages/internals/dkg.mdx | 2 +- docs/pages/noir-circuits.mdx | 2 +- docs/theme.config.jsx | 2 +- examples/CRISP/Readme.md | 4 ++-- examples/CRISP/client/src/components/Footer.tsx | 2 +- scripts/README.md | 4 ++-- 9 files changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 6e0a7831d6..97c7f69ef9 100644 --- a/README.md +++ b/README.md @@ -80,7 +80,7 @@ The monorepo provides several test scripts for different components: - **`pnpm noir:test`** - Runs tests for Noir circuits in the `circuits/` directory using `nargo test`. Requires the - [Noir toolchain](https://noir-lang.org/docs/getting_started/installation) (`nargo`) and + [Noir toolchain](https://noir-lang.org/docs/installation) (`nargo`) and [Barretenberg](https://github.com/AztecProtocol/aztec-packages/tree/master/barretenberg) (`bb`) to be installed and on your `PATH`. diff --git a/crates/support/methods/README.md b/crates/support/methods/README.md index f3ec254840..4b4bfa07ea 100644 --- a/crates/support/methods/README.md +++ b/crates/support/methods/README.md @@ -25,5 +25,5 @@ Each will have a corresponding image ID, which is a hash identifying the program [guest programs]: https://dev.risczero.com/terminology#guest-program [on-chain logic]: ../contracts/ [guest/src/bin]: ./guest/src/bin/ -[Guest Code 101]: https://dev.risczero.com/zkvm/developer-guide/guest-code-101 -[RISC Zero examples]: https://github.com/risc0/tree/v0.18.0/examples +[Guest Code 101]: https://dev.risczero.com/api/zkvm/guest-code-101 +[RISC Zero examples]: https://github.com/risc0/risc0/tree/main/examples diff --git a/docs/pages/CRISP/setup.mdx b/docs/pages/CRISP/setup.mdx index c57acc435f..090ca2ffe8 100644 --- a/docs/pages/CRISP/setup.mdx +++ b/docs/pages/CRISP/setup.mdx @@ -22,7 +22,7 @@ Before getting started, ensure you have installed: - [Node.js](https://nodejs.org/en/download) - [pnpm](https://pnpm.io) - [MetaMask](https://metamask.io) -- Noir toolchain ([`nargo`](https://noir-lang.org/docs/getting_started/quick_start), +- Noir toolchain ([`nargo`](https://noir-lang.org/docs/installation), [`bb`](https://barretenberg.aztec.network/docs/getting_started)) ## Quick Start diff --git a/docs/pages/internals/dkg.mdx b/docs/pages/internals/dkg.mdx index 4a1b598a4e..e4f2d5e5b1 100644 --- a/docs/pages/internals/dkg.mdx +++ b/docs/pages/internals/dkg.mdx @@ -276,7 +276,7 @@ This circuit runs once, executed by the aggregator. ## P3: User Encryption With the threshold public key published, users encrypt their private inputs using a specialisation -of the [GRECO](https://blog.theinterfold.com/interfold-cryptography-greco-fhe-zk/) circuit. This +of the [GRECO](https://blog.theinterfold.com/enclave-cryptography-greco-fhe-zk/) circuit. This proves each ciphertext was formed correctly under the threshold public key without revealing the plaintext or encryption randomness. The circuit verifies `commit(pk_threshold)` from C5 before validating the encryption. diff --git a/docs/pages/noir-circuits.mdx b/docs/pages/noir-circuits.mdx index 3ce2ed3949..ed5c745d59 100644 --- a/docs/pages/noir-circuits.mdx +++ b/docs/pages/noir-circuits.mdx @@ -62,7 +62,7 @@ and **bb** versions. Install Noir (or rely on CI / Docker): ```bash -curl -L https://noir-lang.org/install | bash # nargo + bb +curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash # nargo + bb nargo --version # match zk-prover / versions.json bb --version ``` diff --git a/docs/theme.config.jsx b/docs/theme.config.jsx index d63322731f..a0fd815e0d 100644 --- a/docs/theme.config.jsx +++ b/docs/theme.config.jsx @@ -28,7 +28,7 @@ export default { project: { link: 'https://github.com/gnosisguild/interfold', }, - docsRepositoryBase: 'https://github.com/gnosisguild/interfold-docs', + docsRepositoryBase: 'https://github.com/theinterfold/interfold/tree/main/docs', darkMode: false, nextThemes: { defaultTheme: 'light', diff --git a/examples/CRISP/Readme.md b/examples/CRISP/Readme.md index 61bf939ac2..5ba7248ab7 100644 --- a/examples/CRISP/Readme.md +++ b/examples/CRISP/Readme.md @@ -5,7 +5,7 @@ decision-making, leveraging fully homomorphic encryption (FHE) and distributed t cryptography (DTC) to enable verifiable secret ballots. Built with Interfold, CRISP safeguards democratic systems and decision-making applications against coercion, manipulation, and other vulnerabilities. To learn more about CRISP, you can read our -[blog post](https://blog.interfold.network/crisp-private-voting-secret-ballot-fhe-zkp-mpc/) or visit +[blog post](https://blog.theinterfold.com/crisp-private-voting-secret-ballot-fhe-zkp-mpc/) or visit the [documentation](https://docs.theinterfold.com/CRISP/introduction). ## Project Structure @@ -43,7 +43,7 @@ Before getting started, ensure you have installed: - [pnpm](https://pnpm.io) - [MetaMask](https://metamask.io) - [`yq`](https://github.com/mikefarah/yq) — `scripts/dev_cipher.sh` reads node addresses with it -- Noir toolchain: [`nargo`](https://noir-lang.org/docs/getting_started/quick_start) and +- Noir toolchain: [`nargo`](https://noir-lang.org/docs/installation) and [`bb`](https://barretenberg.aztec.network/docs/getting_started). Install the versions CI pins, since other versions may not compile the circuits: - `nargo`: `noirup -v v1.0.0-beta.26` (`NOIR_TOOLCHAIN` in `.github/workflows/ci.yml`) diff --git a/examples/CRISP/client/src/components/Footer.tsx b/examples/CRISP/client/src/components/Footer.tsx index 03c66ce1fc..6620ad2bf8 100644 --- a/examples/CRISP/client/src/components/Footer.tsx +++ b/examples/CRISP/client/src/components/Footer.tsx @@ -18,7 +18,7 @@ const Footer: React.FC = () => { - + diff --git a/scripts/README.md b/scripts/README.md index 1754d36ec3..2c8c7e74e8 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -235,7 +235,7 @@ the generator would produce. ### Prerequisites -- `nargo` - Noir compiler ([install](https://noir-lang.org/docs/getting_started/installation/)) +- `nargo` - Noir compiler ([install](https://noir-lang.org/docs/installation)) - `bb` - Barretenberg prover (for verification keys) ## Circuit Artifacts @@ -405,7 +405,7 @@ The `generate:verifiers` script in package.json passes `--circuits` with the on- ### Prerequisites -- `nargo` - Noir compiler ([install](https://noir-lang.org/docs/getting_started/installation/)) +- `nargo` - Noir compiler ([install](https://noir-lang.org/docs/installation)) - `bb` - Barretenberg CLI for proof system operations ### Output Example From 0e01e5e864648ce7a9c6df75986fe04d133999f9 Mon Sep 17 00:00:00 2001 From: Toby1009 <69885352+Toby1009@users.noreply.github.com> Date: Thu, 13 Aug 2026 11:43:49 +0800 Subject: [PATCH 2/4] docs: document the full pinned Noir toolchain setup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The install block claimed the noirup script provides "nargo + bb". It provides neither: the script only puts `noirup` on `PATH` and prints "Then, simply run 'noirup' to install Nargo", and it never touches Barretenberg. Following the block as written left both `nargo --version` and `bb --version` failing. Add the `noirup -v v1.0.0-beta.26` step that actually installs the pinned nargo, and state where bb comes from: `interfold noir setup` installs the `required_bb_version` from `crates/zk-prover/versions.json` under `~/.interfold/noir`. Nothing in `crates/zk-prover/src/backend` or `crates/cli/src/noir.rs` touches `PATH`, so `bb --version` is not the way to check that copy — point readers at `interfold noir status` instead. Version pins match `NOIR_TOOLCHAIN` and `BB_VERSION` in `.github/workflows/ci.yml`, and the wording now matches the accurate prerequisites already in `examples/CRISP/Readme.md`. Refs #1794 Co-Authored-By: Claude Opus 5 (1M context) --- docs/pages/noir-circuits.mdx | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/docs/pages/noir-circuits.mdx b/docs/pages/noir-circuits.mdx index ed5c745d59..44ad8e1143 100644 --- a/docs/pages/noir-circuits.mdx +++ b/docs/pages/noir-circuits.mdx @@ -59,15 +59,18 @@ and **bb** versions. ## Toolchain -Install Noir (or rely on CI / Docker): +Install **nargo** (or rely on CI / Docker). The installer only places `noirup` on your `PATH`; run +`noirup` afterwards to get the pinned toolchain: ```bash -curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash # nargo + bb -nargo --version # match zk-prover / versions.json -bb --version +curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash +noirup -v v1.0.0-beta.26 # NOIR_TOOLCHAIN in .github/workflows/ci.yml +nargo --version ``` -**Recommended:** use the Interfold CLI so **bb** and artifacts match the prover: +**bb** does not come from `noirup`. Use the Interfold CLI, which installs the Barretenberg version +pinned in `crates/zk-prover/versions.json` (`required_bb_version`) under `~/.interfold/noir` so it +matches the prover: ```bash interfold noir status @@ -75,6 +78,9 @@ interfold noir setup interfold noir setup --force # reinstall ``` +That copy is managed by the CLI rather than added to your `PATH`, so use `interfold noir status` to +check it instead of `bb --version`. + ## Compile, format, test From the **repository root**: From 78e37f80c61f6977dde6a7cb23de8f3dd01803f4 Mon Sep 17 00:00:00 2001 From: Toby1009 <69885352+Toby1009@users.noreply.github.com> Date: Thu, 13 Aug 2026 11:54:21 +0800 Subject: [PATCH 3/4] docs: introduce nargo and bb before their install steps The previous wording led with "bb does not come from noirup" and told the reader not to use `bb --version`. That corrects an assumption a first-time reader has not formed yet, and it withholds what `bb` even is until after warning them off it. State the two tools and where each comes from up front, link bb to the Barretenberg docs on first mention as `examples/CRISP/Readme.md` does, and give each its own subsection. Same facts, no negations. Refs #1794 Co-Authored-By: Claude Opus 5 (1M context) --- docs/pages/noir-circuits.mdx | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/docs/pages/noir-circuits.mdx b/docs/pages/noir-circuits.mdx index 44ad8e1143..60036a4d06 100644 --- a/docs/pages/noir-circuits.mdx +++ b/docs/pages/noir-circuits.mdx @@ -59,8 +59,16 @@ and **bb** versions. ## Toolchain -Install **nargo** (or rely on CI / Docker). The installer only places `noirup` on your `PATH`; run -`noirup` afterwards to get the pinned toolchain: +Building the circuits needs two tools, and each has its own installer (or rely on CI / Docker): + +- **nargo** — the Noir compiler, installed through `noirup` +- **bb** — the [Barretenberg](https://barretenberg.aztec.network/docs/getting_started) proving + backend, installed through the Interfold CLI + +### nargo + +The script below installs `noirup`, the version manager. Run `noirup` afterwards to get the pinned +compiler: ```bash curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash @@ -68,9 +76,10 @@ noirup -v v1.0.0-beta.26 # NOIR_TOOLCHAIN in .github/workflows/ci.yml nargo --version ``` -**bb** does not come from `noirup`. Use the Interfold CLI, which installs the Barretenberg version -pinned in `crates/zk-prover/versions.json` (`required_bb_version`) under `~/.interfold/noir` so it -matches the prover: +### bb + +`interfold noir setup` fetches the Barretenberg version pinned in `crates/zk-prover/versions.json` +(`required_bb_version`), so your prover and your local builds agree: ```bash interfold noir status @@ -78,8 +87,8 @@ interfold noir setup interfold noir setup --force # reinstall ``` -That copy is managed by the CLI rather than added to your `PATH`, so use `interfold noir status` to -check it instead of `bb --version`. +The CLI keeps this copy under `~/.interfold/noir` instead of on your `PATH`, so +`interfold noir status` is what reports the installed version. ## Compile, format, test From d1ee2c91f31575d8686efc5849cdb7638ab7d2d0 Mon Sep 17 00:00:00 2001 From: Toby1009 <69885352+Toby1009@users.noreply.github.com> Date: Thu, 13 Aug 2026 18:03:08 +0800 Subject: [PATCH 4/4] docs: put noirup on PATH before the block calls it MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The installer appends the PATH export to the shell profile and prints "Run 'source ' or start a new terminal session to use noirup" — it never touches the running shell. So the block still broke at line two with `noirup: command not found`, one step later than before. Export `~/.nargo/bin` directly, which is where the installer puts both `noirup` (`NARGO_BIN_DIR="$NARGO_HOME/bin"`, `NARGO_HOME` defaulting to `$HOME/.nargo`) and the `nargo` it later installs. The block is now copy-pasteable end to end in one session. Refs #1794 Co-Authored-By: Claude Opus 5 (1M context) --- docs/pages/noir-circuits.mdx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/pages/noir-circuits.mdx b/docs/pages/noir-circuits.mdx index 60036a4d06..639ed4ef1f 100644 --- a/docs/pages/noir-circuits.mdx +++ b/docs/pages/noir-circuits.mdx @@ -72,10 +72,14 @@ compiler: ```bash curl -L https://raw.githubusercontent.com/noir-lang/noirup/main/install | bash -noirup -v v1.0.0-beta.26 # NOIR_TOOLCHAIN in .github/workflows/ci.yml +export PATH="$PATH:$HOME/.nargo/bin" # installer writes this to your shell profile, not this shell +noirup -v v1.0.0-beta.26 # NOIR_TOOLCHAIN in .github/workflows/ci.yml nargo --version ``` +Both `noirup` and `nargo` land in `~/.nargo/bin`, so the export above covers the rest of this +session. New shells pick it up from the profile the installer edited. + ### bb `interfold noir setup` fetches the Barretenberg version pinned in `crates/zk-prover/versions.json`