@uselemma/tracing 7.8.1 → 7.10.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.
package/dist/vercel-ai.js CHANGED
@@ -3,7 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.vercelAI = vercelAI;
4
4
  const client_1 = require("./client");
5
5
  const error_message_1 = require("./error-message");
6
+ const schedule_1 = require("./schedule");
6
7
  const tool_result_1 = require("./tool-result");
8
+ const usage_1 = require("./usage");
9
+ const INTEGRATION_ATTRS = {
10
+ "lemma.sdk.integration": "vercel-ai",
11
+ };
7
12
  const CONCURRENT_REUSE_ERROR = "vercelAI() is already tracing a run. Create a new vercelAI() integration per concurrent AI SDK operation.";
8
13
  function addMs(startedAt, durationMs) {
9
14
  return typeof durationMs === "number"
@@ -47,33 +52,27 @@ function structuredAssistantOutput(text, content) {
47
52
  return content;
48
53
  return stringifyContent(content);
49
54
  }
50
- function errorToolFields(error, recordOutputs) {
51
- return recordOutputs
52
- ? { error, status: "ERROR" }
53
- : { status: "ERROR" };
55
+ function errorToolFields(error) {
56
+ return { error, status: "ERROR" };
54
57
  }
55
- function toolOutput(event, recordOutputs) {
58
+ function toolOutput(event) {
56
59
  if (event.toolOutput.type === "tool-error") {
57
- return errorToolFields(event.toolOutput.error, recordOutputs);
60
+ return errorToolFields(event.toolOutput.error);
58
61
  }
59
62
  const softError = (0, tool_result_1.toolResultError)(event.toolOutput.output);
60
63
  if (softError) {
61
- return errorToolFields(softError, recordOutputs);
64
+ return errorToolFields(softError);
62
65
  }
63
- if (!recordOutputs)
64
- return {};
65
66
  return { output: event.toolOutput.output };
66
67
  }
67
- function v6ToolOutput(event, recordOutputs) {
68
+ function v6ToolOutput(event) {
68
69
  if (!event.success) {
69
- return errorToolFields(event.error, recordOutputs);
70
+ return errorToolFields(event.error);
70
71
  }
71
72
  const softError = (0, tool_result_1.toolResultError)(event.output);
72
73
  if (softError) {
73
- return errorToolFields(softError, recordOutputs);
74
+ return errorToolFields(softError);
74
75
  }
75
- if (!recordOutputs)
76
- return {};
77
76
  return { output: event.output };
78
77
  }
79
78
  function resolveDurationMs(startedAt, endedAt, reportedMs) {
@@ -182,6 +181,13 @@ function v6Output(event) {
182
181
  function endOutput(event) {
183
182
  return structuredAssistantOutput(event.text, event.content);
184
183
  }
184
+ /** Extract usage from a finish/end event when the AI SDK exposes it. */
185
+ function eventUsage(event) {
186
+ return (0, usage_1.normalizeTokenUsage)(event.usage) ?? (0, usage_1.normalizeTokenUsage)(event.totalUsage);
187
+ }
188
+ function withIntegrationAttrs(attributes) {
189
+ return { ...INTEGRATION_ATTRS, ...(attributes ?? {}) };
190
+ }
185
191
  function vercelAI(options = {}) {
186
192
  let lemma = options.lemma;
187
193
  const pending = new Set();
@@ -201,6 +207,7 @@ function vercelAI(options = {}) {
201
207
  let runStartedAt;
202
208
  let runError;
203
209
  let endingTrace;
210
+ let deliverOwnedTrace;
204
211
  function resetRunState() {
205
212
  phase = "idle";
206
213
  modelCalls = new Map();
@@ -218,6 +225,7 @@ function vercelAI(options = {}) {
218
225
  runStartedAt = undefined;
219
226
  runError = undefined;
220
227
  endingTrace = undefined;
228
+ deliverOwnedTrace = undefined;
221
229
  }
222
230
  function trackGeneration(handle) {
223
231
  generationHandlesById.set(handle.id, handle);
@@ -233,6 +241,7 @@ function vercelAI(options = {}) {
233
241
  projectId: options.projectId,
234
242
  baseUrl: options.baseUrl,
235
243
  fetch: options.fetch,
244
+ release: options.release,
236
245
  });
237
246
  return lemma;
238
247
  }
@@ -276,10 +285,6 @@ function vercelAI(options = {}) {
276
285
  if (userId)
277
286
  trace.userId(userId);
278
287
  }
279
- function rootErrorPayload(message) {
280
- // Preserve ERROR status while redacting message bodies when outputs are off.
281
- return options.recordOutputs === false ? "error" : message;
282
- }
283
288
  function resolveTrace(event) {
284
289
  // Trailing AI SDK callbacks can arrive while terminal delivery is in flight.
285
290
  // Attach them to the still-open trace instead of throwing.
@@ -299,12 +304,10 @@ function vercelAI(options = {}) {
299
304
  return { trace: options.trace, source: "explicit" };
300
305
  }
301
306
  if (!managedTrace) {
302
- const rawInput = options.recordInputs === false ? undefined : eventTraceInput(event);
307
+ const rawInput = eventTraceInput(event);
303
308
  managedTrace = getLemma().trace({
304
309
  name: traceName(options, event),
305
- input: options.recordInputs === false
306
- ? undefined
307
- : rootTraceInput(rawInput),
310
+ input: rootTraceInput(rawInput),
308
311
  metadata: mergedMetadata(metadata),
309
312
  threadId: resolveThreadId(metadata),
310
313
  userId: resolveUserId(metadata),
@@ -313,7 +316,7 @@ function vercelAI(options = {}) {
313
316
  }
314
317
  else {
315
318
  applyIdentity(managedTrace, metadata);
316
- if (options.recordInputs !== false && event) {
319
+ if (event) {
317
320
  const rawInput = eventTraceInput(event);
318
321
  if (rawInput !== undefined) {
319
322
  // Keep root input as the latest known current-turn value.
@@ -378,25 +381,28 @@ function vercelAI(options = {}) {
378
381
  const durationMs = Math.max(0, endedAt.getTime() - startedAt.getTime());
379
382
  const successOutput = endOutput(event);
380
383
  endingTrace = ownedTrace;
381
- const endPromise = (async () => {
384
+ // Delay the HTTP send until after generateText returns so optional
385
+ // recordResult can stamp usage onto the same generation spans. A
386
+ // macrotask fallback still delivers if the caller never waits for ingest.
387
+ let delivered = false;
388
+ const deliver = async () => {
389
+ if (delivered)
390
+ return;
391
+ delivered = true;
382
392
  try {
383
393
  if (!ownedTrace)
384
394
  return;
385
- // Yield so a racing fail()/trailing callback in this turn can settle.
386
- await Promise.resolve();
387
395
  const terminalError = runError;
388
396
  // Explicit handles already own startedAt from construction; only pass
389
397
  // durationMs for managed traces we started with runStartedAt.
390
- const timing = explicit
391
- ? { endedAt }
392
- : { durationMs, endedAt };
398
+ const timing = explicit ? { endedAt } : { durationMs, endedAt };
393
399
  if (terminalError) {
394
- ownedTrace.fail(rootErrorPayload(terminalError));
400
+ ownedTrace.fail(terminalError);
395
401
  ownedTrace.output(undefined);
396
402
  await ownedTrace.end(timing);
397
403
  return;
398
404
  }
399
- if (options.recordOutputs === false || successOutput === undefined) {
405
+ if (successOutput === undefined) {
400
406
  await ownedTrace.end(timing);
401
407
  }
402
408
  else {
@@ -410,8 +416,19 @@ function vercelAI(options = {}) {
410
416
  // Fully reset so the same integration object can be reused sequentially.
411
417
  resetRunState();
412
418
  }
413
- })();
414
- await trackPending(endPromise);
419
+ };
420
+ deliverOwnedTrace = deliver;
421
+ trackPending(new Promise((resolve, reject) => {
422
+ (0, schedule_1.scheduleMacrotask)(() => {
423
+ deliver().then(resolve, reject);
424
+ });
425
+ }));
426
+ }
427
+ function recordResult(result) {
428
+ const trace = (options.trace ?? managedTrace);
429
+ if (!trace)
430
+ return 0;
431
+ return trace.applyGenerationUsage(result);
415
432
  }
416
433
  function recordV6Generation(event, stored) {
417
434
  const resolved = resolveTrace(stored?.event);
@@ -431,29 +448,25 @@ function vercelAI(options = {}) {
431
448
  : undefined;
432
449
  const generation = {
433
450
  name,
434
- input: options.recordInputs === false
435
- ? undefined
436
- : stored?.event && v6Input(stored.event),
437
- output: options.recordOutputs === false || generationError
438
- ? undefined
439
- : output,
451
+ input: stored?.event && v6Input(stored.event),
452
+ output: generationError ? undefined : output,
440
453
  metadata: options.metadata,
454
+ attributes: withIntegrationAttrs(),
441
455
  model: event.model.modelId,
442
456
  startedAt,
443
457
  endedAt,
444
458
  durationMs,
445
459
  llmProvider: event.model.provider,
446
- llmInputMessages: options.recordInputs === false || !stored?.event
447
- ? undefined
448
- : v6NormalizedMessages(stored.event),
449
- llmOutputMessages: options.recordOutputs === false ||
450
- output === undefined ||
451
- generationError
460
+ llmInputMessages: stored?.event
461
+ ? v6NormalizedMessages(stored.event)
462
+ : undefined,
463
+ llmOutputMessages: output === undefined || generationError
452
464
  ? undefined
453
465
  : [{ role: "assistant", content: output }],
454
466
  llmTools: stored?.event.tools,
455
467
  status: generationError ? "ERROR" : undefined,
456
- error: options.recordOutputs === false ? undefined : generationError,
468
+ error: generationError,
469
+ usage: eventUsage(event),
457
470
  };
458
471
  if (stored?.handle) {
459
472
  stored.handle.end(generation);
@@ -490,12 +503,13 @@ function vercelAI(options = {}) {
490
503
  const startedAt = new Date();
491
504
  const handle = trace.startGeneration({
492
505
  name,
493
- input: options.recordInputs === false ? undefined : event.messages,
506
+ input: event.messages,
494
507
  metadata: options.metadata,
508
+ attributes: withIntegrationAttrs(),
495
509
  model: event.modelId,
496
510
  startedAt,
497
511
  llmProvider: event.provider,
498
- llmInputMessages: options.recordInputs === false ? undefined : event.messages,
512
+ llmInputMessages: event.messages,
499
513
  llmTools: event.tools,
500
514
  });
501
515
  const stored = { event, startedAt, handle };
@@ -518,14 +532,13 @@ function vercelAI(options = {}) {
518
532
  const input = v6Input(event);
519
533
  const handle = trace.startGeneration({
520
534
  name,
521
- input: options.recordInputs === false ? undefined : input,
535
+ input,
522
536
  metadata: options.metadata,
537
+ attributes: withIntegrationAttrs(),
523
538
  model: event.model.modelId,
524
539
  startedAt,
525
540
  llmProvider: event.model.provider,
526
- llmInputMessages: options.recordInputs === false
527
- ? undefined
528
- : v6NormalizedMessages(event),
541
+ llmInputMessages: v6NormalizedMessages(event),
529
542
  llmTools: event.tools,
530
543
  });
531
544
  latestV6GenerationId = handle.id;
@@ -548,20 +561,17 @@ function vercelAI(options = {}) {
548
561
  }
549
562
  }
550
563
  stored.handle.end({
551
- output: options.recordOutputs === false || generationError
552
- ? undefined
553
- : output,
564
+ output: generationError ? undefined : output,
554
565
  model: event.model.modelId,
555
566
  durationMs,
556
567
  endedAt: addMs(stored.startedAt, durationMs),
557
568
  llmProvider: event.model.provider,
558
- llmOutputMessages: options.recordOutputs === false ||
559
- output === undefined ||
560
- generationError
569
+ llmOutputMessages: output === undefined || generationError
561
570
  ? undefined
562
571
  : [{ role: "assistant", content: output }],
563
572
  status: generationError ? "ERROR" : undefined,
564
- error: options.recordOutputs === false ? undefined : generationError,
573
+ error: generationError,
574
+ usage: eventUsage(event),
565
575
  });
566
576
  }
567
577
  function resolveToolParentId(callId, toolCallId) {
@@ -601,12 +611,13 @@ function vercelAI(options = {}) {
601
611
  : (options.generationName ?? "vercel-ai-generation");
602
612
  const handle = trace.startGeneration({
603
613
  name,
604
- input: options.recordInputs === false ? undefined : event.messages,
614
+ input: event.messages,
605
615
  metadata: options.metadata,
616
+ attributes: withIntegrationAttrs(),
606
617
  model: event.modelId,
607
618
  startedAt,
608
619
  llmProvider: event.provider,
609
- llmInputMessages: options.recordInputs === false ? undefined : event.messages,
620
+ llmInputMessages: event.messages,
610
621
  llmTools: event.tools,
611
622
  });
612
623
  modelCalls.set(event.callId, { event, startedAt, handle });
@@ -624,14 +635,15 @@ function vercelAI(options = {}) {
624
635
  const durationMs = resolveDurationMs(stored.startedAt, endedAt, event.performance.responseTimeMs);
625
636
  const output = structuredAssistantOutput(undefined, event.content);
626
637
  stored.handle.end({
627
- output: options.recordOutputs === false ? undefined : output,
638
+ output,
628
639
  model: event.modelId,
629
640
  durationMs,
630
641
  endedAt: addMs(stored.startedAt, durationMs),
631
642
  llmProvider: event.provider,
632
- llmOutputMessages: options.recordOutputs === false || output === undefined
643
+ llmOutputMessages: output === undefined
633
644
  ? undefined
634
645
  : [{ role: "assistant", content: output }],
646
+ usage: eventUsage(event),
635
647
  });
636
648
  },
637
649
  onToolExecutionStart(event) {
@@ -651,8 +663,9 @@ function vercelAI(options = {}) {
651
663
  const handle = trace.startTool({
652
664
  name,
653
665
  parentId,
654
- input: options.recordInputs === false ? undefined : event.toolCall.input,
666
+ input: event.toolCall.input,
655
667
  metadata: options.metadata,
668
+ attributes: withIntegrationAttrs(),
656
669
  startedAt,
657
670
  toolName: event.toolCall.toolName,
658
671
  });
@@ -688,7 +701,7 @@ function vercelAI(options = {}) {
688
701
  durationMs,
689
702
  endedAt: addMs(storedTool.startedAt, durationMs),
690
703
  toolName: event.toolCall.toolName,
691
- ...toolOutput(event, options.recordOutputs !== false),
704
+ ...toolOutput(event),
692
705
  });
693
706
  coverParent(storedTool.parentId, addMs(storedTool.startedAt, durationMs));
694
707
  return;
@@ -701,12 +714,13 @@ function vercelAI(options = {}) {
701
714
  name,
702
715
  parentId,
703
716
  toolName: event.toolCall.toolName,
704
- input: options.recordInputs === false ? undefined : event.toolCall.input,
717
+ input: event.toolCall.input,
705
718
  metadata: options.metadata,
719
+ attributes: withIntegrationAttrs(),
706
720
  durationMs,
707
721
  startedAt: subtractMs(endedAt, durationMs),
708
722
  endedAt,
709
- ...toolOutput(event, options.recordOutputs !== false),
723
+ ...toolOutput(event),
710
724
  });
711
725
  coverParent(parentId, endedAt);
712
726
  },
@@ -793,7 +807,7 @@ function vercelAI(options = {}) {
793
807
  durationMs,
794
808
  endedAt: toolEndedAt,
795
809
  toolName: event.toolCall.toolName,
796
- ...v6ToolOutput(event, options.recordOutputs !== false),
810
+ ...v6ToolOutput(event),
797
811
  });
798
812
  coverParent(storedTool.parentId, toolEndedAt);
799
813
  return;
@@ -806,12 +820,13 @@ function vercelAI(options = {}) {
806
820
  name,
807
821
  parentId,
808
822
  toolName: event.toolCall.toolName,
809
- input: options.recordInputs === false ? undefined : event.toolCall.input,
823
+ input: event.toolCall.input,
810
824
  metadata: options.metadata,
825
+ attributes: withIntegrationAttrs(),
811
826
  durationMs,
812
827
  startedAt,
813
828
  endedAt,
814
- ...v6ToolOutput(event, options.recordOutputs !== false),
829
+ ...v6ToolOutput(event),
815
830
  });
816
831
  coverParent(parentId, endedAt);
817
832
  },
@@ -820,7 +835,7 @@ function vercelAI(options = {}) {
820
835
  runError = message;
821
836
  if (phase === "ending") {
822
837
  // Best-effort: apply before the in-flight terminal send reads error state.
823
- endingTrace?.fail(rootErrorPayload(message));
838
+ endingTrace?.fail(message);
824
839
  endingTrace?.output(undefined);
825
840
  return;
826
841
  }
@@ -828,8 +843,14 @@ function vercelAI(options = {}) {
828
843
  beginActivity();
829
844
  }
830
845
  await endOwnedTrace({ error });
846
+ // Failures have no operation result to wait for — deliver now.
847
+ if (deliverOwnedTrace)
848
+ await deliverOwnedTrace();
831
849
  },
850
+ recordResult,
832
851
  async flush() {
852
+ if (deliverOwnedTrace)
853
+ await deliverOwnedTrace();
833
854
  await Promise.all(Array.from(pending));
834
855
  },
835
856
  async shutdown() {
@@ -1 +1 @@
1
- {"version":3,"file":"vercel-ai.js","sourceRoot":"","sources":["../src/vercel-ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vercel-ai.js","sourceRoot":"","sources":["../src/vercel-ai.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ export async function callLangChain(
24
24
  ...(userId ? { user_id: userId } : {}),
25
25
  },
26
26
  });
27
+ await lemmaHandler.flush();
27
28
  return response.content;
28
29
  }
29
30
 
@@ -31,6 +31,7 @@ export async function callLangGraph(
31
31
  metadata: threadId ? { thread_id: threadId } : undefined,
32
32
  },
33
33
  );
34
+ await lemmaHandler.flush();
34
35
 
35
36
  return result.output;
36
37
  }
@@ -3,6 +3,8 @@ import { Mastra } from "@mastra/core";
3
3
  import { Observability } from "@mastra/observability";
4
4
  import { LemmaMastraExporter } from "@uselemma/tracing";
5
5
 
6
+ const lemmaExporter = new LemmaMastraExporter();
7
+
6
8
  export const mastra = new Mastra({
7
9
  agents: {
8
10
  supportAgent: new Agent({
@@ -15,7 +17,7 @@ export const mastra = new Mastra({
15
17
  configs: {
16
18
  default: {
17
19
  serviceName: "support-app",
18
- exporters: [new LemmaMastraExporter()],
20
+ exporters: [lemmaExporter],
19
21
  },
20
22
  },
21
23
  }),
@@ -23,5 +25,6 @@ export const mastra = new Mastra({
23
25
 
24
26
  const agent = mastra.getAgent("supportAgent");
25
27
  const result = await agent.generate("Where is my order?");
28
+ await lemmaExporter.flush();
26
29
 
27
30
  console.log(result.text);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uselemma/tracing",
3
- "version": "7.8.1",
3
+ "version": "7.10.0",
4
4
  "description": "HTTP tracing SDK for Lemma",
5
5
  "license": "MIT",
6
6
  "author": "Lemma",