Skip to content

Comments

Fix React Server Components CVE vulnerabilities#194

Merged
sidneyswift merged 1 commit intomainfrom
vercel/react-server-components-cve-vu-raqdl6
Feb 3, 2026
Merged

Fix React Server Components CVE vulnerabilities#194
sidneyswift merged 1 commit intomainfrom
vercel/react-server-components-cve-vu-raqdl6

Conversation

@vercel
Copy link
Contributor

@vercel vercel bot commented Feb 3, 2026

Important

This is an automatic PR generated by Vercel to help you with patching efforts. We can't guarantee it's comprehensive, and it may contain mistakes. Please review our guidance before merging these changes.

A critical remote code execution (RCE) vulnerability in React Server Components, impacting frameworks such as Next.js, was identified in the project recoup-api. The vulnerability enables unauthenticated RCE on the server via insecure deserialization in the React Flight protocol.

This issue is tracked under:

This automated pull request upgrades the affected React and Next.js packages to patched versions that fully remediate the issue.

More Info | [email protected]

Updated dependencies to fix Next.js and React CVE vulnerabilities.

The fix-react2shell-next tool automatically updated the following packages to their secure versions:
- next
- react-server-dom-webpack
- react-server-dom-parcel  
- react-server-dom-turbopack

All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory.

Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
@vercel
Copy link
Contributor Author

vercel bot commented Feb 3, 2026

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

Project Deployment Actions Updated (UTC)
recoup-api Ready Ready Preview Feb 3, 2026 3:19am

@coderabbitai
Copy link

coderabbitai bot commented Feb 3, 2026

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • 🔍 Trigger a full review

Important

Action Needed: IP Allowlist Update

If your organization protects your Git platform with IP whitelisting, please add the new CodeRabbit IP address to your allowlist:

  • 136.113.208.247/32 (new)
  • 34.170.211.100/32
  • 35.222.179.152/32

Failure to add the new IP will result in interrupted reviews.


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

@github-actions
Copy link

github-actions bot commented Feb 3, 2026

Braintrust eval report

Catalog Opportunity Analysis Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Catalog_availability 31.1% (+31pp) 4 🟢 -
Llm_calls 0 (+0) - -
Tool_calls 0 (+0) - -
Errors 0 (+0) - -
Llm_errors 0 (+0) - -
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 40.35s (+39.21s) - 5 🔴

Catalog Songs Count Evaluation (HEAD-1770088739)

Score Average Improvements Regressions
Llm_calls 4 (+0) - -
Tool_calls 0 (+0) - -
Errors 3 (+3) - 3 🔴
Llm_errors 1 (+1) - 3 🔴
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 12.08s (+11s) - 3 🔴

First Week Album Sales Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Llm_calls 1 (+0) - -
Tool_calls 0 (+0) - -
Errors 1 (+1) - 4 🔴
Llm_errors 0 (+0) - -
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 11.61s (+10.47s) - 4 🔴

Memory & Storage Tools Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Tools_called 0% (+0pp) - -
Llm_calls 0 (+0) - -
Tool_calls 0 (+0) - -
Errors 0 (+0) - -
Llm_errors 0 (+0) - -
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 15.27s (+14.36s) - 1 🔴

Monthly Listeners Tracking Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Llm_calls 2 (+0) - -
Tool_calls 0 (+0) - -
Errors 2 (+2) - 5 🔴
Llm_errors 1 (+1) - 5 🔴
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 12.48s (+11.46s) - 5 🔴

Search Web Tool Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Llm_calls 3 (+0) - -
Tool_calls 0 (+0) - -
Errors 2 (+2) - 11 🔴
Llm_errors 1 (+1) - 11 🔴
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 21.42s (+20.32s) - 11 🔴

Social Scraping Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Tools_called 0% (+0pp) - -
Llm_calls 0 (+0) - -
Tool_calls 0 (+0) - -
Errors 0 (+0) - -
Llm_errors 0 (+0) - -
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 20.7s (+19.58s) - 6 🔴

Spotify Followers Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Llm_calls 2.4 (-0.6) - 1 🔴
Tool_calls 0 (+0) - -
Errors 2 (+1) - 5 🔴
Llm_errors 0.8 (+0.8) - 4 🔴
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 11.33s (+10.47s) - 5 🔴

Spotify Tools Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Tools_called 0% (+0pp) - -
Llm_calls 0 (+0) - -
Tool_calls 0 (+0) - -
Errors 0 (+0) - -
Llm_errors 0 (+0) - -
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 23.46s (+22.38s) - 2 🔴

TikTok Analytics Questions Evaluation (HEAD-1770088738)

Score Average Improvements Regressions
Question_answered 0% (+0pp) - -
Llm_calls 0 (+0) - -
Tool_calls 0 (+0) - -
Errors 0 (+0) - -
Llm_errors 0 (+0) - -
Tool_errors 0 (+0) - -
Prompt_tokens 0tok (+0tok) - -
Prompt_cached_tokens 0tok (+0tok) - -
Prompt_cache_creation_tokens 0tok (+0tok) - -
Completion_tokens 0tok (+0tok) - -
Completion_reasoning_tokens 0tok (+0tok) - -
Total_tokens 0tok (+0tok) - -
Duration 13.77s (+12.68s) - 2 🔴

@sidneyswift sidneyswift marked this pull request as ready for review February 3, 2026 14:33
@sidneyswift sidneyswift merged commit a35dc10 into main Feb 3, 2026
5 checks passed
sweetmantech added a commit that referenced this pull request Feb 3, 2026
* Fix React Server Components CVE vulnerabilities (#194)

Updated dependencies to fix Next.js and React CVE vulnerabilities.

The fix-react2shell-next tool automatically updated the following packages to their secure versions:
- next
- react-server-dom-webpack
- react-server-dom-parcel  
- react-server-dom-turbopack

All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory.

Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>

* feat: update POST /api/sandboxes to use command execution

- Change request body from { prompt } to { command, args?, cwd? }
- Add account snapshot support for creating sandboxes from snapshots
- Update trigger payload to include command, args, cwd, sandboxId, accountId
- Return runId in response from triggered task
- Update tests to reflect new API structure

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* fix: use correct source parameter for snapshot in Sandbox.create

The Vercel Sandbox SDK requires snapshotId to be passed via the source
parameter with type: 'snapshot', not as a direct property.

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* test: update triggerRunSandboxCommand tests to use command payload

Update test payloads to match new API: command, args, cwd, sandboxId, accountId

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* refactor: use CreateSandboxParams from @vercel/sandbox SDK

- Export CreateSandboxParams type extracted from Sandbox.create signature
- Accept full SDK params instead of custom snapshotId option
- Apply sensible defaults for timeout, resources, and runtime
- Update handler to pass source object for snapshots
- Add tests for new parameter combinations

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* fix: handle union type for CreateSandboxParams

Use 'in' operator to check for runtime/resources properties since
they don't exist on the snapshot variant of the union type.

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* fix: simplify createSandbox to spread defaults before params

Spread defaults first, then override with params. This avoids
type conflicts between snapshot and base param variants.

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* fix: handle trigger failure gracefully and always return response

- Wrap triggerRunSandboxCommand in try-catch to prevent hanging
- Return 200 with sandbox info even if trigger fails (runId omitted)
- Update JSDoc to document new command/args/cwd request format
- Update tests to reflect new graceful failure behavior

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* debug: add extensive logging to trace request flow

Add console.log at each step to identify where the request is hanging:
- Request received
- Validation
- Snapshot lookup
- Sandbox creation
- DB insert
- Task trigger
- Response building

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* chore: remove debug logging

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* refactor: rename selectAccountSnapshot.ts to selectAccountSnapshots.ts

Follow the select[TableName].ts naming convention where the table name
is account_snapshots (plural). Function name unchanged.

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* refactor: rename function to selectAccountSnapshots and return array

- Rename function from selectAccountSnapshot to selectAccountSnapshots
- Remove .limit(1).single() to return full array
- Update handler to get first element from array
- Update tests with new function name and array return values

Co-Authored-By: Claude Opus 4.5 <[email protected]>

* refactor: use Tables type from Supabase schema for account_snapshots

- Regenerate types with supabase gen types to include account_snapshots table
- Replace local AccountSnapshot interface with Tables<"account_snapshots">
- DRY: single source of truth for type definitions

Co-Authored-By: Claude Opus 4.5 <[email protected]>

---------

Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com>
Co-authored-by: Vercel <vercel[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <[email protected]>
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.

2 participants