@uipath/apms-tool 1.199.0-preview.106 → 1.199.0-preview.108

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 (3) hide show
  1. package/dist/index.js +47 -15
  2. package/dist/tool.js +47 -15
  3. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -21247,7 +21247,7 @@ var {
21247
21247
  var package_default = {
21248
21248
  name: "@uipath/apms-tool",
21249
21249
  license: "MIT",
21250
- version: "1.199.0-preview.106",
21250
+ version: "1.199.0-preview.108",
21251
21251
  description: "CLI plugin for the UiPath Access Policy Management Service.",
21252
21252
  private: false,
21253
21253
  repository: {
@@ -30035,8 +30035,18 @@ function getInboundTraceContext() {
30035
30035
 
30036
30036
  // ../../common/src/telemetry/session-id.ts
30037
30037
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
30038
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
30039
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
30038
+ var SESSION_ID_MAX_LENGTH = 64;
30039
+ var RANDOM_SESSION_ID_LENGTH = 32;
30040
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
30041
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
30042
+ var INHERITED_SESSION_SOURCES = [
30043
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
30044
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
30045
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
30046
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
30047
+ { envVar: "WT_SESSION", source: "terminal" }
30048
+ ];
30049
+ var telemetrySessionSlot = singleton("TelemetrySession");
30040
30050
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
30041
30051
  function getProcessEnv2() {
30042
30052
  return globalThis.process?.env;
@@ -30045,14 +30055,42 @@ function normalizeSessionId(value) {
30045
30055
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
30046
30056
  return;
30047
30057
  }
30048
- const trimmed = String(value).trim();
30049
- return trimmed || undefined;
30058
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
30059
+ return cleaned || undefined;
30050
30060
  }
30051
30061
  function getConfiguredTelemetrySessionId() {
30052
30062
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
30053
30063
  }
30054
- function resolveTelemetrySessionId(existingSessionId) {
30055
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
30064
+ function getInheritedSession(env) {
30065
+ for (const candidate of INHERITED_SESSION_SOURCES) {
30066
+ const handle = normalizeSessionId(env[candidate.envVar]);
30067
+ if (handle) {
30068
+ return { id: handle, source: candidate.source };
30069
+ }
30070
+ }
30071
+ return;
30072
+ }
30073
+ function generateRandomSession() {
30074
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
30075
+ crypto.getRandomValues(bytes);
30076
+ let hex = "";
30077
+ for (const byte of bytes) {
30078
+ hex += byte.toString(16).padStart(2, "0");
30079
+ }
30080
+ return { id: hex, source: "random" };
30081
+ }
30082
+ function resolveTelemetrySession() {
30083
+ const existing = telemetrySessionSlot.get();
30084
+ if (existing) {
30085
+ return existing;
30086
+ }
30087
+ const declaredHandle = getConfiguredTelemetrySessionId();
30088
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
30089
+ telemetrySessionSlot.set(resolved);
30090
+ return resolved;
30091
+ }
30092
+ function getTelemetrySessionSource() {
30093
+ return resolveTelemetrySession().source;
30056
30094
  }
30057
30095
  function getTelemetryOperationId() {
30058
30096
  const existing = telemetryOperationIdSlot.get();
@@ -30323,24 +30361,18 @@ class TelemetryService {
30323
30361
  }
30324
30362
  enrichPropertiesWithContext(properties, context) {
30325
30363
  const globalProperties = getGlobalTelemetryProperties();
30326
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
30327
- const sessionId = resolveTelemetrySessionId(existingSessionId);
30328
30364
  const enriched = {
30329
30365
  ...getExecutionContextTelemetryProperties(),
30330
30366
  ...globalProperties,
30331
30367
  ...this.defaultProperties,
30332
30368
  ...redactProperties(properties ?? {}),
30369
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
30333
30370
  ...context ? {
30334
30371
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
30335
30372
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
30336
30373
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
30337
30374
  } : {}
30338
30375
  };
30339
- if (sessionId === undefined) {
30340
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
30341
- } else {
30342
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
30343
- }
30344
30376
  return enriched;
30345
30377
  }
30346
30378
  generateId() {
@@ -32395,4 +32427,4 @@ program2.name(metadata.commandPrefix).description(metadata.description).version(
32395
32427
  await registerCommands(program2);
32396
32428
  program2.parse(process.argv);
32397
32429
 
32398
- //# debugId=2811D1AA3554572F64756E2164756E21
32430
+ //# debugId=B63DC653FD18ECD064756E2164756E21
package/dist/tool.js CHANGED
@@ -19137,7 +19137,7 @@ var init_server = __esm(() => {
19137
19137
  var package_default = {
19138
19138
  name: "@uipath/apms-tool",
19139
19139
  license: "MIT",
19140
- version: "1.199.0-preview.106",
19140
+ version: "1.199.0-preview.108",
19141
19141
  description: "CLI plugin for the UiPath Access Policy Management Service.",
19142
19142
  private: false,
19143
19143
  repository: {
@@ -27926,8 +27926,18 @@ function getInboundTraceContext() {
27926
27926
 
27927
27927
  // ../../common/src/telemetry/session-id.ts
27928
27928
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
27929
- var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
27930
- var telemetrySessionIdSlot = singleton("TelemetrySessionId");
27929
+ var SESSION_ID_MAX_LENGTH = 64;
27930
+ var RANDOM_SESSION_ID_LENGTH = 32;
27931
+ var TELEMETRY_SESSION_SOURCE_PROPERTY = "session_id_source";
27932
+ var CONTROL_CHARACTERS = /\p{Cc}/gu;
27933
+ var INHERITED_SESSION_SOURCES = [
27934
+ { envVar: "CLAUDE_CODE_SESSION_ID", source: "claude-code" },
27935
+ { envVar: "CODEX_THREAD_ID", source: "codex" },
27936
+ { envVar: "ANTIGRAVITY_TRAJECTORY_ID", source: "antigravity" },
27937
+ { envVar: "TERM_SESSION_ID", source: "terminal" },
27938
+ { envVar: "WT_SESSION", source: "terminal" }
27939
+ ];
27940
+ var telemetrySessionSlot = singleton("TelemetrySession");
27931
27941
  var telemetryOperationIdSlot = singleton("TelemetryOperationId");
27932
27942
  function getProcessEnv2() {
27933
27943
  return globalThis.process?.env;
@@ -27936,14 +27946,42 @@ function normalizeSessionId(value) {
27936
27946
  if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
27937
27947
  return;
27938
27948
  }
27939
- const trimmed = String(value).trim();
27940
- return trimmed || undefined;
27949
+ const cleaned = String(value).replace(CONTROL_CHARACTERS, "").trim().slice(0, SESSION_ID_MAX_LENGTH);
27950
+ return cleaned || undefined;
27941
27951
  }
27942
27952
  function getConfiguredTelemetrySessionId() {
27943
27953
  return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
27944
27954
  }
27945
- function resolveTelemetrySessionId(existingSessionId) {
27946
- return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
27955
+ function getInheritedSession(env) {
27956
+ for (const candidate of INHERITED_SESSION_SOURCES) {
27957
+ const handle = normalizeSessionId(env[candidate.envVar]);
27958
+ if (handle) {
27959
+ return { id: handle, source: candidate.source };
27960
+ }
27961
+ }
27962
+ return;
27963
+ }
27964
+ function generateRandomSession() {
27965
+ const bytes = new Uint8Array(RANDOM_SESSION_ID_LENGTH / 2);
27966
+ crypto.getRandomValues(bytes);
27967
+ let hex = "";
27968
+ for (const byte of bytes) {
27969
+ hex += byte.toString(16).padStart(2, "0");
27970
+ }
27971
+ return { id: hex, source: "random" };
27972
+ }
27973
+ function resolveTelemetrySession() {
27974
+ const existing = telemetrySessionSlot.get();
27975
+ if (existing) {
27976
+ return existing;
27977
+ }
27978
+ const declaredHandle = getConfiguredTelemetrySessionId();
27979
+ const resolved = declaredHandle ? { id: declaredHandle, source: "declared" } : getInheritedSession(getProcessEnv2() ?? {}) ?? generateRandomSession();
27980
+ telemetrySessionSlot.set(resolved);
27981
+ return resolved;
27982
+ }
27983
+ function getTelemetrySessionSource() {
27984
+ return resolveTelemetrySession().source;
27947
27985
  }
27948
27986
  function getTelemetryOperationId() {
27949
27987
  const existing = telemetryOperationIdSlot.get();
@@ -28214,24 +28252,18 @@ class TelemetryService {
28214
28252
  }
28215
28253
  enrichPropertiesWithContext(properties, context) {
28216
28254
  const globalProperties = getGlobalTelemetryProperties();
28217
- const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
28218
- const sessionId = resolveTelemetrySessionId(existingSessionId);
28219
28255
  const enriched = {
28220
28256
  ...getExecutionContextTelemetryProperties(),
28221
28257
  ...globalProperties,
28222
28258
  ...this.defaultProperties,
28223
28259
  ...redactProperties(properties ?? {}),
28260
+ [TELEMETRY_SESSION_SOURCE_PROPERTY]: getTelemetrySessionSource(),
28224
28261
  ...context ? {
28225
28262
  [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
28226
28263
  ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
28227
28264
  [TELEMETRY_SPAN_ID_PROPERTY]: context.id
28228
28265
  } : {}
28229
28266
  };
28230
- if (sessionId === undefined) {
28231
- delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
28232
- } else {
28233
- enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
28234
- }
28235
28267
  return enriched;
28236
28268
  }
28237
28269
  generateId() {
@@ -30292,4 +30324,4 @@ export {
30292
30324
  metadata
30293
30325
  };
30294
30326
 
30295
- //# debugId=F761F2B0747E3CE264756E2164756E21
30327
+ //# debugId=810241763CA6556964756E2164756E21
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@uipath/apms-tool",
3
3
  "license": "MIT",
4
- "version": "1.199.0-preview.106",
4
+ "version": "1.199.0-preview.108",
5
5
  "description": "CLI plugin for the UiPath Access Policy Management Service.",
6
6
  "private": false,
7
7
  "repository": {
@@ -26,5 +26,5 @@
26
26
  "files": [
27
27
  "dist"
28
28
  ],
29
- "gitHead": "cb01f256c2c4f1a1a5d014ffb97e506bac709e45"
29
+ "gitHead": "171f68daab68809916e8df10ea198c259f688ede"
30
30
  }