braintrust 3.13.0 → 3.14.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 (50) hide show
  1. package/dev/dist/index.d.mts +6 -8
  2. package/dev/dist/index.d.ts +6 -8
  3. package/dev/dist/index.js +809 -466
  4. package/dev/dist/index.mjs +367 -24
  5. package/dist/apply-auto-instrumentation.js +204 -174
  6. package/dist/apply-auto-instrumentation.mjs +35 -5
  7. package/dist/auto-instrumentations/bundler/esbuild.cjs +225 -1
  8. package/dist/auto-instrumentations/bundler/esbuild.mjs +2 -1
  9. package/dist/auto-instrumentations/bundler/next.cjs +225 -1
  10. package/dist/auto-instrumentations/bundler/next.mjs +3 -2
  11. package/dist/auto-instrumentations/bundler/rollup.cjs +225 -1
  12. package/dist/auto-instrumentations/bundler/rollup.mjs +2 -1
  13. package/dist/auto-instrumentations/bundler/vite.cjs +225 -1
  14. package/dist/auto-instrumentations/bundler/vite.mjs +2 -1
  15. package/dist/auto-instrumentations/bundler/webpack-loader.cjs +8 -0
  16. package/dist/auto-instrumentations/bundler/webpack.cjs +225 -1
  17. package/dist/auto-instrumentations/bundler/webpack.mjs +3 -2
  18. package/dist/auto-instrumentations/chunk-J57YF7WS.mjs +208 -0
  19. package/dist/auto-instrumentations/{chunk-WFEUJACP.mjs → chunk-OTUQ7KH5.mjs} +1 -1
  20. package/dist/auto-instrumentations/chunk-QFMACSOL.mjs +280 -0
  21. package/dist/auto-instrumentations/{chunk-GJOO4ESL.mjs → chunk-XKAAVWT6.mjs} +23 -1
  22. package/dist/auto-instrumentations/hook.mjs +7980 -7
  23. package/dist/auto-instrumentations/loader/cjs-patch.cjs +194 -4
  24. package/dist/auto-instrumentations/loader/cjs-patch.mjs +13 -27
  25. package/dist/auto-instrumentations/loader/esm-hook.mjs +24 -10
  26. package/dist/browser.d.mts +127 -11
  27. package/dist/browser.d.ts +127 -11
  28. package/dist/browser.js +293 -24
  29. package/dist/browser.mjs +293 -24
  30. package/dist/{chunk-26JGOELH.js → chunk-NKD77KGB.js} +179 -1
  31. package/dist/{chunk-75IQCUB2.mjs → chunk-NU2GSPHX.mjs} +179 -1
  32. package/dist/cli.js +374 -51
  33. package/dist/edge-light.d.mts +1 -1
  34. package/dist/edge-light.d.ts +1 -1
  35. package/dist/edge-light.js +293 -24
  36. package/dist/edge-light.mjs +293 -24
  37. package/dist/index.d.mts +127 -11
  38. package/dist/index.d.ts +127 -11
  39. package/dist/index.js +1113 -838
  40. package/dist/index.mjs +305 -30
  41. package/dist/instrumentation/index.d.mts +7 -8
  42. package/dist/instrumentation/index.d.ts +7 -8
  43. package/dist/instrumentation/index.js +101 -24
  44. package/dist/instrumentation/index.mjs +101 -24
  45. package/dist/workerd.d.mts +1 -1
  46. package/dist/workerd.d.ts +1 -1
  47. package/dist/workerd.js +293 -24
  48. package/dist/workerd.mjs +293 -24
  49. package/package.json +1 -7
  50. package/dist/auto-instrumentations/chunk-MWZXZQUO.mjs +0 -81
@@ -4019,6 +4019,76 @@ var LRUCache = class {
4019
4019
  }
4020
4020
  };
4021
4021
 
4022
+ // src/prompt-cache/cache-config.ts
4023
+ var CACHE_LOCATION_ENV_VAR = "BRAINTRUST_CACHE_LOCATION";
4024
+ var DEFAULT_CACHE_MEMORY_MAX = 1 << 10;
4025
+ var DEFAULT_CACHE_DISK_MAX = 1 << 20;
4026
+ var warnedInvalidCacheModeEnvValue = false;
4027
+ var warnedUnavailableDiskCacheMode = false;
4028
+ function warnInvalidCacheMode(value) {
4029
+ if (warnedInvalidCacheModeEnvValue) {
4030
+ return;
4031
+ }
4032
+ warnedInvalidCacheModeEnvValue = true;
4033
+ debugLogger.warn(
4034
+ `Invalid ${CACHE_LOCATION_ENV_VAR} value "${value}". Expected "mixed", "memory", "disk", or "none". Falling back to "mixed".`
4035
+ );
4036
+ }
4037
+ function warnUnavailableDiskCache() {
4038
+ if (warnedUnavailableDiskCacheMode) {
4039
+ return;
4040
+ }
4041
+ warnedUnavailableDiskCacheMode = true;
4042
+ debugLogger.warn(
4043
+ `Disk cache is not supported on this platform, so ${CACHE_LOCATION_ENV_VAR}="disk" disables prompt and parameters caching.`
4044
+ );
4045
+ }
4046
+ function parseCacheMode() {
4047
+ const value = isomorph_default.getEnv(CACHE_LOCATION_ENV_VAR);
4048
+ const normalized = value?.trim().toLowerCase();
4049
+ if (!normalized) {
4050
+ return "mixed";
4051
+ }
4052
+ if (normalized === "mixed" || normalized === "memory" || normalized === "disk" || normalized === "none") {
4053
+ return normalized;
4054
+ }
4055
+ warnInvalidCacheMode(value ?? "");
4056
+ return "mixed";
4057
+ }
4058
+ function parsePositiveIntegerEnv(envVar, defaultValue) {
4059
+ const value = Number(isomorph_default.getEnv(envVar));
4060
+ return Number.isInteger(value) && value > 0 ? value : defaultValue;
4061
+ }
4062
+ function createCacheLayers({
4063
+ memoryMaxEnvVar,
4064
+ diskCacheDirEnvVar,
4065
+ diskMaxEnvVar,
4066
+ getDefaultDiskCacheDir
4067
+ }) {
4068
+ const mode = parseCacheMode();
4069
+ const memoryCache = mode === "mixed" || mode === "memory" ? new LRUCache({
4070
+ max: parsePositiveIntegerEnv(
4071
+ memoryMaxEnvVar,
4072
+ DEFAULT_CACHE_MEMORY_MAX
4073
+ )
4074
+ }) : void 0;
4075
+ let diskCache;
4076
+ if (mode === "mixed" || mode === "disk") {
4077
+ if (canUseDiskCache()) {
4078
+ diskCache = new DiskCache({
4079
+ cacheDir: isomorph_default.getEnv(diskCacheDirEnvVar) ?? getDefaultDiskCacheDir(),
4080
+ max: parsePositiveIntegerEnv(diskMaxEnvVar, DEFAULT_CACHE_DISK_MAX)
4081
+ });
4082
+ } else if (mode === "disk") {
4083
+ warnUnavailableDiskCache();
4084
+ }
4085
+ }
4086
+ if (diskCache) {
4087
+ return { memoryCache, diskCache };
4088
+ }
4089
+ return { memoryCache };
4090
+ }
4091
+
4022
4092
  // src/prompt-cache/prompt-cache.ts
4023
4093
  function createCacheKey(key) {
4024
4094
  if (key.id) {
@@ -4046,16 +4116,18 @@ var PromptCache = class {
4046
4116
  */
4047
4117
  async get(key) {
4048
4118
  const cacheKey = createCacheKey(key);
4049
- const memoryPrompt = this.memoryCache.get(cacheKey);
4050
- if (memoryPrompt !== void 0) {
4051
- return memoryPrompt;
4119
+ if (this.memoryCache) {
4120
+ const memoryPrompt = this.memoryCache.get(cacheKey);
4121
+ if (memoryPrompt !== void 0) {
4122
+ return memoryPrompt;
4123
+ }
4052
4124
  }
4053
4125
  if (this.diskCache) {
4054
4126
  const diskPrompt = await this.diskCache.get(cacheKey);
4055
4127
  if (!diskPrompt) {
4056
4128
  return void 0;
4057
4129
  }
4058
- this.memoryCache.set(cacheKey, diskPrompt);
4130
+ this.memoryCache?.set(cacheKey, diskPrompt);
4059
4131
  return diskPrompt;
4060
4132
  }
4061
4133
  return void 0;
@@ -4070,7 +4142,7 @@ var PromptCache = class {
4070
4142
  */
4071
4143
  async set(key, value) {
4072
4144
  const cacheKey = createCacheKey(key);
4073
- this.memoryCache.set(cacheKey, value);
4145
+ this.memoryCache?.set(cacheKey, value);
4074
4146
  if (this.diskCache) {
4075
4147
  await this.diskCache.set(cacheKey, value);
4076
4148
  }
@@ -4100,23 +4172,25 @@ var ParametersCache = class {
4100
4172
  }
4101
4173
  async get(key) {
4102
4174
  const cacheKey = createCacheKey2(key);
4103
- const memoryParams = this.memoryCache.get(cacheKey);
4104
- if (memoryParams !== void 0) {
4105
- return memoryParams;
4175
+ if (this.memoryCache) {
4176
+ const memoryParams = this.memoryCache.get(cacheKey);
4177
+ if (memoryParams !== void 0) {
4178
+ return memoryParams;
4179
+ }
4106
4180
  }
4107
4181
  if (this.diskCache) {
4108
4182
  const diskParams = await this.diskCache.get(cacheKey);
4109
4183
  if (!diskParams) {
4110
4184
  return void 0;
4111
4185
  }
4112
- this.memoryCache.set(cacheKey, diskParams);
4186
+ this.memoryCache?.set(cacheKey, diskParams);
4113
4187
  return diskParams;
4114
4188
  }
4115
4189
  return void 0;
4116
4190
  }
4117
4191
  async set(key, value) {
4118
4192
  const cacheKey = createCacheKey2(key);
4119
- this.memoryCache.set(cacheKey, value);
4193
+ this.memoryCache?.set(cacheKey, value);
4120
4194
  if (this.diskCache) {
4121
4195
  await this.diskCache.set(cacheKey, value);
4122
4196
  }
@@ -4648,21 +4722,22 @@ var BraintrustState = class _BraintrustState {
4648
4722
  setGlobalDebugLogLevel(void 0);
4649
4723
  }
4650
4724
  this.resetLoginInfo();
4651
- const memoryCache = new LRUCache({
4652
- max: Number(isomorph_default.getEnv("BRAINTRUST_PROMPT_CACHE_MEMORY_MAX")) ?? 1 << 10
4725
+ const { memoryCache, diskCache } = createCacheLayers({
4726
+ memoryMaxEnvVar: "BRAINTRUST_PROMPT_CACHE_MEMORY_MAX",
4727
+ diskCacheDirEnvVar: "BRAINTRUST_PROMPT_CACHE_DIR",
4728
+ diskMaxEnvVar: "BRAINTRUST_PROMPT_CACHE_DISK_MAX",
4729
+ getDefaultDiskCacheDir: () => `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/prompt_cache`
4653
4730
  });
4654
- const diskCache = canUseDiskCache() ? new DiskCache({
4655
- cacheDir: isomorph_default.getEnv("BRAINTRUST_PROMPT_CACHE_DIR") ?? `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/prompt_cache`,
4656
- max: Number(isomorph_default.getEnv("BRAINTRUST_PROMPT_CACHE_DISK_MAX")) ?? 1 << 20
4657
- }) : void 0;
4658
4731
  this.promptCache = new PromptCache({ memoryCache, diskCache });
4659
- const parametersMemoryCache = new LRUCache({
4660
- max: Number(isomorph_default.getEnv("BRAINTRUST_PARAMETERS_CACHE_MEMORY_MAX")) ?? 1 << 10
4732
+ const {
4733
+ memoryCache: parametersMemoryCache,
4734
+ diskCache: parametersDiskCache
4735
+ } = createCacheLayers({
4736
+ memoryMaxEnvVar: "BRAINTRUST_PARAMETERS_CACHE_MEMORY_MAX",
4737
+ diskCacheDirEnvVar: "BRAINTRUST_PARAMETERS_CACHE_DIR",
4738
+ diskMaxEnvVar: "BRAINTRUST_PARAMETERS_CACHE_DISK_MAX",
4739
+ getDefaultDiskCacheDir: () => `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/parameters_cache`
4661
4740
  });
4662
- const parametersDiskCache = canUseDiskCache() ? new DiskCache({
4663
- cacheDir: isomorph_default.getEnv("BRAINTRUST_PARAMETERS_CACHE_DIR") ?? `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/parameters_cache`,
4664
- max: Number(isomorph_default.getEnv("BRAINTRUST_PARAMETERS_CACHE_DISK_MAX")) ?? 1 << 20
4665
- }) : void 0;
4666
4741
  this.parametersCache = new ParametersCache({
4667
4742
  memoryCache: parametersMemoryCache,
4668
4743
  diskCache: parametersDiskCache
@@ -23634,7 +23709,7 @@ var BraintrustPlugin = class extends BasePlugin {
23634
23709
  this.config = config;
23635
23710
  }
23636
23711
  onEnable() {
23637
- const integrations = this.config.integrations || {};
23712
+ const integrations = this.config.integrations ?? {};
23638
23713
  if (integrations.openai !== false) {
23639
23714
  this.openaiPlugin = new OpenAIPlugin();
23640
23715
  this.openaiPlugin.enable();
@@ -23699,7 +23774,7 @@ var BraintrustPlugin = class extends BasePlugin {
23699
23774
  this.genkitPlugin = new GenkitPlugin();
23700
23775
  this.genkitPlugin.enable();
23701
23776
  }
23702
- if (getIntegrationConfig(integrations, "gitHubCopilot") !== false) {
23777
+ if (integrations.gitHubCopilot !== false) {
23703
23778
  this.gitHubCopilotPlugin = new GitHubCopilotPlugin();
23704
23779
  this.gitHubCopilotPlugin.enable();
23705
23780
  }
@@ -23812,6 +23887,7 @@ var envIntegrationAliases = {
23812
23887
  cursorsdk: "cursorSDK",
23813
23888
  flue: "flue",
23814
23889
  "flue-runtime": "flue",
23890
+ mastra: "mastra",
23815
23891
  "openai-agents": "openAIAgents",
23816
23892
  openaiagents: "openAIAgents",
23817
23893
  "openai-agents-core": "openAIAgents",
@@ -23854,6 +23930,7 @@ function getDefaultInstrumentationIntegrations() {
23854
23930
  cursor: true,
23855
23931
  cursorSDK: true,
23856
23932
  flue: true,
23933
+ mastra: true,
23857
23934
  openAIAgents: true,
23858
23935
  openrouter: true,
23859
23936
  openrouterAgent: true,
@@ -3979,6 +3979,76 @@ var LRUCache = class {
3979
3979
  }
3980
3980
  };
3981
3981
 
3982
+ // src/prompt-cache/cache-config.ts
3983
+ var CACHE_LOCATION_ENV_VAR = "BRAINTRUST_CACHE_LOCATION";
3984
+ var DEFAULT_CACHE_MEMORY_MAX = 1 << 10;
3985
+ var DEFAULT_CACHE_DISK_MAX = 1 << 20;
3986
+ var warnedInvalidCacheModeEnvValue = false;
3987
+ var warnedUnavailableDiskCacheMode = false;
3988
+ function warnInvalidCacheMode(value) {
3989
+ if (warnedInvalidCacheModeEnvValue) {
3990
+ return;
3991
+ }
3992
+ warnedInvalidCacheModeEnvValue = true;
3993
+ debugLogger.warn(
3994
+ `Invalid ${CACHE_LOCATION_ENV_VAR} value "${value}". Expected "mixed", "memory", "disk", or "none". Falling back to "mixed".`
3995
+ );
3996
+ }
3997
+ function warnUnavailableDiskCache() {
3998
+ if (warnedUnavailableDiskCacheMode) {
3999
+ return;
4000
+ }
4001
+ warnedUnavailableDiskCacheMode = true;
4002
+ debugLogger.warn(
4003
+ `Disk cache is not supported on this platform, so ${CACHE_LOCATION_ENV_VAR}="disk" disables prompt and parameters caching.`
4004
+ );
4005
+ }
4006
+ function parseCacheMode() {
4007
+ const value = isomorph_default.getEnv(CACHE_LOCATION_ENV_VAR);
4008
+ const normalized = value?.trim().toLowerCase();
4009
+ if (!normalized) {
4010
+ return "mixed";
4011
+ }
4012
+ if (normalized === "mixed" || normalized === "memory" || normalized === "disk" || normalized === "none") {
4013
+ return normalized;
4014
+ }
4015
+ warnInvalidCacheMode(value ?? "");
4016
+ return "mixed";
4017
+ }
4018
+ function parsePositiveIntegerEnv(envVar, defaultValue) {
4019
+ const value = Number(isomorph_default.getEnv(envVar));
4020
+ return Number.isInteger(value) && value > 0 ? value : defaultValue;
4021
+ }
4022
+ function createCacheLayers({
4023
+ memoryMaxEnvVar,
4024
+ diskCacheDirEnvVar,
4025
+ diskMaxEnvVar,
4026
+ getDefaultDiskCacheDir
4027
+ }) {
4028
+ const mode = parseCacheMode();
4029
+ const memoryCache = mode === "mixed" || mode === "memory" ? new LRUCache({
4030
+ max: parsePositiveIntegerEnv(
4031
+ memoryMaxEnvVar,
4032
+ DEFAULT_CACHE_MEMORY_MAX
4033
+ )
4034
+ }) : void 0;
4035
+ let diskCache;
4036
+ if (mode === "mixed" || mode === "disk") {
4037
+ if (canUseDiskCache()) {
4038
+ diskCache = new DiskCache({
4039
+ cacheDir: isomorph_default.getEnv(diskCacheDirEnvVar) ?? getDefaultDiskCacheDir(),
4040
+ max: parsePositiveIntegerEnv(diskMaxEnvVar, DEFAULT_CACHE_DISK_MAX)
4041
+ });
4042
+ } else if (mode === "disk") {
4043
+ warnUnavailableDiskCache();
4044
+ }
4045
+ }
4046
+ if (diskCache) {
4047
+ return { memoryCache, diskCache };
4048
+ }
4049
+ return { memoryCache };
4050
+ }
4051
+
3982
4052
  // src/prompt-cache/prompt-cache.ts
3983
4053
  function createCacheKey(key) {
3984
4054
  if (key.id) {
@@ -4006,16 +4076,18 @@ var PromptCache = class {
4006
4076
  */
4007
4077
  async get(key) {
4008
4078
  const cacheKey = createCacheKey(key);
4009
- const memoryPrompt = this.memoryCache.get(cacheKey);
4010
- if (memoryPrompt !== void 0) {
4011
- return memoryPrompt;
4079
+ if (this.memoryCache) {
4080
+ const memoryPrompt = this.memoryCache.get(cacheKey);
4081
+ if (memoryPrompt !== void 0) {
4082
+ return memoryPrompt;
4083
+ }
4012
4084
  }
4013
4085
  if (this.diskCache) {
4014
4086
  const diskPrompt = await this.diskCache.get(cacheKey);
4015
4087
  if (!diskPrompt) {
4016
4088
  return void 0;
4017
4089
  }
4018
- this.memoryCache.set(cacheKey, diskPrompt);
4090
+ this.memoryCache?.set(cacheKey, diskPrompt);
4019
4091
  return diskPrompt;
4020
4092
  }
4021
4093
  return void 0;
@@ -4030,7 +4102,7 @@ var PromptCache = class {
4030
4102
  */
4031
4103
  async set(key, value) {
4032
4104
  const cacheKey = createCacheKey(key);
4033
- this.memoryCache.set(cacheKey, value);
4105
+ this.memoryCache?.set(cacheKey, value);
4034
4106
  if (this.diskCache) {
4035
4107
  await this.diskCache.set(cacheKey, value);
4036
4108
  }
@@ -4060,23 +4132,25 @@ var ParametersCache = class {
4060
4132
  }
4061
4133
  async get(key) {
4062
4134
  const cacheKey = createCacheKey2(key);
4063
- const memoryParams = this.memoryCache.get(cacheKey);
4064
- if (memoryParams !== void 0) {
4065
- return memoryParams;
4135
+ if (this.memoryCache) {
4136
+ const memoryParams = this.memoryCache.get(cacheKey);
4137
+ if (memoryParams !== void 0) {
4138
+ return memoryParams;
4139
+ }
4066
4140
  }
4067
4141
  if (this.diskCache) {
4068
4142
  const diskParams = await this.diskCache.get(cacheKey);
4069
4143
  if (!diskParams) {
4070
4144
  return void 0;
4071
4145
  }
4072
- this.memoryCache.set(cacheKey, diskParams);
4146
+ this.memoryCache?.set(cacheKey, diskParams);
4073
4147
  return diskParams;
4074
4148
  }
4075
4149
  return void 0;
4076
4150
  }
4077
4151
  async set(key, value) {
4078
4152
  const cacheKey = createCacheKey2(key);
4079
- this.memoryCache.set(cacheKey, value);
4153
+ this.memoryCache?.set(cacheKey, value);
4080
4154
  if (this.diskCache) {
4081
4155
  await this.diskCache.set(cacheKey, value);
4082
4156
  }
@@ -4608,21 +4682,22 @@ var BraintrustState = class _BraintrustState {
4608
4682
  setGlobalDebugLogLevel(void 0);
4609
4683
  }
4610
4684
  this.resetLoginInfo();
4611
- const memoryCache = new LRUCache({
4612
- max: Number(isomorph_default.getEnv("BRAINTRUST_PROMPT_CACHE_MEMORY_MAX")) ?? 1 << 10
4685
+ const { memoryCache, diskCache } = createCacheLayers({
4686
+ memoryMaxEnvVar: "BRAINTRUST_PROMPT_CACHE_MEMORY_MAX",
4687
+ diskCacheDirEnvVar: "BRAINTRUST_PROMPT_CACHE_DIR",
4688
+ diskMaxEnvVar: "BRAINTRUST_PROMPT_CACHE_DISK_MAX",
4689
+ getDefaultDiskCacheDir: () => `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/prompt_cache`
4613
4690
  });
4614
- const diskCache = canUseDiskCache() ? new DiskCache({
4615
- cacheDir: isomorph_default.getEnv("BRAINTRUST_PROMPT_CACHE_DIR") ?? `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/prompt_cache`,
4616
- max: Number(isomorph_default.getEnv("BRAINTRUST_PROMPT_CACHE_DISK_MAX")) ?? 1 << 20
4617
- }) : void 0;
4618
4691
  this.promptCache = new PromptCache({ memoryCache, diskCache });
4619
- const parametersMemoryCache = new LRUCache({
4620
- max: Number(isomorph_default.getEnv("BRAINTRUST_PARAMETERS_CACHE_MEMORY_MAX")) ?? 1 << 10
4692
+ const {
4693
+ memoryCache: parametersMemoryCache,
4694
+ diskCache: parametersDiskCache
4695
+ } = createCacheLayers({
4696
+ memoryMaxEnvVar: "BRAINTRUST_PARAMETERS_CACHE_MEMORY_MAX",
4697
+ diskCacheDirEnvVar: "BRAINTRUST_PARAMETERS_CACHE_DIR",
4698
+ diskMaxEnvVar: "BRAINTRUST_PARAMETERS_CACHE_DISK_MAX",
4699
+ getDefaultDiskCacheDir: () => `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/parameters_cache`
4621
4700
  });
4622
- const parametersDiskCache = canUseDiskCache() ? new DiskCache({
4623
- cacheDir: isomorph_default.getEnv("BRAINTRUST_PARAMETERS_CACHE_DIR") ?? `${isomorph_default.getEnv("HOME") ?? isomorph_default.homedir()}/.braintrust/parameters_cache`,
4624
- max: Number(isomorph_default.getEnv("BRAINTRUST_PARAMETERS_CACHE_DISK_MAX")) ?? 1 << 20
4625
- }) : void 0;
4626
4701
  this.parametersCache = new ParametersCache({
4627
4702
  memoryCache: parametersMemoryCache,
4628
4703
  diskCache: parametersDiskCache
@@ -23594,7 +23669,7 @@ var BraintrustPlugin = class extends BasePlugin {
23594
23669
  this.config = config;
23595
23670
  }
23596
23671
  onEnable() {
23597
- const integrations = this.config.integrations || {};
23672
+ const integrations = this.config.integrations ?? {};
23598
23673
  if (integrations.openai !== false) {
23599
23674
  this.openaiPlugin = new OpenAIPlugin();
23600
23675
  this.openaiPlugin.enable();
@@ -23659,7 +23734,7 @@ var BraintrustPlugin = class extends BasePlugin {
23659
23734
  this.genkitPlugin = new GenkitPlugin();
23660
23735
  this.genkitPlugin.enable();
23661
23736
  }
23662
- if (getIntegrationConfig(integrations, "gitHubCopilot") !== false) {
23737
+ if (integrations.gitHubCopilot !== false) {
23663
23738
  this.gitHubCopilotPlugin = new GitHubCopilotPlugin();
23664
23739
  this.gitHubCopilotPlugin.enable();
23665
23740
  }
@@ -23772,6 +23847,7 @@ var envIntegrationAliases = {
23772
23847
  cursorsdk: "cursorSDK",
23773
23848
  flue: "flue",
23774
23849
  "flue-runtime": "flue",
23850
+ mastra: "mastra",
23775
23851
  "openai-agents": "openAIAgents",
23776
23852
  openaiagents: "openAIAgents",
23777
23853
  "openai-agents-core": "openAIAgents",
@@ -23814,6 +23890,7 @@ function getDefaultInstrumentationIntegrations() {
23814
23890
  cursor: true,
23815
23891
  cursorSDK: true,
23816
23892
  flue: true,
23893
+ mastra: true,
23817
23894
  openAIAgents: true,
23818
23895
  openrouter: true,
23819
23896
  openrouterAgent: true,
@@ -1,2 +1,2 @@
1
- export { AnyDataset, Attachment, AttachmentParams, AttachmentReference, BRAINTRUST_CURRENT_SPAN_STORE, BRAINTRUST_LANGCHAIN_CALLBACK_HANDLER_NAME, BackgroundLoggerOpts, BaseAttachment, BaseExperiment, BaseMetadata, BraintrustLangChainCallbackHandler, BraintrustMiddleware, BraintrustState, BraintrustStream, BraintrustStreamChunk, CachedSpanFetcher, ChatPrompt, CodeFunction, CodeOpts, CodePrompt, CommentEvent, CompiledPrompt, CompiledPromptParams, CompletionPrompt, ContextManager, ContextParentSpanIds, CreateProjectOpts, CurrentSpanStore, DEFAULT_FETCH_BATCH_SIZE, DEFAULT_MAX_REQUEST_SIZE, DataSummary, Dataset, DatasetPipeline, DatasetRecord, DatasetRestorePreviewResult, DatasetRestoreResult, DatasetSnapshot, DatasetSummary, DefaultMetadataType, DefaultPromptArgs, ERR_PERMALINK, EndSpanArgs, Eval, EvalCase, EvalClassifier, EvalHooks, EvalParameterSerializedSchema, EvalParameters, EvalResult, EvalResultWithSummary, EvalScorer, EvalScorerArgs, EvalTask, Evaluator, EvaluatorDef, EvaluatorDefinition, EvaluatorDefinitions, EvaluatorFile, EvaluatorManifest, Experiment, ExperimentLogFullArgs, ExperimentLogPartialArgs, ExperimentSummary, Exportable, ExternalAttachment, ExternalAttachmentParams, FailedHTTPResponse, FullInitDatasetOptions, FullInitOptions, FullLoginOptions, FunctionEvent, GetThreadOptions, IDGenerator, IdField, InitDatasetOptions, InitLoggerOptions, InitOptions, InputField, InstrumentationConfig, InvokeFunctionArgs, InvokeReturn, JSONAttachment, LEGACY_CACHED_HEADER, LOGS3_OVERFLOW_REFERENCE_TYPE, LangChainCallbackHandlerOptions, LazyValue, LoadPromptOptions, LogCommentFullArgs, LogFeedbackFullArgs, LogOptions, Logger, LoginInvalidOrgError, LoginOptions, Logs3OverflowInputRow, Logs3OverflowUpload, MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, ObjectFetcher, ObjectMetadata, OtherExperimentLogFields, ParametersSource, ParentExperimentIds, ParentProjectLogIds, Project, ProjectNameIdMap, PromiseUnless, Prompt, PromptBuilder, PromptContents, PromptDefinition, PromptDefinitionWithTools, PromptOpts, PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, RegisterSandboxOptions, RegisterSandboxResult, Reporter, ReporterBody, SandboxConfig, ScoreSummary, ScorerBuilder, ScorerOpts, SerializedBraintrustState, SetCurrentArg, Span, SpanContext, SpanData, SpanFetcher, SpanImpl, StartSpanArgs, TemplateFormat, TemplateRenderer, TemplateRendererPlugin, TestBackgroundLogger, ToolBuilder, Trace, UUIDGenerator, WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalIso, _internalSetInitialState, addAzureBlobHeaders, braintrustStreamChunkSchema, buildLocalSummary, configureInstrumentation, constructLogs3OverflowRequest, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, deepCopyEvent, default, defaultErrorScoreHandler, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getContextManager, getIdGenerator, getPromptVersions, getSpanParentObject, getTemplateRenderer, graph, init, initDataset, initExperiment, initFunction, initLogger, initNodeTestSuite, invoke, isTemplateFormat, loadParameters, loadPrompt, log, logError, login, loginToState, logs3OverflowUploadSchema, newId, parseCachedHeader, parseTemplateFormat, permalink, pickLogs3OverflowObjectIds, projects, promptContentsSchema, promptDefinitionSchema, promptDefinitionToPromptData, promptDefinitionWithToolsSchema, registerOtelFlush, registerSandbox, registerTemplatePlugin, renderMessage, renderPromptParams, renderTemplateContent, reportFailures, runEvaluator, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, templateRegistry, toolFunctionDefinitionSchema, traceable, traced, updateSpan, uploadLogs3OverflowPayload, utf8ByteLength, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapAISDK, wrapAISDKModel, wrapAgentClass, wrapAnthropic, wrapClaudeAgentSDK, wrapCohere, wrapCopilotClient, wrapCursorSDK, wrapFlueContext, wrapFlueSession, wrapGenkit, wrapGoogleADK, wrapGoogleGenAI, wrapGroq, wrapHuggingFace, wrapMastraAgent, wrapMistral, wrapOpenAI, wrapOpenAICodexSDK, wrapOpenAIv4, wrapOpenRouter, wrapOpenRouterAgent, wrapTraced, wrapVitest } from './browser.mjs';
1
+ export { AnyDataset, Attachment, AttachmentParams, AttachmentReference, BRAINTRUST_CURRENT_SPAN_STORE, BRAINTRUST_LANGCHAIN_CALLBACK_HANDLER_NAME, BackgroundLoggerOpts, BaseAttachment, BaseExperiment, BaseMetadata, BraintrustLangChainCallbackHandler, BraintrustMiddleware, BraintrustObservabilityExporter, BraintrustState, BraintrustStream, BraintrustStreamChunk, CachedSpanFetcher, ChatPrompt, CodeFunction, CodeOpts, CodePrompt, CommentEvent, CompiledPrompt, CompiledPromptParams, CompletionPrompt, ContextManager, ContextParentSpanIds, CreateProjectOpts, CurrentSpanStore, DEFAULT_FETCH_BATCH_SIZE, DEFAULT_MAX_REQUEST_SIZE, DataSummary, Dataset, DatasetPipeline, DatasetRecord, DatasetRestorePreviewResult, DatasetRestoreResult, DatasetSnapshot, DatasetSummary, DefaultMetadataType, DefaultPromptArgs, ERR_PERMALINK, EndSpanArgs, Eval, EvalCase, EvalClassifier, EvalHooks, EvalParameterSerializedSchema, EvalParameters, EvalResult, EvalResultWithSummary, EvalScorer, EvalScorerArgs, EvalTask, Evaluator, EvaluatorDef, EvaluatorDefinition, EvaluatorDefinitions, EvaluatorFile, EvaluatorManifest, Experiment, ExperimentLogFullArgs, ExperimentLogPartialArgs, ExperimentSummary, Exportable, ExternalAttachment, ExternalAttachmentParams, FailedHTTPResponse, FullInitDatasetOptions, FullInitOptions, FullLoginOptions, FunctionEvent, GetThreadOptions, IDGenerator, IdField, InitDatasetOptions, InitLoggerOptions, InitOptions, InputField, InstrumentationConfig, InvokeFunctionArgs, InvokeReturn, JSONAttachment, LEGACY_CACHED_HEADER, LOGS3_OVERFLOW_REFERENCE_TYPE, LangChainCallbackHandlerOptions, LazyValue, LoadPromptOptions, LogCommentFullArgs, LogFeedbackFullArgs, LogOptions, Logger, LoginInvalidOrgError, LoginOptions, Logs3OverflowInputRow, Logs3OverflowUpload, MastraObservabilityExporter, MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, ObjectFetcher, ObjectMetadata, OtherExperimentLogFields, ParametersSource, ParentExperimentIds, ParentProjectLogIds, Project, ProjectNameIdMap, PromiseUnless, Prompt, PromptBuilder, PromptContents, PromptDefinition, PromptDefinitionWithTools, PromptOpts, PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, RegisterSandboxOptions, RegisterSandboxResult, Reporter, ReporterBody, SandboxConfig, ScoreSummary, ScorerBuilder, ScorerOpts, SerializedBraintrustState, SetCurrentArg, Span, SpanContext, SpanData, SpanFetcher, SpanImpl, StartSpanArgs, TemplateFormat, TemplateRenderer, TemplateRendererPlugin, TestBackgroundLogger, ToolBuilder, Trace, UUIDGenerator, WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalIso, _internalSetInitialState, addAzureBlobHeaders, braintrustStreamChunkSchema, buildLocalSummary, configureInstrumentation, constructLogs3OverflowRequest, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, deepCopyEvent, default, defaultErrorScoreHandler, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getContextManager, getIdGenerator, getPromptVersions, getSpanParentObject, getTemplateRenderer, graph, init, initDataset, initExperiment, initFunction, initLogger, initNodeTestSuite, invoke, isTemplateFormat, loadParameters, loadPrompt, log, logError, login, loginToState, logs3OverflowUploadSchema, newId, parseCachedHeader, parseTemplateFormat, permalink, pickLogs3OverflowObjectIds, projects, promptContentsSchema, promptDefinitionSchema, promptDefinitionToPromptData, promptDefinitionWithToolsSchema, registerOtelFlush, registerSandbox, registerTemplatePlugin, renderMessage, renderPromptParams, renderTemplateContent, reportFailures, runEvaluator, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, templateRegistry, toolFunctionDefinitionSchema, traceable, traced, updateSpan, uploadLogs3OverflowPayload, utf8ByteLength, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapAISDK, wrapAISDKModel, wrapAgentClass, wrapAnthropic, wrapClaudeAgentSDK, wrapCohere, wrapCopilotClient, wrapCursorSDK, wrapFlueContext, wrapFlueSession, wrapGenkit, wrapGoogleADK, wrapGoogleGenAI, wrapGroq, wrapHuggingFace, wrapMastraAgent, wrapMistral, wrapOpenAI, wrapOpenAICodexSDK, wrapOpenAIv4, wrapOpenRouter, wrapOpenRouterAgent, wrapTraced, wrapVitest } from './browser.mjs';
2
2
  import 'zod/v3';
package/dist/workerd.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { AnyDataset, Attachment, AttachmentParams, AttachmentReference, BRAINTRUST_CURRENT_SPAN_STORE, BRAINTRUST_LANGCHAIN_CALLBACK_HANDLER_NAME, BackgroundLoggerOpts, BaseAttachment, BaseExperiment, BaseMetadata, BraintrustLangChainCallbackHandler, BraintrustMiddleware, BraintrustState, BraintrustStream, BraintrustStreamChunk, CachedSpanFetcher, ChatPrompt, CodeFunction, CodeOpts, CodePrompt, CommentEvent, CompiledPrompt, CompiledPromptParams, CompletionPrompt, ContextManager, ContextParentSpanIds, CreateProjectOpts, CurrentSpanStore, DEFAULT_FETCH_BATCH_SIZE, DEFAULT_MAX_REQUEST_SIZE, DataSummary, Dataset, DatasetPipeline, DatasetRecord, DatasetRestorePreviewResult, DatasetRestoreResult, DatasetSnapshot, DatasetSummary, DefaultMetadataType, DefaultPromptArgs, ERR_PERMALINK, EndSpanArgs, Eval, EvalCase, EvalClassifier, EvalHooks, EvalParameterSerializedSchema, EvalParameters, EvalResult, EvalResultWithSummary, EvalScorer, EvalScorerArgs, EvalTask, Evaluator, EvaluatorDef, EvaluatorDefinition, EvaluatorDefinitions, EvaluatorFile, EvaluatorManifest, Experiment, ExperimentLogFullArgs, ExperimentLogPartialArgs, ExperimentSummary, Exportable, ExternalAttachment, ExternalAttachmentParams, FailedHTTPResponse, FullInitDatasetOptions, FullInitOptions, FullLoginOptions, FunctionEvent, GetThreadOptions, IDGenerator, IdField, InitDatasetOptions, InitLoggerOptions, InitOptions, InputField, InstrumentationConfig, InvokeFunctionArgs, InvokeReturn, JSONAttachment, LEGACY_CACHED_HEADER, LOGS3_OVERFLOW_REFERENCE_TYPE, LangChainCallbackHandlerOptions, LazyValue, LoadPromptOptions, LogCommentFullArgs, LogFeedbackFullArgs, LogOptions, Logger, LoginInvalidOrgError, LoginOptions, Logs3OverflowInputRow, Logs3OverflowUpload, MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, ObjectFetcher, ObjectMetadata, OtherExperimentLogFields, ParametersSource, ParentExperimentIds, ParentProjectLogIds, Project, ProjectNameIdMap, PromiseUnless, Prompt, PromptBuilder, PromptContents, PromptDefinition, PromptDefinitionWithTools, PromptOpts, PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, RegisterSandboxOptions, RegisterSandboxResult, Reporter, ReporterBody, SandboxConfig, ScoreSummary, ScorerBuilder, ScorerOpts, SerializedBraintrustState, SetCurrentArg, Span, SpanContext, SpanData, SpanFetcher, SpanImpl, StartSpanArgs, TemplateFormat, TemplateRenderer, TemplateRendererPlugin, TestBackgroundLogger, ToolBuilder, Trace, UUIDGenerator, WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalIso, _internalSetInitialState, addAzureBlobHeaders, braintrustStreamChunkSchema, buildLocalSummary, configureInstrumentation, constructLogs3OverflowRequest, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, deepCopyEvent, default, defaultErrorScoreHandler, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getContextManager, getIdGenerator, getPromptVersions, getSpanParentObject, getTemplateRenderer, graph, init, initDataset, initExperiment, initFunction, initLogger, initNodeTestSuite, invoke, isTemplateFormat, loadParameters, loadPrompt, log, logError, login, loginToState, logs3OverflowUploadSchema, newId, parseCachedHeader, parseTemplateFormat, permalink, pickLogs3OverflowObjectIds, projects, promptContentsSchema, promptDefinitionSchema, promptDefinitionToPromptData, promptDefinitionWithToolsSchema, registerOtelFlush, registerSandbox, registerTemplatePlugin, renderMessage, renderPromptParams, renderTemplateContent, reportFailures, runEvaluator, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, templateRegistry, toolFunctionDefinitionSchema, traceable, traced, updateSpan, uploadLogs3OverflowPayload, utf8ByteLength, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapAISDK, wrapAISDKModel, wrapAgentClass, wrapAnthropic, wrapClaudeAgentSDK, wrapCohere, wrapCopilotClient, wrapCursorSDK, wrapFlueContext, wrapFlueSession, wrapGenkit, wrapGoogleADK, wrapGoogleGenAI, wrapGroq, wrapHuggingFace, wrapMastraAgent, wrapMistral, wrapOpenAI, wrapOpenAICodexSDK, wrapOpenAIv4, wrapOpenRouter, wrapOpenRouterAgent, wrapTraced, wrapVitest } from './browser.js';
1
+ export { AnyDataset, Attachment, AttachmentParams, AttachmentReference, BRAINTRUST_CURRENT_SPAN_STORE, BRAINTRUST_LANGCHAIN_CALLBACK_HANDLER_NAME, BackgroundLoggerOpts, BaseAttachment, BaseExperiment, BaseMetadata, BraintrustLangChainCallbackHandler, BraintrustMiddleware, BraintrustObservabilityExporter, BraintrustState, BraintrustStream, BraintrustStreamChunk, CachedSpanFetcher, ChatPrompt, CodeFunction, CodeOpts, CodePrompt, CommentEvent, CompiledPrompt, CompiledPromptParams, CompletionPrompt, ContextManager, ContextParentSpanIds, CreateProjectOpts, CurrentSpanStore, DEFAULT_FETCH_BATCH_SIZE, DEFAULT_MAX_REQUEST_SIZE, DataSummary, Dataset, DatasetPipeline, DatasetRecord, DatasetRestorePreviewResult, DatasetRestoreResult, DatasetSnapshot, DatasetSummary, DefaultMetadataType, DefaultPromptArgs, ERR_PERMALINK, EndSpanArgs, Eval, EvalCase, EvalClassifier, EvalHooks, EvalParameterSerializedSchema, EvalParameters, EvalResult, EvalResultWithSummary, EvalScorer, EvalScorerArgs, EvalTask, Evaluator, EvaluatorDef, EvaluatorDefinition, EvaluatorDefinitions, EvaluatorFile, EvaluatorManifest, Experiment, ExperimentLogFullArgs, ExperimentLogPartialArgs, ExperimentSummary, Exportable, ExternalAttachment, ExternalAttachmentParams, FailedHTTPResponse, FullInitDatasetOptions, FullInitOptions, FullLoginOptions, FunctionEvent, GetThreadOptions, IDGenerator, IdField, InitDatasetOptions, InitLoggerOptions, InitOptions, InputField, InstrumentationConfig, InvokeFunctionArgs, InvokeReturn, JSONAttachment, LEGACY_CACHED_HEADER, LOGS3_OVERFLOW_REFERENCE_TYPE, LangChainCallbackHandlerOptions, LazyValue, LoadPromptOptions, LogCommentFullArgs, LogFeedbackFullArgs, LogOptions, Logger, LoginInvalidOrgError, LoginOptions, Logs3OverflowInputRow, Logs3OverflowUpload, MastraObservabilityExporter, MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, ObjectFetcher, ObjectMetadata, OtherExperimentLogFields, ParametersSource, ParentExperimentIds, ParentProjectLogIds, Project, ProjectNameIdMap, PromiseUnless, Prompt, PromptBuilder, PromptContents, PromptDefinition, PromptDefinitionWithTools, PromptOpts, PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, RegisterSandboxOptions, RegisterSandboxResult, Reporter, ReporterBody, SandboxConfig, ScoreSummary, ScorerBuilder, ScorerOpts, SerializedBraintrustState, SetCurrentArg, Span, SpanContext, SpanData, SpanFetcher, SpanImpl, StartSpanArgs, TemplateFormat, TemplateRenderer, TemplateRendererPlugin, TestBackgroundLogger, ToolBuilder, Trace, UUIDGenerator, WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalIso, _internalSetInitialState, addAzureBlobHeaders, braintrustStreamChunkSchema, buildLocalSummary, configureInstrumentation, constructLogs3OverflowRequest, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, deepCopyEvent, default, defaultErrorScoreHandler, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getContextManager, getIdGenerator, getPromptVersions, getSpanParentObject, getTemplateRenderer, graph, init, initDataset, initExperiment, initFunction, initLogger, initNodeTestSuite, invoke, isTemplateFormat, loadParameters, loadPrompt, log, logError, login, loginToState, logs3OverflowUploadSchema, newId, parseCachedHeader, parseTemplateFormat, permalink, pickLogs3OverflowObjectIds, projects, promptContentsSchema, promptDefinitionSchema, promptDefinitionToPromptData, promptDefinitionWithToolsSchema, registerOtelFlush, registerSandbox, registerTemplatePlugin, renderMessage, renderPromptParams, renderTemplateContent, reportFailures, runEvaluator, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, templateRegistry, toolFunctionDefinitionSchema, traceable, traced, updateSpan, uploadLogs3OverflowPayload, utf8ByteLength, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapAISDK, wrapAISDKModel, wrapAgentClass, wrapAnthropic, wrapClaudeAgentSDK, wrapCohere, wrapCopilotClient, wrapCursorSDK, wrapFlueContext, wrapFlueSession, wrapGenkit, wrapGoogleADK, wrapGoogleGenAI, wrapGroq, wrapHuggingFace, wrapMastraAgent, wrapMistral, wrapOpenAI, wrapOpenAICodexSDK, wrapOpenAIv4, wrapOpenRouter, wrapOpenRouterAgent, wrapTraced, wrapVitest } from './browser.js';
2
2
  import 'zod/v3';