braintrust 3.3.0-rc.45 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +52 -67
  2. package/dev/dist/index.d.mts +53 -9
  3. package/dev/dist/index.d.ts +53 -9
  4. package/dev/dist/index.js +1839 -1298
  5. package/dev/dist/index.mjs +1503 -962
  6. package/dist/auto-instrumentations/bundler/esbuild.cjs +270 -23
  7. package/dist/auto-instrumentations/bundler/esbuild.mjs +2 -2
  8. package/dist/auto-instrumentations/bundler/rollup.cjs +270 -23
  9. package/dist/auto-instrumentations/bundler/rollup.mjs +2 -2
  10. package/dist/auto-instrumentations/bundler/vite.cjs +270 -23
  11. package/dist/auto-instrumentations/bundler/vite.mjs +2 -2
  12. package/dist/auto-instrumentations/bundler/webpack.cjs +270 -23
  13. package/dist/auto-instrumentations/bundler/webpack.mjs +2 -2
  14. package/dist/auto-instrumentations/{chunk-OLOPGWTJ.mjs → chunk-D5ZPIUEL.mjs} +1 -1
  15. package/dist/auto-instrumentations/chunk-LVWWLUMN.mjs +535 -0
  16. package/dist/auto-instrumentations/hook.mjs +306 -23
  17. package/dist/auto-instrumentations/index.cjs +270 -23
  18. package/dist/auto-instrumentations/index.d.mts +5 -5
  19. package/dist/auto-instrumentations/index.d.ts +5 -5
  20. package/dist/auto-instrumentations/index.mjs +1 -1
  21. package/dist/auto-instrumentations/loader/esm-hook.mjs +7 -8
  22. package/dist/browser.d.mts +558 -47
  23. package/dist/browser.d.ts +558 -47
  24. package/dist/browser.js +2432 -2174
  25. package/dist/browser.mjs +2432 -2174
  26. package/dist/cli.js +1732 -1105
  27. package/dist/edge-light.d.mts +1 -1
  28. package/dist/edge-light.d.ts +1 -1
  29. package/dist/edge-light.js +2342 -2086
  30. package/dist/edge-light.mjs +2342 -2086
  31. package/dist/index.d.mts +558 -47
  32. package/dist/index.d.ts +558 -47
  33. package/dist/index.js +2655 -2399
  34. package/dist/index.mjs +2433 -2177
  35. package/dist/instrumentation/index.d.mts +16 -22
  36. package/dist/instrumentation/index.d.ts +16 -22
  37. package/dist/instrumentation/index.js +1558 -1068
  38. package/dist/instrumentation/index.mjs +1558 -1068
  39. package/dist/workerd.d.mts +1 -1
  40. package/dist/workerd.d.ts +1 -1
  41. package/dist/workerd.js +2342 -2086
  42. package/dist/workerd.mjs +2342 -2086
  43. package/package.json +6 -3
  44. package/dist/auto-instrumentations/chunk-KVX7OFPD.mjs +0 -288
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "braintrust",
3
- "version": "3.3.0-rc.45",
3
+ "version": "3.4.0",
4
4
  "description": "SDK for integrating Braintrust",
5
5
  "repository": {
6
6
  "type": "git",
@@ -107,6 +107,7 @@
107
107
  ],
108
108
  "scripts": {
109
109
  "build": "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" tsup",
110
+ "check:typings": "tsc --noEmit",
110
111
  "watch": "tsup --watch",
111
112
  "clean": "rm -r dist/* && rm -r dev/dist/*",
112
113
  "docs": "npx typedoc --options typedoc.json src/node/index.ts",
@@ -127,7 +128,8 @@
127
128
  "test:vitest": "pnpm --filter @braintrust/vitest-wrapper-tests test",
128
129
  "test:output": "tsx scripts/test-output.ts --with-comparison --with-metrics --with-progress",
129
130
  "lint": "eslint .",
130
- "fix:eslint": "eslint --fix ."
131
+ "fix:lint": "eslint --fix .",
132
+ "playground": "tsx playground.ts"
131
133
  },
132
134
  "author": "",
133
135
  "license": "MIT",
@@ -158,6 +160,7 @@
158
160
  "cross-env": "^7.0.3",
159
161
  "eslint-plugin-node-import": "^1.0.5",
160
162
  "jiti": "^2.6.1",
163
+ "openai": "6.25.0",
161
164
  "openapi-zod-client": "^1.18.3",
162
165
  "rollup": "^4.28.1",
163
166
  "vite": "^5.4.14",
@@ -186,7 +189,7 @@
186
189
  "cli-progress": "^3.12.0",
187
190
  "cli-table3": "^0.6.5",
188
191
  "cors": "^2.8.5",
189
- "dc-browser": "^1.0.2",
192
+ "dc-browser": "^1.0.3",
190
193
  "dotenv": "^16.4.5",
191
194
  "esbuild": "^0.27.0",
192
195
  "eventsource-parser": "^1.1.2",
@@ -1,288 +0,0 @@
1
- // src/auto-instrumentations/configs/openai.ts
2
- var openaiConfigs = [
3
- // Chat Completions
4
- {
5
- channelName: "chat.completions.create",
6
- module: {
7
- name: "openai",
8
- versionRange: ">=4.0.0",
9
- filePath: "resources/chat/completions.mjs"
10
- },
11
- functionQuery: {
12
- className: "Completions",
13
- methodName: "create",
14
- kind: "Async"
15
- }
16
- },
17
- // Embeddings
18
- {
19
- channelName: "embeddings.create",
20
- module: {
21
- name: "openai",
22
- versionRange: ">=4.0.0",
23
- filePath: "resources/embeddings.mjs"
24
- },
25
- functionQuery: {
26
- className: "Embeddings",
27
- methodName: "create",
28
- kind: "Async"
29
- }
30
- },
31
- // Beta Chat Completions Parse
32
- {
33
- channelName: "beta.chat.completions.parse",
34
- module: {
35
- name: "openai",
36
- versionRange: ">=4.0.0",
37
- filePath: "resources/beta/chat/completions.mjs"
38
- },
39
- functionQuery: {
40
- className: "Completions",
41
- methodName: "parse",
42
- kind: "Async"
43
- }
44
- },
45
- // Moderations
46
- {
47
- channelName: "moderations.create",
48
- module: {
49
- name: "openai",
50
- versionRange: ">=4.0.0",
51
- filePath: "resources/moderations.mjs"
52
- },
53
- functionQuery: {
54
- className: "Moderations",
55
- methodName: "create",
56
- kind: "Async"
57
- }
58
- },
59
- // Beta Chat Completions Stream
60
- {
61
- channelName: "beta.chat.completions.stream",
62
- module: {
63
- name: "openai",
64
- versionRange: ">=4.0.0",
65
- filePath: "resources/beta/chat/completions.mjs"
66
- },
67
- functionQuery: {
68
- className: "Completions",
69
- methodName: "stream",
70
- kind: "Sync"
71
- }
72
- },
73
- // Responses API (v4.87.0+)
74
- {
75
- channelName: "responses.create",
76
- module: {
77
- name: "openai",
78
- versionRange: ">=4.87.0",
79
- filePath: "resources/responses/responses.mjs"
80
- },
81
- functionQuery: {
82
- className: "Responses",
83
- methodName: "create",
84
- kind: "Async"
85
- }
86
- },
87
- {
88
- channelName: "responses.stream",
89
- module: {
90
- name: "openai",
91
- versionRange: ">=4.87.0",
92
- filePath: "resources/responses/responses.mjs"
93
- },
94
- functionQuery: {
95
- className: "Responses",
96
- methodName: "stream",
97
- kind: "Sync"
98
- }
99
- },
100
- {
101
- channelName: "responses.parse",
102
- module: {
103
- name: "openai",
104
- versionRange: ">=4.87.0",
105
- filePath: "resources/responses/responses.mjs"
106
- },
107
- functionQuery: {
108
- className: "Responses",
109
- methodName: "parse",
110
- kind: "Async"
111
- }
112
- }
113
- ];
114
-
115
- // src/auto-instrumentations/configs/anthropic.ts
116
- var anthropicConfigs = [
117
- // Messages API - create (supports streaming via stream=true parameter)
118
- {
119
- channelName: "messages.create",
120
- module: {
121
- name: "@anthropic-ai/sdk",
122
- versionRange: ">=0.60.0",
123
- filePath: "resources/messages.mjs"
124
- },
125
- functionQuery: {
126
- className: "Messages",
127
- methodName: "create",
128
- kind: "Async"
129
- }
130
- },
131
- // Beta Messages API - create (supports streaming via stream=true parameter)
132
- {
133
- channelName: "beta.messages.create",
134
- module: {
135
- name: "@anthropic-ai/sdk",
136
- versionRange: ">=0.60.0",
137
- filePath: "resources/beta/messages/messages.mjs"
138
- },
139
- functionQuery: {
140
- className: "Messages",
141
- methodName: "create",
142
- kind: "Async"
143
- }
144
- }
145
- ];
146
-
147
- // src/auto-instrumentations/configs/ai-sdk.ts
148
- var aiSDKConfigs = [
149
- // generateText - async function
150
- {
151
- channelName: "generateText",
152
- module: {
153
- name: "ai",
154
- versionRange: ">=3.0.0",
155
- filePath: "dist/index.mjs"
156
- },
157
- functionQuery: {
158
- functionName: "generateText",
159
- kind: "Async"
160
- }
161
- },
162
- // streamText - async function
163
- {
164
- channelName: "streamText",
165
- module: {
166
- name: "ai",
167
- versionRange: ">=3.0.0",
168
- filePath: "dist/index.mjs"
169
- },
170
- functionQuery: {
171
- functionName: "streamText",
172
- kind: "Async"
173
- }
174
- },
175
- // generateObject - async function
176
- {
177
- channelName: "generateObject",
178
- module: {
179
- name: "ai",
180
- versionRange: ">=3.0.0",
181
- filePath: "dist/index.mjs"
182
- },
183
- functionQuery: {
184
- functionName: "generateObject",
185
- kind: "Async"
186
- }
187
- },
188
- // streamObject - async function
189
- {
190
- channelName: "streamObject",
191
- module: {
192
- name: "ai",
193
- versionRange: ">=3.0.0",
194
- filePath: "dist/index.mjs"
195
- },
196
- functionQuery: {
197
- functionName: "streamObject",
198
- kind: "Async"
199
- }
200
- },
201
- // Agent.generate - async method (v3-v5 only, Agent structure changed in v6)
202
- {
203
- channelName: "Agent.generate",
204
- module: {
205
- name: "ai",
206
- versionRange: ">=3.0.0 <6.0.0",
207
- filePath: "dist/index.mjs"
208
- },
209
- functionQuery: {
210
- className: "Agent",
211
- methodName: "generate",
212
- kind: "Async"
213
- }
214
- },
215
- // Agent.stream - async method (v3-v5 only, Agent structure changed in v6)
216
- {
217
- channelName: "Agent.stream",
218
- module: {
219
- name: "ai",
220
- versionRange: ">=3.0.0 <6.0.0",
221
- filePath: "dist/index.mjs"
222
- },
223
- functionQuery: {
224
- className: "Agent",
225
- methodName: "stream",
226
- kind: "Async"
227
- }
228
- }
229
- ];
230
-
231
- // src/auto-instrumentations/configs/claude-agent-sdk.ts
232
- var claudeAgentSDKConfigs = [
233
- // query - Main entry point for agent interactions (top-level exported async generator function)
234
- {
235
- channelName: "query",
236
- module: {
237
- name: "@anthropic-ai/claude-agent-sdk",
238
- versionRange: ">=0.1.0",
239
- filePath: "sdk.mjs"
240
- },
241
- functionQuery: {
242
- functionName: "query",
243
- kind: "Async"
244
- }
245
- }
246
- ];
247
-
248
- // src/auto-instrumentations/configs/google-genai.ts
249
- var googleGenAIConfigs = [
250
- // Models.generateContentInternal - The actual class method (Node.js entry point)
251
- // Note: generateContent is an arrow function property that calls this internal method
252
- {
253
- channelName: "models.generateContent",
254
- module: {
255
- name: "@google/genai",
256
- versionRange: ">=1.0.0",
257
- filePath: "dist/node/index.mjs"
258
- },
259
- functionQuery: {
260
- className: "Models",
261
- methodName: "generateContentInternal",
262
- kind: "Async"
263
- }
264
- },
265
- // Models.generateContentStreamInternal - The actual class method (Node.js entry point)
266
- // Note: generateContentStream is an arrow function property that calls this internal method
267
- {
268
- channelName: "models.generateContentStream",
269
- module: {
270
- name: "@google/genai",
271
- versionRange: ">=1.0.0",
272
- filePath: "dist/node/index.mjs"
273
- },
274
- functionQuery: {
275
- className: "Models",
276
- methodName: "generateContentStreamInternal",
277
- kind: "Async"
278
- }
279
- }
280
- ];
281
-
282
- export {
283
- openaiConfigs,
284
- anthropicConfigs,
285
- aiSDKConfigs,
286
- claudeAgentSDKConfigs,
287
- googleGenAIConfigs
288
- };