@arizeai/phoenix-client 7.6.0 → 7.7.1

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 (143) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +27 -3
  3. package/dist/esm/__generated__/api/v1.d.ts +1 -1
  4. package/dist/esm/__generated__/api/v1.d.ts.map +1 -1
  5. package/dist/esm/constants/serverRequirements.d.ts +1 -0
  6. package/dist/esm/constants/serverRequirements.d.ts.map +1 -1
  7. package/dist/esm/constants/serverRequirements.js +7 -0
  8. package/dist/esm/constants/serverRequirements.js.map +1 -1
  9. package/dist/esm/experiments/resumeEvaluation.d.ts +0 -60
  10. package/dist/esm/experiments/resumeEvaluation.d.ts.map +1 -1
  11. package/dist/esm/experiments/resumeEvaluation.js +44 -37
  12. package/dist/esm/experiments/resumeEvaluation.js.map +1 -1
  13. package/dist/esm/experiments/resumeExperiment.d.ts +0 -52
  14. package/dist/esm/experiments/resumeExperiment.d.ts.map +1 -1
  15. package/dist/esm/experiments/resumeExperiment.js +42 -35
  16. package/dist/esm/experiments/resumeExperiment.js.map +1 -1
  17. package/dist/esm/experiments/runExperiment.d.ts.map +1 -1
  18. package/dist/esm/experiments/runExperiment.js +152 -123
  19. package/dist/esm/experiments/runExperiment.js.map +1 -1
  20. package/dist/esm/projects/index.d.ts +1 -0
  21. package/dist/esm/projects/index.d.ts.map +1 -1
  22. package/dist/esm/projects/index.js +1 -0
  23. package/dist/esm/projects/index.js.map +1 -1
  24. package/dist/esm/projects/setProjectRetentionPolicy.d.ts +49 -0
  25. package/dist/esm/projects/setProjectRetentionPolicy.d.ts.map +1 -0
  26. package/dist/esm/projects/setProjectRetentionPolicy.js +52 -0
  27. package/dist/esm/projects/setProjectRetentionPolicy.js.map +1 -0
  28. package/dist/esm/prompts/sdks/toOpenAI.d.ts.map +1 -1
  29. package/dist/esm/prompts/sdks/toOpenAI.js +49 -58
  30. package/dist/esm/prompts/sdks/toOpenAI.js.map +1 -1
  31. package/dist/esm/sessions/sessionUtils.d.ts.map +1 -1
  32. package/dist/esm/sessions/sessionUtils.js +3 -0
  33. package/dist/esm/sessions/sessionUtils.js.map +1 -1
  34. package/dist/esm/spans/getSpans.d.ts +0 -70
  35. package/dist/esm/spans/getSpans.d.ts.map +1 -1
  36. package/dist/esm/spans/getSpans.js +42 -93
  37. package/dist/esm/spans/getSpans.js.map +1 -1
  38. package/dist/esm/testing/phoenix-test-tracking.d.ts.map +1 -1
  39. package/dist/esm/testing/phoenix-test-tracking.js +109 -78
  40. package/dist/esm/testing/phoenix-test-tracking.js.map +1 -1
  41. package/dist/esm/traces/getTraces.d.ts +1 -1
  42. package/dist/esm/traces/getTraces.d.ts.map +1 -1
  43. package/dist/esm/traces/index.d.ts +1 -0
  44. package/dist/esm/traces/index.d.ts.map +1 -1
  45. package/dist/esm/traces/index.js +1 -0
  46. package/dist/esm/traces/index.js.map +1 -1
  47. package/dist/esm/traces/transferTraces.d.ts +56 -0
  48. package/dist/esm/traces/transferTraces.d.ts.map +1 -0
  49. package/dist/esm/traces/transferTraces.js +56 -0
  50. package/dist/esm/traces/transferTraces.js.map +1 -0
  51. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  52. package/dist/esm/types/sessions.d.ts +6 -0
  53. package/dist/esm/types/sessions.d.ts.map +1 -1
  54. package/dist/esm/users/getCurrentUser.d.ts +25 -0
  55. package/dist/esm/users/getCurrentUser.d.ts.map +1 -0
  56. package/dist/esm/users/getCurrentUser.js +30 -0
  57. package/dist/esm/users/getCurrentUser.js.map +1 -0
  58. package/dist/esm/users/index.d.ts +2 -0
  59. package/dist/esm/users/index.d.ts.map +1 -0
  60. package/dist/esm/users/index.js +2 -0
  61. package/dist/esm/users/index.js.map +1 -0
  62. package/dist/src/__generated__/api/v1.d.ts +1 -1
  63. package/dist/src/__generated__/api/v1.d.ts.map +1 -1
  64. package/dist/src/constants/serverRequirements.d.ts +1 -0
  65. package/dist/src/constants/serverRequirements.d.ts.map +1 -1
  66. package/dist/src/constants/serverRequirements.js +8 -1
  67. package/dist/src/constants/serverRequirements.js.map +1 -1
  68. package/dist/src/experiments/resumeEvaluation.d.ts +0 -60
  69. package/dist/src/experiments/resumeEvaluation.d.ts.map +1 -1
  70. package/dist/src/experiments/resumeEvaluation.js +44 -37
  71. package/dist/src/experiments/resumeEvaluation.js.map +1 -1
  72. package/dist/src/experiments/resumeExperiment.d.ts +0 -52
  73. package/dist/src/experiments/resumeExperiment.d.ts.map +1 -1
  74. package/dist/src/experiments/resumeExperiment.js +42 -35
  75. package/dist/src/experiments/resumeExperiment.js.map +1 -1
  76. package/dist/src/experiments/runExperiment.d.ts.map +1 -1
  77. package/dist/src/experiments/runExperiment.js +148 -116
  78. package/dist/src/experiments/runExperiment.js.map +1 -1
  79. package/dist/src/projects/index.d.ts +1 -0
  80. package/dist/src/projects/index.d.ts.map +1 -1
  81. package/dist/src/projects/index.js +1 -0
  82. package/dist/src/projects/index.js.map +1 -1
  83. package/dist/src/projects/setProjectRetentionPolicy.d.ts +49 -0
  84. package/dist/src/projects/setProjectRetentionPolicy.d.ts.map +1 -0
  85. package/dist/src/projects/setProjectRetentionPolicy.js +59 -0
  86. package/dist/src/projects/setProjectRetentionPolicy.js.map +1 -0
  87. package/dist/src/prompts/sdks/toOpenAI.d.ts.map +1 -1
  88. package/dist/src/prompts/sdks/toOpenAI.js +56 -63
  89. package/dist/src/prompts/sdks/toOpenAI.js.map +1 -1
  90. package/dist/src/sessions/sessionUtils.d.ts.map +1 -1
  91. package/dist/src/sessions/sessionUtils.js +3 -0
  92. package/dist/src/sessions/sessionUtils.js.map +1 -1
  93. package/dist/src/spans/getSpans.d.ts +0 -70
  94. package/dist/src/spans/getSpans.d.ts.map +1 -1
  95. package/dist/src/spans/getSpans.js +43 -94
  96. package/dist/src/spans/getSpans.js.map +1 -1
  97. package/dist/src/testing/phoenix-test-tracking.d.ts.map +1 -1
  98. package/dist/src/testing/phoenix-test-tracking.js +117 -84
  99. package/dist/src/testing/phoenix-test-tracking.js.map +1 -1
  100. package/dist/src/traces/getTraces.d.ts +1 -1
  101. package/dist/src/traces/getTraces.d.ts.map +1 -1
  102. package/dist/src/traces/index.d.ts +1 -0
  103. package/dist/src/traces/index.d.ts.map +1 -1
  104. package/dist/src/traces/index.js +1 -0
  105. package/dist/src/traces/index.js.map +1 -1
  106. package/dist/src/traces/transferTraces.d.ts +56 -0
  107. package/dist/src/traces/transferTraces.d.ts.map +1 -0
  108. package/dist/src/traces/transferTraces.js +59 -0
  109. package/dist/src/traces/transferTraces.js.map +1 -0
  110. package/dist/src/types/sessions.d.ts +6 -0
  111. package/dist/src/types/sessions.d.ts.map +1 -1
  112. package/dist/src/users/getCurrentUser.d.ts +25 -0
  113. package/dist/src/users/getCurrentUser.d.ts.map +1 -0
  114. package/dist/src/users/getCurrentUser.js +36 -0
  115. package/dist/src/users/getCurrentUser.js.map +1 -0
  116. package/dist/src/users/index.d.ts +2 -0
  117. package/dist/src/users/index.d.ts.map +1 -0
  118. package/dist/src/users/index.js +18 -0
  119. package/dist/src/users/index.js.map +1 -0
  120. package/dist/tsconfig.tsbuildinfo +1 -1
  121. package/docs/overview.mdx +8 -4
  122. package/docs/projects.mdx +71 -0
  123. package/docs/sessions.mdx +10 -1
  124. package/docs/traces.mdx +28 -2
  125. package/docs/users.mdx +44 -0
  126. package/package.json +6 -2
  127. package/src/__generated__/api/v1.ts +1 -1
  128. package/src/constants/serverRequirements.ts +8 -0
  129. package/src/experiments/resumeEvaluation.ts +78 -48
  130. package/src/experiments/resumeExperiment.ts +73 -46
  131. package/src/experiments/runExperiment.ts +235 -129
  132. package/src/projects/index.ts +1 -0
  133. package/src/projects/setProjectRetentionPolicy.ts +80 -0
  134. package/src/prompts/sdks/toOpenAI.ts +58 -61
  135. package/src/sessions/sessionUtils.ts +3 -0
  136. package/src/spans/getSpans.ts +84 -48
  137. package/src/testing/phoenix-test-tracking.ts +154 -90
  138. package/src/traces/getTraces.ts +1 -1
  139. package/src/traces/index.ts +1 -0
  140. package/src/traces/transferTraces.ts +89 -0
  141. package/src/types/sessions.ts +6 -0
  142. package/src/users/getCurrentUser.ts +39 -0
  143. package/src/users/index.ts +1 -0
@@ -161,27 +161,16 @@ function buildLinks(client, datasetId, experimentId) {
161
161
  },
162
162
  ];
163
163
  }
164
- /**
165
- * Initialize the suite: upload the dataset, create the experiment, and
166
- * register the OpenInference tracer.
167
- *
168
- * If tracing is disabled (no Phoenix env vars, or PHOENIX_TEST_TRACKING=false),
169
- * this populates a no-op tracer and exits without making any network calls.
170
- */
171
- export async function initializeSuite(suite) {
172
- const tracking = isTrackingEnabled(suite);
173
- if (!tracking.enabled) {
174
- suite.trackingDisabled = true;
175
- suite.trackingDisabledReason = tracking.reason;
176
- suite.tracer = createNoOpProvider().getTracer("no-op");
177
- suite.evaluatorTracer = suite.tracer;
178
- return;
164
+ function disableSuiteTracking({ suite, error, }) {
165
+ suite.trackingDisabled = true;
166
+ if (error !== undefined) {
167
+ suite.setupError =
168
+ error instanceof Error ? error : new Error(String(error));
179
169
  }
180
- const client = suite.config.client ?? createClient();
181
- suite.client = client;
182
- const datasetName = suite.config.datasetName ?? suite.name;
183
- const description = suite.config.description ??
184
- `Phoenix test dataset auto-generated from ${suite.name}`;
170
+ suite.tracer = createNoOpProvider().getTracer("no-op");
171
+ suite.evaluatorTracer = suite.tracer;
172
+ }
173
+ async function createSuiteDataset({ suite, client, datasetName, description, }) {
185
174
  const examples = Array.from(suite.registeredExamples.values()).map((registered) => ({
186
175
  id: registered.params.id ?? null,
187
176
  input: registered.params.input,
@@ -189,7 +178,6 @@ export async function initializeSuite(suite) {
189
178
  metadata: registered.params.metadata ?? {},
190
179
  splits: registered.params.splits,
191
180
  }));
192
- let datasetId;
193
181
  try {
194
182
  const created = await createDataset({
195
183
  client,
@@ -197,20 +185,14 @@ export async function initializeSuite(suite) {
197
185
  description,
198
186
  examples,
199
187
  });
200
- datasetId = created.datasetId;
188
+ return created.datasetId;
201
189
  }
202
- catch (err) {
203
- suite.trackingDisabled = true;
204
- suite.setupError = err instanceof Error ? err : new Error(String(err));
205
- suite.tracer = createNoOpProvider().getTracer("no-op");
206
- suite.evaluatorTracer = suite.tracer;
207
- return;
190
+ catch (error) {
191
+ disableSuiteTracking({ suite, error });
192
+ return null;
208
193
  }
209
- suite.datasetId = datasetId;
210
- // Map test names to server-side example ids by re-fetching the dataset.
211
- // The server doesn't promise that the GET response order matches the
212
- // upload order, so we match by user-supplied `id` first, then by
213
- // `JSON.stringify(input)` deep-equality with FIFO-on-collision.
194
+ }
195
+ async function resolveSuiteExampleIds({ suite, client, datasetId, }) {
214
196
  try {
215
197
  const { data: response } = await client.GET("/v1/datasets/{id}/examples", {
216
198
  params: { path: { id: datasetId } },
@@ -221,40 +203,44 @@ export async function initializeSuite(suite) {
221
203
  for (const [testName, registered] of suite.registeredExamples.entries()) {
222
204
  if (registered.params.id) {
223
205
  idToTestName.set(registered.params.id, testName);
224
- continue;
225
206
  }
226
- const key = stableKey(registered.params.input);
227
- const arr = inputKeyToTestNames.get(key) ?? [];
228
- arr.push(testName);
229
- inputKeyToTestNames.set(key, arr);
207
+ else {
208
+ const key = stableKey(registered.params.input);
209
+ inputKeyToTestNames.set(key, [
210
+ ...(inputKeyToTestNames.get(key) ?? []),
211
+ testName,
212
+ ]);
213
+ }
230
214
  }
231
- for (const ex of fetched) {
232
- const byId = idToTestName.get(ex.id);
233
- if (byId) {
234
- suite.exampleIdsByTest.set(byId, {
235
- exampleId: ex.id,
236
- nodeId: ex.node_id,
215
+ for (const example of fetched) {
216
+ const testName = idToTestName.get(example.id);
217
+ if (testName) {
218
+ suite.exampleIdsByTest.set(testName, {
219
+ exampleId: example.id,
220
+ nodeId: example.node_id,
237
221
  });
238
- idToTestName.delete(ex.id);
222
+ idToTestName.delete(example.id);
239
223
  continue;
240
224
  }
241
- const queue = inputKeyToTestNames.get(stableKey(ex.input));
242
- if (queue && queue.length) {
243
- const testName = queue.shift();
244
- suite.exampleIdsByTest.set(testName, {
245
- exampleId: ex.id,
246
- nodeId: ex.node_id,
225
+ const queue = inputKeyToTestNames.get(stableKey(example.input));
226
+ const matchedTestName = queue?.shift();
227
+ if (matchedTestName) {
228
+ suite.exampleIdsByTest.set(matchedTestName, {
229
+ exampleId: example.id,
230
+ nodeId: example.node_id,
247
231
  });
248
232
  }
249
233
  }
250
234
  }
251
235
  catch {
252
- // If we cannot resolve example ids, runs will be logged without one.
236
+ // Runs can still be logged without resolved example IDs.
253
237
  }
238
+ }
239
+ async function createSuiteExperiment({ suite, client, datasetId, datasetName, description, }) {
254
240
  const projectName = `${datasetName}-${new Date().toISOString()}`;
255
241
  suite.projectName = projectName;
256
242
  try {
257
- const experimentResponse = await client
243
+ const response = await client
258
244
  .POST("/v1/datasets/{dataset_id}/experiments", {
259
245
  params: { path: { dataset_id: datasetId } },
260
246
  body: {
@@ -265,33 +251,39 @@ export async function initializeSuite(suite) {
265
251
  repetitions: Math.max(1, suite.maxRepetitions ?? 1),
266
252
  },
267
253
  })
268
- .then((res) => res.data?.data);
269
- if (!experimentResponse) {
254
+ .then((result) => result.data?.data);
255
+ if (!response)
270
256
  throw new Error("Failed to create experiment");
271
- }
272
- suite.experimentId = experimentResponse.id;
273
- suite.projectName = experimentResponse.project_name ?? projectName;
257
+ suite.experimentId = response.id;
258
+ suite.projectName = response.project_name ?? projectName;
259
+ return true;
274
260
  }
275
- catch (err) {
276
- suite.trackingDisabled = true;
277
- suite.setupError = err instanceof Error ? err : new Error(String(err));
278
- suite.tracer = createNoOpProvider().getTracer("no-op");
279
- suite.evaluatorTracer = suite.tracer;
280
- return;
261
+ catch (error) {
262
+ disableSuiteTracking({ suite, error });
263
+ return false;
281
264
  }
265
+ }
266
+ function setupSuiteTracer({ suite, client, }) {
282
267
  const baseUrl = client.config.baseUrl;
283
268
  if (!baseUrl) {
284
- suite.trackingDisabled = true;
285
- suite.setupError = new Error("Phoenix base URL not found. Set PHOENIX_ENDPOINT (or PHOENIX_COLLECTOR_ENDPOINT) or pass baseUrl on the client.");
286
- suite.tracer = createNoOpProvider().getTracer("no-op");
287
- suite.evaluatorTracer = suite.tracer;
288
- return;
269
+ disableSuiteTracking({
270
+ suite,
271
+ error: new Error("Phoenix base URL not found. Set PHOENIX_ENDPOINT (or PHOENIX_COLLECTOR_ENDPOINT) or pass baseUrl on the client."),
272
+ });
273
+ return false;
289
274
  }
290
275
  maybeWarnHttpScheme(baseUrl, client.config.headers);
291
- let provider;
276
+ const projectName = suite.projectName;
277
+ if (!projectName) {
278
+ disableSuiteTracking({
279
+ suite,
280
+ error: new Error("Experiment project name is missing."),
281
+ });
282
+ return false;
283
+ }
292
284
  try {
293
- provider = register({
294
- projectName: suite.projectName,
285
+ const provider = register({
286
+ projectName,
295
287
  url: getTraceExportUrl(client.config),
296
288
  headers: client.config.headers
297
289
  ? toObjectHeaders(client.config.headers)
@@ -301,18 +293,57 @@ export async function initializeSuite(suite) {
301
293
  });
302
294
  suite.tracerProvider = provider;
303
295
  suite.globalRegistration = attachGlobalTracerProvider(provider);
296
+ suite.tracer = provider.getTracer(projectName);
297
+ suite.evaluatorTracer = provider.getTracer(`${projectName}-evaluators`);
298
+ return true;
304
299
  }
305
- catch (err) {
300
+ catch (error) {
301
+ disableSuiteTracking({ suite, error });
302
+ return false;
303
+ }
304
+ }
305
+ /**
306
+ * Initialize the suite: upload the dataset, create the experiment, and
307
+ * register the OpenInference tracer.
308
+ *
309
+ * If tracing is disabled (no Phoenix env vars, or PHOENIX_TEST_TRACKING=false),
310
+ * this populates a no-op tracer and exits without making any network calls.
311
+ */
312
+ export async function initializeSuite(suite) {
313
+ const tracking = isTrackingEnabled(suite);
314
+ if (!tracking.enabled) {
306
315
  suite.trackingDisabled = true;
307
- suite.setupError = err instanceof Error ? err : new Error(String(err));
316
+ suite.trackingDisabledReason = tracking.reason;
308
317
  suite.tracer = createNoOpProvider().getTracer("no-op");
309
318
  suite.evaluatorTracer = suite.tracer;
310
319
  return;
311
320
  }
312
- suite.tracer = provider.getTracer(suite.projectName);
313
- suite.evaluatorTracer = provider.getTracer(`${suite.projectName}-evaluators`);
314
- if (suite.datasetId && suite.experimentId) {
315
- suite.links = buildLinks(client, suite.datasetId, suite.experimentId);
321
+ const client = suite.config.client ?? createClient();
322
+ suite.client = client;
323
+ const datasetName = suite.config.datasetName ?? suite.name;
324
+ const description = suite.config.description ??
325
+ `Phoenix test dataset auto-generated from ${suite.name}`;
326
+ const datasetId = await createSuiteDataset({
327
+ suite,
328
+ client,
329
+ datasetName,
330
+ description,
331
+ });
332
+ if (!datasetId)
333
+ return;
334
+ suite.datasetId = datasetId;
335
+ await resolveSuiteExampleIds({ suite, client, datasetId });
336
+ const hasExperiment = await createSuiteExperiment({
337
+ suite,
338
+ client,
339
+ datasetId,
340
+ datasetName,
341
+ description,
342
+ });
343
+ if (!hasExperiment || !setupSuiteTracer({ suite, client }))
344
+ return;
345
+ if (suite.experimentId) {
346
+ suite.links = buildLinks(client, datasetId, suite.experimentId);
316
347
  }
317
348
  }
318
349
  /** Lazily-created no-op tracer reused for dry runs / fallbacks. */
@@ -1 +1 @@
1
- {"version":3,"file":"phoenix-test-tracking.js","sourceRoot":"","sources":["../../../src/testing/phoenix-test-tracking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phoenix-test-tracking.js","sourceRoot":"","sources":["../../../src/testing/phoenix-test-tracking.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@ export interface GetTracesParams extends ClientFn {
17
17
  order?: "asc" | "desc";
18
18
  /** Maximum number of traces to return */
19
19
  limit?: number;
20
- /** Pagination cursor (Trace GlobalID) */
20
+ /** Pagination cursor */
21
21
  cursor?: string | null;
22
22
  /** If true, include full span details for each trace */
23
23
  includeSpans?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"getTraces.d.ts","sourceRoot":"","sources":["../../../src/traces/getTraces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C,qCAAqC;IACrC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,kFAAkF;IAClF,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,kFAAkF;IAClF,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB;IACjB,IAAI,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC;IACnC,qBAAqB;IACrB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wDAAwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,MAAM,iBAAiB,GAC3B,UAAU,CAAC,mBAAmB,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;AAEtD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;IACjE,UAAU,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,CAAC;CAC7E,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAsB,SAAS,CAAC,EAC9B,MAAM,EAAE,OAAO,EACf,OAAO,EACP,MAAM,EACN,KAAW,EACX,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,SAAS,GACV,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CA2D5C"}
1
+ {"version":3,"file":"getTraces.d.ts","sourceRoot":"","sources":["../../../src/traces/getTraces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAI3D;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,QAAQ;IAC/C,qCAAqC;IACrC,OAAO,EAAE,iBAAiB,CAAC;IAC3B,kFAAkF;IAClF,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IACjC,kFAAkF;IAClF,OAAO,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/B,iBAAiB;IACjB,IAAI,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC;IACnC,qBAAqB;IACrB,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,wDAAwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,MAAM,iBAAiB,GAC3B,UAAU,CAAC,mBAAmB,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;AAEtD,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;IACjE,UAAU,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,CAAC;CAC7E,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAsB,SAAS,CAAC,EAC9B,MAAM,EAAE,OAAO,EACf,OAAO,EACP,MAAM,EACN,KAAW,EACX,SAAS,EACT,OAAO,EACP,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,SAAS,GACV,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CA2D5C"}
@@ -2,5 +2,6 @@ export * from "./addTraceAnnotation.js";
2
2
  export * from "./addTraceNote.js";
3
3
  export * from "./getTraces.js";
4
4
  export * from "./logTraceAnnotations.js";
5
+ export * from "./transferTraces.js";
5
6
  export type { TraceAnnotation } from "./types.js";
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/traces/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/traces/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC"}
@@ -2,4 +2,5 @@ export * from "./addTraceAnnotation.js";
2
2
  export * from "./addTraceNote.js";
3
3
  export * from "./getTraces.js";
4
4
  export * from "./logTraceAnnotations.js";
5
+ export * from "./transferTraces.js";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/traces/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/traces/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,56 @@
1
+ import type { ClientFn } from "../types/core.js";
2
+ /**
3
+ * Parameters for moving traces to another project.
4
+ */
5
+ export interface TransferTracesParams extends ClientFn {
6
+ /**
7
+ * Trace GlobalIDs or OpenTelemetry trace IDs to move. All traces must
8
+ * currently belong to the same source project.
9
+ */
10
+ traceIdentifiers: string[];
11
+ /**
12
+ * The destination project name or GlobalID.
13
+ */
14
+ destinationProjectIdentifier: string;
15
+ }
16
+ /**
17
+ * The result of moving traces to another project.
18
+ */
19
+ export interface TransferTracesResult {
20
+ /** The number of distinct traces moved. */
21
+ transferredTraceCount: number;
22
+ /** The destination project's GlobalID. */
23
+ destinationProjectId: string;
24
+ }
25
+ /**
26
+ * Move traces from one project to another.
27
+ *
28
+ * This operation re-parents the traces; it does not copy them. After the move,
29
+ * the traces no longer appear in their original project. Every trace must
30
+ * currently belong to the same source project.
31
+ *
32
+ * @param params - The parameters for moving traces.
33
+ * @param params.traceIdentifiers - Trace GlobalIDs or OpenTelemetry trace IDs to move.
34
+ * @param params.destinationProjectIdentifier - The destination project name or GlobalID.
35
+ * @returns The number of traces moved and the destination project's GlobalID.
36
+ * @throws {RangeError} If no trace identifiers are provided.
37
+ * @throws {HttpError} If a trace or destination project is missing, the traces
38
+ * belong to multiple source projects, or the transfer otherwise fails.
39
+ *
40
+ * @requires Phoenix server >= 20.4.0
41
+ *
42
+ * @example
43
+ * ```ts
44
+ * import { transferTraces } from "@arizeai/phoenix-client/traces";
45
+ *
46
+ * const result = await transferTraces({
47
+ * traceIdentifiers: ["8f3a...", "VHJhY2U6Mg=="],
48
+ * destinationProjectIdentifier: "production",
49
+ * });
50
+ *
51
+ * console.log(result.transferredTraceCount);
52
+ * console.log(result.destinationProjectId);
53
+ * ```
54
+ */
55
+ export declare function transferTraces({ client: _client, traceIdentifiers, destinationProjectIdentifier, }: TransferTracesParams): Promise<TransferTracesResult>;
56
+ //# sourceMappingURL=transferTraces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferTraces.d.ts","sourceRoot":"","sources":["../../../src/traces/transferTraces.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG9C;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,QAAQ;IACpD;;;OAGG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B;;OAEG;IACH,4BAA4B,EAAE,MAAM,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2CAA2C;IAC3C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,0CAA0C;IAC1C,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,cAAc,CAAC,EACnC,MAAM,EAAE,OAAO,EACf,gBAAgB,EAChB,4BAA4B,GAC7B,EAAE,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAwBtD"}
@@ -0,0 +1,56 @@
1
+ import { createClient } from "../client.js";
2
+ import { TRANSFER_TRACES } from "../constants/serverRequirements.js";
3
+ import { ensureServerCapability } from "../utils/serverVersionUtils.js";
4
+ /**
5
+ * Move traces from one project to another.
6
+ *
7
+ * This operation re-parents the traces; it does not copy them. After the move,
8
+ * the traces no longer appear in their original project. Every trace must
9
+ * currently belong to the same source project.
10
+ *
11
+ * @param params - The parameters for moving traces.
12
+ * @param params.traceIdentifiers - Trace GlobalIDs or OpenTelemetry trace IDs to move.
13
+ * @param params.destinationProjectIdentifier - The destination project name or GlobalID.
14
+ * @returns The number of traces moved and the destination project's GlobalID.
15
+ * @throws {RangeError} If no trace identifiers are provided.
16
+ * @throws {HttpError} If a trace or destination project is missing, the traces
17
+ * belong to multiple source projects, or the transfer otherwise fails.
18
+ *
19
+ * @requires Phoenix server >= 20.4.0
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import { transferTraces } from "@arizeai/phoenix-client/traces";
24
+ *
25
+ * const result = await transferTraces({
26
+ * traceIdentifiers: ["8f3a...", "VHJhY2U6Mg=="],
27
+ * destinationProjectIdentifier: "production",
28
+ * });
29
+ *
30
+ * console.log(result.transferredTraceCount);
31
+ * console.log(result.destinationProjectId);
32
+ * ```
33
+ */
34
+ export async function transferTraces({ client: _client, traceIdentifiers, destinationProjectIdentifier, }) {
35
+ if (traceIdentifiers.length === 0) {
36
+ throw new RangeError("At least one trace identifier is required");
37
+ }
38
+ const client = _client ?? createClient();
39
+ await ensureServerCapability({ client, requirement: TRANSFER_TRACES });
40
+ const { data, error } = await client.POST("/v1/traces/transfer", {
41
+ body: {
42
+ trace_identifiers: traceIdentifiers,
43
+ destination_project_identifier: destinationProjectIdentifier,
44
+ },
45
+ });
46
+ if (error)
47
+ throw error;
48
+ if (!data?.data) {
49
+ throw new Error("Failed to transfer traces: no data returned");
50
+ }
51
+ return {
52
+ transferredTraceCount: data.data.transferred_trace_count,
53
+ destinationProjectId: data.data.destination_project_id,
54
+ };
55
+ }
56
+ //# sourceMappingURL=transferTraces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferTraces.js","sourceRoot":"","sources":["../../../src/traces/transferTraces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AA2BrE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EACnC,MAAM,EAAE,OAAO,EACf,gBAAgB,EAChB,4BAA4B,GACP;IACrB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,UAAU,CAAC,2CAA2C,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC;IACzC,MAAM,sBAAsB,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;IAEvE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;QAC/D,IAAI,EAAE;YACJ,iBAAiB,EAAE,gBAAgB;YACnC,8BAA8B,EAAE,4BAA4B;SAC7D;KACF,CAAC,CAAC;IAEH,IAAI,KAAK;QAAE,MAAM,KAAK,CAAC;IACvB,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IAED,OAAO;QACL,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,uBAAuB;QACxD,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,sBAAsB;KACvD,CAAC;AACJ,CAAC"}