coaiajs 0.3.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +10 -4
  2. package/agents/custom_gpt/ceremony.yml +3341 -0
  3. package/dist/mcp/config.d.ts.map +1 -1
  4. package/dist/mcp/config.js +0 -2
  5. package/dist/mcp/config.js.map +1 -1
  6. package/dist/mcp/server.js +3 -8
  7. package/dist/mcp/server.js.map +1 -1
  8. package/dist/mcp/tools/coaiapy-tools.d.ts.map +1 -1
  9. package/dist/mcp/tools/coaiapy-tools.js +3 -18
  10. package/dist/mcp/tools/coaiapy-tools.js.map +1 -1
  11. package/dist/src/cli.js +157 -96
  12. package/dist/src/cli.js.map +1 -1
  13. package/dist/src/langfuse/client.d.ts +44 -11
  14. package/dist/src/langfuse/client.d.ts.map +1 -1
  15. package/dist/src/langfuse/client.js +171 -8
  16. package/dist/src/langfuse/client.js.map +1 -1
  17. package/dist/src/langfuse/comments.js +2 -2
  18. package/dist/src/langfuse/comments.js.map +1 -1
  19. package/dist/src/langfuse/index.d.ts +4 -2
  20. package/dist/src/langfuse/index.d.ts.map +1 -1
  21. package/dist/src/langfuse/index.js +2 -1
  22. package/dist/src/langfuse/index.js.map +1 -1
  23. package/dist/src/langfuse/observations.d.ts +37 -2
  24. package/dist/src/langfuse/observations.d.ts.map +1 -1
  25. package/dist/src/langfuse/observations.js +132 -61
  26. package/dist/src/langfuse/observations.js.map +1 -1
  27. package/dist/src/langfuse/projects.d.ts +2 -0
  28. package/dist/src/langfuse/projects.d.ts.map +1 -0
  29. package/dist/src/langfuse/projects.js +8 -0
  30. package/dist/src/langfuse/projects.js.map +1 -0
  31. package/dist/src/langfuse/scores.d.ts +9 -3
  32. package/dist/src/langfuse/scores.d.ts.map +1 -1
  33. package/dist/src/langfuse/scores.js +33 -22
  34. package/dist/src/langfuse/scores.js.map +1 -1
  35. package/dist/src/langfuse/traces.d.ts +16 -5
  36. package/dist/src/langfuse/traces.d.ts.map +1 -1
  37. package/dist/src/langfuse/traces.js +112 -105
  38. package/dist/src/langfuse/traces.js.map +1 -1
  39. package/llms-full.txt +8 -5
  40. package/llms.txt +3 -3
  41. package/package.json +7 -2
  42. package/rispecs/03-langfuse-module.spec.md +5 -0
  43. package/rispecs/08-cli-interface.spec.md +8 -5
  44. package/rispecs/09-mcp-server.spec.md +2 -2
@@ -1,22 +1,55 @@
1
- export interface IngestionEvent {
2
- id: string;
3
- timestamp: string;
4
- type: 'trace-create' | 'observation-create' | 'score-create' | 'sdk-log';
5
- body: Record<string, unknown>;
6
- }
1
+ import { LangfuseClient as OfficialLangfuseClient } from '@langfuse/client';
7
2
  export interface LangfuseClientConfig {
8
3
  publicKey?: string;
9
4
  secretKey?: string;
10
5
  baseUrl?: string;
11
6
  }
7
+ export type V4ObservationType = 'SPAN' | 'GENERATION' | 'EVENT';
8
+ export interface V4ObservationInput {
9
+ traceId?: string;
10
+ observationId?: string;
11
+ parentObservationId?: string;
12
+ name: string;
13
+ type?: V4ObservationType;
14
+ input?: unknown;
15
+ output?: unknown;
16
+ metadata?: Record<string, unknown>;
17
+ level?: 'DEBUG' | 'DEFAULT' | 'WARNING' | 'ERROR';
18
+ statusMessage?: string;
19
+ version?: string;
20
+ environment?: string;
21
+ startTime?: string;
22
+ endTime?: string;
23
+ model?: string;
24
+ modelParameters?: Record<string, string | number>;
25
+ usageDetails?: Record<string, number>;
26
+ costDetails?: Record<string, number>;
27
+ traceName?: string;
28
+ userId?: string;
29
+ sessionId?: string;
30
+ tags?: string[];
31
+ traceMetadata?: Record<string, unknown>;
32
+ }
33
+ export interface V4ObservationResult {
34
+ traceId: string;
35
+ observationId: string;
36
+ }
12
37
  export declare class LangfuseClient {
13
- private publicKey;
14
- private secretKey;
15
- private baseUrl;
38
+ private readonly publicKey;
39
+ private readonly secretKey;
40
+ private readonly baseUrl;
41
+ readonly sdk: OfficialLangfuseClient;
16
42
  constructor(config?: LangfuseClientConfig);
43
+ get api(): OfficialLangfuseClient['api'];
17
44
  private getAuthHeader;
18
45
  request<T = unknown>(method: string, path: string, body?: unknown): Promise<T>;
19
- ingest(events: IngestionEvent[]): Promise<void>;
46
+ /**
47
+ * Export one complete, immutable observation through the Langfuse JS SDK v5
48
+ * OpenTelemetry pipeline. This replaces legacy trace/observation events sent
49
+ * to POST /api/public/ingestion.
50
+ */
51
+ exportObservation(input: V4ObservationInput): Promise<V4ObservationResult>;
52
+ private exportObservationNow;
20
53
  getBaseUrl(): string;
21
54
  }
22
55
  export declare class LangfuseApiError extends Error {
@@ -24,7 +57,7 @@ export declare class LangfuseApiError extends Error {
24
57
  readonly detail: string;
25
58
  constructor(message: string, statusCode: number, detail: string);
26
59
  }
60
+ export declare function nowISO(): string;
27
61
  export declare function getClient(config?: LangfuseClientConfig): LangfuseClient;
28
62
  export declare function resetClient(): void;
29
- export declare function nowISO(): string;
30
63
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/langfuse/client.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,cAAc,GAAG,oBAAoB,GAAG,cAAc,GAAG,SAAS,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,CAAC,EAAE,oBAAoB;IAOzC,OAAO,CAAC,aAAa;IAKf,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAiC9E,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,UAAU,IAAI,MAAM;CAGrB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,UAAU,EAAE,MAAM;aAClB,MAAM,EAAE,MAAM;gBAF9B,OAAO,EAAE,MAAM,EACC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM;CAKjC;AAKD,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,cAAc,CAKvE;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED,wBAAgB,MAAM,IAAI,MAAM,CAE/B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/langfuse/client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,IAAI,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAU5E,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC;AAEhE,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;CACvB;AAMD,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,QAAQ,CAAC,GAAG,EAAE,sBAAsB,CAAC;gBAEzB,MAAM,CAAC,EAAE,oBAAoB;IAYzC,IAAI,GAAG,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAEvC;IAED,OAAO,CAAC,aAAa;IAKf,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAkCpF;;;;OAIG;IACG,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;YAMlE,oBAAoB;IAuElC,UAAU,IAAI,MAAM;CAGrB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;aAGvB,UAAU,EAAE,MAAM;aAClB,MAAM,EAAE,MAAM;gBAF9B,OAAO,EAAE,MAAM,EACC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM;CAKjC;AAoED,wBAAgB,MAAM,IAAI,MAAM,CAE/B;AAID,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,cAAc,CAKvE;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
@@ -1,15 +1,32 @@
1
- // coaiajs/src/langfuse/client.ts — Langfuse REST client
2
- // Parity with cofuse.py's direct REST approach (no SDK dependency for API calls)
1
+ // coaiajs/src/langfuse/client.ts — Langfuse v4 REST and OpenTelemetry client
2
+ import { createHash, randomBytes } from 'node:crypto';
3
+ import { LangfuseClient as OfficialLangfuseClient } from '@langfuse/client';
4
+ import { LangfuseSpanProcessor } from '@langfuse/otel';
5
+ import { setLangfuseTracerProvider, startObservation, } from '@langfuse/tracing';
6
+ import { TraceFlags } from '@opentelemetry/api';
7
+ import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
3
8
  import { getConfig } from '../config.js';
9
+ // The Langfuse tracing package stores its isolated provider globally. Serialize
10
+ // short-lived exports so concurrent callers cannot swap providers mid-span.
11
+ let exportQueue = Promise.resolve();
4
12
  export class LangfuseClient {
5
13
  publicKey;
6
14
  secretKey;
7
15
  baseUrl;
16
+ sdk;
8
17
  constructor(config) {
9
18
  const appConfig = getConfig();
10
19
  this.publicKey = config?.publicKey ?? appConfig.langfuse?.publicKey ?? '';
11
20
  this.secretKey = config?.secretKey ?? appConfig.langfuse?.secretKey ?? '';
12
21
  this.baseUrl = (config?.baseUrl ?? appConfig.langfuse?.baseUrl ?? 'https://cloud.langfuse.com').replace(/\/+$/, '');
22
+ this.sdk = new OfficialLangfuseClient({
23
+ publicKey: this.publicKey,
24
+ secretKey: this.secretKey,
25
+ baseUrl: this.baseUrl,
26
+ });
27
+ }
28
+ get api() {
29
+ return this.sdk.api;
13
30
  }
14
31
  getAuthHeader() {
15
32
  const credentials = Buffer.from(`${this.publicKey}:${this.secretKey}`).toString('base64');
@@ -20,6 +37,7 @@ export class LangfuseClient {
20
37
  const headers = {
21
38
  'Authorization': this.getAuthHeader(),
22
39
  'Content-Type': 'application/json',
40
+ 'x-langfuse-sdk-name': 'coaiajs',
23
41
  };
24
42
  const init = { method, headers };
25
43
  if (body !== undefined) {
@@ -41,8 +59,84 @@ export class LangfuseClient {
41
59
  return undefined;
42
60
  return JSON.parse(text);
43
61
  }
44
- async ingest(events) {
45
- await this.request('POST', '/api/public/ingestion', { batch: events });
62
+ /**
63
+ * Export one complete, immutable observation through the Langfuse JS SDK v5
64
+ * OpenTelemetry pipeline. This replaces legacy trace/observation events sent
65
+ * to POST /api/public/ingestion.
66
+ */
67
+ async exportObservation(input) {
68
+ const pending = exportQueue.then(() => this.exportObservationNow(input));
69
+ exportQueue = pending.then(() => undefined, () => undefined);
70
+ return pending;
71
+ }
72
+ async exportObservationNow(input) {
73
+ const traceId = normalizeTraceId(input.traceId);
74
+ const observationId = normalizeObservationId(input.observationId);
75
+ const idGenerator = new FixedIdGenerator(traceId, observationId);
76
+ const processor = new LangfuseSpanProcessor({
77
+ publicKey: this.publicKey,
78
+ secretKey: this.secretKey,
79
+ baseUrl: this.baseUrl,
80
+ exportMode: 'immediate',
81
+ mediaUploadEnabled: false,
82
+ additionalHeaders: { 'x-langfuse-ingestion-version': '4' },
83
+ });
84
+ const provider = new NodeTracerProvider({
85
+ idGenerator,
86
+ spanProcessors: [processor],
87
+ });
88
+ setLangfuseTracerProvider(provider);
89
+ try {
90
+ const parentSpanContext = input.parentObservationId
91
+ ? makeParentSpanContext(traceId, input.parentObservationId)
92
+ : undefined;
93
+ const options = {
94
+ startTime: input.startTime ? new Date(input.startTime) : undefined,
95
+ parentSpanContext,
96
+ };
97
+ const baseAttributes = {
98
+ input: input.input,
99
+ output: input.output,
100
+ metadata: input.metadata,
101
+ level: input.level,
102
+ statusMessage: input.statusMessage,
103
+ version: input.version,
104
+ environment: input.environment,
105
+ };
106
+ const observation = (() => {
107
+ switch (input.type ?? 'SPAN') {
108
+ case 'GENERATION':
109
+ return startObservation(input.name, {
110
+ ...baseAttributes,
111
+ model: input.model,
112
+ modelParameters: input.modelParameters,
113
+ usageDetails: input.usageDetails,
114
+ costDetails: input.costDetails,
115
+ }, { ...options, asType: 'generation' });
116
+ case 'EVENT':
117
+ // LangfuseEvent ends immediately in its constructor, before trace-wide
118
+ // attributes can be attached. Create a zero/short span and set its
119
+ // final observation type before ending it instead.
120
+ return startObservation(input.name, baseAttributes, { ...options, asType: 'span' });
121
+ default:
122
+ return startObservation(input.name, baseAttributes, { ...options, asType: 'span' });
123
+ }
124
+ })();
125
+ observation.otelSpan.setAttributes(buildTraceAttributes(input));
126
+ if ((input.type ?? 'SPAN') === 'EVENT') {
127
+ observation.otelSpan.setAttribute('langfuse.observation.type', 'event');
128
+ }
129
+ observation.end(input.endTime ? new Date(input.endTime) : undefined);
130
+ await processor.forceFlush();
131
+ return {
132
+ traceId: observation.traceId,
133
+ observationId: observation.id,
134
+ };
135
+ }
136
+ finally {
137
+ setLangfuseTracerProvider(null);
138
+ await provider.shutdown();
139
+ }
46
140
  }
47
141
  getBaseUrl() {
48
142
  return this.baseUrl;
@@ -58,7 +152,79 @@ export class LangfuseApiError extends Error {
58
152
  this.name = 'LangfuseApiError';
59
153
  }
60
154
  }
61
- // Singleton with lazy init
155
+ class FixedIdGenerator {
156
+ traceId;
157
+ firstSpanId;
158
+ constructor(traceId, firstSpanId) {
159
+ this.traceId = traceId;
160
+ this.firstSpanId = firstSpanId;
161
+ }
162
+ usedFirstSpanId = false;
163
+ generateTraceId() {
164
+ return this.traceId;
165
+ }
166
+ generateSpanId() {
167
+ if (!this.usedFirstSpanId) {
168
+ this.usedFirstSpanId = true;
169
+ return this.firstSpanId;
170
+ }
171
+ return randomBytes(8).toString('hex');
172
+ }
173
+ }
174
+ function makeParentSpanContext(traceId, parentObservationId) {
175
+ return {
176
+ traceId,
177
+ spanId: normalizeObservationId(parentObservationId),
178
+ traceFlags: TraceFlags.SAMPLED,
179
+ isRemote: true,
180
+ };
181
+ }
182
+ function normalizeTraceId(value) {
183
+ if (!value)
184
+ return randomBytes(16).toString('hex');
185
+ const compact = value.replaceAll('-', '').toLowerCase();
186
+ if (/^[0-9a-f]{32}$/.test(compact) && !/^0+$/.test(compact))
187
+ return compact;
188
+ return createHash('sha256').update(value).digest('hex').slice(0, 32);
189
+ }
190
+ function normalizeObservationId(value) {
191
+ if (!value)
192
+ return randomBytes(8).toString('hex');
193
+ const compact = value.replaceAll('-', '').toLowerCase();
194
+ if (/^[0-9a-f]{16}$/.test(compact) && !/^0+$/.test(compact))
195
+ return compact;
196
+ return createHash('sha256').update(value).digest('hex').slice(0, 16);
197
+ }
198
+ function buildTraceAttributes(input) {
199
+ const attributes = {};
200
+ if (input.traceName)
201
+ attributes['langfuse.trace.name'] = input.traceName;
202
+ if (input.userId)
203
+ attributes['langfuse.user.id'] = input.userId;
204
+ if (input.sessionId)
205
+ attributes['langfuse.session.id'] = input.sessionId;
206
+ if (input.tags?.length)
207
+ attributes['langfuse.trace.tags'] = input.tags;
208
+ if (input.version)
209
+ attributes['langfuse.version'] = input.version;
210
+ if (input.environment)
211
+ attributes['langfuse.environment'] = input.environment;
212
+ for (const [key, value] of Object.entries(stringifyMetadata(input.traceMetadata))) {
213
+ attributes[`langfuse.trace.metadata.${key}`] = value;
214
+ }
215
+ return attributes;
216
+ }
217
+ function stringifyMetadata(metadata) {
218
+ if (!metadata)
219
+ return {};
220
+ return Object.fromEntries(Object.entries(metadata).map(([key, value]) => {
221
+ const serialized = typeof value === 'string' ? value : JSON.stringify(value);
222
+ return [key, serialized.slice(0, 200)];
223
+ }));
224
+ }
225
+ export function nowISO() {
226
+ return new Date().toISOString();
227
+ }
62
228
  let _client = null;
63
229
  export function getClient(config) {
64
230
  if (!_client) {
@@ -69,7 +235,4 @@ export function getClient(config) {
69
235
  export function resetClient() {
70
236
  _client = null;
71
237
  }
72
- export function nowISO() {
73
- return new Date().toISOString();
74
- }
75
238
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/langfuse/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/langfuse/client.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export async function listComments(filters) {
5
5
  const client = getClient();
6
6
  const params = new URLSearchParams();
7
7
  if (filters.objectType)
8
- params.set('objectType', filters.objectType);
8
+ params.set('objectType', filters.objectType.toUpperCase());
9
9
  if (filters.objectId)
10
10
  params.set('objectId', filters.objectId);
11
11
  if (filters.authorUserId)
@@ -25,7 +25,7 @@ export async function createComment(params) {
25
25
  const client = getClient();
26
26
  const data = {
27
27
  content: params.text,
28
- objectType: params.objectType,
28
+ objectType: params.objectType.toUpperCase(),
29
29
  objectId: params.objectId,
30
30
  };
31
31
  if (params.authorUserId)
@@ -1 +1 @@
1
- {"version":3,"file":"comments.js","sourceRoot":"","sources":["../../../src/langfuse/comments.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,sCAAsC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAUxC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAuB;IACxD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IAErC,IAAI,OAAO,CAAC,UAAU;QAAE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3E,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAEjD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAU,KAAK,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAClF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,SAAiB;IAChD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAU,KAAK,EAAE,wBAAwB,SAAS,EAAE,CAAC,CAAC;IACzF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAKnC;IACC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,IAAI,GAA4B;QACpC,OAAO,EAAE,MAAM,CAAC,IAAI;QACpB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;IAEF,IAAI,MAAM,CAAC,YAAY;QAAE,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAU,MAAM,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;IACnF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"comments.js","sourceRoot":"","sources":["../../../src/langfuse/comments.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,sCAAsC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAUxC,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAuB;IACxD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IAErC,IAAI,OAAO,CAAC,UAAU;QAAE,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;IACnF,IAAI,OAAO,CAAC,QAAQ;QAAE,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3E,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAEjD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAU,KAAK,EAAE,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAClF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,SAAiB;IAChD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAU,KAAK,EAAE,wBAAwB,SAAS,EAAE,CAAC,CAAC;IACzF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAKnC;IACC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,IAAI,GAA4B;QACpC,OAAO,EAAE,MAAM,CAAC,IAAI;QACpB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE;QAC3C,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;IAEF,IAAI,MAAM,CAAC,YAAY;QAAE,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAU,MAAM,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;IACnF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC"}
@@ -1,8 +1,9 @@
1
1
  export { LangfuseClient, LangfuseApiError, getClient, resetClient, nowISO } from './client.js';
2
- export type { IngestionEvent, LangfuseClientConfig } from './client.js';
2
+ export type { LangfuseClientConfig, V4ObservationInput, V4ObservationResult, V4ObservationType, } from './client.js';
3
3
  export { addTrace, createTrace, patchTraceOutput, listTraces, getTrace, traceView, sessionView, formatTracesTable, formatTracesMarkdown, formatTraceTree, } from './traces.js';
4
4
  export type { TraceFilters } from './traces.js';
5
- export { addObservation, addObservations, getObservation, formatObservationDisplay } from './observations.js';
5
+ export { addObservation, addObservations, listObservations, getObservation, formatObservationDisplay, } from './observations.js';
6
+ export type { ObservationFilters } from './observations.js';
6
7
  export { listPrompts, getPrompt, createPrompt, formatPromptsTable, formatPromptMarkdown, formatPromptDisplay, } from './prompts.js';
7
8
  export type { PromptSelector } from './prompts.js';
8
9
  export { listDatasets, getDataset, createDataset, listDatasetItems, createDatasetItem, formatDatasetsTable, formatDatasetForFinetuning, } from './datasets.js';
@@ -11,4 +12,5 @@ export type { ScoreFilters } from './scores.js';
11
12
  export { listComments, getComment, createComment } from './comments.js';
12
13
  export type { CommentFilters } from './comments.js';
13
14
  export { uploadAndAttachMedia, getMedia, detectContentType, formatMediaDisplay, } from './media.js';
15
+ export { listProjects } from './projects.js';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/langfuse/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC/F,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExE,OAAO,EACL,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EACvC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAC5C,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,GACzD,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE9G,OAAO,EACL,WAAW,EAAE,SAAS,EAAE,YAAY,EACpC,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,GAC9D,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAC5E,mBAAmB,EAAE,0BAA0B,GAChD,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,UAAU,EAChE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EACnD,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAChB,iBAAiB,EAAE,aAAa,EAChC,iBAAiB,EAAE,uBAAuB,GAC3C,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EACL,oBAAoB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,kBAAkB,GACtE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/langfuse/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC/F,YAAY,EACV,oBAAoB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,iBAAiB,GACjF,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EACvC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAC5C,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,GACzD,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EACL,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EACjE,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EACL,WAAW,EAAE,SAAS,EAAE,YAAY,EACpC,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,GAC9D,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAC5E,mBAAmB,EAAE,0BAA0B,GAChD,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,UAAU,EAChE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EACnD,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAChB,iBAAiB,EAAE,aAAa,EAChC,iBAAiB,EAAE,uBAAuB,GAC3C,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EACL,oBAAoB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,kBAAkB,GACtE,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
@@ -1,10 +1,11 @@
1
1
  // coaiajs/src/langfuse/index.ts — Barrel export
2
2
  export { LangfuseClient, LangfuseApiError, getClient, resetClient, nowISO } from './client.js';
3
3
  export { addTrace, createTrace, patchTraceOutput, listTraces, getTrace, traceView, sessionView, formatTracesTable, formatTracesMarkdown, formatTraceTree, } from './traces.js';
4
- export { addObservation, addObservations, getObservation, formatObservationDisplay } from './observations.js';
4
+ export { addObservation, addObservations, listObservations, getObservation, formatObservationDisplay, } from './observations.js';
5
5
  export { listPrompts, getPrompt, createPrompt, formatPromptsTable, formatPromptMarkdown, formatPromptDisplay, } from './prompts.js';
6
6
  export { listDatasets, getDataset, createDataset, listDatasetItems, createDatasetItem, formatDatasetsTable, formatDatasetForFinetuning, } from './datasets.js';
7
7
  export { createScore, applyScoreToTrace, createScoreForTarget, listScores, listScoreConfigs, getScoreConfig, createScoreConfig, exportScoreConfigs, importScoreConfigs, applyScoreConfig, getBuiltInPresets, installPreset, formatScoresTable, formatScoreConfigsTable, } from './scores.js';
8
8
  export { listComments, getComment, createComment } from './comments.js';
9
9
  export { uploadAndAttachMedia, getMedia, detectContentType, formatMediaDisplay, } from './media.js';
10
+ export { listProjects } from './projects.js';
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/langfuse/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAEhD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAG/F,OAAO,EACL,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EACvC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAC5C,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,GACzD,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAE9G,OAAO,EACL,WAAW,EAAE,SAAS,EAAE,YAAY,EACpC,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,GAC9D,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAC5E,mBAAmB,EAAE,0BAA0B,GAChD,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,UAAU,EAChE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EACnD,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAChB,iBAAiB,EAAE,aAAa,EAChC,iBAAiB,EAAE,uBAAuB,GAC3C,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGxE,OAAO,EACL,oBAAoB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,kBAAkB,GACtE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/langfuse/index.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAEhD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAK/F,OAAO,EACL,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EACvC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAC5C,iBAAiB,EAAE,oBAAoB,EAAE,eAAe,GACzD,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,cAAc,EACjE,wBAAwB,GACzB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,WAAW,EAAE,SAAS,EAAE,YAAY,EACpC,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,GAC9D,MAAM,cAAc,CAAC;AAGtB,OAAO,EACL,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,EAC5E,mBAAmB,EAAE,0BAA0B,GAChD,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,UAAU,EAChE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EACnD,kBAAkB,EAAE,kBAAkB,EACtC,gBAAgB,EAChB,iBAAiB,EAAE,aAAa,EAChC,iBAAiB,EAAE,uBAAuB,GAC3C,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGxE,OAAO,EACL,oBAAoB,EAAE,QAAQ,EAAE,iBAAiB,EAAE,kBAAkB,GACtE,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC"}
@@ -1,3 +1,22 @@
1
+ export declare const ALL_OBSERVATION_FIELDS: string;
2
+ export interface ObservationFilters {
3
+ fields?: string;
4
+ limit?: number;
5
+ cursor?: string;
6
+ name?: string;
7
+ userId?: string;
8
+ sessionId?: string;
9
+ type?: string;
10
+ traceId?: string;
11
+ level?: 'DEBUG' | 'DEFAULT' | 'WARNING' | 'ERROR';
12
+ parentObservationId?: string;
13
+ isRootObservation?: boolean;
14
+ environment?: string | string[];
15
+ fromStartTime?: string;
16
+ toStartTime?: string;
17
+ version?: string;
18
+ filter?: Array<Record<string, unknown>>;
19
+ }
1
20
  export declare function addObservation(params: {
2
21
  observationId?: string;
3
22
  traceId: string;
@@ -9,13 +28,29 @@ export declare function addObservation(params: {
9
28
  inputData?: unknown;
10
29
  output?: string;
11
30
  outputData?: unknown;
12
- metadata?: string | unknown;
31
+ metadata?: string | Record<string, unknown>;
13
32
  startTime?: string;
14
33
  endTime?: string;
15
34
  level?: string;
35
+ statusMessage?: string;
16
36
  model?: string;
17
- usage?: unknown;
37
+ modelParameters?: Record<string, string | number>;
38
+ usage?: Record<string, number>;
39
+ cost?: Record<string, number>;
40
+ traceName?: string;
41
+ userId?: string;
42
+ sessionId?: string;
43
+ tags?: string[];
44
+ traceMetadata?: Record<string, unknown>;
18
45
  }): Promise<string>;
46
+ export declare function listObservations(filters?: ObservationFilters): Promise<string>;
47
+ export declare function fetchObservationsPage(filters?: ObservationFilters): Promise<{
48
+ data: Array<Record<string, unknown>>;
49
+ meta: {
50
+ cursor?: string;
51
+ };
52
+ }>;
53
+ export declare function fetchAllObservations(filters?: ObservationFilters): Promise<Array<Record<string, unknown>>>;
19
54
  export declare function getObservation(observationId: string): Promise<string>;
20
55
  export declare function addObservations(params: {
21
56
  traceId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"observations.d.ts","sourceRoot":"","sources":["../../../src/langfuse/observations.ts"],"names":[],"mappings":"AAOA,wBAAsB,cAAc,CAAC,MAAM,EAAE;IAC3C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,OAAO,CAAC,MAAM,CAAC,CAsClB;AAED,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAI3E;AAWD,wBAAsB,eAAe,CAAC,MAAM,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAUlI;AAWD,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAsD9D"}
1
+ {"version":3,"file":"observations.d.ts","sourceRoot":"","sources":["../../../src/langfuse/observations.ts"],"names":[],"mappings":"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"}