neatlogs 1.1.23 → 1.1.24

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/cli.cjs CHANGED
@@ -7104,7 +7104,7 @@ var TELEMETRY_CONFLICT_PRECEDENCE = Object.freeze(
7104
7104
  );
7105
7105
 
7106
7106
  // src/version.ts
7107
- var __version__ = "1.1.23";
7107
+ var __version__ = "1.1.24";
7108
7108
 
7109
7109
  // src/init.ts
7110
7110
  var path2 = __toESM(require("path"));
@@ -8509,10 +8509,11 @@ var UnifiedAttributeProcessor = class {
8509
8509
  */
8510
8510
  extractVercelAiSdkAttrs(attrs) {
8511
8511
  const spanName = attrs["_span_name"] ?? "";
8512
- const isAiSdkSpan = spanName.startsWith("ai.") || "ai.model.id" in attrs || "ai.toolCall.name" in attrs;
8512
+ const isToolExecution = spanName === "ai.toolCall" || attrs["gen_ai.operation.name"] === "execute_tool";
8513
+ const isAiSdkSpan = spanName.startsWith("ai.") || "ai.model.id" in attrs || "ai.toolCall.name" in attrs || isToolExecution;
8513
8514
  if (!isAiSdkSpan) return;
8514
8515
  if (!("openinference.span.kind" in attrs)) {
8515
- if (spanName === "ai.toolCall") {
8516
+ if (isToolExecution) {
8516
8517
  attrs["openinference.span.kind"] = "TOOL";
8517
8518
  } else if (spanName.startsWith("ai.embed")) {
8518
8519
  attrs["openinference.span.kind"] = "EMBEDDING";
@@ -8665,9 +8666,10 @@ var UnifiedAttributeProcessor = class {
8665
8666
  return v;
8666
8667
  }));
8667
8668
  }
8668
- if (spanName === "ai.toolCall") {
8669
- if ("ai.toolCall.name" in attrs && !("tool.name" in attrs)) {
8670
- attrs["tool.name"] = attrs["ai.toolCall.name"];
8669
+ if (isToolExecution) {
8670
+ const toolName = attrs["ai.toolCall.name"] ?? attrs["gen_ai.tool.name"];
8671
+ if (toolName !== void 0 && !("tool.name" in attrs)) {
8672
+ attrs["tool.name"] = toolName;
8671
8673
  }
8672
8674
  if ("ai.toolCall.args" in attrs && !("input.value" in attrs)) {
8673
8675
  const raw = attrs["ai.toolCall.args"];
@@ -8677,6 +8679,14 @@ var UnifiedAttributeProcessor = class {
8677
8679
  const raw = attrs["ai.toolCall.result"];
8678
8680
  attrs["output.value"] = typeof raw === "string" ? raw : JSON.stringify(raw);
8679
8681
  }
8682
+ if ("gen_ai.tool.call.arguments" in attrs && !("input.value" in attrs)) {
8683
+ const raw = attrs["gen_ai.tool.call.arguments"];
8684
+ attrs["input.value"] = typeof raw === "string" ? raw : JSON.stringify(raw);
8685
+ }
8686
+ if ("gen_ai.tool.call.result" in attrs && !("output.value" in attrs)) {
8687
+ const raw = attrs["gen_ai.tool.call.result"];
8688
+ attrs["output.value"] = typeof raw === "string" ? raw : JSON.stringify(raw);
8689
+ }
8680
8690
  }
8681
8691
  }
8682
8692
  // ── CrewAI-specific ─────────────────────────────────