@swmansion/argent 0.32.1-next.2 → 0.32.1-next.21
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/assets/manifest.json +2 -2
- package/bin/argent-android-devtools-0.4.0.apk +0 -0
- package/bin/darwin/argent-macos-helper +0 -0
- package/bin/darwin/ax-service +0 -0
- package/bin/darwin/tvos-ax-service +0 -0
- package/bin/darwin/tvos-hid-daemon +0 -0
- package/bin/network-inspector/network-inspector.jar +0 -0
- package/bin/tcp/ax-service +0 -0
- package/dist/cli-cmds.mjs +552 -440
- package/dist/client.d.ts +5 -0
- package/dist/client.js +71 -9
- package/dist/installer.mjs +384 -202
- package/dist/mcp-server.mjs +167 -20
- package/dist/tool-args.generated.d.ts +91 -50
- package/dist/tool-server.cjs +34748 -29334
- package/dylibs/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/libKeyboardPatch.dylib +0 -0
- package/dylibs/libNativeDevtoolsIos.dylib +0 -0
- package/dylibs/macos/libArgentInjectionBootstrap.dylib +0 -0
- package/dylibs/macos/libNativeDevtoolsMacos.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 +2 -2
- package/rules/argent.md +1 -1
- package/skills/argent-create-e2e/references/e2e-yaml.md +8 -4
- package/skills/argent-create-e2e/references/live-authoring.md +1 -0
- package/skills/argent-create-e2e/references/reliability-and-recovery.md +3 -3
- package/skills/argent-device-interact/SKILL.md +3 -2
- package/skills/argent-device-interact/references/chromium.md +1 -1
- package/skills/argent-device-interact/references/harmonyos.md +1 -1
- package/skills/argent-ios-simulator-setup/SKILL.md +1 -1
- package/skills/argent-macos-app-interact/SKILL.md +44 -0
- package/skills/argent-macos-app-interact/references/e2e.md +6 -0
- package/skills/argent-qa-e2e/SKILL.md +1 -1
- package/skills/argent-react-native-app-workflow/SKILL.md +2 -0
- package/skills/argent-react-native-optimization/SKILL.md +2 -3
- package/skills/argent-react-native-profiler/SKILL.md +8 -8
- package/skills/argent-screenshot-diff/SKILL.md +1 -1
- package/skills/argent-test-ui-flow/SKILL.md +1 -1
- package/skills/argent-tv-interact/SKILL.md +4 -4
- package/bin/argent-android-devtools-0.3.0.apk +0 -0
package/dist/client.d.ts
CHANGED
|
@@ -12,6 +12,11 @@ export interface ArgentToolResult<T = unknown> {
|
|
|
12
12
|
data: T;
|
|
13
13
|
/** Optional advisory note the tool attached to the result. */
|
|
14
14
|
note?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Why the call did not do its job though it returned, such as an e2e test
|
|
17
|
+
* that does not pass. See the tool-server API reference for the list.
|
|
18
|
+
*/
|
|
19
|
+
failure?: string;
|
|
15
20
|
}
|
|
16
21
|
/**
|
|
17
22
|
* A node of the `ui-tree` result. A flag is set only when true; a field named in
|
package/dist/client.js
CHANGED
|
@@ -7802,6 +7802,10 @@ var FLAG_REGISTRY = [
|
|
|
7802
7802
|
name: "video-watermark",
|
|
7803
7803
|
description: "Overlay the argent corner watermark on recorded screen videos. On by default; turn it off with `argent disable video-watermark`.",
|
|
7804
7804
|
defaultEnabled: true
|
|
7805
|
+
},
|
|
7806
|
+
{
|
|
7807
|
+
name: "macos-apps",
|
|
7808
|
+
description: "Drive native Mac apps (AppKit, SwiftUI, react-native-macos) from inside the app. Adds the macos platform to list-devices and boot-device, and the file-panel and menu-bar tools. Off by default."
|
|
7805
7809
|
}
|
|
7806
7810
|
];
|
|
7807
7811
|
function getFlagDefinition(name, registry = FLAG_REGISTRY) {
|
|
@@ -9025,6 +9029,8 @@ var FAILURE_CODES = {
|
|
|
9025
9029
|
CLI_RUN_ARGS_JSON_INVALID: "CLI_RUN_ARGS_JSON_INVALID",
|
|
9026
9030
|
CLI_RUN_INPUT_VALIDATION_FAILED: "CLI_RUN_INPUT_VALIDATION_FAILED",
|
|
9027
9031
|
CLI_RUN_TOOL_CALL_FAILED: "CLI_RUN_TOOL_CALL_FAILED",
|
|
9032
|
+
// The result carried the tool-server's `failure` field.
|
|
9033
|
+
CLI_RUN_TOOL_RESULT_FAILED: "CLI_RUN_TOOL_RESULT_FAILED",
|
|
9028
9034
|
CLI_RUN_SAVE_IMAGE_FAILED: "CLI_RUN_SAVE_IMAGE_FAILED",
|
|
9029
9035
|
TOOL_CAPABILITY_UNSUPPORTED_OPERATION: "TOOL_CAPABILITY_UNSUPPORTED_OPERATION",
|
|
9030
9036
|
TOOL_PLATFORM_NOT_IMPLEMENTED: "TOOL_PLATFORM_NOT_IMPLEMENTED",
|
|
@@ -9040,6 +9046,7 @@ var FAILURE_CODES = {
|
|
|
9040
9046
|
INSTALL_MODE_FLAG_CONFLICT: "INSTALL_MODE_FLAG_CONFLICT",
|
|
9041
9047
|
INSTALL_FROM_TAR_PACKAGE_FAILED: "INSTALL_FROM_TAR_PACKAGE_FAILED",
|
|
9042
9048
|
INSTALL_INIT_TRIGGERED_UPDATE_FAILED: "INSTALL_INIT_TRIGGERED_UPDATE_FAILED",
|
|
9049
|
+
INSTALL_SKILLS_FAILED: "INSTALL_SKILLS_FAILED",
|
|
9043
9050
|
INSTALL_SKILLS_REFRESH_FAILED: "INSTALL_SKILLS_REFRESH_FAILED",
|
|
9044
9051
|
INSTALL_UNCLASSIFIED_FAILED: "INSTALL_UNCLASSIFIED_FAILED",
|
|
9045
9052
|
UPDATE_INSTALLED_VERSION_DETECT_FAILED: "UPDATE_INSTALLED_VERSION_DETECT_FAILED",
|
|
@@ -9123,15 +9130,21 @@ var FAILURE_CODES = {
|
|
|
9123
9130
|
ANDROID_LAUNCH_AM_START_FAILED: "ANDROID_LAUNCH_AM_START_FAILED",
|
|
9124
9131
|
ANDROID_OPEN_URL_FAILED: "ANDROID_OPEN_URL_FAILED",
|
|
9125
9132
|
ANDROID_REINSTALL_INSTALL_FAILED: "ANDROID_REINSTALL_INSTALL_FAILED",
|
|
9133
|
+
ANDROID_REINSTALL_UNINSTALL_FAILED: "ANDROID_REINSTALL_UNINSTALL_FAILED",
|
|
9126
9134
|
ANDROID_RESTART_FAILED: "ANDROID_RESTART_FAILED",
|
|
9127
9135
|
ANDROID_SETTINGS_PERMISSION_FAILED: "ANDROID_SETTINGS_PERMISSION_FAILED",
|
|
9128
9136
|
IOS_LAUNCH_SIMCTL_FAILED: "IOS_LAUNCH_SIMCTL_FAILED",
|
|
9129
9137
|
IOS_OPEN_URL_FAILED: "IOS_OPEN_URL_FAILED",
|
|
9130
9138
|
IOS_REINSTALL_INSTALL_FAILED: "IOS_REINSTALL_INSTALL_FAILED",
|
|
9139
|
+
IOS_REINSTALL_UNINSTALL_FAILED: "IOS_REINSTALL_UNINSTALL_FAILED",
|
|
9131
9140
|
IOS_RESTART_LAUNCH_FAILED: "IOS_RESTART_LAUNCH_FAILED",
|
|
9141
|
+
IOS_RESTART_TERMINATE_FAILED: "IOS_RESTART_TERMINATE_FAILED",
|
|
9142
|
+
IOS_TERMINATE_APP_FAILED: "IOS_TERMINATE_APP_FAILED",
|
|
9132
9143
|
IOS_SETTINGS_PERMISSION_FAILED: "IOS_SETTINGS_PERMISSION_FAILED",
|
|
9133
9144
|
IOS_SHAKE_FAILED: "IOS_SHAKE_FAILED",
|
|
9134
9145
|
ANDROID_SHAKE_FAILED: "ANDROID_SHAKE_FAILED",
|
|
9146
|
+
STOP_METRO_PORT_PROBE_FAILED: "STOP_METRO_PORT_PROBE_FAILED",
|
|
9147
|
+
STOP_METRO_SIGNAL_FAILED: "STOP_METRO_SIGNAL_FAILED",
|
|
9135
9148
|
// The hinge of a foldable iOS simulator: the server refused the request on a
|
|
9136
9149
|
// foldable (a bad angle, a hinge that would not move) vs. nothing to fold —
|
|
9137
9150
|
// a device that is not foldable, no hinge route, a remote simulator.
|
|
@@ -9230,6 +9243,8 @@ var FAILURE_CODES = {
|
|
|
9230
9243
|
REACT_PROFILER_START_FAILED: "REACT_PROFILER_START_FAILED",
|
|
9231
9244
|
REACT_PROFILER_START_VERIFY_FAILED: "REACT_PROFILER_START_VERIFY_FAILED",
|
|
9232
9245
|
REACT_PROFILER_SESSION_TORN_DOWN: "REACT_PROFILER_SESSION_TORN_DOWN",
|
|
9246
|
+
REACT_PROFILER_SESSION_TAKEN_OVER: "REACT_PROFILER_SESSION_TAKEN_OVER",
|
|
9247
|
+
REACT_PROFILER_STOP_IN_PROGRESS: "REACT_PROFILER_STOP_IN_PROGRESS",
|
|
9233
9248
|
REACT_PROFILER_HOOK_ERROR: "REACT_PROFILER_HOOK_ERROR",
|
|
9234
9249
|
REACT_PROFILER_ANALYZE_NO_DATA: "REACT_PROFILER_ANALYZE_NO_DATA",
|
|
9235
9250
|
NATIVE_PROFILER_FACTORY_OPTIONS_MISSING: "NATIVE_PROFILER_FACTORY_OPTIONS_MISSING",
|
|
@@ -9277,10 +9292,13 @@ var FAILURE_CODES = {
|
|
|
9277
9292
|
FLOW_NAME_INVALID: "FLOW_NAME_INVALID",
|
|
9278
9293
|
FLOW_NO_ACTIVE_RECORDING: "FLOW_NO_ACTIVE_RECORDING",
|
|
9279
9294
|
FLOW_FILE_INVALID: "FLOW_FILE_INVALID",
|
|
9295
|
+
FLOW_FILE_NEWER_VERSION: "FLOW_FILE_NEWER_VERSION",
|
|
9280
9296
|
FLOW_FILE_WRITE_FAILED: "FLOW_FILE_WRITE_FAILED",
|
|
9281
9297
|
FLOW_ENTRY_UNRECOGNIZED: "FLOW_ENTRY_UNRECOGNIZED",
|
|
9282
9298
|
FLOW_E2E_HAS_PREREQUISITE: "FLOW_E2E_HAS_PREREQUISITE",
|
|
9283
9299
|
FLOW_DEVICE_RESOLUTION: "FLOW_DEVICE_RESOLUTION",
|
|
9300
|
+
// The target does not satisfy the test's `requires:` block; a directory run skips it.
|
|
9301
|
+
FLOW_REQUIREMENTS_UNMET: "FLOW_REQUIREMENTS_UNMET",
|
|
9284
9302
|
PROFILER_QUERY_MODE_INVALID: "PROFILER_QUERY_MODE_INVALID",
|
|
9285
9303
|
PROFILER_QUERY_REQUIRED_PARAM_MISSING: "PROFILER_QUERY_REQUIRED_PARAM_MISSING",
|
|
9286
9304
|
PROFILER_DATA_NOT_LOADED: "PROFILER_DATA_NOT_LOADED",
|
|
@@ -9299,11 +9317,38 @@ var FAILURE_CODES = {
|
|
|
9299
9317
|
CHROMIUM_STORAGE_EVAL_FAILED: "CHROMIUM_STORAGE_EVAL_FAILED",
|
|
9300
9318
|
CHROMIUM_TAB_NOT_FOUND: "CHROMIUM_TAB_NOT_FOUND",
|
|
9301
9319
|
CHROMIUM_TAB_OPEN_FAILED: "CHROMIUM_TAB_OPEN_FAILED",
|
|
9320
|
+
CHROMIUM_NAVIGATE_FAILED: "CHROMIUM_NAVIGATE_FAILED",
|
|
9302
9321
|
CHROMIUM_DESCRIBE_FAILED: "CHROMIUM_DESCRIBE_FAILED",
|
|
9303
9322
|
CHROMIUM_ELECTRON_APP_PATH_INVALID: "CHROMIUM_ELECTRON_APP_PATH_INVALID",
|
|
9304
9323
|
CHROMIUM_ELECTRON_SPAWN_FAILED: "CHROMIUM_ELECTRON_SPAWN_FAILED",
|
|
9305
9324
|
CHROMIUM_ELECTRON_CDP_TIMEOUT: "CHROMIUM_ELECTRON_CDP_TIMEOUT",
|
|
9306
9325
|
CHROMIUM_ELECTRON_EXITED_BEFORE_READY: "CHROMIUM_ELECTRON_EXITED_BEFORE_READY",
|
|
9326
|
+
/**
|
|
9327
|
+
* Native Mac apps (the `macos-apps` flag)
|
|
9328
|
+
* @see [macos-app.ts](../../tool-server/src/blueprints/macos-app.ts)
|
|
9329
|
+
*/
|
|
9330
|
+
MACOS_APP_UNSUPPORTED_HOST: "MACOS_APP_UNSUPPORTED_HOST",
|
|
9331
|
+
MACOS_APP_PATH_INVALID: "MACOS_APP_PATH_INVALID",
|
|
9332
|
+
MACOS_APP_BUNDLE_INVALID: "MACOS_APP_BUNDLE_INVALID",
|
|
9333
|
+
MACOS_APP_NOT_FOUND: "MACOS_APP_NOT_FOUND",
|
|
9334
|
+
MACOS_APP_HARDENED_RUNTIME: "MACOS_APP_HARDENED_RUNTIME",
|
|
9335
|
+
MACOS_APP_LIBRARY_MISSING: "MACOS_APP_LIBRARY_MISSING",
|
|
9336
|
+
MACOS_APP_LIBRARY_STAGE_FAILED: "MACOS_APP_LIBRARY_STAGE_FAILED",
|
|
9337
|
+
MACOS_APP_ALREADY_RUNNING: "MACOS_APP_ALREADY_RUNNING",
|
|
9338
|
+
MACOS_APP_SPAWN_FAILED: "MACOS_APP_SPAWN_FAILED",
|
|
9339
|
+
MACOS_APP_EXITED_BEFORE_READY: "MACOS_APP_EXITED_BEFORE_READY",
|
|
9340
|
+
MACOS_APP_HANDSHAKE_TIMEOUT: "MACOS_APP_HANDSHAKE_TIMEOUT",
|
|
9341
|
+
MACOS_APP_HANDSHAKE_INVALID: "MACOS_APP_HANDSHAKE_INVALID",
|
|
9342
|
+
MACOS_APP_NOT_RUNNING: "MACOS_APP_NOT_RUNNING",
|
|
9343
|
+
MACOS_APP_NOT_CONNECTED: "MACOS_APP_NOT_CONNECTED",
|
|
9344
|
+
MACOS_APP_CONNECTION_LOST: "MACOS_APP_CONNECTION_LOST",
|
|
9345
|
+
MACOS_APP_CONNECTION_CLOSED: "MACOS_APP_CONNECTION_CLOSED",
|
|
9346
|
+
MACOS_APP_RPC_TIMEOUT: "MACOS_APP_RPC_TIMEOUT",
|
|
9347
|
+
MACOS_APP_RPC_ERROR: "MACOS_APP_RPC_ERROR",
|
|
9348
|
+
MACOS_APP_TERMINATE_FAILED: "MACOS_APP_TERMINATE_FAILED",
|
|
9349
|
+
MACOS_APP_BUNDLE_ID_MISMATCH: "MACOS_APP_BUNDLE_ID_MISMATCH",
|
|
9350
|
+
MACOS_APP_OPEN_URL_FAILED: "MACOS_APP_OPEN_URL_FAILED",
|
|
9351
|
+
MACOS_APP_FILE_ACCESS_FAILED: "MACOS_APP_FILE_ACCESS_FAILED",
|
|
9307
9352
|
KEYBOARD_KEY_UNSUPPORTED: "KEYBOARD_KEY_UNSUPPORTED",
|
|
9308
9353
|
KEYBOARD_CHARACTER_UNSUPPORTED: "KEYBOARD_CHARACTER_UNSUPPORTED",
|
|
9309
9354
|
KEYBOARD_TEXT_AND_KEY_COMBINED: "KEYBOARD_TEXT_AND_KEY_COMBINED",
|
|
@@ -9315,6 +9360,8 @@ var FAILURE_CODES = {
|
|
|
9315
9360
|
SCREENSHOT_DIFF_INPUT_INVALID: "SCREENSHOT_DIFF_INPUT_INVALID",
|
|
9316
9361
|
BOOT_DEVICE_TARGET_SELECTION_INVALID: "BOOT_DEVICE_TARGET_SELECTION_INVALID",
|
|
9317
9362
|
BOOT_IOS_UNSUPPORTED_HOST: "BOOT_IOS_UNSUPPORTED_HOST",
|
|
9363
|
+
BOOT_IOS_SIMCTL_LIST_TIMEOUT: "BOOT_IOS_SIMCTL_LIST_TIMEOUT",
|
|
9364
|
+
BOOT_IOS_SIMCTL_TIMEOUT: "BOOT_IOS_SIMCTL_TIMEOUT",
|
|
9318
9365
|
BOOT_ANDROID_NO_AVDS: "BOOT_ANDROID_NO_AVDS",
|
|
9319
9366
|
BOOT_ANDROID_AVD_NOT_FOUND: "BOOT_ANDROID_AVD_NOT_FOUND",
|
|
9320
9367
|
BOOT_ANDROID_ADB_UNAVAILABLE: "BOOT_ANDROID_ADB_UNAVAILABLE",
|
|
@@ -10385,7 +10432,8 @@ async function consumeToolStream(name, body, onProgress, signal) {
|
|
|
10385
10432
|
final = {
|
|
10386
10433
|
data: msg.data,
|
|
10387
10434
|
note: msg.note,
|
|
10388
|
-
...msg.profiling === true ? { profiling: true } : {}
|
|
10435
|
+
...msg.profiling === true ? { profiling: true } : {},
|
|
10436
|
+
...typeof msg.failure === "string" ? { failure: msg.failure } : {}
|
|
10389
10437
|
};
|
|
10390
10438
|
} else if (msg.event === "error") {
|
|
10391
10439
|
throw new ToolInvocationError(msg.error ?? "tool invocation failed", {
|
|
@@ -10437,7 +10485,8 @@ async function consumeToolStream(name, body, onProgress, signal) {
|
|
|
10437
10485
|
return {
|
|
10438
10486
|
data: final.data,
|
|
10439
10487
|
note: final.note,
|
|
10440
|
-
...final.profiling ? { profiling: true } : {}
|
|
10488
|
+
...final.profiling ? { profiling: true } : {},
|
|
10489
|
+
...final.failure !== void 0 ? { failure: final.failure } : {}
|
|
10441
10490
|
};
|
|
10442
10491
|
}
|
|
10443
10492
|
function errorBodyMessage(body) {
|
|
@@ -10602,6 +10651,7 @@ function createToolsClient(options = {}) {
|
|
|
10602
10651
|
}
|
|
10603
10652
|
const shadowWarning = await e2eShadowWarningFor(name, args);
|
|
10604
10653
|
const baselineDirs = [];
|
|
10654
|
+
let unwrittenBaselines = [];
|
|
10605
10655
|
if (meta?.fileInputs?.length) {
|
|
10606
10656
|
if (remote) assertRequiredPresent(meta, finalArgs);
|
|
10607
10657
|
finalArgs = await prepareFileInputs(meta.fileInputs, finalArgs ?? {}, {
|
|
@@ -10615,8 +10665,9 @@ function createToolsClient(options = {}) {
|
|
|
10615
10665
|
signal: opts?.signal
|
|
10616
10666
|
});
|
|
10617
10667
|
}
|
|
10618
|
-
const settle = async (
|
|
10619
|
-
const applied = await applyClientFileDirectives(
|
|
10668
|
+
const settle = async (data2) => {
|
|
10669
|
+
const applied = await applyClientFileDirectives(data2, { allowedDirs: baselineDirs });
|
|
10670
|
+
unwrittenBaselines = applied.failed.map((f) => f.path);
|
|
10620
10671
|
for (const { path: file, error } of applied.failed) {
|
|
10621
10672
|
diagnose(`The baseline ${file} was not written on this client: ${error}`);
|
|
10622
10673
|
}
|
|
@@ -10633,6 +10684,7 @@ function createToolsClient(options = {}) {
|
|
|
10633
10684
|
}
|
|
10634
10685
|
return { ...result, warning: shadowWarning };
|
|
10635
10686
|
};
|
|
10687
|
+
const unwrittenFailure = () => unwrittenBaselines.length > 0 ? `Baselines not written on this client: ${unwrittenBaselines.join(", ")}` : void 0;
|
|
10636
10688
|
const stream = opts?.onProgress !== void 0 || carriesMembers(finalArgs);
|
|
10637
10689
|
const sentOnce = carriesUpload(finalArgs);
|
|
10638
10690
|
const forwarded = remote ? await forwardedSecrets(finalArgs) : void 0;
|
|
@@ -10696,11 +10748,14 @@ function createToolsClient(options = {}) {
|
|
|
10696
10748
|
}),
|
|
10697
10749
|
opts?.signal
|
|
10698
10750
|
);
|
|
10751
|
+
const data2 = await settle(streamed.data);
|
|
10752
|
+
const failure2 = streamed.failure ?? unwrittenFailure();
|
|
10699
10753
|
return {
|
|
10700
|
-
data:
|
|
10754
|
+
data: data2,
|
|
10701
10755
|
note: streamed.note,
|
|
10702
10756
|
outputHint: meta?.outputHint,
|
|
10703
|
-
...streamed.profiling ? { profiling: true } : {}
|
|
10757
|
+
...streamed.profiling ? { profiling: true } : {},
|
|
10758
|
+
...failure2 !== void 0 ? { failure: failure2 } : {}
|
|
10704
10759
|
};
|
|
10705
10760
|
}
|
|
10706
10761
|
let json;
|
|
@@ -10736,11 +10791,14 @@ function createToolsClient(options = {}) {
|
|
|
10736
10791
|
});
|
|
10737
10792
|
}
|
|
10738
10793
|
opts?.signal?.throwIfAborted();
|
|
10794
|
+
const data = await settle(json.data);
|
|
10795
|
+
const failure = (typeof json.failure === "string" ? json.failure : void 0) ?? unwrittenFailure();
|
|
10739
10796
|
return {
|
|
10740
|
-
data
|
|
10797
|
+
data,
|
|
10741
10798
|
note: json.note,
|
|
10742
10799
|
outputHint: meta?.outputHint,
|
|
10743
|
-
...json.profiling === true ? { profiling: true } : {}
|
|
10800
|
+
...json.profiling === true ? { profiling: true } : {},
|
|
10801
|
+
...failure !== void 0 ? { failure } : {}
|
|
10744
10802
|
};
|
|
10745
10803
|
}
|
|
10746
10804
|
return { fetchTools, fetchTool, callTool, baseUrl };
|
|
@@ -11150,7 +11208,11 @@ function createArgentClient() {
|
|
|
11150
11208
|
signal: options?.signal
|
|
11151
11209
|
});
|
|
11152
11210
|
options?.signal?.throwIfAborted();
|
|
11153
|
-
return {
|
|
11211
|
+
return {
|
|
11212
|
+
data: result,
|
|
11213
|
+
note: response.note,
|
|
11214
|
+
...response.failure !== void 0 ? { failure: response.failure } : {}
|
|
11215
|
+
};
|
|
11154
11216
|
} catch (err) {
|
|
11155
11217
|
if (err instanceof ToolInvocationError) {
|
|
11156
11218
|
throw new ArgentToolError(err.message, {
|