braintrust 0.3.7 → 0.3.8

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.
@@ -7284,6 +7284,8 @@ declare class LazyValue<T> {
7284
7284
  get hasSucceeded(): boolean;
7285
7285
  }
7286
7286
 
7287
+ /// <reference lib="dom" />
7288
+
7287
7289
  type SetCurrentArg = {
7288
7290
  setCurrent?: boolean;
7289
7291
  };
@@ -7457,6 +7459,7 @@ declare class NoopSpan implements Span {
7457
7459
  setAttributes(_args: Omit<StartSpanArgs, "event">): void;
7458
7460
  startSpanWithParents(_spanId: string, _spanParents: string[], _args?: StartSpanArgs): Span;
7459
7461
  state(): BraintrustState;
7462
+ toString(): string;
7460
7463
  }
7461
7464
  declare const NOOP_SPAN: NoopSpan;
7462
7465
  declare global {
@@ -7548,6 +7551,8 @@ declare class BraintrustState {
7548
7551
  loginReplaceApiConn(apiConn: HTTPConnection): void;
7549
7552
  disable(): void;
7550
7553
  enforceQueueSizeLimit(enforce: boolean): void;
7554
+ toJSON(): Record<string, any>;
7555
+ toString(): string;
7551
7556
  }
7552
7557
  declare class HTTPConnection {
7553
7558
  base_url: string;
@@ -7565,6 +7570,7 @@ declare class HTTPConnection {
7565
7570
  post(path: string, params?: Record<string, unknown> | string, config?: RequestInit): Promise<Response>;
7566
7571
  get_json(object_type: string, args?: Record<string, string | string[] | undefined> | undefined, retries?: number): Promise<any>;
7567
7572
  post_json(object_type: string, args?: Record<string, unknown> | string | undefined): Promise<any>;
7573
+ toString(): string;
7568
7574
  }
7569
7575
  interface ObjectMetadata {
7570
7576
  id: string;
@@ -7284,6 +7284,8 @@ declare class LazyValue<T> {
7284
7284
  get hasSucceeded(): boolean;
7285
7285
  }
7286
7286
 
7287
+ /// <reference lib="dom" />
7288
+
7287
7289
  type SetCurrentArg = {
7288
7290
  setCurrent?: boolean;
7289
7291
  };
@@ -7457,6 +7459,7 @@ declare class NoopSpan implements Span {
7457
7459
  setAttributes(_args: Omit<StartSpanArgs, "event">): void;
7458
7460
  startSpanWithParents(_spanId: string, _spanParents: string[], _args?: StartSpanArgs): Span;
7459
7461
  state(): BraintrustState;
7462
+ toString(): string;
7460
7463
  }
7461
7464
  declare const NOOP_SPAN: NoopSpan;
7462
7465
  declare global {
@@ -7548,6 +7551,8 @@ declare class BraintrustState {
7548
7551
  loginReplaceApiConn(apiConn: HTTPConnection): void;
7549
7552
  disable(): void;
7550
7553
  enforceQueueSizeLimit(enforce: boolean): void;
7554
+ toJSON(): Record<string, any>;
7555
+ toString(): string;
7551
7556
  }
7552
7557
  declare class HTTPConnection {
7553
7558
  base_url: string;
@@ -7565,6 +7570,7 @@ declare class HTTPConnection {
7565
7570
  post(path: string, params?: Record<string, unknown> | string, config?: RequestInit): Promise<Response>;
7566
7571
  get_json(object_type: string, args?: Record<string, string | string[] | undefined> | undefined, retries?: number): Promise<any>;
7567
7572
  post_json(object_type: string, args?: Record<string, unknown> | string | undefined): Promise<any>;
7573
+ toString(): string;
7568
7574
  }
7569
7575
  interface ObjectMetadata {
7570
7576
  id: string;
package/dev/dist/index.js CHANGED
@@ -3292,6 +3292,20 @@ var NoopSpan = (_class4 = class {
3292
3292
  state() {
3293
3293
  return _internalGetGlobalState();
3294
3294
  }
3295
+ // Custom inspect for Node.js console.log
3296
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3297
+ return `NoopSpan {
3298
+ kind: '${this.kind}',
3299
+ id: '${this.id}',
3300
+ spanId: '${this.spanId}',
3301
+ rootSpanId: '${this.rootSpanId}',
3302
+ spanParents: ${JSON.stringify(this.spanParents)}
3303
+ }`;
3304
+ }
3305
+ // Custom toString
3306
+ toString() {
3307
+ return `NoopSpan(id=${this.id}, spanId=${this.spanId})`;
3308
+ }
3295
3309
  }, _class4);
3296
3310
  var NOOP_SPAN = new NoopSpan();
3297
3311
  var NOOP_SPAN_PERMALINK = "https://braintrust.dev/noop-span";
@@ -3512,6 +3526,37 @@ var BraintrustState = (_class5 = class _BraintrustState {
3512
3526
  enforceQueueSizeLimit(enforce) {
3513
3527
  this._bgLogger.get().enforceQueueSizeLimit(enforce);
3514
3528
  }
3529
+ // Custom serialization to avoid logging sensitive data
3530
+ toJSON() {
3531
+ return {
3532
+ id: this.id,
3533
+ orgId: this.orgId,
3534
+ orgName: this.orgName,
3535
+ appUrl: this.appUrl,
3536
+ appPublicUrl: this.appPublicUrl,
3537
+ apiUrl: this.apiUrl,
3538
+ proxyUrl: this.proxyUrl,
3539
+ loggedIn: this.loggedIn
3540
+ // Explicitly exclude loginToken, _apiConn, _appConn, _proxyConn and other sensitive fields
3541
+ };
3542
+ }
3543
+ // Custom inspect for Node.js console.log
3544
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3545
+ return `BraintrustState {
3546
+ id: '${this.id}',
3547
+ orgId: ${this.orgId ? `'${this.orgId}'` : "null"},
3548
+ orgName: ${this.orgName ? `'${this.orgName}'` : "null"},
3549
+ appUrl: ${this.appUrl ? `'${this.appUrl}'` : "null"},
3550
+ apiUrl: ${this.apiUrl ? `'${this.apiUrl}'` : "null"},
3551
+ proxyUrl: ${this.proxyUrl ? `'${this.proxyUrl}'` : "null"},
3552
+ loggedIn: ${this.loggedIn},
3553
+ loginToken: '[REDACTED]'
3554
+ }`;
3555
+ }
3556
+ // Custom toString
3557
+ toString() {
3558
+ return `BraintrustState(id=${this.id}, org=${this.orgName || "none"}, loggedIn=${this.loggedIn})`;
3559
+ }
3515
3560
  }, _class5);
3516
3561
  var _globalState;
3517
3562
  function _internalSetInitialState() {
@@ -3655,6 +3700,17 @@ var HTTPConnection = class _HTTPConnection {
3655
3700
  });
3656
3701
  return await resp.json();
3657
3702
  }
3703
+ // Custom inspect for Node.js console.log
3704
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3705
+ return `HTTPConnection {
3706
+ base_url: '${this.base_url}',
3707
+ token: '[REDACTED]'
3708
+ }`;
3709
+ }
3710
+ // Custom toString
3711
+ toString() {
3712
+ return `HTTPConnection(${this.base_url})`;
3713
+ }
3658
3714
  };
3659
3715
  var BaseAttachment = class {
3660
3716
 
@@ -6110,6 +6166,20 @@ var SpanImpl = (_class10 = class _SpanImpl {
6110
6166
  state() {
6111
6167
  return this._state;
6112
6168
  }
6169
+ // Custom inspect for Node.js console.log
6170
+ [Symbol.for("nodejs.util.inspect.custom")]() {
6171
+ return `SpanImpl {
6172
+ kind: '${this.kind}',
6173
+ id: '${this.id}',
6174
+ spanId: '${this.spanId}',
6175
+ rootSpanId: '${this.rootSpanId}',
6176
+ spanParents: ${JSON.stringify(this.spanParents)}
6177
+ }`;
6178
+ }
6179
+ // Custom toString
6180
+ toString() {
6181
+ return `SpanImpl(id=${this.id}, spanId=${this.spanId})`;
6182
+ }
6113
6183
  }, _class10);
6114
6184
  function splitLoggingData({
6115
6185
  event,
@@ -6748,7 +6818,7 @@ function configureNode() {
6748
6818
  var _express = require('express'); var _express2 = _interopRequireDefault(_express);
6749
6819
  var _cors = require('cors'); var _cors2 = _interopRequireDefault(_cors);
6750
6820
 
6751
- // ../../node_modules/.pnpm/async@3.2.5/node_modules/async/dist/async.mjs
6821
+ // ../node_modules/.pnpm/async@3.2.5/node_modules/async/dist/async.mjs
6752
6822
  function initialParams(fn) {
6753
6823
  return function(...args) {
6754
6824
  var callback = args.pop();
@@ -3292,6 +3292,20 @@ var NoopSpan = class {
3292
3292
  state() {
3293
3293
  return _internalGetGlobalState();
3294
3294
  }
3295
+ // Custom inspect for Node.js console.log
3296
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3297
+ return `NoopSpan {
3298
+ kind: '${this.kind}',
3299
+ id: '${this.id}',
3300
+ spanId: '${this.spanId}',
3301
+ rootSpanId: '${this.rootSpanId}',
3302
+ spanParents: ${JSON.stringify(this.spanParents)}
3303
+ }`;
3304
+ }
3305
+ // Custom toString
3306
+ toString() {
3307
+ return `NoopSpan(id=${this.id}, spanId=${this.spanId})`;
3308
+ }
3295
3309
  };
3296
3310
  var NOOP_SPAN = new NoopSpan();
3297
3311
  var NOOP_SPAN_PERMALINK = "https://braintrust.dev/noop-span";
@@ -3512,6 +3526,37 @@ var BraintrustState = class _BraintrustState {
3512
3526
  enforceQueueSizeLimit(enforce) {
3513
3527
  this._bgLogger.get().enforceQueueSizeLimit(enforce);
3514
3528
  }
3529
+ // Custom serialization to avoid logging sensitive data
3530
+ toJSON() {
3531
+ return {
3532
+ id: this.id,
3533
+ orgId: this.orgId,
3534
+ orgName: this.orgName,
3535
+ appUrl: this.appUrl,
3536
+ appPublicUrl: this.appPublicUrl,
3537
+ apiUrl: this.apiUrl,
3538
+ proxyUrl: this.proxyUrl,
3539
+ loggedIn: this.loggedIn
3540
+ // Explicitly exclude loginToken, _apiConn, _appConn, _proxyConn and other sensitive fields
3541
+ };
3542
+ }
3543
+ // Custom inspect for Node.js console.log
3544
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3545
+ return `BraintrustState {
3546
+ id: '${this.id}',
3547
+ orgId: ${this.orgId ? `'${this.orgId}'` : "null"},
3548
+ orgName: ${this.orgName ? `'${this.orgName}'` : "null"},
3549
+ appUrl: ${this.appUrl ? `'${this.appUrl}'` : "null"},
3550
+ apiUrl: ${this.apiUrl ? `'${this.apiUrl}'` : "null"},
3551
+ proxyUrl: ${this.proxyUrl ? `'${this.proxyUrl}'` : "null"},
3552
+ loggedIn: ${this.loggedIn},
3553
+ loginToken: '[REDACTED]'
3554
+ }`;
3555
+ }
3556
+ // Custom toString
3557
+ toString() {
3558
+ return `BraintrustState(id=${this.id}, org=${this.orgName || "none"}, loggedIn=${this.loggedIn})`;
3559
+ }
3515
3560
  };
3516
3561
  var _globalState;
3517
3562
  function _internalSetInitialState() {
@@ -3655,6 +3700,17 @@ var HTTPConnection = class _HTTPConnection {
3655
3700
  });
3656
3701
  return await resp.json();
3657
3702
  }
3703
+ // Custom inspect for Node.js console.log
3704
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3705
+ return `HTTPConnection {
3706
+ base_url: '${this.base_url}',
3707
+ token: '[REDACTED]'
3708
+ }`;
3709
+ }
3710
+ // Custom toString
3711
+ toString() {
3712
+ return `HTTPConnection(${this.base_url})`;
3713
+ }
3658
3714
  };
3659
3715
  var BaseAttachment = class {
3660
3716
  reference;
@@ -6110,6 +6166,20 @@ var SpanImpl = class _SpanImpl {
6110
6166
  state() {
6111
6167
  return this._state;
6112
6168
  }
6169
+ // Custom inspect for Node.js console.log
6170
+ [Symbol.for("nodejs.util.inspect.custom")]() {
6171
+ return `SpanImpl {
6172
+ kind: '${this.kind}',
6173
+ id: '${this.id}',
6174
+ spanId: '${this.spanId}',
6175
+ rootSpanId: '${this.rootSpanId}',
6176
+ spanParents: ${JSON.stringify(this.spanParents)}
6177
+ }`;
6178
+ }
6179
+ // Custom toString
6180
+ toString() {
6181
+ return `SpanImpl(id=${this.id}, spanId=${this.spanId})`;
6182
+ }
6113
6183
  };
6114
6184
  function splitLoggingData({
6115
6185
  event,
@@ -6748,7 +6818,7 @@ function configureNode() {
6748
6818
  import express from "express";
6749
6819
  import cors from "cors";
6750
6820
 
6751
- // ../../node_modules/.pnpm/async@3.2.5/node_modules/async/dist/async.mjs
6821
+ // ../node_modules/.pnpm/async@3.2.5/node_modules/async/dist/async.mjs
6752
6822
  function initialParams(fn) {
6753
6823
  return function(...args) {
6754
6824
  var callback = args.pop();
@@ -7858,6 +7858,8 @@ declare class PromptCache {
7858
7858
  set(key: PromptKey, value: Prompt): Promise<void>;
7859
7859
  }
7860
7860
 
7861
+ /// <reference lib="dom" />
7862
+
7861
7863
  type SetCurrentArg = {
7862
7864
  setCurrent?: boolean;
7863
7865
  };
@@ -8031,6 +8033,7 @@ declare class NoopSpan implements Span {
8031
8033
  setAttributes(_args: Omit<StartSpanArgs, "event">): void;
8032
8034
  startSpanWithParents(_spanId: string, _spanParents: string[], _args?: StartSpanArgs): Span;
8033
8035
  state(): BraintrustState;
8036
+ toString(): string;
8034
8037
  }
8035
8038
  declare const NOOP_SPAN: NoopSpan;
8036
8039
  declare const NOOP_SPAN_PERMALINK = "https://braintrust.dev/noop-span";
@@ -8123,6 +8126,8 @@ declare class BraintrustState {
8123
8126
  loginReplaceApiConn(apiConn: HTTPConnection): void;
8124
8127
  disable(): void;
8125
8128
  enforceQueueSizeLimit(enforce: boolean): void;
8129
+ toJSON(): Record<string, any>;
8130
+ toString(): string;
8126
8131
  }
8127
8132
  declare function useTestBackgroundLogger(): TestBackgroundLogger;
8128
8133
  declare function clearTestBackgroundLogger(): void;
@@ -8159,6 +8164,7 @@ declare class HTTPConnection {
8159
8164
  post(path: string, params?: Record<string, unknown> | string, config?: RequestInit): Promise<Response>;
8160
8165
  get_json(object_type: string, args?: Record<string, string | string[] | undefined> | undefined, retries?: number): Promise<any>;
8161
8166
  post_json(object_type: string, args?: Record<string, unknown> | string | undefined): Promise<any>;
8167
+ toString(): string;
8162
8168
  }
8163
8169
  interface ObjectMetadata {
8164
8170
  id: string;
@@ -9142,6 +9148,7 @@ declare class SpanImpl implements Span {
9142
9148
  flush(): Promise<void>;
9143
9149
  close(args?: EndSpanArgs): number;
9144
9150
  state(): BraintrustState;
9151
+ toString(): string;
9145
9152
  }
9146
9153
  /**
9147
9154
  * A dataset is a collection of records, such as model inputs and expected outputs, which represent
@@ -19958,6 +19965,7 @@ declare const braintrust_createFinalValuePassThroughStream: typeof createFinalVa
19958
19965
  declare const braintrust_currentExperiment: typeof currentExperiment;
19959
19966
  declare const braintrust_currentLogger: typeof currentLogger;
19960
19967
  declare const braintrust_currentSpan: typeof currentSpan;
19968
+ declare const braintrust_deepCopyEvent: typeof deepCopyEvent;
19961
19969
  declare const braintrust_deserializePlainStringAsJSON: typeof deserializePlainStringAsJSON;
19962
19970
  declare const braintrust_devNullWritableStream: typeof devNullWritableStream;
19963
19971
  declare const braintrust_evaluatorDefinitionSchema: typeof evaluatorDefinitionSchema;
@@ -19998,7 +20006,7 @@ declare const braintrust_wrapOpenAI: typeof wrapOpenAI;
19998
20006
  declare const braintrust_wrapOpenAIv4: typeof wrapOpenAIv4;
19999
20007
  declare const braintrust_wrapTraced: typeof wrapTraced;
20000
20008
  declare namespace braintrust {
20001
- export { type braintrust_AnyDataset as AnyDataset, braintrust_Attachment as Attachment, type braintrust_AttachmentParams as AttachmentParams, type braintrust_BackgroundLoggerOpts as BackgroundLoggerOpts, braintrust_BaseAttachment as BaseAttachment, type braintrust_BaseMetadata as BaseMetadata, braintrust_BraintrustState as BraintrustState, braintrust_BraintrustStream as BraintrustStream, type braintrust_BraintrustStreamChunk as BraintrustStreamChunk, type braintrust_ChatPrompt as ChatPrompt, type braintrust_CommentEvent as CommentEvent, type braintrust_CompiledPrompt as CompiledPrompt, type braintrust_CompiledPromptParams as CompiledPromptParams, type braintrust_CompletionPrompt as CompletionPrompt, type braintrust_DataSummary as DataSummary, braintrust_Dataset as Dataset, type braintrust_DatasetRecord as DatasetRecord, type braintrust_DatasetSummary as DatasetSummary, type braintrust_DefaultMetadataType as DefaultMetadataType, type braintrust_DefaultPromptArgs as DefaultPromptArgs, braintrust_ERR_PERMALINK as ERR_PERMALINK, type braintrust_EndSpanArgs as EndSpanArgs, type braintrust_EvalCase as EvalCase, type braintrust_EvalParameterSerializedSchema as EvalParameterSerializedSchema, type braintrust_EvalParameters as EvalParameters, type braintrust_EvaluatorDefinition as EvaluatorDefinition, type braintrust_EvaluatorDefinitions as EvaluatorDefinitions, type braintrust_EvaluatorManifest as EvaluatorManifest, braintrust_Experiment as Experiment, type braintrust_ExperimentLogFullArgs as ExperimentLogFullArgs, type braintrust_ExperimentLogPartialArgs as ExperimentLogPartialArgs, type braintrust_ExperimentSummary as ExperimentSummary, type braintrust_Exportable as Exportable, braintrust_ExternalAttachment as ExternalAttachment, type braintrust_ExternalAttachmentParams as ExternalAttachmentParams, braintrust_FailedHTTPResponse as FailedHTTPResponse, type braintrust_FullInitOptions as FullInitOptions, type braintrust_FullLoginOptions as FullLoginOptions, braintrust_INTERNAL_BTQL_LIMIT as INTERNAL_BTQL_LIMIT, type braintrust_IdField as IdField, type braintrust_InitOptions as InitOptions, type braintrust_InputField as InputField, type braintrust_InvokeFunctionArgs as InvokeFunctionArgs, type braintrust_InvokeReturn as InvokeReturn, braintrust_LEGACY_CACHED_HEADER as LEGACY_CACHED_HEADER, braintrust_LazyValue as LazyValue, type braintrust_LogCommentFullArgs as LogCommentFullArgs, type braintrust_LogFeedbackFullArgs as LogFeedbackFullArgs, type braintrust_LogOptions as LogOptions, braintrust_Logger as Logger, type braintrust_LoginOptions as LoginOptions, type braintrust_MetricSummary as MetricSummary, braintrust_NOOP_SPAN as NOOP_SPAN, braintrust_NOOP_SPAN_PERMALINK as NOOP_SPAN_PERMALINK, braintrust_NoopSpan as NoopSpan, type braintrust_ObjectMetadata as ObjectMetadata, type braintrust_OtherExperimentLogFields as OtherExperimentLogFields, type braintrust_ParentExperimentIds as ParentExperimentIds, type braintrust_ParentProjectLogIds as ParentProjectLogIds, type braintrust_PromiseUnless as PromiseUnless, braintrust_Prompt as Prompt, type braintrust_PromptRowWithId as PromptRowWithId, braintrust_ReadonlyAttachment as ReadonlyAttachment, braintrust_ReadonlyExperiment as ReadonlyExperiment, type braintrust_ScoreSummary as ScoreSummary, type braintrust_SerializedBraintrustState as SerializedBraintrustState, type braintrust_SetCurrentArg as SetCurrentArg, type braintrust_Span as Span, braintrust_SpanImpl as SpanImpl, type braintrust_StartSpanArgs as StartSpanArgs, braintrust_TestBackgroundLogger as TestBackgroundLogger, type braintrust_WithTransactionId as WithTransactionId, braintrust_X_CACHED_HEADER as X_CACHED_HEADER, braintrust__exportsForTestingOnly as _exportsForTestingOnly, braintrust__internalGetGlobalState as _internalGetGlobalState, braintrust__internalSetInitialState as _internalSetInitialState, braintrust_braintrustStreamChunkSchema as braintrustStreamChunkSchema, braintrust_createFinalValuePassThroughStream as createFinalValuePassThroughStream, braintrust_currentExperiment as currentExperiment, braintrust_currentLogger as currentLogger, braintrust_currentSpan as currentSpan, braintrust_deserializePlainStringAsJSON as deserializePlainStringAsJSON, braintrust_devNullWritableStream as devNullWritableStream, braintrust_evaluatorDefinitionSchema as evaluatorDefinitionSchema, braintrust_evaluatorDefinitionsSchema as evaluatorDefinitionsSchema, braintrust_flush as flush, braintrust_getPromptVersions as getPromptVersions, braintrust_getSpanParentObject as getSpanParentObject, braintrust_init as init, braintrust_initDataset as initDataset, braintrust_initExperiment as initExperiment, braintrust_initFunction as initFunction, braintrust_initLogger as initLogger, braintrust_invoke as invoke, braintrust_loadPrompt as loadPrompt, braintrust_log as log, braintrust_logError as logError, braintrust_login as login, braintrust_loginToState as loginToState, braintrust_newId as newId, braintrust_parseCachedHeader as parseCachedHeader, braintrust_permalink as permalink, braintrust_renderMessage as renderMessage, braintrust_renderPromptParams as renderPromptParams, braintrust_setFetch as setFetch, braintrust_setMaskingFunction as setMaskingFunction, braintrust_spanComponentsToObjectId as spanComponentsToObjectId, braintrust_startSpan as startSpan, braintrust_summarize as summarize, braintrust_traceable as traceable, braintrust_traced as traced, braintrust_updateSpan as updateSpan, braintrust_withCurrent as withCurrent, braintrust_withDataset as withDataset, braintrust_withExperiment as withExperiment, braintrust_withLogger as withLogger, braintrust_withParent as withParent, braintrust_wrapOpenAI as wrapOpenAI, braintrust_wrapOpenAIv4 as wrapOpenAIv4, braintrust_wrapTraced as wrapTraced };
20009
+ export { type braintrust_AnyDataset as AnyDataset, braintrust_Attachment as Attachment, type braintrust_AttachmentParams as AttachmentParams, type braintrust_BackgroundLoggerOpts as BackgroundLoggerOpts, braintrust_BaseAttachment as BaseAttachment, type braintrust_BaseMetadata as BaseMetadata, braintrust_BraintrustState as BraintrustState, braintrust_BraintrustStream as BraintrustStream, type braintrust_BraintrustStreamChunk as BraintrustStreamChunk, type braintrust_ChatPrompt as ChatPrompt, type braintrust_CommentEvent as CommentEvent, type braintrust_CompiledPrompt as CompiledPrompt, type braintrust_CompiledPromptParams as CompiledPromptParams, type braintrust_CompletionPrompt as CompletionPrompt, type braintrust_DataSummary as DataSummary, braintrust_Dataset as Dataset, type braintrust_DatasetRecord as DatasetRecord, type braintrust_DatasetSummary as DatasetSummary, type braintrust_DefaultMetadataType as DefaultMetadataType, type braintrust_DefaultPromptArgs as DefaultPromptArgs, braintrust_ERR_PERMALINK as ERR_PERMALINK, type braintrust_EndSpanArgs as EndSpanArgs, type braintrust_EvalCase as EvalCase, type braintrust_EvalParameterSerializedSchema as EvalParameterSerializedSchema, type braintrust_EvalParameters as EvalParameters, type braintrust_EvaluatorDefinition as EvaluatorDefinition, type braintrust_EvaluatorDefinitions as EvaluatorDefinitions, type braintrust_EvaluatorManifest as EvaluatorManifest, braintrust_Experiment as Experiment, type braintrust_ExperimentLogFullArgs as ExperimentLogFullArgs, type braintrust_ExperimentLogPartialArgs as ExperimentLogPartialArgs, type braintrust_ExperimentSummary as ExperimentSummary, type braintrust_Exportable as Exportable, braintrust_ExternalAttachment as ExternalAttachment, type braintrust_ExternalAttachmentParams as ExternalAttachmentParams, braintrust_FailedHTTPResponse as FailedHTTPResponse, type braintrust_FullInitOptions as FullInitOptions, type braintrust_FullLoginOptions as FullLoginOptions, braintrust_INTERNAL_BTQL_LIMIT as INTERNAL_BTQL_LIMIT, type braintrust_IdField as IdField, type braintrust_InitOptions as InitOptions, type braintrust_InputField as InputField, type braintrust_InvokeFunctionArgs as InvokeFunctionArgs, type braintrust_InvokeReturn as InvokeReturn, braintrust_LEGACY_CACHED_HEADER as LEGACY_CACHED_HEADER, braintrust_LazyValue as LazyValue, type braintrust_LogCommentFullArgs as LogCommentFullArgs, type braintrust_LogFeedbackFullArgs as LogFeedbackFullArgs, type braintrust_LogOptions as LogOptions, braintrust_Logger as Logger, type braintrust_LoginOptions as LoginOptions, type braintrust_MetricSummary as MetricSummary, braintrust_NOOP_SPAN as NOOP_SPAN, braintrust_NOOP_SPAN_PERMALINK as NOOP_SPAN_PERMALINK, braintrust_NoopSpan as NoopSpan, type braintrust_ObjectMetadata as ObjectMetadata, type braintrust_OtherExperimentLogFields as OtherExperimentLogFields, type braintrust_ParentExperimentIds as ParentExperimentIds, type braintrust_ParentProjectLogIds as ParentProjectLogIds, type braintrust_PromiseUnless as PromiseUnless, braintrust_Prompt as Prompt, type braintrust_PromptRowWithId as PromptRowWithId, braintrust_ReadonlyAttachment as ReadonlyAttachment, braintrust_ReadonlyExperiment as ReadonlyExperiment, type braintrust_ScoreSummary as ScoreSummary, type braintrust_SerializedBraintrustState as SerializedBraintrustState, type braintrust_SetCurrentArg as SetCurrentArg, type braintrust_Span as Span, braintrust_SpanImpl as SpanImpl, type braintrust_StartSpanArgs as StartSpanArgs, braintrust_TestBackgroundLogger as TestBackgroundLogger, type braintrust_WithTransactionId as WithTransactionId, braintrust_X_CACHED_HEADER as X_CACHED_HEADER, braintrust__exportsForTestingOnly as _exportsForTestingOnly, braintrust__internalGetGlobalState as _internalGetGlobalState, braintrust__internalSetInitialState as _internalSetInitialState, braintrust_braintrustStreamChunkSchema as braintrustStreamChunkSchema, braintrust_createFinalValuePassThroughStream as createFinalValuePassThroughStream, braintrust_currentExperiment as currentExperiment, braintrust_currentLogger as currentLogger, braintrust_currentSpan as currentSpan, braintrust_deepCopyEvent as deepCopyEvent, braintrust_deserializePlainStringAsJSON as deserializePlainStringAsJSON, braintrust_devNullWritableStream as devNullWritableStream, braintrust_evaluatorDefinitionSchema as evaluatorDefinitionSchema, braintrust_evaluatorDefinitionsSchema as evaluatorDefinitionsSchema, braintrust_flush as flush, braintrust_getPromptVersions as getPromptVersions, braintrust_getSpanParentObject as getSpanParentObject, braintrust_init as init, braintrust_initDataset as initDataset, braintrust_initExperiment as initExperiment, braintrust_initFunction as initFunction, braintrust_initLogger as initLogger, braintrust_invoke as invoke, braintrust_loadPrompt as loadPrompt, braintrust_log as log, braintrust_logError as logError, braintrust_login as login, braintrust_loginToState as loginToState, braintrust_newId as newId, braintrust_parseCachedHeader as parseCachedHeader, braintrust_permalink as permalink, braintrust_renderMessage as renderMessage, braintrust_renderPromptParams as renderPromptParams, braintrust_setFetch as setFetch, braintrust_setMaskingFunction as setMaskingFunction, braintrust_spanComponentsToObjectId as spanComponentsToObjectId, braintrust_startSpan as startSpan, braintrust_summarize as summarize, braintrust_traceable as traceable, braintrust_traced as traced, braintrust_updateSpan as updateSpan, braintrust_withCurrent as withCurrent, braintrust_withDataset as withDataset, braintrust_withExperiment as withExperiment, braintrust_withLogger as withLogger, braintrust_withParent as withParent, braintrust_wrapOpenAI as wrapOpenAI, braintrust_wrapOpenAIv4 as wrapOpenAIv4, braintrust_wrapTraced as wrapTraced };
20002
20010
  }
20003
20011
 
20004
- export { type AnyDataset, Attachment, type AttachmentParams, type BackgroundLoggerOpts, BaseAttachment, type BaseMetadata, BraintrustState, BraintrustStream, type BraintrustStreamChunk, type ChatPrompt, type CommentEvent, type CompiledPrompt, type CompiledPromptParams, type CompletionPrompt, type DataSummary, Dataset, type DatasetRecord, type DatasetSummary, type DefaultMetadataType, type DefaultPromptArgs, ERR_PERMALINK, type EndSpanArgs, type EvalCase, type EvalParameterSerializedSchema, type EvalParameters, type EvaluatorDefinition, type EvaluatorDefinitions, type EvaluatorManifest, Experiment, type ExperimentLogFullArgs, type ExperimentLogPartialArgs, type ExperimentSummary, type Exportable, ExternalAttachment, type ExternalAttachmentParams, FailedHTTPResponse, type FullInitOptions, type FullLoginOptions, INTERNAL_BTQL_LIMIT, type IdField, type InitOptions, type InputField, type InvokeFunctionArgs, type InvokeReturn, LEGACY_CACHED_HEADER, LazyValue, type LogCommentFullArgs, type LogFeedbackFullArgs, type LogOptions, Logger, type LoginOptions, type MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, type ObjectMetadata, type OtherExperimentLogFields, type ParentExperimentIds, type ParentProjectLogIds, type PromiseUnless, Prompt, type PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, type ScoreSummary, type SerializedBraintrustState, type SetCurrentArg, type Span, SpanImpl, type StartSpanArgs, TestBackgroundLogger, type WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalSetInitialState, braintrustStreamChunkSchema, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, braintrust as default, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getPromptVersions, getSpanParentObject, init, initDataset, initExperiment, initFunction, initLogger, invoke, loadPrompt, log, logError, login, loginToState, newId, parseCachedHeader, permalink, renderMessage, renderPromptParams, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, traceable, traced, updateSpan, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapOpenAI, wrapOpenAIv4, wrapTraced };
20012
+ export { type AnyDataset, Attachment, type AttachmentParams, type BackgroundLoggerOpts, BaseAttachment, type BaseMetadata, BraintrustState, BraintrustStream, type BraintrustStreamChunk, type ChatPrompt, type CommentEvent, type CompiledPrompt, type CompiledPromptParams, type CompletionPrompt, type DataSummary, Dataset, type DatasetRecord, type DatasetSummary, type DefaultMetadataType, type DefaultPromptArgs, ERR_PERMALINK, type EndSpanArgs, type EvalCase, type EvalParameterSerializedSchema, type EvalParameters, type EvaluatorDefinition, type EvaluatorDefinitions, type EvaluatorManifest, Experiment, type ExperimentLogFullArgs, type ExperimentLogPartialArgs, type ExperimentSummary, type Exportable, ExternalAttachment, type ExternalAttachmentParams, FailedHTTPResponse, type FullInitOptions, type FullLoginOptions, INTERNAL_BTQL_LIMIT, type IdField, type InitOptions, type InputField, type InvokeFunctionArgs, type InvokeReturn, LEGACY_CACHED_HEADER, LazyValue, type LogCommentFullArgs, type LogFeedbackFullArgs, type LogOptions, Logger, type LoginOptions, type MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, type ObjectMetadata, type OtherExperimentLogFields, type ParentExperimentIds, type ParentProjectLogIds, type PromiseUnless, Prompt, type PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, type ScoreSummary, type SerializedBraintrustState, type SetCurrentArg, type Span, SpanImpl, type StartSpanArgs, TestBackgroundLogger, type WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalSetInitialState, braintrustStreamChunkSchema, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, deepCopyEvent, braintrust as default, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getPromptVersions, getSpanParentObject, init, initDataset, initExperiment, initFunction, initLogger, invoke, loadPrompt, log, logError, login, loginToState, newId, parseCachedHeader, permalink, renderMessage, renderPromptParams, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, traceable, traced, updateSpan, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapOpenAI, wrapOpenAIv4, wrapTraced };
package/dist/browser.d.ts CHANGED
@@ -7858,6 +7858,8 @@ declare class PromptCache {
7858
7858
  set(key: PromptKey, value: Prompt): Promise<void>;
7859
7859
  }
7860
7860
 
7861
+ /// <reference lib="dom" />
7862
+
7861
7863
  type SetCurrentArg = {
7862
7864
  setCurrent?: boolean;
7863
7865
  };
@@ -8031,6 +8033,7 @@ declare class NoopSpan implements Span {
8031
8033
  setAttributes(_args: Omit<StartSpanArgs, "event">): void;
8032
8034
  startSpanWithParents(_spanId: string, _spanParents: string[], _args?: StartSpanArgs): Span;
8033
8035
  state(): BraintrustState;
8036
+ toString(): string;
8034
8037
  }
8035
8038
  declare const NOOP_SPAN: NoopSpan;
8036
8039
  declare const NOOP_SPAN_PERMALINK = "https://braintrust.dev/noop-span";
@@ -8123,6 +8126,8 @@ declare class BraintrustState {
8123
8126
  loginReplaceApiConn(apiConn: HTTPConnection): void;
8124
8127
  disable(): void;
8125
8128
  enforceQueueSizeLimit(enforce: boolean): void;
8129
+ toJSON(): Record<string, any>;
8130
+ toString(): string;
8126
8131
  }
8127
8132
  declare function useTestBackgroundLogger(): TestBackgroundLogger;
8128
8133
  declare function clearTestBackgroundLogger(): void;
@@ -8159,6 +8164,7 @@ declare class HTTPConnection {
8159
8164
  post(path: string, params?: Record<string, unknown> | string, config?: RequestInit): Promise<Response>;
8160
8165
  get_json(object_type: string, args?: Record<string, string | string[] | undefined> | undefined, retries?: number): Promise<any>;
8161
8166
  post_json(object_type: string, args?: Record<string, unknown> | string | undefined): Promise<any>;
8167
+ toString(): string;
8162
8168
  }
8163
8169
  interface ObjectMetadata {
8164
8170
  id: string;
@@ -9142,6 +9148,7 @@ declare class SpanImpl implements Span {
9142
9148
  flush(): Promise<void>;
9143
9149
  close(args?: EndSpanArgs): number;
9144
9150
  state(): BraintrustState;
9151
+ toString(): string;
9145
9152
  }
9146
9153
  /**
9147
9154
  * A dataset is a collection of records, such as model inputs and expected outputs, which represent
@@ -19958,6 +19965,7 @@ declare const braintrust_createFinalValuePassThroughStream: typeof createFinalVa
19958
19965
  declare const braintrust_currentExperiment: typeof currentExperiment;
19959
19966
  declare const braintrust_currentLogger: typeof currentLogger;
19960
19967
  declare const braintrust_currentSpan: typeof currentSpan;
19968
+ declare const braintrust_deepCopyEvent: typeof deepCopyEvent;
19961
19969
  declare const braintrust_deserializePlainStringAsJSON: typeof deserializePlainStringAsJSON;
19962
19970
  declare const braintrust_devNullWritableStream: typeof devNullWritableStream;
19963
19971
  declare const braintrust_evaluatorDefinitionSchema: typeof evaluatorDefinitionSchema;
@@ -19998,7 +20006,7 @@ declare const braintrust_wrapOpenAI: typeof wrapOpenAI;
19998
20006
  declare const braintrust_wrapOpenAIv4: typeof wrapOpenAIv4;
19999
20007
  declare const braintrust_wrapTraced: typeof wrapTraced;
20000
20008
  declare namespace braintrust {
20001
- export { type braintrust_AnyDataset as AnyDataset, braintrust_Attachment as Attachment, type braintrust_AttachmentParams as AttachmentParams, type braintrust_BackgroundLoggerOpts as BackgroundLoggerOpts, braintrust_BaseAttachment as BaseAttachment, type braintrust_BaseMetadata as BaseMetadata, braintrust_BraintrustState as BraintrustState, braintrust_BraintrustStream as BraintrustStream, type braintrust_BraintrustStreamChunk as BraintrustStreamChunk, type braintrust_ChatPrompt as ChatPrompt, type braintrust_CommentEvent as CommentEvent, type braintrust_CompiledPrompt as CompiledPrompt, type braintrust_CompiledPromptParams as CompiledPromptParams, type braintrust_CompletionPrompt as CompletionPrompt, type braintrust_DataSummary as DataSummary, braintrust_Dataset as Dataset, type braintrust_DatasetRecord as DatasetRecord, type braintrust_DatasetSummary as DatasetSummary, type braintrust_DefaultMetadataType as DefaultMetadataType, type braintrust_DefaultPromptArgs as DefaultPromptArgs, braintrust_ERR_PERMALINK as ERR_PERMALINK, type braintrust_EndSpanArgs as EndSpanArgs, type braintrust_EvalCase as EvalCase, type braintrust_EvalParameterSerializedSchema as EvalParameterSerializedSchema, type braintrust_EvalParameters as EvalParameters, type braintrust_EvaluatorDefinition as EvaluatorDefinition, type braintrust_EvaluatorDefinitions as EvaluatorDefinitions, type braintrust_EvaluatorManifest as EvaluatorManifest, braintrust_Experiment as Experiment, type braintrust_ExperimentLogFullArgs as ExperimentLogFullArgs, type braintrust_ExperimentLogPartialArgs as ExperimentLogPartialArgs, type braintrust_ExperimentSummary as ExperimentSummary, type braintrust_Exportable as Exportable, braintrust_ExternalAttachment as ExternalAttachment, type braintrust_ExternalAttachmentParams as ExternalAttachmentParams, braintrust_FailedHTTPResponse as FailedHTTPResponse, type braintrust_FullInitOptions as FullInitOptions, type braintrust_FullLoginOptions as FullLoginOptions, braintrust_INTERNAL_BTQL_LIMIT as INTERNAL_BTQL_LIMIT, type braintrust_IdField as IdField, type braintrust_InitOptions as InitOptions, type braintrust_InputField as InputField, type braintrust_InvokeFunctionArgs as InvokeFunctionArgs, type braintrust_InvokeReturn as InvokeReturn, braintrust_LEGACY_CACHED_HEADER as LEGACY_CACHED_HEADER, braintrust_LazyValue as LazyValue, type braintrust_LogCommentFullArgs as LogCommentFullArgs, type braintrust_LogFeedbackFullArgs as LogFeedbackFullArgs, type braintrust_LogOptions as LogOptions, braintrust_Logger as Logger, type braintrust_LoginOptions as LoginOptions, type braintrust_MetricSummary as MetricSummary, braintrust_NOOP_SPAN as NOOP_SPAN, braintrust_NOOP_SPAN_PERMALINK as NOOP_SPAN_PERMALINK, braintrust_NoopSpan as NoopSpan, type braintrust_ObjectMetadata as ObjectMetadata, type braintrust_OtherExperimentLogFields as OtherExperimentLogFields, type braintrust_ParentExperimentIds as ParentExperimentIds, type braintrust_ParentProjectLogIds as ParentProjectLogIds, type braintrust_PromiseUnless as PromiseUnless, braintrust_Prompt as Prompt, type braintrust_PromptRowWithId as PromptRowWithId, braintrust_ReadonlyAttachment as ReadonlyAttachment, braintrust_ReadonlyExperiment as ReadonlyExperiment, type braintrust_ScoreSummary as ScoreSummary, type braintrust_SerializedBraintrustState as SerializedBraintrustState, type braintrust_SetCurrentArg as SetCurrentArg, type braintrust_Span as Span, braintrust_SpanImpl as SpanImpl, type braintrust_StartSpanArgs as StartSpanArgs, braintrust_TestBackgroundLogger as TestBackgroundLogger, type braintrust_WithTransactionId as WithTransactionId, braintrust_X_CACHED_HEADER as X_CACHED_HEADER, braintrust__exportsForTestingOnly as _exportsForTestingOnly, braintrust__internalGetGlobalState as _internalGetGlobalState, braintrust__internalSetInitialState as _internalSetInitialState, braintrust_braintrustStreamChunkSchema as braintrustStreamChunkSchema, braintrust_createFinalValuePassThroughStream as createFinalValuePassThroughStream, braintrust_currentExperiment as currentExperiment, braintrust_currentLogger as currentLogger, braintrust_currentSpan as currentSpan, braintrust_deserializePlainStringAsJSON as deserializePlainStringAsJSON, braintrust_devNullWritableStream as devNullWritableStream, braintrust_evaluatorDefinitionSchema as evaluatorDefinitionSchema, braintrust_evaluatorDefinitionsSchema as evaluatorDefinitionsSchema, braintrust_flush as flush, braintrust_getPromptVersions as getPromptVersions, braintrust_getSpanParentObject as getSpanParentObject, braintrust_init as init, braintrust_initDataset as initDataset, braintrust_initExperiment as initExperiment, braintrust_initFunction as initFunction, braintrust_initLogger as initLogger, braintrust_invoke as invoke, braintrust_loadPrompt as loadPrompt, braintrust_log as log, braintrust_logError as logError, braintrust_login as login, braintrust_loginToState as loginToState, braintrust_newId as newId, braintrust_parseCachedHeader as parseCachedHeader, braintrust_permalink as permalink, braintrust_renderMessage as renderMessage, braintrust_renderPromptParams as renderPromptParams, braintrust_setFetch as setFetch, braintrust_setMaskingFunction as setMaskingFunction, braintrust_spanComponentsToObjectId as spanComponentsToObjectId, braintrust_startSpan as startSpan, braintrust_summarize as summarize, braintrust_traceable as traceable, braintrust_traced as traced, braintrust_updateSpan as updateSpan, braintrust_withCurrent as withCurrent, braintrust_withDataset as withDataset, braintrust_withExperiment as withExperiment, braintrust_withLogger as withLogger, braintrust_withParent as withParent, braintrust_wrapOpenAI as wrapOpenAI, braintrust_wrapOpenAIv4 as wrapOpenAIv4, braintrust_wrapTraced as wrapTraced };
20009
+ export { type braintrust_AnyDataset as AnyDataset, braintrust_Attachment as Attachment, type braintrust_AttachmentParams as AttachmentParams, type braintrust_BackgroundLoggerOpts as BackgroundLoggerOpts, braintrust_BaseAttachment as BaseAttachment, type braintrust_BaseMetadata as BaseMetadata, braintrust_BraintrustState as BraintrustState, braintrust_BraintrustStream as BraintrustStream, type braintrust_BraintrustStreamChunk as BraintrustStreamChunk, type braintrust_ChatPrompt as ChatPrompt, type braintrust_CommentEvent as CommentEvent, type braintrust_CompiledPrompt as CompiledPrompt, type braintrust_CompiledPromptParams as CompiledPromptParams, type braintrust_CompletionPrompt as CompletionPrompt, type braintrust_DataSummary as DataSummary, braintrust_Dataset as Dataset, type braintrust_DatasetRecord as DatasetRecord, type braintrust_DatasetSummary as DatasetSummary, type braintrust_DefaultMetadataType as DefaultMetadataType, type braintrust_DefaultPromptArgs as DefaultPromptArgs, braintrust_ERR_PERMALINK as ERR_PERMALINK, type braintrust_EndSpanArgs as EndSpanArgs, type braintrust_EvalCase as EvalCase, type braintrust_EvalParameterSerializedSchema as EvalParameterSerializedSchema, type braintrust_EvalParameters as EvalParameters, type braintrust_EvaluatorDefinition as EvaluatorDefinition, type braintrust_EvaluatorDefinitions as EvaluatorDefinitions, type braintrust_EvaluatorManifest as EvaluatorManifest, braintrust_Experiment as Experiment, type braintrust_ExperimentLogFullArgs as ExperimentLogFullArgs, type braintrust_ExperimentLogPartialArgs as ExperimentLogPartialArgs, type braintrust_ExperimentSummary as ExperimentSummary, type braintrust_Exportable as Exportable, braintrust_ExternalAttachment as ExternalAttachment, type braintrust_ExternalAttachmentParams as ExternalAttachmentParams, braintrust_FailedHTTPResponse as FailedHTTPResponse, type braintrust_FullInitOptions as FullInitOptions, type braintrust_FullLoginOptions as FullLoginOptions, braintrust_INTERNAL_BTQL_LIMIT as INTERNAL_BTQL_LIMIT, type braintrust_IdField as IdField, type braintrust_InitOptions as InitOptions, type braintrust_InputField as InputField, type braintrust_InvokeFunctionArgs as InvokeFunctionArgs, type braintrust_InvokeReturn as InvokeReturn, braintrust_LEGACY_CACHED_HEADER as LEGACY_CACHED_HEADER, braintrust_LazyValue as LazyValue, type braintrust_LogCommentFullArgs as LogCommentFullArgs, type braintrust_LogFeedbackFullArgs as LogFeedbackFullArgs, type braintrust_LogOptions as LogOptions, braintrust_Logger as Logger, type braintrust_LoginOptions as LoginOptions, type braintrust_MetricSummary as MetricSummary, braintrust_NOOP_SPAN as NOOP_SPAN, braintrust_NOOP_SPAN_PERMALINK as NOOP_SPAN_PERMALINK, braintrust_NoopSpan as NoopSpan, type braintrust_ObjectMetadata as ObjectMetadata, type braintrust_OtherExperimentLogFields as OtherExperimentLogFields, type braintrust_ParentExperimentIds as ParentExperimentIds, type braintrust_ParentProjectLogIds as ParentProjectLogIds, type braintrust_PromiseUnless as PromiseUnless, braintrust_Prompt as Prompt, type braintrust_PromptRowWithId as PromptRowWithId, braintrust_ReadonlyAttachment as ReadonlyAttachment, braintrust_ReadonlyExperiment as ReadonlyExperiment, type braintrust_ScoreSummary as ScoreSummary, type braintrust_SerializedBraintrustState as SerializedBraintrustState, type braintrust_SetCurrentArg as SetCurrentArg, type braintrust_Span as Span, braintrust_SpanImpl as SpanImpl, type braintrust_StartSpanArgs as StartSpanArgs, braintrust_TestBackgroundLogger as TestBackgroundLogger, type braintrust_WithTransactionId as WithTransactionId, braintrust_X_CACHED_HEADER as X_CACHED_HEADER, braintrust__exportsForTestingOnly as _exportsForTestingOnly, braintrust__internalGetGlobalState as _internalGetGlobalState, braintrust__internalSetInitialState as _internalSetInitialState, braintrust_braintrustStreamChunkSchema as braintrustStreamChunkSchema, braintrust_createFinalValuePassThroughStream as createFinalValuePassThroughStream, braintrust_currentExperiment as currentExperiment, braintrust_currentLogger as currentLogger, braintrust_currentSpan as currentSpan, braintrust_deepCopyEvent as deepCopyEvent, braintrust_deserializePlainStringAsJSON as deserializePlainStringAsJSON, braintrust_devNullWritableStream as devNullWritableStream, braintrust_evaluatorDefinitionSchema as evaluatorDefinitionSchema, braintrust_evaluatorDefinitionsSchema as evaluatorDefinitionsSchema, braintrust_flush as flush, braintrust_getPromptVersions as getPromptVersions, braintrust_getSpanParentObject as getSpanParentObject, braintrust_init as init, braintrust_initDataset as initDataset, braintrust_initExperiment as initExperiment, braintrust_initFunction as initFunction, braintrust_initLogger as initLogger, braintrust_invoke as invoke, braintrust_loadPrompt as loadPrompt, braintrust_log as log, braintrust_logError as logError, braintrust_login as login, braintrust_loginToState as loginToState, braintrust_newId as newId, braintrust_parseCachedHeader as parseCachedHeader, braintrust_permalink as permalink, braintrust_renderMessage as renderMessage, braintrust_renderPromptParams as renderPromptParams, braintrust_setFetch as setFetch, braintrust_setMaskingFunction as setMaskingFunction, braintrust_spanComponentsToObjectId as spanComponentsToObjectId, braintrust_startSpan as startSpan, braintrust_summarize as summarize, braintrust_traceable as traceable, braintrust_traced as traced, braintrust_updateSpan as updateSpan, braintrust_withCurrent as withCurrent, braintrust_withDataset as withDataset, braintrust_withExperiment as withExperiment, braintrust_withLogger as withLogger, braintrust_withParent as withParent, braintrust_wrapOpenAI as wrapOpenAI, braintrust_wrapOpenAIv4 as wrapOpenAIv4, braintrust_wrapTraced as wrapTraced };
20002
20010
  }
20003
20011
 
20004
- export { type AnyDataset, Attachment, type AttachmentParams, type BackgroundLoggerOpts, BaseAttachment, type BaseMetadata, BraintrustState, BraintrustStream, type BraintrustStreamChunk, type ChatPrompt, type CommentEvent, type CompiledPrompt, type CompiledPromptParams, type CompletionPrompt, type DataSummary, Dataset, type DatasetRecord, type DatasetSummary, type DefaultMetadataType, type DefaultPromptArgs, ERR_PERMALINK, type EndSpanArgs, type EvalCase, type EvalParameterSerializedSchema, type EvalParameters, type EvaluatorDefinition, type EvaluatorDefinitions, type EvaluatorManifest, Experiment, type ExperimentLogFullArgs, type ExperimentLogPartialArgs, type ExperimentSummary, type Exportable, ExternalAttachment, type ExternalAttachmentParams, FailedHTTPResponse, type FullInitOptions, type FullLoginOptions, INTERNAL_BTQL_LIMIT, type IdField, type InitOptions, type InputField, type InvokeFunctionArgs, type InvokeReturn, LEGACY_CACHED_HEADER, LazyValue, type LogCommentFullArgs, type LogFeedbackFullArgs, type LogOptions, Logger, type LoginOptions, type MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, type ObjectMetadata, type OtherExperimentLogFields, type ParentExperimentIds, type ParentProjectLogIds, type PromiseUnless, Prompt, type PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, type ScoreSummary, type SerializedBraintrustState, type SetCurrentArg, type Span, SpanImpl, type StartSpanArgs, TestBackgroundLogger, type WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalSetInitialState, braintrustStreamChunkSchema, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, braintrust as default, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getPromptVersions, getSpanParentObject, init, initDataset, initExperiment, initFunction, initLogger, invoke, loadPrompt, log, logError, login, loginToState, newId, parseCachedHeader, permalink, renderMessage, renderPromptParams, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, traceable, traced, updateSpan, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapOpenAI, wrapOpenAIv4, wrapTraced };
20012
+ export { type AnyDataset, Attachment, type AttachmentParams, type BackgroundLoggerOpts, BaseAttachment, type BaseMetadata, BraintrustState, BraintrustStream, type BraintrustStreamChunk, type ChatPrompt, type CommentEvent, type CompiledPrompt, type CompiledPromptParams, type CompletionPrompt, type DataSummary, Dataset, type DatasetRecord, type DatasetSummary, type DefaultMetadataType, type DefaultPromptArgs, ERR_PERMALINK, type EndSpanArgs, type EvalCase, type EvalParameterSerializedSchema, type EvalParameters, type EvaluatorDefinition, type EvaluatorDefinitions, type EvaluatorManifest, Experiment, type ExperimentLogFullArgs, type ExperimentLogPartialArgs, type ExperimentSummary, type Exportable, ExternalAttachment, type ExternalAttachmentParams, FailedHTTPResponse, type FullInitOptions, type FullLoginOptions, INTERNAL_BTQL_LIMIT, type IdField, type InitOptions, type InputField, type InvokeFunctionArgs, type InvokeReturn, LEGACY_CACHED_HEADER, LazyValue, type LogCommentFullArgs, type LogFeedbackFullArgs, type LogOptions, Logger, type LoginOptions, type MetricSummary, NOOP_SPAN, NOOP_SPAN_PERMALINK, NoopSpan, type ObjectMetadata, type OtherExperimentLogFields, type ParentExperimentIds, type ParentProjectLogIds, type PromiseUnless, Prompt, type PromptRowWithId, ReadonlyAttachment, ReadonlyExperiment, type ScoreSummary, type SerializedBraintrustState, type SetCurrentArg, type Span, SpanImpl, type StartSpanArgs, TestBackgroundLogger, type WithTransactionId, X_CACHED_HEADER, _exportsForTestingOnly, _internalGetGlobalState, _internalSetInitialState, braintrustStreamChunkSchema, createFinalValuePassThroughStream, currentExperiment, currentLogger, currentSpan, deepCopyEvent, braintrust as default, deserializePlainStringAsJSON, devNullWritableStream, evaluatorDefinitionSchema, evaluatorDefinitionsSchema, flush, getPromptVersions, getSpanParentObject, init, initDataset, initExperiment, initFunction, initLogger, invoke, loadPrompt, log, logError, login, loginToState, newId, parseCachedHeader, permalink, renderMessage, renderPromptParams, setFetch, setMaskingFunction, spanComponentsToObjectId, startSpan, summarize, traceable, traced, updateSpan, withCurrent, withDataset, withExperiment, withLogger, withParent, wrapOpenAI, wrapOpenAIv4, wrapTraced };
package/dist/browser.js CHANGED
@@ -3058,6 +3058,20 @@ var NoopSpan = (_class4 = class {
3058
3058
  state() {
3059
3059
  return _internalGetGlobalState();
3060
3060
  }
3061
+ // Custom inspect for Node.js console.log
3062
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3063
+ return `NoopSpan {
3064
+ kind: '${this.kind}',
3065
+ id: '${this.id}',
3066
+ spanId: '${this.spanId}',
3067
+ rootSpanId: '${this.rootSpanId}',
3068
+ spanParents: ${JSON.stringify(this.spanParents)}
3069
+ }`;
3070
+ }
3071
+ // Custom toString
3072
+ toString() {
3073
+ return `NoopSpan(id=${this.id}, spanId=${this.spanId})`;
3074
+ }
3061
3075
  }, _class4);
3062
3076
  var NOOP_SPAN = new NoopSpan();
3063
3077
  var NOOP_SPAN_PERMALINK = "https://braintrust.dev/noop-span";
@@ -3278,6 +3292,37 @@ var BraintrustState = (_class5 = class _BraintrustState {
3278
3292
  enforceQueueSizeLimit(enforce) {
3279
3293
  this._bgLogger.get().enforceQueueSizeLimit(enforce);
3280
3294
  }
3295
+ // Custom serialization to avoid logging sensitive data
3296
+ toJSON() {
3297
+ return {
3298
+ id: this.id,
3299
+ orgId: this.orgId,
3300
+ orgName: this.orgName,
3301
+ appUrl: this.appUrl,
3302
+ appPublicUrl: this.appPublicUrl,
3303
+ apiUrl: this.apiUrl,
3304
+ proxyUrl: this.proxyUrl,
3305
+ loggedIn: this.loggedIn
3306
+ // Explicitly exclude loginToken, _apiConn, _appConn, _proxyConn and other sensitive fields
3307
+ };
3308
+ }
3309
+ // Custom inspect for Node.js console.log
3310
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3311
+ return `BraintrustState {
3312
+ id: '${this.id}',
3313
+ orgId: ${this.orgId ? `'${this.orgId}'` : "null"},
3314
+ orgName: ${this.orgName ? `'${this.orgName}'` : "null"},
3315
+ appUrl: ${this.appUrl ? `'${this.appUrl}'` : "null"},
3316
+ apiUrl: ${this.apiUrl ? `'${this.apiUrl}'` : "null"},
3317
+ proxyUrl: ${this.proxyUrl ? `'${this.proxyUrl}'` : "null"},
3318
+ loggedIn: ${this.loggedIn},
3319
+ loginToken: '[REDACTED]'
3320
+ }`;
3321
+ }
3322
+ // Custom toString
3323
+ toString() {
3324
+ return `BraintrustState(id=${this.id}, org=${this.orgName || "none"}, loggedIn=${this.loggedIn})`;
3325
+ }
3281
3326
  }, _class5);
3282
3327
  var _globalState;
3283
3328
  function useTestBackgroundLogger() {
@@ -3445,6 +3490,17 @@ var HTTPConnection = class _HTTPConnection {
3445
3490
  });
3446
3491
  return await resp.json();
3447
3492
  }
3493
+ // Custom inspect for Node.js console.log
3494
+ [Symbol.for("nodejs.util.inspect.custom")]() {
3495
+ return `HTTPConnection {
3496
+ base_url: '${this.base_url}',
3497
+ token: '[REDACTED]'
3498
+ }`;
3499
+ }
3500
+ // Custom toString
3501
+ toString() {
3502
+ return `HTTPConnection(${this.base_url})`;
3503
+ }
3448
3504
  };
3449
3505
  var BaseAttachment = class {
3450
3506
 
@@ -6459,6 +6515,20 @@ var SpanImpl = (_class11 = class _SpanImpl {
6459
6515
  state() {
6460
6516
  return this._state;
6461
6517
  }
6518
+ // Custom inspect for Node.js console.log
6519
+ [Symbol.for("nodejs.util.inspect.custom")]() {
6520
+ return `SpanImpl {
6521
+ kind: '${this.kind}',
6522
+ id: '${this.id}',
6523
+ spanId: '${this.spanId}',
6524
+ rootSpanId: '${this.rootSpanId}',
6525
+ spanParents: ${JSON.stringify(this.spanParents)}
6526
+ }`;
6527
+ }
6528
+ // Custom toString
6529
+ toString() {
6530
+ return `SpanImpl(id=${this.id}, spanId=${this.spanId})`;
6531
+ }
6462
6532
  }, _class11);
6463
6533
  function splitLoggingData({
6464
6534
  event,
@@ -7208,6 +7278,7 @@ __export(exports_browser_exports, {
7208
7278
  currentExperiment: () => currentExperiment,
7209
7279
  currentLogger: () => currentLogger,
7210
7280
  currentSpan: () => currentSpan,
7281
+ deepCopyEvent: () => deepCopyEvent,
7211
7282
  deserializePlainStringAsJSON: () => deserializePlainStringAsJSON,
7212
7283
  devNullWritableStream: () => devNullWritableStream,
7213
7284
  evaluatorDefinitionSchema: () => evaluatorDefinitionSchema,
@@ -7387,7 +7458,7 @@ function parseSpanFromResponseCreateParams(params) {
7387
7458
  function parseEventFromResponseCreateResult(result) {
7388
7459
  const data = {};
7389
7460
  if (_optionalChain([result, 'optionalAccess', _95 => _95.output]) !== void 0) {
7390
- data.output = result.output;
7461
+ data.output = processImagesInOutput(result.output);
7391
7462
  }
7392
7463
  if (result) {
7393
7464
  const { output, usage, ...metadata } = result;
@@ -7398,6 +7469,35 @@ function parseEventFromResponseCreateResult(result) {
7398
7469
  data.metrics = parseMetricsFromUsage(_optionalChain([result, 'optionalAccess', _96 => _96.usage]));
7399
7470
  return data;
7400
7471
  }
7472
+ function processImagesInOutput(output) {
7473
+ if (Array.isArray(output)) {
7474
+ return output.map(processImagesInOutput);
7475
+ }
7476
+ if (isObject(output)) {
7477
+ if (output.type === "image_generation_call" && output.result && typeof output.result === "string") {
7478
+ const fileExtension = output.output_format || "png";
7479
+ const contentType = `image/${fileExtension}`;
7480
+ const baseFilename = output.revised_prompt && typeof output.revised_prompt === "string" ? output.revised_prompt.slice(0, 50).replace(/[^a-zA-Z0-9]/g, "_") : "generated_image";
7481
+ const filename = `${baseFilename}.${fileExtension}`;
7482
+ const binaryString = atob(output.result);
7483
+ const bytes = new Uint8Array(binaryString.length);
7484
+ for (let i = 0; i < binaryString.length; i++) {
7485
+ bytes[i] = binaryString.charCodeAt(i);
7486
+ }
7487
+ const blob = new Blob([bytes], { type: contentType });
7488
+ const attachment = new Attachment({
7489
+ data: blob,
7490
+ filename,
7491
+ contentType
7492
+ });
7493
+ return {
7494
+ ...output,
7495
+ result: attachment
7496
+ };
7497
+ }
7498
+ }
7499
+ return output;
7500
+ }
7401
7501
  function parseSpanFromResponseParseParams(params) {
7402
7502
  const spanArgs = {
7403
7503
  name: "openai.responses.parse",
@@ -7421,7 +7521,7 @@ function parseSpanFromResponseParseParams(params) {
7421
7521
  function parseEventFromResponseParseResult(result) {
7422
7522
  const data = {};
7423
7523
  if (_optionalChain([result, 'optionalAccess', _97 => _97.output]) !== void 0) {
7424
- data.output = result.output;
7524
+ data.output = processImagesInOutput(result.output);
7425
7525
  }
7426
7526
  if (result) {
7427
7527
  const { output, usage, ...metadata } = result;
@@ -7465,7 +7565,7 @@ function parseLogFromItem(item) {
7465
7565
  case "response.completed":
7466
7566
  const data = {};
7467
7567
  if (_optionalChain([response, 'optionalAccess', _103 => _103.output]) !== void 0) {
7468
- data.output = response.output;
7568
+ data.output = processImagesInOutput(response.output);
7469
7569
  }
7470
7570
  if (response) {
7471
7571
  const { usage, output, ...metadata } = response;
@@ -8165,4 +8265,5 @@ var browser_default = exports_browser_exports;
8165
8265
 
8166
8266
 
8167
8267
 
8168
- exports.Attachment = Attachment; exports.BaseAttachment = BaseAttachment; exports.BraintrustState = BraintrustState; exports.BraintrustStream = BraintrustStream; exports.Dataset = Dataset2; exports.ERR_PERMALINK = ERR_PERMALINK; exports.Experiment = Experiment2; exports.ExternalAttachment = ExternalAttachment; exports.FailedHTTPResponse = FailedHTTPResponse; exports.INTERNAL_BTQL_LIMIT = INTERNAL_BTQL_LIMIT; exports.LEGACY_CACHED_HEADER = LEGACY_CACHED_HEADER; exports.LazyValue = LazyValue; exports.Logger = Logger; exports.NOOP_SPAN = NOOP_SPAN; exports.NOOP_SPAN_PERMALINK = NOOP_SPAN_PERMALINK; exports.NoopSpan = NoopSpan; exports.Prompt = Prompt2; exports.ReadonlyAttachment = ReadonlyAttachment; exports.ReadonlyExperiment = ReadonlyExperiment; exports.SpanImpl = SpanImpl; exports.TestBackgroundLogger = TestBackgroundLogger; exports.X_CACHED_HEADER = X_CACHED_HEADER; exports._exportsForTestingOnly = _exportsForTestingOnly; exports._internalGetGlobalState = _internalGetGlobalState; exports._internalSetInitialState = _internalSetInitialState; exports.braintrustStreamChunkSchema = braintrustStreamChunkSchema; exports.createFinalValuePassThroughStream = createFinalValuePassThroughStream; exports.currentExperiment = currentExperiment; exports.currentLogger = currentLogger; exports.currentSpan = currentSpan; exports.default = browser_default; exports.deserializePlainStringAsJSON = deserializePlainStringAsJSON; exports.devNullWritableStream = devNullWritableStream; exports.evaluatorDefinitionSchema = evaluatorDefinitionSchema; exports.evaluatorDefinitionsSchema = evaluatorDefinitionsSchema; exports.flush = flush; exports.getPromptVersions = getPromptVersions; exports.getSpanParentObject = getSpanParentObject; exports.init = init; exports.initDataset = initDataset; exports.initExperiment = initExperiment; exports.initFunction = initFunction; exports.initLogger = initLogger; exports.invoke = invoke; exports.loadPrompt = loadPrompt; exports.log = log; exports.logError = logError; exports.login = login; exports.loginToState = loginToState; exports.newId = newId; exports.parseCachedHeader = parseCachedHeader; exports.permalink = permalink; exports.renderMessage = renderMessage; exports.renderPromptParams = renderPromptParams; exports.setFetch = setFetch; exports.setMaskingFunction = setMaskingFunction; exports.spanComponentsToObjectId = spanComponentsToObjectId; exports.startSpan = startSpan; exports.summarize = summarize; exports.traceable = traceable; exports.traced = traced; exports.updateSpan = updateSpan; exports.withCurrent = withCurrent; exports.withDataset = withDataset; exports.withExperiment = withExperiment; exports.withLogger = withLogger; exports.withParent = withParent; exports.wrapOpenAI = wrapOpenAI; exports.wrapOpenAIv4 = wrapOpenAIv4; exports.wrapTraced = wrapTraced;
8268
+
8269
+ exports.Attachment = Attachment; exports.BaseAttachment = BaseAttachment; exports.BraintrustState = BraintrustState; exports.BraintrustStream = BraintrustStream; exports.Dataset = Dataset2; exports.ERR_PERMALINK = ERR_PERMALINK; exports.Experiment = Experiment2; exports.ExternalAttachment = ExternalAttachment; exports.FailedHTTPResponse = FailedHTTPResponse; exports.INTERNAL_BTQL_LIMIT = INTERNAL_BTQL_LIMIT; exports.LEGACY_CACHED_HEADER = LEGACY_CACHED_HEADER; exports.LazyValue = LazyValue; exports.Logger = Logger; exports.NOOP_SPAN = NOOP_SPAN; exports.NOOP_SPAN_PERMALINK = NOOP_SPAN_PERMALINK; exports.NoopSpan = NoopSpan; exports.Prompt = Prompt2; exports.ReadonlyAttachment = ReadonlyAttachment; exports.ReadonlyExperiment = ReadonlyExperiment; exports.SpanImpl = SpanImpl; exports.TestBackgroundLogger = TestBackgroundLogger; exports.X_CACHED_HEADER = X_CACHED_HEADER; exports._exportsForTestingOnly = _exportsForTestingOnly; exports._internalGetGlobalState = _internalGetGlobalState; exports._internalSetInitialState = _internalSetInitialState; exports.braintrustStreamChunkSchema = braintrustStreamChunkSchema; exports.createFinalValuePassThroughStream = createFinalValuePassThroughStream; exports.currentExperiment = currentExperiment; exports.currentLogger = currentLogger; exports.currentSpan = currentSpan; exports.deepCopyEvent = deepCopyEvent; exports.default = browser_default; exports.deserializePlainStringAsJSON = deserializePlainStringAsJSON; exports.devNullWritableStream = devNullWritableStream; exports.evaluatorDefinitionSchema = evaluatorDefinitionSchema; exports.evaluatorDefinitionsSchema = evaluatorDefinitionsSchema; exports.flush = flush; exports.getPromptVersions = getPromptVersions; exports.getSpanParentObject = getSpanParentObject; exports.init = init; exports.initDataset = initDataset; exports.initExperiment = initExperiment; exports.initFunction = initFunction; exports.initLogger = initLogger; exports.invoke = invoke; exports.loadPrompt = loadPrompt; exports.log = log; exports.logError = logError; exports.login = login; exports.loginToState = loginToState; exports.newId = newId; exports.parseCachedHeader = parseCachedHeader; exports.permalink = permalink; exports.renderMessage = renderMessage; exports.renderPromptParams = renderPromptParams; exports.setFetch = setFetch; exports.setMaskingFunction = setMaskingFunction; exports.spanComponentsToObjectId = spanComponentsToObjectId; exports.startSpan = startSpan; exports.summarize = summarize; exports.traceable = traceable; exports.traced = traced; exports.updateSpan = updateSpan; exports.withCurrent = withCurrent; exports.withDataset = withDataset; exports.withExperiment = withExperiment; exports.withLogger = withLogger; exports.withParent = withParent; exports.wrapOpenAI = wrapOpenAI; exports.wrapOpenAIv4 = wrapOpenAIv4; exports.wrapTraced = wrapTraced;