Skip to content

Fix build CI by downgrading zod and adding reactCompilerPreset#53

Merged
nickcomua merged 2 commits into
mainfrom
fix-build-ci
May 28, 2026
Merged

Fix build CI by downgrading zod and adding reactCompilerPreset#53
nickcomua merged 2 commits into
mainfrom
fix-build-ci

Conversation

@nickcomua

@nickcomua nickcomua commented May 28, 2026

Copy link
Copy Markdown
Owner

Downgrade zod to ^3.24.2, upgrade vite to ^8.0.0, upgrade @vitejs/plugin-react to ^6.0.2, and add @rolldown/plugin-babel to fix build CI and support reactCompilerPreset.

Summary by Sourcery

Adjust dependencies and environment configuration to restore build CI compatibility and support the React compiler preset.

Enhancements:

  • Update backend environment schema to explicitly validate CLERK_JWT_ISSUER_DOMAIN as a string URL before normalization.

Build:

  • Downgrade zod to ^3.24.2 across web and backend packages to match tooling expectations.
  • Align frontend build tooling by setting vite to ^8.0.0 and bumping @vitejs/plugin-react to ^6.0.2.

Summary by CodeRabbit

  • Chores
    • Updated development and build dependencies across the project for improved tooling and performance
    • Enhanced server-side validation configuration for improved reliability

Review Change Stack

@sourcery-ai

sourcery-ai Bot commented May 28, 2026

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Aligns runtime and build tooling to work with React compiler by downgrading zod to v3 across apps, slightly adjusting Vite and @vitejs/plugin-react versions, updating the Convex env schema to the zod v3 API, and regenerating the Bun lockfile.

File-Level Changes

Change Details Files
Standardize on zod v3.24.2 to restore compatibility with existing code and tooling.
  • Downgraded zod dependency in the CRM chat web package from v4.3.6 to v3.24.2.
  • Downgraded zod dependency in the Convex backend package from v4.2.1 to v3.24.2.
bins/crm-chat-web/package.json
bins/convex-backend/package.json
Adjust frontend build tooling versions to match React compiler requirements and stabilize CI.
  • Bumped @vitejs/plugin-react from ^6.0.1 to ^6.0.2 in the CRM chat web package.
  • Pinned vite to ^8.0.0 (from ^8.0.10) in the CRM chat web package to align with compatible version range for the React compiler preset and new plugins.
bins/crm-chat-web/package.json
Update Convex backend environment schema to use the zod v3 API.
  • Explicitly added .string() before .url() in the env schema so CLERK_JWT_ISSUER_DOMAIN is defined as z.string().url().transform(...), which is required in zod v3.
bins/convex-backend/convex/env.ts
Refresh Bun lockfile to reflect updated dependency versions.
  • Regenerated bun.lock to capture the downgraded zod versions and updated frontend tooling versions.
bun.lock

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

@coderabbitai

coderabbitai Bot commented May 28, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 1cd92afc-40fa-4f7f-9625-94cc8ce7c0a8

📥 Commits

Reviewing files that changed from the base of the PR and between 8d5ad6e and 7523449.

⛔ Files ignored due to path filters (3)
  • bins/convex-backend/bun.lock is excluded by !**/*.lock
  • bins/crm-chat-web/bun.lock is excluded by !**/*.lock
  • bun.lock is excluded by !**/*.lock
📒 Files selected for processing (5)
  • bins/convex-backend/bun.nix
  • bins/convex-backend/convex/env.ts
  • bins/convex-backend/package.json
  • bins/crm-chat-web/bun.nix
  • bins/crm-chat-web/package.json

Walkthrough

This PR downgrades Zod to version ^3.24.2 across the backend and web packages and updates the CLERK_JWT_ISSUER_DOMAIN schema to explicitly validate the input as a string before URL parsing. Supporting dependencies and the Nix lock file are updated to match.

Changes

Zod Downgrade and Dependency Updates

Layer / File(s) Summary
Zod Schema Validation and Package Downgrades
bins/convex-backend/convex/env.ts, bins/convex-backend/package.json, bins/crm-chat-web/package.json
Add .string() validation to CLERK_JWT_ISSUER_DOMAIN Zod schema before .url() parsing; downgrade Zod to ^3.24.2 in both backend and web packages.
Build Tool and Plugin Version Updates
bins/crm-chat-web/package.json
Bump @vitejs/plugin-react to ^6.0.2 and downgrade vite to ^8.0.0.
Nix Lock File Synchronization
bins/convex-backend/bun.nix
Update autogenerated dependency lock entries for Zod, build tools, React, PostCSS, type definitions, ESLint packages, and utility libraries across approximately 50+ npm packages.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

🐰 A rabbit hops through versions past,
Zod shrinks down, but holds quite fast,
With .string() guards we validate,
Lock files sync—dependencies align just straight!

🚥 Pre-merge checks | ✅ 5
✅ 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 'Fix build CI by downgrading zod and adding reactCompilerPreset' accurately reflects the main objectives of the PR, covering the key dependency downgrades and tooling additions.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix-build-ci

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.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Hey - I've left some high level feedback:

  • Since Zod is being downgraded from v4 to v3 across packages, double‑check for any other v4‑only APIs or behaviors (e.g., schema helpers or error shapes) that might now break at runtime and consider adding explicit type guards where assumptions changed.
  • In convex/env.ts, the CLERK_JWT_ISSUER_DOMAIN schema now explicitly uses z.string().url(); if this is meant to enforce presence and format at startup, consider also validating against empty/whitespace-only strings or documenting that non-URL values will fail at boot rather than later in the request lifecycle.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- Since Zod is being downgraded from v4 to v3 across packages, double‑check for any other v4‑only APIs or behaviors (e.g., schema helpers or error shapes) that might now break at runtime and consider adding explicit type guards where assumptions changed.
- In `convex/env.ts`, the `CLERK_JWT_ISSUER_DOMAIN` schema now explicitly uses `z.string().url()`; if this is meant to enforce presence and format at startup, consider also validating against empty/whitespace-only strings or documenting that non-URL values will fail at boot rather than later in the request lifecycle.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@coderabbitai

coderabbitai Bot commented May 28, 2026

Copy link
Copy Markdown

Actionable comments posted: 0

@nickcomua
nickcomua merged commit 1090d80 into main May 28, 2026
5 checks passed
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