@uipath/gov-tool 1.198.0-preview.95 → 1.198.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 (2) hide show
  1. package/dist/tool.js +257 -150
  2. package/package.json +2 -2
package/dist/tool.js CHANGED
@@ -21230,7 +21230,7 @@ var require_commander = __commonJS((exports) => {
21230
21230
  var package_default = {
21231
21231
  name: "@uipath/gov-tool",
21232
21232
  license: "MIT",
21233
- version: "1.198.0-preview.95",
21233
+ version: "1.198.0",
21234
21234
  description: "Manage UiPath governance — AOps policies, Access policies, and compliance packs.",
21235
21235
  private: false,
21236
21236
  repository: {
@@ -29604,11 +29604,36 @@ class NodeContextStorage {
29604
29604
  return this.storage.getStore();
29605
29605
  }
29606
29606
  }
29607
+ // ../../common/src/telemetry/trace-context.ts
29608
+ var TELEMETRY_TRACEPARENT_ENV = "TRACEPARENT";
29609
+ var TRACEPARENT_PATTERN = /^00-([0-9a-f]{32})-([0-9a-f]{16})-[0-9a-f]{2}$/;
29610
+ function getProcessEnv() {
29611
+ return globalThis.process?.env;
29612
+ }
29613
+ function parseInboundTraceparent(value) {
29614
+ if (!value) {
29615
+ return;
29616
+ }
29617
+ const match = TRACEPARENT_PATTERN.exec(value.trim().toLowerCase());
29618
+ if (!match) {
29619
+ return;
29620
+ }
29621
+ const [, traceId, parentSpanId] = match;
29622
+ if (/^0+$/.test(traceId) || /^0+$/.test(parentSpanId)) {
29623
+ return;
29624
+ }
29625
+ return { traceId, parentSpanId };
29626
+ }
29627
+ function getInboundTraceContext() {
29628
+ return parseInboundTraceparent(getProcessEnv()?.[TELEMETRY_TRACEPARENT_ENV]);
29629
+ }
29630
+
29607
29631
  // ../../common/src/telemetry/session-id.ts
29608
29632
  var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
29609
29633
  var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
29610
29634
  var telemetrySessionIdSlot = singleton("TelemetrySessionId");
29611
- function getProcessEnv() {
29635
+ var telemetryOperationIdSlot = singleton("TelemetryOperationId");
29636
+ function getProcessEnv2() {
29612
29637
  return globalThis.process?.env;
29613
29638
  }
29614
29639
  function normalizeSessionId(value) {
@@ -29619,12 +29644,159 @@ function normalizeSessionId(value) {
29619
29644
  return trimmed || undefined;
29620
29645
  }
29621
29646
  function getConfiguredTelemetrySessionId() {
29622
- return normalizeSessionId(getProcessEnv()?.[TELEMETRY_SESSION_ID_ENV]);
29647
+ return normalizeSessionId(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV]);
29623
29648
  }
29624
29649
  function resolveTelemetrySessionId(existingSessionId) {
29625
29650
  return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
29626
29651
  }
29652
+ function getTelemetryOperationId() {
29653
+ const existing = telemetryOperationIdSlot.get();
29654
+ if (existing) {
29655
+ return existing;
29656
+ }
29657
+ const inboundTraceId = getInboundTraceContext()?.traceId;
29658
+ const generated = inboundTraceId ?? crypto.randomUUID().replaceAll("-", "");
29659
+ telemetryOperationIdSlot.set(generated);
29660
+ return generated;
29661
+ }
29662
+ // ../../common/src/telemetry/pii-redactor.ts
29663
+ var REDACTED = "[REDACTED]";
29664
+ var MAX_VALUE_LENGTH = 200;
29665
+ var SENSITIVE_NAME_TOKENS = new Set([
29666
+ "token",
29667
+ "tokens",
29668
+ "secret",
29669
+ "secrets",
29670
+ "password",
29671
+ "passwords",
29672
+ "pwd",
29673
+ "credential",
29674
+ "credentials",
29675
+ "auth",
29676
+ "authentication",
29677
+ "authorization",
29678
+ "authority",
29679
+ "cert",
29680
+ "certificate",
29681
+ "certificates"
29682
+ ]);
29683
+ var SENSITIVE_KEY_PREFIXES = new Set([
29684
+ "api",
29685
+ "access",
29686
+ "client",
29687
+ "private",
29688
+ "public",
29689
+ "signing",
29690
+ "encryption",
29691
+ "session",
29692
+ "master",
29693
+ "shared",
29694
+ "root",
29695
+ "ssh",
29696
+ "rsa",
29697
+ "aes",
29698
+ "hmac",
29699
+ "oauth"
29700
+ ]);
29701
+ var UUID_PATTERN = /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi;
29702
+ var EMAIL_PATTERN = /\b[^\s@]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\b/g;
29703
+ var JWT_PATTERN = /\beyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+/g;
29704
+ var LONG_TOKEN_PATTERN = /\b[A-Za-z0-9_-]{40,}\b/g;
29705
+ var USER_HOME_PATTERN = /([/\\])(Users|home)([/\\])([^/\\]+)/gi;
29706
+ var URL_PATTERN = /\bhttps?:\/\/[^\s,;]+/gi;
29707
+ var URL_TRAILING_PUNCT = /[.,;:!?)\]}>'"]+$/;
29708
+ function shortHash(input) {
29709
+ let hash = 2166136261;
29710
+ for (let i = 0;i < input.length; i++) {
29711
+ hash ^= input.charCodeAt(i);
29712
+ hash = Math.imul(hash, 16777619);
29713
+ }
29714
+ return (hash >>> 0).toString(16).padStart(8, "0");
29715
+ }
29716
+ function redactUrl(raw) {
29717
+ try {
29718
+ const url = new URL(raw);
29719
+ return `${url.protocol}//${url.host}`;
29720
+ } catch {
29721
+ return `url#${shortHash(raw)}`;
29722
+ }
29723
+ }
29724
+ function redactValueDetectors(value) {
29725
+ let out = value;
29726
+ out = out.replace(JWT_PATTERN, () => REDACTED);
29727
+ out = out.replace(URL_PATTERN, (match) => {
29728
+ const trailing = match.match(URL_TRAILING_PUNCT)?.[0] ?? "";
29729
+ const core2 = trailing ? match.slice(0, -trailing.length) : match;
29730
+ return `${redactUrl(core2)}${trailing}`;
29731
+ });
29732
+ out = out.replace(USER_HOME_PATTERN, (_match, sep1, folder, sep2) => `${sep1}${folder}${sep2}<user>`);
29733
+ out = out.replace(EMAIL_PATTERN, (match) => `email#${shortHash(match)}`);
29734
+ out = out.replace(UUID_PATTERN, (match) => `uuid#${shortHash(match)}`);
29735
+ out = out.replace(LONG_TOKEN_PATTERN, () => REDACTED);
29736
+ if (out.length > MAX_VALUE_LENGTH) {
29737
+ out = `${out.slice(0, MAX_VALUE_LENGTH)}…`;
29738
+ }
29739
+ return out;
29740
+ }
29741
+ function redactValue(value) {
29742
+ return redactValueDetectors(value);
29743
+ }
29744
+ function redactError(error) {
29745
+ const safe = new Error(redactValueDetectors(error.message ?? ""));
29746
+ safe.name = error.name;
29747
+ safe.stack = typeof error.stack === "string" ? redactValueDetectors(error.stack) : undefined;
29748
+ return safe;
29749
+ }
29750
+ function nameTokens(name) {
29751
+ return name.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g, "$1 $2").split(/[\s._-]+/).map((t) => t.toLowerCase()).filter(Boolean);
29752
+ }
29753
+ function isSensitiveName(name) {
29754
+ const tokens = nameTokens(name);
29755
+ for (let i = 0;i < tokens.length; i++) {
29756
+ const token = tokens[i];
29757
+ if (SENSITIVE_NAME_TOKENS.has(token)) {
29758
+ return true;
29759
+ }
29760
+ if (token === "key" || token === "keys") {
29761
+ const prev = tokens[i - 1];
29762
+ if (prev && SENSITIVE_KEY_PREFIXES.has(prev)) {
29763
+ return true;
29764
+ }
29765
+ }
29766
+ }
29767
+ return false;
29768
+ }
29769
+ function redactProperty(name, value) {
29770
+ if (value === undefined || value === null) {
29771
+ return;
29772
+ }
29773
+ if (isSensitiveName(name)) {
29774
+ return REDACTED;
29775
+ }
29776
+ if (typeof value === "boolean" || typeof value === "number") {
29777
+ return value;
29778
+ }
29779
+ if (typeof value !== "string") {
29780
+ return "[OBJECT]";
29781
+ }
29782
+ return redactValueDetectors(value);
29783
+ }
29784
+ function redactProperties(properties) {
29785
+ const out = {};
29786
+ for (const [name, value] of Object.entries(properties)) {
29787
+ const redacted = redactProperty(name, value);
29788
+ if (redacted !== undefined) {
29789
+ out[name] = redacted;
29790
+ }
29791
+ }
29792
+ return out;
29793
+ }
29794
+
29627
29795
  // ../../common/src/telemetry/telemetry-service.ts
29796
+ var TELEMETRY_OPERATION_ID_PROPERTY = "uip.trace.operation_id";
29797
+ var TELEMETRY_PARENT_ID_PROPERTY = "uip.trace.parent_id";
29798
+ var TELEMETRY_SPAN_ID_PROPERTY = "uip.trace.span_id";
29799
+
29628
29800
  class TelemetryService {
29629
29801
  telemetryProvider;
29630
29802
  contextStorage;
@@ -29651,11 +29823,15 @@ class TelemetryService {
29651
29823
  trackException(error, properties) {
29652
29824
  const context = this.getCurrentContext();
29653
29825
  const enrichedProperties = this.enrichPropertiesWithContext(properties, context);
29654
- this.telemetryProvider.trackException(error, enrichedProperties);
29826
+ this.telemetryProvider.trackException(redactError(error), enrichedProperties);
29655
29827
  }
29656
29828
  async trackRequest(name, fn, properties) {
29829
+ const parentContext = this.getCurrentContext();
29830
+ const operationId = parentContext?.operationId ?? this.operationId ?? getTelemetryOperationId();
29831
+ const parentId = parentContext ? parentContext.id : this.inboundParentIdFor(operationId);
29657
29832
  const context = {
29658
- operationId: this.operationId ?? this.generateId(),
29833
+ operationId,
29834
+ ...parentId !== undefined ? { parentId } : {},
29659
29835
  id: this.generateId()
29660
29836
  };
29661
29837
  const startTime = performance.now();
@@ -29673,6 +29849,45 @@ class TelemetryService {
29673
29849
  throw error;
29674
29850
  }
29675
29851
  }
29852
+ trackRequestResult(name, durationMs, success, properties, context) {
29853
+ const requestContext = context ?? {
29854
+ operationId: this.operationId ?? getTelemetryOperationId(),
29855
+ id: this.generateId()
29856
+ };
29857
+ const enrichedProperties = this.enrichPropertiesWithContext(properties, requestContext);
29858
+ this.telemetryProvider.trackRequest(name, durationMs, success, enrichedProperties);
29859
+ }
29860
+ createRequestContext() {
29861
+ const operationId = this.operationId ?? getTelemetryOperationId();
29862
+ const parentId = this.inboundParentIdFor(operationId);
29863
+ return {
29864
+ operationId,
29865
+ ...parentId !== undefined ? { parentId } : {},
29866
+ id: this.generateId()
29867
+ };
29868
+ }
29869
+ inboundParentIdFor(operationId) {
29870
+ const inbound = getInboundTraceContext();
29871
+ return inbound && inbound.traceId === operationId ? inbound.parentSpanId : undefined;
29872
+ }
29873
+ runWithContext(context, fn) {
29874
+ return this.contextStorage.run(context, fn);
29875
+ }
29876
+ createDependencyContext() {
29877
+ const parentContext = this.getCurrentContext();
29878
+ if (!parentContext) {
29879
+ return;
29880
+ }
29881
+ return {
29882
+ operationId: parentContext.operationId,
29883
+ parentId: parentContext.id,
29884
+ id: this.generateId()
29885
+ };
29886
+ }
29887
+ trackDependencyResult(name, type2, durationMs, success, properties, context, resultCode) {
29888
+ const enrichedProperties = this.enrichPropertiesWithContext(properties, context);
29889
+ this.telemetryProvider.trackDependency(redactValue(name), type2, durationMs, success, enrichedProperties, resultCode);
29890
+ }
29676
29891
  async trackDependencyOperation(name, type2, fn, properties) {
29677
29892
  const parentContext = this.getCurrentContext();
29678
29893
  if (!parentContext) {
@@ -29709,8 +29924,12 @@ class TelemetryService {
29709
29924
  ...getExecutionContextTelemetryProperties(),
29710
29925
  ...globalProperties,
29711
29926
  ...this.defaultProperties,
29712
- ...properties,
29713
- ...context
29927
+ ...redactProperties(properties ?? {}),
29928
+ ...context ? {
29929
+ [TELEMETRY_OPERATION_ID_PROPERTY]: context.operationId,
29930
+ ...context.parentId !== undefined ? { [TELEMETRY_PARENT_ID_PROPERTY]: context.parentId } : {},
29931
+ [TELEMETRY_SPAN_ID_PROPERTY]: context.id
29932
+ } : {}
29714
29933
  };
29715
29934
  if (sessionId === undefined) {
29716
29935
  delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
@@ -29720,7 +29939,16 @@ class TelemetryService {
29720
29939
  return enriched;
29721
29940
  }
29722
29941
  generateId() {
29723
- return crypto.randomUUID().replaceAll("-", "");
29942
+ const bytes = new Uint8Array(8);
29943
+ let hex = "";
29944
+ do {
29945
+ crypto.getRandomValues(bytes);
29946
+ hex = "";
29947
+ for (const byte of bytes) {
29948
+ hex += byte.toString(16).padStart(2, "0");
29949
+ }
29950
+ } while (/^0+$/.test(hex));
29951
+ return hex;
29724
29952
  }
29725
29953
  }
29726
29954
  // ../../common/src/telemetry/node-appinsights-telemetry-provider.ts
@@ -30422,134 +30650,11 @@ function buildCommandTelemetryAttribution(commandPath, skillSource) {
30422
30650
  };
30423
30651
  }
30424
30652
 
30425
- // ../../common/src/telemetry/pii-redactor.ts
30426
- var REDACTED = "[REDACTED]";
30427
- var MAX_VALUE_LENGTH = 200;
30428
- var SENSITIVE_NAME_TOKENS = new Set([
30429
- "token",
30430
- "tokens",
30431
- "secret",
30432
- "secrets",
30433
- "password",
30434
- "passwords",
30435
- "pwd",
30436
- "credential",
30437
- "credentials",
30438
- "auth",
30439
- "authentication",
30440
- "authorization",
30441
- "authority",
30442
- "cert",
30443
- "certificate",
30444
- "certificates"
30445
- ]);
30446
- var SENSITIVE_KEY_PREFIXES = new Set([
30447
- "api",
30448
- "access",
30449
- "client",
30450
- "private",
30451
- "public",
30452
- "signing",
30453
- "encryption",
30454
- "session",
30455
- "master",
30456
- "shared",
30457
- "root",
30458
- "ssh",
30459
- "rsa",
30460
- "aes",
30461
- "hmac",
30462
- "oauth"
30463
- ]);
30464
- var UUID_PATTERN = /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi;
30465
- var EMAIL_PATTERN = /\b[^\s@]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}\b/g;
30466
- var JWT_PATTERN = /\beyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+/g;
30467
- var LONG_TOKEN_PATTERN = /\b[A-Za-z0-9_-]{40,}\b/g;
30468
- var USER_HOME_PATTERN = /([/\\])(Users|home)([/\\])([^/\\]+)/gi;
30469
- var URL_PATTERN = /\bhttps?:\/\/[^\s,;]+/gi;
30470
- var URL_TRAILING_PUNCT = /[.,;:!?)\]}>'"]+$/;
30471
- function shortHash(input) {
30472
- let hash = 2166136261;
30473
- for (let i = 0;i < input.length; i++) {
30474
- hash ^= input.charCodeAt(i);
30475
- hash = Math.imul(hash, 16777619);
30476
- }
30477
- return (hash >>> 0).toString(16).padStart(8, "0");
30478
- }
30479
- function redactUrl(raw) {
30480
- try {
30481
- const url = new URL(raw);
30482
- return `${url.protocol}//${url.host}`;
30483
- } catch {
30484
- return `url#${shortHash(raw)}`;
30485
- }
30486
- }
30487
- function redactValueDetectors(value) {
30488
- let out = value;
30489
- out = out.replace(JWT_PATTERN, () => REDACTED);
30490
- out = out.replace(URL_PATTERN, (match) => {
30491
- const trailing = match.match(URL_TRAILING_PUNCT)?.[0] ?? "";
30492
- const core2 = trailing ? match.slice(0, -trailing.length) : match;
30493
- return `${redactUrl(core2)}${trailing}`;
30494
- });
30495
- out = out.replace(USER_HOME_PATTERN, (_match, sep1, folder, sep2) => `${sep1}${folder}${sep2}<user>`);
30496
- out = out.replace(EMAIL_PATTERN, (match) => `email#${shortHash(match)}`);
30497
- out = out.replace(UUID_PATTERN, (match) => `uuid#${shortHash(match)}`);
30498
- out = out.replace(LONG_TOKEN_PATTERN, () => REDACTED);
30499
- if (out.length > MAX_VALUE_LENGTH) {
30500
- out = `${out.slice(0, MAX_VALUE_LENGTH)}…`;
30501
- }
30502
- return out;
30503
- }
30504
- function nameTokens(name) {
30505
- return name.replace(/([a-z0-9])([A-Z])/g, "$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g, "$1 $2").split(/[\s_-]+/).map((t) => t.toLowerCase()).filter(Boolean);
30506
- }
30507
- function isSensitiveName(name) {
30508
- const tokens = nameTokens(name);
30509
- for (let i = 0;i < tokens.length; i++) {
30510
- const token = tokens[i];
30511
- if (SENSITIVE_NAME_TOKENS.has(token)) {
30512
- return true;
30513
- }
30514
- if (token === "key" || token === "keys") {
30515
- const prev = tokens[i - 1];
30516
- if (prev && SENSITIVE_KEY_PREFIXES.has(prev)) {
30517
- return true;
30518
- }
30519
- }
30520
- }
30521
- return false;
30522
- }
30523
- function redactProperty(name, value) {
30524
- if (value === undefined || value === null) {
30525
- return;
30526
- }
30527
- if (isSensitiveName(name)) {
30528
- return REDACTED;
30529
- }
30530
- if (typeof value === "boolean" || typeof value === "number") {
30531
- return value;
30532
- }
30533
- if (typeof value !== "string") {
30534
- return "[OBJECT]";
30535
- }
30536
- return redactValueDetectors(value);
30537
- }
30538
- function redactProperties(properties) {
30539
- const out = {};
30540
- for (const [name, value] of Object.entries(properties)) {
30541
- const redacted = redactProperty(name, value);
30542
- if (redacted !== undefined) {
30543
- out[name] = redacted;
30544
- }
30545
- }
30546
- return out;
30547
- }
30548
-
30549
30653
  // ../../common/src/trackedAction.ts
30550
30654
  var pollSignalSlot = singleton("PollSignal");
30551
30655
  var cliErrorCodeValues = new Set(CLI_ERROR_CODES);
30552
30656
  var retryHintValues = new Set(RETRY_HINTS);
30657
+ var TELEMETRY_COMMAND_ARG_PREFIX = "uip.cmd.arg.";
30553
30658
  var processContext = {
30554
30659
  exit: (code) => {
30555
30660
  process.exitCode = code;
@@ -30560,22 +30665,18 @@ var processContext = {
30560
30665
  };
30561
30666
  function extractCommandParams(cmd) {
30562
30667
  const params = {};
30668
+ const add2 = (name, value) => {
30669
+ if (name && value !== undefined) {
30670
+ params[`${TELEMETRY_COMMAND_ARG_PREFIX}${name}`] = value;
30671
+ }
30672
+ };
30563
30673
  const registered = cmd.registeredArguments ?? [];
30564
30674
  const processed = cmd.processedArgs ?? [];
30565
30675
  for (let i = 0;i < registered.length; i++) {
30566
- const value = processed[i];
30567
- if (value === undefined) {
30568
- continue;
30569
- }
30570
- const name = registered[i].name();
30571
- if (name) {
30572
- params[name] = value;
30573
- }
30676
+ add2(registered[i].name(), processed[i]);
30574
30677
  }
30575
30678
  for (const [key, value] of Object.entries(cmd.opts())) {
30576
- if (value !== undefined) {
30577
- params[key] = value;
30578
- }
30679
+ add2(key, value);
30579
30680
  }
30580
30681
  return params;
30581
30682
  }
@@ -30618,11 +30719,12 @@ Command.prototype.trackedAction = function(context, fn, properties) {
30618
30719
  return this.action(async (...args) => {
30619
30720
  const telemetryName = deriveCommandPath(command);
30620
30721
  const props = typeof properties === "function" ? properties(...args) : properties;
30722
+ const requestContext = telemetry.createRequestContext();
30621
30723
  const startTime = performance.now();
30622
30724
  let errorMessage2;
30623
30725
  let fallbackExitCode = EXIT_CODES.Success;
30624
30726
  clearRecordedCommandFailureTelemetry();
30625
- const [error] = await catchError2(fn(...args));
30727
+ const [error] = await catchError2(telemetry.runWithContext(requestContext, () => fn(...args)));
30626
30728
  if (error) {
30627
30729
  errorMessage2 = error instanceof Error ? error.message : String(error);
30628
30730
  logger.debug(`[trackedAction] ${telemetryName} failed: ${errorMessage2}`);
@@ -30658,16 +30760,21 @@ Command.prototype.trackedAction = function(context, fn, properties) {
30658
30760
  recordedFailure,
30659
30761
  pollSignal: context.pollSignal
30660
30762
  });
30661
- telemetry.trackEvent(telemetryName, redactProperties({
30662
- ...extractCommandParams(command),
30763
+ const commandParams = extractCommandParams(command);
30764
+ if (props) {
30765
+ for (const key of Object.keys(props)) {
30766
+ delete commandParams[`${TELEMETRY_COMMAND_ARG_PREFIX}${key}`];
30767
+ }
30768
+ }
30769
+ const baseProperties = redactProperties({
30770
+ ...commandParams,
30663
30771
  ...props,
30664
30772
  ...buildCommandTelemetryAttribution(telemetryName, process.env.UIPATH_SKILL),
30665
30773
  command: "true",
30666
- duration: String(durationMs),
30667
- success: String(success),
30668
30774
  ...terminalTelemetry,
30669
30775
  ...errorMessage2 ? { errorMessage: errorMessage2 } : {}
30670
- }));
30776
+ });
30777
+ telemetry.trackRequestResult(telemetryName, durationMs, success, baseProperties, requestContext);
30671
30778
  });
30672
30779
  };
30673
30780
  // ../../common/src/console-guard.ts
@@ -59309,4 +59416,4 @@ export {
59309
59416
  metadata
59310
59417
  };
59311
59418
 
59312
- //# debugId=1F0C4A41466AA77964756E2164756E21
59419
+ //# debugId=5ABF940933D9DB6864756E2164756E21
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@uipath/gov-tool",
3
3
  "license": "MIT",
4
- "version": "1.198.0-preview.95",
4
+ "version": "1.198.0",
5
5
  "description": "Manage UiPath governance — AOps policies, Access policies, and compliance packs.",
6
6
  "private": false,
7
7
  "repository": {
@@ -23,5 +23,5 @@
23
23
  "files": [
24
24
  "dist"
25
25
  ],
26
- "gitHead": "7f6f14e06688fe417ecaac94186ab795a9106caa"
26
+ "gitHead": "1fadf03d7a8dd102742571dff569fdac11808afb"
27
27
  }