@swmansion/argent 0.18.1-next.8 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bin/argent-android-devtools-0.1.0.apk +0 -0
- package/bin/darwin/ax-service +0 -0
- package/bin/darwin/simulator-server +0 -0
- package/bin/darwin/tvos-ax-service +0 -0
- package/bin/darwin/tvos-hid-daemon +0 -0
- package/bin/linux/simulator-server +0 -0
- package/bin/linux-arm64/simulator-server +0 -0
- package/bin/tcp/ax-service +0 -0
- package/bin/win32/simulator-server.exe +0 -0
- package/dist/cli-cmds.mjs +2087 -876
- package/dist/cli.js +11 -7
- package/dist/cli.js.map +1 -1
- package/dist/installer-help.d.ts +13 -2
- package/dist/installer-help.js +41 -2
- package/dist/installer-help.js.map +1 -1
- package/dist/installer.mjs +838 -464
- package/dist/mcp-server.mjs +1114 -775
- package/dist/tool-server.cjs +2421 -1672
- package/dylibs/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/libKeyboardPatch.dylib +0 -0
- package/dylibs/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/tcp/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/tcp/libKeyboardPatch.dylib +0 -0
- package/dylibs/tcp/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/tvos/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/tvos/libKeyboardPatch.dylib +0 -0
- package/dylibs/tvos/libNativeDevtoolsIos.dylib +0 -0
- package/package.json +4 -1
- package/skills/argent-create-flow/SKILL.md +32 -23
- package/skills/argent-device-interact/SKILL.md +13 -3
- package/skills/argent-test-ui-flow/SKILL.md +1 -1
package/dist/mcp-server.mjs
CHANGED
|
@@ -5,7 +5,13 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var
|
|
8
|
+
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
9
|
+
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
10
|
+
}) : x)(function(x) {
|
|
11
|
+
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
12
|
+
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
13
|
+
});
|
|
14
|
+
var __commonJS = (cb, mod) => function __require2() {
|
|
9
15
|
try {
|
|
10
16
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
11
17
|
} catch (e) {
|
|
@@ -2984,7 +2990,7 @@ var require_compile = __commonJS({
|
|
|
2984
2990
|
const schOrFunc = root.refs[ref];
|
|
2985
2991
|
if (schOrFunc)
|
|
2986
2992
|
return schOrFunc;
|
|
2987
|
-
let _sch =
|
|
2993
|
+
let _sch = resolve8.call(this, root, ref);
|
|
2988
2994
|
if (_sch === void 0) {
|
|
2989
2995
|
const schema = (_a3 = root.localRefs) === null || _a3 === void 0 ? void 0 : _a3[ref];
|
|
2990
2996
|
const { schemaId } = this.opts;
|
|
@@ -3011,7 +3017,7 @@ var require_compile = __commonJS({
|
|
|
3011
3017
|
function sameSchemaEnv(s1, s2) {
|
|
3012
3018
|
return s1.schema === s2.schema && s1.root === s2.root && s1.baseId === s2.baseId;
|
|
3013
3019
|
}
|
|
3014
|
-
function
|
|
3020
|
+
function resolve8(root, ref) {
|
|
3015
3021
|
let sch;
|
|
3016
3022
|
while (typeof (sch = this.refs[ref]) == "string")
|
|
3017
3023
|
ref = sch;
|
|
@@ -3229,8 +3235,8 @@ var require_utils = __commonJS({
|
|
|
3229
3235
|
}
|
|
3230
3236
|
return ind;
|
|
3231
3237
|
}
|
|
3232
|
-
function removeDotSegments(
|
|
3233
|
-
let input =
|
|
3238
|
+
function removeDotSegments(path13) {
|
|
3239
|
+
let input = path13;
|
|
3234
3240
|
const output = [];
|
|
3235
3241
|
let nextSlash = -1;
|
|
3236
3242
|
let len = 0;
|
|
@@ -3482,8 +3488,8 @@ var require_schemes = __commonJS({
|
|
|
3482
3488
|
wsComponent.secure = void 0;
|
|
3483
3489
|
}
|
|
3484
3490
|
if (wsComponent.resourceName) {
|
|
3485
|
-
const [
|
|
3486
|
-
wsComponent.path =
|
|
3491
|
+
const [path13, query] = wsComponent.resourceName.split("?");
|
|
3492
|
+
wsComponent.path = path13 && path13 !== "/" ? path13 : void 0;
|
|
3487
3493
|
wsComponent.query = query;
|
|
3488
3494
|
wsComponent.resourceName = void 0;
|
|
3489
3495
|
}
|
|
@@ -3642,7 +3648,7 @@ var require_fast_uri = __commonJS({
|
|
|
3642
3648
|
}
|
|
3643
3649
|
return uri;
|
|
3644
3650
|
}
|
|
3645
|
-
function
|
|
3651
|
+
function resolve8(baseURI, relativeURI, options) {
|
|
3646
3652
|
const schemelessOptions = options ? Object.assign({ scheme: "null" }, options) : { scheme: "null" };
|
|
3647
3653
|
const resolved = resolveComponent(parse3(baseURI, schemelessOptions), parse3(relativeURI, schemelessOptions), schemelessOptions, true);
|
|
3648
3654
|
schemelessOptions.skipEscape = true;
|
|
@@ -3900,7 +3906,7 @@ var require_fast_uri = __commonJS({
|
|
|
3900
3906
|
var fastUri = {
|
|
3901
3907
|
SCHEMES,
|
|
3902
3908
|
normalize: normalize2,
|
|
3903
|
-
resolve:
|
|
3909
|
+
resolve: resolve8,
|
|
3904
3910
|
resolveComponent,
|
|
3905
3911
|
equal,
|
|
3906
3912
|
serialize,
|
|
@@ -6876,12 +6882,12 @@ var require_dist = __commonJS({
|
|
|
6876
6882
|
throw new Error(`Unknown format "${name}"`);
|
|
6877
6883
|
return f;
|
|
6878
6884
|
};
|
|
6879
|
-
function addFormats(ajv, list,
|
|
6885
|
+
function addFormats(ajv, list, fs10, exportName) {
|
|
6880
6886
|
var _a3;
|
|
6881
6887
|
var _b;
|
|
6882
6888
|
(_a3 = (_b = ajv.opts.code).formats) !== null && _a3 !== void 0 ? _a3 : _b.formats = (0, codegen_1._)`require("ajv-formats/dist/formats").${exportName}`;
|
|
6883
6889
|
for (const f of list)
|
|
6884
|
-
ajv.addFormat(f,
|
|
6890
|
+
ajv.addFormat(f, fs10[f]);
|
|
6885
6891
|
}
|
|
6886
6892
|
module.exports = exports = formatsPlugin;
|
|
6887
6893
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -6889,6 +6895,325 @@ var require_dist = __commonJS({
|
|
|
6889
6895
|
}
|
|
6890
6896
|
});
|
|
6891
6897
|
|
|
6898
|
+
// ../../node_modules/dotenv/lib/main.js
|
|
6899
|
+
var require_main = __commonJS({
|
|
6900
|
+
"../../node_modules/dotenv/lib/main.js"(exports, module) {
|
|
6901
|
+
var fs10 = __require("fs");
|
|
6902
|
+
var path13 = __require("path");
|
|
6903
|
+
var os2 = __require("os");
|
|
6904
|
+
var crypto3 = __require("crypto");
|
|
6905
|
+
var TIPS = [
|
|
6906
|
+
"\u25C8 encrypted .env [www.dotenvx.com]",
|
|
6907
|
+
"\u25C8 secrets for agents [www.dotenvx.com]",
|
|
6908
|
+
"\u2301 auth for agents [www.vestauth.com]",
|
|
6909
|
+
"\u2318 custom filepath { path: '/custom/path/.env' }",
|
|
6910
|
+
"\u2318 enable debugging { debug: true }",
|
|
6911
|
+
"\u2318 override existing { override: true }",
|
|
6912
|
+
"\u2318 suppress logs { quiet: true }",
|
|
6913
|
+
"\u2318 multiple files { path: ['.env.local', '.env'] }"
|
|
6914
|
+
];
|
|
6915
|
+
function _getRandomTip() {
|
|
6916
|
+
return TIPS[Math.floor(Math.random() * TIPS.length)];
|
|
6917
|
+
}
|
|
6918
|
+
function parseBoolean(value) {
|
|
6919
|
+
if (typeof value === "string") {
|
|
6920
|
+
return !["false", "0", "no", "off", ""].includes(value.toLowerCase());
|
|
6921
|
+
}
|
|
6922
|
+
return Boolean(value);
|
|
6923
|
+
}
|
|
6924
|
+
function supportsAnsi() {
|
|
6925
|
+
return process.stdout.isTTY;
|
|
6926
|
+
}
|
|
6927
|
+
function dim(text) {
|
|
6928
|
+
return supportsAnsi() ? `\x1B[2m${text}\x1B[0m` : text;
|
|
6929
|
+
}
|
|
6930
|
+
var LINE = /(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;
|
|
6931
|
+
function parse3(src) {
|
|
6932
|
+
const obj = {};
|
|
6933
|
+
let lines = src.toString();
|
|
6934
|
+
lines = lines.replace(/\r\n?/mg, "\n");
|
|
6935
|
+
let match;
|
|
6936
|
+
while ((match = LINE.exec(lines)) != null) {
|
|
6937
|
+
const key = match[1];
|
|
6938
|
+
let value = match[2] || "";
|
|
6939
|
+
value = value.trim();
|
|
6940
|
+
const maybeQuote = value[0];
|
|
6941
|
+
value = value.replace(/^(['"`])([\s\S]*)\1$/mg, "$2");
|
|
6942
|
+
if (maybeQuote === '"') {
|
|
6943
|
+
value = value.replace(/\\n/g, "\n");
|
|
6944
|
+
value = value.replace(/\\r/g, "\r");
|
|
6945
|
+
}
|
|
6946
|
+
obj[key] = value;
|
|
6947
|
+
}
|
|
6948
|
+
return obj;
|
|
6949
|
+
}
|
|
6950
|
+
function _parseVault(options) {
|
|
6951
|
+
options = options || {};
|
|
6952
|
+
const vaultPath = _vaultPath(options);
|
|
6953
|
+
options.path = vaultPath;
|
|
6954
|
+
const result = DotenvModule.configDotenv(options);
|
|
6955
|
+
if (!result.parsed) {
|
|
6956
|
+
const err = new Error(`MISSING_DATA: Cannot parse ${vaultPath} for an unknown reason`);
|
|
6957
|
+
err.code = "MISSING_DATA";
|
|
6958
|
+
throw err;
|
|
6959
|
+
}
|
|
6960
|
+
const keys = _dotenvKey(options).split(",");
|
|
6961
|
+
const length = keys.length;
|
|
6962
|
+
let decrypted;
|
|
6963
|
+
for (let i = 0; i < length; i++) {
|
|
6964
|
+
try {
|
|
6965
|
+
const key = keys[i].trim();
|
|
6966
|
+
const attrs = _instructions(result, key);
|
|
6967
|
+
decrypted = DotenvModule.decrypt(attrs.ciphertext, attrs.key);
|
|
6968
|
+
break;
|
|
6969
|
+
} catch (error2) {
|
|
6970
|
+
if (i + 1 >= length) {
|
|
6971
|
+
throw error2;
|
|
6972
|
+
}
|
|
6973
|
+
}
|
|
6974
|
+
}
|
|
6975
|
+
return DotenvModule.parse(decrypted);
|
|
6976
|
+
}
|
|
6977
|
+
function _warn(message) {
|
|
6978
|
+
console.error(`\u26A0 ${message}`);
|
|
6979
|
+
}
|
|
6980
|
+
function _debug(message) {
|
|
6981
|
+
console.log(`\u2506 ${message}`);
|
|
6982
|
+
}
|
|
6983
|
+
function _log(message) {
|
|
6984
|
+
console.log(`\u25C7 ${message}`);
|
|
6985
|
+
}
|
|
6986
|
+
function _dotenvKey(options) {
|
|
6987
|
+
if (options && options.DOTENV_KEY && options.DOTENV_KEY.length > 0) {
|
|
6988
|
+
return options.DOTENV_KEY;
|
|
6989
|
+
}
|
|
6990
|
+
if (process.env.DOTENV_KEY && process.env.DOTENV_KEY.length > 0) {
|
|
6991
|
+
return process.env.DOTENV_KEY;
|
|
6992
|
+
}
|
|
6993
|
+
return "";
|
|
6994
|
+
}
|
|
6995
|
+
function _instructions(result, dotenvKey) {
|
|
6996
|
+
let uri;
|
|
6997
|
+
try {
|
|
6998
|
+
uri = new URL(dotenvKey);
|
|
6999
|
+
} catch (error2) {
|
|
7000
|
+
if (error2.code === "ERR_INVALID_URL") {
|
|
7001
|
+
const err = new Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");
|
|
7002
|
+
err.code = "INVALID_DOTENV_KEY";
|
|
7003
|
+
throw err;
|
|
7004
|
+
}
|
|
7005
|
+
throw error2;
|
|
7006
|
+
}
|
|
7007
|
+
const key = uri.password;
|
|
7008
|
+
if (!key) {
|
|
7009
|
+
const err = new Error("INVALID_DOTENV_KEY: Missing key part");
|
|
7010
|
+
err.code = "INVALID_DOTENV_KEY";
|
|
7011
|
+
throw err;
|
|
7012
|
+
}
|
|
7013
|
+
const environment = uri.searchParams.get("environment");
|
|
7014
|
+
if (!environment) {
|
|
7015
|
+
const err = new Error("INVALID_DOTENV_KEY: Missing environment part");
|
|
7016
|
+
err.code = "INVALID_DOTENV_KEY";
|
|
7017
|
+
throw err;
|
|
7018
|
+
}
|
|
7019
|
+
const environmentKey = `DOTENV_VAULT_${environment.toUpperCase()}`;
|
|
7020
|
+
const ciphertext = result.parsed[environmentKey];
|
|
7021
|
+
if (!ciphertext) {
|
|
7022
|
+
const err = new Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${environmentKey} in your .env.vault file.`);
|
|
7023
|
+
err.code = "NOT_FOUND_DOTENV_ENVIRONMENT";
|
|
7024
|
+
throw err;
|
|
7025
|
+
}
|
|
7026
|
+
return { ciphertext, key };
|
|
7027
|
+
}
|
|
7028
|
+
function _vaultPath(options) {
|
|
7029
|
+
let possibleVaultPath = null;
|
|
7030
|
+
if (options && options.path && options.path.length > 0) {
|
|
7031
|
+
if (Array.isArray(options.path)) {
|
|
7032
|
+
for (const filepath of options.path) {
|
|
7033
|
+
if (fs10.existsSync(filepath)) {
|
|
7034
|
+
possibleVaultPath = filepath.endsWith(".vault") ? filepath : `${filepath}.vault`;
|
|
7035
|
+
}
|
|
7036
|
+
}
|
|
7037
|
+
} else {
|
|
7038
|
+
possibleVaultPath = options.path.endsWith(".vault") ? options.path : `${options.path}.vault`;
|
|
7039
|
+
}
|
|
7040
|
+
} else {
|
|
7041
|
+
possibleVaultPath = path13.resolve(process.cwd(), ".env.vault");
|
|
7042
|
+
}
|
|
7043
|
+
if (fs10.existsSync(possibleVaultPath)) {
|
|
7044
|
+
return possibleVaultPath;
|
|
7045
|
+
}
|
|
7046
|
+
return null;
|
|
7047
|
+
}
|
|
7048
|
+
function _resolveHome(envPath) {
|
|
7049
|
+
return envPath[0] === "~" ? path13.join(os2.homedir(), envPath.slice(1)) : envPath;
|
|
7050
|
+
}
|
|
7051
|
+
function _configVault(options) {
|
|
7052
|
+
const debug = parseBoolean(process.env.DOTENV_CONFIG_DEBUG || options && options.debug);
|
|
7053
|
+
const quiet = parseBoolean(process.env.DOTENV_CONFIG_QUIET || options && options.quiet);
|
|
7054
|
+
if (debug || !quiet) {
|
|
7055
|
+
_log("loading env from encrypted .env.vault");
|
|
7056
|
+
}
|
|
7057
|
+
const parsed = DotenvModule._parseVault(options);
|
|
7058
|
+
let processEnv = process.env;
|
|
7059
|
+
if (options && options.processEnv != null) {
|
|
7060
|
+
processEnv = options.processEnv;
|
|
7061
|
+
}
|
|
7062
|
+
DotenvModule.populate(processEnv, parsed, options);
|
|
7063
|
+
return { parsed };
|
|
7064
|
+
}
|
|
7065
|
+
function configDotenv(options) {
|
|
7066
|
+
const dotenvPath = path13.resolve(process.cwd(), ".env");
|
|
7067
|
+
let encoding = "utf8";
|
|
7068
|
+
let processEnv = process.env;
|
|
7069
|
+
if (options && options.processEnv != null) {
|
|
7070
|
+
processEnv = options.processEnv;
|
|
7071
|
+
}
|
|
7072
|
+
let debug = parseBoolean(processEnv.DOTENV_CONFIG_DEBUG || options && options.debug);
|
|
7073
|
+
let quiet = parseBoolean(processEnv.DOTENV_CONFIG_QUIET || options && options.quiet);
|
|
7074
|
+
if (options && options.encoding) {
|
|
7075
|
+
encoding = options.encoding;
|
|
7076
|
+
} else {
|
|
7077
|
+
if (debug) {
|
|
7078
|
+
_debug("no encoding is specified (UTF-8 is used by default)");
|
|
7079
|
+
}
|
|
7080
|
+
}
|
|
7081
|
+
let optionPaths = [dotenvPath];
|
|
7082
|
+
if (options && options.path) {
|
|
7083
|
+
if (!Array.isArray(options.path)) {
|
|
7084
|
+
optionPaths = [_resolveHome(options.path)];
|
|
7085
|
+
} else {
|
|
7086
|
+
optionPaths = [];
|
|
7087
|
+
for (const filepath of options.path) {
|
|
7088
|
+
optionPaths.push(_resolveHome(filepath));
|
|
7089
|
+
}
|
|
7090
|
+
}
|
|
7091
|
+
}
|
|
7092
|
+
let lastError;
|
|
7093
|
+
const parsedAll = {};
|
|
7094
|
+
for (const path14 of optionPaths) {
|
|
7095
|
+
try {
|
|
7096
|
+
const parsed = DotenvModule.parse(fs10.readFileSync(path14, { encoding }));
|
|
7097
|
+
DotenvModule.populate(parsedAll, parsed, options);
|
|
7098
|
+
} catch (e) {
|
|
7099
|
+
if (debug) {
|
|
7100
|
+
_debug(`failed to load ${path14} ${e.message}`);
|
|
7101
|
+
}
|
|
7102
|
+
lastError = e;
|
|
7103
|
+
}
|
|
7104
|
+
}
|
|
7105
|
+
const populated = DotenvModule.populate(processEnv, parsedAll, options);
|
|
7106
|
+
debug = parseBoolean(processEnv.DOTENV_CONFIG_DEBUG || debug);
|
|
7107
|
+
quiet = parseBoolean(processEnv.DOTENV_CONFIG_QUIET || quiet);
|
|
7108
|
+
if (debug || !quiet) {
|
|
7109
|
+
const keysCount = Object.keys(populated).length;
|
|
7110
|
+
const shortPaths = [];
|
|
7111
|
+
for (const filePath of optionPaths) {
|
|
7112
|
+
try {
|
|
7113
|
+
const relative2 = path13.relative(process.cwd(), filePath);
|
|
7114
|
+
shortPaths.push(relative2);
|
|
7115
|
+
} catch (e) {
|
|
7116
|
+
if (debug) {
|
|
7117
|
+
_debug(`failed to load ${filePath} ${e.message}`);
|
|
7118
|
+
}
|
|
7119
|
+
lastError = e;
|
|
7120
|
+
}
|
|
7121
|
+
}
|
|
7122
|
+
_log(`injected env (${keysCount}) from ${shortPaths.join(",")} ${dim(`// tip: ${_getRandomTip()}`)}`);
|
|
7123
|
+
}
|
|
7124
|
+
if (lastError) {
|
|
7125
|
+
return { parsed: parsedAll, error: lastError };
|
|
7126
|
+
} else {
|
|
7127
|
+
return { parsed: parsedAll };
|
|
7128
|
+
}
|
|
7129
|
+
}
|
|
7130
|
+
function config2(options) {
|
|
7131
|
+
if (_dotenvKey(options).length === 0) {
|
|
7132
|
+
return DotenvModule.configDotenv(options);
|
|
7133
|
+
}
|
|
7134
|
+
const vaultPath = _vaultPath(options);
|
|
7135
|
+
if (!vaultPath) {
|
|
7136
|
+
_warn(`you set DOTENV_KEY but you are missing a .env.vault file at ${vaultPath}`);
|
|
7137
|
+
return DotenvModule.configDotenv(options);
|
|
7138
|
+
}
|
|
7139
|
+
return DotenvModule._configVault(options);
|
|
7140
|
+
}
|
|
7141
|
+
function decrypt(encrypted, keyStr) {
|
|
7142
|
+
const key = Buffer.from(keyStr.slice(-64), "hex");
|
|
7143
|
+
let ciphertext = Buffer.from(encrypted, "base64");
|
|
7144
|
+
const nonce = ciphertext.subarray(0, 12);
|
|
7145
|
+
const authTag = ciphertext.subarray(-16);
|
|
7146
|
+
ciphertext = ciphertext.subarray(12, -16);
|
|
7147
|
+
try {
|
|
7148
|
+
const aesgcm = crypto3.createDecipheriv("aes-256-gcm", key, nonce);
|
|
7149
|
+
aesgcm.setAuthTag(authTag);
|
|
7150
|
+
return `${aesgcm.update(ciphertext)}${aesgcm.final()}`;
|
|
7151
|
+
} catch (error2) {
|
|
7152
|
+
const isRange = error2 instanceof RangeError;
|
|
7153
|
+
const invalidKeyLength = error2.message === "Invalid key length";
|
|
7154
|
+
const decryptionFailed = error2.message === "Unsupported state or unable to authenticate data";
|
|
7155
|
+
if (isRange || invalidKeyLength) {
|
|
7156
|
+
const err = new Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");
|
|
7157
|
+
err.code = "INVALID_DOTENV_KEY";
|
|
7158
|
+
throw err;
|
|
7159
|
+
} else if (decryptionFailed) {
|
|
7160
|
+
const err = new Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");
|
|
7161
|
+
err.code = "DECRYPTION_FAILED";
|
|
7162
|
+
throw err;
|
|
7163
|
+
} else {
|
|
7164
|
+
throw error2;
|
|
7165
|
+
}
|
|
7166
|
+
}
|
|
7167
|
+
}
|
|
7168
|
+
function populate(processEnv, parsed, options = {}) {
|
|
7169
|
+
const debug = Boolean(options && options.debug);
|
|
7170
|
+
const override = Boolean(options && options.override);
|
|
7171
|
+
const populated = {};
|
|
7172
|
+
if (typeof parsed !== "object") {
|
|
7173
|
+
const err = new Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");
|
|
7174
|
+
err.code = "OBJECT_REQUIRED";
|
|
7175
|
+
throw err;
|
|
7176
|
+
}
|
|
7177
|
+
for (const key of Object.keys(parsed)) {
|
|
7178
|
+
if (Object.prototype.hasOwnProperty.call(processEnv, key)) {
|
|
7179
|
+
if (override === true) {
|
|
7180
|
+
processEnv[key] = parsed[key];
|
|
7181
|
+
populated[key] = parsed[key];
|
|
7182
|
+
}
|
|
7183
|
+
if (debug) {
|
|
7184
|
+
if (override === true) {
|
|
7185
|
+
_debug(`"${key}" is already defined and WAS overwritten`);
|
|
7186
|
+
} else {
|
|
7187
|
+
_debug(`"${key}" is already defined and was NOT overwritten`);
|
|
7188
|
+
}
|
|
7189
|
+
}
|
|
7190
|
+
} else {
|
|
7191
|
+
processEnv[key] = parsed[key];
|
|
7192
|
+
populated[key] = parsed[key];
|
|
7193
|
+
}
|
|
7194
|
+
}
|
|
7195
|
+
return populated;
|
|
7196
|
+
}
|
|
7197
|
+
var DotenvModule = {
|
|
7198
|
+
configDotenv,
|
|
7199
|
+
_configVault,
|
|
7200
|
+
_parseVault,
|
|
7201
|
+
config: config2,
|
|
7202
|
+
decrypt,
|
|
7203
|
+
parse: parse3,
|
|
7204
|
+
populate
|
|
7205
|
+
};
|
|
7206
|
+
module.exports.configDotenv = DotenvModule.configDotenv;
|
|
7207
|
+
module.exports._configVault = DotenvModule._configVault;
|
|
7208
|
+
module.exports._parseVault = DotenvModule._parseVault;
|
|
7209
|
+
module.exports.config = DotenvModule.config;
|
|
7210
|
+
module.exports.decrypt = DotenvModule.decrypt;
|
|
7211
|
+
module.exports.parse = DotenvModule.parse;
|
|
7212
|
+
module.exports.populate = DotenvModule.populate;
|
|
7213
|
+
module.exports = DotenvModule;
|
|
7214
|
+
}
|
|
7215
|
+
});
|
|
7216
|
+
|
|
6892
7217
|
// ../argent-mcp/src/mcp-server.ts
|
|
6893
7218
|
import { appendFile, mkdir as mkdir5 } from "node:fs/promises";
|
|
6894
7219
|
import { dirname as dirname6 } from "node:path";
|
|
@@ -7137,10 +7462,10 @@ function mergeDefs(...defs) {
|
|
|
7137
7462
|
function cloneDef(schema) {
|
|
7138
7463
|
return mergeDefs(schema._zod.def);
|
|
7139
7464
|
}
|
|
7140
|
-
function getElementAtPath(obj,
|
|
7141
|
-
if (!
|
|
7465
|
+
function getElementAtPath(obj, path13) {
|
|
7466
|
+
if (!path13)
|
|
7142
7467
|
return obj;
|
|
7143
|
-
return
|
|
7468
|
+
return path13.reduce((acc, key) => acc?.[key], obj);
|
|
7144
7469
|
}
|
|
7145
7470
|
function promiseAllObject(promisesObj) {
|
|
7146
7471
|
const keys = Object.keys(promisesObj);
|
|
@@ -7549,11 +7874,11 @@ function explicitlyAborted(x, startIndex = 0) {
|
|
|
7549
7874
|
}
|
|
7550
7875
|
return false;
|
|
7551
7876
|
}
|
|
7552
|
-
function prefixIssues(
|
|
7877
|
+
function prefixIssues(path13, issues) {
|
|
7553
7878
|
return issues.map((iss) => {
|
|
7554
7879
|
var _a3;
|
|
7555
7880
|
(_a3 = iss).path ?? (_a3.path = []);
|
|
7556
|
-
iss.path.unshift(
|
|
7881
|
+
iss.path.unshift(path13);
|
|
7557
7882
|
return iss;
|
|
7558
7883
|
});
|
|
7559
7884
|
}
|
|
@@ -7700,16 +8025,16 @@ function flattenError(error2, mapper = (issue2) => issue2.message) {
|
|
|
7700
8025
|
}
|
|
7701
8026
|
function formatError(error2, mapper = (issue2) => issue2.message) {
|
|
7702
8027
|
const fieldErrors = { _errors: [] };
|
|
7703
|
-
const processError = (error3,
|
|
8028
|
+
const processError = (error3, path13 = []) => {
|
|
7704
8029
|
for (const issue2 of error3.issues) {
|
|
7705
8030
|
if (issue2.code === "invalid_union" && issue2.errors.length) {
|
|
7706
|
-
issue2.errors.map((issues) => processError({ issues }, [...
|
|
8031
|
+
issue2.errors.map((issues) => processError({ issues }, [...path13, ...issue2.path]));
|
|
7707
8032
|
} else if (issue2.code === "invalid_key") {
|
|
7708
|
-
processError({ issues: issue2.issues }, [...
|
|
8033
|
+
processError({ issues: issue2.issues }, [...path13, ...issue2.path]);
|
|
7709
8034
|
} else if (issue2.code === "invalid_element") {
|
|
7710
|
-
processError({ issues: issue2.issues }, [...
|
|
8035
|
+
processError({ issues: issue2.issues }, [...path13, ...issue2.path]);
|
|
7711
8036
|
} else {
|
|
7712
|
-
const fullpath = [...
|
|
8037
|
+
const fullpath = [...path13, ...issue2.path];
|
|
7713
8038
|
if (fullpath.length === 0) {
|
|
7714
8039
|
fieldErrors._errors.push(mapper(issue2));
|
|
7715
8040
|
} else {
|
|
@@ -13701,12 +14026,12 @@ var StdioServerTransport = class {
|
|
|
13701
14026
|
this.onclose?.();
|
|
13702
14027
|
}
|
|
13703
14028
|
send(message) {
|
|
13704
|
-
return new Promise((
|
|
14029
|
+
return new Promise((resolve8) => {
|
|
13705
14030
|
const json = serializeMessage(message);
|
|
13706
14031
|
if (this._stdout.write(json)) {
|
|
13707
|
-
|
|
14032
|
+
resolve8();
|
|
13708
14033
|
} else {
|
|
13709
|
-
this._stdout.once("drain",
|
|
14034
|
+
this._stdout.once("drain", resolve8);
|
|
13710
14035
|
}
|
|
13711
14036
|
});
|
|
13712
14037
|
}
|
|
@@ -14304,7 +14629,7 @@ var Protocol = class {
|
|
|
14304
14629
|
return;
|
|
14305
14630
|
}
|
|
14306
14631
|
const pollInterval = task2.pollInterval ?? this._options?.defaultTaskPollInterval ?? 1e3;
|
|
14307
|
-
await new Promise((
|
|
14632
|
+
await new Promise((resolve8) => setTimeout(resolve8, pollInterval));
|
|
14308
14633
|
options?.signal?.throwIfAborted();
|
|
14309
14634
|
}
|
|
14310
14635
|
} catch (error2) {
|
|
@@ -14321,7 +14646,7 @@ var Protocol = class {
|
|
|
14321
14646
|
*/
|
|
14322
14647
|
request(request, resultSchema, options) {
|
|
14323
14648
|
const { relatedRequestId, resumptionToken, onresumptiontoken, task, relatedTask } = options ?? {};
|
|
14324
|
-
return new Promise((
|
|
14649
|
+
return new Promise((resolve8, reject) => {
|
|
14325
14650
|
const earlyReject = (error2) => {
|
|
14326
14651
|
reject(error2);
|
|
14327
14652
|
};
|
|
@@ -14399,7 +14724,7 @@ var Protocol = class {
|
|
|
14399
14724
|
if (!parseResult.success) {
|
|
14400
14725
|
reject(parseResult.error);
|
|
14401
14726
|
} else {
|
|
14402
|
-
|
|
14727
|
+
resolve8(parseResult.data);
|
|
14403
14728
|
}
|
|
14404
14729
|
} catch (error2) {
|
|
14405
14730
|
reject(error2);
|
|
@@ -14660,12 +14985,12 @@ var Protocol = class {
|
|
|
14660
14985
|
}
|
|
14661
14986
|
} catch {
|
|
14662
14987
|
}
|
|
14663
|
-
return new Promise((
|
|
14988
|
+
return new Promise((resolve8, reject) => {
|
|
14664
14989
|
if (signal.aborted) {
|
|
14665
14990
|
reject(new McpError(ErrorCode.InvalidRequest, "Request cancelled"));
|
|
14666
14991
|
return;
|
|
14667
14992
|
}
|
|
14668
|
-
const timeoutId = setTimeout(
|
|
14993
|
+
const timeoutId = setTimeout(resolve8, interval);
|
|
14669
14994
|
signal.addEventListener("abort", () => {
|
|
14670
14995
|
clearTimeout(timeoutId);
|
|
14671
14996
|
reject(new McpError(ErrorCode.InvalidRequest, "Request cancelled"));
|
|
@@ -15490,7 +15815,7 @@ function generateToken() {
|
|
|
15490
15815
|
return randomBytes(AUTH_TOKEN_BYTES).toString("hex");
|
|
15491
15816
|
}
|
|
15492
15817
|
function findFreePort() {
|
|
15493
|
-
return new Promise((
|
|
15818
|
+
return new Promise((resolve8, reject) => {
|
|
15494
15819
|
const srv = net.createServer();
|
|
15495
15820
|
srv.listen(0, "127.0.0.1", () => {
|
|
15496
15821
|
const addr = srv.address();
|
|
@@ -15501,7 +15826,7 @@ function findFreePort() {
|
|
|
15501
15826
|
const port = addr.port;
|
|
15502
15827
|
srv.close((err) => {
|
|
15503
15828
|
if (err) reject(err);
|
|
15504
|
-
else
|
|
15829
|
+
else resolve8(port);
|
|
15505
15830
|
});
|
|
15506
15831
|
});
|
|
15507
15832
|
srv.on("error", reject);
|
|
@@ -15599,7 +15924,7 @@ function killSpawnedChild(child, pid) {
|
|
|
15599
15924
|
}
|
|
15600
15925
|
}
|
|
15601
15926
|
function spawnToolsServer(paths, port, options = {}) {
|
|
15602
|
-
return new Promise((
|
|
15927
|
+
return new Promise((resolve8, reject) => {
|
|
15603
15928
|
let logFd;
|
|
15604
15929
|
try {
|
|
15605
15930
|
fs.mkdirSync(STATE_DIR, { recursive: true });
|
|
@@ -15636,7 +15961,7 @@ function spawnToolsServer(paths, port, options = {}) {
|
|
|
15636
15961
|
rl.close();
|
|
15637
15962
|
child.stdout?.resume();
|
|
15638
15963
|
child.stdout?.unref?.();
|
|
15639
|
-
settle(() =>
|
|
15964
|
+
settle(() => resolve8({ port: actualPort, pid }));
|
|
15640
15965
|
}
|
|
15641
15966
|
});
|
|
15642
15967
|
child.on("error", (err) => {
|
|
@@ -15955,9 +16280,9 @@ async function isRemoteRouted() {
|
|
|
15955
16280
|
}
|
|
15956
16281
|
|
|
15957
16282
|
// ../argent-tools-client/src/file-inputs.ts
|
|
15958
|
-
import { createHash as createHash2, randomUUID } from "node:crypto";
|
|
16283
|
+
import { createHash as createHash2, randomUUID as randomUUID3 } from "node:crypto";
|
|
15959
16284
|
import { createReadStream } from "node:fs";
|
|
15960
|
-
import { mkdir as mkdir3, readFile as readFile3, rm as rm2, stat, writeFile as writeFile3 } from "node:fs/promises";
|
|
16285
|
+
import { mkdir as mkdir3, readFile as readFile3, rm as rm2, stat as stat2, writeFile as writeFile3 } from "node:fs/promises";
|
|
15961
16286
|
import { tmpdir } from "node:os";
|
|
15962
16287
|
import * as path3 from "node:path";
|
|
15963
16288
|
|
|
@@ -16063,217 +16388,534 @@ async function safeExtractTarGz(tarPath, destDir, expectedName) {
|
|
|
16063
16388
|
return resolveMember(destDir, expectedName);
|
|
16064
16389
|
}
|
|
16065
16390
|
|
|
16066
|
-
// ../
|
|
16067
|
-
|
|
16068
|
-
|
|
16069
|
-
|
|
16070
|
-
function interpolatePath(template, args) {
|
|
16071
|
-
let missing = false;
|
|
16072
|
-
const out = template.replace(/\$\{([A-Za-z0-9_]+)\}/g, (_m, name) => {
|
|
16073
|
-
const v = args[name];
|
|
16074
|
-
if (typeof v !== "string" || v.length === 0) {
|
|
16075
|
-
missing = true;
|
|
16076
|
-
return "";
|
|
16077
|
-
}
|
|
16078
|
-
return v;
|
|
16079
|
-
});
|
|
16080
|
-
return missing ? null : out;
|
|
16081
|
-
}
|
|
16082
|
-
async function tarball(sourcePath) {
|
|
16083
|
-
const tarPath = path3.join(tmpdir(), `argent-upload-${randomUUID()}.tar.gz`);
|
|
16084
|
-
await createTarGzFile(sourcePath, tarPath);
|
|
16085
|
-
return tarPath;
|
|
16086
|
-
}
|
|
16087
|
-
function sha256File(filePath) {
|
|
16088
|
-
return new Promise((resolve7, reject) => {
|
|
16089
|
-
const hash = createHash2("sha256");
|
|
16090
|
-
createReadStream(filePath).on("data", (chunk) => hash.update(chunk)).on("end", () => resolve7(hash.digest("hex"))).on("error", reject);
|
|
16091
|
-
});
|
|
16092
|
-
}
|
|
16093
|
-
async function uploadTar(tarPath, endpoint) {
|
|
16094
|
-
const init = {
|
|
16095
|
-
method: "POST",
|
|
16096
|
-
headers: {
|
|
16097
|
-
"content-type": "application/gzip",
|
|
16098
|
-
...endpoint.token ? { Authorization: `Bearer ${endpoint.token}` } : {}
|
|
16099
|
-
},
|
|
16100
|
-
body: createReadStream(tarPath),
|
|
16101
|
-
duplex: "half"
|
|
16102
|
-
};
|
|
16103
|
-
const res = await fetch(`${endpoint.url}/upload`, init);
|
|
16104
|
-
if (!res.ok) {
|
|
16105
|
-
throw new Error(`Upload to ${endpoint.url}/upload failed: ${res.status} ${res.statusText}`);
|
|
16106
|
-
}
|
|
16107
|
-
const json = await res.json();
|
|
16108
|
-
return json.uploadId;
|
|
16109
|
-
}
|
|
16110
|
-
async function prepareFileInputs(specs, args, opts) {
|
|
16111
|
-
if (!specs || specs.length === 0 || typeof args !== "object" || args === null) {
|
|
16112
|
-
return args;
|
|
16113
|
-
}
|
|
16114
|
-
const record2 = args;
|
|
16115
|
-
let out = null;
|
|
16116
|
-
for (const spec of specs) {
|
|
16117
|
-
if (spec.target in record2 && typeof record2[spec.target] !== "string") continue;
|
|
16118
|
-
const filePath = interpolatePath(spec.path, record2);
|
|
16119
|
-
if (filePath === null) continue;
|
|
16120
|
-
if (spec.target in record2 && record2[spec.target] !== filePath) continue;
|
|
16121
|
-
const wire = { [FILE_INPUT_MARKER]: true, path: filePath };
|
|
16122
|
-
if (spec.kind === "file") {
|
|
16123
|
-
try {
|
|
16124
|
-
const st = await stat(filePath);
|
|
16125
|
-
if (st.isFile()) {
|
|
16126
|
-
wire.size = st.size;
|
|
16127
|
-
wire.mtimeMs = st.mtimeMs;
|
|
16128
|
-
if (opts.includeContent && st.size <= MAX_CONTENT_BYTES) {
|
|
16129
|
-
wire.content = (await readFile3(filePath)).toString("base64");
|
|
16130
|
-
} else if (opts.includeContent) {
|
|
16131
|
-
wire.contentOmitted = "size-limit";
|
|
16132
|
-
}
|
|
16133
|
-
}
|
|
16134
|
-
} catch {
|
|
16135
|
-
}
|
|
16136
|
-
}
|
|
16137
|
-
if (spec.kind === "tar-upload") {
|
|
16138
|
-
const st = await stat(filePath).catch(() => null);
|
|
16139
|
-
if (st) {
|
|
16140
|
-
wire.size = st.size;
|
|
16141
|
-
wire.mtimeMs = st.mtimeMs;
|
|
16142
|
-
}
|
|
16143
|
-
if (opts.uploadEndpoint && st) {
|
|
16144
|
-
let tarPath = null;
|
|
16145
|
-
try {
|
|
16146
|
-
process.stderr.write(
|
|
16147
|
-
`Uploading ${path3.basename(filePath)} to the remote tool-server...
|
|
16148
|
-
`
|
|
16149
|
-
);
|
|
16150
|
-
tarPath = await tarball(filePath);
|
|
16151
|
-
wire.contentHash = await sha256File(tarPath);
|
|
16152
|
-
wire.uploadId = await uploadTar(tarPath, opts.uploadEndpoint);
|
|
16153
|
-
} finally {
|
|
16154
|
-
if (tarPath) await rm2(tarPath, { force: true }).catch(() => {
|
|
16155
|
-
});
|
|
16156
|
-
}
|
|
16157
|
-
}
|
|
16158
|
-
}
|
|
16159
|
-
out = out ?? { ...record2 };
|
|
16160
|
-
out[spec.target] = wire;
|
|
16161
|
-
}
|
|
16162
|
-
return out ?? args;
|
|
16163
|
-
}
|
|
16164
|
-
function isAllowedClientFilePath(p) {
|
|
16165
|
-
if (!path3.isAbsolute(p)) return false;
|
|
16166
|
-
const segments = p.split(/[\\/]+/);
|
|
16167
|
-
if (segments.includes("..")) return false;
|
|
16168
|
-
const file = segments[segments.length - 1] ?? "";
|
|
16169
|
-
if (!/^[A-Za-z0-9_-]+\.yaml$/.test(file)) return false;
|
|
16170
|
-
return segments[segments.length - 3] === ".argent" && segments[segments.length - 2] === "flows";
|
|
16171
|
-
}
|
|
16172
|
-
function isClientFileDirective(value) {
|
|
16173
|
-
return !!value && typeof value === "object" && value[CLIENT_FILE_MARKER] === true && typeof value.path === "string" && typeof value.content === "string";
|
|
16174
|
-
}
|
|
16175
|
-
async function applyClientFileDirectives(result) {
|
|
16176
|
-
const written = [];
|
|
16177
|
-
async function walk(value) {
|
|
16178
|
-
if (isClientFileDirective(value)) {
|
|
16179
|
-
if (!isAllowedClientFilePath(value.path)) return null;
|
|
16180
|
-
try {
|
|
16181
|
-
await mkdir3(path3.dirname(value.path), { recursive: true });
|
|
16182
|
-
await writeFile3(value.path, value.content, "utf8");
|
|
16183
|
-
written.push(value.path);
|
|
16184
|
-
return value.path;
|
|
16185
|
-
} catch {
|
|
16186
|
-
return null;
|
|
16187
|
-
}
|
|
16188
|
-
}
|
|
16189
|
-
if (Array.isArray(value)) {
|
|
16190
|
-
return Promise.all(value.map(walk));
|
|
16191
|
-
}
|
|
16192
|
-
if (value && typeof value === "object") {
|
|
16193
|
-
const out = {};
|
|
16194
|
-
for (const [k, v] of Object.entries(value)) {
|
|
16195
|
-
out[k] = await walk(v);
|
|
16196
|
-
}
|
|
16197
|
-
return out;
|
|
16198
|
-
}
|
|
16199
|
-
return value;
|
|
16200
|
-
}
|
|
16201
|
-
const rewritten = await walk(result);
|
|
16202
|
-
return { result: rewritten, written };
|
|
16203
|
-
}
|
|
16391
|
+
// ../registry/src/artifacts.ts
|
|
16392
|
+
import { stat } from "node:fs/promises";
|
|
16393
|
+
import { randomUUID } from "node:crypto";
|
|
16394
|
+
import { basename as basename2, extname } from "node:path";
|
|
16204
16395
|
|
|
16205
|
-
// ../
|
|
16206
|
-
|
|
16207
|
-
|
|
16208
|
-
|
|
16209
|
-
import { basename as basename3, dirname as dirname5, extname, isAbsolute as isAbsolute3, join as join8, normalize, resolve as resolve5, sep as sep2 } from "node:path";
|
|
16210
|
-
import { createHash as createHash3 } from "node:crypto";
|
|
16396
|
+
// ../registry/src/file-inputs.ts
|
|
16397
|
+
var FLOW_NAME_CHARSET = "[A-Za-z0-9_-]+";
|
|
16398
|
+
var FLOW_NAME_PATTERN = new RegExp(`^${FLOW_NAME_CHARSET}$`);
|
|
16399
|
+
var FLOW_FILE_NAME_PATTERN = new RegExp(`^${FLOW_NAME_CHARSET}\\.yaml$`);
|
|
16211
16400
|
|
|
16212
|
-
// ../
|
|
16213
|
-
|
|
16214
|
-
|
|
16215
|
-
|
|
16216
|
-
|
|
16217
|
-
|
|
16218
|
-
|
|
16219
|
-
|
|
16220
|
-
|
|
16221
|
-
|
|
16222
|
-
|
|
16223
|
-
|
|
16224
|
-
|
|
16225
|
-
|
|
16226
|
-
|
|
16227
|
-
|
|
16228
|
-
|
|
16229
|
-
|
|
16230
|
-
|
|
16231
|
-
|
|
16232
|
-
|
|
16233
|
-
|
|
16234
|
-
|
|
16235
|
-
|
|
16236
|
-
|
|
16237
|
-
|
|
16238
|
-
|
|
16239
|
-
|
|
16240
|
-
|
|
16241
|
-
|
|
16242
|
-
|
|
16243
|
-
|
|
16244
|
-
|
|
16245
|
-
|
|
16246
|
-
|
|
16247
|
-
|
|
16248
|
-
|
|
16249
|
-
|
|
16250
|
-
|
|
16251
|
-
|
|
16252
|
-
|
|
16253
|
-
|
|
16254
|
-
|
|
16255
|
-
|
|
16256
|
-
|
|
16257
|
-
|
|
16258
|
-
|
|
16259
|
-
|
|
16260
|
-
|
|
16261
|
-
|
|
16262
|
-
|
|
16263
|
-
|
|
16264
|
-
|
|
16265
|
-
|
|
16266
|
-
|
|
16267
|
-
|
|
16268
|
-
|
|
16269
|
-
|
|
16270
|
-
|
|
16401
|
+
// ../registry/src/failure-codes.ts
|
|
16402
|
+
var FAILURE_CODES = {
|
|
16403
|
+
ARGENT_UNCLASSIFIED_FAILURE: "ARGENT_UNCLASSIFIED_FAILURE",
|
|
16404
|
+
REGISTRY_SERVICE_NOT_FOUND: "REGISTRY_SERVICE_NOT_FOUND",
|
|
16405
|
+
REGISTRY_SERVICE_INITIALIZATION_FAILED: "REGISTRY_SERVICE_INITIALIZATION_FAILED",
|
|
16406
|
+
REGISTRY_TOOL_NOT_FOUND: "REGISTRY_TOOL_NOT_FOUND",
|
|
16407
|
+
REGISTRY_TOOL_EXECUTION_FAILED: "REGISTRY_TOOL_EXECUTION_FAILED",
|
|
16408
|
+
REGISTRY_TOOL_FAILURE_UNCLASSIFIED: "REGISTRY_TOOL_FAILURE_UNCLASSIFIED",
|
|
16409
|
+
HTTP_TOOL_NOT_FOUND: "HTTP_TOOL_NOT_FOUND",
|
|
16410
|
+
HTTP_ZOD_VALIDATION_FAILED: "HTTP_ZOD_VALIDATION_FAILED",
|
|
16411
|
+
HTTP_CAPABILITY_UNSUPPORTED_OPERATION: "HTTP_CAPABILITY_UNSUPPORTED_OPERATION",
|
|
16412
|
+
HTTP_DEVICE_RESOLUTION_FAILED: "HTTP_DEVICE_RESOLUTION_FAILED",
|
|
16413
|
+
HTTP_DEPENDENCY_PREFLIGHT_MISSING: "HTTP_DEPENDENCY_PREFLIGHT_MISSING",
|
|
16414
|
+
CLI_RUN_TOOL_NOT_FOUND: "CLI_RUN_TOOL_NOT_FOUND",
|
|
16415
|
+
CLI_RUN_FLAG_PARSE_FAILED: "CLI_RUN_FLAG_PARSE_FAILED",
|
|
16416
|
+
CLI_RUN_ARGS_NOT_OBJECT: "CLI_RUN_ARGS_NOT_OBJECT",
|
|
16417
|
+
CLI_RUN_ARGS_JSON_INVALID: "CLI_RUN_ARGS_JSON_INVALID",
|
|
16418
|
+
CLI_RUN_INPUT_VALIDATION_FAILED: "CLI_RUN_INPUT_VALIDATION_FAILED",
|
|
16419
|
+
CLI_RUN_TOOL_CALL_FAILED: "CLI_RUN_TOOL_CALL_FAILED",
|
|
16420
|
+
CLI_RUN_SAVE_IMAGE_FAILED: "CLI_RUN_SAVE_IMAGE_FAILED",
|
|
16421
|
+
TOOL_CAPABILITY_UNSUPPORTED_OPERATION: "TOOL_CAPABILITY_UNSUPPORTED_OPERATION",
|
|
16422
|
+
TOOL_PLATFORM_NOT_IMPLEMENTED: "TOOL_PLATFORM_NOT_IMPLEMENTED",
|
|
16423
|
+
TOOL_DEPENDENCY_MISSING: "TOOL_DEPENDENCY_MISSING",
|
|
16424
|
+
TOOL_INPUT_INVALID: "TOOL_INPUT_INVALID",
|
|
16425
|
+
TOOLSERVER_UNHANDLED_REJECTION: "TOOLSERVER_UNHANDLED_REJECTION",
|
|
16426
|
+
TOOLSERVER_UNCAUGHT_EXCEPTION: "TOOLSERVER_UNCAUGHT_EXCEPTION",
|
|
16427
|
+
INSTALL_GLOBAL_PACKAGE_FAILED: "INSTALL_GLOBAL_PACKAGE_FAILED",
|
|
16428
|
+
INSTALL_LOCAL_PACKAGE_FAILED: "INSTALL_LOCAL_PACKAGE_FAILED",
|
|
16429
|
+
INSTALL_LOCAL_PRECONDITION_FAILED: "INSTALL_LOCAL_PRECONDITION_FAILED",
|
|
16430
|
+
INSTALL_MODE_FLAG_CONFLICT: "INSTALL_MODE_FLAG_CONFLICT",
|
|
16431
|
+
INSTALL_FROM_TAR_PACKAGE_FAILED: "INSTALL_FROM_TAR_PACKAGE_FAILED",
|
|
16432
|
+
INSTALL_INIT_TRIGGERED_UPDATE_FAILED: "INSTALL_INIT_TRIGGERED_UPDATE_FAILED",
|
|
16433
|
+
INSTALL_SKILLS_REFRESH_FAILED: "INSTALL_SKILLS_REFRESH_FAILED",
|
|
16434
|
+
INSTALL_UNCLASSIFIED_FAILED: "INSTALL_UNCLASSIFIED_FAILED",
|
|
16435
|
+
UPDATE_INSTALLED_VERSION_DETECT_FAILED: "UPDATE_INSTALLED_VERSION_DETECT_FAILED",
|
|
16436
|
+
UPDATE_INVALID_TARGET_VERSION: "UPDATE_INVALID_TARGET_VERSION",
|
|
16437
|
+
UPDATE_REGISTRY_CHECK_FAILED: "UPDATE_REGISTRY_CHECK_FAILED",
|
|
16438
|
+
UPDATE_TOOLSERVER_STOP_FAILED: "UPDATE_TOOLSERVER_STOP_FAILED",
|
|
16439
|
+
UPDATE_PACKAGE_ACTION_FAILED: "UPDATE_PACKAGE_ACTION_FAILED",
|
|
16440
|
+
UPDATE_UNCLASSIFIED_FAILED: "UPDATE_UNCLASSIFIED_FAILED",
|
|
16441
|
+
UNINSTALL_TOOLSERVER_STOP_FAILED: "UNINSTALL_TOOLSERVER_STOP_FAILED",
|
|
16442
|
+
UNINSTALL_PACKAGE_ACTION_FAILED: "UNINSTALL_PACKAGE_ACTION_FAILED",
|
|
16443
|
+
UNINSTALL_UNCLASSIFIED_FAILED: "UNINSTALL_UNCLASSIFIED_FAILED",
|
|
16444
|
+
VEGA_CLI_COMMAND_FAILED: "VEGA_CLI_COMMAND_FAILED",
|
|
16445
|
+
VEGA_INPUT_UNAVAILABLE: "VEGA_INPUT_UNAVAILABLE",
|
|
16446
|
+
VEGA_DEVICE_NOT_FOUND: "VEGA_DEVICE_NOT_FOUND",
|
|
16447
|
+
VEGA_DEVICE_NOT_REGISTERED: "VEGA_DEVICE_NOT_REGISTERED",
|
|
16448
|
+
VEGA_MULTIPLE_DEVICES: "VEGA_MULTIPLE_DEVICES",
|
|
16449
|
+
VEGA_BOOT_TIMEOUT: "VEGA_BOOT_TIMEOUT",
|
|
16450
|
+
VEGA_IMAGE_NOT_FOUND: "VEGA_IMAGE_NOT_FOUND",
|
|
16451
|
+
VEGA_ALREADY_RUNNING: "VEGA_ALREADY_RUNNING",
|
|
16452
|
+
VEGA_SCREENSHOT_FAILED: "VEGA_SCREENSHOT_FAILED",
|
|
16453
|
+
VEGA_TEXT_INVALID: "VEGA_TEXT_INVALID",
|
|
16454
|
+
ANDROID_ADB_NOT_FOUND: "ANDROID_ADB_NOT_FOUND",
|
|
16455
|
+
ANDROID_EMULATOR_NOT_FOUND: "ANDROID_EMULATOR_NOT_FOUND",
|
|
16456
|
+
ANDROID_ADB_COMMAND_FAILED: "ANDROID_ADB_COMMAND_FAILED",
|
|
16457
|
+
ANDROID_ADB_BOOT_TERMINAL_STATE: "ANDROID_ADB_BOOT_TERMINAL_STATE",
|
|
16458
|
+
ANDROID_ADB_BOOT_TIMEOUT: "ANDROID_ADB_BOOT_TIMEOUT",
|
|
16459
|
+
SIMULATOR_NETWORK_TIMEOUT: "SIMULATOR_NETWORK_TIMEOUT",
|
|
16460
|
+
SIMULATOR_NETWORK_CONNECTION_REFUSED: "SIMULATOR_NETWORK_CONNECTION_REFUSED",
|
|
16461
|
+
SIMULATOR_NETWORK_CONNECTION_RESET: "SIMULATOR_NETWORK_CONNECTION_RESET",
|
|
16462
|
+
SIMULATOR_NETWORK_ERROR: "SIMULATOR_NETWORK_ERROR",
|
|
16463
|
+
SIMULATOR_NON_JSON_RESPONSE: "SIMULATOR_NON_JSON_RESPONSE",
|
|
16464
|
+
SIMULATOR_HTTP_ERROR_RESPONSE: "SIMULATOR_HTTP_ERROR_RESPONSE",
|
|
16465
|
+
SIMULATOR_MISSING_RESPONSE_FIELDS: "SIMULATOR_MISSING_RESPONSE_FIELDS",
|
|
16466
|
+
SIMULATOR_SCREENSHOT_FAILED: "SIMULATOR_SCREENSHOT_FAILED",
|
|
16467
|
+
SIMULATOR_SERVER_FACTORY_OPTIONS_MISSING: "SIMULATOR_SERVER_FACTORY_OPTIONS_MISSING",
|
|
16468
|
+
SIMULATOR_SERVER_DEVICE_ID_INVALID: "SIMULATOR_SERVER_DEVICE_ID_INVALID",
|
|
16469
|
+
SIMULATOR_SERVER_READY_EXITED: "SIMULATOR_SERVER_READY_EXITED",
|
|
16470
|
+
SIMULATOR_SERVER_READY_TIMEOUT: "SIMULATOR_SERVER_READY_TIMEOUT",
|
|
16471
|
+
SIMULATOR_SERVER_PROCESS_ERROR: "SIMULATOR_SERVER_PROCESS_ERROR",
|
|
16472
|
+
SIMULATOR_SERVER_TERMINATED: "SIMULATOR_SERVER_TERMINATED",
|
|
16473
|
+
AX_QUERY_TIMEOUT: "AX_QUERY_TIMEOUT",
|
|
16474
|
+
AX_DAEMON_READY_TIMEOUT: "AX_DAEMON_READY_TIMEOUT",
|
|
16475
|
+
AX_DAEMON_EXITED_BEFORE_READY: "AX_DAEMON_EXITED_BEFORE_READY",
|
|
16476
|
+
AX_DAEMON_PROCESS_ERROR: "AX_DAEMON_PROCESS_ERROR",
|
|
16477
|
+
AX_FACTORY_OPTIONS_MISSING: "AX_FACTORY_OPTIONS_MISSING",
|
|
16478
|
+
AX_WRONG_PLATFORM: "AX_WRONG_PLATFORM",
|
|
16479
|
+
AX_DEVICE_ID_INVALID: "AX_DEVICE_ID_INVALID",
|
|
16480
|
+
AX_DESCRIBE_ERROR: "AX_DESCRIBE_ERROR",
|
|
16481
|
+
AX_QUERY_FAILED: "AX_QUERY_FAILED",
|
|
16482
|
+
ANDROID_LAUNCH_ACTIVITY_RESOLVE_FAILED: "ANDROID_LAUNCH_ACTIVITY_RESOLVE_FAILED",
|
|
16483
|
+
ANDROID_LAUNCH_AM_START_FAILED: "ANDROID_LAUNCH_AM_START_FAILED",
|
|
16484
|
+
ANDROID_OPEN_URL_FAILED: "ANDROID_OPEN_URL_FAILED",
|
|
16485
|
+
ANDROID_REINSTALL_INSTALL_FAILED: "ANDROID_REINSTALL_INSTALL_FAILED",
|
|
16486
|
+
ANDROID_RESTART_FAILED: "ANDROID_RESTART_FAILED",
|
|
16487
|
+
ANDROID_SETTINGS_PERMISSION_FAILED: "ANDROID_SETTINGS_PERMISSION_FAILED",
|
|
16488
|
+
IOS_LAUNCH_SIMCTL_FAILED: "IOS_LAUNCH_SIMCTL_FAILED",
|
|
16489
|
+
IOS_OPEN_URL_FAILED: "IOS_OPEN_URL_FAILED",
|
|
16490
|
+
IOS_REINSTALL_INSTALL_FAILED: "IOS_REINSTALL_INSTALL_FAILED",
|
|
16491
|
+
IOS_RESTART_LAUNCH_FAILED: "IOS_RESTART_LAUNCH_FAILED",
|
|
16492
|
+
IOS_SETTINGS_PERMISSION_FAILED: "IOS_SETTINGS_PERMISSION_FAILED",
|
|
16493
|
+
SETTINGS_PERMISSION_UNSUPPORTED: "SETTINGS_PERMISSION_UNSUPPORTED",
|
|
16494
|
+
NATIVE_DEVTOOLS_DESCRIBE_ERROR: "NATIVE_DEVTOOLS_DESCRIBE_ERROR",
|
|
16495
|
+
NATIVE_DEVTOOLS_VIEW_AT_POINT_ERROR: "NATIVE_DEVTOOLS_VIEW_AT_POINT_ERROR",
|
|
16496
|
+
NATIVE_DEVTOOLS_USER_INTERACTABLE_VIEW_AT_POINT_ERROR: "NATIVE_DEVTOOLS_USER_INTERACTABLE_VIEW_AT_POINT_ERROR",
|
|
16497
|
+
NATIVE_DEVTOOLS_FIND_VIEWS_ERROR: "NATIVE_DEVTOOLS_FIND_VIEWS_ERROR",
|
|
16498
|
+
NATIVE_DEVTOOLS_FACTORY_OPTIONS_MISSING: "NATIVE_DEVTOOLS_FACTORY_OPTIONS_MISSING",
|
|
16499
|
+
NATIVE_DEVTOOLS_WRONG_PLATFORM: "NATIVE_DEVTOOLS_WRONG_PLATFORM",
|
|
16500
|
+
NATIVE_DEVTOOLS_NOT_INJECTABLE: "NATIVE_DEVTOOLS_NOT_INJECTABLE",
|
|
16501
|
+
NATIVE_DEVTOOLS_NOT_CONNECTED: "NATIVE_DEVTOOLS_NOT_CONNECTED",
|
|
16502
|
+
NATIVE_DEVTOOLS_RPC_TIMEOUT: "NATIVE_DEVTOOLS_RPC_TIMEOUT",
|
|
16503
|
+
NATIVE_DEVTOOLS_RPC_ERROR: "NATIVE_DEVTOOLS_RPC_ERROR",
|
|
16504
|
+
NATIVE_DEVTOOLS_SERVICE_DISPOSED: "NATIVE_DEVTOOLS_SERVICE_DISPOSED",
|
|
16505
|
+
NATIVE_DEVTOOLS_SOCKET_BIND_FAILED: "NATIVE_DEVTOOLS_SOCKET_BIND_FAILED",
|
|
16506
|
+
NATIVE_TARGET_NO_CONNECTED_APPS: "NATIVE_TARGET_NO_CONNECTED_APPS",
|
|
16507
|
+
NATIVE_TARGET_SINGLE_APP_NOT_FOREGROUND: "NATIVE_TARGET_SINGLE_APP_NOT_FOREGROUND",
|
|
16508
|
+
NATIVE_TARGET_MULTIPLE_APPS_AMBIGUOUS: "NATIVE_TARGET_MULTIPLE_APPS_AMBIGUOUS",
|
|
16509
|
+
ANDROID_DEVTOOLS_ADB_NOT_FOUND: "ANDROID_DEVTOOLS_ADB_NOT_FOUND",
|
|
16510
|
+
ANDROID_DEVTOOLS_ADB_FORWARD_UNEXPECTED: "ANDROID_DEVTOOLS_ADB_FORWARD_UNEXPECTED",
|
|
16511
|
+
ANDROID_DEVTOOLS_HELPER_EXITED_BEFORE_READY: "ANDROID_DEVTOOLS_HELPER_EXITED_BEFORE_READY",
|
|
16512
|
+
ANDROID_DEVTOOLS_HELPER_PROCESS_ERROR: "ANDROID_DEVTOOLS_HELPER_PROCESS_ERROR",
|
|
16513
|
+
ANDROID_DEVTOOLS_HELPER_READY_TIMEOUT: "ANDROID_DEVTOOLS_HELPER_READY_TIMEOUT",
|
|
16514
|
+
ANDROID_DEVTOOLS_FACTORY_OPTIONS_MISSING: "ANDROID_DEVTOOLS_FACTORY_OPTIONS_MISSING",
|
|
16515
|
+
ANDROID_DEVTOOLS_WRONG_PLATFORM: "ANDROID_DEVTOOLS_WRONG_PLATFORM",
|
|
16516
|
+
ANDROID_DEVTOOLS_DEVICE_ID_INVALID: "ANDROID_DEVTOOLS_DEVICE_ID_INVALID",
|
|
16517
|
+
ANDROID_DEVTOOLS_HELPER_TERMINATED: "ANDROID_DEVTOOLS_HELPER_TERMINATED",
|
|
16518
|
+
ANDROID_DEVTOOLS_RPC_CLIENT_CLOSED: "ANDROID_DEVTOOLS_RPC_CLIENT_CLOSED",
|
|
16519
|
+
ANDROID_DEVTOOLS_RPC_ERROR: "ANDROID_DEVTOOLS_RPC_ERROR",
|
|
16520
|
+
ANDROID_DEVTOOLS_RPC_TIMEOUT: "ANDROID_DEVTOOLS_RPC_TIMEOUT",
|
|
16521
|
+
ANDROID_DEVTOOLS_SOCKET_CLOSED: "ANDROID_DEVTOOLS_SOCKET_CLOSED",
|
|
16522
|
+
ANDROID_SCREEN_SIZE_PARSE_FAILED: "ANDROID_SCREEN_SIZE_PARSE_FAILED",
|
|
16523
|
+
ANDROID_SCREEN_SIZE_NON_POSITIVE: "ANDROID_SCREEN_SIZE_NON_POSITIVE",
|
|
16524
|
+
ANDROID_UIAUTOMATOR_PARSE_FAILED: "ANDROID_UIAUTOMATOR_PARSE_FAILED",
|
|
16525
|
+
ANDROID_UIAUTOMATOR_CAPTURE_FAILED: "ANDROID_UIAUTOMATOR_CAPTURE_FAILED",
|
|
16526
|
+
DEBUGGER_METRO_NOT_RUNNING: "DEBUGGER_METRO_NOT_RUNNING",
|
|
16527
|
+
DEBUGGER_METRO_NO_TARGETS: "DEBUGGER_METRO_NO_TARGETS",
|
|
16528
|
+
DEBUGGER_CDP_RUNTIME_EXCEPTION: "DEBUGGER_CDP_RUNTIME_EXCEPTION",
|
|
16529
|
+
DEBUGGER_CDP_BINDING_TIMEOUT: "DEBUGGER_CDP_BINDING_TIMEOUT",
|
|
16530
|
+
DEBUGGER_CDP_BINDING_UNAVAILABLE: "DEBUGGER_CDP_BINDING_UNAVAILABLE",
|
|
16531
|
+
DEBUGGER_CDP_PROTOCOL_ERROR: "DEBUGGER_CDP_PROTOCOL_ERROR",
|
|
16532
|
+
DEBUGGER_RELOAD_FAILED: "DEBUGGER_RELOAD_FAILED",
|
|
16533
|
+
JS_RUNTIME_CONSOLE_SERVER_BIND_FAILED: "JS_RUNTIME_CONSOLE_SERVER_BIND_FAILED",
|
|
16534
|
+
JS_RUNTIME_PAYLOAD_INVALID: "JS_RUNTIME_PAYLOAD_INVALID",
|
|
16535
|
+
JS_RUNTIME_PAYLOAD_DEVICE_MISSING: "JS_RUNTIME_PAYLOAD_DEVICE_MISSING",
|
|
16536
|
+
JS_RUNTIME_PAYLOAD_PORT_INVALID: "JS_RUNTIME_PAYLOAD_PORT_INVALID",
|
|
16537
|
+
JS_RUNTIME_CDP_DISCONNECTED: "JS_RUNTIME_CDP_DISCONNECTED",
|
|
16538
|
+
NETWORK_INSPECTOR_CDP_DISCONNECTED: "NETWORK_INSPECTOR_CDP_DISCONNECTED",
|
|
16539
|
+
REACT_PROFILER_NO_ACTIVE_SESSION: "REACT_PROFILER_NO_ACTIVE_SESSION",
|
|
16540
|
+
REACT_PROFILER_CDP_CONNECTION_LOST: "REACT_PROFILER_CDP_CONNECTION_LOST",
|
|
16541
|
+
REACT_PROFILER_NO_CPU_PROFILE: "REACT_PROFILER_NO_CPU_PROFILE",
|
|
16542
|
+
REACT_PROFILER_RUNTIME_EXCEPTION: "REACT_PROFILER_RUNTIME_EXCEPTION",
|
|
16543
|
+
REACT_PROFILER_NO_RUNTIME_DATA: "REACT_PROFILER_NO_RUNTIME_DATA",
|
|
16544
|
+
REACT_PROFILER_SESSION_PAYLOAD_INVALID: "REACT_PROFILER_SESSION_PAYLOAD_INVALID",
|
|
16545
|
+
REACT_PROFILER_SESSION_PAYLOAD_DEVICE_MISSING: "REACT_PROFILER_SESSION_PAYLOAD_DEVICE_MISSING",
|
|
16546
|
+
REACT_PROFILER_SESSION_CDP_DISCONNECTED: "REACT_PROFILER_SESSION_CDP_DISCONNECTED",
|
|
16547
|
+
REACT_PROFILER_CDP_NOT_CONNECTED: "REACT_PROFILER_CDP_NOT_CONNECTED",
|
|
16548
|
+
REACT_PROFILER_STATE_READ_FAILED: "REACT_PROFILER_STATE_READ_FAILED",
|
|
16549
|
+
REACT_PROFILER_DEVTOOLS_HOOK_MISSING: "REACT_PROFILER_DEVTOOLS_HOOK_MISSING",
|
|
16550
|
+
REACT_PROFILER_DEVTOOLS_BACKEND_ATTACH_FAILED: "REACT_PROFILER_DEVTOOLS_BACKEND_ATTACH_FAILED",
|
|
16551
|
+
REACT_PROFILER_DEVTOOLS_BACKEND_BOOTSTRAP_FAILED: "REACT_PROFILER_DEVTOOLS_BACKEND_BOOTSTRAP_FAILED",
|
|
16552
|
+
REACT_PROFILER_DEVTOOLS_RENDERER_MISSING: "REACT_PROFILER_DEVTOOLS_RENDERER_MISSING",
|
|
16553
|
+
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
16554
|
+
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
16555
|
+
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
16556
|
+
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
16557
|
+
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
16558
|
+
NATIVE_PROFILER_WRONG_PLATFORM: "NATIVE_PROFILER_WRONG_PLATFORM",
|
|
16559
|
+
NATIVE_PROFILER_APP_PROCESS_LIST_FAILED: "NATIVE_PROFILER_APP_PROCESS_LIST_FAILED",
|
|
16560
|
+
NATIVE_PROFILER_APP_LIST_FAILED: "NATIVE_PROFILER_APP_LIST_FAILED",
|
|
16561
|
+
NATIVE_PROFILER_NO_RUNNING_APPS: "NATIVE_PROFILER_NO_RUNNING_APPS",
|
|
16562
|
+
NATIVE_PROFILER_NO_RUNNING_USER_APPS: "NATIVE_PROFILER_NO_RUNNING_USER_APPS",
|
|
16563
|
+
NATIVE_PROFILER_MULTIPLE_RUNNING_USER_APPS: "NATIVE_PROFILER_MULTIPLE_RUNNING_USER_APPS",
|
|
16564
|
+
NATIVE_PROFILER_MALLOC_DEGRADED_XCODE: "NATIVE_PROFILER_MALLOC_DEGRADED_XCODE",
|
|
16565
|
+
NATIVE_PROFILER_MALLOC_STRATEGY_OVERRIDE: "NATIVE_PROFILER_MALLOC_STRATEGY_OVERRIDE",
|
|
16566
|
+
NATIVE_PROFILER_APP_BUNDLE_PATH_FAILED: "NATIVE_PROFILER_APP_BUNDLE_PATH_FAILED",
|
|
16567
|
+
NATIVE_PROFILER_LAUNCH_APP_NOT_FOUND: "NATIVE_PROFILER_LAUNCH_APP_NOT_FOUND",
|
|
16568
|
+
NATIVE_PROFILER_LAUNCH_APP_AMBIGUOUS: "NATIVE_PROFILER_LAUNCH_APP_AMBIGUOUS",
|
|
16569
|
+
NATIVE_PROFILER_SESSION_ALREADY_RUNNING: "NATIVE_PROFILER_SESSION_ALREADY_RUNNING",
|
|
16570
|
+
NATIVE_PROFILER_XCTRACE_NO_PID: "NATIVE_PROFILER_XCTRACE_NO_PID",
|
|
16571
|
+
NATIVE_PROFILER_XCTRACE_PROCESS_NOT_FOUND: "NATIVE_PROFILER_XCTRACE_PROCESS_NOT_FOUND",
|
|
16572
|
+
NATIVE_PROFILER_XCTRACE_READY_EXITED: "NATIVE_PROFILER_XCTRACE_READY_EXITED",
|
|
16573
|
+
NATIVE_PROFILER_XCTRACE_PROCESS_ERROR: "NATIVE_PROFILER_XCTRACE_PROCESS_ERROR",
|
|
16574
|
+
NATIVE_PROFILER_XCTRACE_READY_TIMEOUT: "NATIVE_PROFILER_XCTRACE_READY_TIMEOUT",
|
|
16575
|
+
NATIVE_PROFILER_TRACE_TEMPLATE_MISSING: "NATIVE_PROFILER_TRACE_TEMPLATE_MISSING",
|
|
16576
|
+
NATIVE_PROFILER_NO_ACTIVE_SESSION: "NATIVE_PROFILER_NO_ACTIVE_SESSION",
|
|
16577
|
+
NATIVE_PROFILER_APP_PROCESS_NOT_FOUND: "NATIVE_PROFILER_APP_PROCESS_NOT_FOUND",
|
|
16578
|
+
NATIVE_PROFILER_NO_EXPORTED_TRACE: "NATIVE_PROFILER_NO_EXPORTED_TRACE",
|
|
16579
|
+
// Android perfetto start-failure modes — mirror the iOS xctrace set so a
|
|
16580
|
+
// failed recording start is classified rather than falling through to the
|
|
16581
|
+
// generic tool-execution bucket.
|
|
16582
|
+
NATIVE_PROFILER_PERFETTO_PROCESS_ERROR: "NATIVE_PROFILER_PERFETTO_PROCESS_ERROR",
|
|
16583
|
+
NATIVE_PROFILER_PERFETTO_READY_TIMEOUT: "NATIVE_PROFILER_PERFETTO_READY_TIMEOUT",
|
|
16584
|
+
NATIVE_PROFILER_PERFETTO_READY_EXITED: "NATIVE_PROFILER_PERFETTO_READY_EXITED",
|
|
16585
|
+
// screen-recording-start / screen-recording-stop. One capture path for every
|
|
16586
|
+
// platform (simulator-server's frame stream into ffmpeg), so the stages name
|
|
16587
|
+
// the step that failed rather than the device family.
|
|
16588
|
+
SCREEN_RECORDING_FACTORY_OPTIONS_MISSING: "SCREEN_RECORDING_FACTORY_OPTIONS_MISSING",
|
|
16589
|
+
SCREEN_RECORDING_WRONG_PLATFORM: "SCREEN_RECORDING_WRONG_PLATFORM",
|
|
16590
|
+
SCREEN_RECORDING_ALREADY_ACTIVE: "SCREEN_RECORDING_ALREADY_ACTIVE",
|
|
16591
|
+
SCREEN_RECORDING_NO_ACTIVE_SESSION: "SCREEN_RECORDING_NO_ACTIVE_SESSION",
|
|
16592
|
+
SCREEN_RECORDING_STOP_IN_PROGRESS: "SCREEN_RECORDING_STOP_IN_PROGRESS",
|
|
16593
|
+
SCREEN_RECORDING_START_EXITED: "SCREEN_RECORDING_START_EXITED",
|
|
16594
|
+
SCREEN_RECORDING_START_TIMEOUT: "SCREEN_RECORDING_START_TIMEOUT",
|
|
16595
|
+
SCREEN_RECORDING_PROCESS_ERROR: "SCREEN_RECORDING_PROCESS_ERROR",
|
|
16596
|
+
SCREEN_RECORDING_OUTPUT_MISSING: "SCREEN_RECORDING_OUTPUT_MISSING",
|
|
16597
|
+
SCREEN_RECORDING_SERVER_SHUTTING_DOWN: "SCREEN_RECORDING_SERVER_SHUTTING_DOWN",
|
|
16598
|
+
SCREEN_RECORDING_STREAM_UNAVAILABLE: "SCREEN_RECORDING_STREAM_UNAVAILABLE",
|
|
16599
|
+
SCREEN_RECORDING_FFMPEG_NOT_FOUND: "SCREEN_RECORDING_FFMPEG_NOT_FOUND",
|
|
16600
|
+
FLOW_PROJECT_ROOT_REQUIRED: "FLOW_PROJECT_ROOT_REQUIRED",
|
|
16601
|
+
FLOW_PROJECT_ROOT_INVALID: "FLOW_PROJECT_ROOT_INVALID",
|
|
16602
|
+
FLOW_NAME_INVALID: "FLOW_NAME_INVALID",
|
|
16603
|
+
FLOW_NO_ACTIVE_RECORDING: "FLOW_NO_ACTIVE_RECORDING",
|
|
16604
|
+
FLOW_FILE_INVALID: "FLOW_FILE_INVALID",
|
|
16605
|
+
FLOW_ENTRY_UNRECOGNIZED: "FLOW_ENTRY_UNRECOGNIZED",
|
|
16606
|
+
FLOW_E2E_HAS_PREREQUISITE: "FLOW_E2E_HAS_PREREQUISITE",
|
|
16607
|
+
FLOW_DEVICE_RESOLUTION: "FLOW_DEVICE_RESOLUTION",
|
|
16608
|
+
PROFILER_QUERY_MODE_INVALID: "PROFILER_QUERY_MODE_INVALID",
|
|
16609
|
+
PROFILER_QUERY_REQUIRED_PARAM_MISSING: "PROFILER_QUERY_REQUIRED_PARAM_MISSING",
|
|
16610
|
+
PROFILER_DATA_NOT_LOADED: "PROFILER_DATA_NOT_LOADED",
|
|
16611
|
+
PROFILER_NATIVE_TRACE_MISSING: "PROFILER_NATIVE_TRACE_MISSING",
|
|
16612
|
+
PROFILER_NATIVE_METADATA_MISSING: "PROFILER_NATIVE_METADATA_MISSING",
|
|
16613
|
+
PROFILER_NATIVE_METADATA_INVALID: "PROFILER_NATIVE_METADATA_INVALID",
|
|
16614
|
+
CHROMIUM_CDP_UNREACHABLE: "CHROMIUM_CDP_UNREACHABLE",
|
|
16615
|
+
CHROMIUM_CDP_NO_PAGE_TARGET: "CHROMIUM_CDP_NO_PAGE_TARGET",
|
|
16616
|
+
CHROMIUM_CDP_INVALID_RESPONSE: "CHROMIUM_CDP_INVALID_RESPONSE",
|
|
16617
|
+
CHROMIUM_DEVICE_ID_INVALID: "CHROMIUM_DEVICE_ID_INVALID",
|
|
16618
|
+
CHROMIUM_PARAM_INVALID: "CHROMIUM_PARAM_INVALID",
|
|
16619
|
+
CHROMIUM_INPUT_INVALID: "CHROMIUM_INPUT_INVALID",
|
|
16620
|
+
CHROMIUM_WINDOW_HIDDEN: "CHROMIUM_WINDOW_HIDDEN",
|
|
16621
|
+
CHROMIUM_VIEWPORT_READ_FAILED: "CHROMIUM_VIEWPORT_READ_FAILED",
|
|
16622
|
+
CHROMIUM_SCREENSHOT_FAILED: "CHROMIUM_SCREENSHOT_FAILED",
|
|
16623
|
+
CHROMIUM_STORAGE_EVAL_FAILED: "CHROMIUM_STORAGE_EVAL_FAILED",
|
|
16624
|
+
CHROMIUM_TAB_NOT_FOUND: "CHROMIUM_TAB_NOT_FOUND",
|
|
16625
|
+
CHROMIUM_TAB_OPEN_FAILED: "CHROMIUM_TAB_OPEN_FAILED",
|
|
16626
|
+
CHROMIUM_DESCRIBE_FAILED: "CHROMIUM_DESCRIBE_FAILED",
|
|
16627
|
+
CHROMIUM_ELECTRON_APP_PATH_INVALID: "CHROMIUM_ELECTRON_APP_PATH_INVALID",
|
|
16628
|
+
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
16629
|
+
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
16630
|
+
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
16631
|
+
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
16632
|
+
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
16633
|
+
SECRET_PLACEHOLDER_UNKNOWN: "SECRET_PLACEHOLDER_UNKNOWN",
|
|
16634
|
+
SCREENSHOT_DIFF_INPUT_INVALID: "SCREENSHOT_DIFF_INPUT_INVALID",
|
|
16635
|
+
BOOT_DEVICE_TARGET_SELECTION_INVALID: "BOOT_DEVICE_TARGET_SELECTION_INVALID",
|
|
16636
|
+
BOOT_IOS_UNSUPPORTED_HOST: "BOOT_IOS_UNSUPPORTED_HOST",
|
|
16637
|
+
BOOT_ANDROID_NO_AVDS: "BOOT_ANDROID_NO_AVDS",
|
|
16638
|
+
BOOT_ANDROID_AVD_NOT_FOUND: "BOOT_ANDROID_AVD_NOT_FOUND",
|
|
16639
|
+
BOOT_ANDROID_ADB_UNAVAILABLE: "BOOT_ANDROID_ADB_UNAVAILABLE",
|
|
16640
|
+
BOOT_ANDROID_GPU_MODE_INVALID: "BOOT_ANDROID_GPU_MODE_INVALID",
|
|
16641
|
+
BOOT_ANDROID_ADB_REGISTER_TIMEOUT: "BOOT_ANDROID_ADB_REGISTER_TIMEOUT",
|
|
16642
|
+
BOOT_ANDROID_HOT_BOOT_FRAME_UNUSABLE: "BOOT_ANDROID_HOT_BOOT_FRAME_UNUSABLE",
|
|
16643
|
+
BOOT_ANDROID_FIRST_FRAME_TIMEOUT: "BOOT_ANDROID_FIRST_FRAME_TIMEOUT",
|
|
16644
|
+
BOOT_ANDROID_PACKAGE_MANAGER_UNAVAILABLE: "BOOT_ANDROID_PACKAGE_MANAGER_UNAVAILABLE",
|
|
16645
|
+
BOOT_ANDROID_COLD_BOOT_FAILED: "BOOT_ANDROID_COLD_BOOT_FAILED"
|
|
16646
|
+
};
|
|
16271
16647
|
|
|
16272
|
-
// ../
|
|
16273
|
-
|
|
16274
|
-
|
|
16275
|
-
|
|
16276
|
-
|
|
16648
|
+
// ../registry/src/errors.ts
|
|
16649
|
+
var FAILURE_AREAS = ["cli", "http", "registry", "tool_server", "installer"];
|
|
16650
|
+
var FAILURE_KINDS = [
|
|
16651
|
+
"validation",
|
|
16652
|
+
"not_found",
|
|
16653
|
+
"dependency_missing",
|
|
16654
|
+
"unsupported",
|
|
16655
|
+
"not_implemented",
|
|
16656
|
+
"timeout",
|
|
16657
|
+
"network",
|
|
16658
|
+
"subprocess",
|
|
16659
|
+
"crash",
|
|
16660
|
+
"unknown"
|
|
16661
|
+
];
|
|
16662
|
+
var FAILURE_COMMANDS = [
|
|
16663
|
+
"adb",
|
|
16664
|
+
"emulator",
|
|
16665
|
+
"vega",
|
|
16666
|
+
"xcrun_simctl",
|
|
16667
|
+
"xctrace",
|
|
16668
|
+
"native_devtools",
|
|
16669
|
+
"android_devtools",
|
|
16670
|
+
"ax_service",
|
|
16671
|
+
"simulator_server",
|
|
16672
|
+
"ffmpeg",
|
|
16673
|
+
"cdp",
|
|
16674
|
+
"electron",
|
|
16675
|
+
"npm",
|
|
16676
|
+
"npx",
|
|
16677
|
+
"unknown"
|
|
16678
|
+
];
|
|
16679
|
+
var FAILURE_SIGNAL_NAMES = [
|
|
16680
|
+
"SIGABRT",
|
|
16681
|
+
"SIGHUP",
|
|
16682
|
+
"SIGINT",
|
|
16683
|
+
"SIGKILL",
|
|
16684
|
+
"SIGQUIT",
|
|
16685
|
+
"SIGTERM"
|
|
16686
|
+
];
|
|
16687
|
+
var FAILURE_SPAWN_CODES = ["EACCES", "ENOENT", "EPERM", "ETIMEDOUT"];
|
|
16688
|
+
var NETWORK_FAILURES = [
|
|
16689
|
+
"timeout",
|
|
16690
|
+
"connection_refused",
|
|
16691
|
+
"connection_reset",
|
|
16692
|
+
"invalid_response",
|
|
16693
|
+
"other"
|
|
16694
|
+
];
|
|
16695
|
+
var FALLBACK_SIGNAL = {
|
|
16696
|
+
error_code: FAILURE_CODES.ARGENT_UNCLASSIFIED_FAILURE,
|
|
16697
|
+
failure_stage: "unclassified",
|
|
16698
|
+
failure_area: "registry",
|
|
16699
|
+
error_kind: "unknown"
|
|
16700
|
+
};
|
|
16701
|
+
var FAILURE_SIGNAL_NAME_SET = new Set(FAILURE_SIGNAL_NAMES);
|
|
16702
|
+
var FAILURE_SPAWN_CODE_SET = new Set(FAILURE_SPAWN_CODES);
|
|
16703
|
+
|
|
16704
|
+
// ../registry/src/registry.ts
|
|
16705
|
+
import { randomUUID as randomUUID2 } from "node:crypto";
|
|
16706
|
+
|
|
16707
|
+
// ../argent-tools-client/src/file-inputs.ts
|
|
16708
|
+
var FILE_INPUT_MARKER2 = "__argentFileInput";
|
|
16709
|
+
var CLIENT_FILE_MARKER2 = "__argentClientFile";
|
|
16710
|
+
var MAX_CONTENT_BYTES = 32 * 1024 * 1024;
|
|
16711
|
+
function interpolatePath(template, args) {
|
|
16712
|
+
let missing = false;
|
|
16713
|
+
const out = template.replace(/\$\{([A-Za-z0-9_]+)\}/g, (_m, name) => {
|
|
16714
|
+
const v = args[name];
|
|
16715
|
+
if (typeof v !== "string" || v.length === 0) {
|
|
16716
|
+
missing = true;
|
|
16717
|
+
return "";
|
|
16718
|
+
}
|
|
16719
|
+
return v;
|
|
16720
|
+
});
|
|
16721
|
+
return missing ? null : out;
|
|
16722
|
+
}
|
|
16723
|
+
async function tarball(sourcePath) {
|
|
16724
|
+
const tarPath = path3.join(tmpdir(), `argent-upload-${randomUUID3()}.tar.gz`);
|
|
16725
|
+
await createTarGzFile(sourcePath, tarPath);
|
|
16726
|
+
return tarPath;
|
|
16727
|
+
}
|
|
16728
|
+
function sha256File(filePath) {
|
|
16729
|
+
return new Promise((resolve8, reject) => {
|
|
16730
|
+
const hash = createHash2("sha256");
|
|
16731
|
+
createReadStream(filePath).on("data", (chunk) => hash.update(chunk)).on("end", () => resolve8(hash.digest("hex"))).on("error", reject);
|
|
16732
|
+
});
|
|
16733
|
+
}
|
|
16734
|
+
async function uploadTar(tarPath, endpoint) {
|
|
16735
|
+
const init = {
|
|
16736
|
+
method: "POST",
|
|
16737
|
+
headers: {
|
|
16738
|
+
"content-type": "application/gzip",
|
|
16739
|
+
...endpoint.token ? { Authorization: `Bearer ${endpoint.token}` } : {}
|
|
16740
|
+
},
|
|
16741
|
+
body: createReadStream(tarPath),
|
|
16742
|
+
duplex: "half"
|
|
16743
|
+
};
|
|
16744
|
+
const res = await fetch(`${endpoint.url}/upload`, init);
|
|
16745
|
+
if (!res.ok) {
|
|
16746
|
+
throw new Error(`Upload to ${endpoint.url}/upload failed: ${res.status} ${res.statusText}`);
|
|
16747
|
+
}
|
|
16748
|
+
const json = await res.json();
|
|
16749
|
+
return json.uploadId;
|
|
16750
|
+
}
|
|
16751
|
+
async function prepareFileInputs(specs, args, opts) {
|
|
16752
|
+
if (!specs || specs.length === 0 || typeof args !== "object" || args === null) {
|
|
16753
|
+
return args;
|
|
16754
|
+
}
|
|
16755
|
+
const record2 = args;
|
|
16756
|
+
let out = null;
|
|
16757
|
+
for (const spec of specs) {
|
|
16758
|
+
if (spec.skipWhenSet && record2[spec.skipWhenSet] !== void 0) continue;
|
|
16759
|
+
if (spec.target in record2 && typeof record2[spec.target] !== "string") continue;
|
|
16760
|
+
const filePath = interpolatePath(spec.path, record2);
|
|
16761
|
+
if (filePath === null) continue;
|
|
16762
|
+
if (spec.target in record2 && record2[spec.target] !== filePath) continue;
|
|
16763
|
+
const wire = { [FILE_INPUT_MARKER2]: true, path: filePath };
|
|
16764
|
+
if (spec.kind === "file") {
|
|
16765
|
+
try {
|
|
16766
|
+
const st = await stat2(filePath);
|
|
16767
|
+
if (st.isFile()) {
|
|
16768
|
+
wire.size = st.size;
|
|
16769
|
+
wire.mtimeMs = st.mtimeMs;
|
|
16770
|
+
if (opts.includeContent && st.size <= MAX_CONTENT_BYTES) {
|
|
16771
|
+
wire.content = (await readFile3(filePath)).toString("base64");
|
|
16772
|
+
} else if (opts.includeContent) {
|
|
16773
|
+
wire.contentOmitted = "size-limit";
|
|
16774
|
+
}
|
|
16775
|
+
}
|
|
16776
|
+
} catch {
|
|
16777
|
+
}
|
|
16778
|
+
}
|
|
16779
|
+
if (spec.kind === "tar-upload") {
|
|
16780
|
+
const st = await stat2(filePath).catch(() => null);
|
|
16781
|
+
if (st) {
|
|
16782
|
+
wire.size = st.size;
|
|
16783
|
+
wire.mtimeMs = st.mtimeMs;
|
|
16784
|
+
}
|
|
16785
|
+
if (opts.uploadEndpoint && st) {
|
|
16786
|
+
let tarPath = null;
|
|
16787
|
+
try {
|
|
16788
|
+
process.stderr.write(
|
|
16789
|
+
`Uploading ${path3.basename(filePath)} to the remote tool-server...
|
|
16790
|
+
`
|
|
16791
|
+
);
|
|
16792
|
+
tarPath = await tarball(filePath);
|
|
16793
|
+
wire.contentHash = await sha256File(tarPath);
|
|
16794
|
+
wire.uploadId = await uploadTar(tarPath, opts.uploadEndpoint);
|
|
16795
|
+
} finally {
|
|
16796
|
+
if (tarPath) await rm2(tarPath, { force: true }).catch(() => {
|
|
16797
|
+
});
|
|
16798
|
+
}
|
|
16799
|
+
}
|
|
16800
|
+
}
|
|
16801
|
+
out = out ?? { ...record2 };
|
|
16802
|
+
out[spec.target] = wire;
|
|
16803
|
+
}
|
|
16804
|
+
return out ?? args;
|
|
16805
|
+
}
|
|
16806
|
+
function isAllowedClientFilePath(p) {
|
|
16807
|
+
if (!path3.isAbsolute(p)) return false;
|
|
16808
|
+
const segments = p.split(/[\\/]+/);
|
|
16809
|
+
if (segments.includes("..")) return false;
|
|
16810
|
+
const file = segments[segments.length - 1] ?? "";
|
|
16811
|
+
if (!FLOW_FILE_NAME_PATTERN.test(file)) return false;
|
|
16812
|
+
return segments[segments.length - 3] === ".argent" && segments[segments.length - 2] === "flows";
|
|
16813
|
+
}
|
|
16814
|
+
function isClientFileDirective2(value) {
|
|
16815
|
+
return !!value && typeof value === "object" && value[CLIENT_FILE_MARKER2] === true && typeof value.path === "string" && typeof value.content === "string";
|
|
16816
|
+
}
|
|
16817
|
+
async function applyClientFileDirectives(result) {
|
|
16818
|
+
const written = [];
|
|
16819
|
+
async function walk(value) {
|
|
16820
|
+
if (isClientFileDirective2(value)) {
|
|
16821
|
+
if (!isAllowedClientFilePath(value.path)) return null;
|
|
16822
|
+
try {
|
|
16823
|
+
await mkdir3(path3.dirname(value.path), { recursive: true });
|
|
16824
|
+
await writeFile3(value.path, value.content, "utf8");
|
|
16825
|
+
written.push(value.path);
|
|
16826
|
+
return value.path;
|
|
16827
|
+
} catch {
|
|
16828
|
+
return null;
|
|
16829
|
+
}
|
|
16830
|
+
}
|
|
16831
|
+
if (Array.isArray(value)) {
|
|
16832
|
+
return Promise.all(value.map(walk));
|
|
16833
|
+
}
|
|
16834
|
+
if (value && typeof value === "object") {
|
|
16835
|
+
const out = {};
|
|
16836
|
+
for (const [k, v] of Object.entries(value)) {
|
|
16837
|
+
out[k] = await walk(v);
|
|
16838
|
+
}
|
|
16839
|
+
return out;
|
|
16840
|
+
}
|
|
16841
|
+
return value;
|
|
16842
|
+
}
|
|
16843
|
+
const rewritten = await walk(result);
|
|
16844
|
+
return { result: rewritten, written };
|
|
16845
|
+
}
|
|
16846
|
+
|
|
16847
|
+
// ../argent-tools-client/src/artifacts.ts
|
|
16848
|
+
import { copyFile, mkdir as mkdir4, readFile as readFile4, realpath, rm as rm3, stat as stat3, writeFile as writeFile4 } from "node:fs/promises";
|
|
16849
|
+
import { constants as fsConstants } from "node:fs";
|
|
16850
|
+
import { tmpdir as tmpdir2 } from "node:os";
|
|
16851
|
+
import { basename as basename4, dirname as dirname5, extname as extname2, isAbsolute as isAbsolute3, join as join9, normalize, resolve as resolve6, sep as sep2 } from "node:path";
|
|
16852
|
+
import { createHash as createHash3 } from "node:crypto";
|
|
16853
|
+
|
|
16854
|
+
// ../configuration-core/src/flags.ts
|
|
16855
|
+
import * as fs2 from "node:fs";
|
|
16856
|
+
import * as path4 from "node:path";
|
|
16857
|
+
import { homedir as homedir3 } from "node:os";
|
|
16858
|
+
var PROJECT_MARKERS = [".argent", ".git", "package.json"];
|
|
16859
|
+
function findProjectRoot(startDir) {
|
|
16860
|
+
let current = path4.resolve(startDir);
|
|
16861
|
+
while (true) {
|
|
16862
|
+
for (const marker of PROJECT_MARKERS) {
|
|
16863
|
+
if (fs2.existsSync(path4.join(current, marker))) return current;
|
|
16864
|
+
}
|
|
16865
|
+
const parent = path4.dirname(current);
|
|
16866
|
+
if (parent === current) return null;
|
|
16867
|
+
current = parent;
|
|
16868
|
+
}
|
|
16869
|
+
}
|
|
16870
|
+
function resolveProjectRoot(startDir) {
|
|
16871
|
+
return findProjectRoot(startDir) ?? path4.resolve(startDir);
|
|
16872
|
+
}
|
|
16873
|
+
function getFlagsPath(scope, options = {}) {
|
|
16874
|
+
const home = options.homeDir ?? homedir3();
|
|
16875
|
+
if (scope === "global") {
|
|
16876
|
+
return path4.join(home, ".argent", "flags.json");
|
|
16877
|
+
}
|
|
16878
|
+
const cwd = options.cwd ?? process.cwd();
|
|
16879
|
+
return path4.join(resolveProjectRoot(cwd), ".argent", "flags.json");
|
|
16880
|
+
}
|
|
16881
|
+
function readFlagsFile(filePath) {
|
|
16882
|
+
let raw;
|
|
16883
|
+
try {
|
|
16884
|
+
raw = fs2.readFileSync(filePath, "utf8");
|
|
16885
|
+
} catch {
|
|
16886
|
+
return {};
|
|
16887
|
+
}
|
|
16888
|
+
let parsed;
|
|
16889
|
+
try {
|
|
16890
|
+
parsed = JSON.parse(raw);
|
|
16891
|
+
} catch {
|
|
16892
|
+
return {};
|
|
16893
|
+
}
|
|
16894
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) return {};
|
|
16895
|
+
const flags = parsed.flags;
|
|
16896
|
+
if (!flags || typeof flags !== "object" || Array.isArray(flags)) return {};
|
|
16897
|
+
const out = {};
|
|
16898
|
+
for (const [k, v] of Object.entries(flags)) {
|
|
16899
|
+
if (typeof v === "boolean") out[k] = v;
|
|
16900
|
+
}
|
|
16901
|
+
return out;
|
|
16902
|
+
}
|
|
16903
|
+
function readFlags(scope, options = {}) {
|
|
16904
|
+
return readFlagsFile(getFlagsPath(scope, options));
|
|
16905
|
+
}
|
|
16906
|
+
function isFlagEnabled(name, options = {}) {
|
|
16907
|
+
const projectFlags = readFlags("project", options);
|
|
16908
|
+
if (Object.hasOwn(projectFlags, name)) return projectFlags[name];
|
|
16909
|
+
const globalFlags = readFlags("global", options);
|
|
16910
|
+
if (Object.hasOwn(globalFlags, name)) return globalFlags[name];
|
|
16911
|
+
return options.default ?? false;
|
|
16912
|
+
}
|
|
16913
|
+
|
|
16914
|
+
// ../configuration-core/src/paths.ts
|
|
16915
|
+
import * as os from "node:os";
|
|
16916
|
+
import * as path5 from "node:path";
|
|
16917
|
+
function nonEmpty(value) {
|
|
16918
|
+
if (value == void 0) return null;
|
|
16277
16919
|
const trimmed = value.trim();
|
|
16278
16920
|
return trimmed === "" ? null : value;
|
|
16279
16921
|
}
|
|
@@ -16407,7 +17049,12 @@ function updateConfig(mutate, scope = "global", options = {}) {
|
|
|
16407
17049
|
}
|
|
16408
17050
|
}
|
|
16409
17051
|
|
|
16410
|
-
// ../configuration-core/src/
|
|
17052
|
+
// ../configuration-core/src/secrets.ts
|
|
17053
|
+
var import_dotenv = __toESM(require_main(), 1);
|
|
17054
|
+
import * as fs4 from "node:fs";
|
|
17055
|
+
import * as path7 from "node:path";
|
|
17056
|
+
|
|
17057
|
+
// ../configuration-core/src/merge.ts
|
|
16411
17058
|
function mergeRestrictive(local, global2) {
|
|
16412
17059
|
if (local === void 0) return global2;
|
|
16413
17060
|
if (global2 === void 0) return local;
|
|
@@ -16532,7 +17179,7 @@ function getConfigDefinition(key, registry2 = CONFIG_SCHEMA) {
|
|
|
16532
17179
|
}
|
|
16533
17180
|
|
|
16534
17181
|
// ../configuration-core/src/config-access.ts
|
|
16535
|
-
import * as
|
|
17182
|
+
import * as path8 from "node:path";
|
|
16536
17183
|
function readScopeValue(def, scope, options) {
|
|
16537
17184
|
if (!def.scopes.includes(scope)) return void 0;
|
|
16538
17185
|
const raw = getAtPath(readConfigObject(scope, options), def.key);
|
|
@@ -16565,9 +17212,9 @@ var UnknownConfigKeyError = class extends Error {
|
|
|
16565
17212
|
};
|
|
16566
17213
|
|
|
16567
17214
|
// ../argent-tools-client/src/artifacts.ts
|
|
16568
|
-
var
|
|
17215
|
+
var ARTIFACT_MARKER2 = "__argentArtifact";
|
|
16569
17216
|
function isArtifactHandle(value) {
|
|
16570
|
-
return !!value && typeof value === "object" && value[
|
|
17217
|
+
return !!value && typeof value === "object" && value[ARTIFACT_MARKER2] === true && typeof value.id === "string" && typeof value.filename === "string";
|
|
16571
17218
|
}
|
|
16572
17219
|
var SESSION_ID = null;
|
|
16573
17220
|
function sessionId() {
|
|
@@ -16583,16 +17230,16 @@ function sanitizeSegment(segment) {
|
|
|
16583
17230
|
function projectSlug() {
|
|
16584
17231
|
const cwd = process.cwd();
|
|
16585
17232
|
const hash = createHash3("sha1").update(cwd).digest("hex").slice(0, 6);
|
|
16586
|
-
const name = sanitizeSegment(
|
|
17233
|
+
const name = sanitizeSegment(basename4(cwd)) || "root";
|
|
16587
17234
|
return `${name}-${hash}`;
|
|
16588
17235
|
}
|
|
16589
17236
|
function artifactsRoot() {
|
|
16590
|
-
return process.env.ARGENT_ARTIFACTS_DIR ??
|
|
17237
|
+
return process.env.ARGENT_ARTIFACTS_DIR ?? join9(tmpdir2(), "argent-artifacts");
|
|
16591
17238
|
}
|
|
16592
17239
|
function artifactDir(deviceId) {
|
|
16593
17240
|
const parts = [artifactsRoot(), projectSlug(), sessionId()];
|
|
16594
17241
|
if (deviceId) parts.push(sanitizeSegment(deviceId));
|
|
16595
|
-
return
|
|
17242
|
+
return join9(...parts);
|
|
16596
17243
|
}
|
|
16597
17244
|
function durableBaseDir() {
|
|
16598
17245
|
const projectRoot = findProjectRoot(process.cwd());
|
|
@@ -16611,8 +17258,8 @@ function configuredRecordingsDir() {
|
|
|
16611
17258
|
const trimmed = value.trim();
|
|
16612
17259
|
if (trimmed === "") return null;
|
|
16613
17260
|
const home = dirname5(argentHomeDir());
|
|
16614
|
-
const expanded = trimmed === "~" ? home : trimmed.startsWith("~/") || trimmed.startsWith(`~${sep2}`) ?
|
|
16615
|
-
return
|
|
17261
|
+
const expanded = trimmed === "~" ? home : trimmed.startsWith("~/") || trimmed.startsWith(`~${sep2}`) ? join9(home, trimmed.slice(2)) : trimmed;
|
|
17262
|
+
return resolve6(durableBaseDir(), expanded);
|
|
16616
17263
|
}
|
|
16617
17264
|
var MAX_DURABLE_BYTES = 2 * 1024 * 1024 * 1024;
|
|
16618
17265
|
async function readCapped(res, cap) {
|
|
@@ -16641,14 +17288,14 @@ async function readCapped(res, cap) {
|
|
|
16641
17288
|
return Buffer.concat(chunks);
|
|
16642
17289
|
}
|
|
16643
17290
|
async function writeDurableUnique(dir, filename, write) {
|
|
16644
|
-
const ext =
|
|
17291
|
+
const ext = extname2(filename);
|
|
16645
17292
|
const stem = filename.slice(0, filename.length - ext.length);
|
|
16646
17293
|
for (let i = 1; i <= 1e3; i++) {
|
|
16647
17294
|
const candidate = i === 1 ? filename : `${stem} (${i})${ext}`;
|
|
16648
|
-
const
|
|
17295
|
+
const path13 = join9(dir, candidate);
|
|
16649
17296
|
try {
|
|
16650
|
-
await write(
|
|
16651
|
-
return
|
|
17297
|
+
await write(path13);
|
|
17298
|
+
return path13;
|
|
16652
17299
|
} catch (err) {
|
|
16653
17300
|
if (err?.code === "EEXIST") continue;
|
|
16654
17301
|
throw err;
|
|
@@ -16668,21 +17315,21 @@ function durableSaveTarget(handle) {
|
|
|
16668
17315
|
if (configured) {
|
|
16669
17316
|
return {
|
|
16670
17317
|
dir: configured,
|
|
16671
|
-
path:
|
|
17318
|
+
path: join9(configured, sanitizeSegment(handle.filename)),
|
|
16672
17319
|
base: configured,
|
|
16673
17320
|
rel: ""
|
|
16674
17321
|
};
|
|
16675
17322
|
}
|
|
16676
17323
|
}
|
|
16677
17324
|
const base = durableBaseDir();
|
|
16678
|
-
const dir =
|
|
16679
|
-
return { dir, path:
|
|
17325
|
+
const dir = join9(base, rel);
|
|
17326
|
+
return { dir, path: join9(dir, sanitizeSegment(handle.filename)), base, rel };
|
|
16680
17327
|
}
|
|
16681
17328
|
async function confineToRealBase(dir, base, rel) {
|
|
16682
17329
|
try {
|
|
16683
17330
|
const realDir = await realpath(dir);
|
|
16684
17331
|
const realBase = await realpath(base);
|
|
16685
|
-
return realDir ===
|
|
17332
|
+
return realDir === join9(realBase, rel);
|
|
16686
17333
|
} catch {
|
|
16687
17334
|
return false;
|
|
16688
17335
|
}
|
|
@@ -16690,7 +17337,7 @@ async function confineToRealBase(dir, base, rel) {
|
|
|
16690
17337
|
async function resolveLocalFile(handle) {
|
|
16691
17338
|
if (!handle.hostPath) return null;
|
|
16692
17339
|
try {
|
|
16693
|
-
const st = await
|
|
17340
|
+
const st = await stat3(handle.hostPath);
|
|
16694
17341
|
if (handle.archive) {
|
|
16695
17342
|
return st.isDirectory() ? handle.hostPath : null;
|
|
16696
17343
|
}
|
|
@@ -16705,7 +17352,7 @@ async function resolveLocalFile(handle) {
|
|
|
16705
17352
|
}
|
|
16706
17353
|
}
|
|
16707
17354
|
async function downloadAndExtractArchive(handle, data, dir) {
|
|
16708
|
-
const tarball2 =
|
|
17355
|
+
const tarball2 = join9(dir, `${sanitizeSegment(handle.filename)}.tar.gz`);
|
|
16709
17356
|
try {
|
|
16710
17357
|
await writeFile4(tarball2, data);
|
|
16711
17358
|
return await safeExtractTarGz(tarball2, dir, handle.filename);
|
|
@@ -16733,7 +17380,7 @@ async function materializeArtifacts(result, ctx) {
|
|
|
16733
17380
|
const localPath = await resolveLocalFile(value);
|
|
16734
17381
|
const saveTarget = durableSaveTarget(value);
|
|
16735
17382
|
if (saveTarget) {
|
|
16736
|
-
const filename =
|
|
17383
|
+
const filename = basename4(saveTarget.path);
|
|
16737
17384
|
try {
|
|
16738
17385
|
await mkdir4(saveTarget.dir, { recursive: true });
|
|
16739
17386
|
if (!await confineToRealBase(saveTarget.dir, saveTarget.base, saveTarget.rel)) {
|
|
@@ -16795,7 +17442,7 @@ async function materializeArtifacts(result, ctx) {
|
|
|
16795
17442
|
return await downloadAndExtractArchive(value, data, dir);
|
|
16796
17443
|
}
|
|
16797
17444
|
if (value.size > 0 && data.length !== value.size) return null;
|
|
16798
|
-
const downloadedPath =
|
|
17445
|
+
const downloadedPath = join9(dir, sanitizeSegment(value.filename));
|
|
16799
17446
|
await writeFile4(downloadedPath, data);
|
|
16800
17447
|
if (value.mimeType.startsWith("image/")) {
|
|
16801
17448
|
images.push({ localPath: downloadedPath, data, mimeType: value.mimeType });
|
|
@@ -17856,501 +18503,191 @@ function resolveExceptionStepsConfig(config2) {
|
|
|
17856
18503
|
function stripReservedExceptionStepFields(properties) {
|
|
17857
18504
|
if (!properties) return {
|
|
17858
18505
|
sanitizedProperties: {},
|
|
17859
|
-
droppedKeys: []
|
|
17860
|
-
};
|
|
17861
|
-
const droppedKeys = [];
|
|
17862
|
-
const sanitizedProperties = Object.keys(properties).reduce((acc, key) => {
|
|
17863
|
-
if (RESERVED_EXCEPTION_STEP_KEYS.has(key)) {
|
|
17864
|
-
droppedKeys.push(key);
|
|
17865
|
-
return acc;
|
|
17866
|
-
}
|
|
17867
|
-
acc[key] = properties[key];
|
|
17868
|
-
return acc;
|
|
17869
|
-
}, {});
|
|
17870
|
-
return {
|
|
17871
|
-
sanitizedProperties,
|
|
17872
|
-
droppedKeys
|
|
17873
|
-
};
|
|
17874
|
-
}
|
|
17875
|
-
var ExceptionStepsBuffer = class {
|
|
17876
|
-
constructor(config2) {
|
|
17877
|
-
this._entries = [];
|
|
17878
|
-
this._totalBytes = 0;
|
|
17879
|
-
this._config = resolveExceptionStepsConfig(config2);
|
|
17880
|
-
}
|
|
17881
|
-
setConfig(config2) {
|
|
17882
|
-
this._config = resolveExceptionStepsConfig(config2);
|
|
17883
|
-
this._trimToMaxBytes();
|
|
17884
|
-
}
|
|
17885
|
-
add(step) {
|
|
17886
|
-
const serialized = normalizeAndSerializeStep(step);
|
|
17887
|
-
if (!serialized) return;
|
|
17888
|
-
const bytes = getUtf8ByteLength(serialized.json);
|
|
17889
|
-
if (bytes > this._config.max_bytes) return;
|
|
17890
|
-
this._entries.push({
|
|
17891
|
-
step: serialized.step,
|
|
17892
|
-
bytes
|
|
17893
|
-
});
|
|
17894
|
-
this._totalBytes += bytes;
|
|
17895
|
-
this._trimToMaxBytes();
|
|
17896
|
-
}
|
|
17897
|
-
getAttachable() {
|
|
17898
|
-
return this._entries.map((e) => e.step);
|
|
17899
|
-
}
|
|
17900
|
-
clear() {
|
|
17901
|
-
this._entries = [];
|
|
17902
|
-
this._totalBytes = 0;
|
|
17903
|
-
}
|
|
17904
|
-
size() {
|
|
17905
|
-
return this._entries.length;
|
|
17906
|
-
}
|
|
17907
|
-
_trimToMaxBytes() {
|
|
17908
|
-
while (this._totalBytes > this._config.max_bytes && this._entries.length > 0) {
|
|
17909
|
-
const evicted = this._entries.shift();
|
|
17910
|
-
if (evicted) this._totalBytes -= evicted.bytes;
|
|
17911
|
-
}
|
|
17912
|
-
}
|
|
17913
|
-
};
|
|
17914
|
-
function normalizePositiveInteger(input, fallback) {
|
|
17915
|
-
if (!isNumber(input) || input === 1 / 0 || input === -1 / 0) return fallback;
|
|
17916
|
-
const normalized = Math.floor(input);
|
|
17917
|
-
if (normalized < 0) return fallback;
|
|
17918
|
-
return normalized;
|
|
17919
|
-
}
|
|
17920
|
-
function normalizeAndSerializeStep(step) {
|
|
17921
|
-
const json = safeStringify(step);
|
|
17922
|
-
if (!json) return;
|
|
17923
|
-
try {
|
|
17924
|
-
const parsed = JSON.parse(json);
|
|
17925
|
-
if (!isObject2(parsed)) return;
|
|
17926
|
-
const parsedStep = parsed;
|
|
17927
|
-
const message = parsedStep[EXCEPTION_STEP_INTERNAL_FIELDS.MESSAGE];
|
|
17928
|
-
const timestamp = parsedStep[EXCEPTION_STEP_INTERNAL_FIELDS.TIMESTAMP];
|
|
17929
|
-
if (!isString(message) || 0 === message.trim().length) return;
|
|
17930
|
-
if (!isString(timestamp) && !isNumber(timestamp)) return;
|
|
17931
|
-
return {
|
|
17932
|
-
step: parsedStep,
|
|
17933
|
-
json
|
|
17934
|
-
};
|
|
17935
|
-
} catch {
|
|
17936
|
-
return;
|
|
17937
|
-
}
|
|
17938
|
-
}
|
|
17939
|
-
function safeStringify(value) {
|
|
17940
|
-
const seen = /* @__PURE__ */ new WeakSet();
|
|
17941
|
-
try {
|
|
17942
|
-
return JSON.stringify(value, (_key, replacementValue) => {
|
|
17943
|
-
if ("bigint" == typeof replacementValue) return replacementValue.toString();
|
|
17944
|
-
if ("function" == typeof replacementValue || "symbol" == typeof replacementValue) return;
|
|
17945
|
-
if (replacementValue instanceof Date) return replacementValue.toISOString();
|
|
17946
|
-
if (replacementValue instanceof Error) return {
|
|
17947
|
-
name: replacementValue.name,
|
|
17948
|
-
message: replacementValue.message,
|
|
17949
|
-
stack: replacementValue.stack
|
|
17950
|
-
};
|
|
17951
|
-
if (replacementValue && "object" == typeof replacementValue) {
|
|
17952
|
-
if (seen.has(replacementValue)) return "[Circular]";
|
|
17953
|
-
seen.add(replacementValue);
|
|
17954
|
-
}
|
|
17955
|
-
return replacementValue;
|
|
17956
|
-
});
|
|
17957
|
-
} catch {
|
|
17958
|
-
return;
|
|
17959
|
-
}
|
|
17960
|
-
}
|
|
17961
|
-
function getUtf8ByteLength(value) {
|
|
17962
|
-
if ("undefined" != typeof TextEncoder) return new TextEncoder().encode(value).length;
|
|
17963
|
-
const encoded = encodeURIComponent(value);
|
|
17964
|
-
let byteLength = 0;
|
|
17965
|
-
for (let i = 0; i < encoded.length; i++) if ("%" === encoded[i]) {
|
|
17966
|
-
byteLength += 1;
|
|
17967
|
-
i += 2;
|
|
17968
|
-
} else byteLength += 1;
|
|
17969
|
-
return byteLength;
|
|
17970
|
-
}
|
|
17971
|
-
|
|
17972
|
-
// ../../node_modules/posthog-node/dist/extensions/error-tracking/modifiers/context-lines.node.mjs
|
|
17973
|
-
import { createReadStream as createReadStream2 } from "node:fs";
|
|
17974
|
-
import { createInterface as createInterface2 } from "node:readline";
|
|
17975
|
-
var LRU_FILE_CONTENTS_CACHE = new error_tracking_exports.ReduceableCache(25);
|
|
17976
|
-
var LRU_FILE_CONTENTS_FS_READ_FAILED = new error_tracking_exports.ReduceableCache(20);
|
|
17977
|
-
|
|
17978
|
-
// ../../node_modules/posthog-node/dist/extensions/context/context.mjs
|
|
17979
|
-
import { AsyncLocalStorage } from "node:async_hooks";
|
|
17980
|
-
|
|
17981
|
-
// ../../node_modules/posthog-node/dist/extensions/sentry-integration.mjs
|
|
17982
|
-
var NAME = "posthog-node";
|
|
17983
|
-
function createEventProcessor(_posthog, { organization, projectId, prefix, severityAllowList = [
|
|
17984
|
-
"error"
|
|
17985
|
-
], sendExceptionsToPostHog = true } = {}) {
|
|
17986
|
-
return (event) => {
|
|
17987
|
-
const shouldProcessLevel = "*" === severityAllowList || severityAllowList.includes(event.level);
|
|
17988
|
-
if (!shouldProcessLevel) return event;
|
|
17989
|
-
if (!event.tags) event.tags = {};
|
|
17990
|
-
const userId = event.tags[PostHogSentryIntegration.POSTHOG_ID_TAG];
|
|
17991
|
-
if (void 0 === userId) return event;
|
|
17992
|
-
const uiHost = _posthog.options.host ?? "https://us.i.posthog.com";
|
|
17993
|
-
const personUrl = new URL(`/project/${_posthog.apiKey}/person/${userId}`, uiHost).toString();
|
|
17994
|
-
event.tags["PostHog Person URL"] = personUrl;
|
|
17995
|
-
const exceptions = event.exception?.values || [];
|
|
17996
|
-
const exceptionList = exceptions.map((exception) => ({
|
|
17997
|
-
...exception,
|
|
17998
|
-
stacktrace: exception.stacktrace ? {
|
|
17999
|
-
...exception.stacktrace,
|
|
18000
|
-
type: "raw",
|
|
18001
|
-
frames: (exception.stacktrace.frames || []).map((frame) => ({
|
|
18002
|
-
...frame,
|
|
18003
|
-
platform: "node:javascript"
|
|
18004
|
-
}))
|
|
18005
|
-
} : void 0
|
|
18006
|
-
}));
|
|
18007
|
-
const properties = {
|
|
18008
|
-
$exception_message: exceptions[0]?.value || event.message,
|
|
18009
|
-
$exception_type: exceptions[0]?.type,
|
|
18010
|
-
$exception_level: event.level,
|
|
18011
|
-
$exception_list: exceptionList,
|
|
18012
|
-
$sentry_event_id: event.event_id,
|
|
18013
|
-
$sentry_exception: event.exception,
|
|
18014
|
-
$sentry_exception_message: exceptions[0]?.value || event.message,
|
|
18015
|
-
$sentry_exception_type: exceptions[0]?.type,
|
|
18016
|
-
$sentry_tags: event.tags
|
|
18017
|
-
};
|
|
18018
|
-
if (organization && projectId) properties["$sentry_url"] = (prefix || "https://sentry.io/organizations/") + organization + "/issues/?project=" + projectId + "&query=" + event.event_id;
|
|
18019
|
-
if (sendExceptionsToPostHog) _posthog.capture({
|
|
18020
|
-
event: "$exception",
|
|
18021
|
-
distinctId: userId,
|
|
18022
|
-
properties
|
|
18023
|
-
});
|
|
18024
|
-
return event;
|
|
18025
|
-
};
|
|
18026
|
-
}
|
|
18027
|
-
var PostHogSentryIntegration = class {
|
|
18028
|
-
static #_ = this.POSTHOG_ID_TAG = "posthog_distinct_id";
|
|
18029
|
-
constructor(_posthog, organization, prefix, severityAllowList, sendExceptionsToPostHog) {
|
|
18030
|
-
this.name = NAME;
|
|
18031
|
-
this.name = NAME;
|
|
18032
|
-
this.setupOnce = function(addGlobalEventProcessor, getCurrentHub) {
|
|
18033
|
-
const projectId = getCurrentHub()?.getClient()?.getDsn()?.projectId;
|
|
18034
|
-
addGlobalEventProcessor(createEventProcessor(_posthog, {
|
|
18035
|
-
organization,
|
|
18036
|
-
projectId,
|
|
18037
|
-
prefix,
|
|
18038
|
-
severityAllowList,
|
|
18039
|
-
sendExceptionsToPostHog: sendExceptionsToPostHog ?? true
|
|
18040
|
-
}));
|
|
18041
|
-
};
|
|
18042
|
-
}
|
|
18043
|
-
};
|
|
18044
|
-
|
|
18045
|
-
// ../registry/src/artifacts.ts
|
|
18046
|
-
import { stat as stat3 } from "node:fs/promises";
|
|
18047
|
-
import { randomUUID as randomUUID3 } from "node:crypto";
|
|
18048
|
-
import { basename as basename4, extname as extname2 } from "node:path";
|
|
18049
|
-
|
|
18050
|
-
// ../registry/src/failure-codes.ts
|
|
18051
|
-
var FAILURE_CODES = {
|
|
18052
|
-
ARGENT_UNCLASSIFIED_FAILURE: "ARGENT_UNCLASSIFIED_FAILURE",
|
|
18053
|
-
REGISTRY_SERVICE_NOT_FOUND: "REGISTRY_SERVICE_NOT_FOUND",
|
|
18054
|
-
REGISTRY_SERVICE_INITIALIZATION_FAILED: "REGISTRY_SERVICE_INITIALIZATION_FAILED",
|
|
18055
|
-
REGISTRY_TOOL_NOT_FOUND: "REGISTRY_TOOL_NOT_FOUND",
|
|
18056
|
-
REGISTRY_TOOL_EXECUTION_FAILED: "REGISTRY_TOOL_EXECUTION_FAILED",
|
|
18057
|
-
REGISTRY_TOOL_FAILURE_UNCLASSIFIED: "REGISTRY_TOOL_FAILURE_UNCLASSIFIED",
|
|
18058
|
-
HTTP_TOOL_NOT_FOUND: "HTTP_TOOL_NOT_FOUND",
|
|
18059
|
-
HTTP_ZOD_VALIDATION_FAILED: "HTTP_ZOD_VALIDATION_FAILED",
|
|
18060
|
-
HTTP_CAPABILITY_UNSUPPORTED_OPERATION: "HTTP_CAPABILITY_UNSUPPORTED_OPERATION",
|
|
18061
|
-
HTTP_DEVICE_RESOLUTION_FAILED: "HTTP_DEVICE_RESOLUTION_FAILED",
|
|
18062
|
-
HTTP_DEPENDENCY_PREFLIGHT_MISSING: "HTTP_DEPENDENCY_PREFLIGHT_MISSING",
|
|
18063
|
-
CLI_RUN_TOOL_NOT_FOUND: "CLI_RUN_TOOL_NOT_FOUND",
|
|
18064
|
-
CLI_RUN_FLAG_PARSE_FAILED: "CLI_RUN_FLAG_PARSE_FAILED",
|
|
18065
|
-
CLI_RUN_ARGS_NOT_OBJECT: "CLI_RUN_ARGS_NOT_OBJECT",
|
|
18066
|
-
CLI_RUN_ARGS_JSON_INVALID: "CLI_RUN_ARGS_JSON_INVALID",
|
|
18067
|
-
CLI_RUN_TOOL_CALL_FAILED: "CLI_RUN_TOOL_CALL_FAILED",
|
|
18068
|
-
CLI_RUN_SAVE_IMAGE_FAILED: "CLI_RUN_SAVE_IMAGE_FAILED",
|
|
18069
|
-
TOOL_CAPABILITY_UNSUPPORTED_OPERATION: "TOOL_CAPABILITY_UNSUPPORTED_OPERATION",
|
|
18070
|
-
TOOL_PLATFORM_NOT_IMPLEMENTED: "TOOL_PLATFORM_NOT_IMPLEMENTED",
|
|
18071
|
-
TOOL_DEPENDENCY_MISSING: "TOOL_DEPENDENCY_MISSING",
|
|
18072
|
-
TOOL_INPUT_INVALID: "TOOL_INPUT_INVALID",
|
|
18073
|
-
TOOLSERVER_UNHANDLED_REJECTION: "TOOLSERVER_UNHANDLED_REJECTION",
|
|
18074
|
-
TOOLSERVER_UNCAUGHT_EXCEPTION: "TOOLSERVER_UNCAUGHT_EXCEPTION",
|
|
18075
|
-
INSTALL_GLOBAL_PACKAGE_FAILED: "INSTALL_GLOBAL_PACKAGE_FAILED",
|
|
18076
|
-
INSTALL_LOCAL_PACKAGE_FAILED: "INSTALL_LOCAL_PACKAGE_FAILED",
|
|
18077
|
-
INSTALL_LOCAL_PRECONDITION_FAILED: "INSTALL_LOCAL_PRECONDITION_FAILED",
|
|
18078
|
-
INSTALL_MODE_FLAG_CONFLICT: "INSTALL_MODE_FLAG_CONFLICT",
|
|
18079
|
-
INSTALL_FROM_TAR_PACKAGE_FAILED: "INSTALL_FROM_TAR_PACKAGE_FAILED",
|
|
18080
|
-
INSTALL_INIT_TRIGGERED_UPDATE_FAILED: "INSTALL_INIT_TRIGGERED_UPDATE_FAILED",
|
|
18081
|
-
INSTALL_SKILLS_REFRESH_FAILED: "INSTALL_SKILLS_REFRESH_FAILED",
|
|
18082
|
-
INSTALL_UNCLASSIFIED_FAILED: "INSTALL_UNCLASSIFIED_FAILED",
|
|
18083
|
-
UPDATE_INSTALLED_VERSION_DETECT_FAILED: "UPDATE_INSTALLED_VERSION_DETECT_FAILED",
|
|
18084
|
-
UPDATE_INVALID_TARGET_VERSION: "UPDATE_INVALID_TARGET_VERSION",
|
|
18085
|
-
UPDATE_REGISTRY_CHECK_FAILED: "UPDATE_REGISTRY_CHECK_FAILED",
|
|
18086
|
-
UPDATE_TOOLSERVER_STOP_FAILED: "UPDATE_TOOLSERVER_STOP_FAILED",
|
|
18087
|
-
UPDATE_PACKAGE_ACTION_FAILED: "UPDATE_PACKAGE_ACTION_FAILED",
|
|
18088
|
-
UPDATE_UNCLASSIFIED_FAILED: "UPDATE_UNCLASSIFIED_FAILED",
|
|
18089
|
-
UNINSTALL_TOOLSERVER_STOP_FAILED: "UNINSTALL_TOOLSERVER_STOP_FAILED",
|
|
18090
|
-
UNINSTALL_PACKAGE_ACTION_FAILED: "UNINSTALL_PACKAGE_ACTION_FAILED",
|
|
18091
|
-
UNINSTALL_UNCLASSIFIED_FAILED: "UNINSTALL_UNCLASSIFIED_FAILED",
|
|
18092
|
-
VEGA_CLI_COMMAND_FAILED: "VEGA_CLI_COMMAND_FAILED",
|
|
18093
|
-
VEGA_INPUT_UNAVAILABLE: "VEGA_INPUT_UNAVAILABLE",
|
|
18094
|
-
VEGA_DEVICE_NOT_FOUND: "VEGA_DEVICE_NOT_FOUND",
|
|
18095
|
-
VEGA_DEVICE_NOT_REGISTERED: "VEGA_DEVICE_NOT_REGISTERED",
|
|
18096
|
-
VEGA_MULTIPLE_DEVICES: "VEGA_MULTIPLE_DEVICES",
|
|
18097
|
-
VEGA_BOOT_TIMEOUT: "VEGA_BOOT_TIMEOUT",
|
|
18098
|
-
VEGA_IMAGE_NOT_FOUND: "VEGA_IMAGE_NOT_FOUND",
|
|
18099
|
-
VEGA_ALREADY_RUNNING: "VEGA_ALREADY_RUNNING",
|
|
18100
|
-
VEGA_SCREENSHOT_FAILED: "VEGA_SCREENSHOT_FAILED",
|
|
18101
|
-
VEGA_TEXT_INVALID: "VEGA_TEXT_INVALID",
|
|
18102
|
-
ANDROID_ADB_NOT_FOUND: "ANDROID_ADB_NOT_FOUND",
|
|
18103
|
-
ANDROID_EMULATOR_NOT_FOUND: "ANDROID_EMULATOR_NOT_FOUND",
|
|
18104
|
-
ANDROID_ADB_COMMAND_FAILED: "ANDROID_ADB_COMMAND_FAILED",
|
|
18105
|
-
ANDROID_ADB_BOOT_TERMINAL_STATE: "ANDROID_ADB_BOOT_TERMINAL_STATE",
|
|
18106
|
-
ANDROID_ADB_BOOT_TIMEOUT: "ANDROID_ADB_BOOT_TIMEOUT",
|
|
18107
|
-
SIMULATOR_NETWORK_TIMEOUT: "SIMULATOR_NETWORK_TIMEOUT",
|
|
18108
|
-
SIMULATOR_NETWORK_CONNECTION_REFUSED: "SIMULATOR_NETWORK_CONNECTION_REFUSED",
|
|
18109
|
-
SIMULATOR_NETWORK_CONNECTION_RESET: "SIMULATOR_NETWORK_CONNECTION_RESET",
|
|
18110
|
-
SIMULATOR_NETWORK_ERROR: "SIMULATOR_NETWORK_ERROR",
|
|
18111
|
-
SIMULATOR_NON_JSON_RESPONSE: "SIMULATOR_NON_JSON_RESPONSE",
|
|
18112
|
-
SIMULATOR_HTTP_ERROR_RESPONSE: "SIMULATOR_HTTP_ERROR_RESPONSE",
|
|
18113
|
-
SIMULATOR_MISSING_RESPONSE_FIELDS: "SIMULATOR_MISSING_RESPONSE_FIELDS",
|
|
18114
|
-
SIMULATOR_SCREENSHOT_FAILED: "SIMULATOR_SCREENSHOT_FAILED",
|
|
18115
|
-
SIMULATOR_SERVER_FACTORY_OPTIONS_MISSING: "SIMULATOR_SERVER_FACTORY_OPTIONS_MISSING",
|
|
18116
|
-
SIMULATOR_SERVER_DEVICE_ID_INVALID: "SIMULATOR_SERVER_DEVICE_ID_INVALID",
|
|
18117
|
-
SIMULATOR_SERVER_READY_EXITED: "SIMULATOR_SERVER_READY_EXITED",
|
|
18118
|
-
SIMULATOR_SERVER_READY_TIMEOUT: "SIMULATOR_SERVER_READY_TIMEOUT",
|
|
18119
|
-
SIMULATOR_SERVER_PROCESS_ERROR: "SIMULATOR_SERVER_PROCESS_ERROR",
|
|
18120
|
-
SIMULATOR_SERVER_TERMINATED: "SIMULATOR_SERVER_TERMINATED",
|
|
18121
|
-
AX_QUERY_TIMEOUT: "AX_QUERY_TIMEOUT",
|
|
18122
|
-
AX_DAEMON_READY_TIMEOUT: "AX_DAEMON_READY_TIMEOUT",
|
|
18123
|
-
AX_DAEMON_EXITED_BEFORE_READY: "AX_DAEMON_EXITED_BEFORE_READY",
|
|
18124
|
-
AX_DAEMON_PROCESS_ERROR: "AX_DAEMON_PROCESS_ERROR",
|
|
18125
|
-
AX_FACTORY_OPTIONS_MISSING: "AX_FACTORY_OPTIONS_MISSING",
|
|
18126
|
-
AX_WRONG_PLATFORM: "AX_WRONG_PLATFORM",
|
|
18127
|
-
AX_DEVICE_ID_INVALID: "AX_DEVICE_ID_INVALID",
|
|
18128
|
-
AX_DESCRIBE_ERROR: "AX_DESCRIBE_ERROR",
|
|
18129
|
-
AX_QUERY_FAILED: "AX_QUERY_FAILED",
|
|
18130
|
-
ANDROID_LAUNCH_ACTIVITY_RESOLVE_FAILED: "ANDROID_LAUNCH_ACTIVITY_RESOLVE_FAILED",
|
|
18131
|
-
ANDROID_LAUNCH_AM_START_FAILED: "ANDROID_LAUNCH_AM_START_FAILED",
|
|
18132
|
-
ANDROID_OPEN_URL_FAILED: "ANDROID_OPEN_URL_FAILED",
|
|
18133
|
-
ANDROID_REINSTALL_INSTALL_FAILED: "ANDROID_REINSTALL_INSTALL_FAILED",
|
|
18134
|
-
ANDROID_RESTART_FAILED: "ANDROID_RESTART_FAILED",
|
|
18135
|
-
ANDROID_SETTINGS_PERMISSION_FAILED: "ANDROID_SETTINGS_PERMISSION_FAILED",
|
|
18136
|
-
IOS_LAUNCH_SIMCTL_FAILED: "IOS_LAUNCH_SIMCTL_FAILED",
|
|
18137
|
-
IOS_OPEN_URL_FAILED: "IOS_OPEN_URL_FAILED",
|
|
18138
|
-
IOS_REINSTALL_INSTALL_FAILED: "IOS_REINSTALL_INSTALL_FAILED",
|
|
18139
|
-
IOS_RESTART_LAUNCH_FAILED: "IOS_RESTART_LAUNCH_FAILED",
|
|
18140
|
-
IOS_SETTINGS_PERMISSION_FAILED: "IOS_SETTINGS_PERMISSION_FAILED",
|
|
18141
|
-
SETTINGS_PERMISSION_UNSUPPORTED: "SETTINGS_PERMISSION_UNSUPPORTED",
|
|
18142
|
-
NATIVE_DEVTOOLS_DESCRIBE_ERROR: "NATIVE_DEVTOOLS_DESCRIBE_ERROR",
|
|
18143
|
-
NATIVE_DEVTOOLS_VIEW_AT_POINT_ERROR: "NATIVE_DEVTOOLS_VIEW_AT_POINT_ERROR",
|
|
18144
|
-
NATIVE_DEVTOOLS_USER_INTERACTABLE_VIEW_AT_POINT_ERROR: "NATIVE_DEVTOOLS_USER_INTERACTABLE_VIEW_AT_POINT_ERROR",
|
|
18145
|
-
NATIVE_DEVTOOLS_FIND_VIEWS_ERROR: "NATIVE_DEVTOOLS_FIND_VIEWS_ERROR",
|
|
18146
|
-
NATIVE_DEVTOOLS_FACTORY_OPTIONS_MISSING: "NATIVE_DEVTOOLS_FACTORY_OPTIONS_MISSING",
|
|
18147
|
-
NATIVE_DEVTOOLS_WRONG_PLATFORM: "NATIVE_DEVTOOLS_WRONG_PLATFORM",
|
|
18148
|
-
NATIVE_DEVTOOLS_NOT_INJECTABLE: "NATIVE_DEVTOOLS_NOT_INJECTABLE",
|
|
18149
|
-
NATIVE_DEVTOOLS_NOT_CONNECTED: "NATIVE_DEVTOOLS_NOT_CONNECTED",
|
|
18150
|
-
NATIVE_DEVTOOLS_RPC_TIMEOUT: "NATIVE_DEVTOOLS_RPC_TIMEOUT",
|
|
18151
|
-
NATIVE_DEVTOOLS_RPC_ERROR: "NATIVE_DEVTOOLS_RPC_ERROR",
|
|
18152
|
-
NATIVE_DEVTOOLS_SERVICE_DISPOSED: "NATIVE_DEVTOOLS_SERVICE_DISPOSED",
|
|
18153
|
-
NATIVE_DEVTOOLS_SOCKET_BIND_FAILED: "NATIVE_DEVTOOLS_SOCKET_BIND_FAILED",
|
|
18154
|
-
NATIVE_TARGET_NO_CONNECTED_APPS: "NATIVE_TARGET_NO_CONNECTED_APPS",
|
|
18155
|
-
NATIVE_TARGET_SINGLE_APP_NOT_FOREGROUND: "NATIVE_TARGET_SINGLE_APP_NOT_FOREGROUND",
|
|
18156
|
-
NATIVE_TARGET_MULTIPLE_APPS_AMBIGUOUS: "NATIVE_TARGET_MULTIPLE_APPS_AMBIGUOUS",
|
|
18157
|
-
ANDROID_DEVTOOLS_ADB_NOT_FOUND: "ANDROID_DEVTOOLS_ADB_NOT_FOUND",
|
|
18158
|
-
ANDROID_DEVTOOLS_ADB_FORWARD_UNEXPECTED: "ANDROID_DEVTOOLS_ADB_FORWARD_UNEXPECTED",
|
|
18159
|
-
ANDROID_DEVTOOLS_HELPER_EXITED_BEFORE_READY: "ANDROID_DEVTOOLS_HELPER_EXITED_BEFORE_READY",
|
|
18160
|
-
ANDROID_DEVTOOLS_HELPER_PROCESS_ERROR: "ANDROID_DEVTOOLS_HELPER_PROCESS_ERROR",
|
|
18161
|
-
ANDROID_DEVTOOLS_HELPER_READY_TIMEOUT: "ANDROID_DEVTOOLS_HELPER_READY_TIMEOUT",
|
|
18162
|
-
ANDROID_DEVTOOLS_FACTORY_OPTIONS_MISSING: "ANDROID_DEVTOOLS_FACTORY_OPTIONS_MISSING",
|
|
18163
|
-
ANDROID_DEVTOOLS_WRONG_PLATFORM: "ANDROID_DEVTOOLS_WRONG_PLATFORM",
|
|
18164
|
-
ANDROID_DEVTOOLS_DEVICE_ID_INVALID: "ANDROID_DEVTOOLS_DEVICE_ID_INVALID",
|
|
18165
|
-
ANDROID_DEVTOOLS_HELPER_TERMINATED: "ANDROID_DEVTOOLS_HELPER_TERMINATED",
|
|
18166
|
-
ANDROID_DEVTOOLS_RPC_CLIENT_CLOSED: "ANDROID_DEVTOOLS_RPC_CLIENT_CLOSED",
|
|
18167
|
-
ANDROID_DEVTOOLS_RPC_ERROR: "ANDROID_DEVTOOLS_RPC_ERROR",
|
|
18168
|
-
ANDROID_DEVTOOLS_RPC_TIMEOUT: "ANDROID_DEVTOOLS_RPC_TIMEOUT",
|
|
18169
|
-
ANDROID_DEVTOOLS_SOCKET_CLOSED: "ANDROID_DEVTOOLS_SOCKET_CLOSED",
|
|
18170
|
-
ANDROID_SCREEN_SIZE_PARSE_FAILED: "ANDROID_SCREEN_SIZE_PARSE_FAILED",
|
|
18171
|
-
ANDROID_SCREEN_SIZE_NON_POSITIVE: "ANDROID_SCREEN_SIZE_NON_POSITIVE",
|
|
18172
|
-
ANDROID_UIAUTOMATOR_PARSE_FAILED: "ANDROID_UIAUTOMATOR_PARSE_FAILED",
|
|
18173
|
-
ANDROID_UIAUTOMATOR_CAPTURE_FAILED: "ANDROID_UIAUTOMATOR_CAPTURE_FAILED",
|
|
18174
|
-
DEBUGGER_METRO_NOT_RUNNING: "DEBUGGER_METRO_NOT_RUNNING",
|
|
18175
|
-
DEBUGGER_METRO_NO_TARGETS: "DEBUGGER_METRO_NO_TARGETS",
|
|
18176
|
-
DEBUGGER_CDP_RUNTIME_EXCEPTION: "DEBUGGER_CDP_RUNTIME_EXCEPTION",
|
|
18177
|
-
DEBUGGER_CDP_BINDING_TIMEOUT: "DEBUGGER_CDP_BINDING_TIMEOUT",
|
|
18178
|
-
DEBUGGER_CDP_BINDING_UNAVAILABLE: "DEBUGGER_CDP_BINDING_UNAVAILABLE",
|
|
18179
|
-
DEBUGGER_CDP_PROTOCOL_ERROR: "DEBUGGER_CDP_PROTOCOL_ERROR",
|
|
18180
|
-
DEBUGGER_RELOAD_FAILED: "DEBUGGER_RELOAD_FAILED",
|
|
18181
|
-
JS_RUNTIME_CONSOLE_SERVER_BIND_FAILED: "JS_RUNTIME_CONSOLE_SERVER_BIND_FAILED",
|
|
18182
|
-
JS_RUNTIME_PAYLOAD_INVALID: "JS_RUNTIME_PAYLOAD_INVALID",
|
|
18183
|
-
JS_RUNTIME_PAYLOAD_DEVICE_MISSING: "JS_RUNTIME_PAYLOAD_DEVICE_MISSING",
|
|
18184
|
-
JS_RUNTIME_PAYLOAD_PORT_INVALID: "JS_RUNTIME_PAYLOAD_PORT_INVALID",
|
|
18185
|
-
JS_RUNTIME_CDP_DISCONNECTED: "JS_RUNTIME_CDP_DISCONNECTED",
|
|
18186
|
-
NETWORK_INSPECTOR_CDP_DISCONNECTED: "NETWORK_INSPECTOR_CDP_DISCONNECTED",
|
|
18187
|
-
REACT_PROFILER_NO_ACTIVE_SESSION: "REACT_PROFILER_NO_ACTIVE_SESSION",
|
|
18188
|
-
REACT_PROFILER_CDP_CONNECTION_LOST: "REACT_PROFILER_CDP_CONNECTION_LOST",
|
|
18189
|
-
REACT_PROFILER_NO_CPU_PROFILE: "REACT_PROFILER_NO_CPU_PROFILE",
|
|
18190
|
-
REACT_PROFILER_RUNTIME_EXCEPTION: "REACT_PROFILER_RUNTIME_EXCEPTION",
|
|
18191
|
-
REACT_PROFILER_NO_RUNTIME_DATA: "REACT_PROFILER_NO_RUNTIME_DATA",
|
|
18192
|
-
REACT_PROFILER_SESSION_PAYLOAD_INVALID: "REACT_PROFILER_SESSION_PAYLOAD_INVALID",
|
|
18193
|
-
REACT_PROFILER_SESSION_PAYLOAD_DEVICE_MISSING: "REACT_PROFILER_SESSION_PAYLOAD_DEVICE_MISSING",
|
|
18194
|
-
REACT_PROFILER_SESSION_CDP_DISCONNECTED: "REACT_PROFILER_SESSION_CDP_DISCONNECTED",
|
|
18195
|
-
REACT_PROFILER_CDP_NOT_CONNECTED: "REACT_PROFILER_CDP_NOT_CONNECTED",
|
|
18196
|
-
REACT_PROFILER_STATE_READ_FAILED: "REACT_PROFILER_STATE_READ_FAILED",
|
|
18197
|
-
REACT_PROFILER_DEVTOOLS_HOOK_MISSING: "REACT_PROFILER_DEVTOOLS_HOOK_MISSING",
|
|
18198
|
-
REACT_PROFILER_DEVTOOLS_BACKEND_ATTACH_FAILED: "REACT_PROFILER_DEVTOOLS_BACKEND_ATTACH_FAILED",
|
|
18199
|
-
REACT_PROFILER_DEVTOOLS_BACKEND_BOOTSTRAP_FAILED: "REACT_PROFILER_DEVTOOLS_BACKEND_BOOTSTRAP_FAILED",
|
|
18200
|
-
REACT_PROFILER_DEVTOOLS_RENDERER_MISSING: "REACT_PROFILER_DEVTOOLS_RENDERER_MISSING",
|
|
18201
|
-
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
18202
|
-
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
18203
|
-
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
18204
|
-
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
18205
|
-
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
18206
|
-
NATIVE_PROFILER_WRONG_PLATFORM: "NATIVE_PROFILER_WRONG_PLATFORM",
|
|
18207
|
-
NATIVE_PROFILER_APP_PROCESS_LIST_FAILED: "NATIVE_PROFILER_APP_PROCESS_LIST_FAILED",
|
|
18208
|
-
NATIVE_PROFILER_APP_LIST_FAILED: "NATIVE_PROFILER_APP_LIST_FAILED",
|
|
18209
|
-
NATIVE_PROFILER_NO_RUNNING_APPS: "NATIVE_PROFILER_NO_RUNNING_APPS",
|
|
18210
|
-
NATIVE_PROFILER_NO_RUNNING_USER_APPS: "NATIVE_PROFILER_NO_RUNNING_USER_APPS",
|
|
18211
|
-
NATIVE_PROFILER_MULTIPLE_RUNNING_USER_APPS: "NATIVE_PROFILER_MULTIPLE_RUNNING_USER_APPS",
|
|
18212
|
-
NATIVE_PROFILER_MALLOC_DEGRADED_XCODE: "NATIVE_PROFILER_MALLOC_DEGRADED_XCODE",
|
|
18213
|
-
NATIVE_PROFILER_MALLOC_STRATEGY_OVERRIDE: "NATIVE_PROFILER_MALLOC_STRATEGY_OVERRIDE",
|
|
18214
|
-
NATIVE_PROFILER_APP_BUNDLE_PATH_FAILED: "NATIVE_PROFILER_APP_BUNDLE_PATH_FAILED",
|
|
18215
|
-
NATIVE_PROFILER_LAUNCH_APP_NOT_FOUND: "NATIVE_PROFILER_LAUNCH_APP_NOT_FOUND",
|
|
18216
|
-
NATIVE_PROFILER_LAUNCH_APP_AMBIGUOUS: "NATIVE_PROFILER_LAUNCH_APP_AMBIGUOUS",
|
|
18217
|
-
NATIVE_PROFILER_SESSION_ALREADY_RUNNING: "NATIVE_PROFILER_SESSION_ALREADY_RUNNING",
|
|
18218
|
-
NATIVE_PROFILER_XCTRACE_NO_PID: "NATIVE_PROFILER_XCTRACE_NO_PID",
|
|
18219
|
-
NATIVE_PROFILER_XCTRACE_PROCESS_NOT_FOUND: "NATIVE_PROFILER_XCTRACE_PROCESS_NOT_FOUND",
|
|
18220
|
-
NATIVE_PROFILER_XCTRACE_READY_EXITED: "NATIVE_PROFILER_XCTRACE_READY_EXITED",
|
|
18221
|
-
NATIVE_PROFILER_XCTRACE_PROCESS_ERROR: "NATIVE_PROFILER_XCTRACE_PROCESS_ERROR",
|
|
18222
|
-
NATIVE_PROFILER_XCTRACE_READY_TIMEOUT: "NATIVE_PROFILER_XCTRACE_READY_TIMEOUT",
|
|
18223
|
-
NATIVE_PROFILER_TRACE_TEMPLATE_MISSING: "NATIVE_PROFILER_TRACE_TEMPLATE_MISSING",
|
|
18224
|
-
NATIVE_PROFILER_NO_ACTIVE_SESSION: "NATIVE_PROFILER_NO_ACTIVE_SESSION",
|
|
18225
|
-
NATIVE_PROFILER_APP_PROCESS_NOT_FOUND: "NATIVE_PROFILER_APP_PROCESS_NOT_FOUND",
|
|
18226
|
-
NATIVE_PROFILER_NO_EXPORTED_TRACE: "NATIVE_PROFILER_NO_EXPORTED_TRACE",
|
|
18227
|
-
// Android perfetto start-failure modes — mirror the iOS xctrace set so a
|
|
18228
|
-
// failed recording start is classified rather than falling through to the
|
|
18229
|
-
// generic tool-execution bucket.
|
|
18230
|
-
NATIVE_PROFILER_PERFETTO_PROCESS_ERROR: "NATIVE_PROFILER_PERFETTO_PROCESS_ERROR",
|
|
18231
|
-
NATIVE_PROFILER_PERFETTO_READY_TIMEOUT: "NATIVE_PROFILER_PERFETTO_READY_TIMEOUT",
|
|
18232
|
-
NATIVE_PROFILER_PERFETTO_READY_EXITED: "NATIVE_PROFILER_PERFETTO_READY_EXITED",
|
|
18233
|
-
// screen-recording-start / screen-recording-stop. One capture path for every
|
|
18234
|
-
// platform (simulator-server's frame stream into ffmpeg), so the stages name
|
|
18235
|
-
// the step that failed rather than the device family.
|
|
18236
|
-
SCREEN_RECORDING_FACTORY_OPTIONS_MISSING: "SCREEN_RECORDING_FACTORY_OPTIONS_MISSING",
|
|
18237
|
-
SCREEN_RECORDING_WRONG_PLATFORM: "SCREEN_RECORDING_WRONG_PLATFORM",
|
|
18238
|
-
SCREEN_RECORDING_ALREADY_ACTIVE: "SCREEN_RECORDING_ALREADY_ACTIVE",
|
|
18239
|
-
SCREEN_RECORDING_NO_ACTIVE_SESSION: "SCREEN_RECORDING_NO_ACTIVE_SESSION",
|
|
18240
|
-
SCREEN_RECORDING_STOP_IN_PROGRESS: "SCREEN_RECORDING_STOP_IN_PROGRESS",
|
|
18241
|
-
SCREEN_RECORDING_START_EXITED: "SCREEN_RECORDING_START_EXITED",
|
|
18242
|
-
SCREEN_RECORDING_START_TIMEOUT: "SCREEN_RECORDING_START_TIMEOUT",
|
|
18243
|
-
SCREEN_RECORDING_PROCESS_ERROR: "SCREEN_RECORDING_PROCESS_ERROR",
|
|
18244
|
-
SCREEN_RECORDING_OUTPUT_MISSING: "SCREEN_RECORDING_OUTPUT_MISSING",
|
|
18245
|
-
SCREEN_RECORDING_SERVER_SHUTTING_DOWN: "SCREEN_RECORDING_SERVER_SHUTTING_DOWN",
|
|
18246
|
-
SCREEN_RECORDING_STREAM_UNAVAILABLE: "SCREEN_RECORDING_STREAM_UNAVAILABLE",
|
|
18247
|
-
SCREEN_RECORDING_FFMPEG_NOT_FOUND: "SCREEN_RECORDING_FFMPEG_NOT_FOUND",
|
|
18248
|
-
FLOW_PROJECT_ROOT_REQUIRED: "FLOW_PROJECT_ROOT_REQUIRED",
|
|
18249
|
-
FLOW_PROJECT_ROOT_INVALID: "FLOW_PROJECT_ROOT_INVALID",
|
|
18250
|
-
FLOW_NAME_INVALID: "FLOW_NAME_INVALID",
|
|
18251
|
-
FLOW_NO_ACTIVE_RECORDING: "FLOW_NO_ACTIVE_RECORDING",
|
|
18252
|
-
FLOW_FILE_INVALID: "FLOW_FILE_INVALID",
|
|
18253
|
-
FLOW_ENTRY_UNRECOGNIZED: "FLOW_ENTRY_UNRECOGNIZED",
|
|
18254
|
-
FLOW_E2E_HAS_PREREQUISITE: "FLOW_E2E_HAS_PREREQUISITE",
|
|
18255
|
-
FLOW_DEVICE_RESOLUTION: "FLOW_DEVICE_RESOLUTION",
|
|
18256
|
-
PROFILER_QUERY_MODE_INVALID: "PROFILER_QUERY_MODE_INVALID",
|
|
18257
|
-
PROFILER_QUERY_REQUIRED_PARAM_MISSING: "PROFILER_QUERY_REQUIRED_PARAM_MISSING",
|
|
18258
|
-
PROFILER_DATA_NOT_LOADED: "PROFILER_DATA_NOT_LOADED",
|
|
18259
|
-
PROFILER_NATIVE_TRACE_MISSING: "PROFILER_NATIVE_TRACE_MISSING",
|
|
18260
|
-
PROFILER_NATIVE_METADATA_MISSING: "PROFILER_NATIVE_METADATA_MISSING",
|
|
18261
|
-
PROFILER_NATIVE_METADATA_INVALID: "PROFILER_NATIVE_METADATA_INVALID",
|
|
18262
|
-
CHROMIUM_CDP_UNREACHABLE: "CHROMIUM_CDP_UNREACHABLE",
|
|
18263
|
-
CHROMIUM_CDP_NO_PAGE_TARGET: "CHROMIUM_CDP_NO_PAGE_TARGET",
|
|
18264
|
-
CHROMIUM_CDP_INVALID_RESPONSE: "CHROMIUM_CDP_INVALID_RESPONSE",
|
|
18265
|
-
CHROMIUM_DEVICE_ID_INVALID: "CHROMIUM_DEVICE_ID_INVALID",
|
|
18266
|
-
CHROMIUM_PARAM_INVALID: "CHROMIUM_PARAM_INVALID",
|
|
18267
|
-
CHROMIUM_INPUT_INVALID: "CHROMIUM_INPUT_INVALID",
|
|
18268
|
-
CHROMIUM_WINDOW_HIDDEN: "CHROMIUM_WINDOW_HIDDEN",
|
|
18269
|
-
CHROMIUM_VIEWPORT_READ_FAILED: "CHROMIUM_VIEWPORT_READ_FAILED",
|
|
18270
|
-
CHROMIUM_SCREENSHOT_FAILED: "CHROMIUM_SCREENSHOT_FAILED",
|
|
18271
|
-
CHROMIUM_STORAGE_EVAL_FAILED: "CHROMIUM_STORAGE_EVAL_FAILED",
|
|
18272
|
-
CHROMIUM_TAB_NOT_FOUND: "CHROMIUM_TAB_NOT_FOUND",
|
|
18273
|
-
CHROMIUM_TAB_OPEN_FAILED: "CHROMIUM_TAB_OPEN_FAILED",
|
|
18274
|
-
CHROMIUM_DESCRIBE_FAILED: "CHROMIUM_DESCRIBE_FAILED",
|
|
18275
|
-
CHROMIUM_ELECTRON_APP_PATH_INVALID: "CHROMIUM_ELECTRON_APP_PATH_INVALID",
|
|
18276
|
-
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
18277
|
-
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
18278
|
-
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
18279
|
-
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
18280
|
-
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
18281
|
-
SECRET_PLACEHOLDER_UNKNOWN: "SECRET_PLACEHOLDER_UNKNOWN",
|
|
18282
|
-
SCREENSHOT_DIFF_INPUT_INVALID: "SCREENSHOT_DIFF_INPUT_INVALID",
|
|
18283
|
-
BOOT_DEVICE_TARGET_SELECTION_INVALID: "BOOT_DEVICE_TARGET_SELECTION_INVALID",
|
|
18284
|
-
BOOT_IOS_UNSUPPORTED_HOST: "BOOT_IOS_UNSUPPORTED_HOST",
|
|
18285
|
-
BOOT_ANDROID_NO_AVDS: "BOOT_ANDROID_NO_AVDS",
|
|
18286
|
-
BOOT_ANDROID_AVD_NOT_FOUND: "BOOT_ANDROID_AVD_NOT_FOUND",
|
|
18287
|
-
BOOT_ANDROID_ADB_UNAVAILABLE: "BOOT_ANDROID_ADB_UNAVAILABLE",
|
|
18288
|
-
BOOT_ANDROID_GPU_MODE_INVALID: "BOOT_ANDROID_GPU_MODE_INVALID",
|
|
18289
|
-
BOOT_ANDROID_ADB_REGISTER_TIMEOUT: "BOOT_ANDROID_ADB_REGISTER_TIMEOUT",
|
|
18290
|
-
BOOT_ANDROID_HOT_BOOT_FRAME_UNUSABLE: "BOOT_ANDROID_HOT_BOOT_FRAME_UNUSABLE",
|
|
18291
|
-
BOOT_ANDROID_FIRST_FRAME_TIMEOUT: "BOOT_ANDROID_FIRST_FRAME_TIMEOUT",
|
|
18292
|
-
BOOT_ANDROID_PACKAGE_MANAGER_UNAVAILABLE: "BOOT_ANDROID_PACKAGE_MANAGER_UNAVAILABLE",
|
|
18293
|
-
BOOT_ANDROID_COLD_BOOT_FAILED: "BOOT_ANDROID_COLD_BOOT_FAILED"
|
|
18506
|
+
droppedKeys: []
|
|
18507
|
+
};
|
|
18508
|
+
const droppedKeys = [];
|
|
18509
|
+
const sanitizedProperties = Object.keys(properties).reduce((acc, key) => {
|
|
18510
|
+
if (RESERVED_EXCEPTION_STEP_KEYS.has(key)) {
|
|
18511
|
+
droppedKeys.push(key);
|
|
18512
|
+
return acc;
|
|
18513
|
+
}
|
|
18514
|
+
acc[key] = properties[key];
|
|
18515
|
+
return acc;
|
|
18516
|
+
}, {});
|
|
18517
|
+
return {
|
|
18518
|
+
sanitizedProperties,
|
|
18519
|
+
droppedKeys
|
|
18520
|
+
};
|
|
18521
|
+
}
|
|
18522
|
+
var ExceptionStepsBuffer = class {
|
|
18523
|
+
constructor(config2) {
|
|
18524
|
+
this._entries = [];
|
|
18525
|
+
this._totalBytes = 0;
|
|
18526
|
+
this._config = resolveExceptionStepsConfig(config2);
|
|
18527
|
+
}
|
|
18528
|
+
setConfig(config2) {
|
|
18529
|
+
this._config = resolveExceptionStepsConfig(config2);
|
|
18530
|
+
this._trimToMaxBytes();
|
|
18531
|
+
}
|
|
18532
|
+
add(step) {
|
|
18533
|
+
const serialized = normalizeAndSerializeStep(step);
|
|
18534
|
+
if (!serialized) return;
|
|
18535
|
+
const bytes = getUtf8ByteLength(serialized.json);
|
|
18536
|
+
if (bytes > this._config.max_bytes) return;
|
|
18537
|
+
this._entries.push({
|
|
18538
|
+
step: serialized.step,
|
|
18539
|
+
bytes
|
|
18540
|
+
});
|
|
18541
|
+
this._totalBytes += bytes;
|
|
18542
|
+
this._trimToMaxBytes();
|
|
18543
|
+
}
|
|
18544
|
+
getAttachable() {
|
|
18545
|
+
return this._entries.map((e) => e.step);
|
|
18546
|
+
}
|
|
18547
|
+
clear() {
|
|
18548
|
+
this._entries = [];
|
|
18549
|
+
this._totalBytes = 0;
|
|
18550
|
+
}
|
|
18551
|
+
size() {
|
|
18552
|
+
return this._entries.length;
|
|
18553
|
+
}
|
|
18554
|
+
_trimToMaxBytes() {
|
|
18555
|
+
while (this._totalBytes > this._config.max_bytes && this._entries.length > 0) {
|
|
18556
|
+
const evicted = this._entries.shift();
|
|
18557
|
+
if (evicted) this._totalBytes -= evicted.bytes;
|
|
18558
|
+
}
|
|
18559
|
+
}
|
|
18294
18560
|
};
|
|
18561
|
+
function normalizePositiveInteger(input, fallback) {
|
|
18562
|
+
if (!isNumber(input) || input === 1 / 0 || input === -1 / 0) return fallback;
|
|
18563
|
+
const normalized = Math.floor(input);
|
|
18564
|
+
if (normalized < 0) return fallback;
|
|
18565
|
+
return normalized;
|
|
18566
|
+
}
|
|
18567
|
+
function normalizeAndSerializeStep(step) {
|
|
18568
|
+
const json = safeStringify(step);
|
|
18569
|
+
if (!json) return;
|
|
18570
|
+
try {
|
|
18571
|
+
const parsed = JSON.parse(json);
|
|
18572
|
+
if (!isObject2(parsed)) return;
|
|
18573
|
+
const parsedStep = parsed;
|
|
18574
|
+
const message = parsedStep[EXCEPTION_STEP_INTERNAL_FIELDS.MESSAGE];
|
|
18575
|
+
const timestamp = parsedStep[EXCEPTION_STEP_INTERNAL_FIELDS.TIMESTAMP];
|
|
18576
|
+
if (!isString(message) || 0 === message.trim().length) return;
|
|
18577
|
+
if (!isString(timestamp) && !isNumber(timestamp)) return;
|
|
18578
|
+
return {
|
|
18579
|
+
step: parsedStep,
|
|
18580
|
+
json
|
|
18581
|
+
};
|
|
18582
|
+
} catch {
|
|
18583
|
+
return;
|
|
18584
|
+
}
|
|
18585
|
+
}
|
|
18586
|
+
function safeStringify(value) {
|
|
18587
|
+
const seen = /* @__PURE__ */ new WeakSet();
|
|
18588
|
+
try {
|
|
18589
|
+
return JSON.stringify(value, (_key, replacementValue) => {
|
|
18590
|
+
if ("bigint" == typeof replacementValue) return replacementValue.toString();
|
|
18591
|
+
if ("function" == typeof replacementValue || "symbol" == typeof replacementValue) return;
|
|
18592
|
+
if (replacementValue instanceof Date) return replacementValue.toISOString();
|
|
18593
|
+
if (replacementValue instanceof Error) return {
|
|
18594
|
+
name: replacementValue.name,
|
|
18595
|
+
message: replacementValue.message,
|
|
18596
|
+
stack: replacementValue.stack
|
|
18597
|
+
};
|
|
18598
|
+
if (replacementValue && "object" == typeof replacementValue) {
|
|
18599
|
+
if (seen.has(replacementValue)) return "[Circular]";
|
|
18600
|
+
seen.add(replacementValue);
|
|
18601
|
+
}
|
|
18602
|
+
return replacementValue;
|
|
18603
|
+
});
|
|
18604
|
+
} catch {
|
|
18605
|
+
return;
|
|
18606
|
+
}
|
|
18607
|
+
}
|
|
18608
|
+
function getUtf8ByteLength(value) {
|
|
18609
|
+
if ("undefined" != typeof TextEncoder) return new TextEncoder().encode(value).length;
|
|
18610
|
+
const encoded = encodeURIComponent(value);
|
|
18611
|
+
let byteLength = 0;
|
|
18612
|
+
for (let i = 0; i < encoded.length; i++) if ("%" === encoded[i]) {
|
|
18613
|
+
byteLength += 1;
|
|
18614
|
+
i += 2;
|
|
18615
|
+
} else byteLength += 1;
|
|
18616
|
+
return byteLength;
|
|
18617
|
+
}
|
|
18295
18618
|
|
|
18296
|
-
//
|
|
18297
|
-
|
|
18298
|
-
|
|
18299
|
-
|
|
18300
|
-
|
|
18301
|
-
"dependency_missing",
|
|
18302
|
-
"unsupported",
|
|
18303
|
-
"not_implemented",
|
|
18304
|
-
"timeout",
|
|
18305
|
-
"network",
|
|
18306
|
-
"subprocess",
|
|
18307
|
-
"crash",
|
|
18308
|
-
"unknown"
|
|
18309
|
-
];
|
|
18310
|
-
var FAILURE_COMMANDS = [
|
|
18311
|
-
"adb",
|
|
18312
|
-
"emulator",
|
|
18313
|
-
"vega",
|
|
18314
|
-
"xcrun_simctl",
|
|
18315
|
-
"xctrace",
|
|
18316
|
-
"native_devtools",
|
|
18317
|
-
"android_devtools",
|
|
18318
|
-
"ax_service",
|
|
18319
|
-
"simulator_server",
|
|
18320
|
-
"ffmpeg",
|
|
18321
|
-
"cdp",
|
|
18322
|
-
"electron",
|
|
18323
|
-
"npm",
|
|
18324
|
-
"npx",
|
|
18325
|
-
"unknown"
|
|
18326
|
-
];
|
|
18327
|
-
var FAILURE_SIGNAL_NAMES = [
|
|
18328
|
-
"SIGABRT",
|
|
18329
|
-
"SIGHUP",
|
|
18330
|
-
"SIGINT",
|
|
18331
|
-
"SIGKILL",
|
|
18332
|
-
"SIGQUIT",
|
|
18333
|
-
"SIGTERM"
|
|
18334
|
-
];
|
|
18335
|
-
var FAILURE_SPAWN_CODES = ["EACCES", "ENOENT", "EPERM", "ETIMEDOUT"];
|
|
18336
|
-
var NETWORK_FAILURES = [
|
|
18337
|
-
"timeout",
|
|
18338
|
-
"connection_refused",
|
|
18339
|
-
"connection_reset",
|
|
18340
|
-
"invalid_response",
|
|
18341
|
-
"other"
|
|
18342
|
-
];
|
|
18343
|
-
var FALLBACK_SIGNAL = {
|
|
18344
|
-
error_code: FAILURE_CODES.ARGENT_UNCLASSIFIED_FAILURE,
|
|
18345
|
-
failure_stage: "unclassified",
|
|
18346
|
-
failure_area: "registry",
|
|
18347
|
-
error_kind: "unknown"
|
|
18348
|
-
};
|
|
18349
|
-
var FAILURE_SIGNAL_NAME_SET = new Set(FAILURE_SIGNAL_NAMES);
|
|
18350
|
-
var FAILURE_SPAWN_CODE_SET = new Set(FAILURE_SPAWN_CODES);
|
|
18619
|
+
// ../../node_modules/posthog-node/dist/extensions/error-tracking/modifiers/context-lines.node.mjs
|
|
18620
|
+
import { createReadStream as createReadStream2 } from "node:fs";
|
|
18621
|
+
import { createInterface as createInterface2 } from "node:readline";
|
|
18622
|
+
var LRU_FILE_CONTENTS_CACHE = new error_tracking_exports.ReduceableCache(25);
|
|
18623
|
+
var LRU_FILE_CONTENTS_FS_READ_FAILED = new error_tracking_exports.ReduceableCache(20);
|
|
18351
18624
|
|
|
18352
|
-
//
|
|
18353
|
-
import {
|
|
18625
|
+
// ../../node_modules/posthog-node/dist/extensions/context/context.mjs
|
|
18626
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
18627
|
+
|
|
18628
|
+
// ../../node_modules/posthog-node/dist/extensions/sentry-integration.mjs
|
|
18629
|
+
var NAME = "posthog-node";
|
|
18630
|
+
function createEventProcessor(_posthog, { organization, projectId, prefix, severityAllowList = [
|
|
18631
|
+
"error"
|
|
18632
|
+
], sendExceptionsToPostHog = true } = {}) {
|
|
18633
|
+
return (event) => {
|
|
18634
|
+
const shouldProcessLevel = "*" === severityAllowList || severityAllowList.includes(event.level);
|
|
18635
|
+
if (!shouldProcessLevel) return event;
|
|
18636
|
+
if (!event.tags) event.tags = {};
|
|
18637
|
+
const userId = event.tags[PostHogSentryIntegration.POSTHOG_ID_TAG];
|
|
18638
|
+
if (void 0 === userId) return event;
|
|
18639
|
+
const uiHost = _posthog.options.host ?? "https://us.i.posthog.com";
|
|
18640
|
+
const personUrl = new URL(`/project/${_posthog.apiKey}/person/${userId}`, uiHost).toString();
|
|
18641
|
+
event.tags["PostHog Person URL"] = personUrl;
|
|
18642
|
+
const exceptions = event.exception?.values || [];
|
|
18643
|
+
const exceptionList = exceptions.map((exception) => ({
|
|
18644
|
+
...exception,
|
|
18645
|
+
stacktrace: exception.stacktrace ? {
|
|
18646
|
+
...exception.stacktrace,
|
|
18647
|
+
type: "raw",
|
|
18648
|
+
frames: (exception.stacktrace.frames || []).map((frame) => ({
|
|
18649
|
+
...frame,
|
|
18650
|
+
platform: "node:javascript"
|
|
18651
|
+
}))
|
|
18652
|
+
} : void 0
|
|
18653
|
+
}));
|
|
18654
|
+
const properties = {
|
|
18655
|
+
$exception_message: exceptions[0]?.value || event.message,
|
|
18656
|
+
$exception_type: exceptions[0]?.type,
|
|
18657
|
+
$exception_level: event.level,
|
|
18658
|
+
$exception_list: exceptionList,
|
|
18659
|
+
$sentry_event_id: event.event_id,
|
|
18660
|
+
$sentry_exception: event.exception,
|
|
18661
|
+
$sentry_exception_message: exceptions[0]?.value || event.message,
|
|
18662
|
+
$sentry_exception_type: exceptions[0]?.type,
|
|
18663
|
+
$sentry_tags: event.tags
|
|
18664
|
+
};
|
|
18665
|
+
if (organization && projectId) properties["$sentry_url"] = (prefix || "https://sentry.io/organizations/") + organization + "/issues/?project=" + projectId + "&query=" + event.event_id;
|
|
18666
|
+
if (sendExceptionsToPostHog) _posthog.capture({
|
|
18667
|
+
event: "$exception",
|
|
18668
|
+
distinctId: userId,
|
|
18669
|
+
properties
|
|
18670
|
+
});
|
|
18671
|
+
return event;
|
|
18672
|
+
};
|
|
18673
|
+
}
|
|
18674
|
+
var PostHogSentryIntegration = class {
|
|
18675
|
+
static #_ = this.POSTHOG_ID_TAG = "posthog_distinct_id";
|
|
18676
|
+
constructor(_posthog, organization, prefix, severityAllowList, sendExceptionsToPostHog) {
|
|
18677
|
+
this.name = NAME;
|
|
18678
|
+
this.name = NAME;
|
|
18679
|
+
this.setupOnce = function(addGlobalEventProcessor, getCurrentHub) {
|
|
18680
|
+
const projectId = getCurrentHub()?.getClient()?.getDsn()?.projectId;
|
|
18681
|
+
addGlobalEventProcessor(createEventProcessor(_posthog, {
|
|
18682
|
+
organization,
|
|
18683
|
+
projectId,
|
|
18684
|
+
prefix,
|
|
18685
|
+
severityAllowList,
|
|
18686
|
+
sendExceptionsToPostHog: sendExceptionsToPostHog ?? true
|
|
18687
|
+
}));
|
|
18688
|
+
};
|
|
18689
|
+
}
|
|
18690
|
+
};
|
|
18354
18691
|
|
|
18355
18692
|
// ../telemetry/src/events.ts
|
|
18356
18693
|
var PLATFORMS = [
|
|
@@ -19005,31 +19342,31 @@ var SESSION_ID2 = randomUUID5();
|
|
|
19005
19342
|
|
|
19006
19343
|
// ../telemetry/src/identity.ts
|
|
19007
19344
|
import * as crypto2 from "node:crypto";
|
|
19008
|
-
import * as
|
|
19009
|
-
import * as
|
|
19345
|
+
import * as fs5 from "node:fs";
|
|
19346
|
+
import * as path10 from "node:path";
|
|
19010
19347
|
|
|
19011
19348
|
// ../telemetry/src/paths.ts
|
|
19012
|
-
import * as
|
|
19349
|
+
import * as path9 from "node:path";
|
|
19013
19350
|
|
|
19014
19351
|
// ../telemetry/src/fingerprint.ts
|
|
19015
19352
|
import { execFileSync as execFileSync2, spawn as spawn2 } from "node:child_process";
|
|
19016
19353
|
|
|
19017
19354
|
// ../native-devtools-ios/src/index.ts
|
|
19018
|
-
import * as
|
|
19019
|
-
import * as
|
|
19020
|
-
var DYLIB_DIR = process.env.ARGENT_NATIVE_DEVTOOLS_DIR ??
|
|
19021
|
-
var BIN_DIR = process.env.ARGENT_SIMULATOR_SERVER_DIR ??
|
|
19022
|
-
var DYLIB_TCP_DIR = process.env.ARGENT_NATIVE_DEVTOOLS_TCP_DIR ??
|
|
19023
|
-
var DYLIB_TVOS_DIR =
|
|
19355
|
+
import * as path11 from "node:path";
|
|
19356
|
+
import * as fs6 from "node:fs";
|
|
19357
|
+
var DYLIB_DIR = process.env.ARGENT_NATIVE_DEVTOOLS_DIR ?? path11.join(__dirname, "..", "dylibs");
|
|
19358
|
+
var BIN_DIR = process.env.ARGENT_SIMULATOR_SERVER_DIR ?? path11.join(__dirname, "..", "bin");
|
|
19359
|
+
var DYLIB_TCP_DIR = process.env.ARGENT_NATIVE_DEVTOOLS_TCP_DIR ?? path11.join(DYLIB_DIR, "tcp");
|
|
19360
|
+
var DYLIB_TVOS_DIR = path11.join(DYLIB_DIR, "tvos");
|
|
19024
19361
|
|
|
19025
19362
|
// ../telemetry/src/consent.ts
|
|
19026
|
-
import * as
|
|
19363
|
+
import * as fs7 from "node:fs";
|
|
19027
19364
|
var cache = { current: null };
|
|
19028
19365
|
var sessionOverride = null;
|
|
19029
19366
|
function readConfigOverride() {
|
|
19030
19367
|
let stats;
|
|
19031
19368
|
try {
|
|
19032
|
-
stats =
|
|
19369
|
+
stats = fs7.lstatSync(configFilePath());
|
|
19033
19370
|
} catch (err) {
|
|
19034
19371
|
if (err.code === "ENOENT") {
|
|
19035
19372
|
cache.current = { mtimeMs: null, fingerprint: null, enabledOverride: null };
|
|
@@ -19049,7 +19386,7 @@ function readConfigOverride() {
|
|
|
19049
19386
|
}
|
|
19050
19387
|
let parsedEnabled = null;
|
|
19051
19388
|
try {
|
|
19052
|
-
const raw =
|
|
19389
|
+
const raw = fs7.readFileSync(configFilePath(), "utf8");
|
|
19053
19390
|
const json = JSON.parse(raw);
|
|
19054
19391
|
if (json && typeof json === "object") {
|
|
19055
19392
|
const t = json.telemetry;
|
|
@@ -19103,7 +19440,7 @@ function isEnabled(env = process.env) {
|
|
|
19103
19440
|
}
|
|
19104
19441
|
|
|
19105
19442
|
// ../telemetry/src/debug.ts
|
|
19106
|
-
import * as
|
|
19443
|
+
import * as fs8 from "node:fs";
|
|
19107
19444
|
|
|
19108
19445
|
// ../telemetry/src/notice.ts
|
|
19109
19446
|
var TELEMETRY_OPT_OUT_COMMAND = "argent telemetry disable";
|
|
@@ -19259,9 +19596,9 @@ function stepIndent(depth) {
|
|
|
19259
19596
|
}
|
|
19260
19597
|
function stepLabel(step) {
|
|
19261
19598
|
if (step.kind === "echo") return step.message ?? "";
|
|
19262
|
-
if (step.kind === "run") return `run ${step.flow ?? ""}`.trim();
|
|
19263
19599
|
if (step.tool) return step.tool;
|
|
19264
19600
|
if (step.target) return `${step.kind} ${step.target}`;
|
|
19601
|
+
if (step.kind === "run") return `run ${step.flow ?? ""}`.trim();
|
|
19265
19602
|
return step.kind;
|
|
19266
19603
|
}
|
|
19267
19604
|
async function flowRunToMcpContent(result, ctx) {
|
|
@@ -19292,9 +19629,11 @@ async function flowRunToMcpContent(result, ctx) {
|
|
|
19292
19629
|
}
|
|
19293
19630
|
}
|
|
19294
19631
|
if (result.ok !== void 0) {
|
|
19632
|
+
const counted = (result.passed ?? 0) + (result.failed ?? 0) + (result.errored ?? 0) + (result.skipped ?? 0);
|
|
19633
|
+
const note = result.ok && counted === 0 ? " (no test steps)" : "";
|
|
19295
19634
|
blocks.push({
|
|
19296
19635
|
type: "text",
|
|
19297
|
-
text: `${result.ok ? "PASS" : "FAIL"} \u2014 ${result.passed ?? 0} passed, ${result.failed ?? 0} failed, ${result.errored ?? 0} errored, ${result.skipped ?? 0} skipped`
|
|
19636
|
+
text: `${result.ok ? "PASS" : "FAIL"} \u2014 ${result.passed ?? 0} passed, ${result.failed ?? 0} failed, ${result.errored ?? 0} errored, ${result.skipped ?? 0} skipped${note}`
|
|
19298
19637
|
});
|
|
19299
19638
|
} else {
|
|
19300
19639
|
blocks.push({ type: "text", text: `Flow "${result.flow}" complete.` });
|
|
@@ -19409,12 +19748,12 @@ function toMcpTool(t) {
|
|
|
19409
19748
|
}
|
|
19410
19749
|
|
|
19411
19750
|
// ../argent-mcp/src/installed-version.ts
|
|
19412
|
-
import * as
|
|
19413
|
-
import * as
|
|
19751
|
+
import * as fs9 from "node:fs";
|
|
19752
|
+
import * as path12 from "node:path";
|
|
19414
19753
|
function getInstalledVersion() {
|
|
19415
19754
|
try {
|
|
19416
|
-
const pkgPath =
|
|
19417
|
-
const pkg = JSON.parse(
|
|
19755
|
+
const pkgPath = path12.resolve(import.meta.dirname, "..", "package.json");
|
|
19756
|
+
const pkg = JSON.parse(fs9.readFileSync(pkgPath, "utf8"));
|
|
19418
19757
|
return pkg.version ?? "unknown";
|
|
19419
19758
|
} catch {
|
|
19420
19759
|
return "unknown";
|