@uipath/solution-tool 1.197.0-preview.65 → 1.197.0-preview.67

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.
package/dist/pack.js CHANGED
@@ -201018,7 +201018,7 @@ init_dist();
201018
201018
  // ../packager/packager-tool-flow/package.json
201019
201019
  var package_default = {
201020
201020
  name: "@uipath/packager-tool-flow",
201021
- version: "1.197.0-preview.65",
201021
+ version: "1.197.0-preview.67",
201022
201022
  description: "UiPath Flow tool implementation",
201023
201023
  type: "module",
201024
201024
  exports: {
@@ -212338,9 +212338,228 @@ function getOutputFilter() {
212338
212338
  return filterSlot.get();
212339
212339
  }
212340
212340
 
212341
+ // ../common/src/telemetry/command-terminal.ts
212342
+ var recordedFailureSlot = singleton2("CommandTelemetryFailure");
212343
+ var AUTH_ERROR_CODES = new Set([
212344
+ "authentication_required",
212345
+ "permission_denied"
212346
+ ]);
212347
+ var VALIDATION_ERROR_CODES = new Set(["invalid_argument"]);
212348
+ var NETWORK_HTTP_ERROR_CODES = new Set([
212349
+ "network_error",
212350
+ "rate_limited",
212351
+ "server_error",
212352
+ "not_found",
212353
+ "method_not_allowed"
212354
+ ]);
212355
+ var TIMEOUT_ERROR_CODES = new Set(["timeout"]);
212356
+ var NETWORK_OS_ERROR_CODES = new Set([
212357
+ "ECONNREFUSED",
212358
+ "ECONNRESET",
212359
+ "ENOTFOUND",
212360
+ "EAI_AGAIN",
212361
+ "EPIPE",
212362
+ "EHOSTUNREACH",
212363
+ "ENETUNREACH",
212364
+ "EAI_FAIL"
212365
+ ]);
212366
+ var TIMEOUT_OS_ERROR_CODES = new Set(["ETIMEDOUT", "ESOCKETTIMEDOUT"]);
212367
+ var TLS_ERROR_CODES2 = new Set([
212368
+ "SELF_SIGNED_CERT_IN_CHAIN",
212369
+ "DEPTH_ZERO_SELF_SIGNED_CERT",
212370
+ "UNABLE_TO_VERIFY_LEAF_SIGNATURE",
212371
+ "UNABLE_TO_GET_ISSUER_CERT_LOCALLY",
212372
+ "UNABLE_TO_GET_ISSUER_CERT",
212373
+ "CERT_HAS_EXPIRED",
212374
+ "CERT_UNTRUSTED",
212375
+ "ERR_TLS_CERT_ALTNAME_INVALID"
212376
+ ]);
212377
+ var MISSING_DEPENDENCY_CODES = new Set([
212378
+ "MODULE_NOT_FOUND",
212379
+ "ERR_MODULE_NOT_FOUND"
212380
+ ]);
212381
+ var INTERNAL_ERROR_NAMES = new Set([
212382
+ "TypeError",
212383
+ "ReferenceError",
212384
+ "SyntaxError",
212385
+ "RangeError"
212386
+ ]);
212387
+ function isRecord2(value) {
212388
+ return value !== null && typeof value === "object";
212389
+ }
212390
+ function stringField(value, field) {
212391
+ if (!isRecord2(value)) {
212392
+ return;
212393
+ }
212394
+ const raw = value[field];
212395
+ return typeof raw === "string" ? raw : undefined;
212396
+ }
212397
+ function numberField(value, field) {
212398
+ if (!isRecord2(value)) {
212399
+ return;
212400
+ }
212401
+ const raw = value[field];
212402
+ return typeof raw === "number" ? raw : undefined;
212403
+ }
212404
+ function findStringInCauseChain(error95, field) {
212405
+ let current = error95;
212406
+ for (let depth = 0;depth < 5 && current !== null && typeof current === "object"; depth++) {
212407
+ const value = stringField(current, field);
212408
+ if (value) {
212409
+ return value;
212410
+ }
212411
+ current = current.cause;
212412
+ }
212413
+ return;
212414
+ }
212415
+ function findCodeInCauseChain(error95) {
212416
+ return findStringInCauseChain(error95, "code");
212417
+ }
212418
+ function isSpawnEnoent(error95) {
212419
+ const code = findCodeInCauseChain(error95);
212420
+ if (code !== "ENOENT") {
212421
+ return false;
212422
+ }
212423
+ const syscall = findStringInCauseChain(error95, "syscall");
212424
+ return syscall?.startsWith("spawn") === true;
212425
+ }
212426
+ function isCancellationError(error95, exitCode, pollSignal) {
212427
+ if (exitCode === 130) {
212428
+ return true;
212429
+ }
212430
+ if (!isRecord2(error95)) {
212431
+ return false;
212432
+ }
212433
+ if (numberField(error95, "exitCode") === 130) {
212434
+ return true;
212435
+ }
212436
+ const name2 = stringField(error95, "name");
212437
+ if (name2 === "ExitPromptError") {
212438
+ return true;
212439
+ }
212440
+ if (name2 === "AbortError" && pollSignal?.aborted) {
212441
+ return true;
212442
+ }
212443
+ const message = stringField(error95, "message");
212444
+ return message?.includes("SIGINT") === true;
212445
+ }
212446
+ function terminalSignalFor(input2, outcome) {
212447
+ if (input2.recordedFailure?.terminalSignal) {
212448
+ return input2.recordedFailure.terminalSignal;
212449
+ }
212450
+ const explicit = findStringInCauseChain(input2.error, "terminalSignal") ?? findStringInCauseChain(input2.error, "signal");
212451
+ if (explicit) {
212452
+ return explicit;
212453
+ }
212454
+ return outcome === "cancelled" ? "SIGINT" : undefined;
212455
+ }
212456
+ function classifyHttpStatus(status) {
212457
+ if (status === 401 || status === 403) {
212458
+ return "auth";
212459
+ }
212460
+ if (status === 400 || status === 409 || status === 422) {
212461
+ return "validation";
212462
+ }
212463
+ if (status === 408) {
212464
+ return "timeout";
212465
+ }
212466
+ return "network_http";
212467
+ }
212468
+ function classifyFromResult(result) {
212469
+ switch (result) {
212470
+ case "AuthenticationError":
212471
+ return "auth";
212472
+ case "ValidationError":
212473
+ return "validation";
212474
+ case "TimeoutError":
212475
+ return "timeout";
212476
+ default:
212477
+ return;
212478
+ }
212479
+ }
212480
+ function classifyFromErrorCode(errorCode) {
212481
+ if (!errorCode) {
212482
+ return;
212483
+ }
212484
+ if (AUTH_ERROR_CODES.has(errorCode)) {
212485
+ return "auth";
212486
+ }
212487
+ if (VALIDATION_ERROR_CODES.has(errorCode)) {
212488
+ return "validation";
212489
+ }
212490
+ if (TIMEOUT_ERROR_CODES.has(errorCode)) {
212491
+ return "timeout";
212492
+ }
212493
+ if (NETWORK_HTTP_ERROR_CODES.has(errorCode)) {
212494
+ return "network_http";
212495
+ }
212496
+ return;
212497
+ }
212498
+ function classifyFromError(error95) {
212499
+ const code = findCodeInCauseChain(error95);
212500
+ if (code) {
212501
+ if (code.startsWith("commander.")) {
212502
+ return "validation";
212503
+ }
212504
+ if (NETWORK_OS_ERROR_CODES.has(code) || TLS_ERROR_CODES2.has(code)) {
212505
+ return "network_http";
212506
+ }
212507
+ if (TIMEOUT_OS_ERROR_CODES.has(code)) {
212508
+ return "timeout";
212509
+ }
212510
+ if (MISSING_DEPENDENCY_CODES.has(code) || isSpawnEnoent(error95)) {
212511
+ return "missing_dependency";
212512
+ }
212513
+ }
212514
+ const message = stringField(error95, "message");
212515
+ if (message?.includes("fetch failed") === true) {
212516
+ return "network_http";
212517
+ }
212518
+ const name2 = stringField(error95, "name");
212519
+ if (name2 && INTERNAL_ERROR_NAMES.has(name2)) {
212520
+ return "internal";
212521
+ }
212522
+ return;
212523
+ }
212524
+ function classifyError(input2) {
212525
+ const recorded = input2.recordedFailure;
212526
+ if (recorded?.errorClass) {
212527
+ return recorded.errorClass;
212528
+ }
212529
+ const status = recorded?.context?.httpStatus;
212530
+ if (status !== undefined) {
212531
+ return classifyHttpStatus(status);
212532
+ }
212533
+ return classifyFromResult(recorded?.result) ?? classifyFromErrorCode(recorded?.errorCode) ?? classifyFromError(input2.error) ?? "unknown";
212534
+ }
212535
+ function recordCommandFailureTelemetry(failure) {
212536
+ recordedFailureSlot.set(failure);
212537
+ }
212538
+ function clearRecordedCommandFailureTelemetry() {
212539
+ recordedFailureSlot.clear();
212540
+ }
212541
+ function takeRecordedCommandFailureTelemetry() {
212542
+ const failure = recordedFailureSlot.get();
212543
+ recordedFailureSlot.clear();
212544
+ return failure;
212545
+ }
212546
+ function buildCommandTerminalTelemetryProperties(input2) {
212547
+ const cancelled = isCancellationError(input2.error, input2.exitCode, input2.pollSignal);
212548
+ const outcome = input2.recordedFailure?.terminalOutcome ?? (input2.exitCode === 0 ? "success" : cancelled ? "cancelled" : "failure");
212549
+ const errorClass = outcome === "success" || outcome === "no_op" ? undefined : outcome === "cancelled" ? "user_cancelled" : classifyError(input2);
212550
+ const terminalSignal = terminalSignalFor(input2, outcome);
212551
+ return {
212552
+ exit_code: input2.exitCode,
212553
+ terminal_outcome: outcome,
212554
+ ...errorClass ? { error_class: errorClass } : {},
212555
+ ...terminalSignal ? { terminal_signal: terminalSignal } : {}
212556
+ };
212557
+ }
212558
+
212341
212559
  // ../common/src/telemetry/telemetry-events.ts
212342
212560
  var CommonTelemetryEvents = {
212343
- Error: "uip.error"
212561
+ Error: "uip.error",
212562
+ ShipSucceeded: "ship_succeeded"
212344
212563
  };
212345
212564
 
212346
212565
  // ../common/src/registry.ts
@@ -212407,6 +212626,136 @@ function formatMessage(category, name2, properties) {
212407
212626
  }
212408
212627
  return message;
212409
212628
  }
212629
+ // ../common/src/telemetry/detect-agent.ts
212630
+ var KNOWN_AGENTS = [
212631
+ { envVar: "CLAUDECODE", value: "1", id: "claude-code" },
212632
+ { envVar: "CURSOR_AGENT", value: "1", id: "cursor" },
212633
+ { envVar: "GEMINI_CLI", value: "1", id: "gemini-cli" },
212634
+ { envVar: "CODEX_THREAD_ID", id: "codex" },
212635
+ { envVar: "CODEX_SANDBOX", id: "codex" },
212636
+ { envVar: "AUGMENT_AGENT", value: "1", id: "augment" },
212637
+ { envVar: "CLINE_ACTIVE", value: "true", id: "cline" }
212638
+ ];
212639
+ function detectAgentFromEnv(env) {
212640
+ for (const agent of KNOWN_AGENTS) {
212641
+ const envValue = env[agent.envVar];
212642
+ if (agent.value !== undefined) {
212643
+ if (envValue === agent.value)
212644
+ return agent.id;
212645
+ } else {
212646
+ if (envValue)
212647
+ return agent.id;
212648
+ }
212649
+ }
212650
+ const agentEnv = env.AGENT;
212651
+ if (agentEnv) {
212652
+ if (agentEnv === "1" || agentEnv === "true")
212653
+ return "unknown";
212654
+ if (agentEnv.length <= 32)
212655
+ return agentEnv.toLowerCase();
212656
+ }
212657
+ return;
212658
+ }
212659
+ // ../common/src/telemetry/environment-info.ts
212660
+ var LOCAL_HOSTS = new Set(["localhost", "127.0.0.1", "::1", "[::1]"]);
212661
+ // ../common/src/telemetry/execution-context.ts
212662
+ var authSignalSlot = singleton2("TelemetryExecutionContextAuthSignal");
212663
+ var isTruthy = (value) => value !== undefined && value !== "" && value !== "0" && value.toLowerCase() !== "false";
212664
+ var isEqual = (value, expected) => value?.toLowerCase() === expected;
212665
+ var CI_SIGNATURES = [
212666
+ {
212667
+ provider: "github_actions",
212668
+ matches: (env) => isTruthy(env.GITHUB_ACTIONS),
212669
+ isScheduler: (env) => env.GITHUB_EVENT_NAME === "schedule"
212670
+ },
212671
+ {
212672
+ provider: "azure_devops",
212673
+ matches: (env) => isTruthy(env.TF_BUILD),
212674
+ isScheduler: (env) => isEqual(env.BUILD_REASON, "schedule")
212675
+ },
212676
+ {
212677
+ provider: "gitlab",
212678
+ matches: (env) => isTruthy(env.GITLAB_CI),
212679
+ isScheduler: (env) => env.CI_PIPELINE_SOURCE === "schedule"
212680
+ },
212681
+ {
212682
+ provider: "circleci",
212683
+ matches: (env) => isTruthy(env.CIRCLECI),
212684
+ isScheduler: (env) => env.CIRCLE_PIPELINE_TRIGGER_SOURCE === "scheduled_pipeline"
212685
+ },
212686
+ {
212687
+ provider: "jenkins",
212688
+ matches: (env) => isTruthy(env.JENKINS_URL) || isTruthy(env.JENKINS_HOME)
212689
+ },
212690
+ {
212691
+ provider: "teamcity",
212692
+ matches: (env) => isTruthy(env.TEAMCITY_VERSION)
212693
+ },
212694
+ {
212695
+ provider: "buildkite",
212696
+ matches: (env) => isTruthy(env.BUILDKITE),
212697
+ isScheduler: (env) => env.BUILDKITE_SOURCE === "schedule"
212698
+ },
212699
+ {
212700
+ provider: "bitbucket",
212701
+ matches: (env) => isTruthy(env.BITBUCKET_BUILD_NUMBER)
212702
+ },
212703
+ {
212704
+ provider: "travis",
212705
+ matches: (env) => isTruthy(env.TRAVIS)
212706
+ },
212707
+ {
212708
+ provider: "appveyor",
212709
+ matches: (env) => isTruthy(env.APPVEYOR)
212710
+ },
212711
+ {
212712
+ provider: "generic",
212713
+ matches: (env) => isTruthy(env.CI)
212714
+ }
212715
+ ];
212716
+ function currentEnv() {
212717
+ return typeof process === "undefined" ? {} : process.env;
212718
+ }
212719
+ function currentTtyState() {
212720
+ if (typeof process === "undefined")
212721
+ return false;
212722
+ return Boolean(process.stdout?.isTTY || process.stdin?.isTTY || process.stderr?.isTTY);
212723
+ }
212724
+ function detectCi(env) {
212725
+ const signature = CI_SIGNATURES.find((candidate) => candidate.matches(env));
212726
+ if (!signature)
212727
+ return;
212728
+ return {
212729
+ executionContext: signature.isScheduler?.(env) ? "scheduler" : "ci",
212730
+ ciProvider: signature.provider
212731
+ };
212732
+ }
212733
+ function detectExecutionContext(options = {}) {
212734
+ const env = options.env ?? currentEnv();
212735
+ const ci2 = detectCi(env);
212736
+ if (ci2)
212737
+ return ci2;
212738
+ const agent = options.agent ?? detectAgentFromEnv(env);
212739
+ if (agent) {
212740
+ return { executionContext: "agent" };
212741
+ }
212742
+ const authSignal = options.authSignal ?? authSignalSlot.get();
212743
+ if (authSignal === "service_account") {
212744
+ return { executionContext: "service_account" };
212745
+ }
212746
+ const isTty = options.isTty ?? currentTtyState();
212747
+ if (isTty) {
212748
+ return { executionContext: "manual" };
212749
+ }
212750
+ return { executionContext: "unknown" };
212751
+ }
212752
+ function getExecutionContextTelemetryProperties() {
212753
+ const detected = detectExecutionContext();
212754
+ return {
212755
+ execution_context: detected.executionContext,
212756
+ ...detected.ciProvider ? { ci_provider: detected.ciProvider } : {}
212757
+ };
212758
+ }
212410
212759
  // ../common/src/telemetry/node-context-storage.ts
212411
212760
  import { AsyncLocalStorage } from "node:async_hooks";
212412
212761
 
@@ -212419,6 +212768,26 @@ class NodeContextStorage {
212419
212768
  return this.storage.getStore();
212420
212769
  }
212421
212770
  }
212771
+ // ../common/src/telemetry/session-id.ts
212772
+ var TELEMETRY_SESSION_ID_ENV = "UIPATH_SESSION_ID";
212773
+ var TELEMETRY_SESSION_ID_PROPERTY = "session_id";
212774
+ var telemetrySessionIdSlot = singleton2("TelemetrySessionId");
212775
+ function getProcessEnv() {
212776
+ return globalThis.process?.env;
212777
+ }
212778
+ function normalizeSessionId(value) {
212779
+ if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
212780
+ return;
212781
+ }
212782
+ const trimmed = String(value).trim();
212783
+ return trimmed || undefined;
212784
+ }
212785
+ function getConfiguredTelemetrySessionId() {
212786
+ return normalizeSessionId(getProcessEnv()?.[TELEMETRY_SESSION_ID_ENV]);
212787
+ }
212788
+ function resolveTelemetrySessionId(existingSessionId) {
212789
+ return getConfiguredTelemetrySessionId() ?? normalizeSessionId(existingSessionId);
212790
+ }
212422
212791
  // ../common/src/telemetry/global-telemetry-properties.ts
212423
212792
  var telemetryPropsSlot2 = singleton2("TelemetryDefaultProps");
212424
212793
  function getGlobalTelemetryProperties() {
@@ -212503,12 +212872,22 @@ class TelemetryService {
212503
212872
  return this.contextStorage.getContext();
212504
212873
  }
212505
212874
  enrichPropertiesWithContext(properties, context) {
212506
- return {
212507
- ...getGlobalTelemetryProperties(),
212875
+ const globalProperties = getGlobalTelemetryProperties();
212876
+ const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY];
212877
+ const sessionId = resolveTelemetrySessionId(existingSessionId);
212878
+ const enriched = {
212879
+ ...getExecutionContextTelemetryProperties(),
212880
+ ...globalProperties,
212508
212881
  ...this.defaultProperties,
212509
212882
  ...properties,
212510
212883
  ...context
212511
212884
  };
212885
+ if (sessionId === undefined) {
212886
+ delete enriched[TELEMETRY_SESSION_ID_PROPERTY];
212887
+ } else {
212888
+ enriched[TELEMETRY_SESSION_ID_PROPERTY] = sessionId;
212889
+ }
212890
+ return enriched;
212512
212891
  }
212513
212892
  generateId() {
212514
212893
  return crypto.randomUUID().replaceAll("-", "");
@@ -212978,8 +213357,24 @@ var OutputFormatter;
212978
213357
  data.ErrorCode ??= defaultErrorCodeForFailure(data);
212979
213358
  data.Retry ??= defaultRetryForErrorCode(data.ErrorCode);
212980
213359
  process.exitCode = EXIT_CODES[data.Result] ?? 1;
212981
- const { SuppressTelemetry, ...envelope } = data;
212982
- if (!SuppressTelemetry) {
213360
+ recordCommandFailureTelemetry({
213361
+ result: data.Result,
213362
+ errorCode: data.ErrorCode,
213363
+ retry: data.Retry,
213364
+ message: data.Message,
213365
+ context: data.Context,
213366
+ exitCode: process.exitCode,
213367
+ errorClass: data.TelemetryErrorClass,
213368
+ terminalOutcome: data.TelemetryTerminalOutcome,
213369
+ terminalSignal: data.TelemetryTerminalSignal
213370
+ });
213371
+ const suppressTelemetry = data.SuppressTelemetry === true;
213372
+ const envelope = { ...data };
213373
+ delete envelope.SuppressTelemetry;
213374
+ delete envelope.TelemetryErrorClass;
213375
+ delete envelope.TelemetryTerminalOutcome;
213376
+ delete envelope.TelemetryTerminalSignal;
213377
+ if (!suppressTelemetry) {
212983
213378
  telemetry.trackEvent(CommonTelemetryEvents.Error, {
212984
213379
  result: data.Result,
212985
213380
  errorCode: data.ErrorCode,
@@ -213042,6 +213437,158 @@ var OutputFormatter;
213042
213437
  OutputFormatter.formatToString = formatToString;
213043
213438
  })(OutputFormatter ||= {});
213044
213439
 
213440
+ // ../common/src/telemetry/command-attribution.ts
213441
+ var LEGACY_SKILL_NAMESPACE = "uipath:";
213442
+ var MAX_SKILL_NAME_LENGTH = 80;
213443
+ var SKILL_NAME_PATTERN = /^[a-z0-9][a-z0-9-]*[a-z0-9]$/;
213444
+ function productMode(productArea, mode) {
213445
+ return { product_area: productArea, mode };
213446
+ }
213447
+ function attributionRecord(groups) {
213448
+ const record5 = {};
213449
+ for (const [productArea, mode, names] of groups) {
213450
+ const attribution = productMode(productArea, mode);
213451
+ for (const name2 of names) {
213452
+ record5[name2] = attribution;
213453
+ }
213454
+ }
213455
+ return record5;
213456
+ }
213457
+ function commandAttribution(groups) {
213458
+ const entries = [];
213459
+ for (const [productArea, mode, prefixes] of groups) {
213460
+ const attribution = productMode(productArea, mode);
213461
+ for (const prefix2 of prefixes) {
213462
+ entries.push({ prefix: prefix2, attribution });
213463
+ }
213464
+ }
213465
+ return entries;
213466
+ }
213467
+ var SKILL_ATTRIBUTION = attributionRecord([
213468
+ ["admin", "operate", ["uipath-admin"]],
213469
+ ["agents", "build", ["uipath-agents"]],
213470
+ ["api-workflow", "build", ["uipath-api-workflow"]],
213471
+ ["automation-discovery", "build", ["uipath-automation-discovery"]],
213472
+ ["coded-apps", "build", ["uipath-coded-apps"]],
213473
+ ["data-fabric", "operate", ["uipath-data-fabric"]],
213474
+ ["cli", "troubleshoot", ["uipath-feedback"]],
213475
+ ["governance", "operate", ["uipath-governance"]],
213476
+ ["action-center", "build", ["uipath-human-in-the-loop"]],
213477
+ ["document-understanding", "build", ["uipath-ixp"]],
213478
+ [
213479
+ "maestro",
213480
+ "build",
213481
+ ["uipath-maestro-bpmn", "uipath-maestro-case", "uipath-maestro-flow"]
213482
+ ],
213483
+ ["agenthub", "build", ["uipath-mcp-servers"]],
213484
+ ["solution", "build", ["uipath-planner", "uipath-solution"]],
213485
+ ["platform", "operate", ["uipath-platform"]],
213486
+ ["quality", "troubleshoot", ["uipath-review"]],
213487
+ ["rpa", "build", ["uipath-rpa"]],
213488
+ ["cli", "operate", ["uipath-skill-catalog"]],
213489
+ ["action-center", "operate", ["uipath-tasks"]],
213490
+ ["test-manager", "operate", ["uipath-test"]],
213491
+ ["platform", "troubleshoot", ["uipath-troubleshoot"]]
213492
+ ]);
213493
+ var KNOWN_SKILL_NAMES = new Set(Object.keys(SKILL_ATTRIBUTION));
213494
+ var COMMAND_ATTRIBUTION = commandAttribution([
213495
+ ["cli", "troubleshoot", ["uip.feedback"]],
213496
+ ["llm-gateway", "operate", ["uip.llm-configuration", "uip.model-hub"]],
213497
+ ["context-grounding", "build", ["uip.context-grounding"]],
213498
+ ["api-workflow", "build", ["uip.api-workflow"]],
213499
+ ["rpa", "build", ["uip.rpa-legacy"]],
213500
+ ["conversational", "operate", ["uip.conversational"]],
213501
+ ["agents", "build", ["uip.codedagent", "uip.agent"]],
213502
+ ["agenthub", "build", ["uip.agenthub"]],
213503
+ ["coded-apps", "build", ["uip.codedapp"]],
213504
+ ["functions", "build", ["uip.functions"]],
213505
+ ["solution", "build", ["uip.solution"]],
213506
+ ["maestro", "build", ["uip.maestro", "uip.case", "uip.flow"]],
213507
+ ["llm-observability", "troubleshoot", ["uip.traces"]],
213508
+ ["platform", "operate", ["uip.platform"]],
213509
+ ["admin", "operate", ["uip.admin"]],
213510
+ ["automation-ops", "operate", ["uip.aops"]],
213511
+ ["documentation", "troubleshoot", ["uip.docsai"]],
213512
+ ["governance", "operate", ["uip.gov"]],
213513
+ ["insights", "operate", ["uip.insights"]],
213514
+ ["document-understanding", "build", ["uip.ixp"]],
213515
+ ["process-mining", "operate", ["uip.pm"]],
213516
+ ["action-center", "operate", ["uip.tasks"]],
213517
+ ["test-manager", "operate", ["uip.tm"]],
213518
+ ["vertical-solutions", "build", ["uip.vss"]],
213519
+ ["data-fabric", "operate", ["uip.df"]],
213520
+ ["integration-service", "build", ["uip.is"]],
213521
+ ["orchestrator", "operate", ["uip.or"]],
213522
+ [
213523
+ "cli",
213524
+ "operate",
213525
+ [
213526
+ "uip.login",
213527
+ "uip.logout",
213528
+ "uip.user",
213529
+ "uip.config",
213530
+ "uip.tools",
213531
+ "uip.skills",
213532
+ "uip.completion",
213533
+ "uip.update",
213534
+ "uip.mcp",
213535
+ "uip.track"
213536
+ ]
213537
+ ]
213538
+ ]).sort((a2, b3) => b3.prefix.length - a2.prefix.length);
213539
+ function normalizeCommandPath(value) {
213540
+ if (typeof value !== "string") {
213541
+ return;
213542
+ }
213543
+ const trimmed = value.trim().toLowerCase();
213544
+ if (!trimmed) {
213545
+ return;
213546
+ }
213547
+ const tokens = trimmed.includes(" ") ? trimmed.split(/\s+/).filter((token) => token.length > 0).filter((token) => !token.startsWith("-")) : trimmed.split(".").filter((token) => token.length > 0);
213548
+ if (tokens.length === 0) {
213549
+ return;
213550
+ }
213551
+ const commandTokens = tokens[0] === "uip" ? tokens : ["uip", ...tokens];
213552
+ return commandTokens.join(".");
213553
+ }
213554
+ function getCommandProductModeAttribution(commandPath) {
213555
+ const normalized = normalizeCommandPath(commandPath);
213556
+ if (!normalized) {
213557
+ return;
213558
+ }
213559
+ return COMMAND_ATTRIBUTION.find(({ prefix: prefix2 }) => normalized === prefix2 || normalized.startsWith(`${prefix2}.`))?.attribution;
213560
+ }
213561
+ function normalizeSkillNameWithOptions(value, options) {
213562
+ if (typeof value !== "string") {
213563
+ return;
213564
+ }
213565
+ const normalized = value.trim().toLowerCase();
213566
+ if (!normalized) {
213567
+ return;
213568
+ }
213569
+ const hasLegacyNamespace = normalized.startsWith(LEGACY_SKILL_NAMESPACE);
213570
+ if (hasLegacyNamespace && !options.allowLegacyNamespace) {
213571
+ return;
213572
+ }
213573
+ const skillName = hasLegacyNamespace ? normalized.slice(LEGACY_SKILL_NAMESPACE.length) : normalized;
213574
+ if (skillName.length > MAX_SKILL_NAME_LENGTH || !SKILL_NAME_PATTERN.test(skillName) || !KNOWN_SKILL_NAMES.has(skillName)) {
213575
+ return;
213576
+ }
213577
+ return skillName;
213578
+ }
213579
+ function normalizeSkillName(value) {
213580
+ return normalizeSkillNameWithOptions(value, {
213581
+ allowLegacyNamespace: false
213582
+ });
213583
+ }
213584
+ function buildCommandTelemetryAttribution(commandPath, skillSource) {
213585
+ const skillName = normalizeSkillName(skillSource);
213586
+ return {
213587
+ ...skillName ? { skill_name: skillName } : {},
213588
+ ...getCommandProductModeAttribution(commandPath)
213589
+ };
213590
+ }
213591
+
213045
213592
  // ../common/src/telemetry/pii-redactor.ts
213046
213593
  var REDACTED = "[REDACTED]";
213047
213594
  var MAX_VALUE_LENGTH = 200;
@@ -213219,6 +213766,12 @@ function commandHelpHint(commandPath) {
213219
213766
  const command = commandPath.replace(/\./g, " ");
213220
213767
  return `An unexpected error occurred. Run '${command} --help' to verify command syntax, or run with --log-level debug for details.`;
213221
213768
  }
213769
+ function isPromptCancellation(error95) {
213770
+ return error95 instanceof Error && error95.name === "ExitPromptError";
213771
+ }
213772
+ function exitCodeFromProcess(fallback) {
213773
+ return typeof process.exitCode === "number" ? process.exitCode : fallback;
213774
+ }
213222
213775
  Command.prototype.trackedAction = function(context, fn2, properties) {
213223
213776
  const command = this;
213224
213777
  return this.action(async (...args) => {
@@ -213226,6 +213779,8 @@ Command.prototype.trackedAction = function(context, fn2, properties) {
213226
213779
  const props = typeof properties === "function" ? properties(...args) : properties;
213227
213780
  const startTime = performance.now();
213228
213781
  let errorMessage;
213782
+ let fallbackExitCode = EXIT_CODES.Success;
213783
+ clearRecordedCommandFailureTelemetry();
213229
213784
  const [error95] = await catchError2(fn2(...args));
213230
213785
  if (error95) {
213231
213786
  errorMessage = error95 instanceof Error ? error95.message : String(error95);
@@ -213240,6 +213795,8 @@ Command.prototype.trackedAction = function(context, fn2, properties) {
213240
213795
  const customRetry = isRetryHint(typedRetry) ? typedRetry : undefined;
213241
213796
  const typedContext = typed.context ?? typed.Context;
213242
213797
  const customContext = isErrorContext(typedContext) ? typedContext : undefined;
213798
+ const cancellationExitCode = typed.exitCode === 130 || isPromptCancellation(error95) ? 130 : undefined;
213799
+ fallbackExitCode = cancellationExitCode ?? EXIT_CODES[finalResult];
213243
213800
  OutputFormatter.error({
213244
213801
  Result: finalResult,
213245
213802
  ...customErrorCode ? { ErrorCode: customErrorCode } : {},
@@ -213248,16 +213805,26 @@ Command.prototype.trackedAction = function(context, fn2, properties) {
213248
213805
  ...customRetry ? { Retry: customRetry } : {},
213249
213806
  ...customContext ? { Context: customContext } : {}
213250
213807
  });
213251
- context.exit(EXIT_CODES[finalResult]);
213808
+ context.exit(fallbackExitCode);
213252
213809
  }
213253
213810
  const durationMs = performance.now() - startTime;
213254
- const success5 = !error95 && (process.exitCode === undefined || process.exitCode === 0);
213811
+ const exitCode = fallbackExitCode === 130 ? fallbackExitCode : exitCodeFromProcess(fallbackExitCode);
213812
+ const recordedFailure = takeRecordedCommandFailureTelemetry();
213813
+ const success5 = !error95 && exitCode === 0;
213814
+ const terminalTelemetry = buildCommandTerminalTelemetryProperties({
213815
+ error: error95,
213816
+ exitCode,
213817
+ recordedFailure,
213818
+ pollSignal: context.pollSignal
213819
+ });
213255
213820
  telemetry.trackEvent(telemetryName, redactProperties({
213256
213821
  ...extractCommandParams(command),
213257
213822
  ...props,
213823
+ ...buildCommandTelemetryAttribution(telemetryName, process.env.UIPATH_SKILL),
213258
213824
  command: "true",
213259
213825
  duration: String(durationMs),
213260
213826
  success: String(success5),
213827
+ ...terminalTelemetry,
213261
213828
  ...errorMessage ? { errorMessage } : {}
213262
213829
  }));
213263
213830
  });
@@ -213402,6 +213969,8 @@ function installRequestHeaderForwarding(BaseApiClass, patchKey, forward) {
213402
213969
  function installSdkUserAgentHeader(BaseApiClass, userAgent) {
213403
213970
  installRequestHeaderForwarding(BaseApiClass, userAgentPatchKey(userAgent), (headers) => addSdkUserAgentHeader2(headers, userAgent));
213404
213971
  }
213972
+ // ../common/src/telemetry/ship-succeeded.ts
213973
+ var shippedKeysSlot = singleton2("ShipSucceededDedupeKeys");
213405
213974
  // ../common/src/tool-provider.ts
213406
213975
  var factorySlot = singleton2("PackagerFactoryProvider");
213407
213976
  async function ensurePackagerFactory(verb) {
@@ -235699,7 +236268,7 @@ var NETWORK_ERROR_CODES2 = new Set([
235699
236268
  "ENETUNREACH",
235700
236269
  "EAI_FAIL"
235701
236270
  ]);
235702
- var TLS_ERROR_CODES2 = new Set([
236271
+ var TLS_ERROR_CODES3 = new Set([
235703
236272
  "SELF_SIGNED_CERT_IN_CHAIN",
235704
236273
  "DEPTH_ZERO_SELF_SIGNED_CERT",
235705
236274
  "UNABLE_TO_VERIFY_LEAF_SIGNATURE",
@@ -235947,6 +236516,148 @@ var ScreenLogger2;
235947
236516
  })(ScreenLogger2 ||= {});
235948
236517
  var telemetryPropsSlot3 = singleton4("TelemetryDefaultProps");
235949
236518
  var sdkUserAgentHostToken3 = singleton4("SdkUserAgentHostToken");
236519
+ function productMode2(productArea, mode) {
236520
+ return { product_area: productArea, mode };
236521
+ }
236522
+ function attributionRecord2(groups) {
236523
+ const record5 = {};
236524
+ for (const [productArea, mode, names] of groups) {
236525
+ const attribution = productMode2(productArea, mode);
236526
+ for (const name2 of names) {
236527
+ record5[name2] = attribution;
236528
+ }
236529
+ }
236530
+ return record5;
236531
+ }
236532
+ function commandAttribution2(groups) {
236533
+ const entries = [];
236534
+ for (const [productArea, mode, prefixes] of groups) {
236535
+ const attribution = productMode2(productArea, mode);
236536
+ for (const prefix2 of prefixes) {
236537
+ entries.push({ prefix: prefix2, attribution });
236538
+ }
236539
+ }
236540
+ return entries;
236541
+ }
236542
+ var SKILL_ATTRIBUTION2 = attributionRecord2([
236543
+ ["admin", "operate", ["uipath-admin"]],
236544
+ ["agents", "build", ["uipath-agents"]],
236545
+ ["api-workflow", "build", ["uipath-api-workflow"]],
236546
+ ["automation-discovery", "build", ["uipath-automation-discovery"]],
236547
+ ["coded-apps", "build", ["uipath-coded-apps"]],
236548
+ ["data-fabric", "operate", ["uipath-data-fabric"]],
236549
+ ["cli", "troubleshoot", ["uipath-feedback"]],
236550
+ ["governance", "operate", ["uipath-governance"]],
236551
+ ["action-center", "build", ["uipath-human-in-the-loop"]],
236552
+ ["document-understanding", "build", ["uipath-ixp"]],
236553
+ [
236554
+ "maestro",
236555
+ "build",
236556
+ ["uipath-maestro-bpmn", "uipath-maestro-case", "uipath-maestro-flow"]
236557
+ ],
236558
+ ["agenthub", "build", ["uipath-mcp-servers"]],
236559
+ ["solution", "build", ["uipath-planner", "uipath-solution"]],
236560
+ ["platform", "operate", ["uipath-platform"]],
236561
+ ["quality", "troubleshoot", ["uipath-review"]],
236562
+ ["rpa", "build", ["uipath-rpa"]],
236563
+ ["cli", "operate", ["uipath-skill-catalog"]],
236564
+ ["action-center", "operate", ["uipath-tasks"]],
236565
+ ["test-manager", "operate", ["uipath-test"]],
236566
+ ["platform", "troubleshoot", ["uipath-troubleshoot"]]
236567
+ ]);
236568
+ var KNOWN_SKILL_NAMES2 = new Set(Object.keys(SKILL_ATTRIBUTION2));
236569
+ var COMMAND_ATTRIBUTION2 = commandAttribution2([
236570
+ ["cli", "troubleshoot", ["uip.feedback"]],
236571
+ ["llm-gateway", "operate", ["uip.llm-configuration", "uip.model-hub"]],
236572
+ ["context-grounding", "build", ["uip.context-grounding"]],
236573
+ ["api-workflow", "build", ["uip.api-workflow"]],
236574
+ ["rpa", "build", ["uip.rpa-legacy"]],
236575
+ ["conversational", "operate", ["uip.conversational"]],
236576
+ ["agents", "build", ["uip.codedagent", "uip.agent"]],
236577
+ ["agenthub", "build", ["uip.agenthub"]],
236578
+ ["coded-apps", "build", ["uip.codedapp"]],
236579
+ ["functions", "build", ["uip.functions"]],
236580
+ ["solution", "build", ["uip.solution"]],
236581
+ ["maestro", "build", ["uip.maestro", "uip.case", "uip.flow"]],
236582
+ ["llm-observability", "troubleshoot", ["uip.traces"]],
236583
+ ["platform", "operate", ["uip.platform"]],
236584
+ ["admin", "operate", ["uip.admin"]],
236585
+ ["automation-ops", "operate", ["uip.aops"]],
236586
+ ["documentation", "troubleshoot", ["uip.docsai"]],
236587
+ ["governance", "operate", ["uip.gov"]],
236588
+ ["insights", "operate", ["uip.insights"]],
236589
+ ["document-understanding", "build", ["uip.ixp"]],
236590
+ ["process-mining", "operate", ["uip.pm"]],
236591
+ ["action-center", "operate", ["uip.tasks"]],
236592
+ ["test-manager", "operate", ["uip.tm"]],
236593
+ ["vertical-solutions", "build", ["uip.vss"]],
236594
+ ["data-fabric", "operate", ["uip.df"]],
236595
+ ["integration-service", "build", ["uip.is"]],
236596
+ ["orchestrator", "operate", ["uip.or"]],
236597
+ [
236598
+ "cli",
236599
+ "operate",
236600
+ [
236601
+ "uip.login",
236602
+ "uip.logout",
236603
+ "uip.user",
236604
+ "uip.config",
236605
+ "uip.tools",
236606
+ "uip.skills",
236607
+ "uip.completion",
236608
+ "uip.update",
236609
+ "uip.mcp",
236610
+ "uip.track"
236611
+ ]
236612
+ ]
236613
+ ]).sort((a2, b3) => b3.prefix.length - a2.prefix.length);
236614
+ var recordedFailureSlot2 = singleton4("CommandTelemetryFailure");
236615
+ var AUTH_ERROR_CODES2 = new Set([
236616
+ "authentication_required",
236617
+ "permission_denied"
236618
+ ]);
236619
+ var VALIDATION_ERROR_CODES2 = new Set(["invalid_argument"]);
236620
+ var NETWORK_HTTP_ERROR_CODES2 = new Set([
236621
+ "network_error",
236622
+ "rate_limited",
236623
+ "server_error",
236624
+ "not_found",
236625
+ "method_not_allowed"
236626
+ ]);
236627
+ var TIMEOUT_ERROR_CODES2 = new Set(["timeout"]);
236628
+ var NETWORK_OS_ERROR_CODES2 = new Set([
236629
+ "ECONNREFUSED",
236630
+ "ECONNRESET",
236631
+ "ENOTFOUND",
236632
+ "EAI_AGAIN",
236633
+ "EPIPE",
236634
+ "EHOSTUNREACH",
236635
+ "ENETUNREACH",
236636
+ "EAI_FAIL"
236637
+ ]);
236638
+ var TIMEOUT_OS_ERROR_CODES2 = new Set(["ETIMEDOUT", "ESOCKETTIMEDOUT"]);
236639
+ var TLS_ERROR_CODES22 = new Set([
236640
+ "SELF_SIGNED_CERT_IN_CHAIN",
236641
+ "DEPTH_ZERO_SELF_SIGNED_CERT",
236642
+ "UNABLE_TO_VERIFY_LEAF_SIGNATURE",
236643
+ "UNABLE_TO_GET_ISSUER_CERT_LOCALLY",
236644
+ "UNABLE_TO_GET_ISSUER_CERT",
236645
+ "CERT_HAS_EXPIRED",
236646
+ "CERT_UNTRUSTED",
236647
+ "ERR_TLS_CERT_ALTNAME_INVALID"
236648
+ ]);
236649
+ var MISSING_DEPENDENCY_CODES2 = new Set([
236650
+ "MODULE_NOT_FOUND",
236651
+ "ERR_MODULE_NOT_FOUND"
236652
+ ]);
236653
+ var INTERNAL_ERROR_NAMES2 = new Set([
236654
+ "TypeError",
236655
+ "ReferenceError",
236656
+ "SyntaxError",
236657
+ "RangeError"
236658
+ ]);
236659
+ var telemetrySessionIdSlot2 = singleton4("TelemetrySessionId");
236660
+ var authSignalSlot2 = singleton4("TelemetryExecutionContextAuthSignal");
235950
236661
  var factorySlot2 = singleton4("PackagerFactoryProvider");
235951
236662
  var RulesConfigFileType;
235952
236663
  ((RulesConfigFileType2) => {
@@ -236055,7 +236766,7 @@ class ToolLogger {
236055
236766
  var package_default3 = {
236056
236767
  name: "@uipath/project-packager",
236057
236768
  license: "MIT",
236058
- version: "1.197.0-preview.65",
236769
+ version: "1.197.0-preview.67",
236059
236770
  description: "UiPath Project Packager - core library for packing individual UiPath projects",
236060
236771
  type: "module",
236061
236772
  main: "./dist/index.js",
@@ -240672,7 +241383,7 @@ var NETWORK_ERROR_CODES3 = new Set([
240672
241383
  "ENETUNREACH",
240673
241384
  "EAI_FAIL"
240674
241385
  ]);
240675
- var TLS_ERROR_CODES3 = new Set([
241386
+ var TLS_ERROR_CODES4 = new Set([
240676
241387
  "SELF_SIGNED_CERT_IN_CHAIN",
240677
241388
  "DEPTH_ZERO_SELF_SIGNED_CERT",
240678
241389
  "UNABLE_TO_VERIFY_LEAF_SIGNATURE",
@@ -245674,8 +246385,225 @@ function getOutputFormat2() {
245674
246385
  function getOutputFilter2() {
245675
246386
  return filterSlot3.get();
245676
246387
  }
246388
+ var recordedFailureSlot3 = singleton5("CommandTelemetryFailure");
246389
+ var AUTH_ERROR_CODES3 = new Set([
246390
+ "authentication_required",
246391
+ "permission_denied"
246392
+ ]);
246393
+ var VALIDATION_ERROR_CODES3 = new Set(["invalid_argument"]);
246394
+ var NETWORK_HTTP_ERROR_CODES3 = new Set([
246395
+ "network_error",
246396
+ "rate_limited",
246397
+ "server_error",
246398
+ "not_found",
246399
+ "method_not_allowed"
246400
+ ]);
246401
+ var TIMEOUT_ERROR_CODES3 = new Set(["timeout"]);
246402
+ var NETWORK_OS_ERROR_CODES3 = new Set([
246403
+ "ECONNREFUSED",
246404
+ "ECONNRESET",
246405
+ "ENOTFOUND",
246406
+ "EAI_AGAIN",
246407
+ "EPIPE",
246408
+ "EHOSTUNREACH",
246409
+ "ENETUNREACH",
246410
+ "EAI_FAIL"
246411
+ ]);
246412
+ var TIMEOUT_OS_ERROR_CODES3 = new Set(["ETIMEDOUT", "ESOCKETTIMEDOUT"]);
246413
+ var TLS_ERROR_CODES23 = new Set([
246414
+ "SELF_SIGNED_CERT_IN_CHAIN",
246415
+ "DEPTH_ZERO_SELF_SIGNED_CERT",
246416
+ "UNABLE_TO_VERIFY_LEAF_SIGNATURE",
246417
+ "UNABLE_TO_GET_ISSUER_CERT_LOCALLY",
246418
+ "UNABLE_TO_GET_ISSUER_CERT",
246419
+ "CERT_HAS_EXPIRED",
246420
+ "CERT_UNTRUSTED",
246421
+ "ERR_TLS_CERT_ALTNAME_INVALID"
246422
+ ]);
246423
+ var MISSING_DEPENDENCY_CODES3 = new Set([
246424
+ "MODULE_NOT_FOUND",
246425
+ "ERR_MODULE_NOT_FOUND"
246426
+ ]);
246427
+ var INTERNAL_ERROR_NAMES3 = new Set([
246428
+ "TypeError",
246429
+ "ReferenceError",
246430
+ "SyntaxError",
246431
+ "RangeError"
246432
+ ]);
246433
+ function isRecord3(value) {
246434
+ return value !== null && typeof value === "object";
246435
+ }
246436
+ function stringField2(value, field) {
246437
+ if (!isRecord3(value)) {
246438
+ return;
246439
+ }
246440
+ const raw = value[field];
246441
+ return typeof raw === "string" ? raw : undefined;
246442
+ }
246443
+ function numberField2(value, field) {
246444
+ if (!isRecord3(value)) {
246445
+ return;
246446
+ }
246447
+ const raw = value[field];
246448
+ return typeof raw === "number" ? raw : undefined;
246449
+ }
246450
+ function findStringInCauseChain2(error95, field) {
246451
+ let current = error95;
246452
+ for (let depth = 0;depth < 5 && current !== null && typeof current === "object"; depth++) {
246453
+ const value = stringField2(current, field);
246454
+ if (value) {
246455
+ return value;
246456
+ }
246457
+ current = current.cause;
246458
+ }
246459
+ return;
246460
+ }
246461
+ function findCodeInCauseChain2(error95) {
246462
+ return findStringInCauseChain2(error95, "code");
246463
+ }
246464
+ function isSpawnEnoent2(error95) {
246465
+ const code2 = findCodeInCauseChain2(error95);
246466
+ if (code2 !== "ENOENT") {
246467
+ return false;
246468
+ }
246469
+ const syscall = findStringInCauseChain2(error95, "syscall");
246470
+ return syscall?.startsWith("spawn") === true;
246471
+ }
246472
+ function isCancellationError2(error95, exitCode, pollSignal) {
246473
+ if (exitCode === 130) {
246474
+ return true;
246475
+ }
246476
+ if (!isRecord3(error95)) {
246477
+ return false;
246478
+ }
246479
+ if (numberField2(error95, "exitCode") === 130) {
246480
+ return true;
246481
+ }
246482
+ const name2 = stringField2(error95, "name");
246483
+ if (name2 === "ExitPromptError") {
246484
+ return true;
246485
+ }
246486
+ if (name2 === "AbortError" && pollSignal?.aborted) {
246487
+ return true;
246488
+ }
246489
+ const message = stringField2(error95, "message");
246490
+ return message?.includes("SIGINT") === true;
246491
+ }
246492
+ function terminalSignalFor2(input2, outcome) {
246493
+ if (input2.recordedFailure?.terminalSignal) {
246494
+ return input2.recordedFailure.terminalSignal;
246495
+ }
246496
+ const explicit = findStringInCauseChain2(input2.error, "terminalSignal") ?? findStringInCauseChain2(input2.error, "signal");
246497
+ if (explicit) {
246498
+ return explicit;
246499
+ }
246500
+ return outcome === "cancelled" ? "SIGINT" : undefined;
246501
+ }
246502
+ function classifyHttpStatus2(status) {
246503
+ if (status === 401 || status === 403) {
246504
+ return "auth";
246505
+ }
246506
+ if (status === 400 || status === 409 || status === 422) {
246507
+ return "validation";
246508
+ }
246509
+ if (status === 408) {
246510
+ return "timeout";
246511
+ }
246512
+ return "network_http";
246513
+ }
246514
+ function classifyFromResult2(result) {
246515
+ switch (result) {
246516
+ case "AuthenticationError":
246517
+ return "auth";
246518
+ case "ValidationError":
246519
+ return "validation";
246520
+ case "TimeoutError":
246521
+ return "timeout";
246522
+ default:
246523
+ return;
246524
+ }
246525
+ }
246526
+ function classifyFromErrorCode2(errorCode) {
246527
+ if (!errorCode) {
246528
+ return;
246529
+ }
246530
+ if (AUTH_ERROR_CODES3.has(errorCode)) {
246531
+ return "auth";
246532
+ }
246533
+ if (VALIDATION_ERROR_CODES3.has(errorCode)) {
246534
+ return "validation";
246535
+ }
246536
+ if (TIMEOUT_ERROR_CODES3.has(errorCode)) {
246537
+ return "timeout";
246538
+ }
246539
+ if (NETWORK_HTTP_ERROR_CODES3.has(errorCode)) {
246540
+ return "network_http";
246541
+ }
246542
+ return;
246543
+ }
246544
+ function classifyFromError2(error95) {
246545
+ const code2 = findCodeInCauseChain2(error95);
246546
+ if (code2) {
246547
+ if (code2.startsWith("commander.")) {
246548
+ return "validation";
246549
+ }
246550
+ if (NETWORK_OS_ERROR_CODES3.has(code2) || TLS_ERROR_CODES23.has(code2)) {
246551
+ return "network_http";
246552
+ }
246553
+ if (TIMEOUT_OS_ERROR_CODES3.has(code2)) {
246554
+ return "timeout";
246555
+ }
246556
+ if (MISSING_DEPENDENCY_CODES3.has(code2) || isSpawnEnoent2(error95)) {
246557
+ return "missing_dependency";
246558
+ }
246559
+ }
246560
+ const message = stringField2(error95, "message");
246561
+ if (message?.includes("fetch failed") === true) {
246562
+ return "network_http";
246563
+ }
246564
+ const name2 = stringField2(error95, "name");
246565
+ if (name2 && INTERNAL_ERROR_NAMES3.has(name2)) {
246566
+ return "internal";
246567
+ }
246568
+ return;
246569
+ }
246570
+ function classifyError2(input2) {
246571
+ const recorded = input2.recordedFailure;
246572
+ if (recorded?.errorClass) {
246573
+ return recorded.errorClass;
246574
+ }
246575
+ const status = recorded?.context?.httpStatus;
246576
+ if (status !== undefined) {
246577
+ return classifyHttpStatus2(status);
246578
+ }
246579
+ return classifyFromResult2(recorded?.result) ?? classifyFromErrorCode2(recorded?.errorCode) ?? classifyFromError2(input2.error) ?? "unknown";
246580
+ }
246581
+ function recordCommandFailureTelemetry2(failure) {
246582
+ recordedFailureSlot3.set(failure);
246583
+ }
246584
+ function clearRecordedCommandFailureTelemetry2() {
246585
+ recordedFailureSlot3.clear();
246586
+ }
246587
+ function takeRecordedCommandFailureTelemetry2() {
246588
+ const failure = recordedFailureSlot3.get();
246589
+ recordedFailureSlot3.clear();
246590
+ return failure;
246591
+ }
246592
+ function buildCommandTerminalTelemetryProperties2(input2) {
246593
+ const cancelled = isCancellationError2(input2.error, input2.exitCode, input2.pollSignal);
246594
+ const outcome = input2.recordedFailure?.terminalOutcome ?? (input2.exitCode === 0 ? "success" : cancelled ? "cancelled" : "failure");
246595
+ const errorClass = outcome === "success" || outcome === "no_op" ? undefined : outcome === "cancelled" ? "user_cancelled" : classifyError2(input2);
246596
+ const terminalSignal = terminalSignalFor2(input2, outcome);
246597
+ return {
246598
+ exit_code: input2.exitCode,
246599
+ terminal_outcome: outcome,
246600
+ ...errorClass ? { error_class: errorClass } : {},
246601
+ ...terminalSignal ? { terminal_signal: terminalSignal } : {}
246602
+ };
246603
+ }
245677
246604
  var CommonTelemetryEvents2 = {
245678
- Error: "uip.error"
246605
+ Error: "uip.error",
246606
+ ShipSucceeded: "ship_succeeded"
245679
246607
  };
245680
246608
  function readRegistryValue2(keyPath, valueName) {
245681
246609
  if (process.platform !== "win32") {
@@ -245753,6 +246681,133 @@ class DebugTelemetryProvider2 {
245753
246681
  logger4.debug(`[Telemetry] Dependency: ${name2} [${type}] (${duration8}ms, ${success5 ? "ok" : "fail"})`);
245754
246682
  }
245755
246683
  }
246684
+ var KNOWN_AGENTS2 = [
246685
+ { envVar: "CLAUDECODE", value: "1", id: "claude-code" },
246686
+ { envVar: "CURSOR_AGENT", value: "1", id: "cursor" },
246687
+ { envVar: "GEMINI_CLI", value: "1", id: "gemini-cli" },
246688
+ { envVar: "CODEX_THREAD_ID", id: "codex" },
246689
+ { envVar: "CODEX_SANDBOX", id: "codex" },
246690
+ { envVar: "AUGMENT_AGENT", value: "1", id: "augment" },
246691
+ { envVar: "CLINE_ACTIVE", value: "true", id: "cline" }
246692
+ ];
246693
+ function detectAgentFromEnv2(env2) {
246694
+ for (const agent of KNOWN_AGENTS2) {
246695
+ const envValue = env2[agent.envVar];
246696
+ if (agent.value !== undefined) {
246697
+ if (envValue === agent.value)
246698
+ return agent.id;
246699
+ } else {
246700
+ if (envValue)
246701
+ return agent.id;
246702
+ }
246703
+ }
246704
+ const agentEnv = env2.AGENT;
246705
+ if (agentEnv) {
246706
+ if (agentEnv === "1" || agentEnv === "true")
246707
+ return "unknown";
246708
+ if (agentEnv.length <= 32)
246709
+ return agentEnv.toLowerCase();
246710
+ }
246711
+ return;
246712
+ }
246713
+ var LOCAL_HOSTS2 = new Set(["localhost", "127.0.0.1", "::1", "[::1]"]);
246714
+ var authSignalSlot3 = singleton5("TelemetryExecutionContextAuthSignal");
246715
+ var isTruthy2 = (value) => value !== undefined && value !== "" && value !== "0" && value.toLowerCase() !== "false";
246716
+ var isEqual2 = (value, expected) => value?.toLowerCase() === expected;
246717
+ var CI_SIGNATURES2 = [
246718
+ {
246719
+ provider: "github_actions",
246720
+ matches: (env2) => isTruthy2(env2.GITHUB_ACTIONS),
246721
+ isScheduler: (env2) => env2.GITHUB_EVENT_NAME === "schedule"
246722
+ },
246723
+ {
246724
+ provider: "azure_devops",
246725
+ matches: (env2) => isTruthy2(env2.TF_BUILD),
246726
+ isScheduler: (env2) => isEqual2(env2.BUILD_REASON, "schedule")
246727
+ },
246728
+ {
246729
+ provider: "gitlab",
246730
+ matches: (env2) => isTruthy2(env2.GITLAB_CI),
246731
+ isScheduler: (env2) => env2.CI_PIPELINE_SOURCE === "schedule"
246732
+ },
246733
+ {
246734
+ provider: "circleci",
246735
+ matches: (env2) => isTruthy2(env2.CIRCLECI),
246736
+ isScheduler: (env2) => env2.CIRCLE_PIPELINE_TRIGGER_SOURCE === "scheduled_pipeline"
246737
+ },
246738
+ {
246739
+ provider: "jenkins",
246740
+ matches: (env2) => isTruthy2(env2.JENKINS_URL) || isTruthy2(env2.JENKINS_HOME)
246741
+ },
246742
+ {
246743
+ provider: "teamcity",
246744
+ matches: (env2) => isTruthy2(env2.TEAMCITY_VERSION)
246745
+ },
246746
+ {
246747
+ provider: "buildkite",
246748
+ matches: (env2) => isTruthy2(env2.BUILDKITE),
246749
+ isScheduler: (env2) => env2.BUILDKITE_SOURCE === "schedule"
246750
+ },
246751
+ {
246752
+ provider: "bitbucket",
246753
+ matches: (env2) => isTruthy2(env2.BITBUCKET_BUILD_NUMBER)
246754
+ },
246755
+ {
246756
+ provider: "travis",
246757
+ matches: (env2) => isTruthy2(env2.TRAVIS)
246758
+ },
246759
+ {
246760
+ provider: "appveyor",
246761
+ matches: (env2) => isTruthy2(env2.APPVEYOR)
246762
+ },
246763
+ {
246764
+ provider: "generic",
246765
+ matches: (env2) => isTruthy2(env2.CI)
246766
+ }
246767
+ ];
246768
+ function currentEnv2() {
246769
+ return typeof process === "undefined" ? {} : process.env;
246770
+ }
246771
+ function currentTtyState2() {
246772
+ if (typeof process === "undefined")
246773
+ return false;
246774
+ return Boolean(process.stdout?.isTTY || process.stdin?.isTTY || process.stderr?.isTTY);
246775
+ }
246776
+ function detectCi2(env2) {
246777
+ const signature = CI_SIGNATURES2.find((candidate) => candidate.matches(env2));
246778
+ if (!signature)
246779
+ return;
246780
+ return {
246781
+ executionContext: signature.isScheduler?.(env2) ? "scheduler" : "ci",
246782
+ ciProvider: signature.provider
246783
+ };
246784
+ }
246785
+ function detectExecutionContext2(options = {}) {
246786
+ const env2 = options.env ?? currentEnv2();
246787
+ const ci2 = detectCi2(env2);
246788
+ if (ci2)
246789
+ return ci2;
246790
+ const agent = options.agent ?? detectAgentFromEnv2(env2);
246791
+ if (agent) {
246792
+ return { executionContext: "agent" };
246793
+ }
246794
+ const authSignal = options.authSignal ?? authSignalSlot3.get();
246795
+ if (authSignal === "service_account") {
246796
+ return { executionContext: "service_account" };
246797
+ }
246798
+ const isTty = options.isTty ?? currentTtyState2();
246799
+ if (isTty) {
246800
+ return { executionContext: "manual" };
246801
+ }
246802
+ return { executionContext: "unknown" };
246803
+ }
246804
+ function getExecutionContextTelemetryProperties2() {
246805
+ const detected = detectExecutionContext2();
246806
+ return {
246807
+ execution_context: detected.executionContext,
246808
+ ...detected.ciProvider ? { ci_provider: detected.ciProvider } : {}
246809
+ };
246810
+ }
245756
246811
 
245757
246812
  class NodeContextStorage2 {
245758
246813
  storage = new AsyncLocalStorage2;
@@ -245763,6 +246818,25 @@ class NodeContextStorage2 {
245763
246818
  return this.storage.getStore();
245764
246819
  }
245765
246820
  }
246821
+ var TELEMETRY_SESSION_ID_ENV2 = "UIPATH_SESSION_ID";
246822
+ var TELEMETRY_SESSION_ID_PROPERTY2 = "session_id";
246823
+ var telemetrySessionIdSlot3 = singleton5("TelemetrySessionId");
246824
+ function getProcessEnv2() {
246825
+ return globalThis.process?.env;
246826
+ }
246827
+ function normalizeSessionId2(value) {
246828
+ if (typeof value !== "string" && typeof value !== "number" && typeof value !== "boolean") {
246829
+ return;
246830
+ }
246831
+ const trimmed = String(value).trim();
246832
+ return trimmed || undefined;
246833
+ }
246834
+ function getConfiguredTelemetrySessionId2() {
246835
+ return normalizeSessionId2(getProcessEnv2()?.[TELEMETRY_SESSION_ID_ENV2]);
246836
+ }
246837
+ function resolveTelemetrySessionId2(existingSessionId) {
246838
+ return getConfiguredTelemetrySessionId2() ?? normalizeSessionId2(existingSessionId);
246839
+ }
245766
246840
  var telemetryPropsSlot4 = singleton5("TelemetryDefaultProps");
245767
246841
  function getGlobalTelemetryProperties2() {
245768
246842
  return telemetryPropsSlot4.get();
@@ -245845,12 +246919,22 @@ class TelemetryService2 {
245845
246919
  return this.contextStorage.getContext();
245846
246920
  }
245847
246921
  enrichPropertiesWithContext(properties, context) {
245848
- return {
245849
- ...getGlobalTelemetryProperties2(),
246922
+ const globalProperties = getGlobalTelemetryProperties2();
246923
+ const existingSessionId = properties?.[TELEMETRY_SESSION_ID_PROPERTY2] ?? this.defaultProperties?.[TELEMETRY_SESSION_ID_PROPERTY2] ?? globalProperties?.[TELEMETRY_SESSION_ID_PROPERTY2];
246924
+ const sessionId = resolveTelemetrySessionId2(existingSessionId);
246925
+ const enriched = {
246926
+ ...getExecutionContextTelemetryProperties2(),
246927
+ ...globalProperties,
245850
246928
  ...this.defaultProperties,
245851
246929
  ...properties,
245852
246930
  ...context
245853
246931
  };
246932
+ if (sessionId === undefined) {
246933
+ delete enriched[TELEMETRY_SESSION_ID_PROPERTY2];
246934
+ } else {
246935
+ enriched[TELEMETRY_SESSION_ID_PROPERTY2] = sessionId;
246936
+ }
246937
+ return enriched;
245854
246938
  }
245855
246939
  generateId() {
245856
246940
  return crypto.randomUUID().replaceAll("-", "");
@@ -246317,8 +247401,24 @@ var OutputFormatter2;
246317
247401
  data.ErrorCode ??= defaultErrorCodeForFailure2(data);
246318
247402
  data.Retry ??= defaultRetryForErrorCode2(data.ErrorCode);
246319
247403
  process.exitCode = EXIT_CODES2[data.Result] ?? 1;
246320
- const { SuppressTelemetry, ...envelope } = data;
246321
- if (!SuppressTelemetry) {
247404
+ recordCommandFailureTelemetry2({
247405
+ result: data.Result,
247406
+ errorCode: data.ErrorCode,
247407
+ retry: data.Retry,
247408
+ message: data.Message,
247409
+ context: data.Context,
247410
+ exitCode: process.exitCode,
247411
+ errorClass: data.TelemetryErrorClass,
247412
+ terminalOutcome: data.TelemetryTerminalOutcome,
247413
+ terminalSignal: data.TelemetryTerminalSignal
247414
+ });
247415
+ const suppressTelemetry = data.SuppressTelemetry === true;
247416
+ const envelope = { ...data };
247417
+ delete envelope.SuppressTelemetry;
247418
+ delete envelope.TelemetryErrorClass;
247419
+ delete envelope.TelemetryTerminalOutcome;
247420
+ delete envelope.TelemetryTerminalSignal;
247421
+ if (!suppressTelemetry) {
246322
247422
  telemetry2.trackEvent(CommonTelemetryEvents2.Error, {
246323
247423
  result: data.Result,
246324
247424
  errorCode: data.ErrorCode,
@@ -246380,6 +247480,156 @@ var OutputFormatter2;
246380
247480
  }
246381
247481
  OutputFormatter22.formatToString = formatToString;
246382
247482
  })(OutputFormatter2 ||= {});
247483
+ var LEGACY_SKILL_NAMESPACE2 = "uipath:";
247484
+ var MAX_SKILL_NAME_LENGTH2 = 80;
247485
+ var SKILL_NAME_PATTERN2 = /^[a-z0-9][a-z0-9-]*[a-z0-9]$/;
247486
+ function productMode3(productArea, mode) {
247487
+ return { product_area: productArea, mode };
247488
+ }
247489
+ function attributionRecord3(groups) {
247490
+ const record5 = {};
247491
+ for (const [productArea, mode, names] of groups) {
247492
+ const attribution = productMode3(productArea, mode);
247493
+ for (const name2 of names) {
247494
+ record5[name2] = attribution;
247495
+ }
247496
+ }
247497
+ return record5;
247498
+ }
247499
+ function commandAttribution3(groups) {
247500
+ const entries = [];
247501
+ for (const [productArea, mode, prefixes] of groups) {
247502
+ const attribution = productMode3(productArea, mode);
247503
+ for (const prefix2 of prefixes) {
247504
+ entries.push({ prefix: prefix2, attribution });
247505
+ }
247506
+ }
247507
+ return entries;
247508
+ }
247509
+ var SKILL_ATTRIBUTION3 = attributionRecord3([
247510
+ ["admin", "operate", ["uipath-admin"]],
247511
+ ["agents", "build", ["uipath-agents"]],
247512
+ ["api-workflow", "build", ["uipath-api-workflow"]],
247513
+ ["automation-discovery", "build", ["uipath-automation-discovery"]],
247514
+ ["coded-apps", "build", ["uipath-coded-apps"]],
247515
+ ["data-fabric", "operate", ["uipath-data-fabric"]],
247516
+ ["cli", "troubleshoot", ["uipath-feedback"]],
247517
+ ["governance", "operate", ["uipath-governance"]],
247518
+ ["action-center", "build", ["uipath-human-in-the-loop"]],
247519
+ ["document-understanding", "build", ["uipath-ixp"]],
247520
+ [
247521
+ "maestro",
247522
+ "build",
247523
+ ["uipath-maestro-bpmn", "uipath-maestro-case", "uipath-maestro-flow"]
247524
+ ],
247525
+ ["agenthub", "build", ["uipath-mcp-servers"]],
247526
+ ["solution", "build", ["uipath-planner", "uipath-solution"]],
247527
+ ["platform", "operate", ["uipath-platform"]],
247528
+ ["quality", "troubleshoot", ["uipath-review"]],
247529
+ ["rpa", "build", ["uipath-rpa"]],
247530
+ ["cli", "operate", ["uipath-skill-catalog"]],
247531
+ ["action-center", "operate", ["uipath-tasks"]],
247532
+ ["test-manager", "operate", ["uipath-test"]],
247533
+ ["platform", "troubleshoot", ["uipath-troubleshoot"]]
247534
+ ]);
247535
+ var KNOWN_SKILL_NAMES3 = new Set(Object.keys(SKILL_ATTRIBUTION3));
247536
+ var COMMAND_ATTRIBUTION3 = commandAttribution3([
247537
+ ["cli", "troubleshoot", ["uip.feedback"]],
247538
+ ["llm-gateway", "operate", ["uip.llm-configuration", "uip.model-hub"]],
247539
+ ["context-grounding", "build", ["uip.context-grounding"]],
247540
+ ["api-workflow", "build", ["uip.api-workflow"]],
247541
+ ["rpa", "build", ["uip.rpa-legacy"]],
247542
+ ["conversational", "operate", ["uip.conversational"]],
247543
+ ["agents", "build", ["uip.codedagent", "uip.agent"]],
247544
+ ["agenthub", "build", ["uip.agenthub"]],
247545
+ ["coded-apps", "build", ["uip.codedapp"]],
247546
+ ["functions", "build", ["uip.functions"]],
247547
+ ["solution", "build", ["uip.solution"]],
247548
+ ["maestro", "build", ["uip.maestro", "uip.case", "uip.flow"]],
247549
+ ["llm-observability", "troubleshoot", ["uip.traces"]],
247550
+ ["platform", "operate", ["uip.platform"]],
247551
+ ["admin", "operate", ["uip.admin"]],
247552
+ ["automation-ops", "operate", ["uip.aops"]],
247553
+ ["documentation", "troubleshoot", ["uip.docsai"]],
247554
+ ["governance", "operate", ["uip.gov"]],
247555
+ ["insights", "operate", ["uip.insights"]],
247556
+ ["document-understanding", "build", ["uip.ixp"]],
247557
+ ["process-mining", "operate", ["uip.pm"]],
247558
+ ["action-center", "operate", ["uip.tasks"]],
247559
+ ["test-manager", "operate", ["uip.tm"]],
247560
+ ["vertical-solutions", "build", ["uip.vss"]],
247561
+ ["data-fabric", "operate", ["uip.df"]],
247562
+ ["integration-service", "build", ["uip.is"]],
247563
+ ["orchestrator", "operate", ["uip.or"]],
247564
+ [
247565
+ "cli",
247566
+ "operate",
247567
+ [
247568
+ "uip.login",
247569
+ "uip.logout",
247570
+ "uip.user",
247571
+ "uip.config",
247572
+ "uip.tools",
247573
+ "uip.skills",
247574
+ "uip.completion",
247575
+ "uip.update",
247576
+ "uip.mcp",
247577
+ "uip.track"
247578
+ ]
247579
+ ]
247580
+ ]).sort((a2, b3) => b3.prefix.length - a2.prefix.length);
247581
+ function normalizeCommandPath2(value) {
247582
+ if (typeof value !== "string") {
247583
+ return;
247584
+ }
247585
+ const trimmed = value.trim().toLowerCase();
247586
+ if (!trimmed) {
247587
+ return;
247588
+ }
247589
+ const tokens = trimmed.includes(" ") ? trimmed.split(/\s+/).filter((token) => token.length > 0).filter((token) => !token.startsWith("-")) : trimmed.split(".").filter((token) => token.length > 0);
247590
+ if (tokens.length === 0) {
247591
+ return;
247592
+ }
247593
+ const commandTokens = tokens[0] === "uip" ? tokens : ["uip", ...tokens];
247594
+ return commandTokens.join(".");
247595
+ }
247596
+ function getCommandProductModeAttribution2(commandPath) {
247597
+ const normalized = normalizeCommandPath2(commandPath);
247598
+ if (!normalized) {
247599
+ return;
247600
+ }
247601
+ return COMMAND_ATTRIBUTION3.find(({ prefix: prefix2 }) => normalized === prefix2 || normalized.startsWith(`${prefix2}.`))?.attribution;
247602
+ }
247603
+ function normalizeSkillNameWithOptions2(value, options) {
247604
+ if (typeof value !== "string") {
247605
+ return;
247606
+ }
247607
+ const normalized = value.trim().toLowerCase();
247608
+ if (!normalized) {
247609
+ return;
247610
+ }
247611
+ const hasLegacyNamespace = normalized.startsWith(LEGACY_SKILL_NAMESPACE2);
247612
+ if (hasLegacyNamespace && !options.allowLegacyNamespace) {
247613
+ return;
247614
+ }
247615
+ const skillName = hasLegacyNamespace ? normalized.slice(LEGACY_SKILL_NAMESPACE2.length) : normalized;
247616
+ if (skillName.length > MAX_SKILL_NAME_LENGTH2 || !SKILL_NAME_PATTERN2.test(skillName) || !KNOWN_SKILL_NAMES3.has(skillName)) {
247617
+ return;
247618
+ }
247619
+ return skillName;
247620
+ }
247621
+ function normalizeSkillName2(value) {
247622
+ return normalizeSkillNameWithOptions2(value, {
247623
+ allowLegacyNamespace: false
247624
+ });
247625
+ }
247626
+ function buildCommandTelemetryAttribution2(commandPath, skillSource) {
247627
+ const skillName = normalizeSkillName2(skillSource);
247628
+ return {
247629
+ ...skillName ? { skill_name: skillName } : {},
247630
+ ...getCommandProductModeAttribution2(commandPath)
247631
+ };
247632
+ }
246383
247633
  var REDACTED2 = "[REDACTED]";
246384
247634
  var MAX_VALUE_LENGTH2 = 200;
246385
247635
  var SENSITIVE_NAME_TOKENS2 = new Set([
@@ -246554,6 +247804,12 @@ function commandHelpHint2(commandPath) {
246554
247804
  const command = commandPath.replace(/\./g, " ");
246555
247805
  return `An unexpected error occurred. Run '${command} --help' to verify command syntax, or run with --log-level debug for details.`;
246556
247806
  }
247807
+ function isPromptCancellation2(error95) {
247808
+ return error95 instanceof Error && error95.name === "ExitPromptError";
247809
+ }
247810
+ function exitCodeFromProcess2(fallback) {
247811
+ return typeof process.exitCode === "number" ? process.exitCode : fallback;
247812
+ }
246557
247813
  Command3.prototype.trackedAction = function(context, fn2, properties) {
246558
247814
  const command = this;
246559
247815
  return this.action(async (...args) => {
@@ -246561,6 +247817,8 @@ Command3.prototype.trackedAction = function(context, fn2, properties) {
246561
247817
  const props = typeof properties === "function" ? properties(...args) : properties;
246562
247818
  const startTime = performance.now();
246563
247819
  let errorMessage2;
247820
+ let fallbackExitCode = EXIT_CODES2.Success;
247821
+ clearRecordedCommandFailureTelemetry2();
246564
247822
  const [error95] = await catchError4(fn2(...args));
246565
247823
  if (error95) {
246566
247824
  errorMessage2 = error95 instanceof Error ? error95.message : String(error95);
@@ -246575,6 +247833,8 @@ Command3.prototype.trackedAction = function(context, fn2, properties) {
246575
247833
  const customRetry = isRetryHint2(typedRetry) ? typedRetry : undefined;
246576
247834
  const typedContext = typed.context ?? typed.Context;
246577
247835
  const customContext = isErrorContext2(typedContext) ? typedContext : undefined;
247836
+ const cancellationExitCode = typed.exitCode === 130 || isPromptCancellation2(error95) ? 130 : undefined;
247837
+ fallbackExitCode = cancellationExitCode ?? EXIT_CODES2[finalResult];
246578
247838
  OutputFormatter2.error({
246579
247839
  Result: finalResult,
246580
247840
  ...customErrorCode ? { ErrorCode: customErrorCode } : {},
@@ -246583,16 +247843,26 @@ Command3.prototype.trackedAction = function(context, fn2, properties) {
246583
247843
  ...customRetry ? { Retry: customRetry } : {},
246584
247844
  ...customContext ? { Context: customContext } : {}
246585
247845
  });
246586
- context.exit(EXIT_CODES2[finalResult]);
247846
+ context.exit(fallbackExitCode);
246587
247847
  }
246588
247848
  const durationMs = performance.now() - startTime;
246589
- const success5 = !error95 && (process.exitCode === undefined || process.exitCode === 0);
247849
+ const exitCode = fallbackExitCode === 130 ? fallbackExitCode : exitCodeFromProcess2(fallbackExitCode);
247850
+ const recordedFailure = takeRecordedCommandFailureTelemetry2();
247851
+ const success5 = !error95 && exitCode === 0;
247852
+ const terminalTelemetry = buildCommandTerminalTelemetryProperties2({
247853
+ error: error95,
247854
+ exitCode,
247855
+ recordedFailure,
247856
+ pollSignal: context.pollSignal
247857
+ });
246590
247858
  telemetry2.trackEvent(telemetryName, redactProperties2({
246591
247859
  ...extractCommandParams2(command),
246592
247860
  ...props,
247861
+ ...buildCommandTelemetryAttribution2(telemetryName, process.env.UIPATH_SKILL),
246593
247862
  command: "true",
246594
247863
  duration: String(durationMs),
246595
247864
  success: String(success5),
247865
+ ...terminalTelemetry,
246596
247866
  ...errorMessage2 ? { errorMessage: errorMessage2 } : {}
246597
247867
  }));
246598
247868
  });
@@ -246650,6 +247920,7 @@ var ScreenLogger3;
246650
247920
  ScreenLogger22.progress = progress;
246651
247921
  })(ScreenLogger3 ||= {});
246652
247922
  var sdkUserAgentHostToken4 = singleton5("SdkUserAgentHostToken");
247923
+ var shippedKeysSlot2 = singleton5("ShipSucceededDedupeKeys");
246653
247924
  var factorySlot3 = singleton5("PackagerFactoryProvider");
246654
247925
  var globalLogHandler2 = (logMessage) => {
246655
247926
  const formattedMessage = logMessage.toFormattedString();
@@ -247036,7 +248307,7 @@ var PublishDestinationKind2;
247036
248307
  var package_default4 = {
247037
248308
  name: "@uipath/project-packager",
247038
248309
  license: "MIT",
247039
- version: "1.197.0-preview.65",
248310
+ version: "1.197.0-preview.67",
247040
248311
  description: "UiPath Project Packager - core library for packing individual UiPath projects",
247041
248312
  type: "module",
247042
248313
  main: "./dist/index.js",
@@ -247819,7 +249090,7 @@ class SolutionLoader {
247819
249090
  }
247820
249091
  }
247821
249092
  function validateSolutionFile(parsed, solutionFilePath) {
247822
- if (!isRecord2(parsed)) {
249093
+ if (!isRecord4(parsed)) {
247823
249094
  throw new Error(translate.t("solutionpackager.solutionLoader.errors.invalidSolution", {
247824
249095
  path: solutionFilePath
247825
249096
  }));
@@ -247830,7 +249101,7 @@ function validateSolutionFile(parsed, solutionFilePath) {
247830
249101
  }));
247831
249102
  }
247832
249103
  for (const [index, project] of parsed.Projects.entries()) {
247833
- if (!isRecord2(project)) {
249104
+ if (!isRecord4(project)) {
247834
249105
  throw new Error(translate.t("solutionpackager.solutionLoader.errors.projectMustBeObject", {
247835
249106
  path: solutionFilePath,
247836
249107
  index
@@ -247847,7 +249118,7 @@ function validateSolutionFile(parsed, solutionFilePath) {
247847
249118
  }
247848
249119
  return parsed;
247849
249120
  }
247850
- function isRecord2(value) {
249121
+ function isRecord4(value) {
247851
249122
  return typeof value === "object" && value !== null && !Array.isArray(value);
247852
249123
  }
247853
249124
 
@@ -265178,4 +266449,4 @@ export {
265178
266449
  packSolutionAsync
265179
266450
  };
265180
266451
 
265181
- //# debugId=7BE336C1B1CB984B64756E2164756E21
266452
+ //# debugId=E62515A8A62A413D64756E2164756E21