Conversation
Updated various dependencies in the `pnpm-workspace.yaml` file to their latest versions, including `turbo`, `tsdown`, `publint`, and others. This ensures compatibility and incorporates the latest features and fixes.
📝 WalkthroughWalkthroughUpgrades pnpm across the monorepo, consolidates tsdown bundling flags into a unified deps shape, replaces Vite React plugin usage with react()+Babel preset and adds Changes
Sequence Diagram(s)(Skipped — changes are broad config/typing removals and replacements, not a single new multi-component control flow that benefits from a sequence diagram.) Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Possibly related PRs
Suggested labels
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
📝 Coding Plan
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. Comment |
🌏 Preview Deployments
Built from commit: 🤖 This comment will be updated automatically when you push new commits to this PR. |
There was a problem hiding this comment.
Pull request overview
Updates workspace tooling and build configs to align with newer dependency/toolchain versions (pnpm 10.32.1, tsdown 0.21, Vite 8), including related bundling and React compiler configuration changes.
Changes:
- Bump pinned
packageManageracross root/apps/packages topnpm@10.32.1. - Migrate tsdown configs to the new
deps-based bundling configuration and addinlinedDependenciesmetadata where needed. - Update Vite configs to Vite 8-era patterns and enable React compiler preset via
@rolldown/plugin-babel.
Reviewed changes
Copilot reviewed 42 out of 43 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| vscode/tsdown.config.ts | Updates tsdown bundling rules to deps.* for VS Code extension build. |
| vscode/package.json | Pins pnpm version for the VS Code workspace package. |
| tooling/tsconfig/package.json | Pins pnpm version for tooling package. |
| tooling/moonbeam/package.json | Pins pnpm version for tooling package. |
| pnpm-workspace.yaml | Updates dependency catalogs/overrides for tsdown 0.21 and Vite 8 + related ecosystem bumps. |
| patches/@asteasolutions__zod-to-openapi@8.4.3.patch | Updates patched dependency to match new zod-to-openapi version. |
| packages/worker-utils/package.json | Pins pnpm version for package. |
| packages/utils/package.json | Pins pnpm version for package. |
| packages/ucdjs-scripts/package.json | Pins pnpm version for package. |
| packages/ucd-store/package.json | Pins pnpm version for package. |
| packages/test-utils/tsdown.config.ts | Migrates tsdown config to deps.neverBundle for Vitest deps. |
| packages/test-utils/package.json | Pins pnpm version for package. |
| packages/shared/tsdown.config.ts | Migrates tsdown config to deps.onlyBundle for selected runtime inlining. |
| packages/shared/package.json | Adds inlinedDependencies metadata to match new bundling behavior + pins pnpm. |
| packages/shared-ui/package.json | Pins pnpm version for package. |
| packages/schemas/package.json | Pins pnpm version for package. |
| packages/schema-gen/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-server/vite.config.ts | Updates Vite config for React compiler preset via Rolldown Babel plugin; adds builder env guard. |
| packages/pipelines/pipeline-server/src/server/code.ts | Removes now-unused pipeline code extraction implementation. |
| packages/pipelines/pipeline-server/package.json | Removes unused deps (esrap/oxc-parser) and adds rolldown babel plugin devDep; pins pnpm. |
| packages/pipelines/pipeline-presets/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-playground/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-loader/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-graph/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-executor/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-core/package.json | Pins pnpm version for package. |
| packages/pipelines/pipeline-artifacts/package.json | Pins pnpm version for package. |
| packages/path-utils/package.json | Pins pnpm version for package. |
| packages/lockfile/tsdown.config.ts | Migrates tsdown config to deps.onlyBundle for hookable bundling. |
| packages/lockfile/package.json | Adds inlinedDependencies metadata + pins pnpm. |
| packages/fs-bridge/tsdown.config.ts | Migrates tsdown config to deps.* bundling settings for msw utils. |
| packages/fs-bridge/package.json | Adds inlinedDependencies metadata + pins pnpm. |
| packages/env/package.json | Pins pnpm version for package. |
| packages/client/package.json | Pins pnpm version for package. |
| packages/cli/package.json | Pins pnpm version for package. |
| package.json | Pins pnpm version at repo root. |
| apps/web/vite.config.ts | Updates Vite config for React compiler preset via Rolldown Babel plugin. |
| apps/web/package.json | Adds rolldown babel plugin devDep + pins pnpm. |
| apps/store/package.json | Pins pnpm version for app. |
| apps/docs/vite.config.ts | Updates Vite config for React compiler preset via Rolldown Babel plugin. |
| apps/docs/package.json | Adds rolldown babel plugin devDep + pins pnpm. |
| apps/api/package.json | Pins pnpm version for app. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (2)
packages/fs-bridge/tsdown.config.ts (1)
11-13: Track this TODO with a linked issue.This architectural note is useful, but it can get lost in config files. Please add an issue reference (or replace the TODO with one) so it has clear ownership and priority.
If helpful, I can draft a concise issue description for this follow-up.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@packages/fs-bridge/tsdown.config.ts` around lines 11 - 13, Replace the informal TODO comment in tsdown.config.ts with a tracked issue reference: update the lines containing the TODO (“// TODO: // This should probably just be bundled in the shared package. // and then redistributed that way.”) to include a GitHub/GitLab issue number or URL (e.g. “// TODO: tracked in issue `#1234` - consider bundling in shared package”), or replace the three-line TODO with a single line linking to the new issue you create; ensure the comment includes the issue ID/URL and a short owner or priority tag so the follow-up is discoverable.pnpm-workspace.yaml (1)
161-170: Use the existingbuildcatalog for the Vite override.
overrides.viteis duplicating the literal already declared incatalogs.build.vite, which makes this one easy to drift from the rest of the workspace.♻️ Proposed fix
- vite: 8.0.0 + vite: catalog:buildAs per coding guidelines,
Centralize dependency versions in pnpm-workspace.yaml using pnpm catalogs.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@pnpm-workspace.yaml` around lines 161 - 170, The overrides entry for vite currently hardcodes a version ("vite: 8.0.0") which duplicates the version declared in catalogs.build.vite; update the overrides mapping to point at the shared catalog instead (make the overrides.vite entry use the same catalog reference as catalogs.build.vite, e.g., change the value from the literal version to "catalog:build" following the pattern used by rolldown and wrangler) so the workspace central catalog controls the vite version.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@pnpm-workspace.yaml`:
- Around line 108-110: The pnpm workspace lists "@types/node": 25.5.0 which
mismatches the declared Node engine (engines.node >= 24.13); change the
"@types/node" entry to a 24.x release (e.g., 24.specific) to align types with
Node 24, or alternatively update the project's engines.node requirement to
>=25.x so the types version is valid; update the "@types/node" dependency line
accordingly (symbol: "@types/node") and ensure any package.json engines field is
adjusted if you choose the engine upgrade path.
- Line 43: Update the TanStack package versions in pnpm-workspace.yaml so the
nested internal dependencies match: set `@tanstack/react-start` and
`@tanstack/react-router` to the exact same patch (either both 1.166.8 or both
1.166.9) to avoid duplicate router copies, and also bump
`@tanstack/react-router-devtools`, `@tanstack/zod-adapter`, and
`@tanstack/react-router-ssr-query` to 1.166.8 for consistency; change the version
strings for the symbols `@tanstack/react-start`, `@tanstack/react-router`,
`@tanstack/react-router-devtools`, `@tanstack/zod-adapter`, and
`@tanstack/react-router-ssr-query` accordingly.
---
Nitpick comments:
In `@packages/fs-bridge/tsdown.config.ts`:
- Around line 11-13: Replace the informal TODO comment in tsdown.config.ts with
a tracked issue reference: update the lines containing the TODO (“// TODO: //
This should probably just be bundled in the shared package. // and then
redistributed that way.”) to include a GitHub/GitLab issue number or URL (e.g.
“// TODO: tracked in issue `#1234` - consider bundling in shared package”), or
replace the three-line TODO with a single line linking to the new issue you
create; ensure the comment includes the issue ID/URL and a short owner or
priority tag so the follow-up is discoverable.
In `@pnpm-workspace.yaml`:
- Around line 161-170: The overrides entry for vite currently hardcodes a
version ("vite: 8.0.0") which duplicates the version declared in
catalogs.build.vite; update the overrides mapping to point at the shared catalog
instead (make the overrides.vite entry use the same catalog reference as
catalogs.build.vite, e.g., change the value from the literal version to
"catalog:build" following the pattern used by rolldown and wrangler) so the
workspace central catalog controls the vite version.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 532b4a0f-5cd3-406e-8d8e-8a9c6e69f281
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (42)
apps/api/package.jsonapps/docs/package.jsonapps/docs/vite.config.tsapps/store/package.jsonapps/web/package.jsonapps/web/vite.config.tspackage.jsonpackages/cli/package.jsonpackages/client/package.jsonpackages/env/package.jsonpackages/fs-bridge/package.jsonpackages/fs-bridge/tsdown.config.tspackages/lockfile/package.jsonpackages/lockfile/tsdown.config.tspackages/path-utils/package.jsonpackages/pipelines/pipeline-artifacts/package.jsonpackages/pipelines/pipeline-core/package.jsonpackages/pipelines/pipeline-executor/package.jsonpackages/pipelines/pipeline-graph/package.jsonpackages/pipelines/pipeline-loader/package.jsonpackages/pipelines/pipeline-playground/package.jsonpackages/pipelines/pipeline-presets/package.jsonpackages/pipelines/pipeline-server/package.jsonpackages/pipelines/pipeline-server/src/server/code.tspackages/pipelines/pipeline-server/vite.config.tspackages/schema-gen/package.jsonpackages/schemas/package.jsonpackages/shared-ui/package.jsonpackages/shared/package.jsonpackages/shared/tsdown.config.tspackages/test-utils/package.jsonpackages/test-utils/tsdown.config.tspackages/ucd-store/package.jsonpackages/ucdjs-scripts/package.jsonpackages/utils/package.jsonpackages/worker-utils/package.jsonpatches/@asteasolutions__zod-to-openapi@8.4.3.patchpnpm-workspace.yamltooling/moonbeam/package.jsontooling/tsconfig/package.jsonvscode/package.jsonvscode/tsdown.config.ts
💤 Files with no reviewable changes (1)
- packages/pipelines/pipeline-server/src/server/code.ts
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
There was a problem hiding this comment.
♻️ Duplicate comments (1)
pnpm-workspace.yaml (1)
120-128:⚠️ Potential issue | 🟠 MajorAlign the TanStack Router/Start family to a single patch version.
This section mixes
1.166.7,1.166.8, and1.166.9across tightly-coupled TanStack packages, which can pull multiple router copies in pnpm and cause type/runtime drift.#!/bin/bash # Verify TanStack version coherence and published dependency expectations from npm metadata. python - <<'PY' import pathlib, re, json, urllib.request, urllib.parse text = pathlib.Path("pnpm-workspace.yaml").read_text() pkgs = [ "@tanstack/react-router", "@tanstack/react-router-devtools", "@tanstack/zod-adapter", "@tanstack/react-router-ssr-query", "@tanstack/react-start", ] versions = {} for p in pkgs: m = re.search(rf'^\s+"{re.escape(p)}":\s*([^\s]+)\s*$', text, re.M) versions[p] = m.group(1) if m else None print("Configured versions:") for p, v in versions.items(): print(f" {p}: {v}") print("\nPublished internal TanStack deps/peers:") for p, v in versions.items(): if not v: continue url = f"https://registry.npmjs.org/{urllib.parse.quote(p, safe='')}/{v}" try: with urllib.request.urlopen(url) as r: meta = json.load(r) except Exception as e: print(f"\n{p}@{v}: lookup failed -> {e}") continue deps = meta.get("dependencies", {}) peers = meta.get("peerDependencies", {}) related = {k: deps[k] for k in deps if k.startswith("@tanstack/")} related_peers = {k: peers[k] for k in peers if k.startswith("@tanstack/")} print(f"\n{p}@{v}") if related: print(" dependencies:") for k, vv in sorted(related.items()): print(f" {k}: {vv}") if related_peers: print(" peerDependencies:") for k, vv in sorted(related_peers.items()): print(f" {k}: {vv}") print("\nExpected result: choose one patch line and align all TanStack router/start family entries to it.") PY🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@pnpm-workspace.yaml` around lines 120 - 128, The TanStack packages listed (e.g., "@tanstack/react-router", "@tanstack/react-router-devtools", "@tanstack/zod-adapter", "@tanstack/react-router-ssr-query", "@tanstack/react-start") are pinned to mixed patch versions (1.166.7/1.166.8/1.166.9) which can cause duplicate router copies; pick a single patch version (e.g., 1.166.9) and update all these package entries in pnpm-workspace.yaml to that exact version so they are consistent, then re-run the provided verification script (or npm registry checks) to confirm published deps/peers align with the chosen patch.
🧹 Nitpick comments (1)
pnpm-workspace.yaml (1)
169-169: Use catalog reference foroverrides.viteto avoid drift.
viteis already defined incatalogs.build; usingcatalog:buildkeeps a single source of truth.♻️ Proposed change
- vite: 8.0.0 + vite: catalog:buildAs per coding guidelines
Centralize dependency versions in pnpm-workspace.yaml using pnpm catalogs.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@pnpm-workspace.yaml` at line 169, Replace the hard-coded overrides.vite version with a catalog reference so it uses the centralized value in catalogs.build; specifically, update the overrides entry named "vite" to reference the "build" catalog (catalogs.build) instead of the literal "8.0.0" so the workspace reads the version from the single source of truth.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In `@pnpm-workspace.yaml`:
- Around line 120-128: The TanStack packages listed (e.g.,
"@tanstack/react-router", "@tanstack/react-router-devtools",
"@tanstack/zod-adapter", "@tanstack/react-router-ssr-query",
"@tanstack/react-start") are pinned to mixed patch versions
(1.166.7/1.166.8/1.166.9) which can cause duplicate router copies; pick a single
patch version (e.g., 1.166.9) and update all these package entries in
pnpm-workspace.yaml to that exact version so they are consistent, then re-run
the provided verification script (or npm registry checks) to confirm published
deps/peers align with the chosen patch.
---
Nitpick comments:
In `@pnpm-workspace.yaml`:
- Line 169: Replace the hard-coded overrides.vite version with a catalog
reference so it uses the centralized value in catalogs.build; specifically,
update the overrides entry named "vite" to reference the "build" catalog
(catalogs.build) instead of the literal "8.0.0" so the workspace reads the
version from the single source of truth.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: dd4de69e-e31a-4c87-8e19-f668d3753cd5
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (1)
pnpm-workspace.yaml
Sentry was causing too many issues with bundle sizes, and we don't get that much value from it right now.. We may add it back in the future.
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@apps/api/src/routes/v1_versions/utils.ts`:
- Around line 79-84: The duplicate error emission is coming from the additional
log.error call inside getCurrentDraftVersion that logs tmpError after the
onError callback already logged the upstream failure; remove or suppress this
second log to avoid double-reporting. Locate the log.error invocation (mentions
tmpError, component: "v1_versions", operation: "getCurrentDraftVersion") and
either delete it or change it to a non-error-level emission (e.g., debug) so
only the original onError logging remains responsible for reporting the upstream
unicode.org failure.
In `@apps/api/wrangler-types.d.ts`:
- Around line 8744-8785: The JSDoc examples and migration guide incorrectly use
property-style access and optional parameters; update the docs to match the
declared method signatures (or change signatures if intended). Specifically,
make examples call aiSearch() as a method (e.g., env.AI.aiSearch().list()) and
document autorag as requiring an autoragId when the function signature
autorag(autoragId: string) is required (or change autorag to
autorag?(autoragId?: string) if it should be optional); also fix the AutoRAG
class docs around the same discrepancy (references: aiSearch,
AiSearchAccountService, autorag, AutoRAG). Ensure all sample snippets and the
migration guide consistently reflect the actual signatures.
In `@apps/store/wrangler-types.d.ts`:
- Around line 8736-8778: Update the JSDoc examples and types to match the actual
API: change all example usages of aiSearch from property access
(env.AI.aiSearch.*) to method calls (env.AI.aiSearch().*) in the aiSearch()
examples and in the deprecated AutoRAG migration examples, and make the autorag
parameter optional to match the docs by changing the signature from
autorag(autoragId: string): AutoRAG to autorag(autoragId?: string): AutoRAG (or
alternatively, if you prefer to keep it required, update the `@param` to remove
"Optional" and the text saying to omit it); apply the same aiSearch() ->
aiSearch().* example fixes in the deprecated AutoRAG class documentation as
well.
In `@pnpm-workspace.yaml`:
- Line 6: Restore the workspace release-age safeguard by uncommenting or
re-adding the minimumReleaseAge setting in pnpm-workspace.yaml (the
minimumReleaseAge key) and set it back to the recommended value (e.g., 1440) so
newly published packages are quarantined for one day; if same-day releases are
required for specific packages, add a minimumReleaseAgeExclude entry to carve
out those package/version exceptions instead of disabling minimumReleaseAge
globally.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 182e543f-9da4-4285-9360-18ef870c9494
⛔ Files ignored due to path filters (1)
pnpm-lock.yamlis excluded by!**/pnpm-lock.yaml
📒 Files selected for processing (17)
apps/api/package.jsonapps/api/src/lib/sentry.tsapps/api/src/routes/v1_versions/$version.tsapps/api/src/routes/v1_versions/list.tsapps/api/src/routes/v1_versions/utils.tsapps/api/src/worker.tsapps/api/wrangler-types.d.tsapps/api/wrangler.jsoncapps/store/package.jsonapps/store/src/worker.tsapps/store/wrangler-types.d.tsapps/store/wrangler.jsoncapps/web/instrument.server.mjsapps/web/package.jsonapps/web/src/router.tsxapps/web/vite.config.tspnpm-workspace.yaml
💤 Files with no reviewable changes (3)
- apps/web/src/router.tsx
- apps/api/src/lib/sentry.ts
- apps/web/instrument.server.mjs
🚧 Files skipped from review as they are similar to previous changes (4)
- apps/store/package.json
- apps/web/package.json
- apps/web/vite.config.ts
- apps/api/package.json
The vite devtools is not stable yet, and is pretty slow on build mode.
Summary by CodeRabbit
Chores
New Features
Refactor
Breaking Changes