@braintrust/otel can't be installed alongside OpenTelemetry JS 3
维护者通常 1 天内回复
@lforst 已经在做这个了。
开始于 2026年11月6日。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 57/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- node.js, typescript
调研方向
Start with src/otel.ts and the existing otel-v1/ and otel-v2/ test environments; the issue describes the missing runtime import and an OTel 3 install failure. Check how the current environments test peer dependency compatibility, then verify installation and tests against OTel 3. Done means @braintrust/otel can install with the listed OTel 3 packages and resolve BatchSpanProcessor from the supported SDK.
由索引模型根据 Issue 内容生成。
描述
@braintrust/otel 1.1.0 can't be installed in an app that uses OpenTelemetry JS 3, released on 20 October.
Repro
mkdir bt-otel3 && cd bt-otel3 && npm init -y
npm install braintrust @braintrust/otel @opentelemetry/[email protected] @opentelemetry/[email protected] @opentelemetry/[email protected]
# npm error ERESOLVE unable to resolve dependency tree
# peer @opentelemetry/api@">=1.3.0 <1.10.0" from @opentelemetry/[email protected]
braintrust 3.43.0, Node 25.6.1, npm 11.
Cause
OpenTelemetry JS 3 removed @opentelemetry/sdk-trace-base. It is frozen at 2.12.0, which peers @opentelemetry/api <1.10.0, and its classes moved to @opentelemetry/sdk-trace. @braintrust/otel declares sdk-trace-base as a required peer, and src/otel.ts imports BatchSpanProcessor from it at runtime, so there is no install that satisfies both it and an OTel 3 stack.
A possible fix, in the package's existing pattern
- Add an
otel-v3/test environment next tootel-v1/andotel-v2/. - Make
@opentelemetry/sdk-trace-basean optional peer, and add@opentelemetry/sdk-traceas an optional peer. - Resolve
BatchSpanProcessorfrom@opentelemetry/sdk-tracewhen present, otherwise fromsdk-trace-base.ReadableSpanandSpanProcessorare only used as types.
Would you take that, or would you rather ship OTel 3 support another way (for example a separate entry point)? I'm happy to open the PR either way.
- 主要语言
- TypeScript
- 星标
- 29
- 派生
- 22
- 平均合并
- 1 天 25 分钟
- 30 天内合并 PR
- 80
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
braintrustdata/braintrust-sdk-javascript 的其他 Issue
-
wrapAISDK copies AI SDK v7 file bytes one key per byte instead of turning them into attachments可能已有人在做 @AbhiPrasad 今天认领。 未关闭typescript
braintrustdata/braintrust-sdk-javascript#2750 · 已指派 1 人 ·
维护者通常 1 天内回复
-
typescript
难度 3/5 1-2 天 新手友好度 45/100
braintrustdata/braintrust-sdk-javascript#2708 ·
维护者通常 1 天内回复
-
typescript
难度 4/5 3-5 天 新手友好度 35/100
braintrustdata/braintrust-sdk-javascript#2707 ·
维护者通常 1 天内回复
-
typescript
难度 3/5 1-2 天 新手友好度 45/100
braintrustdata/braintrust-sdk-javascript#2686 ·
维护者通常 1 天内回复
-
typescript
难度 4/5 3-5 天 新手友好度 45/100
braintrustdata/braintrust-sdk-javascript#2685 ·
维护者通常 1 天内回复
查看 braintrustdata/braintrust-sdk-javascript 的全部 Issue
相似的 Issue
-
Add: ESP 2 RO未关闭approved check:passed streams:add
难度 2/5 1-3 小时 新手友好度 66/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
ipaas: Configure form shows "Deploy to apply." and "Overrides selected Link" when they don't apply可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 2/5 1-3 小时 新手友好度 67/100
wso2/integration-control-plane#1118 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 68/100
UTDNebula/utd-notebook#311 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复