Skip to content

chore: migrate monorepo to pnpm and update configurations#71

Merged
harshlocham merged 8 commits into
mainfrom
chore/pnpm-foundation-migration
May 19, 2026
Merged

chore: migrate monorepo to pnpm and update configurations#71
harshlocham merged 8 commits into
mainfrom
chore/pnpm-foundation-migration

Conversation

@harshlocham
Copy link
Copy Markdown
Owner

  • Replaced npm with pnpm as the package manager across the project.
  • Updated package.json scripts to use pnpm commands.
  • Added .nvmrc for Node.js version management.
  • Modified Dockerfiles to support pnpm installation and build processes.
  • Removed package-lock.json files and added pnpm-lock.yaml for dependency management.
  • Updated .github workflows to utilize pnpm for dependency installation and caching.
  • Adjusted workspace dependencies to use "workspace:*" for better compatibility with pnpm.

harshlocham and others added 5 commits May 18, 2026 20:06
Add shared authorization service with participant checks on tasks and messages,
socket room join/message fan-out via internal web bridge (no DB in socket),
remove client-trusted recipients, block user task status mutation, and require
INTERNAL_SECRET for task-worker in production.

Co-authored-by: Cursor <cursoragent@cursor.com>
…unication

Bump versions for several packages, including chat-app, task-worker, socket, and web. Implemented a more secure architecture for realtime authorization and internal communication, refactoring the socket server to enforce centralized ACL checks and removing client-trusted paths. Added test environment setup for internal service authentication.
Enhance security and enforce ACL for REST and socket communication
- Replaced npm with pnpm as the package manager across the project.
- Updated package.json scripts to use pnpm commands.
- Added .nvmrc for Node.js version management.
- Modified Dockerfiles to support pnpm installation and build processes.
- Removed package-lock.json files and added pnpm-lock.yaml for dependency management.
- Updated .github workflows to utilize pnpm for dependency installation and caching.
- Adjusted workspace dependencies to use "workspace:*" for better compatibility with pnpm.
Copilot AI review requested due to automatic review settings May 18, 2026 16:51
@vercel
Copy link
Copy Markdown
Contributor

vercel Bot commented May 18, 2026

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

Project Deployment Actions Updated (UTC)
chat-app Ready Ready Preview, Comment May 19, 2026 8:26am

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Migrates the monorepo from npm to pnpm and updates build/deploy tooling (Vercel, Docker, and GitHub Actions) to install, build, and run packages using pnpm and workspace-based dependency linking.

Changes:

  • Introduces pnpm workspace setup (pnpm-workspace.yaml, pnpm-lock.yaml usage, pnpm overrides) and updates package scripts/dependencies to use workspace:*.
  • Updates Dockerfiles and docker-compose worker command to install/build/run via pnpm + Corepack.
  • Updates GitHub Actions workflows and Vercel config to use pnpm for installs/caching/builds.

Reviewed changes

Copilot reviewed 17 out of 21 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
vercel.json Switches Vercel install/build commands from npm/npx to Corepack + pnpm.
pnpm-workspace.yaml Defines workspace package globs for pnpm.
package.json Sets packageManager to pnpm and updates root scripts/audit + pnpm overrides.
packages/services/package.json Converts internal deps to workspace:*.
packages/redis/package.json Converts internal deps to workspace:*.
apps/web/package.json Updates build script and internal deps to use pnpm filters + workspace:*.
apps/task-worker/package.json Converts internal deps to workspace:*.
apps/socket/package.json Converts internal deps to workspace:*.
docker/web.Dockerfile Replaces npm install/build/start with Corepack + pnpm equivalents.
docker/socket.Dockerfile Replaces npm install/build/start with Corepack + pnpm equivalents.
apps/task-worker/Dockerfile Replaces npm install/build/start with Corepack + pnpm equivalents.
docker-compose.worker.yml Updates worker container command to use pnpm filter start.
.nvmrc Adds Node version pin for local development.
.npmrc Adds pnpm-related config (hoisted linker, peer handling, workspace preference).
.gitignore Ignores pnpm store directory.
.github/workflows/security.yml Switches dependency audit workflow to pnpm + Corepack and pnpm caching.
.github/workflows/release.yml Switches release workflow install/build/version commands to pnpm + Corepack.
.github/workflows/node.js.yml Switches CI install/build/start commands and caching keys to pnpm + Corepack.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docker/web.Dockerfile Outdated
Comment thread docker/socket.Dockerfile Outdated
Comment thread apps/task-worker/Dockerfile Outdated
Comment thread vercel.json Outdated
Comment thread .github/workflows/release.yml
- Added '@chat/types' as a workspace dependency in pnpm-lock.yaml and package.json.
- Marked '@aws-sdk/core' as deprecated due to a known bug, with a link to the issue.
- Updated import path in the token-versioning integration test to reference the correct module.
@harshlocham harshlocham merged commit 5e290c7 into main May 19, 2026
9 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.

2 participants