@microsoft/agents-a365-observability 0.1.0-preview.111 → 0.1.0-preview.112

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 (65) hide show
  1. package/dist/cjs/index.d.ts +1 -0
  2. package/dist/cjs/index.d.ts.map +1 -1
  3. package/dist/cjs/index.js +6 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/tracing/context/parent-span-context.d.ts +11 -2
  6. package/dist/cjs/tracing/context/parent-span-context.d.ts.map +1 -1
  7. package/dist/cjs/tracing/context/parent-span-context.js +2 -0
  8. package/dist/cjs/tracing/context/parent-span-context.js.map +1 -1
  9. package/dist/cjs/tracing/context/trace-context-propagation.d.ts +68 -0
  10. package/dist/cjs/tracing/context/trace-context-propagation.d.ts.map +1 -0
  11. package/dist/cjs/tracing/context/trace-context-propagation.js +85 -0
  12. package/dist/cjs/tracing/context/trace-context-propagation.js.map +1 -0
  13. package/dist/cjs/tracing/scopes/ExecuteToolScope.d.ts +4 -3
  14. package/dist/cjs/tracing/scopes/ExecuteToolScope.d.ts.map +1 -1
  15. package/dist/cjs/tracing/scopes/ExecuteToolScope.js +6 -5
  16. package/dist/cjs/tracing/scopes/ExecuteToolScope.js.map +1 -1
  17. package/dist/cjs/tracing/scopes/InferenceScope.d.ts +4 -3
  18. package/dist/cjs/tracing/scopes/InferenceScope.d.ts.map +1 -1
  19. package/dist/cjs/tracing/scopes/InferenceScope.js +6 -5
  20. package/dist/cjs/tracing/scopes/InferenceScope.js.map +1 -1
  21. package/dist/cjs/tracing/scopes/InvokeAgentScope.d.ts +4 -3
  22. package/dist/cjs/tracing/scopes/InvokeAgentScope.d.ts.map +1 -1
  23. package/dist/cjs/tracing/scopes/InvokeAgentScope.js +6 -5
  24. package/dist/cjs/tracing/scopes/InvokeAgentScope.js.map +1 -1
  25. package/dist/cjs/tracing/scopes/OpenTelemetryScope.d.ts +5 -3
  26. package/dist/cjs/tracing/scopes/OpenTelemetryScope.d.ts.map +1 -1
  27. package/dist/cjs/tracing/scopes/OpenTelemetryScope.js +15 -5
  28. package/dist/cjs/tracing/scopes/OpenTelemetryScope.js.map +1 -1
  29. package/dist/cjs/tracing/scopes/OutputScope.d.ts +4 -3
  30. package/dist/cjs/tracing/scopes/OutputScope.d.ts.map +1 -1
  31. package/dist/cjs/tracing/scopes/OutputScope.js +6 -5
  32. package/dist/cjs/tracing/scopes/OutputScope.js.map +1 -1
  33. package/dist/esm/index.d.ts +1 -0
  34. package/dist/esm/index.d.ts.map +1 -1
  35. package/dist/esm/index.js +2 -0
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/tracing/context/parent-span-context.d.ts +11 -2
  38. package/dist/esm/tracing/context/parent-span-context.d.ts.map +1 -1
  39. package/dist/esm/tracing/context/parent-span-context.js +2 -0
  40. package/dist/esm/tracing/context/parent-span-context.js.map +1 -1
  41. package/dist/esm/tracing/context/trace-context-propagation.d.ts +68 -0
  42. package/dist/esm/tracing/context/trace-context-propagation.d.ts.map +1 -0
  43. package/dist/esm/tracing/context/trace-context-propagation.js +79 -0
  44. package/dist/esm/tracing/context/trace-context-propagation.js.map +1 -0
  45. package/dist/esm/tracing/scopes/ExecuteToolScope.d.ts +4 -3
  46. package/dist/esm/tracing/scopes/ExecuteToolScope.d.ts.map +1 -1
  47. package/dist/esm/tracing/scopes/ExecuteToolScope.js +6 -5
  48. package/dist/esm/tracing/scopes/ExecuteToolScope.js.map +1 -1
  49. package/dist/esm/tracing/scopes/InferenceScope.d.ts +4 -3
  50. package/dist/esm/tracing/scopes/InferenceScope.d.ts.map +1 -1
  51. package/dist/esm/tracing/scopes/InferenceScope.js +6 -5
  52. package/dist/esm/tracing/scopes/InferenceScope.js.map +1 -1
  53. package/dist/esm/tracing/scopes/InvokeAgentScope.d.ts +4 -3
  54. package/dist/esm/tracing/scopes/InvokeAgentScope.d.ts.map +1 -1
  55. package/dist/esm/tracing/scopes/InvokeAgentScope.js +6 -5
  56. package/dist/esm/tracing/scopes/InvokeAgentScope.js.map +1 -1
  57. package/dist/esm/tracing/scopes/OpenTelemetryScope.d.ts +5 -3
  58. package/dist/esm/tracing/scopes/OpenTelemetryScope.d.ts.map +1 -1
  59. package/dist/esm/tracing/scopes/OpenTelemetryScope.js +15 -5
  60. package/dist/esm/tracing/scopes/OpenTelemetryScope.js.map +1 -1
  61. package/dist/esm/tracing/scopes/OutputScope.d.ts +4 -3
  62. package/dist/esm/tracing/scopes/OutputScope.d.ts.map +1 -1
  63. package/dist/esm/tracing/scopes/OutputScope.js +6 -5
  64. package/dist/esm/tracing/scopes/OutputScope.js.map +1 -1
  65. package/package.json +2 -2
@@ -6,6 +6,7 @@ export { ExporterEventNames } from './tracing/exporter/ExporterEventNames';
6
6
  export { BaggageBuilder, BaggageScope } from './tracing/middleware/BaggageBuilder';
7
7
  export { runWithExportToken, updateExportToken, getExportToken } from './tracing/context/token-context';
8
8
  export { ParentSpanRef, runWithParentSpanRef, createContextWithParentSpanRef } from './tracing/context/parent-span-context';
9
+ export { HeadersCarrier, ParentContext, injectTraceContext, extractTraceContext, runWithExtractedTraceContext } from './tracing/context/trace-context-propagation';
9
10
  export { ExecutionType, InvocationRole, SourceMetadata, AgentRequest, AgentDetails, TenantDetails, ToolCallDetails, InvokeAgentDetails, CallerDetails, EnhancedAgentDetails, ServiceEndpoint, InferenceDetails, InferenceOperationType, InferenceResponse, OutputResponse } from './tracing/contracts';
10
11
  export { OpenTelemetryScope } from './tracing/scopes/OpenTelemetryScope';
11
12
  export { ExecuteToolScope } from './tracing/scopes/ExecuteToolScope';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,IAAI,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGxG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAG5H,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzF,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG/C,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,IAAI,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGxG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAG5H,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzF,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG/C,cAAc,iBAAiB,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -17,7 +17,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
17
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.formatError = exports.resetLogger = exports.getLogger = exports.setLogger = exports.logger = exports.OutputScope = exports.InferenceScope = exports.InvokeAgentScope = exports.ExecuteToolScope = exports.OpenTelemetryScope = exports.InferenceOperationType = exports.InvocationRole = exports.ExecutionType = exports.createContextWithParentSpanRef = exports.runWithParentSpanRef = exports.getExportToken = exports.updateExportToken = exports.runWithExportToken = exports.BaggageScope = exports.BaggageBuilder = exports.ExporterEventNames = exports.OpenTelemetryConstants = exports.Agent365ExporterOptions = exports.Builder = exports.ObservabilityManager = void 0;
20
+ exports.formatError = exports.resetLogger = exports.getLogger = exports.setLogger = exports.logger = exports.OutputScope = exports.InferenceScope = exports.InvokeAgentScope = exports.ExecuteToolScope = exports.OpenTelemetryScope = exports.InferenceOperationType = exports.InvocationRole = exports.ExecutionType = exports.runWithExtractedTraceContext = exports.extractTraceContext = exports.injectTraceContext = exports.createContextWithParentSpanRef = exports.runWithParentSpanRef = exports.getExportToken = exports.updateExportToken = exports.runWithExportToken = exports.BaggageScope = exports.BaggageBuilder = exports.ExporterEventNames = exports.OpenTelemetryConstants = exports.Agent365ExporterOptions = exports.Builder = exports.ObservabilityManager = void 0;
21
21
  // Main SDK classes
22
22
  var ObservabilityManager_1 = require("./ObservabilityManager");
23
23
  Object.defineProperty(exports, "ObservabilityManager", { enumerable: true, get: function () { return ObservabilityManager_1.ObservabilityManager; } });
@@ -43,6 +43,11 @@ Object.defineProperty(exports, "getExportToken", { enumerable: true, get: functi
43
43
  var parent_span_context_1 = require("./tracing/context/parent-span-context");
44
44
  Object.defineProperty(exports, "runWithParentSpanRef", { enumerable: true, get: function () { return parent_span_context_1.runWithParentSpanRef; } });
45
45
  Object.defineProperty(exports, "createContextWithParentSpanRef", { enumerable: true, get: function () { return parent_span_context_1.createContextWithParentSpanRef; } });
46
+ // Trace context propagation utilities (W3C traceparent/tracestate)
47
+ var trace_context_propagation_1 = require("./tracing/context/trace-context-propagation");
48
+ Object.defineProperty(exports, "injectTraceContext", { enumerable: true, get: function () { return trace_context_propagation_1.injectTraceContext; } });
49
+ Object.defineProperty(exports, "extractTraceContext", { enumerable: true, get: function () { return trace_context_propagation_1.extractTraceContext; } });
50
+ Object.defineProperty(exports, "runWithExtractedTraceContext", { enumerable: true, get: function () { return trace_context_propagation_1.runWithExtractedTraceContext; } });
46
51
  // Contracts and interfaces
47
52
  var contracts_1 = require("./tracing/contracts");
48
53
  Object.defineProperty(exports, "ExecutionType", { enumerable: true, get: function () { return contracts_1.ExecutionType; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,4DAA4D;AAC5D,iFAAiF;;;;;;;;;;;;;;;;;AAEjF,mBAAmB;AACnB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,+DAAyF;AAAhF,+GAAA,oBAAoB,OAAW;AACxC,sFAAqF;AAA5E,kIAAA,uBAAuB,OAAA;AAChC,oBAAoB;AACpB,iDAA6D;AAApD,mHAAA,sBAAsB,OAAA;AAC/B,4EAA2E;AAAlE,wHAAA,kBAAkB,OAAA;AAE3B,kBAAkB;AAClB,sEAAmF;AAA1E,gHAAA,cAAc,OAAA;AAAE,8GAAA,YAAY,OAAA;AAErC,+BAA+B;AAC/B,iEAAwG;AAA/F,mHAAA,kBAAkB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAAE,+GAAA,cAAc,OAAA;AAE9D,gCAAgC;AAChC,6EAA4H;AAApG,2HAAA,oBAAoB,OAAA;AAAE,qIAAA,8BAA8B,OAAA;AAE5E,2BAA2B;AAC3B,iDAgB6B;AAf3B,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AAWd,mHAAA,sBAAsB,OAAA;AAKxB,SAAS;AACT,0EAAyE;AAAhE,wHAAA,kBAAkB,OAAA;AAC3B,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,kEAAiE;AAAxD,gHAAA,cAAc,OAAA;AACvB,4DAA2D;AAAlD,0GAAA,WAAW,OAAA;AACpB,2CAAyF;AAAhF,iGAAA,MAAM,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,sGAAA,WAAW,OAAA;AAG/D,gBAAgB;AAChB,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,4DAA4D;AAC5D,iFAAiF;;;;;;;;;;;;;;;;;AAEjF,mBAAmB;AACnB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,+DAAyF;AAAhF,+GAAA,oBAAoB,OAAW;AACxC,sFAAqF;AAA5E,kIAAA,uBAAuB,OAAA;AAChC,oBAAoB;AACpB,iDAA6D;AAApD,mHAAA,sBAAsB,OAAA;AAC/B,4EAA2E;AAAlE,wHAAA,kBAAkB,OAAA;AAE3B,kBAAkB;AAClB,sEAAmF;AAA1E,gHAAA,cAAc,OAAA;AAAE,8GAAA,YAAY,OAAA;AAErC,+BAA+B;AAC/B,iEAAwG;AAA/F,mHAAA,kBAAkB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAAE,+GAAA,cAAc,OAAA;AAE9D,gCAAgC;AAChC,6EAA4H;AAApG,2HAAA,oBAAoB,OAAA;AAAE,qIAAA,8BAA8B,OAAA;AAE5E,mEAAmE;AACnE,yFAMqD;AAHnD,+HAAA,kBAAkB,OAAA;AAClB,gIAAA,mBAAmB,OAAA;AACnB,yIAAA,4BAA4B,OAAA;AAG9B,2BAA2B;AAC3B,iDAgB6B;AAf3B,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AAWd,mHAAA,sBAAsB,OAAA;AAKxB,SAAS;AACT,0EAAyE;AAAhE,wHAAA,kBAAkB,OAAA;AAC3B,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,kEAAiE;AAAxD,gHAAA,cAAc,OAAA;AACvB,4DAA2D;AAAlD,0GAAA,WAAW,OAAA;AACpB,2CAAyF;AAAhF,iGAAA,MAAM,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,sGAAA,WAAW,OAAA;AAG/D,gBAAgB;AAChB,kDAAgC"}
@@ -1,4 +1,4 @@
1
- import { Context, TraceFlags } from '@opentelemetry/api';
1
+ import { Context, TraceFlags, TraceState } from '@opentelemetry/api';
2
2
  /**
3
3
  * Reference to a parent span for explicit parent-child linking across async boundaries.
4
4
  * Used when automatic context propagation fails (e.g., WebSocket callbacks, external event handlers).
@@ -12,9 +12,18 @@ export interface ParentSpanRef {
12
12
  * Span ID (16-character hex string)
13
13
  */
14
14
  spanId: string;
15
- /** * Optional trace flags
15
+ /**
16
+ * Optional trace flags
16
17
  */
17
18
  traceFlags?: TraceFlags;
19
+ /**
20
+ * Optional W3C trace state for vendor-specific trace context data
21
+ */
22
+ traceState?: TraceState;
23
+ /**
24
+ * Whether the span originated from a remote service (default: true)
25
+ */
26
+ isRemote?: boolean;
18
27
  }
19
28
  /**
20
29
  * Creates a new Context with an explicit parent span reference.
@@ -1 +1 @@
1
- {"version":3,"file":"parent-span-context.d.ts","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,OAAO,EAAe,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGtF;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;OACG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB;AAUD;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAkC5F;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAKnF"}
1
+ {"version":3,"file":"parent-span-context.d.ts","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,OAAO,EAAe,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGlG;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAUD;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAoC5F;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAKnF"}
@@ -42,6 +42,8 @@ function createContextWithParentSpanRef(base, parent) {
42
42
  traceId: parent.traceId,
43
43
  spanId: parent.spanId,
44
44
  traceFlags,
45
+ traceState: parent.traceState,
46
+ isRemote: parent.isRemote ?? true,
45
47
  };
46
48
  // Create a non-recording span with the parent context
47
49
  const parentSpan = api_1.trace.wrapSpanContext(parentSpanContext);
@@ -1 +1 @@
1
- {"version":3,"file":"parent-span-context.js","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;AAyClC,wEAkCC;AAUD,oDAKC;AAxFD,4CAAsF;AACtF,kEAAyC;AAsBzC,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,kCAAkC,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,kBAAkB,CAAC;AACzE,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAAC,IAAa,EAAE,MAAqB;IACjF,iBAAM,CAAC,IAAI,CAAC,kEAAkE,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAEzH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,iBAAM,CAAC,IAAI,CACT,sFAAsF,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CAChI,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB;IACxB,kDAAkD;IAClD,qDAAqD;IACrD,gFAAgF;IAChF,MAAM,SAAS,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;IACrD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU;WACd,CAAC,SAAS,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;WAC1E,gBAAU,CAAC,OAAO,CAAC;IAExB,iDAAiD;IACjD,MAAM,iBAAiB,GAAgB;QACrC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU;KACX,CAAC;IAEF,sDAAsD;IACtD,MAAM,UAAU,GAAG,WAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAE5D,oCAAoC;IACpC,MAAM,iBAAiB,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE1D,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAI,MAAqB,EAAE,QAAiB;IAC9E,MAAM,IAAI,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC;IAC9B,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvE,iBAAM,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC9E,OAAO,aAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"parent-span-context.js","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;AAoDlC,wEAoCC;AAUD,oDAKC;AArGD,4CAAkG;AAClG,kEAAyC;AAiCzC,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,kCAAkC,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,kBAAkB,CAAC;AACzE,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAAC,IAAa,EAAE,MAAqB;IACjF,iBAAM,CAAC,IAAI,CAAC,kEAAkE,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAEzH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,iBAAM,CAAC,IAAI,CACT,sFAAsF,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CAChI,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB;IACxB,kDAAkD;IAClD,qDAAqD;IACrD,gFAAgF;IAChF,MAAM,SAAS,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;IACrD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU;WACd,CAAC,SAAS,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;WAC1E,gBAAU,CAAC,OAAO,CAAC;IAExB,iDAAiD;IACjD,MAAM,iBAAiB,GAAgB;QACrC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU;QACV,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;KAClC,CAAC;IAEF,sDAAsD;IACtD,MAAM,UAAU,GAAG,WAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAE5D,oCAAoC;IACpC,MAAM,iBAAiB,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE1D,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAI,MAAqB,EAAE,QAAiB;IAC9E,MAAM,IAAI,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC;IAC9B,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvE,iBAAM,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC9E,OAAO,aAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { Context } from '@opentelemetry/api';
2
+ import { ParentSpanRef } from './parent-span-context';
3
+ /**
4
+ * Carrier type for HTTP headers used in trace context propagation.
5
+ * Compatible with Node.js IncomingHttpHeaders and plain string maps.
6
+ */
7
+ export type HeadersCarrier = Record<string, string | string[] | undefined>;
8
+ /**
9
+ * A parent context for span creation. Accepts either:
10
+ * - {@link ParentSpanRef}: explicit traceId/spanId pair (manual approach)
11
+ * - {@link Context}: an OTel Context, typically from {@link extractTraceContext} or `propagation.extract()`
12
+ */
13
+ export type ParentContext = ParentSpanRef | Context;
14
+ /**
15
+ * Type guard to distinguish a {@link ParentSpanRef} from an OTel {@link Context}.
16
+ */
17
+ export declare function isParentSpanRef(value: ParentContext): value is ParentSpanRef;
18
+ /**
19
+ * Injects the current trace context (`traceparent`/`tracestate` headers) into
20
+ * the provided headers object using the globally registered W3C propagator.
21
+ *
22
+ * @param headers Mutable object where trace context headers will be written.
23
+ * @param ctx Optional OTel Context to inject from. Defaults to the active context.
24
+ * @returns The same `headers` object, for chaining convenience.
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * const headers: Record<string, string> = {};
29
+ * injectTraceContext(headers);
30
+ * await fetch('http://service-b/process', { headers });
31
+ * ```
32
+ */
33
+ export declare function injectTraceContext(headers: Record<string, string>, ctx?: Context): Record<string, string>;
34
+ /**
35
+ * Extracts trace context from incoming HTTP headers using the globally
36
+ * registered W3C propagator. Returns an OTel {@link Context} that can be
37
+ * passed to scope classes as a {@link ParentContext}.
38
+ *
39
+ * @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
40
+ * @param baseCtx Optional base context to extend. Defaults to the active context.
41
+ * @returns An OTel Context containing the extracted trace information.
42
+ *
43
+ * @example
44
+ * ```typescript
45
+ * const parentCtx = extractTraceContext(req.headers);
46
+ * const scope = InvokeAgentScope.start(details, tenantDetails, undefined, undefined, parentCtx);
47
+ * ```
48
+ */
49
+ export declare function extractTraceContext(headers: HeadersCarrier, baseCtx?: Context): Context;
50
+ /**
51
+ * Extracts trace context from incoming HTTP headers and runs the callback
52
+ * within that context. Any spans created inside the callback will be
53
+ * parented to the extracted trace.
54
+ *
55
+ * @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
56
+ * @param callback The function to execute within the extracted context.
57
+ * @returns The result of the callback.
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * runWithExtractedTraceContext(req.headers, () => {
62
+ * const scope = InvokeAgentScope.start(details, tenantDetails);
63
+ * scope.dispose();
64
+ * });
65
+ * ```
66
+ */
67
+ export declare function runWithExtractedTraceContext<T>(headers: HeadersCarrier, callback: () => T): T;
68
+ //# sourceMappingURL=trace-context-propagation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace-context-propagation.d.ts","sourceRoot":"","sources":["../../../../src/tracing/context/trace-context-propagation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;AAE3E;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,OAAO,CAAC;AAEpD;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,KAAK,IAAI,aAAa,CAmB5E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,GAAG,CAAC,EAAE,OAAO,GACZ,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAET;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,4BAA4B,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAE7F"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.isParentSpanRef = isParentSpanRef;
6
+ exports.injectTraceContext = injectTraceContext;
7
+ exports.extractTraceContext = extractTraceContext;
8
+ exports.runWithExtractedTraceContext = runWithExtractedTraceContext;
9
+ const api_1 = require("@opentelemetry/api");
10
+ /**
11
+ * Type guard to distinguish a {@link ParentSpanRef} from an OTel {@link Context}.
12
+ */
13
+ function isParentSpanRef(value) {
14
+ if (typeof value !== 'object' || value === null)
15
+ return false;
16
+ const maybeCtx = value;
17
+ if (typeof maybeCtx.getValue === 'function' &&
18
+ typeof maybeCtx.setValue === 'function' &&
19
+ typeof maybeCtx.deleteValue === 'function') {
20
+ return false;
21
+ }
22
+ const maybeRef = value;
23
+ return ('traceId' in maybeRef &&
24
+ typeof maybeRef.traceId === 'string' &&
25
+ 'spanId' in maybeRef &&
26
+ typeof maybeRef.spanId === 'string');
27
+ }
28
+ /**
29
+ * Injects the current trace context (`traceparent`/`tracestate` headers) into
30
+ * the provided headers object using the globally registered W3C propagator.
31
+ *
32
+ * @param headers Mutable object where trace context headers will be written.
33
+ * @param ctx Optional OTel Context to inject from. Defaults to the active context.
34
+ * @returns The same `headers` object, for chaining convenience.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const headers: Record<string, string> = {};
39
+ * injectTraceContext(headers);
40
+ * await fetch('http://service-b/process', { headers });
41
+ * ```
42
+ */
43
+ function injectTraceContext(headers, ctx) {
44
+ api_1.propagation.inject(ctx ?? api_1.context.active(), headers);
45
+ return headers;
46
+ }
47
+ /**
48
+ * Extracts trace context from incoming HTTP headers using the globally
49
+ * registered W3C propagator. Returns an OTel {@link Context} that can be
50
+ * passed to scope classes as a {@link ParentContext}.
51
+ *
52
+ * @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
53
+ * @param baseCtx Optional base context to extend. Defaults to the active context.
54
+ * @returns An OTel Context containing the extracted trace information.
55
+ *
56
+ * @example
57
+ * ```typescript
58
+ * const parentCtx = extractTraceContext(req.headers);
59
+ * const scope = InvokeAgentScope.start(details, tenantDetails, undefined, undefined, parentCtx);
60
+ * ```
61
+ */
62
+ function extractTraceContext(headers, baseCtx) {
63
+ return api_1.propagation.extract(baseCtx ?? api_1.context.active(), headers);
64
+ }
65
+ /**
66
+ * Extracts trace context from incoming HTTP headers and runs the callback
67
+ * within that context. Any spans created inside the callback will be
68
+ * parented to the extracted trace.
69
+ *
70
+ * @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
71
+ * @param callback The function to execute within the extracted context.
72
+ * @returns The result of the callback.
73
+ *
74
+ * @example
75
+ * ```typescript
76
+ * runWithExtractedTraceContext(req.headers, () => {
77
+ * const scope = InvokeAgentScope.start(details, tenantDetails);
78
+ * scope.dispose();
79
+ * });
80
+ * ```
81
+ */
82
+ function runWithExtractedTraceContext(headers, callback) {
83
+ return api_1.context.with(extractTraceContext(headers), callback);
84
+ }
85
+ //# sourceMappingURL=trace-context-propagation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace-context-propagation.js","sourceRoot":"","sources":["../../../../src/tracing/context/trace-context-propagation.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAqBlC,0CAmBC;AAiBD,gDAMC;AAiBD,kDAKC;AAmBD,oEAEC;AAxGD,4CAAmE;AAgBnE;;GAEG;AACH,SAAgB,eAAe,CAAC,KAAoB;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAE9D,MAAM,QAAQ,GAAG,KAAgB,CAAC;IAClC,IACE,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU;QACvC,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU;QACvC,OAAO,QAAQ,CAAC,WAAW,KAAK,UAAU,EAC1C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,KAAsB,CAAC;IACxC,OAAO,CACL,SAAS,IAAI,QAAQ;QACrB,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;QACpC,QAAQ,IAAI,QAAQ;QACpB,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,CACpC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,kBAAkB,CAChC,OAA+B,EAC/B,GAAa;IAEb,iBAAW,CAAC,MAAM,CAAC,GAAG,IAAI,aAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,mBAAmB,CACjC,OAAuB,EACvB,OAAiB;IAEjB,OAAO,iBAAW,CAAC,OAAO,CAAC,OAAO,IAAI,aAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,4BAA4B,CAAI,OAAuB,EAAE,QAAiB;IACxF,OAAO,aAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { TimeInput } from '@opentelemetry/api';
2
2
  import { OpenTelemetryScope } from './OpenTelemetryScope';
3
3
  import { ToolCallDetails, AgentDetails, TenantDetails, SourceMetadata } from '../contracts';
4
- import { ParentSpanRef } from '../context/parent-span-context';
4
+ import { ParentContext } from '../context/trace-context-propagation';
5
5
  /**
6
6
  * Provides OpenTelemetry tracing scope for AI tool execution operations.
7
7
  */
@@ -13,14 +13,15 @@ export declare class ExecuteToolScope extends OpenTelemetryScope {
13
13
  * @param tenantDetails The tenant details
14
14
  * @param conversationId Optional conversation id to tag on the span (`gen_ai.conversation.id`).
15
15
  * @param sourceMetadata Optional source metadata; only `name` (channel name) and `description` (channel link/URL) are used for tagging.
16
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing.
16
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
17
+ * Accepts a ParentSpanRef (manual traceId/spanId) or an OTel Context (e.g. from extractTraceContext).
17
18
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime). Useful when recording a
18
19
  * tool call after execution has already completed.
19
20
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime). When provided, the span will
20
21
  * use this timestamp when disposed instead of the current wall-clock time.
21
22
  * @returns A new ExecuteToolScope instance.
22
23
  */
23
- static start(details: ToolCallDetails, agentDetails: AgentDetails, tenantDetails: TenantDetails, conversationId?: string, sourceMetadata?: Pick<SourceMetadata, "name" | "description">, parentSpanRef?: ParentSpanRef, startTime?: TimeInput, endTime?: TimeInput): ExecuteToolScope;
24
+ static start(details: ToolCallDetails, agentDetails: AgentDetails, tenantDetails: TenantDetails, conversationId?: string, sourceMetadata?: Pick<SourceMetadata, "name" | "description">, parentContext?: ParentContext, startTime?: TimeInput, endTime?: TimeInput): ExecuteToolScope;
24
25
  private constructor();
25
26
  /**
26
27
  * Records response information for telemetry tracking.
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteToolScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/ExecuteToolScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD;;;;;;;;;;;;;OAaG;WACW,KAAK,CACjB,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,CAAC,EAC7D,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS,GAClB,gBAAgB;IAInB,OAAO;IA6CP;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;CAG9C"}
1
+ {"version":3,"file":"ExecuteToolScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/ExecuteToolScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAGrE;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD;;;;;;;;;;;;;;OAcG;WACW,KAAK,CACjB,OAAO,EAAE,eAAe,EACxB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,CAAC,EAC7D,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS,GAClB,gBAAgB;IAInB,OAAO;IA6CP;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;CAG9C"}
@@ -17,18 +17,19 @@ class ExecuteToolScope extends OpenTelemetryScope_1.OpenTelemetryScope {
17
17
  * @param tenantDetails The tenant details
18
18
  * @param conversationId Optional conversation id to tag on the span (`gen_ai.conversation.id`).
19
19
  * @param sourceMetadata Optional source metadata; only `name` (channel name) and `description` (channel link/URL) are used for tagging.
20
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing.
20
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
21
+ * Accepts a ParentSpanRef (manual traceId/spanId) or an OTel Context (e.g. from extractTraceContext).
21
22
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime). Useful when recording a
22
23
  * tool call after execution has already completed.
23
24
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime). When provided, the span will
24
25
  * use this timestamp when disposed instead of the current wall-clock time.
25
26
  * @returns A new ExecuteToolScope instance.
26
27
  */
27
- static start(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentSpanRef, startTime, endTime) {
28
- return new ExecuteToolScope(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentSpanRef, startTime, endTime);
28
+ static start(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentContext, startTime, endTime) {
29
+ return new ExecuteToolScope(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentContext, startTime, endTime);
29
30
  }
30
- constructor(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentSpanRef, startTime, endTime) {
31
- super(api_1.SpanKind.INTERNAL, constants_1.OpenTelemetryConstants.EXECUTE_TOOL_OPERATION_NAME, `${constants_1.OpenTelemetryConstants.EXECUTE_TOOL_OPERATION_NAME} ${details.toolName}`, agentDetails, tenantDetails, parentSpanRef, startTime, endTime);
31
+ constructor(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentContext, startTime, endTime) {
32
+ super(api_1.SpanKind.INTERNAL, constants_1.OpenTelemetryConstants.EXECUTE_TOOL_OPERATION_NAME, `${constants_1.OpenTelemetryConstants.EXECUTE_TOOL_OPERATION_NAME} ${details.toolName}`, agentDetails, tenantDetails, parentContext, startTime, endTime);
32
33
  // Destructure the details object to match C# pattern
33
34
  const { toolName, arguments: args, toolCallId, description, toolType, endpoint } = details;
34
35
  this.setTagMaybe(constants_1.OpenTelemetryConstants.GEN_AI_TOOL_NAME_KEY, toolName);
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteToolScope.js","sourceRoot":"","sources":["../../../../src/tracing/scopes/ExecuteToolScope.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,4CAAyD;AACzD,6DAA0D;AAG1D,4CAAsD;AAEtD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,uCAAkB;IACtD;;;;;;;;;;;;;OAaG;IACI,MAAM,CAAC,KAAK,CACjB,OAAwB,EACxB,YAA0B,EAC1B,aAA4B,EAC5B,cAAuB,EACvB,cAA6D,EAC7D,aAA6B,EAC7B,SAAqB,EACrB,OAAmB;QAEnB,OAAO,IAAI,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvI,CAAC;IAED,YACE,OAAwB,EACxB,YAA0B,EAC1B,aAA4B,EAC5B,cAAuB,EACvB,cAA6D,EAC7D,aAA6B,EAC7B,SAAqB,EACrB,OAAmB;QAEnB,KAAK,CACH,cAAQ,CAAC,QAAQ,EACjB,kCAAsB,CAAC,2BAA2B,EAClD,GAAG,kCAAsB,CAAC,2BAA2B,IAAI,OAAO,CAAC,QAAQ,EAAE,EAC3E,YAAY,EACZ,aAAa,EACb,aAAa,EACb,SAAS,EACT,OAAO,CACR,CAAC;QAEF,qDAAqD;QACrD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAE3F,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC;QAC7E,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;QACpF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,gCAAgC,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QAChG,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,uCAAuC,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAG9G,uCAAuC;QACvC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE3E,oEAAoE;YACpE,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC3C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,QAAgB;QACpC,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;CACF;AAhFD,4CAgFC"}
1
+ {"version":3,"file":"ExecuteToolScope.js","sourceRoot":"","sources":["../../../../src/tracing/scopes/ExecuteToolScope.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,4CAAyD;AACzD,6DAA0D;AAG1D,4CAAsD;AAEtD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,uCAAkB;IACtD;;;;;;;;;;;;;;OAcG;IACI,MAAM,CAAC,KAAK,CACjB,OAAwB,EACxB,YAA0B,EAC1B,aAA4B,EAC5B,cAAuB,EACvB,cAA6D,EAC7D,aAA6B,EAC7B,SAAqB,EACrB,OAAmB;QAEnB,OAAO,IAAI,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvI,CAAC;IAED,YACE,OAAwB,EACxB,YAA0B,EAC1B,aAA4B,EAC5B,cAAuB,EACvB,cAA6D,EAC7D,aAA6B,EAC7B,SAAqB,EACrB,OAAmB;QAEnB,KAAK,CACH,cAAQ,CAAC,QAAQ,EACjB,kCAAsB,CAAC,2BAA2B,EAClD,GAAG,kCAAsB,CAAC,2BAA2B,IAAI,OAAO,CAAC,QAAQ,EAAE,EAC3E,YAAY,EACZ,aAAa,EACb,aAAa,EACb,SAAS,EACT,OAAO,CACR,CAAC;QAEF,qDAAqD;QACrD,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAE3F,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QACxE,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,uBAAuB,EAAE,UAAU,CAAC,CAAC;QAC7E,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;QACpF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,gCAAgC,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QAChG,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,uCAAuC,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;QAG9G,uCAAuC;QACvC,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE3E,oEAAoE;YACpE,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC3C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,eAAe,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,cAAc,CAAC,QAAgB;QACpC,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;CACF;AAjFD,4CAiFC"}
@@ -1,7 +1,7 @@
1
1
  import { TimeInput } from '@opentelemetry/api';
2
2
  import { OpenTelemetryScope } from './OpenTelemetryScope';
3
3
  import { InferenceDetails, AgentDetails, TenantDetails, SourceMetadata } from '../contracts';
4
- import { ParentSpanRef } from '../context/parent-span-context';
4
+ import { ParentContext } from '../context/trace-context-propagation';
5
5
  /**
6
6
  * Provides OpenTelemetry tracing scope for generative AI inference operations.
7
7
  */
@@ -13,12 +13,13 @@ export declare class InferenceScope extends OpenTelemetryScope {
13
13
  * @param tenantDetails The tenant details
14
14
  * @param conversationId Optional conversation id to tag on the span (`gen_ai.conversation.id`).
15
15
  * @param sourceMetadata Optional source metadata; only `name` (channel name) and `description` (channel link/URL) are used for tagging.
16
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing.
16
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
17
+ * Accepts a ParentSpanRef (manual traceId/spanId) or an OTel Context (e.g. from extractTraceContext).
17
18
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime).
18
19
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime).
19
20
  * @returns A new InferenceScope instance
20
21
  */
21
- static start(details: InferenceDetails, agentDetails: AgentDetails, tenantDetails: TenantDetails, conversationId?: string, sourceMetadata?: Pick<SourceMetadata, "name" | "description">, parentSpanRef?: ParentSpanRef, startTime?: TimeInput, endTime?: TimeInput): InferenceScope;
22
+ static start(details: InferenceDetails, agentDetails: AgentDetails, tenantDetails: TenantDetails, conversationId?: string, sourceMetadata?: Pick<SourceMetadata, "name" | "description">, parentContext?: ParentContext, startTime?: TimeInput, endTime?: TimeInput): InferenceScope;
22
23
  private constructor();
23
24
  /**
24
25
  * Records the input messages for telemetry tracking.
@@ -1 +1 @@
1
- {"version":3,"file":"InferenceScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/InferenceScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,cAAc,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D;;GAEG;AACH,qBAAa,cAAe,SAAQ,kBAAkB;IACpD;;;;;;;;;;;OAWG;WACW,KAAK,CACjB,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,CAAC,EAC7D,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS,GAClB,cAAc;IAIjB,OAAO;IAkCP;;;OAGG;IACI,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIpD;;;OAGG;IACI,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIrD;;;OAGG;IACI,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAInD;;;OAGG;IACI,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAIrD;;;OAGG;IACI,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAMjD;;;OAGG;IACI,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI;CAM1D"}
1
+ {"version":3,"file":"InferenceScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/InferenceScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,cAAc,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE;;GAEG;AACH,qBAAa,cAAe,SAAQ,kBAAkB;IACpD;;;;;;;;;;;;OAYG;WACW,KAAK,CACjB,OAAO,EAAE,gBAAgB,EACzB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,cAAc,CAAC,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,CAAC,EAC7D,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS,GAClB,cAAc;IAIjB,OAAO;IAkCP;;;OAGG;IACI,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIpD;;;OAGG;IACI,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIrD;;;OAGG;IACI,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAInD;;;OAGG;IACI,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAIrD;;;OAGG;IACI,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAMjD;;;OAGG;IACI,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI;CAM1D"}
@@ -17,16 +17,17 @@ class InferenceScope extends OpenTelemetryScope_1.OpenTelemetryScope {
17
17
  * @param tenantDetails The tenant details
18
18
  * @param conversationId Optional conversation id to tag on the span (`gen_ai.conversation.id`).
19
19
  * @param sourceMetadata Optional source metadata; only `name` (channel name) and `description` (channel link/URL) are used for tagging.
20
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing.
20
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
21
+ * Accepts a ParentSpanRef (manual traceId/spanId) or an OTel Context (e.g. from extractTraceContext).
21
22
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime).
22
23
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime).
23
24
  * @returns A new InferenceScope instance
24
25
  */
25
- static start(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentSpanRef, startTime, endTime) {
26
- return new InferenceScope(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentSpanRef, startTime, endTime);
26
+ static start(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentContext, startTime, endTime) {
27
+ return new InferenceScope(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentContext, startTime, endTime);
27
28
  }
28
- constructor(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentSpanRef, startTime, endTime) {
29
- super(api_1.SpanKind.CLIENT, details.operationName.toString(), `${details.operationName} ${details.model}`, agentDetails, tenantDetails, parentSpanRef, startTime, endTime);
29
+ constructor(details, agentDetails, tenantDetails, conversationId, sourceMetadata, parentContext, startTime, endTime) {
30
+ super(api_1.SpanKind.CLIENT, details.operationName.toString(), `${details.operationName} ${details.model}`, agentDetails, tenantDetails, parentContext, startTime, endTime);
30
31
  // Set core inference information matching C# implementation
31
32
  this.setTagMaybe(constants_1.OpenTelemetryConstants.GEN_AI_OPERATION_NAME_KEY, details.operationName.toString());
32
33
  this.setTagMaybe(constants_1.OpenTelemetryConstants.GEN_AI_REQUEST_MODEL_KEY, details.model);
@@ -1 +1 @@
1
- {"version":3,"file":"InferenceScope.js","sourceRoot":"","sources":["../../../../src/tracing/scopes/InferenceScope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InferenceScope.js","sourceRoot":"","sources":["../../../../src/tracing/scopes/InferenceScope.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,4CAAyD;AACzD,6DAA0D;AAC1D,4CAAsD;AAStD;;GAEG;AACH,MAAa,cAAe,SAAQ,uCAAkB;IACpD;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,KAAK,CACjB,OAAyB,EACzB,YAA0B,EAC1B,aAA4B,EAC5B,cAAuB,EACvB,cAA6D,EAC7D,aAA6B,EAC7B,SAAqB,EACrB,OAAmB;QAEnB,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACrI,CAAC;IAED,YACE,OAAyB,EACzB,YAA0B,EAC1B,aAA4B,EAC5B,cAAuB,EACvB,cAA6D,EAC7D,aAA6B,EAC7B,SAAqB,EACrB,OAAmB;QAEnB,KAAK,CACH,cAAQ,CAAC,MAAM,EACf,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,EAChC,GAAG,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,KAAK,EAAE,EAC3C,YAAY,EACZ,aAAa,EACb,aAAa,EACb,SAAS,EACT,OAAO,CACR,CAAC;QAEF,4DAA4D;QAC5D,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,yBAAyB,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrG,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,wBAAwB,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACjF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,wBAAwB,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QACxF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,6BAA6B,EAAE,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxG,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,8BAA8B,EAAE,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,kCAAkC,EAAE,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9G,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,sBAAsB,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QACpF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;QACpF,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,gCAAgC,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;QAChG,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,uCAAuC,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;IAChH,CAAC;IAED;;;OAGG;IACI,mBAAmB,CAAC,QAAkB;QAC3C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,yBAAyB,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACzF,CAAC;IAED;;;OAGG;IACI,oBAAoB,CAAC,QAAkB;QAC5C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,0BAA0B,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1F,CAAC;IAED;;;OAGG;IACI,iBAAiB,CAAC,WAAmB;QAC1C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,6BAA6B,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjG,CAAC;IAED;;;OAGG;IACI,kBAAkB,CAAC,YAAoB;QAC5C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,8BAA8B,EAAE,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnG,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,UAAkB;QACxC,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;;OAGG;IACI,mBAAmB,CAAC,aAAuB;QAChD,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,IAAI,CAAC,WAAW,CAAC,kCAAsB,CAAC,kCAAkC,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACvG,CAAC;IACH,CAAC;CAEF;AAjHD,wCAiHC"}
@@ -1,7 +1,7 @@
1
1
  import { TimeInput } from '@opentelemetry/api';
2
2
  import { OpenTelemetryScope } from './OpenTelemetryScope';
3
3
  import { InvokeAgentDetails, TenantDetails, CallerDetails, AgentDetails } from '../contracts';
4
- import { ParentSpanRef } from '../context/parent-span-context';
4
+ import { ParentContext } from '../context/trace-context-propagation';
5
5
  /**
6
6
  * Provides OpenTelemetry tracing scope for AI agent invocation operations.
7
7
  */
@@ -12,12 +12,13 @@ export declare class InvokeAgentScope extends OpenTelemetryScope {
12
12
  * @param tenantDetails The tenant details.
13
13
  * @param callerAgentDetails The details of the caller agent.
14
14
  * @param callerDetails The details of the non-agentic caller.
15
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing.
15
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
16
+ * Accepts a ParentSpanRef (manual traceId/spanId) or an OTel Context (e.g. from extractTraceContext).
16
17
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime).
17
18
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime).
18
19
  * @returns A new InvokeAgentScope instance.
19
20
  */
20
- static start(invokeAgentDetails: InvokeAgentDetails, tenantDetails: TenantDetails, callerAgentDetails?: AgentDetails, callerDetails?: CallerDetails, parentSpanRef?: ParentSpanRef, startTime?: TimeInput, endTime?: TimeInput): InvokeAgentScope;
21
+ static start(invokeAgentDetails: InvokeAgentDetails, tenantDetails: TenantDetails, callerAgentDetails?: AgentDetails, callerDetails?: CallerDetails, parentContext?: ParentContext, startTime?: TimeInput, endTime?: TimeInput): InvokeAgentScope;
21
22
  private constructor();
22
23
  /**
23
24
  * Records response information for telemetry tracking.
@@ -1 +1 @@
1
- {"version":3,"file":"InvokeAgentScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/InvokeAgentScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD;;;;;;;;;;OAUG;WACW,KAAK,CACjB,kBAAkB,EAAE,kBAAkB,EACtC,aAAa,EAAE,aAAa,EAC5B,kBAAkB,CAAC,EAAE,YAAY,EACjC,aAAa,CAAC,EAAE,aAAa,EAC7B,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS,GAClB,gBAAgB;IAInB,OAAO;IAwEP;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI7C;;;OAGG;IACI,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIpD;;;OAGG;IACI,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;CAGtD"}
1
+ {"version":3,"file":"InvokeAgentScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/InvokeAgentScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAY,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,YAAY,EACb,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAGrE;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,kBAAkB;IACtD;;;;;;;;;;;OAWG;WACW,KAAK,CACjB,kBAAkB,EAAE,kBAAkB,EACtC,aAAa,EAAE,aAAa,EAC5B,kBAAkB,CAAC,EAAE,YAAY,EACjC,aAAa,CAAC,EAAE,aAAa,EAC7B,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS,GAClB,gBAAgB;IAInB,OAAO;IAwEP;;;OAGG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI7C;;;OAGG;IACI,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;IAIpD;;;OAGG;IACI,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;CAGtD"}
@@ -16,18 +16,19 @@ class InvokeAgentScope extends OpenTelemetryScope_1.OpenTelemetryScope {
16
16
  * @param tenantDetails The tenant details.
17
17
  * @param callerAgentDetails The details of the caller agent.
18
18
  * @param callerDetails The details of the non-agentic caller.
19
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing.
19
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
20
+ * Accepts a ParentSpanRef (manual traceId/spanId) or an OTel Context (e.g. from extractTraceContext).
20
21
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime).
21
22
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime).
22
23
  * @returns A new InvokeAgentScope instance.
23
24
  */
24
- static start(invokeAgentDetails, tenantDetails, callerAgentDetails, callerDetails, parentSpanRef, startTime, endTime) {
25
- return new InvokeAgentScope(invokeAgentDetails, tenantDetails, callerAgentDetails, callerDetails, parentSpanRef, startTime, endTime);
25
+ static start(invokeAgentDetails, tenantDetails, callerAgentDetails, callerDetails, parentContext, startTime, endTime) {
26
+ return new InvokeAgentScope(invokeAgentDetails, tenantDetails, callerAgentDetails, callerDetails, parentContext, startTime, endTime);
26
27
  }
27
- constructor(invokeAgentDetails, tenantDetails, callerAgentDetails, callerDetails, parentSpanRef, startTime, endTime) {
28
+ constructor(invokeAgentDetails, tenantDetails, callerAgentDetails, callerDetails, parentContext, startTime, endTime) {
28
29
  super(api_1.SpanKind.CLIENT, constants_1.OpenTelemetryConstants.INVOKE_AGENT_OPERATION_NAME, invokeAgentDetails.agentName
29
30
  ? `${constants_1.OpenTelemetryConstants.INVOKE_AGENT_OPERATION_NAME} ${invokeAgentDetails.agentName}`
30
- : constants_1.OpenTelemetryConstants.INVOKE_AGENT_OPERATION_NAME, invokeAgentDetails, tenantDetails, parentSpanRef, startTime, endTime);
31
+ : constants_1.OpenTelemetryConstants.INVOKE_AGENT_OPERATION_NAME, invokeAgentDetails, tenantDetails, parentContext, startTime, endTime);
31
32
  // Set session ID and endpoint information
32
33
  this.setTagMaybe(constants_1.OpenTelemetryConstants.SESSION_ID_KEY, invokeAgentDetails.sessionId);
33
34
  if (invokeAgentDetails.endpoint) {
@@ -1 +1 @@
1
- {"version":3,"file":"InvokeAgentScope.js","sourceRoot":"","sources":["../../../../src/tracing/scopes/InvokeAgentScope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InvokeAgentScope.js","sourceRoot":"","sources":["../../../../src/tracing/scopes/InvokeAgentScope.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { SpanKind, Span, AttributeValue, SpanContext, TimeInput } from '@opentelemetry/api';
2
2
  import { AgentDetails, TenantDetails } from '../contracts';
3
- import { ParentSpanRef } from '../context/parent-span-context';
3
+ import { ParentContext } from '../context/trace-context-propagation';
4
4
  /**
5
5
  * Base class for OpenTelemetry tracing scopes
6
6
  */
@@ -20,14 +20,16 @@ export declare abstract class OpenTelemetryScope implements Disposable {
20
20
  * @param spanName The name of the span for display purposes
21
21
  * @param agentDetails Optional agent details
22
22
  * @param tenantDetails Optional tenant details
23
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing
23
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
24
+ * Accepts a {@link ParentSpanRef} (manual traceId/spanId) or an OTel {@link Context}
25
+ * (e.g. from {@link extractTraceContext} for W3C header propagation).
24
26
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime). When provided the span
25
27
  * records this timestamp instead of "now", which is useful when recording an operation after it
26
28
  * has already completed (e.g. a tool call whose start time was captured earlier).
27
29
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime). When provided the span will
28
30
  * use this timestamp when {@link dispose} is called instead of the current wall-clock time.
29
31
  */
30
- protected constructor(kind: SpanKind, operationName: string, spanName: string, agentDetails?: AgentDetails, tenantDetails?: TenantDetails, parentSpanRef?: ParentSpanRef, startTime?: TimeInput, endTime?: TimeInput);
32
+ protected constructor(kind: SpanKind, operationName: string, spanName: string, agentDetails?: AgentDetails, tenantDetails?: TenantDetails, parentContext?: ParentContext, startTime?: TimeInput, endTime?: TimeInput);
31
33
  /**
32
34
  * Makes this span active for the duration of the async callback execution
33
35
  */
@@ -1 +1 @@
1
- {"version":3,"file":"OpenTelemetryScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/OpenTelemetryScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAS,QAAQ,EAAE,IAAI,EAAuC,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAExI,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAkC,MAAM,gCAAgC,CAAC;AAG/F;;GAEG;AACH,8BAAsB,kBAAmB,YAAW,UAAU;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAErF,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,eAAe,CAAC,CAAY;IACpC,OAAO,CAAC,aAAa,CAAC,CAAY;IAClC,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAC,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAS;IAEzB;;;;;;;;;;;;;OAaG;IACH,SAAS,aACP,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,aAAa,EAC7B,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS;IAiDrB;;OAEG;IACI,mBAAmB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKrE;;;;OAIG;IACI,cAAc,IAAI,WAAW;IAIpC;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAkBtC;;;OAGG;IACI,gBAAgB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IA2BjI;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAM3G;;;;OAIG;IACH,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMtD;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAQ5B;;;;;OAKG;IACI,UAAU,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAI3C;;OAEG;IACH,OAAO,CAAC,GAAG;IA8BX;;OAEG;IACI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;IAW/B;;OAEG;IACI,OAAO,IAAI,IAAI;CAIvB"}
1
+ {"version":3,"file":"OpenTelemetryScope.d.ts","sourceRoot":"","sources":["../../../../src/tracing/scopes/OpenTelemetryScope.ts"],"names":[],"mappings":"AAGA,OAAO,EAAS,QAAQ,EAAE,IAAI,EAAuC,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAExI,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,aAAa,EAAmB,MAAM,sCAAsC,CAAC;AAGtF;;GAEG;AACH,8BAAsB,kBAAmB,YAAW,UAAU;IAC5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAErF,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,eAAe,CAAC,CAAY;IACpC,OAAO,CAAC,aAAa,CAAC,CAAY;IAClC,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAC,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAS;IAEzB;;;;;;;;;;;;;;;OAeG;IACH,SAAS,aACP,IAAI,EAAE,QAAQ,EACd,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,aAAa,EAC7B,aAAa,CAAC,EAAE,aAAa,EAC7B,SAAS,CAAC,EAAE,SAAS,EACrB,OAAO,CAAC,EAAE,SAAS;IAuDrB;;OAEG;IACI,mBAAmB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKrE;;;;OAIG;IACI,cAAc,IAAI,WAAW;IAIpC;;;OAGG;IACI,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAkBtC;;;OAGG;IACI,gBAAgB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IA2BjI;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAM3G;;;;OAIG;IACH,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMtD;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAQ5B;;;;;OAKG;IACI,UAAU,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAI3C;;OAEG;IACH,OAAO,CAAC,GAAG;IA8BX;;OAEG;IACI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;IAW/B;;OAEG;IACI,OAAO,IAAI,IAAI;CAIvB"}
@@ -9,6 +9,7 @@ exports.OpenTelemetryScope = void 0;
9
9
  const api_1 = require("@opentelemetry/api");
10
10
  const constants_1 = require("../constants");
11
11
  const parent_span_context_1 = require("../context/parent-span-context");
12
+ const trace_context_propagation_1 = require("../context/trace-context-propagation");
12
13
  const logging_1 = __importDefault(require("../../utils/logging"));
13
14
  /**
14
15
  * Base class for OpenTelemetry tracing scopes
@@ -21,20 +22,29 @@ class OpenTelemetryScope {
21
22
  * @param spanName The name of the span for display purposes
22
23
  * @param agentDetails Optional agent details
23
24
  * @param tenantDetails Optional tenant details
24
- * @param parentSpanRef Optional explicit parent span reference for cross-async-boundary tracing
25
+ * @param parentContext Optional parent context for cross-async-boundary tracing.
26
+ * Accepts a {@link ParentSpanRef} (manual traceId/spanId) or an OTel {@link Context}
27
+ * (e.g. from {@link extractTraceContext} for W3C header propagation).
25
28
  * @param startTime Optional explicit start time (ms epoch, Date, or HrTime). When provided the span
26
29
  * records this timestamp instead of "now", which is useful when recording an operation after it
27
30
  * has already completed (e.g. a tool call whose start time was captured earlier).
28
31
  * @param endTime Optional explicit end time (ms epoch, Date, or HrTime). When provided the span will
29
32
  * use this timestamp when {@link dispose} is called instead of the current wall-clock time.
30
33
  */
31
- constructor(kind, operationName, spanName, agentDetails, tenantDetails, parentSpanRef, startTime, endTime) {
34
+ constructor(kind, operationName, spanName, agentDetails, tenantDetails, parentContext, startTime, endTime) {
32
35
  this.hasEnded = false;
33
36
  // Determine the context to use for span creation
34
37
  let currentContext = api_1.context.active();
35
- if (parentSpanRef) {
36
- currentContext = (0, parent_span_context_1.createContextWithParentSpanRef)(currentContext, parentSpanRef);
37
- logging_1.default.info(`[A365Observability] Using explicit parent span: traceId=${parentSpanRef.traceId}, spanId=${parentSpanRef.spanId}`);
38
+ if (parentContext) {
39
+ if ((0, trace_context_propagation_1.isParentSpanRef)(parentContext)) {
40
+ // Existing ParentSpanRef path (backward compatible)
41
+ currentContext = (0, parent_span_context_1.createContextWithParentSpanRef)(currentContext, parentContext);
42
+ logging_1.default.info(`[A365Observability] Using explicit parent span: traceId=${parentContext.traceId}, spanId=${parentContext.spanId}`);
43
+ }
44
+ else {
45
+ // OTel Context path (from extractTraceContext or propagation.extract)
46
+ currentContext = parentContext;
47
+ }
38
48
  }
39
49
  logging_1.default.info(`[A365Observability] Starting span: ${spanName}, operation: ${operationName} for tenantId: ${tenantDetails?.tenantId || 'unknown'}, agentId: ${agentDetails?.agentId || 'unknown'}`);
40
50
  // Start span with current context to establish parent-child relationship