Skip to content

docs: update hosted docs on CRISP#724

Merged
ctrlc03 merged 1 commit into
mainfrom
docs/crisp-hosted-docs
Sep 12, 2025
Merged

docs: update hosted docs on CRISP#724
ctrlc03 merged 1 commit into
mainfrom
docs/crisp-hosted-docs

Conversation

@ctrlc03

@ctrlc03 ctrlc03 commented Sep 12, 2025

Copy link
Copy Markdown
Collaborator

Update live docs with up to date instructions on how to run CRISP

fix #723

Summary by CodeRabbit

  • Documentation
    • Removed the WebAssembly Crypto subsection and directory from CRISP docs.
    • Updated server startup to use the enclave start command and added a dev mode that mocks RISC0 proofs.
    • Revised Quick Start to use scripts (pnpm dev:setup, pnpm dev:up) and added an initial pnpm install step.
    • Marked RISC0 as optional when using dev mode and updated cleanup to pnpm clean:deployments.
    • Clarified example README to run from the CRISP directory.
    • Reworded contract validator docs to present tense and fixed a typo.

@vercel

vercel Bot commented Sep 12, 2025

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
enclave-docs Ready Ready Preview Comment Sep 12, 2025 1:59pm
1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
crisp Skipped Skipped Sep 12, 2025 1:59pm

@ctrlc03 ctrlc03 self-assigned this Sep 12, 2025
@coderabbitai

coderabbitai Bot commented Sep 12, 2025

Copy link
Copy Markdown
Contributor

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

📥 Commits

Reviewing files that changed from the base of the PR and between 90d2788 and 1e1bf38.

📒 Files selected for processing (5)
  • docs/pages/CRISP/introduction.mdx (0 hunks)
  • docs/pages/CRISP/running-e3.mdx (1 hunks)
  • docs/pages/CRISP/setup.mdx (4 hunks)
  • examples/CRISP/Readme.md (1 hunks)
  • examples/CRISP/contracts/README.md (1 hunks)
 _________________________________
< My bunny whiskers are tingling. >
 ---------------------------------
  \
   \   (\__/)
       (•ㅅ•)
       /   づ

Walkthrough

Documentation updates for CRISP: removed the WebAssembly crypto section from the introduction, updated server start instructions to use the enclave CLI with a new dev mode, revised setup to prefer scripts and added dev-mode notes around RISC Zero, and switched cleanup to a script.

Changes

Cohort / File(s) Summary of changes
CRISP Docs — Component removal
docs/pages/CRISP/introduction.mdx
Removed references to the wasm-crypto/ directory and the entire "WebAssembly Crypto" section from the introduction.
CRISP Docs — Dev mode and scripts
docs/pages/CRISP/running-e3.mdx, docs/pages/CRISP/setup.mdx, examples/CRISP/Readme.md
Replaced server start commands with enclave program start and added --dev true (mocked RISC0 proofs); shifted Quick Start to script-based flow (pnpm dev:setup, pnpm dev:up), added notes that dev mode does not use RISC0, replaced deployment cleanup with pnpm clean:deployments, and added pnpm install step in example README.
Contracts README — wording fix
examples/CRISP/contracts/README.md
Clarified input validator description (present tense), fixed spelling, and added reference to the Greco paper.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor U as User
  participant C as Enclave CLI
  participant S as Program Server
  participant P as RISC0 Prover
  participant M as Mock Prover

  U->>C: enclave program start [--dev true|false]
  C->>S: Start server
  alt dev = false
    S->>P: Request proof generation
    P-->>S: Proof artifacts
  else dev = true
    S->>M: Request mocked proofs
    M-->>S: Mock artifacts
  end
  S-->>C: Server running
  C-->>U: Status/outputs
Loading

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested labels

documentation

Suggested reviewers

  • 0xjei
  • cedoor
  • auryn-macmillan

Pre-merge checks (5 passed)

✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title "docs: update hosted docs on CRISP" concisely and accurately reflects the PR's primary purpose of updating CRISP documentation and hosted docs, matching the changed files and PR objectives. It is clear and relevant for a teammate scanning history to understand the main change.
Linked Issues Check ✅ Passed Linked issue #723 required updates to the README and hosted docs; this PR modifies docs/pages/CRISP/introduction.mdx, running-e3.mdx, setup.mdx and examples/CRISP/Readme.md (plus a contracts README) to update setup/run commands, add dev-mode notes, and adjust quick-start flows, which satisfies the coding-related objectives in the linked issue. No code or public API changes were introduced, so the documented objectives appear met.
Out of Scope Changes Check ✅ Passed The diff contains only documentation updates and minor README text changes relevant to CRISP (setup, run, dev-mode, and explanatory text); there are no code, build, or API edits, so I find no evidence of out-of-scope changes unrelated to issue #723. The removal of the WebAssembly crypto section appears to be a documentation decision consistent with updating the docs.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.

Poem

A rabbit taps its keys with glee,
Snips the wasm from the doc-tree,
Starts enclaves in dev-mode light—
Mocked proofs hopping into sight.
Scripts now guide the burrow’s start. 🐇

Tip

You can disable the changed files summary in the walkthrough.

Disable the reviews.changed_files_summary setting in your project's settings in CodeRabbit to disable the changed files summary in the walkthrough.

✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch docs/crisp-hosted-docs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
docs/pages/CRISP/running-e3.mdx (1)

65-74: Fix mismatch between instruction text and path

The prose says “Navigate to the program directory” but the command navigates to the CRISP root (examples/CRISP/). Adjust the sentence to avoid confusion, since enclave program start expects enclave.config.yaml at the CRISP root.

- Navigate to the program directory and start the program server:
+ Navigate to the CRISP example root and start the program server (expects enclave.config.yaml here):
docs/pages/CRISP/setup.mdx (1)

19-32: Add Quick Start prerequisites (Docker, Compose, pnpm) and optional pnpm install hint

The Docker-based flow requires Docker/Compose and pnpm on the host. Calling this out prevents early failures.

 ## Quick Start with Docker (Recommended)
 
-The fastest way to get CRISP running is using the scripts provided in the `scripts/` directory:
+The fastest way to get CRISP running is using the scripts provided in the `scripts/` directory.
+
+Prerequisites for this path:
+- Docker and Docker Compose
+- pnpm (or install via `npm i -g pnpm`)
+
+Then:
 
 ```sh
 cd examples/CRISP
🧹 Nitpick comments (4)
docs/pages/CRISP/running-e3.mdx (1)

72-74: Clarify config location for enclave program start

Explicitly call out that enclave program start reads enclave.config.yaml from the current directory, or show how to pass a config path, to prevent “config not found” errors.

 cd examples/CRISP/
-enclave program start 
+enclave program start
+# If your config is elsewhere, pass it explicitly:
+# enclave program start --config path/to/enclave.config.yaml
docs/pages/CRISP/setup.mdx (3)

63-63: Normalize “RISC Zero” naming and clarify optionality

Tighten wording and keep brand spelling consistent.

-- **RISC Zero toolchain** (for RISC Zero program development) - Note that you can also run the program server in dev mode which does not use Risc0.
+- **RISC Zero toolchain** (for RISC Zero program development) – Optional if you use dev mode (dev mode does not use RISC Zero).

108-109: Avoid repetition; keep one dev-mode note and standardize naming

You already mention dev mode not using RISC Zero above. Keep this note, but ensure consistent naming.

-> Optional: you can run CRISP in dev mode which does not use Risc0.
+> Optional: you can run CRISP in dev mode, which does not use RISC Zero.

190-192: Add caution about cleanup command scope

pnpm clean:deployments will remove local deployment artifacts. Add a one-liner so users don’t run it inadvertently.

-   pnpm clean:deployments
+   # Caution: removes local deployment artifacts (deployments/localhost)
+   pnpm clean:deployments
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7ccf6fa and 40d132b.

📒 Files selected for processing (3)
  • docs/pages/CRISP/introduction.mdx (0 hunks)
  • docs/pages/CRISP/running-e3.mdx (1 hunks)
  • docs/pages/CRISP/setup.mdx (4 hunks)
💤 Files with no reviewable changes (1)
  • docs/pages/CRISP/introduction.mdx
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-08-25T10:28:56.174Z
Learnt from: ctrlc03
PR: gnosisguild/enclave#657
File: Cargo.toml:32-34
Timestamp: 2025-08-25T10:28:56.174Z
Learning: The examples/CRISP directory has its own Cargo.toml workspace configuration with members like "server", "wasm-crypto", "program/core", "program/client", etc. The root workspace intentionally excludes "examples/CRISP/server", "examples/CRISP/program", and "examples/CRISP/wasm-crypto" to prevent double workspace membership, which is the correct approach for self-contained example workspaces.

Applied to files:

  • docs/pages/CRISP/running-e3.mdx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
  • GitHub Check: test_contracts
  • GitHub Check: rust_unit
  • GitHub Check: build_e3_support_risc0
  • GitHub Check: build_sdk
  • GitHub Check: build_enclave_cli
  • GitHub Check: integration_prebuild
  • GitHub Check: test_net
🔇 Additional comments (2)
docs/pages/CRISP/running-e3.mdx (1)

78-86: Which "enclave" CLI/tool do you mean? Provide the package/project name and, if possible, the version or a repo/link (e.g., "RISC Zero enclave CLI vX.Y" or the repository/PR).

docs/pages/CRISP/setup.mdx (1)

19-32: Confirmed: required scripts and scripts/ directory are present

examples/CRISP/package.json defines cli, dev:setup, dev:build, dev:up, dev:down (all referencing ./scripts/*.sh); examples/CRISP/scripts/ exists (examples/CRISP/client/package.json also has a cli).

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
examples/CRISP/Readme.md (2)

255-259: Fix README: referenced script is missing

examples/CRISP/Readme.md (lines 255–259) references ./scripts/dev_ciphernodes.sh but no file exists at examples/CRISP/scripts/dev_ciphernodes.sh or scripts/dev_ciphernodes.sh; add the script and make it executable (chmod +x) or update the README to the correct path/name.


171-173: Verify RISC Zero paths and replace zero-address placeholder

  • examples/CRISP/Readme.md (lines 171-173, 197-205): README references CRISP/lib/risc0-ethereum — repository path is examples/CRISP/lib/risc0-ethereum. Make the path unambiguous (use relative lib/risc0-ethereum from this README or the full repo path).
  • README tells the user to edit risc0/script/config.toml but no risc0/script dir exists; point to the actual config (e.g., examples/CRISP/deploy/config.toml) or add the expected directory/file.
  • The example config in the README sets riscZeroVerifierAddress = "0x0000000000000000000000000000000000000000" — replace with the deployed verifier address or clearly mark it as a placeholder.
🧹 Nitpick comments (7)
examples/CRISP/Readme.md (7)

35-36: Make RISC Zero clearly optional in dev mode; align sections.

Prerequisites list “RISC Zero toolchain (not needed for development only)” but later Step 3 says it’s optional. Mark it explicitly optional and cross-reference Step 3.

-- **RISC Zero toolchain** (not needed for development only)
+- **RISC Zero toolchain** (optional for dev mode; not required when using `pnpm dev:up`. See “Step 3: Deploy the RISC Zero Contracts”.)
-### Install RISC Zero Toolchain
+### Install RISC Zero Toolchain (optional when using dev mode)
-> Please note that this step is optional for development only. You can run the program server in dev mode which does not use Risc0. 
+> Optional for development: you can run the program server in dev mode (via `pnpm dev:up`), which does not use RISC Zero.

Also applies to: 62-72, 169-170


132-135: Fix directory name mismatch.

The text says “Navigate to the evm directory” but the path is enclave-contracts. Align wording.

-2. Navigate to the `evm` directory:
+2. Navigate to the `enclave-contracts` (EVM) directory:

253-262: Consistency and grammar: “Ciphernode(s)” casing and on-chain phrasing.

Standardize casing and fix the sentence.

-## Running Ciphernodes
+## Running Ciphernodes
@@
-This script will start the ciphernodes, add the ciphernodes to the registry on chain.
+This script starts the ciphernodes and adds them to the registry on-chain.

265-269: Avoid duplicate server start instructions.

If pnpm dev:up already starts the server, clarify that the manual cargo run --bin server step is only needed when not using dev mode.

 ## Running the CRISP Server
@@
-To run the CRISP Server, open a new terminal and navigate to the `server` directory. Then, execute the following command:
+If you used `pnpm dev:up`, the server is already running. Otherwise, to run the CRISP Server manually, open a new terminal and navigate to the `server` directory, then execute:

Also applies to: 20-26


28-28: Link to prerequisites section.

Add an anchor link for quick navigation.

-Please ensure you follow the prerequisites installation for running the protocol locally.
+Please ensure you follow the prerequisites installation for running the protocol locally (see “Prerequisites for running without Docker” below).

207-211: Use PRIVATE_KEY in the README and add a security warning.

hardhat.config.ts reads process.env.PRIVATE_KEY (packages/enclave-contracts/hardhat.config.ts:35), but the README exports ETH_WALLET_PRIVATE_KEY — make them consistent.

  • Update examples/CRISP/Readme.md (lines 207–211 and 221–251): replace export ETH_WALLET_PRIVATE_KEY=... with export PRIVATE_KEY=... (or explicitly document both names and the mapping).
  • Add a short security note in the .env/code block: "These keys are Anvil defaults for local testing only — do not reuse in staging/production or commit real secrets."
  • Optional: allow a fallback in code: const privateKey = process.env.PRIVATE_KEY ?? process.env.ETH_WALLET_PRIVATE_KEY; (packages/enclave-contracts/hardhat.config.ts:35).

20-26: Clarify path and wording in examples/CRISP/Readme.md: specify examples/CRISP, correct "two" → "three", and tighten inline comments.

File: examples/CRISP/Readme.md (Development section)

-To start the development environment, run the following commands from inside the CRISP directory:
+To start the development environment, run the following commands from inside examples/CRISP:

 ```sh
-pnpm install # install dependencies
-pnpm dev:setup # build the project
-pnpm dev:up # run the services 
+pnpm install         # install dependencies
+pnpm dev:setup       # build and prepare the local environment
+pnpm dev:up          # start all services

-The two commands above will start everything you need to run the CRISP protocol. You can then interact with it using the web application at http://localhost:3000. Please ensure you follow the prerequisites installation for running the protocol locally.
+The three commands above will start everything you need to run the CRISP protocol. You can then interact with it using the web application at http://localhost:3000. Please ensure you follow the prerequisites installation for running the protocol locally.


</blockquote></details>

</blockquote></details>

<details>
<summary>📜 Review details</summary>

**Configuration used**: CodeRabbit UI

**Review profile**: CHILL

**Plan**: Pro

<details>
<summary>📥 Commits</summary>

Reviewing files that changed from the base of the PR and between 40d132b248a20fb08c393df40f9f801d8c26b126 and 90d278818e1694e646803e5bb72eb40713d0a7ff.

</details>

<details>
<summary>📒 Files selected for processing (5)</summary>

* `docs/pages/CRISP/introduction.mdx` (0 hunks)
* `docs/pages/CRISP/running-e3.mdx` (1 hunks)
* `docs/pages/CRISP/setup.mdx` (4 hunks)
* `examples/CRISP/Readme.md` (1 hunks)
* `examples/CRISP/contracts/README.md` (1 hunks)

</details>

<details>
<summary>💤 Files with no reviewable changes (1)</summary>

* docs/pages/CRISP/introduction.mdx

</details>

<details>
<summary>✅ Files skipped from review due to trivial changes (1)</summary>

* examples/CRISP/contracts/README.md

</details>

<details>
<summary>🚧 Files skipped from review as they are similar to previous changes (2)</summary>

* docs/pages/CRISP/running-e3.mdx
* docs/pages/CRISP/setup.mdx

</details>

<details>
<summary>⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)</summary>

* GitHub Check: build_enclave_cli
* GitHub Check: test_contracts
* GitHub Check: build_sdk
* GitHub Check: integration_prebuild
* GitHub Check: rust_unit
* GitHub Check: test_net

</details>

</details>

<!-- This is an auto-generated comment by CodeRabbit for review status -->

@ctrlc03 ctrlc03 force-pushed the docs/crisp-hosted-docs branch from 90d2788 to 1e1bf38 Compare September 12, 2025 13:58
@vercel vercel Bot temporarily deployed to Preview – crisp September 12, 2025 13:58 Inactive
@ctrlc03 ctrlc03 enabled auto-merge (squash) September 12, 2025 13:58
@ctrlc03 ctrlc03 merged commit 1dcb102 into main Sep 12, 2025
24 checks passed
@github-actions github-actions Bot deleted the docs/crisp-hosted-docs branch September 20, 2025 03:02
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.

Ensure CRISP documentation is up to date

2 participants