@introspection-sdk/introspection-node 0.4.7 → 0.4.8

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 (55) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/otel/init.js +1 -1
  3. package/dist/otel/init.js.map +1 -1
  4. package/dist/otel/integrations/anthropic.d.ts +1 -1
  5. package/dist/otel/integrations/anthropic.d.ts.map +1 -1
  6. package/dist/otel/integrations/anthropic.js +8 -4
  7. package/dist/otel/integrations/anthropic.js.map +1 -1
  8. package/dist/otel/integrations/base.d.ts +30 -1
  9. package/dist/otel/integrations/base.d.ts.map +1 -1
  10. package/dist/otel/integrations/base.js +50 -0
  11. package/dist/otel/integrations/base.js.map +1 -1
  12. package/dist/otel/integrations/claude-agent.d.ts +1 -2
  13. package/dist/otel/integrations/claude-agent.d.ts.map +1 -1
  14. package/dist/otel/integrations/claude-agent.js +4 -3
  15. package/dist/otel/integrations/claude-agent.js.map +1 -1
  16. package/dist/otel/integrations/gemini.d.ts +1 -1
  17. package/dist/otel/integrations/gemini.d.ts.map +1 -1
  18. package/dist/otel/integrations/gemini.js +4 -2
  19. package/dist/otel/integrations/gemini.js.map +1 -1
  20. package/dist/otel/integrations/index.d.ts +6 -12
  21. package/dist/otel/integrations/index.d.ts.map +1 -1
  22. package/dist/otel/integrations/index.js +20 -24
  23. package/dist/otel/integrations/index.js.map +1 -1
  24. package/dist/otel/integrations/langchain.d.ts +1 -2
  25. package/dist/otel/integrations/langchain.d.ts.map +1 -1
  26. package/dist/otel/integrations/langchain.js +6 -4
  27. package/dist/otel/integrations/langchain.js.map +1 -1
  28. package/dist/otel/integrations/mastra.d.ts +1 -1
  29. package/dist/otel/integrations/mastra.d.ts.map +1 -1
  30. package/dist/otel/integrations/mastra.js +6 -2
  31. package/dist/otel/integrations/mastra.js.map +1 -1
  32. package/dist/otel/integrations/openai-agents.d.ts +1 -1
  33. package/dist/otel/integrations/openai-agents.d.ts.map +1 -1
  34. package/dist/otel/integrations/openai-agents.js +7 -2
  35. package/dist/otel/integrations/openai-agents.js.map +1 -1
  36. package/dist/otel/integrations/pi.d.ts +1 -2
  37. package/dist/otel/integrations/pi.d.ts.map +1 -1
  38. package/dist/otel/integrations/pi.js +4 -3
  39. package/dist/otel/integrations/pi.js.map +1 -1
  40. package/dist/otel/integrations/vercel.d.ts +1 -2
  41. package/dist/otel/integrations/vercel.d.ts.map +1 -1
  42. package/dist/otel/integrations/vercel.js +2 -2
  43. package/dist/otel/integrations/vercel.js.map +1 -1
  44. package/package.json +12 -12
  45. package/src/otel/init.ts +1 -1
  46. package/src/otel/integrations/anthropic.ts +16 -6
  47. package/src/otel/integrations/base.ts +64 -1
  48. package/src/otel/integrations/claude-agent.ts +9 -5
  49. package/src/otel/integrations/gemini.ts +9 -4
  50. package/src/otel/integrations/index.ts +25 -24
  51. package/src/otel/integrations/langchain.ts +20 -5
  52. package/src/otel/integrations/mastra.ts +21 -3
  53. package/src/otel/integrations/openai-agents.ts +20 -4
  54. package/src/otel/integrations/pi.ts +9 -5
  55. package/src/otel/integrations/vercel.ts +6 -4
@@ -1,4 +1,4 @@
1
1
 
2
- > @introspection-sdk/introspection-node@0.4.7 build /home/runner/work/introspection-js-sdk/introspection-js-sdk/packages/introspection-node
2
+ > @introspection-sdk/introspection-node@0.4.8 build /home/runner/work/introspection-js-sdk/introspection-js-sdk/packages/introspection-node
3
3
  > tsc
4
4
 
package/dist/otel/init.js CHANGED
@@ -108,7 +108,7 @@ export async function init(options = {}) {
108
108
  }
109
109
  if (options.integrations)
110
110
  toInstall.push(...options.integrations);
111
- setupIntegrations(toInstall, ctx);
111
+ await setupIntegrations(toInstall, ctx);
112
112
  }
113
113
  catch (e) {
114
114
  state.handles = {};
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/otel/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/otel/init.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Patches `Anthropic.Messages.prototype.create` so every `new Anthropic()`
5
5
  * client is traced against the shared provider — no per-client wiring.
6
6
  */
7
- import type { Integration } from "./base.js";
7
+ import { type Integration } from "./base.js";
8
8
  declare const integration: Integration;
9
9
  export default integration;
10
10
  //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,QAAA,MAAM,WAAW,EAAE,WASlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AASnB,QAAA,MAAM,WAAW,EAAE,WAWlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -4,13 +4,17 @@
4
4
  * Patches `Anthropic.Messages.prototype.create` so every `new Anthropic()`
5
5
  * client is traced against the shared provider — no per-client wiring.
6
6
  */
7
- // Top-level import gates availability: if `@anthropic-ai/sdk` is not installed
8
- // the dynamic import of this module rejects and discovery skips the shim.
9
- import Anthropic from "@anthropic-ai/sdk";
10
7
  import { AnthropicInstrumentor } from "../anthropic.js";
8
+ import { importOptionalPeer, isOptionalPeerInstalled, OPTIONAL_PEERS, } from "./base.js";
9
+ async function loadAnthropicSdk() {
10
+ const mod = await importOptionalPeer(OPTIONAL_PEERS.anthropic);
11
+ return mod.default ?? mod;
12
+ }
11
13
  const integration = {
12
14
  identifier: "anthropic",
13
- setupOnce({ tracerProvider }) {
15
+ isAvailable: () => isOptionalPeerInstalled(OPTIONAL_PEERS.anthropic),
16
+ async setupOnce({ tracerProvider }) {
17
+ const Anthropic = await loadAnthropicSdk();
14
18
  const instrumentor = new AnthropicInstrumentor();
15
19
  instrumentor.instrumentClass({ anthropic: Anthropic, tracerProvider });
16
20
  // Restore the original prototype on shutdown so a later init() re-patches
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/otel/integrations/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,+EAA+E;AAC/E,0EAA0E;AAC1E,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAE1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGxD,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,WAAW;IACvB,SAAS,CAAC,EAAE,cAAc,EAAE;QAC1B,MAAM,YAAY,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACjD,YAAY,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;QACvE,0EAA0E;QAC1E,2EAA2E;QAC3E,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/otel/integrations/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GAEf,MAAM,WAAW,CAAC;AAEnB,KAAK,UAAU,gBAAgB;IAC7B,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAClC,cAAc,CAAC,SAAS,CACzB,CAAC;IACF,OAAO,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC;AAC5B,CAAC;AAED,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,WAAW;IACvB,WAAW,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,cAAc,CAAC,SAAS,CAAC;IACpE,KAAK,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE;QAChC,MAAM,SAAS,GAAG,MAAM,gBAAgB,EAAE,CAAC;QAC3C,MAAM,YAAY,GAAG,IAAI,qBAAqB,EAAE,CAAC;QACjD,YAAY,CAAC,eAAe,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;QACvE,0EAA0E;QAC1E,2EAA2E;QAC3E,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -12,6 +12,16 @@ import type { AdvancedOptions } from "../../types.js";
12
12
  import type { InstrumentedClaudeAgentSDK } from "../claude-wrapper.js";
13
13
  import type { IntrospectionCallbackHandler } from "../langchain-handler.js";
14
14
  import type { IntrospectionPiInstrumentor } from "../pi.js";
15
+ export declare const OPTIONAL_PEERS: {
16
+ readonly anthropic: "@anthropic-ai/sdk";
17
+ readonly claudeAgent: "@anthropic-ai/claude-agent-sdk";
18
+ readonly gemini: "@google/genai";
19
+ readonly langchainCallbacks: "@langchain/core/callbacks/base";
20
+ readonly mastraObservability: "@mastra/observability";
21
+ readonly openaiAgents: "@openai/agents";
22
+ readonly piAgentCore: "@earendil-works/pi-agent-core";
23
+ readonly vercelAi: "ai";
24
+ };
15
25
  /**
16
26
  * Bound framework handles published by instance/config-based integrations.
17
27
  *
@@ -38,6 +48,19 @@ export interface IntegrationHandles {
38
48
  export declare class DidNotEnable extends Error {
39
49
  constructor(message: string);
40
50
  }
51
+ /**
52
+ * Distinguish "framework package not installed" (expected — skip quietly) from
53
+ * a real error inside an installed integration (a bug we shouldn't hide).
54
+ */
55
+ export declare function isModuleNotFound(e: unknown): boolean;
56
+ /**
57
+ * Import an optional peer without leaving a static import edge for bundlers.
58
+ * Keep the `import()` argument variable-based: built-in framework integrations
59
+ * use this so importing `@introspection-sdk/introspection-node/otel` does not
60
+ * require every optional framework SDK to be installed.
61
+ */
62
+ export declare function importOptionalPeer<T = unknown>(specifier: string): Promise<T>;
63
+ export declare function isOptionalPeerInstalled(specifier: (typeof OPTIONAL_PEERS)[keyof typeof OPTIONAL_PEERS]): Promise<boolean>;
41
64
  /**
42
65
  * Everything an integration needs to wire itself into the shared pipeline.
43
66
  *
@@ -72,12 +95,18 @@ export interface Integration {
72
95
  * wrapping framework (e.g. LangChain) does not double-trace the SDK it wraps.
73
96
  */
74
97
  readonly deactivates?: readonly string[];
98
+ /**
99
+ * Optional availability probe for built-in integrations backed by optional
100
+ * peer packages. Missing peers should return false so their `deactivates`
101
+ * rules do not affect installed integrations.
102
+ */
103
+ isAvailable?(): boolean | Promise<boolean>;
75
104
  /**
76
105
  * Wire the framework into the shared pipeline. Runs once; may throw
77
106
  * {@link DidNotEnable}. May return a teardown callback (e.g. to uninstrument a
78
107
  * prototype patch) that `introspection.shutdown()` runs so a later `init()`
79
108
  * re-installs cleanly against the rebuilt provider.
80
109
  */
81
- setupOnce(ctx: IntegrationSetupContext): void | (() => void);
110
+ setupOnce(ctx: IntegrationSetupContext): void | (() => void) | Promise<void | (() => void)>;
82
111
  }
83
112
  //# sourceMappingURL=base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAE5D;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,EAAE,4BAA4B,CAAC;IAEhD,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,cAAc,CAAC,EAAE,2BAA2B,CAAC;IAC7C,qBAAqB,CAAC,EAAE,CAEtB,GAAG,EAAE,GAAG,KACL,0BAA0B,CAAC;CACjC;AAED;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,uBAAuB;IACtC,0DAA0D;IAC1D,cAAc,EAAE,mBAAmB,CAAC;IACpC,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,2EAA2E;IAC3E,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;;OAKG;IACH,SAAS,CAAC,GAAG,EAAE,uBAAuB,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;CAC9D"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AACvE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAE5D,eAAO,MAAM,cAAc;;;;;;;;;CASjB,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,EAAE,4BAA4B,CAAC;IAEhD,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,cAAc,CAAC,EAAE,2BAA2B,CAAC;IAC7C,qBAAqB,CAAC,EAAE,CAEtB,GAAG,EAAE,GAAG,KACL,0BAA0B,CAAC;CACjC;AAED;;;;;;GAMG;AACH,qBAAa,YAAa,SAAQ,KAAK;gBACzB,OAAO,EAAE,MAAM;CAI5B;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAOpD;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,CAAC,GAAG,OAAO,EAClD,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,CAAC,CASZ;AAED,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,GAC9D,OAAO,CAAC,OAAO,CAAC,CAQlB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,uBAAuB;IACtC,0DAA0D;IAC1D,cAAc,EAAE,mBAAmB,CAAC;IACpC,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,2EAA2E;IAC3E,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,WAAW,CAAC,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C;;;;;OAKG;IACH,SAAS,CACP,GAAG,EAAE,uBAAuB,GAC3B,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;CACvD"}
@@ -7,6 +7,16 @@
7
7
  * discovers the integrations whose framework is importable and runs each
8
8
  * `setupOnce()` exactly once.
9
9
  */
10
+ export const OPTIONAL_PEERS = {
11
+ anthropic: "@anthropic-ai/sdk",
12
+ claudeAgent: "@anthropic-ai/claude-agent-sdk",
13
+ gemini: "@google/genai",
14
+ langchainCallbacks: "@langchain/core/callbacks/base",
15
+ mastraObservability: "@mastra/observability",
16
+ openaiAgents: "@openai/agents",
17
+ piAgentCore: "@earendil-works/pi-agent-core",
18
+ vercelAi: "ai",
19
+ };
10
20
  /**
11
21
  * Thrown by an integration module/`setupOnce` when the framework cannot be
12
22
  * activated (package missing, version too old, …).
@@ -20,4 +30,44 @@ export class DidNotEnable extends Error {
20
30
  this.name = "DidNotEnable";
21
31
  }
22
32
  }
33
+ /**
34
+ * Distinguish "framework package not installed" (expected — skip quietly) from
35
+ * a real error inside an installed integration (a bug we shouldn't hide).
36
+ */
37
+ export function isModuleNotFound(e) {
38
+ const code = e?.code;
39
+ if (code === "ERR_MODULE_NOT_FOUND" || code === "MODULE_NOT_FOUND") {
40
+ return true;
41
+ }
42
+ const msg = e instanceof Error ? e.message : String(e);
43
+ return /Cannot find (module|package)|Failed to resolve/i.test(msg);
44
+ }
45
+ /**
46
+ * Import an optional peer without leaving a static import edge for bundlers.
47
+ * Keep the `import()` argument variable-based: built-in framework integrations
48
+ * use this so importing `@introspection-sdk/introspection-node/otel` does not
49
+ * require every optional framework SDK to be installed.
50
+ */
51
+ export async function importOptionalPeer(specifier) {
52
+ try {
53
+ return (await import(specifier));
54
+ }
55
+ catch (e) {
56
+ if (isModuleNotFound(e)) {
57
+ throw new DidNotEnable(`Optional peer ${specifier} is not installed`);
58
+ }
59
+ throw e;
60
+ }
61
+ }
62
+ export async function isOptionalPeerInstalled(specifier) {
63
+ try {
64
+ await importOptionalPeer(specifier);
65
+ return true;
66
+ }
67
+ catch (e) {
68
+ if (e instanceof DidNotEnable)
69
+ return false;
70
+ throw e;
71
+ }
72
+ }
23
73
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/otel/integrations/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA8BH;;;;;;GAMG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/otel/integrations/base.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,SAAS,EAAE,mBAAmB;IAC9B,WAAW,EAAE,gCAAgC;IAC7C,MAAM,EAAE,eAAe;IACvB,kBAAkB,EAAE,gCAAgC;IACpD,mBAAmB,EAAE,uBAAuB;IAC5C,YAAY,EAAE,gBAAgB;IAC9B,WAAW,EAAE,+BAA+B;IAC5C,QAAQ,EAAE,IAAI;CACN,CAAC;AAuBX;;;;;;GAMG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAU;IACzC,MAAM,IAAI,GAAI,CAA8B,EAAE,IAAI,CAAC;IACnD,IAAI,IAAI,KAAK,sBAAsB,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvD,OAAO,iDAAiD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAiB;IAEjB,IAAI,CAAC;QACH,OAAO,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAM,CAAC;IACxC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,YAAY,CAAC,iBAAiB,SAAS,mBAAmB,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,SAA+D;IAE/D,IAAI,CAAC;QACH,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,YAAY,YAAY;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC"}
@@ -6,8 +6,7 @@
6
6
  * integration publishes a pre-bound `instrumentClaudeAgent(sdk)` handle that
7
7
  * `init()` re-exposes as `introspection.instrumentClaudeAgent(sdk)`.
8
8
  */
9
- import "@anthropic-ai/claude-agent-sdk";
10
- import type { Integration } from "./base.js";
9
+ import { type Integration } from "./base.js";
11
10
  declare const integration: Integration;
12
11
  export default integration;
13
12
  //# sourceMappingURL=claude-agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/claude-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,QAAA,MAAM,WAAW,EAAE,WAclB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/claude-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AAEnB,QAAA,MAAM,WAAW,EAAE,WAgBlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -6,12 +6,13 @@
6
6
  * integration publishes a pre-bound `instrumentClaudeAgent(sdk)` handle that
7
7
  * `init()` re-exposes as `introspection.instrumentClaudeAgent(sdk)`.
8
8
  */
9
- // Presence gate.
10
- import "@anthropic-ai/claude-agent-sdk";
11
9
  import { withIntrospection } from "../claude-wrapper.js";
10
+ import { importOptionalPeer, isOptionalPeerInstalled, OPTIONAL_PEERS, } from "./base.js";
12
11
  const integration = {
13
12
  identifier: "claude_agent",
14
- setupOnce({ token, serviceName, baseUrl, advanced, handles }) {
13
+ isAvailable: () => isOptionalPeerInstalled(OPTIONAL_PEERS.claudeAgent),
14
+ async setupOnce({ token, serviceName, baseUrl, advanced, handles }) {
15
+ await importOptionalPeer(OPTIONAL_PEERS.claudeAgent);
15
16
  handles.instrumentClaudeAgent = (sdk) => withIntrospection(sdk, {
16
17
  token,
17
18
  serviceName,
@@ -1 +1 @@
1
- {"version":3,"file":"claude-agent.js","sourceRoot":"","sources":["../../../src/otel/integrations/claude-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,iBAAiB;AACjB,OAAO,gCAAgC,CAAC;AAExC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGzD,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,cAAc;IAC1B,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;QAC1D,OAAO,CAAC,qBAAqB,GAAG,CAAC,GAAG,EAAE,EAAE,CACtC,iBAAiB,CAAC,GAAG,EAAE;YACrB,KAAK;YACL,WAAW;YACX,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACP,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"claude-agent.js","sourceRoot":"","sources":["../../../src/otel/integrations/claude-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GAEf,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,cAAc;IAC1B,WAAW,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,cAAc,CAAC,WAAW,CAAC;IACtE,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;QAChE,MAAM,kBAAkB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACrD,OAAO,CAAC,qBAAqB,GAAG,CAAC,GAAG,EAAE,EAAE,CACtC,iBAAiB,CAAC,GAAG,EAAE;YACrB,KAAK;YACL,WAAW;YACX,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACP,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * every `GoogleGenAI` client is traced. Preserves the thought-signature
6
6
  * capture the standalone `GeminiInstrumentor` is built for.
7
7
  */
8
- import type { Integration } from "./base.js";
8
+ import { type Integration } from "./base.js";
9
9
  declare const integration: Integration;
10
10
  export default integration;
11
11
  //# sourceMappingURL=gemini.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,QAAA,MAAM,WAAW,EAAE,WASlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AAEnB,QAAA,MAAM,WAAW,EAAE,WAWlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -5,11 +5,13 @@
5
5
  * every `GoogleGenAI` client is traced. Preserves the thought-signature
6
6
  * capture the standalone `GeminiInstrumentor` is built for.
7
7
  */
8
- import * as genai from "@google/genai";
9
8
  import { GeminiInstrumentor } from "../gemini.js";
9
+ import { importOptionalPeer, isOptionalPeerInstalled, OPTIONAL_PEERS, } from "./base.js";
10
10
  const integration = {
11
11
  identifier: "gemini",
12
- setupOnce({ tracerProvider }) {
12
+ isAvailable: () => isOptionalPeerInstalled(OPTIONAL_PEERS.gemini),
13
+ async setupOnce({ tracerProvider }) {
14
+ const genai = await importOptionalPeer(OPTIONAL_PEERS.gemini);
13
15
  const instrumentor = new GeminiInstrumentor();
14
16
  instrumentor.instrumentClass({ genai, tracerProvider });
15
17
  // Restore the original prototype on shutdown so a later init() re-patches
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/otel/integrations/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlD,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,QAAQ;IACpB,SAAS,CAAC,EAAE,cAAc,EAAE;QAC1B,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAC9C,YAAY,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;QACxD,0EAA0E;QAC1E,2EAA2E;QAC3E,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/otel/integrations/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GAEf,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,QAAQ;IACpB,WAAW,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,cAAc,CAAC,MAAM,CAAC;IACjE,KAAK,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE;QAChC,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,YAAY,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAC9C,YAAY,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;QACxD,0EAA0E;QAC1E,2EAA2E;QAC3E,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -5,21 +5,15 @@
5
5
  * lazily (a missing framework just skips its shim), `setupOnce` runs at most
6
6
  * once per identifier per process, and an integration may `deactivate` others.
7
7
  */
8
- import { DidNotEnable, type Integration, type IntegrationHandles, type IntegrationSetupContext } from "./base.js";
9
- export { DidNotEnable };
8
+ import { DidNotEnable, isModuleNotFound, type Integration, type IntegrationHandles, type IntegrationSetupContext } from "./base.js";
9
+ export { DidNotEnable, isModuleNotFound };
10
10
  export type { Integration, IntegrationHandles, IntegrationSetupContext };
11
- /**
12
- * Distinguish "framework package not installed" (expected — skip quietly) from
13
- * a real error inside an installed integration (a bug we shouldn't hide).
14
- */
15
- export declare function isModuleNotFound(e: unknown): boolean;
16
11
  /**
17
12
  * Return the built-in integrations whose framework is importable.
18
13
  *
19
- * Each module's top-level framework import determines availability: a missing
20
- * package makes the dynamic import reject, which we log at debug and skip. Any
21
- * OTHER failure (a real error inside an installed integration) is surfaced at
22
- * warn level rather than silently swallowed — it's a bug, not an absent peer.
14
+ * Missing optional peer packages are expected and skipped quietly. Any OTHER
15
+ * failure is surfaced at warn level rather than silently swallowed — it's a
16
+ * bug, not an absent peer.
23
17
  */
24
18
  export declare function discoverIntegrations(): Promise<Integration[]>;
25
19
  /**
@@ -27,7 +21,7 @@ export declare function discoverIntegrations(): Promise<Integration[]>;
27
21
  *
28
22
  * @returns the set of identifiers installed so far this process.
29
23
  */
30
- export declare function setupIntegrations(integrations: Integration[], ctx: IntegrationSetupContext): Set<string>;
24
+ export declare function setupIntegrations(integrations: Integration[], ctx: IntegrationSetupContext): Promise<Set<string>>;
31
25
  /**
32
26
  * Run every integration teardown and clear the run-once guard, so the next
33
27
  * `setupIntegrations()` (e.g. after `introspection.shutdown()` + a fresh
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,YAAY,EACZ,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,CAAC;AA0BzE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAOpD;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAmBnE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,WAAW,EAAE,EAC3B,GAAG,EAAE,uBAAuB,GAC3B,GAAG,CAAC,MAAM,CAAC,CAoCb;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAS3C;AAED,uEAAuE;AACvE,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAC1C,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,CAAC;AAwCzE;;;;;;GAMG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAmBnE;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,YAAY,EAAE,WAAW,EAAE,EAC3B,GAAG,EAAE,uBAAuB,GAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAoCtB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAS3C;AAED,uEAAuE;AACvE,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C"}
@@ -6,13 +6,12 @@
6
6
  * once per identifier per process, and an integration may `deactivate` others.
7
7
  */
8
8
  import { logger } from "../../utils.js";
9
- import { DidNotEnable, } from "./base.js";
10
- export { DidNotEnable };
9
+ import { DidNotEnable, isModuleNotFound, } from "./base.js";
10
+ export { DidNotEnable, isModuleNotFound };
11
11
  /**
12
- * Built-in integrations, loaded lazily. Each thunk dynamically imports an
13
- * integration module; that module imports its framework at the top level, so
14
- * if the framework is not installed the import rejects and the integration is
15
- * skipped. Order matters only for `deactivates` resolution (handled below).
12
+ * Built-in integrations, loaded lazily. Each integration probes its optional
13
+ * framework package at runtime, so importing the OTel barrel never requires
14
+ * every optional framework SDK to be installed.
16
15
  */
17
16
  const BUILTIN_INTEGRATIONS = [
18
17
  () => import("./anthropic.js"),
@@ -28,25 +27,22 @@ const installed = new Set();
28
27
  // Teardown callbacks returned by integration setupOnce (e.g. uninstrument a
29
28
  // prototype patch), run by teardownIntegrations() on shutdown.
30
29
  const teardowns = [];
31
- /**
32
- * Distinguish "framework package not installed" (expected — skip quietly) from
33
- * a real error inside an installed integration (a bug we shouldn't hide).
34
- */
35
- export function isModuleNotFound(e) {
36
- const code = e?.code;
37
- if (code === "ERR_MODULE_NOT_FOUND" || code === "MODULE_NOT_FOUND") {
38
- return true;
30
+ async function availableIntegrations(integrations) {
31
+ const available = [];
32
+ for (const integration of integrations) {
33
+ if (integration.isAvailable && !(await integration.isAvailable())) {
34
+ continue;
35
+ }
36
+ available.push(integration);
39
37
  }
40
- const msg = e instanceof Error ? e.message : String(e);
41
- return /Cannot find (module|package)|Failed to resolve/i.test(msg);
38
+ return available;
42
39
  }
43
40
  /**
44
41
  * Return the built-in integrations whose framework is importable.
45
42
  *
46
- * Each module's top-level framework import determines availability: a missing
47
- * package makes the dynamic import reject, which we log at debug and skip. Any
48
- * OTHER failure (a real error inside an installed integration) is surfaced at
49
- * warn level rather than silently swallowed — it's a bug, not an absent peer.
43
+ * Missing optional peer packages are expected and skipped quietly. Any OTHER
44
+ * failure is surfaced at warn level rather than silently swallowed — it's a
45
+ * bug, not an absent peer.
50
46
  */
51
47
  export async function discoverIntegrations() {
52
48
  const found = [];
@@ -65,17 +61,17 @@ export async function discoverIntegrations() {
65
61
  }
66
62
  }
67
63
  }
68
- return found;
64
+ return availableIntegrations(found);
69
65
  }
70
66
  /**
71
67
  * Run each integration's `setupOnce` once, honouring `deactivates`.
72
68
  *
73
69
  * @returns the set of identifiers installed so far this process.
74
70
  */
75
- export function setupIntegrations(integrations, ctx) {
71
+ export async function setupIntegrations(integrations, ctx) {
76
72
  // First-wins de-dupe by identifier.
77
73
  const byId = new Map();
78
- for (const integration of integrations) {
74
+ for (const integration of await availableIntegrations(integrations)) {
79
75
  if (!byId.has(integration.identifier)) {
80
76
  byId.set(integration.identifier, integration);
81
77
  }
@@ -93,7 +89,7 @@ export function setupIntegrations(integrations, ctx) {
93
89
  if (installed.has(identifier))
94
90
  continue;
95
91
  try {
96
- const teardown = integration.setupOnce(ctx);
92
+ const teardown = await integration.setupOnce(ctx);
97
93
  if (typeof teardown === "function")
98
94
  teardowns.push(teardown);
99
95
  installed.add(identifier);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/integrations/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/otel/integrations/index.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,7 @@
9
9
  * model, the handler already traces the call, so the prototype-level Anthropic
10
10
  * patch would double-trace it.
11
11
  */
12
- import "@langchain/core/callbacks/base";
13
- import type { Integration } from "./base.js";
12
+ import { type Integration } from "./base.js";
14
13
  declare const integration: Integration;
15
14
  export default integration;
16
15
  //# sourceMappingURL=langchain.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"langchain.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/langchain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,gCAAgC,CAAC;AAGxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,QAAA,MAAM,WAAW,EAAE,WAwBlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"langchain.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/langchain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AAWnB,QAAA,MAAM,WAAW,EAAE,WA6BlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -9,11 +9,11 @@
9
9
  * model, the handler already traces the call, so the prototype-level Anthropic
10
10
  * patch would double-trace it.
11
11
  */
12
- // Presence gate.
13
- import "@langchain/core/callbacks/base";
14
- import { IntrospectionCallbackHandler } from "../langchain-handler.js";
12
+ import { importOptionalPeer, isOptionalPeerInstalled, OPTIONAL_PEERS, } from "./base.js";
13
+ const importLocal = (specifier) => import(specifier);
15
14
  const integration = {
16
15
  identifier: "langchain",
16
+ isAvailable: () => isOptionalPeerInstalled(OPTIONAL_PEERS.langchainCallbacks),
17
17
  // Intentional, and matches the Python SDK: when @langchain/core is present,
18
18
  // auto-discovery skips the always-on raw-Anthropic prototype patch so a
19
19
  // LangChain → ChatAnthropic call isn't traced twice (once by LangChain's
@@ -25,7 +25,9 @@ const integration = {
25
25
  // `new AnthropicInstrumentor().instrumentClass(...)`, or call
26
26
  // `init({ autoDiscover: false, integrations: [anthropicIntegration] })`.
27
27
  deactivates: ["anthropic"],
28
- setupOnce({ token, serviceName, baseUrl, advanced, handles }) {
28
+ async setupOnce({ token, serviceName, baseUrl, advanced, handles }) {
29
+ await importOptionalPeer(OPTIONAL_PEERS.langchainCallbacks);
30
+ const { IntrospectionCallbackHandler } = await importLocal("../langchain-handler.js");
29
31
  handles.langchainHandler = new IntrospectionCallbackHandler({
30
32
  token,
31
33
  serviceName,
@@ -1 +1 @@
1
- {"version":3,"file":"langchain.js","sourceRoot":"","sources":["../../../src/otel/integrations/langchain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,iBAAiB;AACjB,OAAO,gCAAgC,CAAC;AAExC,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAGvE,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,WAAW;IACvB,4EAA4E;IAC5E,wEAAwE;IACxE,yEAAyE;IACzE,8DAA8D;IAC9D,EAAE;IACF,0EAA0E;IAC1E,yEAAyE;IACzE,kEAAkE;IAClE,8DAA8D;IAC9D,yEAAyE;IACzE,WAAW,EAAE,CAAC,WAAW,CAAC;IAC1B,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;QAC1D,OAAO,CAAC,gBAAgB,GAAG,IAAI,4BAA4B,CAAC;YAC1D,KAAK;YACL,WAAW;YACX,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"langchain.js","sourceRoot":"","sources":["../../../src/otel/integrations/langchain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GAEf,MAAM,WAAW,CAAC;AAGnB,MAAM,WAAW,GAAG,CAAC,SAAiB,EAAE,EAAE,CACxC,MAAM,CAAC,SAAS,CAKd,CAAC;AAEL,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,WAAW;IACvB,WAAW,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,cAAc,CAAC,kBAAkB,CAAC;IAC7E,4EAA4E;IAC5E,wEAAwE;IACxE,yEAAyE;IACzE,8DAA8D;IAC9D,EAAE;IACF,0EAA0E;IAC1E,yEAAyE;IACzE,kEAAkE;IAClE,8DAA8D;IAC9D,yEAAyE;IACzE,WAAW,EAAE,CAAC,WAAW,CAAC;IAC1B,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;QAChE,MAAM,kBAAkB,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAC5D,MAAM,EAAE,4BAA4B,EAAE,GAAG,MAAM,WAAW,CACxD,yBAAyB,CAC1B,CAAC;QACF,OAAO,CAAC,gBAAgB,GAAG,IAAI,4BAA4B,CAAC;YAC1D,KAAK;YACL,WAAW;YACX,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -8,7 +8,7 @@
8
8
  * Importing `../mastra-exporter.js` (which requires `@mastra/observability`)
9
9
  * is the presence gate: a missing Mastra makes discovery skip this shim.
10
10
  */
11
- import type { Integration } from "./base.js";
11
+ import { type Integration } from "./base.js";
12
12
  declare const integration: Integration;
13
13
  export default integration;
14
14
  //# sourceMappingURL=mastra.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mastra.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/mastra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,QAAA,MAAM,WAAW,EAAE,WAalB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"mastra.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/mastra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AAUnB,QAAA,MAAM,WAAW,EAAE,WAmBlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -8,10 +8,14 @@
8
8
  * Importing `../mastra-exporter.js` (which requires `@mastra/observability`)
9
9
  * is the presence gate: a missing Mastra makes discovery skip this shim.
10
10
  */
11
- import { IntrospectionMastraExporter } from "../mastra-exporter.js";
11
+ import { importOptionalPeer, isOptionalPeerInstalled, OPTIONAL_PEERS, } from "./base.js";
12
+ const importLocal = (specifier) => import(specifier);
12
13
  const integration = {
13
14
  identifier: "mastra",
14
- setupOnce({ token, baseUrl, advanced, handles }) {
15
+ isAvailable: () => isOptionalPeerInstalled(OPTIONAL_PEERS.mastraObservability),
16
+ async setupOnce({ token, baseUrl, advanced, handles }) {
17
+ await importOptionalPeer(OPTIONAL_PEERS.mastraObservability);
18
+ const { IntrospectionMastraExporter } = await importLocal("../mastra-exporter.js");
15
19
  handles.mastraExporter = new IntrospectionMastraExporter({
16
20
  token,
17
21
  baseUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"mastra.js","sourceRoot":"","sources":["../../../src/otel/integrations/mastra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AAGpE,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,QAAQ;IACpB,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;QAC7C,OAAO,CAAC,cAAc,GAAG,IAAI,2BAA2B,CAAC;YACvD,KAAK;YACL,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,KAAK,EAAE,QAAQ,EAAE,KAAK;YACtB,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"mastra.js","sourceRoot":"","sources":["../../../src/otel/integrations/mastra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GAEf,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,GAAG,CAAC,SAAiB,EAAE,EAAE,CACxC,MAAM,CAAC,SAAS,CAKd,CAAC;AAEL,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,QAAQ;IACpB,WAAW,EAAE,GAAG,EAAE,CAChB,uBAAuB,CAAC,cAAc,CAAC,mBAAmB,CAAC;IAC7D,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;QACnD,MAAM,kBAAkB,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QAC7D,MAAM,EAAE,2BAA2B,EAAE,GAAG,MAAM,WAAW,CACvD,uBAAuB,CACxB,CAAC;QACF,OAAO,CAAC,cAAc,GAAG,IAAI,2BAA2B,CAAC;YACvD,KAAK;YACL,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,KAAK,EAAE,QAAQ,EAAE,KAAK;YACtB,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -5,7 +5,7 @@
5
5
  * global trace pipeline. `addTraceProcessor` appends, preserving any processors
6
6
  * other integrations (e.g. a vendor exporter) already registered.
7
7
  */
8
- import type { Integration } from "./base.js";
8
+ import { type Integration } from "./base.js";
9
9
  declare const integration: Integration;
10
10
  export default integration;
11
11
  //# sourceMappingURL=openai-agents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-agents.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/openai-agents.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,QAAA,MAAM,WAAW,EAAE,WAelB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"openai-agents.d.ts","sourceRoot":"","sources":["../../../src/otel/integrations/openai-agents.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AAMnB,QAAA,MAAM,WAAW,EAAE,WAwBlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -5,11 +5,16 @@
5
5
  * global trace pipeline. `addTraceProcessor` appends, preserving any processors
6
6
  * other integrations (e.g. a vendor exporter) already registered.
7
7
  */
8
- import { addTraceProcessor } from "@openai/agents";
9
8
  import { IntrospectionTracingProcessor } from "../tracing-processor.js";
9
+ import { importOptionalPeer, isOptionalPeerInstalled, OPTIONAL_PEERS, } from "./base.js";
10
10
  const integration = {
11
11
  identifier: "openai_agents",
12
- setupOnce({ token, serviceName, baseUrl, advanced }) {
12
+ isAvailable: () => isOptionalPeerInstalled(OPTIONAL_PEERS.openaiAgents),
13
+ async setupOnce({ token, serviceName, baseUrl, advanced }) {
14
+ const { addTraceProcessor } = await importOptionalPeer(OPTIONAL_PEERS.openaiAgents);
15
+ if (!addTraceProcessor) {
16
+ throw new Error("Invalid @openai/agents module: addTraceProcessor missing");
17
+ }
13
18
  addTraceProcessor(new IntrospectionTracingProcessor({
14
19
  token,
15
20
  serviceName,
@@ -1 +1 @@
1
- {"version":3,"file":"openai-agents.js","sourceRoot":"","sources":["../../../src/otel/integrations/openai-agents.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AAGxE,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,eAAe;IAC3B,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE;QACjD,iBAAiB,CACf,IAAI,6BAA6B,CAAC;YAChC,KAAK;YACL,WAAW;YACX,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"openai-agents.js","sourceRoot":"","sources":["../../../src/otel/integrations/openai-agents.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GAEf,MAAM,WAAW,CAAC;AAMnB,MAAM,WAAW,GAAgB;IAC/B,UAAU,EAAE,eAAe;IAC3B,WAAW,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,cAAc,CAAC,YAAY,CAAC;IACvE,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE;QACvD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,kBAAkB,CACpD,cAAc,CAAC,YAAY,CAC5B,CAAC;QACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,0DAA0D,CAC3D,CAAC;QACJ,CAAC;QACD,iBAAiB,CACf,IAAI,6BAA6B,CAAC;YAChC,KAAK;YACL,WAAW;YACX,OAAO;YACP,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB;YAC9C,QAAQ,EAAE,QAAQ,EAAE,YAAY;gBAC9B,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE;gBACzC,CAAC,CAAC,SAAS;SACd,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC"}