@uipath/solution-tool 1.197.0-preview.64 → 1.197.0-preview.66
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/deploy.js +582 -13
- package/dist/init.js +577 -8
- package/dist/pack.js +1294 -23
- package/dist/publish.js +578 -9
- package/dist/resource.js +577 -8
- package/dist/tool.js +1446 -31
- package/package.json +2 -2
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.
|
|
201021
|
+
version: "1.197.0-preview.66",
|
|
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
|
-
|
|
212507
|
-
|
|
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
|
-
|
|
212982
|
-
|
|
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(
|
|
213808
|
+
context.exit(fallbackExitCode);
|
|
213252
213809
|
}
|
|
213253
213810
|
const durationMs = performance.now() - startTime;
|
|
213254
|
-
const
|
|
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
|
|
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.
|
|
236769
|
+
version: "1.197.0-preview.66",
|
|
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
|
|
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
|
-
|
|
245849
|
-
|
|
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
|
-
|
|
246321
|
-
|
|
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(
|
|
247846
|
+
context.exit(fallbackExitCode);
|
|
246587
247847
|
}
|
|
246588
247848
|
const durationMs = performance.now() - startTime;
|
|
246589
|
-
const
|
|
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.
|
|
248310
|
+
version: "1.197.0-preview.66",
|
|
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 (!
|
|
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 (!
|
|
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
|
|
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=
|
|
266452
|
+
//# debugId=507345A9EB706D5564756E2164756E21
|