langwatch 1.12.0 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/agent/index.d.mts +5 -1
  2. package/dist/agent/index.d.ts +5 -1
  3. package/dist/agent/index.js +239 -14
  4. package/dist/agent/index.js.map +1 -1
  5. package/dist/agent/index.mjs +239 -14
  6. package/dist/agent/index.mjs.map +1 -1
  7. package/dist/{chunk-3WIN2UXZ.js → chunk-7R54TMZZ.js} +2 -2
  8. package/dist/{chunk-3WIN2UXZ.js.map → chunk-7R54TMZZ.js.map} +1 -1
  9. package/dist/{chunk-QLYKPPAW.js → chunk-G64XZMIU.js} +12 -12
  10. package/dist/{chunk-QLYKPPAW.js.map → chunk-G64XZMIU.js.map} +1 -1
  11. package/dist/{chunk-BAE4KYKJ.mjs → chunk-N3755EHD.mjs} +2 -2
  12. package/dist/{chunk-2HA4SJSD.mjs → chunk-NPEK4RSD.mjs} +5 -2
  13. package/dist/{chunk-2HA4SJSD.mjs.map → chunk-NPEK4RSD.mjs.map} +1 -1
  14. package/dist/{chunk-4ERRCKOH.js → chunk-O4J3ZPZY.js} +5 -2
  15. package/dist/chunk-O4J3ZPZY.js.map +1 -0
  16. package/dist/{chunk-F5UYCQT3.mjs → chunk-UHRSTPZ5.mjs} +2 -2
  17. package/dist/{chunk-F5UYCQT3.mjs.map → chunk-UHRSTPZ5.mjs.map} +1 -1
  18. package/dist/cli/bundle.js +362 -357
  19. package/dist/{implementation-rpImK8WS.d.ts → implementation-BDK4X-CS.d.ts} +1 -1
  20. package/dist/{implementation-BA3xa5UR.d.mts → implementation-BOP-3GoX.d.mts} +1 -1
  21. package/dist/index.d.mts +75 -5
  22. package/dist/index.d.ts +75 -5
  23. package/dist/index.js +328 -103
  24. package/dist/index.js.map +1 -1
  25. package/dist/index.mjs +246 -21
  26. package/dist/index.mjs.map +1 -1
  27. package/dist/observability-sdk/index.d.mts +3 -3
  28. package/dist/observability-sdk/index.d.ts +3 -3
  29. package/dist/observability-sdk/index.js +3 -3
  30. package/dist/observability-sdk/index.mjs +2 -2
  31. package/dist/observability-sdk/instrumentation/langchain/index.d.mts +1 -1
  32. package/dist/observability-sdk/instrumentation/langchain/index.d.ts +1 -1
  33. package/dist/observability-sdk/instrumentation/langchain/index.js +3 -3
  34. package/dist/observability-sdk/instrumentation/langchain/index.mjs +1 -1
  35. package/dist/observability-sdk/setup/node/index.js +3 -3
  36. package/dist/observability-sdk/setup/node/index.mjs +2 -2
  37. package/dist/{types-Cr25FO-i.d.ts → types-C3SDhizh.d.ts} +1151 -117
  38. package/dist/{types-DJyJypkv.d.mts → types-C9abONOS.d.mts} +1151 -117
  39. package/package.json +1 -1
  40. package/dist/chunk-4ERRCKOH.js.map +0 -1
  41. /package/dist/{chunk-BAE4KYKJ.mjs.map → chunk-N3755EHD.mjs.map} +0 -0
package/dist/index.js CHANGED
@@ -5,11 +5,11 @@ var _chunk73QOHSHUjs = require('./chunk-73QOHSHU.js');
5
5
 
6
6
 
7
7
 
8
- var _chunk4ERRCKOHjs = require('./chunk-4ERRCKOH.js');
8
+ var _chunkO4J3ZPZYjs = require('./chunk-O4J3ZPZY.js');
9
9
 
10
10
 
11
11
 
12
- var _chunkQLYKPPAWjs = require('./chunk-QLYKPPAW.js');
12
+ var _chunkG64XZMIUjs = require('./chunk-G64XZMIU.js');
13
13
 
14
14
 
15
15
 
@@ -20,7 +20,7 @@ var _chunkQLYKPPAWjs = require('./chunk-QLYKPPAW.js');
20
20
 
21
21
 
22
22
 
23
- var _chunk3WIN2UXZjs = require('./chunk-3WIN2UXZ.js');
23
+ var _chunk7R54TMZZjs = require('./chunk-7R54TMZZ.js');
24
24
 
25
25
 
26
26
 
@@ -329,7 +329,7 @@ var PromptServiceTracingDecorator = class {
329
329
  };
330
330
 
331
331
  // src/client-sdk/services/prompts/tracing/tracer.ts
332
- var tracer = _chunk4ERRCKOHjs.getLangWatchTracer.call(void 0, `${_chunk3WIN2UXZjs.LANGWATCH_SDK_NAME_CLIENT}.prompts`, _chunk3WIN2UXZjs.LANGWATCH_SDK_VERSION);
332
+ var tracer = _chunkO4J3ZPZYjs.getLangWatchTracer.call(void 0, `${_chunk7R54TMZZjs.LANGWATCH_SDK_NAME_CLIENT}.prompts`, _chunk7R54TMZZjs.LANGWATCH_SDK_VERSION);
333
333
 
334
334
  // src/client-sdk/tracing/create-tracing-proxy.ts
335
335
  var _api = require('@opentelemetry/api');
@@ -650,6 +650,214 @@ var LangWatchApiError = class extends Error {
650
650
  }
651
651
  };
652
652
 
653
+ // src/internal/http/langwatchFetch.ts
654
+ var REDIRECT_STATUSES = /* @__PURE__ */ new Set([301, 302, 303, 307, 308]);
655
+ var FOLLOWING_METHODS = /* @__PURE__ */ new Set(["GET", "HEAD"]);
656
+ var MAX_FOLLOW_HOPS = 5;
657
+ var CREDENTIAL_HEADERS = [
658
+ "authorization",
659
+ "cookie",
660
+ "proxy-authorization",
661
+ "x-api-key",
662
+ "x-auth-token",
663
+ "x-project-id"
664
+ ];
665
+ var LangWatchRedirectError = class extends Error {
666
+ constructor({
667
+ url,
668
+ location,
669
+ status
670
+ }) {
671
+ super(
672
+ `LangWatch refused to follow a redirect from ${url} to ${location != null ? location : "an unknown location"} (HTTP ${status}). Set the endpoint to the final URL.`
673
+ );
674
+ this.name = "LangWatchRedirectError";
675
+ this.url = url;
676
+ this.location = location;
677
+ this.status = status;
678
+ }
679
+ };
680
+ var warnedOrigins = /* @__PURE__ */ new Set();
681
+ var isRedirect = (response) => response.type === "opaqueredirect" || REDIRECT_STATUSES.has(response.status);
682
+ var isStream = (body) => typeof ReadableStream !== "undefined" && body instanceof ReadableStream;
683
+ var abortError = (signal) => {
684
+ const reason = signal.reason;
685
+ if (reason instanceof Error) return reason;
686
+ if (typeof DOMException !== "undefined") {
687
+ return new DOMException("This operation was aborted", "AbortError");
688
+ }
689
+ return Object.assign(new Error("This operation was aborted"), { name: "AbortError" });
690
+ };
691
+ var discard = (spare) => {
692
+ var _a;
693
+ void ((_a = spare == null ? void 0 : spare.body) == null ? void 0 : _a.cancel().catch(() => void 0));
694
+ };
695
+ var replayBody = async ({
696
+ spare,
697
+ signal
698
+ }) => {
699
+ if (!signal) return spare.arrayBuffer();
700
+ if (signal.aborted) throw abortError(signal);
701
+ const aborted = new Promise((_, reject) => {
702
+ signal.addEventListener("abort", () => reject(abortError(signal)), { once: true });
703
+ });
704
+ void aborted.catch(() => void 0);
705
+ try {
706
+ return await Promise.race([spare.arrayBuffer(), aborted]);
707
+ } catch (error) {
708
+ discard(spare);
709
+ throw error;
710
+ }
711
+ };
712
+ var requestUrl = (input) => {
713
+ if (typeof input === "string") return input;
714
+ if (input instanceof URL) return input.href;
715
+ return input.url;
716
+ };
717
+ var parseHop = ({
718
+ url,
719
+ location
720
+ }) => {
721
+ try {
722
+ const from = new URL(url);
723
+ return { from, to: new URL(location, from) };
724
+ } catch (e) {
725
+ return null;
726
+ }
727
+ };
728
+ var isSchemeUpgrade = ({ from, to }) => from.protocol === "http:" && to.protocol === "https:" && from.hostname === to.hostname && from.port === to.port;
729
+ var schemeUpgradeTarget = ({
730
+ url,
731
+ location
732
+ }) => {
733
+ const hop = parseHop({ url, location });
734
+ if (hop === null || !isSchemeUpgrade(hop)) return null;
735
+ const { from, to } = hop;
736
+ if (from.pathname !== to.pathname) return null;
737
+ if (from.search !== to.search) return null;
738
+ to.hash = "";
739
+ return to.href;
740
+ };
741
+ var followTarget = ({
742
+ url,
743
+ location
744
+ }) => {
745
+ const hop = parseHop({ url, location });
746
+ if (hop === null) return null;
747
+ const { from, to } = hop;
748
+ if (to.protocol !== "http:" && to.protocol !== "https:") return null;
749
+ if (from.protocol === "https:" && to.protocol === "http:") return null;
750
+ to.hash = "";
751
+ return to.href;
752
+ };
753
+ var keepsCredentials = ({ from, to }) => from.origin === to.origin || isSchemeUpgrade({ from, to });
754
+ var withoutCredentials = (headers) => {
755
+ const stripped = new Headers(headers);
756
+ for (const name of CREDENTIAL_HEADERS) stripped.delete(name);
757
+ return stripped;
758
+ };
759
+ var warnOnce = ({ url, logger: logger2 }) => {
760
+ const { origin, host } = new URL(url);
761
+ if (warnedOrigins.has(origin)) return;
762
+ warnedOrigins.add(origin);
763
+ logger2.warn(
764
+ `LangWatch endpoint ${origin} redirected to https. Set the endpoint to https://${host} to skip the extra round trip.`
765
+ );
766
+ };
767
+ var refusalOf = ({
768
+ url,
769
+ response
770
+ }) => new LangWatchRedirectError({
771
+ url,
772
+ location: response.headers.get("location"),
773
+ status: response.status
774
+ });
775
+ var effectiveRequest = ({
776
+ input,
777
+ init
778
+ }) => typeof Request !== "undefined" && input instanceof Request ? new Request(input, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), { redirect: "manual" })) : null;
779
+ var follow = async ({
780
+ send,
781
+ log,
782
+ effective,
783
+ init,
784
+ url,
785
+ method,
786
+ first
787
+ }) => {
788
+ var _a, _b;
789
+ let headers = new Headers((_a = effective == null ? void 0 : effective.headers) != null ? _a : init == null ? void 0 : init.headers);
790
+ const signal = (_b = effective == null ? void 0 : effective.signal) != null ? _b : init == null ? void 0 : init.signal;
791
+ let current = url;
792
+ let response = first;
793
+ for (let hop = 0; hop < MAX_FOLLOW_HOPS; hop++) {
794
+ const location = response.headers.get("location");
795
+ const target = location === null ? null : followTarget({ url: current, location });
796
+ if (target === null) throw refusalOf({ url: current, response });
797
+ const from = new URL(current);
798
+ const to = new URL(target);
799
+ if (!keepsCredentials({ from, to })) headers = withoutCredentials(headers);
800
+ if (isSchemeUpgrade({ from, to })) warnOnce({ url: current, logger: log });
801
+ current = target;
802
+ response = effective ? await send(new Request(target, { method, headers, signal, redirect: "manual" })) : await send(target, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), { method, headers, body: void 0, redirect: "manual" }));
803
+ if (!isRedirect(response)) return response;
804
+ }
805
+ throw refusalOf({ url: current, response });
806
+ };
807
+ var upgrade = async ({
808
+ send,
809
+ log,
810
+ effective,
811
+ init,
812
+ url,
813
+ first,
814
+ spare
815
+ }) => {
816
+ const location = first.headers.get("location");
817
+ const refused = refusalOf({ url, response: first });
818
+ const target = location === null ? null : schemeUpgradeTarget({ url, location });
819
+ if (location === null || first.status === 303 || target === null || isStream(init == null ? void 0 : init.body)) {
820
+ discard(spare);
821
+ throw refused;
822
+ }
823
+ warnOnce({ url, logger: log });
824
+ const second = effective ? await send(
825
+ new Request(target, {
826
+ method: effective.method,
827
+ headers: effective.headers,
828
+ body: spare ? await replayBody({ spare, signal: effective.signal }) : null,
829
+ signal: effective.signal,
830
+ redirect: "manual"
831
+ })
832
+ ) : await send(target, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), { redirect: "manual" }));
833
+ if (!isRedirect(second)) return second;
834
+ throw refusalOf({ url: target, response: second });
835
+ };
836
+ var createLangWatchFetch = ({
837
+ fetch: fetchImpl,
838
+ logger: logger2
839
+ } = {}) => {
840
+ const send = fetchImpl != null ? fetchImpl : ((input, init) => globalThis.fetch(input, init));
841
+ const log = logger2 != null ? logger2 : new (0, _chunkLCG5Y2EGjs.ConsoleLogger)({ level: "warn", prefix: "LangWatch" });
842
+ return async (input, init) => {
843
+ var _a, _b;
844
+ const url = requestUrl(input);
845
+ const effective = effectiveRequest({ input, init });
846
+ const method = ((_b = (_a = effective == null ? void 0 : effective.method) != null ? _a : init == null ? void 0 : init.method) != null ? _b : "GET").toUpperCase();
847
+ const spare = effective !== null && effective.body !== null ? effective.clone() : null;
848
+ const first = effective ? await send(effective) : await send(input, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), { redirect: "manual" }));
849
+ if (!isRedirect(first)) {
850
+ discard(spare);
851
+ return first;
852
+ }
853
+ const hop = { send, log, effective, init, url, first };
854
+ if (!FOLLOWING_METHODS.has(method)) return upgrade(_chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, hop), { spare }));
855
+ discard(spare);
856
+ return follow(_chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, hop), { method }));
857
+ };
858
+ };
859
+ var langwatchFetch = createLangWatchFetch();
860
+
653
861
  // src/internal/api/client.ts
654
862
  var handledErrorMiddleware = {
655
863
  async onResponse({ request, response }) {
@@ -676,14 +884,15 @@ var handledErrorMiddleware = {
676
884
  };
677
885
  var createLangWatchApiClient = (apiKey = ((_b) => (_b = ((_a) => (_a = scopedApiKey()) != null ? _a : process.env.LANGWATCH_API_KEY)()) != null ? _b : "")(), endpoint, projectId = ((_c) => (_c = scopedProjectId()) != null ? _c : process.env.LANGWATCH_PROJECT_ID)()) => {
678
886
  const client = _openapifetch2.default.call(void 0, {
679
- baseUrl: _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, endpoint),
680
- headers: _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey, projectId })), {
887
+ baseUrl: _chunkG64XZMIUjs.resolveEndpoint.call(void 0, endpoint),
888
+ fetch: langwatchFetch,
889
+ headers: _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey, projectId })), {
681
890
  "content-type": "application/json",
682
- "user-agent": `langwatch-sdk-node/${_chunk3WIN2UXZjs.version}`,
683
- "x-langwatch-sdk-name": _chunk3WIN2UXZjs.LANGWATCH_SDK_NAME_OBSERVABILITY,
684
- "x-langwatch-sdk-language": _chunk3WIN2UXZjs.LANGWATCH_SDK_LANGUAGE,
685
- "x-langwatch-sdk-version": _chunk3WIN2UXZjs.LANGWATCH_SDK_VERSION,
686
- "x-langwatch-sdk-platform": _chunk3WIN2UXZjs.LANGWATCH_SDK_RUNTIME.call(void 0, )
891
+ "user-agent": `langwatch-sdk-node/${_chunk7R54TMZZjs.version}`,
892
+ "x-langwatch-sdk-name": _chunk7R54TMZZjs.LANGWATCH_SDK_NAME_OBSERVABILITY,
893
+ "x-langwatch-sdk-language": _chunk7R54TMZZjs.LANGWATCH_SDK_LANGUAGE,
894
+ "x-langwatch-sdk-version": _chunk7R54TMZZjs.LANGWATCH_SDK_VERSION,
895
+ "x-langwatch-sdk-platform": _chunk7R54TMZZjs.LANGWATCH_SDK_RUNTIME.call(void 0, )
687
896
  })
688
897
  });
689
898
  client.use(handledErrorMiddleware);
@@ -936,22 +1145,22 @@ function extractStatusFromResponse(value) {
936
1145
  }
937
1146
 
938
1147
  // src/client-sdk/services/prompts/prompts-api.service.ts
939
- var syncActionSchema = _chunk4ERRCKOHjs.external_exports.enum([
1148
+ var syncActionSchema = _chunkO4J3ZPZYjs.external_exports.enum([
940
1149
  "created",
941
1150
  "updated",
942
1151
  "conflict",
943
1152
  "up_to_date"
944
1153
  ]);
945
- var syncResultSchema = _chunk4ERRCKOHjs.external_exports.object({
1154
+ var syncResultSchema = _chunkO4J3ZPZYjs.external_exports.object({
946
1155
  action: syncActionSchema,
947
1156
  // `prompt` and `conflictInfo` are passed through untyped — they come from
948
1157
  // the OpenAPI-derived shape which is already validated on the server side.
949
- prompt: _chunk4ERRCKOHjs.external_exports.unknown().optional(),
950
- conflictInfo: _chunk4ERRCKOHjs.external_exports.object({
951
- localVersion: _chunk4ERRCKOHjs.external_exports.number(),
952
- remoteVersion: _chunk4ERRCKOHjs.external_exports.number(),
953
- differences: _chunk4ERRCKOHjs.external_exports.array(_chunk4ERRCKOHjs.external_exports.string()),
954
- remoteConfigData: _chunk4ERRCKOHjs.external_exports.unknown()
1158
+ prompt: _chunkO4J3ZPZYjs.external_exports.unknown().optional(),
1159
+ conflictInfo: _chunkO4J3ZPZYjs.external_exports.object({
1160
+ localVersion: _chunkO4J3ZPZYjs.external_exports.number(),
1161
+ remoteVersion: _chunkO4J3ZPZYjs.external_exports.number(),
1162
+ differences: _chunkO4J3ZPZYjs.external_exports.array(_chunkO4J3ZPZYjs.external_exports.string()),
1163
+ remoteConfigData: _chunkO4J3ZPZYjs.external_exports.unknown()
955
1164
  }).passthrough().optional()
956
1165
  });
957
1166
  var PromptsApiService = class {
@@ -1259,34 +1468,34 @@ var PromptScope = {
1259
1468
  };
1260
1469
 
1261
1470
  // src/client-sdk/services/prompts/schema/prompt.schema.ts
1262
- var messageSchema = _chunk4ERRCKOHjs.external_exports.object({
1263
- role: _chunk4ERRCKOHjs.external_exports.enum(["user", "assistant", "system"]),
1264
- content: _chunk4ERRCKOHjs.external_exports.string()
1471
+ var messageSchema = _chunkO4J3ZPZYjs.external_exports.object({
1472
+ role: _chunkO4J3ZPZYjs.external_exports.enum(["user", "assistant", "system"]),
1473
+ content: _chunkO4J3ZPZYjs.external_exports.string()
1265
1474
  });
1266
- var responseFormatSchema = _chunk4ERRCKOHjs.external_exports.object({
1267
- type: _chunk4ERRCKOHjs.external_exports.literal("json_schema"),
1268
- json_schema: _chunk4ERRCKOHjs.external_exports.object({
1269
- name: _chunk4ERRCKOHjs.external_exports.string(),
1270
- schema: _chunk4ERRCKOHjs.external_exports.record(_chunk4ERRCKOHjs.external_exports.string(), _chunk4ERRCKOHjs.external_exports.unknown())
1475
+ var responseFormatSchema = _chunkO4J3ZPZYjs.external_exports.object({
1476
+ type: _chunkO4J3ZPZYjs.external_exports.literal("json_schema"),
1477
+ json_schema: _chunkO4J3ZPZYjs.external_exports.object({
1478
+ name: _chunkO4J3ZPZYjs.external_exports.string(),
1479
+ schema: _chunkO4J3ZPZYjs.external_exports.record(_chunkO4J3ZPZYjs.external_exports.string(), _chunkO4J3ZPZYjs.external_exports.unknown())
1271
1480
  }).nullable()
1272
1481
  }).optional();
1273
- var corePromptDataSchema = _chunk4ERRCKOHjs.external_exports.object({
1274
- model: _chunk4ERRCKOHjs.external_exports.string().min(1, "Model cannot be empty"),
1275
- messages: _chunk4ERRCKOHjs.external_exports.array(messageSchema).min(1, "At least one message is required"),
1276
- prompt: _chunk4ERRCKOHjs.external_exports.string().optional(),
1277
- temperature: _chunk4ERRCKOHjs.external_exports.number().min(0).max(2).optional(),
1278
- maxTokens: _chunk4ERRCKOHjs.external_exports.number().positive().optional(),
1482
+ var corePromptDataSchema = _chunkO4J3ZPZYjs.external_exports.object({
1483
+ model: _chunkO4J3ZPZYjs.external_exports.string().min(1, "Model cannot be empty"),
1484
+ messages: _chunkO4J3ZPZYjs.external_exports.array(messageSchema).min(1, "At least one message is required"),
1485
+ prompt: _chunkO4J3ZPZYjs.external_exports.string().optional(),
1486
+ temperature: _chunkO4J3ZPZYjs.external_exports.number().min(0).max(2).optional(),
1487
+ maxTokens: _chunkO4J3ZPZYjs.external_exports.number().positive().optional(),
1279
1488
  responseFormat: responseFormatSchema
1280
1489
  });
1281
- var promptMetadataSchema = _chunk4ERRCKOHjs.external_exports.object({
1282
- id: _chunk4ERRCKOHjs.external_exports.string().optional(),
1283
- handle: _chunk4ERRCKOHjs.external_exports.string().nullable().optional(),
1284
- version: _chunk4ERRCKOHjs.external_exports.number().min(0).optional(),
1285
- versionId: _chunk4ERRCKOHjs.external_exports.string().optional(),
1286
- scope: _chunk4ERRCKOHjs.external_exports.enum(PromptScope).optional()
1490
+ var promptMetadataSchema = _chunkO4J3ZPZYjs.external_exports.object({
1491
+ id: _chunkO4J3ZPZYjs.external_exports.string().optional(),
1492
+ handle: _chunkO4J3ZPZYjs.external_exports.string().nullable().optional(),
1493
+ version: _chunkO4J3ZPZYjs.external_exports.number().min(0).optional(),
1494
+ versionId: _chunkO4J3ZPZYjs.external_exports.string().optional(),
1495
+ scope: _chunkO4J3ZPZYjs.external_exports.enum(PromptScope).optional()
1287
1496
  });
1288
- var promptDataSchema = _chunk4ERRCKOHjs.external_exports.object(_chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, corePromptDataSchema.shape), promptMetadataSchema.shape), {
1289
- parameters: _chunk4ERRCKOHjs.external_exports.record(_chunk4ERRCKOHjs.external_exports.string(), _chunk4ERRCKOHjs.external_exports.unknown()).optional()
1497
+ var promptDataSchema = _chunkO4J3ZPZYjs.external_exports.object(_chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, corePromptDataSchema.shape), promptMetadataSchema.shape), {
1498
+ parameters: _chunkO4J3ZPZYjs.external_exports.record(_chunkO4J3ZPZYjs.external_exports.string(), _chunkO4J3ZPZYjs.external_exports.unknown()).optional()
1290
1499
  }));
1291
1500
 
1292
1501
  // src/client-sdk/services/prompts/prompt.ts
@@ -1378,32 +1587,32 @@ var _jsyaml = require('js-yaml'); var yaml = _interopRequireWildcard(_jsyaml);
1378
1587
  var _chalk = require('chalk'); var _chalk2 = _interopRequireDefault(_chalk);
1379
1588
 
1380
1589
  // src/cli/types-prompt.ts
1381
- var jsonValueSchema = _chunk4ERRCKOHjs.external_exports.lazy(
1382
- () => _chunk4ERRCKOHjs.external_exports.union([
1383
- _chunk4ERRCKOHjs.external_exports.string(),
1384
- _chunk4ERRCKOHjs.external_exports.number(),
1385
- _chunk4ERRCKOHjs.external_exports.boolean(),
1386
- _chunk4ERRCKOHjs.external_exports.null(),
1387
- _chunk4ERRCKOHjs.external_exports.array(jsonValueSchema),
1388
- _chunk4ERRCKOHjs.external_exports.record(_chunk4ERRCKOHjs.external_exports.string(), jsonValueSchema)
1590
+ var jsonValueSchema = _chunkO4J3ZPZYjs.external_exports.lazy(
1591
+ () => _chunkO4J3ZPZYjs.external_exports.union([
1592
+ _chunkO4J3ZPZYjs.external_exports.string(),
1593
+ _chunkO4J3ZPZYjs.external_exports.number(),
1594
+ _chunkO4J3ZPZYjs.external_exports.boolean(),
1595
+ _chunkO4J3ZPZYjs.external_exports.null(),
1596
+ _chunkO4J3ZPZYjs.external_exports.array(jsonValueSchema),
1597
+ _chunkO4J3ZPZYjs.external_exports.record(_chunkO4J3ZPZYjs.external_exports.string(), jsonValueSchema)
1389
1598
  ])
1390
1599
  );
1391
- var localPromptConfigSchema = _chunk4ERRCKOHjs.external_exports.object({
1392
- model: _chunk4ERRCKOHjs.external_exports.string().min(1, "Model is required"),
1393
- modelParameters: _chunk4ERRCKOHjs.external_exports.object({
1394
- temperature: _chunk4ERRCKOHjs.external_exports.number().optional(),
1395
- max_tokens: _chunk4ERRCKOHjs.external_exports.number().optional()
1600
+ var localPromptConfigSchema = _chunkO4J3ZPZYjs.external_exports.object({
1601
+ model: _chunkO4J3ZPZYjs.external_exports.string().min(1, "Model is required"),
1602
+ modelParameters: _chunkO4J3ZPZYjs.external_exports.object({
1603
+ temperature: _chunkO4J3ZPZYjs.external_exports.number().optional(),
1604
+ max_tokens: _chunkO4J3ZPZYjs.external_exports.number().optional()
1396
1605
  }).loose().optional(),
1397
- messages: _chunk4ERRCKOHjs.external_exports.array(
1398
- _chunk4ERRCKOHjs.external_exports.object({
1399
- role: _chunk4ERRCKOHjs.external_exports.enum(["system", "user", "assistant"]),
1400
- content: _chunk4ERRCKOHjs.external_exports.string().min(1, "Message content cannot be empty")
1606
+ messages: _chunkO4J3ZPZYjs.external_exports.array(
1607
+ _chunkO4J3ZPZYjs.external_exports.object({
1608
+ role: _chunkO4J3ZPZYjs.external_exports.enum(["system", "user", "assistant"]),
1609
+ content: _chunkO4J3ZPZYjs.external_exports.string().min(1, "Message content cannot be empty")
1401
1610
  }).loose()
1402
1611
  ).min(1, "At least one message is required"),
1403
1612
  // Parameters persist as JSON: parse them AS json so the value's type
1404
1613
  // matches the API contract (the spec's recursive JsonValue) instead of
1405
1614
  // laundering unknowns into a typed pipeline.
1406
- parameters: _chunk4ERRCKOHjs.external_exports.record(_chunk4ERRCKOHjs.external_exports.string(), jsonValueSchema).optional().default({})
1615
+ parameters: _chunkO4J3ZPZYjs.external_exports.record(_chunkO4J3ZPZYjs.external_exports.string(), jsonValueSchema).optional().default({})
1407
1616
  }).loose();
1408
1617
 
1409
1618
  // src/cli/utils/errors/prompt-not-found.error.ts
@@ -1960,12 +2169,12 @@ var DatasetPlanLimitError = class extends DatasetError {
1960
2169
  };
1961
2170
 
1962
2171
  // src/client-sdk/services/datasets/tracing/tracer.ts
1963
- var tracer2 = _chunk4ERRCKOHjs.getLangWatchTracer.call(void 0, `${_chunk3WIN2UXZjs.LANGWATCH_SDK_NAME_CLIENT}.datasets`, _chunk3WIN2UXZjs.LANGWATCH_SDK_VERSION);
2172
+ var tracer2 = _chunkO4J3ZPZYjs.getLangWatchTracer.call(void 0, `${_chunk7R54TMZZjs.LANGWATCH_SDK_NAME_CLIENT}.datasets`, _chunk7R54TMZZjs.LANGWATCH_SDK_VERSION);
1964
2173
 
1965
2174
  // src/client-sdk/services/datasets/dataset.service.ts
1966
2175
  var DatasetService = class {
1967
2176
  constructor(config) {
1968
- this.config = _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, config), { endpoint: _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config.endpoint) });
2177
+ this.config = _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, config), { endpoint: _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config.endpoint) });
1969
2178
  return createTracingProxy(this, tracer2);
1970
2179
  }
1971
2180
  /**
@@ -2244,9 +2453,9 @@ var DatasetService = class {
2244
2453
  async fetchMultipart(path2, formData, operation, slugOrId) {
2245
2454
  const { endpoint, apiKey } = this.config;
2246
2455
  const url = `${endpoint}${path2}`;
2247
- const response = await fetch(url, {
2456
+ const response = await langwatchFetch(url, {
2248
2457
  method: "POST",
2249
- headers: _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey }),
2458
+ headers: _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey }),
2250
2459
  body: formData
2251
2460
  });
2252
2461
  if (!response.ok) {
@@ -2945,7 +3154,7 @@ var Experiment = class _Experiment {
2945
3154
  this.experimentSlug = name;
2946
3155
  this.runId = (_a = options.runId) != null ? _a : generateHumanReadableId();
2947
3156
  this.apiClient = options.apiClient;
2948
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, options.endpoint);
3157
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, options.endpoint);
2949
3158
  this.apiKey = options.apiKey;
2950
3159
  this.logger = options.logger;
2951
3160
  this.concurrency = (_b = options.concurrency) != null ? _b : DEFAULT_CONCURRENCY;
@@ -2955,7 +3164,7 @@ var Experiment = class _Experiment {
2955
3164
  * Initialize an evaluation session
2956
3165
  */
2957
3166
  static async init(name, options) {
2958
- _chunkQLYKPPAWjs.ensureSetup.call(void 0, );
3167
+ _chunkG64XZMIUjs.ensureSetup.call(void 0, );
2959
3168
  const experiment = new _Experiment(name, options);
2960
3169
  await experiment.initialize();
2961
3170
  return experiment;
@@ -2970,11 +3179,11 @@ var Experiment = class _Experiment {
2970
3179
  );
2971
3180
  }
2972
3181
  try {
2973
- const response = await fetch(`${this.endpoint}/api/experiment/init`, {
3182
+ const response = await langwatchFetch(`${this.endpoint}/api/experiment/init`, {
2974
3183
  method: "POST",
2975
3184
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
2976
3185
  "Content-Type": "application/json"
2977
- }, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })),
3186
+ }, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })),
2978
3187
  body: JSON.stringify({
2979
3188
  experiment_name: this.name,
2980
3189
  experiment_slug: this.experimentSlug,
@@ -3089,7 +3298,7 @@ var Experiment = class _Experiment {
3089
3298
  }
3090
3299
  },
3091
3300
  async (otelSpan) => {
3092
- const span = _chunk4ERRCKOHjs.createLangWatchSpan.call(void 0, otelSpan);
3301
+ const span = _chunkO4J3ZPZYjs.createLangWatchSpan.call(void 0, otelSpan);
3093
3302
  const spanContext = otelSpan.spanContext();
3094
3303
  const traceId = spanContext.traceId;
3095
3304
  iterationContext.traceId = traceId;
@@ -3324,13 +3533,13 @@ var Experiment = class _Experiment {
3324
3533
  spanId,
3325
3534
  asGuardrail = false
3326
3535
  }) {
3327
- const response = await fetch(
3536
+ const response = await langwatchFetch(
3328
3537
  `${this.endpoint}/api/evaluations/${evaluatorSlug}/evaluate`,
3329
3538
  {
3330
3539
  method: "POST",
3331
3540
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
3332
3541
  "Content-Type": "application/json"
3333
- }, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })),
3542
+ }, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })),
3334
3543
  body: JSON.stringify({
3335
3544
  trace_id: traceId != null ? traceId : null,
3336
3545
  span_id: spanId != null ? spanId : null,
@@ -3555,7 +3764,7 @@ var Experiment = class _Experiment {
3555
3764
  },
3556
3765
  _api.ROOT_CONTEXT,
3557
3766
  async (otelSpan) => {
3558
- const span = _chunk4ERRCKOHjs.createLangWatchSpan.call(void 0, otelSpan);
3767
+ const span = _chunkO4J3ZPZYjs.createLangWatchSpan.call(void 0, otelSpan);
3559
3768
  const spanContext = otelSpan.spanContext();
3560
3769
  const rawTraceId = spanContext.traceId;
3561
3770
  spanId = spanContext.spanId;
@@ -3863,11 +4072,11 @@ var Experiment = class _Experiment {
3863
4072
  finished_at: finished ? Date.now() : null
3864
4073
  }
3865
4074
  };
3866
- this.pendingFlush = fetch(`${this.endpoint}/api/evaluations/batch/log_results`, {
4075
+ this.pendingFlush = langwatchFetch(`${this.endpoint}/api/evaluations/batch/log_results`, {
3867
4076
  method: "POST",
3868
4077
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
3869
4078
  "Content-Type": "application/json"
3870
- }, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })),
4079
+ }, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })),
3871
4080
  body: JSON.stringify(body)
3872
4081
  }).then((response) => {
3873
4082
  if (!response.ok) {
@@ -4835,7 +5044,7 @@ var EvaluationsFacade = class {
4835
5044
  },
4836
5045
  _api.context.active()
4837
5046
  );
4838
- const langwatchSpan = _chunk4ERRCKOHjs.createLangWatchSpan.call(void 0, otelSpan);
5047
+ const langwatchSpan = _chunkO4J3ZPZYjs.createLangWatchSpan.call(void 0, otelSpan);
4839
5048
  langwatchSpan.setType(spanType);
4840
5049
  langwatchSpan.setInput(_chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
4841
5050
  data
@@ -4851,11 +5060,11 @@ var EvaluationsFacade = class {
4851
5060
  };
4852
5061
  const url = `${_chunkLCG5Y2EGjs.__privateGet.call(void 0, this, _endpoint)}/api/evaluations/${slug}/evaluate`;
4853
5062
  _chunkLCG5Y2EGjs.__privateGet.call(void 0, this, _logger).debug(`Calling evaluation API: ${url}`);
4854
- const response = await fetch(url, {
5063
+ const response = await langwatchFetch(url, {
4855
5064
  method: "POST",
4856
5065
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
4857
5066
  "Content-Type": "application/json"
4858
- }, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey: _chunkLCG5Y2EGjs.__privateGet.call(void 0, this, _apiKey) })),
5067
+ }, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey: _chunkLCG5Y2EGjs.__privateGet.call(void 0, this, _apiKey) })),
4859
5068
  body: JSON.stringify(requestBody)
4860
5069
  });
4861
5070
  if (!response.ok) {
@@ -5338,11 +5547,24 @@ var TestSuitesApiService = class {
5338
5547
  if (error) this.handleApiError(`get test suite "${id}"`, error, response);
5339
5548
  return data;
5340
5549
  }
5550
+ /**
5551
+ * Edits a suite: any of its name, its fields and its evaluators. A field
5552
+ * list or an evaluator list replaces the one the suite holds; a key left
5553
+ * out keeps what the suite has.
5554
+ */
5555
+ async update(id, params) {
5556
+ const { data, error, response } = await this.apiClient.PATCH(
5557
+ "/api/v1/test-suites/{id}",
5558
+ { params: { path: { id } }, body: params }
5559
+ );
5560
+ if (error) this.handleApiError(`update test suite "${id}"`, error, response);
5561
+ return data;
5562
+ }
5341
5563
  /** Renames a suite. The slug is kept, so links and run history stay put. */
5342
5564
  async rename(id, params) {
5343
5565
  const { data, error, response } = await this.apiClient.PATCH(
5344
5566
  "/api/v1/test-suites/{id}",
5345
- { params: { path: { id } }, body: params }
5567
+ { params: { path: { id } }, body: { name: params.name } }
5346
5568
  );
5347
5569
  if (error) this.handleApiError(`rename test suite "${id}"`, error, response);
5348
5570
  return data;
@@ -5389,7 +5611,7 @@ var WorkflowsApiError = class extends Error {
5389
5611
  var WorkflowsApiService = class {
5390
5612
  constructor(config) {
5391
5613
  var _a;
5392
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
5614
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
5393
5615
  this.apiClient = (_a = config == null ? void 0 : config.langwatchApiClient) != null ? _a : createLangWatchApiClient(void 0, this.endpoint);
5394
5616
  this.experimentsApiService = new ExperimentsApiService({
5395
5617
  langwatchApiClient: this.apiClient
@@ -5608,7 +5830,7 @@ var AnnotationsApiService = class {
5608
5830
  async getAll() {
5609
5831
  const { data, error } = await this.apiClient.GET("/api/annotations");
5610
5832
  if (error) this.handleApiError("fetch all annotations", error);
5611
- return data;
5833
+ return data.data;
5612
5834
  }
5613
5835
  async get(id) {
5614
5836
  const { data, error } = await this.apiClient.GET("/api/annotations/{id}", {
@@ -5616,7 +5838,7 @@ var AnnotationsApiService = class {
5616
5838
  });
5617
5839
  if (error)
5618
5840
  this.handleApiError(`fetch annotation with ID "${id}"`, error);
5619
- return data;
5841
+ return data.data;
5620
5842
  }
5621
5843
  async getByTrace(traceId) {
5622
5844
  const { data, error } = await this.apiClient.GET(
@@ -5627,7 +5849,7 @@ var AnnotationsApiService = class {
5627
5849
  );
5628
5850
  if (error)
5629
5851
  this.handleApiError(`fetch annotations for trace "${traceId}"`, error);
5630
- return data;
5852
+ return data.data;
5631
5853
  }
5632
5854
  async create(traceId, params) {
5633
5855
  const { data, error } = await this.apiClient.POST(
@@ -5638,7 +5860,7 @@ var AnnotationsApiService = class {
5638
5860
  }
5639
5861
  );
5640
5862
  if (error) this.handleApiError("create annotation", error);
5641
- return data;
5863
+ return data.data;
5642
5864
  }
5643
5865
  async delete(id) {
5644
5866
  const { data, error } = await this.apiClient.DELETE(
@@ -6010,12 +6232,12 @@ var MonitorsApiService = class {
6010
6232
  constructor(config) {
6011
6233
  var _a, _b, _c;
6012
6234
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
6013
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6235
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6014
6236
  }
6015
6237
  async request(path2, options) {
6016
6238
  var _a, _b;
6017
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, options), {
6018
- headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })), {
6239
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, options), {
6240
+ headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })), {
6019
6241
  "Content-Type": "application/json"
6020
6242
  }), options == null ? void 0 : options.headers)
6021
6243
  }));
@@ -6085,12 +6307,12 @@ var SecretsApiService = class {
6085
6307
  constructor(config) {
6086
6308
  var _a, _b, _c;
6087
6309
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
6088
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6310
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6089
6311
  }
6090
6312
  async request(path2, options) {
6091
6313
  var _a, _b;
6092
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, options), {
6093
- headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, _chunk3WIN2UXZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })), {
6314
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, options), {
6315
+ headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, _chunk7R54TMZZjs.buildAuthHeaders.call(void 0, { apiKey: this.apiKey })), {
6094
6316
  "Content-Type": "application/json"
6095
6317
  }), options == null ? void 0 : options.headers)
6096
6318
  }));
@@ -6220,7 +6442,7 @@ var VirtualKeysApiError = class extends Error {
6220
6442
  var VirtualKeysApiService = class {
6221
6443
  constructor(config) {
6222
6444
  var _a, _b, _c, _d;
6223
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6445
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6224
6446
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
6225
6447
  this.projectId = (_d = config == null ? void 0 : config.projectId) != null ? _d : process.env.LANGWATCH_PROJECT_ID;
6226
6448
  }
@@ -6232,7 +6454,7 @@ var VirtualKeysApiService = class {
6232
6454
  }
6233
6455
  async request(operation, path2, init) {
6234
6456
  var _a, _b, _c;
6235
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6457
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6236
6458
  // A hung control plane must fail the command, not freeze it.
6237
6459
  signal: (_a = init == null ? void 0 : init.signal) != null ? _a : AbortSignal.timeout(3e4),
6238
6460
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, this.headers()), (_b = init == null ? void 0 : init.headers) != null ? _b : {})
@@ -6448,7 +6670,7 @@ var GatewayBudgetsApiError = class extends Error {
6448
6670
  var GatewayBudgetsApiService = class {
6449
6671
  constructor(config) {
6450
6672
  var _a, _b, _c, _d;
6451
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6673
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6452
6674
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
6453
6675
  this.projectId = (_d = config == null ? void 0 : config.projectId) != null ? _d : process.env.LANGWATCH_PROJECT_ID;
6454
6676
  }
@@ -6460,7 +6682,7 @@ var GatewayBudgetsApiService = class {
6460
6682
  }
6461
6683
  async request(operation, path2, init) {
6462
6684
  var _a, _b, _c;
6463
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6685
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6464
6686
  // A hung control plane must fail the command, not freeze it.
6465
6687
  signal: (_a = init == null ? void 0 : init.signal) != null ? _a : AbortSignal.timeout(3e4),
6466
6688
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, this.headers()), (_b = init == null ? void 0 : init.headers) != null ? _b : {})
@@ -6707,12 +6929,12 @@ var SpendEventsApiError = class extends Error {
6707
6929
  var SpendEventsApiService = class {
6708
6930
  constructor(config) {
6709
6931
  var _a, _b, _c;
6710
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6932
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6711
6933
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
6712
6934
  }
6713
6935
  async request(operation, path2, init) {
6714
6936
  var _a, _b;
6715
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6937
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6716
6938
  // A hung control plane must fail the command, not freeze it.
6717
6939
  signal: (_a = init == null ? void 0 : init.signal) != null ? _a : AbortSignal.timeout(3e4),
6718
6940
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
@@ -6924,12 +7146,12 @@ var WebhooksApiError = class extends Error {
6924
7146
  var WebhooksApiService = class {
6925
7147
  constructor(config) {
6926
7148
  var _a, _b, _c;
6927
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
7149
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
6928
7150
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
6929
7151
  }
6930
7152
  async request(operation, path2, init) {
6931
7153
  var _a, _b, _c;
6932
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
7154
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
6933
7155
  // A hung control plane must fail the command, not freeze it.
6934
7156
  signal: (_a = init == null ? void 0 : init.signal) != null ? _a : AbortSignal.timeout(3e4),
6935
7157
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {
@@ -7210,7 +7432,7 @@ var createManagementRequest = ({
7210
7432
  query,
7211
7433
  signal
7212
7434
  }) => {
7213
- const response = await fetch(
7435
+ const response = await langwatchFetch(
7214
7436
  `${endpoint}${path2}${buildQueryString(query)}`,
7215
7437
  _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, method ? { method } : {}), {
7216
7438
  headers: {
@@ -7261,7 +7483,7 @@ var TeamsApiService = class {
7261
7483
  constructor(config) {
7262
7484
  _chunkLCG5Y2EGjs.__privateAdd.call(void 0, this, _request);
7263
7485
  _chunkLCG5Y2EGjs.__privateSet.call(void 0, this, _request, createManagementRequest({
7264
- endpoint: _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint),
7486
+ endpoint: _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint),
7265
7487
  token: resolveManagementToken({ apiKey: config == null ? void 0 : config.apiKey }),
7266
7488
  errorFactory: ({ message, operation, body }) => new TeamsApiError(message, operation, body)
7267
7489
  }));
@@ -7348,7 +7570,7 @@ var ProjectsApiError = class extends Error {
7348
7570
  var ProjectsApiService = class {
7349
7571
  constructor(config) {
7350
7572
  var _a, _b, _c;
7351
- this.endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
7573
+ this.endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, config == null ? void 0 : config.endpoint);
7352
7574
  this.apiKey = (_c = (_b = (_a = config == null ? void 0 : config.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
7353
7575
  }
7354
7576
  /**
@@ -7366,7 +7588,7 @@ var ProjectsApiService = class {
7366
7588
  }
7367
7589
  async request(operation, path2, init) {
7368
7590
  var _a;
7369
- const response = await fetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
7591
+ const response = await langwatchFetch(`${this.endpoint}${path2}`, _chunkLCG5Y2EGjs.__spreadProps.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, init), {
7370
7592
  headers: _chunkLCG5Y2EGjs.__spreadValues.call(void 0, _chunkLCG5Y2EGjs.__spreadValues.call(void 0, {}, this.headers()), (_a = init == null ? void 0 : init.headers) != null ? _a : {})
7371
7593
  }));
7372
7594
  if (!response.ok) {
@@ -7446,7 +7668,7 @@ var TracesError = class extends Error {
7446
7668
  };
7447
7669
 
7448
7670
  // src/client-sdk/services/traces/tracing/tracer.ts
7449
- var tracer3 = _chunk4ERRCKOHjs.getLangWatchTracer.call(void 0, `${_chunk3WIN2UXZjs.LANGWATCH_SDK_NAME_CLIENT}.traces`, _chunk3WIN2UXZjs.LANGWATCH_SDK_VERSION);
7671
+ var tracer3 = _chunkO4J3ZPZYjs.getLangWatchTracer.call(void 0, `${_chunk7R54TMZZjs.LANGWATCH_SDK_NAME_CLIENT}.traces`, _chunk7R54TMZZjs.LANGWATCH_SDK_VERSION);
7450
7672
 
7451
7673
  // src/client-sdk/services/traces/service.ts
7452
7674
  var TracesService = class {
@@ -7518,7 +7740,7 @@ var LangWatch = class {
7518
7740
  _chunkLCG5Y2EGjs.__privateAdd.call(void 0, this, _projects);
7519
7741
  var _a, _b, _c;
7520
7742
  const apiKey = (_c = (_b = (_a = options.apiKey) != null ? _a : scopedApiKey()) != null ? _b : process.env.LANGWATCH_API_KEY) != null ? _c : "";
7521
- const endpoint = _chunkQLYKPPAWjs.resolveEndpoint.call(void 0, options.endpoint);
7743
+ const endpoint = _chunkG64XZMIUjs.resolveEndpoint.call(void 0, options.endpoint);
7522
7744
  this.config = _chunkLCG5Y2EGjs.__privateMethod.call(void 0, this, _LangWatch_instances, createInternalConfig_fn).call(this, {
7523
7745
  apiKey,
7524
7746
  endpoint,
@@ -7761,5 +7983,8 @@ var logger = {
7761
7983
 
7762
7984
 
7763
7985
 
7764
- exports.ComparisonError = ComparisonError; exports.DatasetApiError = DatasetApiError; exports.DatasetError = DatasetError; exports.DatasetNotFoundError = DatasetNotFoundError; exports.DatasetPlanLimitError = DatasetPlanLimitError; exports.DatasetValidationError = DatasetValidationError; exports.DatasetsFacade = DatasetsFacade; exports.EvaluationError = EvaluationError; exports.EvaluationsApiError = EvaluationsApiError; exports.EvaluationsFacade = EvaluationsFacade; exports.EvaluatorCallError = EvaluatorCallError; exports.EvaluatorError = EvaluatorError; exports.EvaluatorNotFoundError = EvaluatorNotFoundError; exports.EvaluatorsApiError = EvaluatorsApiError; exports.EvaluatorsApiService = EvaluatorsApiService; exports.Experiment = Experiment; exports.ExperimentApiError = ExperimentApiError; exports.ExperimentError = ExperimentError; exports.ExperimentInitError = ExperimentInitError; exports.ExperimentsFacade = ExperimentsFacade; exports.FetchPolicy = FetchPolicy; exports.FilterableBatchSpanProcessor = _chunk73QOHSHUjs.FilterableBatchSpanProcessor; exports.GatewayBudgetsApiError = GatewayBudgetsApiError; exports.GatewayBudgetsApiService = GatewayBudgetsApiService; exports.IDEMPOTENCY_KEY_HEADER = IDEMPOTENCY_KEY_HEADER; exports.IDEMPOTENT_REPLAY_HEADER = IDEMPOTENT_REPLAY_HEADER; exports.LangWatch = LangWatch; exports.LangWatchApiError = LangWatchApiError; exports.LangWatchExporter = _chunk3WIN2UXZjs.LangWatchTraceExporter; exports.LangWatchHandledError = LangWatchHandledError; exports.ProjectsApiError = ProjectsApiError; exports.ProjectsApiService = ProjectsApiService; exports.SpendEventsApiError = SpendEventsApiError; exports.SpendEventsApiService = SpendEventsApiService; exports.TargetMetadataConflictError = TargetMetadataConflictError; exports.TeamsApiError = TeamsApiError; exports.TeamsApiService = TeamsApiService; exports.VirtualKeysApiError = VirtualKeysApiError; exports.VirtualKeysApiService = VirtualKeysApiService; exports.WEBHOOK_DELIVERY_ID_HEADER = WEBHOOK_DELIVERY_ID_HEADER; exports.WEBHOOK_EVENT_ID_HEADER = WEBHOOK_EVENT_ID_HEADER; exports.WEBHOOK_SIGNATURE_DEFAULT_TOLERANCE_SECONDS = WEBHOOK_SIGNATURE_DEFAULT_TOLERANCE_SECONDS; exports.WEBHOOK_SIGNATURE_HEADER = WEBHOOK_SIGNATURE_HEADER; exports.WebhookSignatureVerificationError = WebhookSignatureVerificationError; exports.WebhooksApiError = WebhooksApiError; exports.WebhooksApiService = WebhooksApiService; exports.attributes = _chunkLCG5Y2EGjs.attributes_exports; exports.getLangWatchLogger = _chunk3WIN2UXZjs.getLangWatchLogger; exports.getLangWatchTracer = _chunk4ERRCKOHjs.getLangWatchTracer; exports.isLangWatchHandledError = isLangWatchHandledError; exports.logger = logger; exports.verifyWebhookSignature = verifyWebhookSignature;
7986
+
7987
+
7988
+
7989
+ exports.ComparisonError = ComparisonError; exports.DatasetApiError = DatasetApiError; exports.DatasetError = DatasetError; exports.DatasetNotFoundError = DatasetNotFoundError; exports.DatasetPlanLimitError = DatasetPlanLimitError; exports.DatasetValidationError = DatasetValidationError; exports.DatasetsFacade = DatasetsFacade; exports.EvaluationError = EvaluationError; exports.EvaluationsApiError = EvaluationsApiError; exports.EvaluationsFacade = EvaluationsFacade; exports.EvaluatorCallError = EvaluatorCallError; exports.EvaluatorError = EvaluatorError; exports.EvaluatorNotFoundError = EvaluatorNotFoundError; exports.EvaluatorsApiError = EvaluatorsApiError; exports.EvaluatorsApiService = EvaluatorsApiService; exports.Experiment = Experiment; exports.ExperimentApiError = ExperimentApiError; exports.ExperimentError = ExperimentError; exports.ExperimentInitError = ExperimentInitError; exports.ExperimentsFacade = ExperimentsFacade; exports.FetchPolicy = FetchPolicy; exports.FilterableBatchSpanProcessor = _chunk73QOHSHUjs.FilterableBatchSpanProcessor; exports.GatewayBudgetsApiError = GatewayBudgetsApiError; exports.GatewayBudgetsApiService = GatewayBudgetsApiService; exports.IDEMPOTENCY_KEY_HEADER = IDEMPOTENCY_KEY_HEADER; exports.IDEMPOTENT_REPLAY_HEADER = IDEMPOTENT_REPLAY_HEADER; exports.LangWatch = LangWatch; exports.LangWatchApiError = LangWatchApiError; exports.LangWatchExporter = _chunk7R54TMZZjs.LangWatchTraceExporter; exports.LangWatchHandledError = LangWatchHandledError; exports.LangWatchRedirectError = LangWatchRedirectError; exports.ProjectsApiError = ProjectsApiError; exports.ProjectsApiService = ProjectsApiService; exports.SpendEventsApiError = SpendEventsApiError; exports.SpendEventsApiService = SpendEventsApiService; exports.TargetMetadataConflictError = TargetMetadataConflictError; exports.TeamsApiError = TeamsApiError; exports.TeamsApiService = TeamsApiService; exports.VirtualKeysApiError = VirtualKeysApiError; exports.VirtualKeysApiService = VirtualKeysApiService; exports.WEBHOOK_DELIVERY_ID_HEADER = WEBHOOK_DELIVERY_ID_HEADER; exports.WEBHOOK_EVENT_ID_HEADER = WEBHOOK_EVENT_ID_HEADER; exports.WEBHOOK_SIGNATURE_DEFAULT_TOLERANCE_SECONDS = WEBHOOK_SIGNATURE_DEFAULT_TOLERANCE_SECONDS; exports.WEBHOOK_SIGNATURE_HEADER = WEBHOOK_SIGNATURE_HEADER; exports.WebhookSignatureVerificationError = WebhookSignatureVerificationError; exports.WebhooksApiError = WebhooksApiError; exports.WebhooksApiService = WebhooksApiService; exports.attributes = _chunkLCG5Y2EGjs.attributes_exports; exports.createLangWatchFetch = createLangWatchFetch; exports.getLangWatchLogger = _chunk7R54TMZZjs.getLangWatchLogger; exports.getLangWatchTracer = _chunkO4J3ZPZYjs.getLangWatchTracer; exports.isLangWatchHandledError = isLangWatchHandledError; exports.langwatchFetch = langwatchFetch; exports.logger = logger; exports.verifyWebhookSignature = verifyWebhookSignature;
7765
7990
  //# sourceMappingURL=index.js.map