Skip to content

Add pnpm#996

Open
goldflag wants to merge 5 commits into
masterfrom
add-pnpm
Open

Add pnpm#996
goldflag wants to merge 5 commits into
masterfrom
add-pnpm

Conversation

@goldflag
Copy link
Copy Markdown
Collaborator

@goldflag goldflag commented May 16, 2026

Summary by CodeRabbit

  • Chores

    • Migrated repo to pnpm workspaces with workspace metadata and scripts.
    • Converted builds/containers to pnpm/Corepack multi-stage builds for consistent, smaller images.
    • Updated dependency automation to target the repo root and use pnpm.
    • Standardized/pinned dependency versions and relaxed peer dependency enforcement.
    • Added Docker ignore to reduce build context.
  • Documentation

    • Updated developer docs and READMEs to use pnpm-based commands.

Review Change Stack

@vercel
Copy link
Copy Markdown

vercel Bot commented May 16, 2026

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

Project Deployment Actions Updated (UTC)
rybbit Ready Ready Preview, Comment May 16, 2026 11:30pm

Request Review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 16, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 25e9dc56-cb71-4b25-a385-975498e3d844

📥 Commits

Reviewing files that changed from the base of the PR and between ba6e3a6 and 6dd3684.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (2)
  • client/package.json
  • pnpm-workspace.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
  • client/package.json

📝 Walkthrough

Walkthrough

This PR migrates the monorepo from npm to pnpm: adds root workspace config, pins package versions and workspace refs, updates Dockerfiles to pnpm/Corepack multi-stage builds, converts CI workflows and docs to pnpm commands, and adds a .dockerignore.

Changes

Monorepo pnpm Migration

Layer / File(s) Summary
Workspace configuration and root setup
package.json, pnpm-workspace.yaml, .npmrc, .github/dependabot.yml
Root package.json and pnpm-workspace.yaml added, .npmrc peer-dependency behavior set, and Dependabot directory changed to the repository root.
GitHub Actions workflow updates
.github/workflows/translate-docs.yml, .github/workflows/translate.yml
Workflows enable Corepack, use pnpm install --frozen-lockfile --filter <package>..., enable pnpm caching in actions/setup-node, and run extraction via pnpm --filter <package> extract.
Client package and Next.js build
client/package.json, client/next.config.ts, client/Dockerfile, client/CLAUDE.md, client/README.md
Client pins several dependencies to exact versions and workspace:* for @rybbit/shared, sets outputFileTracingRoot in Next config, rewrites Dockerfile to pnpm/Corepack multi-stage with runtime layout under /app/client, and updates docs to use pnpm --filter client commands.
Server package and backend build
server/package.json, server/Dockerfile, server/docker-entrypoint.sh, server/README.md
Server pins dependencies, switches @rybbit/shared to workspace:*, updates build script to use pnpm, converts Dockerfile to pnpm/Corepack multi-stage, and updates entrypoint/README to pnpm commands.
Monitor agent package and containerized builds
monitor-agent/* (Dockerfile, Dockerfile.dev, docker-compose*.yml, Makefile, systemd/setup.sh, package.json, README.md)
Monitor-agent production/dev Dockerfiles converted to pnpm multi-stage builds, docker-compose uses monitor-agent-specific Dockerfiles and /app/monitor-agent mounts, Makefile and systemd scripts use pnpm, and docs updated.
Documentation package dependencies and guidance
docs/package.json, docs/CLAUDE.md, docs/README.md
Docs package pins core runtime deps to exact versions and updates CLI guidance and extraction commands to pnpm --filter docs-v2.
Docker support and exclusions
.dockerignore
Adds .dockerignore entries to exclude git metadata, caches (node_modules, .next, .turbo), build outputs, env files, and macOS .DS_Store from Docker contexts.

🎯 3 (Moderate) | ⏱️ ~25 minutes

"A rabbit hops through the monorepo,
Pnpm's footsteps tidy each row.
Workspaces linked and build caches cleared,
Corepack hums — the pipelines cheer! 🐰✨"

🚥 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 'Add pnpm' directly reflects the main objective of the pull request, which is to migrate the project from npm to pnpm as the package manager across all workspaces and workflows.
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 unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch add-pnpm

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


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.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🧹 Nitpick comments (4)
docs/package.json (1)

14-14: ⚖️ Poor tradeoff

Consider the tradeoffs of exact version pinning.

Removing caret ranges (^) prevents automatic patch and minor updates, which means security fixes and bug patches won't be picked up without manual version bumps. In pnpm workspaces, exact pinning can also create peer dependency conflicts if different packages need slightly different versions.

Consider whether exact pinning is necessary for all runtime dependencies, or if it should be reserved for tooling/build dependencies where reproducibility is critical.

Also applies to: 32-32, 35-36

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/package.json` at line 14, The dependency entry
"`@icons-pack/react-simple-icons`" is exact-pinned which prevents automatic
minor/patch updates; decide whether to restore a caret range (e.g. "^13.8.0")
for runtime dependencies or keep exact pinning only for build/tooling packages,
and if you keep exact pins ensure workspace-wide consistency (align other
packages that use the same dependency) or use pnpm overrides/workspace protocol
to avoid peer conflicts; update the docs/package.json dependency list
accordingly and document the rationale for chosen pinning policy.
server/Dockerfile (1)

19-19: 💤 Low value

Consider simplifying the pnpm install filter.

The --filter rybbit-backend... syntax already includes all dependencies of the backend package, so explicitly adding --filter @rybbit/shared`` is redundant. The three-dot suffix traverses and installs dependencies.

♻️ Simplified filter syntax
-RUN pnpm install --frozen-lockfile --filter rybbit-backend... --filter `@rybbit/shared`
+RUN pnpm install --frozen-lockfile --filter rybbit-backend...
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@server/Dockerfile` at line 19, Update the pnpm install RUN command to remove
the redundant explicit package filter: replace the existing "pnpm install
--frozen-lockfile --filter rybbit-backend... --filter `@rybbit/shared`" invocation
with a single-filter invocation using "--filter rybbit-backend..." only, so that
the three-dot dependency traversal installs `@rybbit/shared` implicitly.
client/Dockerfile (1)

18-18: 💤 Low value

Consider simplifying the pnpm install filter.

The --filter client... syntax already includes all dependencies of the client package, so explicitly adding --filter @rybbit/shared`` is redundant (though harmless). The three-dot suffix traverses and installs dependencies.

♻️ Simplified filter syntax
-RUN pnpm install --frozen-lockfile --filter client... --filter `@rybbit/shared`
+RUN pnpm install --frozen-lockfile --filter client...
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@client/Dockerfile` at line 18, The RUN command `RUN pnpm install
--frozen-lockfile --filter client... --filter `@rybbit/shared`` redundantly lists
`--filter `@rybbit/shared`` because `--filter client...` already includes the
client's transitive dependencies; remove the extra filter so the command becomes
a single `pnpm install` invocation using `--filter client...` (preserving
`--frozen-lockfile`) to simplify the Dockerfile.
.dockerignore (1)

9-10: ⚡ Quick win

Add glob patterns for .env files and .DS_Store in subdirectories.

The current patterns only match at the root level. Environment files and macOS metadata can exist in subdirectories (e.g., client/.env.local, server/.DS_Store).

🔧 Proposed fix to match in all subdirectories
-**/.cache
-.env
-.env.*
+**/.cache
+**/.env
+**/.env.*
 npm-debug.log
 yarn-debug.log
 yarn-error.log
 .pnpm-debug.log
-.DS_Store
+**/.DS_Store

Also applies to: 15-15

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.dockerignore around lines 9 - 10, The .dockerignore currently only lists
".env" and ".env.*" which match root-level files only; update the .dockerignore
entries (the patterns for ".env" and ".env.*") to include recursive glob
variants (e.g., add "**/.env" and "**/.env.*") and also add a recursive macOS
metadata pattern ("**/.DS_Store") so environment files and .DS_Store files in
subdirectories (e.g., client/.env.local or server/.DS_Store) are ignored; ensure
you also add the recursive patterns where similar entries appear (the other
occurrence referenced at lines 15-15).
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.dockerignore:
- Line 3: The .dockerignore contains a .deepsec pattern that isn't used; either
remove the ".deepsec" entry or clarify it—if you meant the Deepsource tool,
replace it with ".deepsource" and add a comment explaining why it's excluded, or
add a README note in the repository describing the purpose of ".deepsec" to
avoid confusion; locate the ".deepsec" line in .dockerignore and apply the
chosen change.

In `@docs/package.json`:
- Line 32: Update the Next.js dependency entry named "next" in package.json from
"16.2.0" to "16.2.6" to pull in the security patches, then regenerate the
lockfile by running your package manager (npm install or yarn install) so
package-lock.json / yarn.lock is updated accordingly; ensure the updated "next"
version appears in package.json and commit both the modified package.json and
the updated lockfile.

In `@docs/README.md`:
- Line 12: The README currently instructs to open http://localhost:3000 but the
dev script in package.json starts the app with --port 3003; update the README
line to reference http://localhost:3003 so it matches the dev script (ensure the
documentation string that says "Open http://localhost:3000 with your browser to
see the result." is changed to use port 3003).

In `@monitor-agent/Makefile`:
- Around line 26-29: The Makefile targets "test" and "lint" are calling npm
scripts that don't exist in monitor-agent/package.json; fix this by either
adding matching scripts ("test" and/or "lint") to package.json (with the
intended commands) or by updating the Makefile to call existing scripts/commands
(or remove the targets). Locate the "test" and "lint" targets in the Makefile
and either change their commands to real npm scripts defined in package.json or
add corresponding entries under "scripts" in package.json so pnpm test and pnpm
run lint succeed.

---

Nitpick comments:
In @.dockerignore:
- Around line 9-10: The .dockerignore currently only lists ".env" and ".env.*"
which match root-level files only; update the .dockerignore entries (the
patterns for ".env" and ".env.*") to include recursive glob variants (e.g., add
"**/.env" and "**/.env.*") and also add a recursive macOS metadata pattern
("**/.DS_Store") so environment files and .DS_Store files in subdirectories
(e.g., client/.env.local or server/.DS_Store) are ignored; ensure you also add
the recursive patterns where similar entries appear (the other occurrence
referenced at lines 15-15).

In `@client/Dockerfile`:
- Line 18: The RUN command `RUN pnpm install --frozen-lockfile --filter
client... --filter `@rybbit/shared`` redundantly lists `--filter `@rybbit/shared``
because `--filter client...` already includes the client's transitive
dependencies; remove the extra filter so the command becomes a single `pnpm
install` invocation using `--filter client...` (preserving `--frozen-lockfile`)
to simplify the Dockerfile.

In `@docs/package.json`:
- Line 14: The dependency entry "`@icons-pack/react-simple-icons`" is exact-pinned
which prevents automatic minor/patch updates; decide whether to restore a caret
range (e.g. "^13.8.0") for runtime dependencies or keep exact pinning only for
build/tooling packages, and if you keep exact pins ensure workspace-wide
consistency (align other packages that use the same dependency) or use pnpm
overrides/workspace protocol to avoid peer conflicts; update the
docs/package.json dependency list accordingly and document the rationale for
chosen pinning policy.

In `@server/Dockerfile`:
- Line 19: Update the pnpm install RUN command to remove the redundant explicit
package filter: replace the existing "pnpm install --frozen-lockfile --filter
rybbit-backend... --filter `@rybbit/shared`" invocation with a single-filter
invocation using "--filter rybbit-backend..." only, so that the three-dot
dependency traversal installs `@rybbit/shared` implicitly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d0065af6-1626-40d5-a0d9-f3c192657cbb

📥 Commits

Reviewing files that changed from the base of the PR and between ce13a70 and 7db3f89.

⛔ Files ignored due to path filters (6)
  • client/package-lock.json is excluded by !**/package-lock.json
  • docs/package-lock.json is excluded by !**/package-lock.json
  • monitor-agent/package-lock.json is excluded by !**/package-lock.json
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • server/package-lock.json is excluded by !**/package-lock.json
  • shared/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (27)
  • .dockerignore
  • .github/dependabot.yml
  • .github/workflows/translate-docs.yml
  • .github/workflows/translate.yml
  • .npmrc
  • client/CLAUDE.md
  • client/Dockerfile
  • client/README.md
  • client/next.config.ts
  • client/package.json
  • docs/CLAUDE.md
  • docs/README.md
  • docs/package.json
  • monitor-agent/Dockerfile
  • monitor-agent/Dockerfile.dev
  • monitor-agent/Makefile
  • monitor-agent/README.md
  • monitor-agent/docker-compose.dev.yml
  • monitor-agent/docker-compose.yml
  • monitor-agent/package.json
  • monitor-agent/systemd/setup.sh
  • package.json
  • pnpm-workspace.yaml
  • server/Dockerfile
  • server/README.md
  • server/docker-entrypoint.sh
  • server/package.json

Comment thread .dockerignore
@@ -0,0 +1,15 @@
.git
.github
.deepsec
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.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Check if .deepsec directory or file exists

fd -H -t d -t f "^\.deepsec$" .

Repository: rybbit-io/rybbit

Length of output: 42


🏁 Script executed:

# Check if .deepsource exists (the suggested alternative)
fd -H -t d -t f "^\.deepsource$" .

Repository: rybbit-io/rybbit

Length of output: 42


🏁 Script executed:

# Search for any references to "deepsec" or "deepsource" in the codebase
rg -i "deepsec|deepsource" --type-list | head -20

Repository: rybbit-io/rybbit

Length of output: 450


🏁 Script executed:

# Check the git history of .dockerignore to understand context
git log --oneline -n 20 .dockerignore

Repository: rybbit-io/rybbit

Length of output: 78


🏁 Script executed:

# Search for any references to "deepsec" or "deepsource" in the codebase
rg -i "deepsec|deepsource"

Repository: rybbit-io/rybbit

Length of output: 42


🏁 Script executed:

# View the full .dockerignore file for context
cat .dockerignore

Repository: rybbit-io/rybbit

Length of output: 217


🏁 Script executed:

# Check full git history of .dockerignore
git log --all --oneline .dockerignore

Repository: rybbit-io/rybbit

Length of output: 78


Remove or clarify the .deepsec exclusion.

The .deepsec pattern doesn't exist in the repository and has no references in the codebase. This appears to be either a typo for .deepsource (a static analysis tool) or a leftover from a template. If intentional, document the purpose; otherwise, remove it.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.dockerignore at line 3, The .dockerignore contains a .deepsec pattern that
isn't used; either remove the ".deepsec" entry or clarify it—if you meant the
Deepsource tool, replace it with ".deepsource" and add a comment explaining why
it's excluded, or add a README note in the repository describing the purpose of
".deepsec" to avoid confusion; locate the ".deepsec" line in .dockerignore and
apply the chosen change.

Comment thread docs/package.json
"mermaid": "^11.12.0",
"motion": "^12.29.0",
"next": "^16.2.0",
"next": "16.2.0",
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.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

What is the latest stable version of Next.js as of May 2026?

💡 Result:

As of May 16, 2026, the latest stable version of Next.js is 16.2.6 [1][2][3]. This version was released on May 7, 2026, as part of a coordinated security update to address multiple vulnerabilities, including issues related to denial-of-service, middleware bypass, and server-side request forgery [4][5][6]. Users on older versions, including those on the 15.x and 16.x branches, are advised to upgrade to the latest patched releases (such as 15.5.18 or 16.2.6) to ensure their applications remain secure [4][7].

Citations:


Update Next.js to 16.2.6 for security patches.

Next.js 16.2.0 exists and is stable. However, version 16.2.6 (released May 7, 2026) includes critical security fixes for denial-of-service, middleware bypass, and server-side request forgery vulnerabilities. Upgrade to the latest patch version within the 16.2.x line.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/package.json` at line 32, Update the Next.js dependency entry named
"next" in package.json from "16.2.0" to "16.2.6" to pull in the security
patches, then regenerate the lockfile by running your package manager (npm
install or yarn install) so package-lock.json / yarn.lock is updated
accordingly; ensure the updated "next" version appears in package.json and
commit both the modified package.json and the updated lockfile.

Comment thread docs/README.md
pnpm --filter docs-v2 dev
```

Open http://localhost:3000 with your browser to see the result.
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.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update port number to match the dev script.

The dev script in package.json explicitly sets --port 3003, but this line still references port 3000. This inconsistency could confuse developers.

📝 Proposed fix
-Open http://localhost:3000 with your browser to see the result.
+Open http://localhost:3003 with your browser to see the result.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Open http://localhost:3000 with your browser to see the result.
Open http://localhost:3003 with your browser to see the result.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/README.md` at line 12, The README currently instructs to open
http://localhost:3000 but the dev script in package.json starts the app with
--port 3003; update the README line to reference http://localhost:3003 so it
matches the dev script (ensure the documentation string that says "Open
http://localhost:3000 with your browser to see the result." is changed to use
port 3003).

Comment thread monitor-agent/Makefile
goldflag added 2 commits May 16, 2026 18:29
…sion 16.2.6, ensuring compatibility and improved functionality across the application.
…nd pnpm-lock.yaml

This commit introduces the @smithy/node-http-handler at version ^4.7.2 and pino at version ^9.14.0, ensuring the application has the necessary dependencies for improved functionality and logging capabilities.
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Caution

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

⚠️ Outside diff range comments (1)
monitor-agent/Dockerfile (1)

45-56: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Run the runtime stage as a non-root user.

The container currently runs as root in the final image; add a dedicated unprivileged user before CMD.

Suggested hardening patch
 WORKDIR /app/monitor-agent
 COPY --from=builder /app/monitor-agent/dist ./dist
+RUN addgroup -S app && adduser -S -G app app && chown -R app:app /app
+USER app
 
 # Expose port
 EXPOSE 3003
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@monitor-agent/Dockerfile` around lines 45 - 56, The final Docker image runs
as root; create and switch to an unprivileged user in the Dockerfile: add a
non-root user/group (e.g., monitor or appuser) and set its HOME, ensure
ownership of the application directory (/app/monitor-agent) is changed to that
user (chown after COPY or use --chown on COPY), then add a USER instruction
before CMD so the container runs as that non-root user; keep existing WORKDIR,
HEALTHCHECK and EXPOSE intact and ensure file permissions allow node to execute
dist/index.js as the new user.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@monitor-agent/Dockerfile`:
- Around line 45-56: The final Docker image runs as root; create and switch to
an unprivileged user in the Dockerfile: add a non-root user/group (e.g., monitor
or appuser) and set its HOME, ensure ownership of the application directory
(/app/monitor-agent) is changed to that user (chown after COPY or use --chown on
COPY), then add a USER instruction before CMD so the container runs as that
non-root user; keep existing WORKDIR, HEALTHCHECK and EXPOSE intact and ensure
file permissions allow node to execute dist/index.js as the new user.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 80b1ef5a-42e3-40a9-ae86-8bfe20e97963

📥 Commits

Reviewing files that changed from the base of the PR and between 7db3f89 and 78e0958.

⛔ Files ignored due to path filters (6)
  • client/package-lock.json is excluded by !**/package-lock.json
  • docs/package-lock.json is excluded by !**/package-lock.json
  • monitor-agent/package-lock.json is excluded by !**/package-lock.json
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
  • server/package-lock.json is excluded by !**/package-lock.json
  • shared/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (27)
  • .dockerignore
  • .github/dependabot.yml
  • .github/workflows/translate-docs.yml
  • .github/workflows/translate.yml
  • .npmrc
  • client/CLAUDE.md
  • client/Dockerfile
  • client/README.md
  • client/next.config.ts
  • client/package.json
  • docs/CLAUDE.md
  • docs/README.md
  • docs/package.json
  • monitor-agent/Dockerfile
  • monitor-agent/Dockerfile.dev
  • monitor-agent/Makefile
  • monitor-agent/README.md
  • monitor-agent/docker-compose.dev.yml
  • monitor-agent/docker-compose.yml
  • monitor-agent/package.json
  • monitor-agent/systemd/setup.sh
  • package.json
  • pnpm-workspace.yaml
  • server/Dockerfile
  • server/README.md
  • server/docker-entrypoint.sh
  • server/package.json
✅ Files skipped from review due to trivial changes (7)
  • client/README.md
  • .github/dependabot.yml
  • docs/package.json
  • pnpm-workspace.yaml
  • server/README.md
  • client/CLAUDE.md
  • docs/CLAUDE.md
🚧 Files skipped from review as they are similar to previous changes (18)
  • docs/README.md
  • .npmrc
  • .dockerignore
  • monitor-agent/Makefile
  • server/docker-entrypoint.sh
  • monitor-agent/systemd/setup.sh
  • monitor-agent/package.json
  • monitor-agent/docker-compose.yml
  • client/next.config.ts
  • package.json
  • monitor-agent/docker-compose.dev.yml
  • .github/workflows/translate.yml
  • .github/workflows/translate-docs.yml
  • monitor-agent/Dockerfile.dev
  • server/package.json
  • client/Dockerfile
  • server/Dockerfile
  • client/package.json

This commit introduces the d3-scale package at version 4.0.2, ensuring the application has the necessary dependency for enhanced data visualization capabilities.
… peer dependency for @hookform/resolvers and add @types/d3-scale to package.json
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