Skip to content

chore: update vercel install command#1015

Merged
ctrlc03 merged 11 commits into
mainfrom
chore/crisp-script-deployment
Nov 13, 2025
Merged

chore: update vercel install command#1015
ctrlc03 merged 11 commits into
mainfrom
chore/crisp-script-deployment

Conversation

@cedoor

@cedoor cedoor commented Nov 13, 2025

Copy link
Copy Markdown
Contributor

Closes #999

Instead of adding a custom deployment script for Vercel, this PR introduces the pnpm link-workspace-packages option. This allows the workspace to link the local package even when a static version is defined. On Vercel, this option is simply disabled, so the published npm package is used instead.

It also adds wasm-pack as an npm dependency, which is far easier to maintain than relying on external binaries. A few script improvements were included as well to streamline the workflow.

Summary by CodeRabbit

  • Chores
    • Updated build and packaging scripts across examples to streamline circuit compilation and wasm build steps.
    • Added tooling and dev-dependencies to support wasm workflows.
    • Added project-specific install/configuration file to standardize installs.
    • Improved publish pipeline to update client dependency and enhance logging/error handling.
  • Style
    • Minor formatting and stylistic cleanups in publish tooling.

@vercel

vercel Bot commented Nov 13, 2025

Copy link
Copy Markdown

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

Project Deployment Preview Comments Updated (UTC)
crisp Ready Ready Preview Comment Nov 13, 2025 8:09pm
1 Skipped Deployment
Project Deployment Preview Comments Updated (UTC)
enclave-docs Skipped Skipped Nov 13, 2025 8:09pm

@coderabbitai

coderabbitai Bot commented Nov 13, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

Adds Vercel and npm client config, introduces wasm-pack devDependency, centralizes circuit compilation into a shell script, updates several package.json scripts to call the new compile step, and extends the CRISP publish script to update the client package's @crisp-e3/sdk dependency during releases.

Changes

Cohort / File(s) Summary
Deployment config
examples/CRISP/client/vercel.json, examples/CRISP/client/.npmrc
Add Vercel install command (pnpm install --no-link-workspace-packages --no-lockfile) and set link-workspace-packages=true in client npm config.
WASM tooling
crates/wasm/package.json, examples/CRISP/packages/crisp-zk-inputs/package.json
Add wasm-pack: "^0.13.1" as a devDependency; remove compile:circuit from crisp-zk-inputs and simplify its build script to drop the circuit compile step.
Circuit compilation centralization
examples/CRISP/package.json, examples/CRISP/packages/crisp-sdk/package.json, examples/CRISP/scripts/compile_circuits.sh
Replace inline nargo invocation with a dedicated scripts/compile_circuits.sh; add compile:circuit script to crisp-sdk and chain it into its build and test scripts; update compile script to generate verifier and prepend LGPL-3.0-only header.
Publish workflow
examples/CRISP/scripts/publish.ts
Add private updateClientDependency() to CRISPPublisher and invoke it during publishAll; update messaging, error handling, and file I/O to synchronize client/package.json @crisp-e3/sdk version with published SDK.

Sequence Diagram(s)

sequenceDiagram
    participant Dev as Developer
    participant Publish as publish.ts
    participant Registry as npm Registry
    participant Git as Git
    participant ClientPkg as client/package.json

    Dev->>Publish: pnpm publish (runs publishAll)
    Publish->>Publish: build workspace (including wasm & sdk)
    Publish->>Registry: publish packages
    Publish->>Git: create commit & tag
    Note over Publish,ClientPkg: NEW — sync client dependency
    Publish->>ClientPkg: read package.json
    Publish->>ClientPkg: set `@crisp-e3/sdk` to new version
    Publish->>ClientPkg: write package.json
    Publish->>Dev: report completion
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Pay attention to:
    • updateClientDependency() file I/O and version parsing/assignment in publish.ts
    • correctness of the LGPL header insertion and file rewrite in compile_circuits.sh
    • effects of centralizing circuit compilation on CI/developer workflows (script paths and environment expectations)

Possibly related PRs

Suggested reviewers

  • ctrlc03

Poem

🐇 In circuits now one neat parade,
Scripts align and licenses laid,
Wasm wheels turn, the SDK's tied,
Client and publish walk side by side,
A tiny hop — CRISP builds made!

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title mentions 'vercel deployment script' but the changeset involves broader infrastructure changes including build automation, workspace linking, and wasm-pack integration beyond just Vercel deployment. Consider a more descriptive title like 'chore: setup CRISP client deployment with workspace linking and wasm-pack' to better reflect all changes.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed All objectives from issue #999 are addressed: workspace linking enabled via pnpm options, wasm-pack added as npm dependency, build scripts updated to compile dependent packages, and Vercel configuration added to automate deployment.
Out of Scope Changes check ✅ Passed All changes are directly scoped to issue #999 objectives: workspace configuration, build automation, wasm-pack integration, and Vercel deployment setup; formatting updates in publish.ts align with code quality improvements for deployment consistency.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chore/crisp-script-deployment

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 33ee4d5 and 41ebc76.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (1)
  • examples/CRISP/client/vercel.json (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • examples/CRISP/client/vercel.json
⏰ 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)
  • GitHub Check: template_integration
  • GitHub Check: crisp_e2e
  • GitHub Check: integration_prebuild
  • GitHub Check: rust_unit
  • GitHub Check: rust_integration
  • GitHub Check: Build & Push Image

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: 1

🧹 Nitpick comments (1)
examples/CRISP/scripts/vercel-install.sh (1)

9-28: Add error handling for download and extraction failures.

The script lacks safeguards against download or extraction failures. If a curl command fails silently or a tar extraction encounters corrupted data, the script continues with set -e relying only on non-zero exit codes. Add explicit checks for critical operations.

Consider adding checks for download success and file integrity:

  # NARGO
  if [ ! -x "$TOOLS_DIR/nargo" ]; then
    echo "Downloading nargo..."
    NARGO_VERSION="v1.0.0-beta.3"
-   curl -L "https://github.com/noir-lang/noir/releases/download/${NARGO_VERSION}/nargo-x86_64-unknown-linux-musl.tar.gz" \
-     | tar -xz -C "$TOOLS_DIR"
+   NARGO_URL="https://github.com/noir-lang/noir/releases/download/${NARGO_VERSION}/nargo-x86_64-unknown-linux-musl.tar.gz"
+   if ! curl -fL "$NARGO_URL" | tar -xz -C "$TOOLS_DIR"; then
+     echo "Failed to download or extract nargo" >&2
+     exit 1
+   fi
    chmod +x "$TOOLS_DIR/nargo"
  fi

Also standardize the download approach (wasm-pack uses curl -o while nargo pipes directly—pick one pattern for consistency).

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 059b50c and 65d257c.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (3)
  • examples/CRISP/client/package.json (1 hunks)
  • examples/CRISP/client/vercel.json (1 hunks)
  • examples/CRISP/scripts/vercel-install.sh (1 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 963
File: examples/CRISP/client/package.json:25-25
Timestamp: 2025-11-05T14:12:57.814Z
Learning: In the Enclave/CRISP codebase, `enclave-e3/sdk` and `crisp-e3/sdk` are different packages: `enclave-e3/sdk` is the general Enclave SDK, while `crisp-e3/sdk` is the CRISP-specific SDK. The CRISP client (`examples/CRISP/client`) intentionally depends on `enclave-e3/sdk`, not `crisp-e3/sdk`.
📚 Learning: 2025-10-29T23:35:30.146Z
Learnt from: ryardley
Repo: gnosisguild/enclave PR: 936
File: scripts/run-crisp-test.sh:1-3
Timestamp: 2025-10-29T23:35:30.146Z
Learning: In the scripts/run-crisp-test.sh file, the use of `rm -rf *` is acceptable as it's intentionally designed as a definitive reset-and-test script for clean checkouts.

Applied to files:

  • examples/CRISP/scripts/vercel-install.sh
📚 Learning: 2025-11-05T14:12:57.814Z
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 963
File: examples/CRISP/client/package.json:25-25
Timestamp: 2025-11-05T14:12:57.814Z
Learning: In the Enclave/CRISP codebase, `enclave-e3/sdk` and `crisp-e3/sdk` are different packages: `enclave-e3/sdk` is the general Enclave SDK, while `crisp-e3/sdk` is the CRISP-specific SDK. The CRISP client (`examples/CRISP/client`) intentionally depends on `enclave-e3/sdk`, not `crisp-e3/sdk`.

Applied to files:

  • examples/CRISP/client/package.json
📚 Learning: 2025-08-25T10:28:56.174Z
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 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:

  • examples/CRISP/client/package.json
⏰ 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). (8)
  • GitHub Check: build_sdk
  • GitHub Check: build_e3_support_dev
  • GitHub Check: rust_unit
  • GitHub Check: build_enclave_cli
  • GitHub Check: integration_prebuild
  • GitHub Check: test_net
  • GitHub Check: rust_integration
  • GitHub Check: test_contracts
🔇 Additional comments (2)
examples/CRISP/client/package.json (1)

22-22: Dependency conflict: @crisp-e3/sdk vs @enclave-e3/sdk based on prior learning.

A recent learning from PR 963 (2025-11-05) explicitly states that the CRISP client should depend on @enclave-e3/sdk, not @crisp-e3/sdk. However, the current code depends on @crisp-e3/sdk. These are different packages:

  • @enclave-e3/sdk is in packages/enclave-sdk/package.json
  • @crisp-e3/sdk is in examples/CRISP/packages/crisp-sdk/package.json

Verify whether this change to @crisp-e3/sdk is intentional or if the dependency should remain @enclave-e3/sdk per the documented design decision.

examples/CRISP/client/vercel.json (1)

3-3: Review comment is based on incorrect assumptions about Vercel's working directory behavior.

Vercel sets the working directory to the project's Root Directory, which for this nested project is examples/CRISP/client/ where vercel.json is located. Both the install and build commands execute from this same directory:

  • Install phase: bash ../scripts/vercel-install.sh runs from examples/CRISP/client/, creating .vercel/cache/tools relative to this CWD
  • Build phase: export PATH=.vercel/cache/tools:$PATH runs from the same CWD, resolving to the tools created in the install phase

The relative path is consistent across both phases and resolves correctly. The configuration is correct as-is.

Likely an incorrect or invalid review comment.

Comment thread examples/CRISP/scripts/vercel-install.sh Outdated
@vercel vercel Bot temporarily deployed to Preview – crisp November 13, 2025 17:41 Inactive
@vercel vercel Bot temporarily deployed to Preview – enclave-docs November 13, 2025 17:41 Inactive

@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

🧹 Nitpick comments (1)
examples/CRISP/scripts/compile_circuits.sh (1)

42-42: Optional: Add cleanup trap for temp file on error.

While the temp file created by mktemp is stored in the system temp directory and will eventually be cleaned, adding an explicit cleanup handler makes the script more robust:

+TEMP_FILE=$(mktemp)
+trap "rm -f '$TEMP_FILE'" EXIT
 {
     echo "$LICENSE_HEADER"
     tail -n +3 packages/crisp-contracts/contracts/CRISPVerifier.sol
 } > "$TEMP_FILE"

This ensures the temp file is removed even if the script exits unexpectedly.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 65d257c and 5212f83.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (6)
  • crates/wasm/package.json (1 hunks)
  • examples/CRISP/client/vercel.json (1 hunks)
  • examples/CRISP/package.json (1 hunks)
  • examples/CRISP/packages/crisp-zk-inputs/package.json (1 hunks)
  • examples/CRISP/scripts/compile_circuits.sh (1 hunks)
  • examples/CRISP/scripts/vercel-install.sh (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • examples/CRISP/client/vercel.json
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 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.
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 963
File: examples/CRISP/client/package.json:25-25
Timestamp: 2025-11-05T14:12:57.814Z
Learning: In the Enclave/CRISP codebase, `enclave-e3/sdk` and `crisp-e3/sdk` are different packages: `enclave-e3/sdk` is the general Enclave SDK, while `crisp-e3/sdk` is the CRISP-specific SDK. The CRISP client (`examples/CRISP/client`) intentionally depends on `enclave-e3/sdk`, not `crisp-e3/sdk`.
⏰ 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). (9)
  • GitHub Check: build_e3_support_dev
  • GitHub Check: test_net
  • GitHub Check: build_sdk
  • GitHub Check: integration_prebuild
  • GitHub Check: build_enclave_cli
  • GitHub Check: rust_integration
  • GitHub Check: test_contracts
  • GitHub Check: rust_unit
  • GitHub Check: Build & Push Image
🔇 Additional comments (6)
crates/wasm/package.json (1)

65-69: ✓ Appropriate addition of wasm-pack tooling.

Adding wasm-pack as a devDependency aligns with the PR objectives to enable in-repo WASM builds. The version constraint ^0.13.1 allows flexibility for patch/minor updates while maintaining stability.

examples/CRISP/packages/crisp-zk-inputs/package.json (1)

32-36: ✓ Consistent wasm-pack dependency across CRISP packages.

The version ^0.13.1 matches the addition in crates/wasm/package.json, ensuring consistent tooling versions across the monorepo for WASM builds.

examples/CRISP/scripts/vercel-install.sh (2)

1-20: ✓ Vercel installation script is well-structured.

The script uses strict error handling (set -euo pipefail), downloads nargo from the official noir-lang repository, and includes defensive checks (idempotent download). The verification step at line 19 confirms successful installation before reporting success.


11-11: Verify that nargo v1.0.0-beta.3 is the intended version for production Vercel deployments.

The script pins nargo to a beta release. Consider whether a stable release is more appropriate for production deployments, or if the beta version is intentional for CRISP's current development stage.

examples/CRISP/scripts/compile_circuits.sh (1)

34-47: ✓ Safe file rewriting pattern with proper SPDX license header.

The temp file + atomic rename pattern at lines 42–47 is the standard approach for safe in-place file updates. The license header format is correct (SPDX-License-Identifier: LGPL-3.0-only), and tail -n +3 correctly skips the auto-generated Apache license from the first two lines.

examples/CRISP/package.json (1)

24-24: ✓ Compilation pipeline refactored for maintainability.

Delegating the compile:circuit command to a dedicated bash script improves separation of concerns and enables future enhancements to the compilation and post-processing pipeline (e.g., license header injection) without modifying package.json.

@vercel vercel Bot temporarily deployed to Preview – enclave-docs November 13, 2025 19:51 Inactive

@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

🧹 Nitpick comments (1)
examples/CRISP/scripts/publish.ts (1)

278-278: Consider using unknown instead of any for better type safety.

The any type bypasses TypeScript's type checking. Consider using unknown or Error for the error parameter.

-    } catch (error: any) {
+    } catch (error: unknown) {
       console.error("❌ Error during git operations:", error.message);

Note: You'll need to add a type guard to access error.message safely:

} catch (error: unknown) {
  const message = error instanceof Error ? error.message : String(error);
  console.error("❌ Error during git operations:", message);
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 5212f83 and 33ee4d5.

⛔ Files ignored due to path filters (2)
  • examples/CRISP/client/pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (5)
  • examples/CRISP/client/.npmrc (1 hunks)
  • examples/CRISP/client/vercel.json (1 hunks)
  • examples/CRISP/packages/crisp-sdk/package.json (1 hunks)
  • examples/CRISP/packages/crisp-zk-inputs/package.json (1 hunks)
  • examples/CRISP/scripts/publish.ts (5 hunks)
✅ Files skipped from review due to trivial changes (1)
  • examples/CRISP/client/.npmrc
🚧 Files skipped from review as they are similar to previous changes (2)
  • examples/CRISP/client/vercel.json
  • examples/CRISP/packages/crisp-zk-inputs/package.json
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 963
File: examples/CRISP/client/package.json:25-25
Timestamp: 2025-11-05T14:12:57.814Z
Learning: In the Enclave/CRISP codebase, `enclave-e3/sdk` and `crisp-e3/sdk` are different packages: `enclave-e3/sdk` is the general Enclave SDK, while `crisp-e3/sdk` is the CRISP-specific SDK. The CRISP client (`examples/CRISP/client`) intentionally depends on `enclave-e3/sdk`, not `crisp-e3/sdk`.
📚 Learning: 2025-11-05T14:12:57.814Z
Learnt from: ctrlc03
Repo: gnosisguild/enclave PR: 963
File: examples/CRISP/client/package.json:25-25
Timestamp: 2025-11-05T14:12:57.814Z
Learning: In the Enclave/CRISP codebase, `enclave-e3/sdk` and `crisp-e3/sdk` are different packages: `enclave-e3/sdk` is the general Enclave SDK, while `crisp-e3/sdk` is the CRISP-specific SDK. The CRISP client (`examples/CRISP/client`) intentionally depends on `enclave-e3/sdk`, not `crisp-e3/sdk`.

Applied to files:

  • examples/CRISP/packages/crisp-sdk/package.json
🧬 Code graph analysis (1)
examples/CRISP/scripts/publish.ts (1)
examples/CRISP/crates/zk-inputs-wasm/src/lib.rs (1)
  • version (131-133)
⏰ 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). (9)
  • GitHub Check: build_e3_support_dev
  • GitHub Check: build_enclave_cli
  • GitHub Check: build_sdk
  • GitHub Check: integration_prebuild
  • GitHub Check: test_net
  • GitHub Check: rust_integration
  • GitHub Check: rust_unit
  • GitHub Check: test_contracts
  • GitHub Check: Build & Push Image
🔇 Additional comments (4)
examples/CRISP/packages/crisp-sdk/package.json (1)

24-24: Script chaining looks good; verify toolchain availability.

The updated build and test scripts correctly chain build:wasmcompile:circuit → final compilation steps, with proper failure propagation via &&. The ordering ensures WASM artifacts are ready before circuits compile.

However, these scripts now require nargo to be available on the system. Per the PR objectives, a deployment setup script should install required toolchains (Rust, Nargo, wasm-pack).

Please verify:

  1. The deployment script (mentioned in issue #999 objectives) properly installs nargo and other required tools.
  2. The path ../../circuits correctly resolves to the circuit directory in your monorepo structure.
  3. The ../crisp-zk-inputs package has a valid build script defined.

If tool installation fails on deployment, the error message should clearly indicate which toolchain is missing. Consider adding setup documentation or validation checks.

Also applies to: 26-27

examples/CRISP/scripts/publish.ts (3)

7-14: LGTM! Clean ES module setup.

The imports and ES module __dirname setup are correct and follow best practices for TypeScript ESM scripts.


42-143: LGTM! Well-orchestrated publish flow.

The integration of the client dependency update step is well-placed in the sequence:

  1. Bump package versions
  2. Update client dependency (new)
  3. Update lock files
  4. Build and publish

The dry-run and success messaging correctly reflects this additional step.


380-421: I need to investigate further. The script output reveals a conflict with the learning: the client actually depends on @crisp-e3/sdk, which is what the script updates. However, the learning states it should depend on enclave-e3/sdk. Let me verify the broader context.

Let me check the publish script context to understand what's being published and whether the dependency choice is intentional:

The web search results don't contain information about the project-specific @crisp-e3/sdk or @enclave-e3/sdk packages. These appear to be internal to the Enclave project. Let me check the broader context within the publish script to understand what it's publishing and whether the client should be using a different SDK:

Based on my verification, the actual state of the client dependencies contradicts the retrieved learning. The client currently depends on @crisp-e3/sdk, which is what the script updates—so the script logic is correct for the current package state. However, the learning indicates the CRISP client should intentionally depend on enclave-e3/sdk instead.

This represents either an outdated learning, an intentional change, or a misconfiguration in the client dependencies. Since the packages appear to be project-specific and not publicly documented, I cannot definitively resolve this conflict through web search.


Verify that the CRISP client should depend on @crisp-e3/sdk and not @enclave-e3/sdk.

The script correctly updates the current @crisp-e3/sdk dependency in client/package.json (Line 401, 404). However, retrieved learnings indicate the CRISP client should intentionally depend on enclave-e3/sdk (the general Enclave SDK), not @crisp-e3/sdk (the CRISP-specific SDK).

The script will execute successfully as-is because @crisp-e3/sdk exists in client/package.json. Confirm whether:

  1. The client should actually be using @crisp-e3/sdk (CRISP-specific), or
  2. It should be using @enclave-e3/sdk (general Enclave SDK)—in which case the script needs adjustment

Additionally, Line 404 sets exact version pinning without ^ or ~ prefix. Verify if this is intentional.

Comment thread examples/CRISP/package.json
Comment thread examples/CRISP/scripts/publish.ts
@cedoor cedoor requested review from ctrlc03 and ryardley November 13, 2025 19:56
@cedoor cedoor marked this pull request as draft November 13, 2025 19:57
@vercel vercel Bot temporarily deployed to Preview – enclave-docs November 13, 2025 20:07 Inactive
@cedoor cedoor marked this pull request as ready for review November 13, 2025 20:10

@ctrlc03 ctrlc03 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

utACK

@ctrlc03 ctrlc03 merged commit be22c4f into main Nov 13, 2025
25 checks passed
@cedoor cedoor changed the title chore: add vercel deployment script chore: update vercel install command Nov 13, 2025
@github-actions github-actions Bot deleted the chore/crisp-script-deployment branch November 21, 2025 02:47
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.

Add setup script for CRISP client deployment

2 participants