-
Notifications
You must be signed in to change notification settings - Fork 13k
chore(tracing): Review build configuration #37609
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Looks like this PR is not ready to merge, because of the following issues:
Please fix the issues and try again If you have any trouble, please check the PR guidelines |
|
WalkthroughConfiguration updates to the tracing package: ESLint ignore pattern changed from recursive to non-recursive matching, package.json reorganized with OpenTelemetry dependencies added, devDependencies restored, scripts consolidated, and Volta configuration introduced. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
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 |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #37609 +/- ##
========================================
Coverage 68.83% 68.83%
========================================
Files 3361 3361
Lines 114340 114340
Branches 20619 20619
========================================
+ Hits 78706 78709 +3
- Misses 33536 33537 +1
+ Partials 2098 2094 -4
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Jira integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (2)
packages/tracing/.eslintrc.json(1 hunks)packages/tracing/package.json(1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: d-gubert
Repo: RocketChat/Rocket.Chat PR: 37547
File: packages/i18n/src/locales/en.i18n.json:634-634
Timestamp: 2025-11-19T12:32:29.696Z
Learning: Repo: RocketChat/Rocket.Chat
Context: i18n workflow
Learning: In this repository, new translation keys should be added to packages/i18n/src/locales/en.i18n.json only; other locale files are populated via the external translation pipeline and/or fall back to English. Do not request adding the same key to all locale files in future reviews.
🔇 Additional comments (3)
packages/tracing/.eslintrc.json (1)
3-3: Verify the ESLint ignore pattern change aligns with package structure.The glob pattern changed from
**/dist(recursive, matches dist at any depth) todist(non-recursive, matches only root-level dist). Ensure this narrower scope doesn't inadvertently exclude nested dist directories that should be ignored, especially given the lint scripts in package.json run from the package root with.as the target.packages/tracing/package.json (2)
10-16: Scripts configuration looks good.The build, dev, lint, lint:fix, and testunit scripts are appropriately configured with correct TypeScript compilation and ESLint scoping.
29-31: Volta configuration looks good.Using
extendsto reference the root package.json is the correct pattern for maintaining consistent tooling versions across the monorepo.
| "dependencies": { | ||
| "@opentelemetry/api": "^1.9.0", | ||
| "@opentelemetry/exporter-trace-otlp-grpc": "^0.54.2", | ||
| "@opentelemetry/sdk-node": "^0.54.2" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
@opentelemetry/api 1.9.0 npm package version
<web_search_result>
Yes — @opentelemetry/api version 1.9.0 is published on npm (listed as the package's current/latest release). [1][2]
Sources:
[1] npm organization package listing (opentelemetry) — shows @opentelemetry/api published version 1.9.0.
[2] jsDelivr / package page — @opentelemetry/api version 1.9.0.
</web_search_result>
@opentelemetry/sdk-node 0.54.2 @opentelemetry/exporter-trace-otlp-grpc 0.54.2 compatibility
<web_search_result>
Short answer: Yes — @opentelemetry/sdk-node@0.54.2 and @opentelemetry/exporter-trace-otlp-grpc@0.54.2 are compatible and intended to be used together (OpenTelemetry JS packages with the same release line are published to work together). See the exporter docs and the SDK guidance that exporters must be installed alongside @opentelemetry/sdk-node. [1][2][3]
References
- Exporter docs (exporter-trace-otlp-grpc). [1]
- SDK Node docs (note that exporters are installed alongside @opentelemetry/sdk-node). [2]
- npm package listing for 0.54.2 showing that 0.54.x packages were published as a matching set. [3]
</web_search_result>
@opentelemetry/api 1.9.0 @opentelemetry/sdk-node 0.54.2 version compatibility
<web_search_result>
Short answer: No — @opentelemetry/api 1.9.0 is not compatible with @opentelemetry/sdk-node 0.54.2. The official compatibility matrix pairs experimental SDK versions 0.54.x with API ~1.27.x, while API 1.9.x maps to much older experimental SDKs (≈0.35.x). See the OpenTelemetry JS compatibility table and the @opentelemetry/api 1.9.0 package info. [1][2]
Sources:
- OpenTelemetry JS package compatibility table. [1]
- @opentelemetry/api 1.9.0 package entry. [2]
References:
[1] https://github.com/open-telemetry/opentelemetry-js — Package Version Compatibility.
[2] https://jsr.io/%40opentelemetry/api — @opentelemetry/api@1.9.0 package page.
</web_search_result>
Update OpenTelemetry API version for SDK compatibility.
The @opentelemetry/api version 1.9.0 is incompatible with @opentelemetry/sdk-node 0.54.2. According to the OpenTelemetry JS compatibility matrix, SDK 0.54.x requires API ~1.27.x; API 1.9.x corresponds to much older SDK versions (~0.35.x). Update @opentelemetry/api to ^1.27.0 or later to align with the 0.54.2 SDK and exporter versions.
"dependencies": {
"@opentelemetry/api": "^1.27.0",
"@opentelemetry/exporter-trace-otlp-grpc": "^0.54.2",
"@opentelemetry/sdk-node": "^0.54.2"
},
🤖 Prompt for AI Agents
In packages/tracing/package.json around lines 17 to 21 the @opentelemetry/api
dependency is pinned to ^1.9.0 which is incompatible with
@opentelemetry/sdk-node ^0.54.2; update the @opentelemetry/api entry to ^1.27.0
(or a compatible >=1.27.x) to match the SDK/exporter versions, then run your
package manager (npm/yarn/pnpm) to update the lockfile and verify the project
builds/tests pass.
| "devDependencies": { | ||
| "@types/jest": "~30.0.0", | ||
| "eslint": "~8.45.0", | ||
| "jest": "~30.2.0", | ||
| "ts-jest": "~29.4.5", | ||
| "typescript": "~5.9.3" | ||
| }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Critical: Invalid devDependencies versions.
The specified versions appear to be invalid:
jest: ~30.2.0— Jest 30.x does not exist; the latest stable version is 29.x@types/jest: ~30.0.0— @types/jest 30.x does not exist and should match the Jest version used- Other versions may also need verification for accuracy
Please verify and correct these versions. Run the following script to check what versions are actually available:
#!/bin/bash
# Description: Check available versions of dev dependencies
npm view jest versions --json | tail -20
npm view @types/jest versions --json | tail -20
npm view eslint versions --json | tail -20
npm view typescript versions --json | tail -20
npm view ts-jest versions --json | tail -20🤖 Prompt for AI Agents
In packages/tracing/package.json around lines 22-28, the devDependencies list
contains invalid/incorrect versions (e.g., jest ~30.2.0 and @types/jest
~30.0.0). Verify the actual available stable versions (use npm view/npm info as
suggested), then update package.json to use a valid Jest 29.x version and the
matching @types/jest 29.x, ensure ts-jest and typescript versions are compatible
with that Jest release, save the corrected versions in package.json, run npm
install to update lockfile, and run the test suite to confirm everything works.
Proposed changes (including videos or screenshots)
It normalizes ESLint configuration for
@rocket.chat/tracing.Issue(s)
ARCH-1894
Steps to test or reproduce
Further comments
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.