@once-agent/sdk 0.1.11 → 0.1.12
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/README.md +76 -1
- package/dist/cli.js +50 -1
- package/dist/cli.js.map +1 -1
- package/dist/connect/identity.d.ts +22 -0
- package/dist/connect/identity.d.ts.map +1 -0
- package/dist/connect/identity.js +159 -0
- package/dist/connect/identity.js.map +1 -0
- package/dist/connect/index.d.ts +17 -0
- package/dist/connect/index.d.ts.map +1 -0
- package/dist/connect/index.js +9 -0
- package/dist/connect/index.js.map +1 -0
- package/dist/connect/local-agent-tool.d.ts +30 -7
- package/dist/connect/local-agent-tool.d.ts.map +1 -1
- package/dist/connect/local-agent-tool.js +81 -9
- package/dist/connect/local-agent-tool.js.map +1 -1
- package/dist/connect/manifest.d.ts +55 -0
- package/dist/connect/manifest.d.ts.map +1 -0
- package/dist/connect/manifest.js +166 -0
- package/dist/connect/manifest.js.map +1 -0
- package/dist/connect/openai-function-tools.d.ts +66 -0
- package/dist/connect/openai-function-tools.d.ts.map +1 -0
- package/dist/connect/openai-function-tools.js +182 -0
- package/dist/connect/openai-function-tools.js.map +1 -0
- package/dist/connect/payload.d.ts +30 -0
- package/dist/connect/payload.d.ts.map +1 -0
- package/dist/connect/payload.js +122 -0
- package/dist/connect/payload.js.map +1 -0
- package/dist/connect/tool-classifier.d.ts +40 -0
- package/dist/connect/tool-classifier.d.ts.map +1 -0
- package/dist/connect/tool-classifier.js +271 -0
- package/dist/connect/tool-classifier.js.map +1 -0
- package/dist/connect/toolset.d.ts +42 -0
- package/dist/connect/toolset.d.ts.map +1 -0
- package/dist/connect/toolset.js +123 -0
- package/dist/connect/toolset.js.map +1 -0
- package/dist/discovery/index.d.ts +13 -0
- package/dist/discovery/index.d.ts.map +1 -0
- package/dist/discovery/index.js +8 -0
- package/dist/discovery/index.js.map +1 -0
- package/dist/execution-observation.d.ts +122 -0
- package/dist/execution-observation.d.ts.map +1 -0
- package/dist/execution-observation.js +324 -0
- package/dist/execution-observation.js.map +1 -0
- package/dist/gateway/index.d.ts +9 -0
- package/dist/gateway/index.d.ts.map +1 -0
- package/dist/gateway/index.js +5 -0
- package/dist/gateway/index.js.map +1 -0
- package/dist/gateway/local-toolset.d.ts +32 -0
- package/dist/gateway/local-toolset.d.ts.map +1 -0
- package/dist/gateway/local-toolset.js +79 -0
- package/dist/gateway/local-toolset.js.map +1 -0
- package/dist/gateway/openai-function-tools.d.ts +28 -0
- package/dist/gateway/openai-function-tools.d.ts.map +1 -0
- package/dist/gateway/openai-function-tools.js +117 -0
- package/dist/gateway/openai-function-tools.js.map +1 -0
- package/dist/gateway/planner.d.ts +53 -0
- package/dist/gateway/planner.d.ts.map +1 -0
- package/dist/gateway/planner.js +155 -0
- package/dist/gateway/planner.js.map +1 -0
- package/dist/gateway/tool-graph-binding.d.ts +51 -0
- package/dist/gateway/tool-graph-binding.d.ts.map +1 -0
- package/dist/gateway/tool-graph-binding.js +123 -0
- package/dist/gateway/tool-graph-binding.js.map +1 -0
- package/dist/langchain-execution-observer.d.ts +22 -0
- package/dist/langchain-execution-observer.d.ts.map +1 -0
- package/dist/langchain-execution-observer.js +128 -0
- package/dist/langchain-execution-observer.js.map +1 -0
- package/dist/langchain-runtime-discovery.d.ts +33 -0
- package/dist/langchain-runtime-discovery.d.ts.map +1 -0
- package/dist/langchain-runtime-discovery.js +214 -0
- package/dist/langchain-runtime-discovery.js.map +1 -0
- package/dist/mcp-live-discovery.d.ts +71 -0
- package/dist/mcp-live-discovery.d.ts.map +1 -0
- package/dist/mcp-live-discovery.js +710 -0
- package/dist/mcp-live-discovery.js.map +1 -0
- package/dist/mcp-live-report.d.ts +3 -0
- package/dist/mcp-live-report.d.ts.map +1 -0
- package/dist/mcp-live-report.js +50 -0
- package/dist/mcp-live-report.js.map +1 -0
- package/dist/mcp-tool-refresh-report.d.ts +3 -0
- package/dist/mcp-tool-refresh-report.d.ts.map +1 -0
- package/dist/mcp-tool-refresh-report.js +44 -0
- package/dist/mcp-tool-refresh-report.js.map +1 -0
- package/dist/mcp-tool-refresh.d.ts +33 -0
- package/dist/mcp-tool-refresh.d.ts.map +1 -0
- package/dist/mcp-tool-refresh.js +489 -0
- package/dist/mcp-tool-refresh.js.map +1 -0
- package/dist/openai-agents-execution-observer.d.ts +24 -0
- package/dist/openai-agents-execution-observer.d.ts.map +1 -0
- package/dist/openai-agents-execution-observer.js +163 -0
- package/dist/openai-agents-execution-observer.js.map +1 -0
- package/dist/otel-execution-observer.d.ts +16 -0
- package/dist/otel-execution-observer.d.ts.map +1 -0
- package/dist/otel-execution-observer.js +129 -0
- package/dist/otel-execution-observer.js.map +1 -0
- package/dist/runtime-tool-discovery.d.ts +86 -0
- package/dist/runtime-tool-discovery.d.ts.map +1 -0
- package/dist/runtime-tool-discovery.js +429 -0
- package/dist/runtime-tool-discovery.js.map +1 -0
- package/dist/tool-discovery.d.ts +51 -0
- package/dist/tool-discovery.d.ts.map +1 -0
- package/dist/tool-discovery.js +487 -0
- package/dist/tool-discovery.js.map +1 -0
- package/dist/tool-importance.d.ts +34 -0
- package/dist/tool-importance.d.ts.map +1 -0
- package/dist/tool-importance.js +269 -0
- package/dist/tool-importance.js.map +1 -0
- package/dist/tool-report.d.ts +3 -0
- package/dist/tool-report.d.ts.map +1 -0
- package/dist/tool-report.js +75 -0
- package/dist/tool-report.js.map +1 -0
- package/dist/vercel-execution-observer.d.ts +12 -0
- package/dist/vercel-execution-observer.d.ts.map +1 -0
- package/dist/vercel-execution-observer.js +97 -0
- package/dist/vercel-execution-observer.js.map +1 -0
- package/dist-cjs/connect/identity.js +162 -0
- package/dist-cjs/connect/identity.js.map +1 -0
- package/dist-cjs/connect/index.js +26 -0
- package/dist-cjs/connect/index.js.map +1 -0
- package/dist-cjs/connect/local-agent-tool.js +82 -9
- package/dist-cjs/connect/local-agent-tool.js.map +1 -1
- package/dist-cjs/connect/manifest.js +171 -0
- package/dist-cjs/connect/manifest.js.map +1 -0
- package/dist-cjs/connect/openai-function-tools.js +187 -0
- package/dist-cjs/connect/openai-function-tools.js.map +1 -0
- package/dist-cjs/connect/payload.js +125 -0
- package/dist-cjs/connect/payload.js.map +1 -0
- package/dist-cjs/connect/tool-classifier.js +276 -0
- package/dist-cjs/connect/tool-classifier.js.map +1 -0
- package/dist-cjs/connect/toolset.js +126 -0
- package/dist-cjs/connect/toolset.js.map +1 -0
- package/dist-cjs/discovery/index.js +26 -0
- package/dist-cjs/discovery/index.js.map +1 -0
- package/dist-cjs/execution-observation.js +330 -0
- package/dist-cjs/execution-observation.js.map +1 -0
- package/dist-cjs/gateway/index.js +16 -0
- package/dist-cjs/gateway/index.js.map +1 -0
- package/dist-cjs/gateway/local-toolset.js +84 -0
- package/dist-cjs/gateway/local-toolset.js.map +1 -0
- package/dist-cjs/gateway/openai-function-tools.js +120 -0
- package/dist-cjs/gateway/openai-function-tools.js.map +1 -0
- package/dist-cjs/gateway/planner.js +160 -0
- package/dist-cjs/gateway/planner.js.map +1 -0
- package/dist-cjs/gateway/tool-graph-binding.js +126 -0
- package/dist-cjs/gateway/tool-graph-binding.js.map +1 -0
- package/dist-cjs/langchain-execution-observer.js +131 -0
- package/dist-cjs/langchain-execution-observer.js.map +1 -0
- package/dist-cjs/langchain-runtime-discovery.js +218 -0
- package/dist-cjs/langchain-runtime-discovery.js.map +1 -0
- package/dist-cjs/openai-agents-execution-observer.js +166 -0
- package/dist-cjs/openai-agents-execution-observer.js.map +1 -0
- package/dist-cjs/otel-execution-observer.js +132 -0
- package/dist-cjs/otel-execution-observer.js.map +1 -0
- package/dist-cjs/runtime-tool-discovery.js +436 -0
- package/dist-cjs/runtime-tool-discovery.js.map +1 -0
- package/dist-cjs/tool-importance.js +272 -0
- package/dist-cjs/tool-importance.js.map +1 -0
- package/dist-cjs/vercel-execution-observer.js +100 -0
- package/dist-cjs/vercel-execution-observer.js.map +1 -0
- package/package.json +25 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"langchain-runtime-discovery.js","sourceRoot":"","sources":["../src/langchain-runtime-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createOpenAIAgentsExecutionObserver = createOpenAIAgentsExecutionObserver;
|
|
4
|
+
const execution_observation_js_1 = require("./execution-observation.js");
|
|
5
|
+
const runtime_tool_discovery_js_1 = require("./runtime-tool-discovery.js");
|
|
6
|
+
function asRecord(value) {
|
|
7
|
+
return value && typeof value === "object" && !Array.isArray(value)
|
|
8
|
+
? value
|
|
9
|
+
: undefined;
|
|
10
|
+
}
|
|
11
|
+
function ownDataValue(value, key) {
|
|
12
|
+
const record = asRecord(value);
|
|
13
|
+
if (!record)
|
|
14
|
+
return undefined;
|
|
15
|
+
const descriptor = Object.getOwnPropertyDescriptor(record, key);
|
|
16
|
+
return descriptor && "value" in descriptor
|
|
17
|
+
? descriptor.value
|
|
18
|
+
: undefined;
|
|
19
|
+
}
|
|
20
|
+
function ownString(value, key) {
|
|
21
|
+
const raw = ownDataValue(value, key);
|
|
22
|
+
return typeof raw === "string" && raw.trim() !== ""
|
|
23
|
+
? raw
|
|
24
|
+
: undefined;
|
|
25
|
+
}
|
|
26
|
+
function agentTools(agent) {
|
|
27
|
+
const tools = ownDataValue(agent, "tools");
|
|
28
|
+
return Array.isArray(tools) ? tools : [];
|
|
29
|
+
}
|
|
30
|
+
function safeAgentSnapshot(agent) {
|
|
31
|
+
const name = ownString(agent, "name");
|
|
32
|
+
const tools = agentTools(agent);
|
|
33
|
+
const mcpServers = ownDataValue(agent, "mcpServers");
|
|
34
|
+
const mcpConfig = ownDataValue(agent, "mcpConfig");
|
|
35
|
+
return (0, runtime_tool_discovery_js_1.discoverOpenAIAgentRuntime)({
|
|
36
|
+
...(name ? { name } : {}),
|
|
37
|
+
tools,
|
|
38
|
+
...(Array.isArray(mcpServers) ? { mcpServers } : {}),
|
|
39
|
+
...(mcpConfig && typeof mcpConfig === "object" ? { mcpConfig } : {}),
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function findToolArgument(args, byObject) {
|
|
43
|
+
for (const arg of args) {
|
|
44
|
+
if (!arg || typeof arg !== "object")
|
|
45
|
+
continue;
|
|
46
|
+
const observation = byObject.get(arg);
|
|
47
|
+
if (observation) {
|
|
48
|
+
return {
|
|
49
|
+
raw: arg,
|
|
50
|
+
observation,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
function callIdFromArgs(args) {
|
|
57
|
+
for (let index = args.length - 1; index >= 0; index--) {
|
|
58
|
+
const details = args[index];
|
|
59
|
+
const toolCall = ownDataValue(details, "toolCall");
|
|
60
|
+
const callId = ownString(toolCall, "callId");
|
|
61
|
+
if (callId)
|
|
62
|
+
return callId;
|
|
63
|
+
}
|
|
64
|
+
return undefined;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Build dependency-free OpenAI Agents lifecycle handlers for execution evidence.
|
|
68
|
+
*
|
|
69
|
+
* The returned callbacks are meant to be registered with either an Agent or a
|
|
70
|
+
* Runner `agent_tool_start` / `agent_tool_end` hook. This helper never registers
|
|
71
|
+
* itself, never invokes a tool, and never reads tool arguments/results/context.
|
|
72
|
+
*
|
|
73
|
+
* `agent_tool_end` is proof that the tool lifecycle reached the end hook, so it
|
|
74
|
+
* can establish EXECUTED evidence. The v1 adapter records outcome as UNKNOWN:
|
|
75
|
+
* framework end hooks alone are not treated as authoritative proof that an
|
|
76
|
+
* external side effect succeeded.
|
|
77
|
+
*/
|
|
78
|
+
function createOpenAIAgentsExecutionObserver(agent) {
|
|
79
|
+
const rawTools = agentTools(agent);
|
|
80
|
+
const snapshot = safeAgentSnapshot(agent);
|
|
81
|
+
const byObject = new WeakMap();
|
|
82
|
+
for (const observation of snapshot.tools) {
|
|
83
|
+
const index = observation.origin.index;
|
|
84
|
+
const raw = rawTools[index];
|
|
85
|
+
if (raw && typeof raw === "object") {
|
|
86
|
+
byObject.set(raw, observation);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
const pendingByCallId = new Map();
|
|
90
|
+
const pendingWithoutCallId = new WeakMap();
|
|
91
|
+
const collected = [];
|
|
92
|
+
let pendingWithoutIdCount = 0;
|
|
93
|
+
const onToolStart = (...args) => {
|
|
94
|
+
const match = findToolArgument(args, byObject);
|
|
95
|
+
if (!match)
|
|
96
|
+
return;
|
|
97
|
+
const callId = callIdFromArgs(args);
|
|
98
|
+
const pending = {
|
|
99
|
+
tool: match.observation,
|
|
100
|
+
startedAtMs: Date.now(),
|
|
101
|
+
...(callId ? { callId } : {}),
|
|
102
|
+
};
|
|
103
|
+
if (callId) {
|
|
104
|
+
pendingByCallId.set(callId, pending);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
const queue = pendingWithoutCallId.get(match.raw) ?? [];
|
|
108
|
+
queue.push(pending);
|
|
109
|
+
pendingWithoutCallId.set(match.raw, queue);
|
|
110
|
+
pendingWithoutIdCount += 1;
|
|
111
|
+
};
|
|
112
|
+
const onToolEnd = (...args) => {
|
|
113
|
+
const match = findToolArgument(args, byObject);
|
|
114
|
+
if (!match)
|
|
115
|
+
return;
|
|
116
|
+
const callId = callIdFromArgs(args);
|
|
117
|
+
let pending;
|
|
118
|
+
if (callId) {
|
|
119
|
+
pending = pendingByCallId.get(callId);
|
|
120
|
+
pendingByCallId.delete(callId);
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
const queue = pendingWithoutCallId.get(match.raw);
|
|
124
|
+
pending = queue?.shift();
|
|
125
|
+
if (pending)
|
|
126
|
+
pendingWithoutIdCount -= 1;
|
|
127
|
+
if (queue && queue.length === 0) {
|
|
128
|
+
pendingWithoutCallId.delete(match.raw);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
const tool = pending?.tool ?? match.observation;
|
|
132
|
+
const now = Date.now();
|
|
133
|
+
const durationMs = pending
|
|
134
|
+
? Math.max(0, now - pending.startedAtMs)
|
|
135
|
+
: undefined;
|
|
136
|
+
const result = (0, execution_observation_js_1.observeToolExecution)({
|
|
137
|
+
...(callId ? { eventId: `openai-tool-call:${callId}` } : {}),
|
|
138
|
+
toolId: tool.toolId,
|
|
139
|
+
namespacedName: tool.namespacedName,
|
|
140
|
+
descriptorFingerprint: (0, execution_observation_js_1.executionToolFingerprint)(tool),
|
|
141
|
+
canonicalName: tool.canonicalName,
|
|
142
|
+
framework: tool.framework,
|
|
143
|
+
runtimeName: tool.origin.agentName,
|
|
144
|
+
source: "framework_callback",
|
|
145
|
+
status: "UNKNOWN",
|
|
146
|
+
observedAt: new Date(now).toISOString(),
|
|
147
|
+
...(durationMs !== undefined ? { durationMs } : {}),
|
|
148
|
+
});
|
|
149
|
+
if (result.accepted) {
|
|
150
|
+
collected.push(result.event);
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
return Object.freeze({
|
|
154
|
+
snapshot,
|
|
155
|
+
onToolStart,
|
|
156
|
+
onToolEnd,
|
|
157
|
+
events: () => Object.freeze([...collected]),
|
|
158
|
+
drain: () => {
|
|
159
|
+
const drained = Object.freeze([...collected]);
|
|
160
|
+
collected.length = 0;
|
|
161
|
+
return drained;
|
|
162
|
+
},
|
|
163
|
+
pendingCount: () => pendingByCallId.size + pendingWithoutIdCount,
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=openai-agents-execution-observer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai-agents-execution-observer.js","sourceRoot":"","sources":["../src/openai-agents-execution-observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.observeOtelGenAiToolExecutions = observeOtelGenAiToolExecutions;
|
|
4
|
+
const execution_observation_js_1 = require("./execution-observation.js");
|
|
5
|
+
function asRecord(value) {
|
|
6
|
+
return value && typeof value === "object" && !Array.isArray(value)
|
|
7
|
+
? value
|
|
8
|
+
: undefined;
|
|
9
|
+
}
|
|
10
|
+
function ownDataValue(value, key) {
|
|
11
|
+
const record = asRecord(value);
|
|
12
|
+
if (!record)
|
|
13
|
+
return undefined;
|
|
14
|
+
const descriptor = Object.getOwnPropertyDescriptor(record, key);
|
|
15
|
+
return descriptor && "value" in descriptor
|
|
16
|
+
? descriptor.value
|
|
17
|
+
: undefined;
|
|
18
|
+
}
|
|
19
|
+
function ownString(value, key) {
|
|
20
|
+
const raw = ownDataValue(value, key);
|
|
21
|
+
return typeof raw === "string" && raw.trim() !== ""
|
|
22
|
+
? raw
|
|
23
|
+
: undefined;
|
|
24
|
+
}
|
|
25
|
+
function attributesOf(span) {
|
|
26
|
+
const raw = ownDataValue(span, "attributes");
|
|
27
|
+
return asRecord(raw);
|
|
28
|
+
}
|
|
29
|
+
function attrString(attributes, key) {
|
|
30
|
+
if (!attributes)
|
|
31
|
+
return undefined;
|
|
32
|
+
const descriptor = Object.getOwnPropertyDescriptor(attributes, key);
|
|
33
|
+
if (!descriptor || !("value" in descriptor))
|
|
34
|
+
return undefined;
|
|
35
|
+
return typeof descriptor.value === "string" && descriptor.value.trim() !== ""
|
|
36
|
+
? descriptor.value
|
|
37
|
+
: undefined;
|
|
38
|
+
}
|
|
39
|
+
function toolIndex(tools) {
|
|
40
|
+
const map = new Map();
|
|
41
|
+
for (const tool of tools) {
|
|
42
|
+
const current = map.get(tool.canonicalName);
|
|
43
|
+
if (current === undefined) {
|
|
44
|
+
map.set(tool.canonicalName, tool);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
// Generic OTel spans commonly identify the tool by name only. If the
|
|
48
|
+
// caller supplies multiple same-named candidates, fail closed rather
|
|
49
|
+
// than choosing one by order.
|
|
50
|
+
map.set(tool.canonicalName, null);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return map;
|
|
54
|
+
}
|
|
55
|
+
function spanStatus(span, attributes) {
|
|
56
|
+
// Only presence matters; the value itself is intentionally not retained.
|
|
57
|
+
if (attrString(attributes, "error.type"))
|
|
58
|
+
return "FAILED";
|
|
59
|
+
const status = ownDataValue(span, "status");
|
|
60
|
+
const statusRecord = asRecord(status);
|
|
61
|
+
const rawCode = statusRecord
|
|
62
|
+
? ownDataValue(statusRecord, "code")
|
|
63
|
+
: status;
|
|
64
|
+
if (rawCode === 2 || rawCode === "ERROR")
|
|
65
|
+
return "FAILED";
|
|
66
|
+
if (rawCode === 1 || rawCode === "OK")
|
|
67
|
+
return "SUCCEEDED";
|
|
68
|
+
return "UNKNOWN";
|
|
69
|
+
}
|
|
70
|
+
function spanEventId(span, attributes) {
|
|
71
|
+
const traceId = ownString(span, "traceId");
|
|
72
|
+
const spanId = ownString(span, "spanId");
|
|
73
|
+
if (traceId && spanId) {
|
|
74
|
+
return `otel-span:${traceId}:${spanId}`;
|
|
75
|
+
}
|
|
76
|
+
const callId = attrString(attributes, "gen_ai.tool.call.id");
|
|
77
|
+
return callId ? `otel-tool-call:${callId}` : undefined;
|
|
78
|
+
}
|
|
79
|
+
function durationMs(span) {
|
|
80
|
+
const raw = ownDataValue(span, "durationMs");
|
|
81
|
+
return typeof raw === "number" && Number.isFinite(raw) && raw >= 0
|
|
82
|
+
? raw
|
|
83
|
+
: undefined;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Ingest already-materialized OpenTelemetry GenAI tool-execution spans.
|
|
87
|
+
*
|
|
88
|
+
* Only spans with `gen_ai.operation.name=execute_tool` are considered. The
|
|
89
|
+
* implementation deliberately reads a tiny allowlist of low-risk attributes
|
|
90
|
+
* and never reads `gen_ai.tool.call.arguments`, `gen_ai.tool.call.result`,
|
|
91
|
+
* exception messages/stacks, prompts, provider/model metadata, results or
|
|
92
|
+
* other content-bearing fields.
|
|
93
|
+
*
|
|
94
|
+
* Generic OTel tool spans commonly identify tools by name. Therefore a name
|
|
95
|
+
* must resolve to exactly one caller-supplied Tool Graph observation; duplicate
|
|
96
|
+
* names fail closed instead of being correlated by array order.
|
|
97
|
+
*/
|
|
98
|
+
function observeOtelGenAiToolExecutions(spans, tools) {
|
|
99
|
+
const byName = toolIndex(tools);
|
|
100
|
+
const events = [];
|
|
101
|
+
for (const span of spans) {
|
|
102
|
+
const attributes = attributesOf(span);
|
|
103
|
+
if (attrString(attributes, "gen_ai.operation.name") !== "execute_tool") {
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
const toolName = attrString(attributes, "gen_ai.tool.name");
|
|
107
|
+
if (!toolName)
|
|
108
|
+
continue;
|
|
109
|
+
const tool = byName.get(toolName);
|
|
110
|
+
if (!tool)
|
|
111
|
+
continue;
|
|
112
|
+
const eventId = spanEventId(span, attributes);
|
|
113
|
+
const duration = durationMs(span);
|
|
114
|
+
const observedAt = ownString(span, "endTime") ?? new Date().toISOString();
|
|
115
|
+
const observed = (0, execution_observation_js_1.observeToolExecution)({
|
|
116
|
+
...(eventId ? { eventId } : {}),
|
|
117
|
+
toolId: tool.toolId,
|
|
118
|
+
namespacedName: tool.namespacedName,
|
|
119
|
+
descriptorFingerprint: (0, execution_observation_js_1.executionToolFingerprint)(tool),
|
|
120
|
+
canonicalName: tool.canonicalName,
|
|
121
|
+
source: "otel",
|
|
122
|
+
status: spanStatus(span, attributes),
|
|
123
|
+
observedAt,
|
|
124
|
+
...(duration !== undefined ? { durationMs: duration } : {}),
|
|
125
|
+
});
|
|
126
|
+
if (observed.accepted) {
|
|
127
|
+
events.push(observed.event);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return Object.freeze(events);
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=otel-execution-observer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otel-execution-observer.js","sourceRoot":"","sources":["../src/otel-execution-observer.ts"],"names":[],"mappings":"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"}
|