@melra/computer-runtime 0.3.0-alpha.11 → 0.3.0-alpha.13
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 +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/dist/index.test.d.ts +0 -2
- package/dist/index.test.d.ts.map +0 -1
- package/dist/index.test.js +0 -259
- package/dist/index.test.js.map +0 -1
- package/dist/windows.test.d.ts +0 -2
- package/dist/windows.test.d.ts.map +0 -1
- package/dist/windows.test.js +0 -129
- package/dist/windows.test.js.map +0 -1
package/README.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
Screen and input control for [MELRA](https://github.com/XAGI-Lab/melra):
|
|
4
4
|
capabilities, inspect, screenshot, click, move, drag, type, key, and scroll,
|
|
5
|
-
driven through the host's own automation tooling
|
|
5
|
+
driven through the host's own automation tooling: native scripts on macOS,
|
|
6
|
+
Windows PowerShell and .NET on Windows, and screenshot tools plus `xdotool` on
|
|
7
|
+
Linux/X11.
|
|
6
8
|
|
|
7
9
|
```bash
|
|
8
10
|
npm install @melra/computer-runtime
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIzD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,OAAO,EAAE,cAAc,GAAG,eAAe,GAAG,oBAAoB,GAAG,aAAa,CAAC;IACjF,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,gFAAgF;IAChF,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,GAAG,EAAE,OAAO,CAAC;IACb,0DAA0D;IAC1D,IAAI,EAAE,OAAO,CAAC;IACd,gBAAgB,EAAE,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC;IAChD,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AA6GD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,GACnB,cAAc,EAAE,CA8BlB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,cAAc,EAAE,EAC1B,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAC/D,cAAc,CAwChB;AA0BD,MAAM,WAAW,eAAe;IAC9B,YAAY,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC9C,OAAO,CACL,SAAS,EAAE,iBAAiB,EAC5B,iBAAiB,EAAE,MAAM,EACzB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AA8LD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAOpE;AAmcD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AA+ZD;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,oBAAoB,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAChD;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,qBAAsB,YAAW,eAAe;IAC/C,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,aAAa;IAE3C,YAAY,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAI7C,OAAO,CACX,SAAS,EAAE,iBAAiB,EAC5B,kBAAkB,EAAE,MAAM,EAC1B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAQpC;AAED,wBAAgB,2BAA2B,IAAI,eAAe,CAK7D;AAED,qBAAa,eAAe;IAGd,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;gBAEb,OAAO,EAAE,sBAAsB;IAItD,OAAO,CACX,SAAS,EAAE,iBAAiB,EAC5B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA2FnC,8EAA8E;YAChE,QAAQ;IAatB;;;;;;;;;;OAUG;YACW,OAAO;IAmBrB,kEAAkE;YACpD,UAAU;CAuBzB"}
|
package/dist/index.js
CHANGED
|
@@ -1219,6 +1219,12 @@ export class ComputerRuntime {
|
|
|
1219
1219
|
if (operation.x !== undefined || operation.y !== undefined) {
|
|
1220
1220
|
throw new Error("computer_target_conflicts_with_coordinates");
|
|
1221
1221
|
}
|
|
1222
|
+
// The press point resolves into pixels below; a normalized drop point
|
|
1223
|
+
// has no screen size here to scale by, and left as it was, 0.8 read as
|
|
1224
|
+
// 0.8 pixels and the drop landed at the screen's corner.
|
|
1225
|
+
if (operation.action === "drag" && operation.coordinateSpace !== "pixel") {
|
|
1226
|
+
throw new Error("computer_target_drag_requires_pixel_destination");
|
|
1227
|
+
}
|
|
1222
1228
|
if (!capabilities.elements && !capabilities.ocr) {
|
|
1223
1229
|
throw new Error("computer_elements_unavailable");
|
|
1224
1230
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@melra/computer-runtime",
|
|
3
|
-
"version": "0.3.0-alpha.
|
|
3
|
+
"version": "0.3.0-alpha.13",
|
|
4
4
|
"description": "Computer-use reference effect adapter for the MELRA kernel.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -21,12 +21,12 @@
|
|
|
21
21
|
"dist"
|
|
22
22
|
],
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@melra/protocol": "0.3.0-alpha.
|
|
24
|
+
"@melra/protocol": "0.3.0-alpha.13"
|
|
25
25
|
},
|
|
26
26
|
"scripts": {
|
|
27
27
|
"build": "tsc -p tsconfig.json",
|
|
28
28
|
"clean": "rm -rf dist",
|
|
29
29
|
"test": "vitest run",
|
|
30
|
-
"typecheck": "tsc -p tsconfig.json
|
|
30
|
+
"typecheck": "tsc -p tsconfig.test.json"
|
|
31
31
|
}
|
|
32
32
|
}
|
package/dist/index.test.d.ts
DELETED
package/dist/index.test.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":""}
|
package/dist/index.test.js
DELETED
|
@@ -1,259 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 XAGI Labs Private Limited
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
import { describe, expect, it } from "vitest";
|
|
4
|
-
import { ComputerOperationSchema } from "@melra/protocol";
|
|
5
|
-
import { ComputerRuntime, matchElement, parseOcrElements, parseSecureInput, } from "./index.js";
|
|
6
|
-
class TestAdapter {
|
|
7
|
-
overrides;
|
|
8
|
-
calls = [];
|
|
9
|
-
operations = [];
|
|
10
|
-
/** What `inspect` reports back; a live desktop is the only other source. */
|
|
11
|
-
elements = [];
|
|
12
|
-
constructor(overrides = {}) {
|
|
13
|
-
this.overrides = overrides;
|
|
14
|
-
}
|
|
15
|
-
async capabilities() {
|
|
16
|
-
return {
|
|
17
|
-
platform: "darwin",
|
|
18
|
-
adapter: "macos-native",
|
|
19
|
-
available: true,
|
|
20
|
-
screenshot: true,
|
|
21
|
-
pointer: true,
|
|
22
|
-
keyboard: true,
|
|
23
|
-
scroll: true,
|
|
24
|
-
inspect: true,
|
|
25
|
-
elements: true,
|
|
26
|
-
ocr: false,
|
|
27
|
-
drag: true,
|
|
28
|
-
coordinateSpaces: ["normalized", "pixel"],
|
|
29
|
-
limitations: [],
|
|
30
|
-
...this.overrides,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
async execute(operation) {
|
|
34
|
-
this.calls.push(operation.action);
|
|
35
|
-
this.operations.push(operation);
|
|
36
|
-
return {
|
|
37
|
-
success: true,
|
|
38
|
-
action: operation.action,
|
|
39
|
-
...(operation.action === "inspect" ? { elements: this.elements } : {}),
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
const BUTTON = (name, x) => ({
|
|
44
|
-
role: "AXButton",
|
|
45
|
-
name,
|
|
46
|
-
x,
|
|
47
|
-
y: 40,
|
|
48
|
-
width: 80,
|
|
49
|
-
height: 20,
|
|
50
|
-
});
|
|
51
|
-
describe("ComputerRuntime", () => {
|
|
52
|
-
it("reports adapter capabilities without a mutation", async () => {
|
|
53
|
-
const adapter = new TestAdapter();
|
|
54
|
-
const runtime = new ComputerRuntime({
|
|
55
|
-
artifactDirectory: "/tmp",
|
|
56
|
-
adapter,
|
|
57
|
-
});
|
|
58
|
-
const result = await runtime.execute(ComputerOperationSchema.parse({
|
|
59
|
-
kind: "computer",
|
|
60
|
-
action: "capabilities",
|
|
61
|
-
}));
|
|
62
|
-
expect(result.available).toBe(true);
|
|
63
|
-
expect(adapter.calls).toEqual([]);
|
|
64
|
-
});
|
|
65
|
-
it("requires explicit bounded coordinates for pointer actions", async () => {
|
|
66
|
-
const runtime = new ComputerRuntime({
|
|
67
|
-
artifactDirectory: "/tmp",
|
|
68
|
-
adapter: new TestAdapter(),
|
|
69
|
-
});
|
|
70
|
-
await expect(runtime.execute(ComputerOperationSchema.parse({
|
|
71
|
-
kind: "computer",
|
|
72
|
-
action: "click",
|
|
73
|
-
}))).rejects.toThrow("computer_click_requires_coordinates");
|
|
74
|
-
await expect(runtime.execute(ComputerOperationSchema.parse({
|
|
75
|
-
kind: "computer",
|
|
76
|
-
action: "click",
|
|
77
|
-
coordinateSpace: "normalized",
|
|
78
|
-
x: 2,
|
|
79
|
-
y: 0.5,
|
|
80
|
-
}))).rejects.toThrow("computer_normalized_coordinates_out_of_range");
|
|
81
|
-
});
|
|
82
|
-
it.each([
|
|
83
|
-
["screenshot", "screenshot", "computer_screenshot_unavailable"],
|
|
84
|
-
["inspect", "inspect", "computer_inspect_unavailable"],
|
|
85
|
-
["click", "pointer", "computer_pointer_unavailable"],
|
|
86
|
-
["drag", "drag", "computer_drag_unavailable"],
|
|
87
|
-
["type", "keyboard", "computer_keyboard_unavailable"],
|
|
88
|
-
["scroll", "scroll", "computer_scroll_unavailable"],
|
|
89
|
-
])("rejects %s when its adapter capability is unavailable", async (action, capability, error) => {
|
|
90
|
-
const adapter = new TestAdapter({ [capability]: false });
|
|
91
|
-
const runtime = new ComputerRuntime({
|
|
92
|
-
artifactDirectory: "/tmp",
|
|
93
|
-
adapter,
|
|
94
|
-
});
|
|
95
|
-
const operation = {
|
|
96
|
-
kind: "computer",
|
|
97
|
-
action,
|
|
98
|
-
...(action === "click"
|
|
99
|
-
? { coordinateSpace: "pixel", x: 10, y: 10 }
|
|
100
|
-
: {}),
|
|
101
|
-
...(action === "drag"
|
|
102
|
-
? { coordinateSpace: "pixel", x: 10, y: 10, toX: 40, toY: 40 }
|
|
103
|
-
: {}),
|
|
104
|
-
...(action === "type" ? { text: "safe" } : {}),
|
|
105
|
-
};
|
|
106
|
-
await expect(runtime.execute(ComputerOperationSchema.parse(operation))).rejects.toThrow(error);
|
|
107
|
-
expect(adapter.calls).toEqual([]);
|
|
108
|
-
});
|
|
109
|
-
it("requires a destination for a drag and bounds it like the press point", async () => {
|
|
110
|
-
const adapter = new TestAdapter();
|
|
111
|
-
const runtime = new ComputerRuntime({
|
|
112
|
-
artifactDirectory: "/tmp",
|
|
113
|
-
adapter,
|
|
114
|
-
});
|
|
115
|
-
await expect(runtime.execute(ComputerOperationSchema.parse({
|
|
116
|
-
kind: "computer",
|
|
117
|
-
action: "drag",
|
|
118
|
-
coordinateSpace: "pixel",
|
|
119
|
-
x: 10,
|
|
120
|
-
y: 10,
|
|
121
|
-
}))).rejects.toThrow("computer_drag_requires_destination");
|
|
122
|
-
// The destination shares the coordinate space, so it has to be bounded by
|
|
123
|
-
// the same rule — an out-of-range `toY` used to slip through untouched.
|
|
124
|
-
await expect(runtime.execute(ComputerOperationSchema.parse({
|
|
125
|
-
kind: "computer",
|
|
126
|
-
action: "drag",
|
|
127
|
-
coordinateSpace: "normalized",
|
|
128
|
-
x: 0.1,
|
|
129
|
-
y: 0.1,
|
|
130
|
-
toX: 0.5,
|
|
131
|
-
toY: 4,
|
|
132
|
-
}))).rejects.toThrow("computer_normalized_coordinates_out_of_range");
|
|
133
|
-
expect(adapter.calls).toEqual([]);
|
|
134
|
-
});
|
|
135
|
-
it("passes a bounded drag and a read-only inspect to the adapter", async () => {
|
|
136
|
-
const adapter = new TestAdapter();
|
|
137
|
-
const runtime = new ComputerRuntime({
|
|
138
|
-
artifactDirectory: "/tmp",
|
|
139
|
-
adapter,
|
|
140
|
-
});
|
|
141
|
-
await runtime.execute(ComputerOperationSchema.parse({ kind: "computer", action: "inspect" }));
|
|
142
|
-
await runtime.execute(ComputerOperationSchema.parse({
|
|
143
|
-
kind: "computer",
|
|
144
|
-
action: "drag",
|
|
145
|
-
coordinateSpace: "normalized",
|
|
146
|
-
x: 0.1,
|
|
147
|
-
y: 0.2,
|
|
148
|
-
toX: 0.8,
|
|
149
|
-
toY: 0.9,
|
|
150
|
-
}));
|
|
151
|
-
expect(adapter.calls).toEqual(["inspect", "drag"]);
|
|
152
|
-
});
|
|
153
|
-
});
|
|
154
|
-
describe("matchElement", () => {
|
|
155
|
-
const elements = [
|
|
156
|
-
BUTTON("Save", 0),
|
|
157
|
-
BUTTON("Save As…", 100),
|
|
158
|
-
{ role: "AXTextField", name: "Save", x: 200, y: 40, width: 60, height: 20 },
|
|
159
|
-
];
|
|
160
|
-
it("prefers an exact name over the substring it is a prefix of", () => {
|
|
161
|
-
expect(matchElement(elements, { role: "AXButton", name: "Save" }).x).toBe(0);
|
|
162
|
-
});
|
|
163
|
-
it("matches a role case-insensitively and a name by substring", () => {
|
|
164
|
-
expect(matchElement(elements, { role: "axbutton", name: "as…" }).x).toBe(100);
|
|
165
|
-
});
|
|
166
|
-
it("refuses rather than guessing between equally good candidates", () => {
|
|
167
|
-
// Two exact "Save" matches across roles: picking either would be a coin
|
|
168
|
-
// flip on which control gets clicked.
|
|
169
|
-
expect(() => matchElement(elements, { name: "Save" })).toThrow("computer_target_ambiguous");
|
|
170
|
-
expect(() => matchElement(elements, { name: "Print" })).toThrow("computer_target_not_found");
|
|
171
|
-
expect(() => matchElement(elements, {})).toThrow("computer_target_requires_role_or_name");
|
|
172
|
-
});
|
|
173
|
-
it("refuses to click a reading it is not sure of", () => {
|
|
174
|
-
// Reported by `inspect` — a caller may want to know the word is there — but
|
|
175
|
-
// not clickable, because the point under a doubtful reading is a guess.
|
|
176
|
-
const read = [{ ...BUTTON("Delete", 0), role: "text", confidence: 0.42 }];
|
|
177
|
-
expect(() => matchElement(read, { name: "Delete" })).toThrow("computer_target_confidence_too_low");
|
|
178
|
-
expect(matchElement([{ ...read[0], confidence: 0.91 }], { name: "Delete" }).x).toBe(0);
|
|
179
|
-
});
|
|
180
|
-
});
|
|
181
|
-
describe("parseOcrElements", () => {
|
|
182
|
-
// Real `tesseract 5 … tsv` output, trimmed: a page row, the block/para/line
|
|
183
|
-
// rows above a word, and the words themselves.
|
|
184
|
-
const tsv = [
|
|
185
|
-
"level\tpage_num\tblock_num\tpar_num\tline_num\tword_num\tleft\ttop\twidth\theight\tconf\ttext",
|
|
186
|
-
"1\t1\t0\t0\t0\t0\t0\t0\t2940\t1912\t-1\t",
|
|
187
|
-
"4\t1\t1\t1\t1\t0\t42\t15\t167\t31\t-1\t",
|
|
188
|
-
"5\t1\t1\t1\t1\t1\t100\t40\t80\t20\t96.720352\tSave",
|
|
189
|
-
"5\t1\t1\t1\t1\t2\t300\t40\t90\t20\t41.5\tCancel",
|
|
190
|
-
"5\t1\t1\t1\t1\t3\t500\t40\t60\t20\t12.25\tl1lI",
|
|
191
|
-
"5\t1\t1\t1\t1\t4\t600\t40\t60\t20\t95.0\t ",
|
|
192
|
-
].join("\n");
|
|
193
|
-
it("scales a Retina capture back onto the display it came from", () => {
|
|
194
|
-
// The image measured 2940 wide, the display is 1470: every box halves, so a
|
|
195
|
-
// click computed from one lands where the word actually is.
|
|
196
|
-
expect(parseOcrElements(tsv, 1470)).toEqual([
|
|
197
|
-
{ role: "text", name: "Save", x: 50, y: 20, width: 40, height: 10, confidence: 0.97 },
|
|
198
|
-
{ role: "text", name: "Cancel", x: 150, y: 20, width: 45, height: 10, confidence: 0.42 },
|
|
199
|
-
]);
|
|
200
|
-
});
|
|
201
|
-
it("drops noise and reads nothing at all from a capture with no page row", () => {
|
|
202
|
-
// `l1lI` is under the reporting floor and the blank token has no name;
|
|
203
|
-
// without a page row there is no scale, and guessing one would move a click.
|
|
204
|
-
expect(parseOcrElements(tsv, 1470).map((e) => e.name)).not.toContain("l1lI");
|
|
205
|
-
expect(parseOcrElements("level\tpage_num\n4\t1", 1470)).toEqual([]);
|
|
206
|
-
});
|
|
207
|
-
});
|
|
208
|
-
describe("named targets", () => {
|
|
209
|
-
const click = (target, extra = {}) => ComputerOperationSchema.parse({
|
|
210
|
-
kind: "computer",
|
|
211
|
-
action: "click",
|
|
212
|
-
target,
|
|
213
|
-
...extra,
|
|
214
|
-
});
|
|
215
|
-
it("inspects, then clicks the centre of the resolved element", async () => {
|
|
216
|
-
const adapter = new TestAdapter();
|
|
217
|
-
adapter.elements = [BUTTON("Save", 300)];
|
|
218
|
-
const runtime = new ComputerRuntime({ artifactDirectory: "/tmp", adapter });
|
|
219
|
-
const result = await runtime.execute(click({ name: "Save" }));
|
|
220
|
-
expect(adapter.calls).toEqual(["inspect", "click"]);
|
|
221
|
-
const acted = adapter.operations[1];
|
|
222
|
-
// 300 + 80/2, 40 + 20/2 — in pixels, because that is what the tree measures.
|
|
223
|
-
expect([acted.coordinateSpace, acted.x, acted.y]).toEqual(["pixel", 340, 50]);
|
|
224
|
-
expect(acted.target).toBe(undefined);
|
|
225
|
-
expect(result.element).toEqual(BUTTON("Save", 300));
|
|
226
|
-
});
|
|
227
|
-
it("refuses a target the platform or the request cannot support", async () => {
|
|
228
|
-
const adapter = new TestAdapter();
|
|
229
|
-
const runtime = new ComputerRuntime({ artifactDirectory: "/tmp", adapter });
|
|
230
|
-
adapter.elements = [BUTTON("Save", 300)];
|
|
231
|
-
await expect(runtime.execute(click({ name: "Save" }, { x: 10, y: 10 }))).rejects.toThrow("computer_target_conflicts_with_coordinates");
|
|
232
|
-
adapter.elements = [];
|
|
233
|
-
await expect(runtime.execute(click({ name: "Save" }))).rejects.toThrow("computer_elements_unavailable");
|
|
234
|
-
const blind = new ComputerRuntime({
|
|
235
|
-
artifactDirectory: "/tmp",
|
|
236
|
-
adapter: new TestAdapter({ elements: false }),
|
|
237
|
-
});
|
|
238
|
-
await expect(blind.execute(click({ name: "Save" }))).rejects.toThrow("computer_elements_unavailable");
|
|
239
|
-
});
|
|
240
|
-
});
|
|
241
|
-
describe("parseSecureInput", () => {
|
|
242
|
-
// Trimmed from real `ioreg -l -d 1 -w 0 -r -c IOResources` output on macOS 26.
|
|
243
|
-
const session = '"IOConsoleUsers" = ({"kCGSSessionOnConsoleKey"=Yes,"kSCSecuritySessionID"=100024,' +
|
|
244
|
-
'"kCGSSessionIDKey"=257,"kCGSSessionUserNameKey"="dheeraj"';
|
|
245
|
-
it("reads a held secure-input session as active", () => {
|
|
246
|
-
expect(parseSecureInput(`${session},"kCGSSessionSecureInputPID"=843})`)).toBe(true);
|
|
247
|
-
});
|
|
248
|
-
it("reads a session without the key, or with it cleared, as inactive", () => {
|
|
249
|
-
expect(parseSecureInput(`${session}})`)).toBe(false);
|
|
250
|
-
expect(parseSecureInput(`${session},"kCGSSessionSecureInputPID"=0})`)).toBe(false);
|
|
251
|
-
});
|
|
252
|
-
it("reports no reading at all when no console session was dumped", () => {
|
|
253
|
-
// Absence of the key in output that never described a session is not
|
|
254
|
-
// evidence that secure input is off — reporting `false` here would let a
|
|
255
|
-
// keystroke-swallowing state through as verified.
|
|
256
|
-
expect(parseSecureInput("+-o Root <class IORegistryEntry>")).toBe(undefined);
|
|
257
|
-
});
|
|
258
|
-
});
|
|
259
|
-
//# sourceMappingURL=index.test.js.map
|
package/dist/index.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,sCAAsC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAA0B,MAAM,iBAAiB,CAAC;AAClF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,GAIjB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW;IAOI;IANV,KAAK,GAAa,EAAE,CAAC;IACrB,UAAU,GAAwB,EAAE,CAAC;IAC9C,4EAA4E;IAC5E,QAAQ,GAAqB,EAAE,CAAC;IAEhC,YACmB,YAA2C,EAAE;QAA7C,cAAS,GAAT,SAAS,CAAoC;IAC7D,CAAC;IAEJ,KAAK,CAAC,YAAY;QAChB,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,GAAG,EAAE,KAAK;YACV,IAAI,EAAE,IAAI;YACV,gBAAgB,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC;YACzC,WAAW,EAAE,EAAE;YACf,GAAG,IAAI,CAAC,SAAS;SAClB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAA4B;QACxC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvE,CAAC;IACJ,CAAC;CACF;AAED,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,CAAS,EAAkB,EAAE,CAAC,CAAC;IAC3D,IAAI,EAAE,UAAU;IAChB,IAAI;IACJ,CAAC;IACD,CAAC,EAAE,EAAE;IACL,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,EAAE;CACX,CAAC,CAAC;AAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC;YAClC,iBAAiB,EAAE,MAAM;YACzB,OAAO;SACR,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAClC,uBAAuB,CAAC,KAAK,CAAC;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,cAAc;SACvB,CAAC,CACH,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC;YAClC,iBAAiB,EAAE,MAAM;YACzB,OAAO,EAAE,IAAI,WAAW,EAAE;SAC3B,CAAC,CAAC;QACH,MAAM,MAAM,CACV,OAAO,CAAC,OAAO,CACb,uBAAuB,CAAC,KAAK,CAAC;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,OAAO;SAChB,CAAC,CACH,CACF,CAAC,OAAO,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QACzD,MAAM,MAAM,CACV,OAAO,CAAC,OAAO,CACb,uBAAuB,CAAC,KAAK,CAAC;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,OAAO;YACf,eAAe,EAAE,YAAY;YAC7B,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,GAAG;SACP,CAAC,CACH,CACF,CAAC,OAAO,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC;QACN,CAAC,YAAY,EAAE,YAAY,EAAE,iCAAiC,CAAC;QAC/D,CAAC,SAAS,EAAE,SAAS,EAAE,8BAA8B,CAAC;QACtD,CAAC,OAAO,EAAE,SAAS,EAAE,8BAA8B,CAAC;QACpD,CAAC,MAAM,EAAE,MAAM,EAAE,2BAA2B,CAAC;QAC7C,CAAC,MAAM,EAAE,UAAU,EAAE,+BAA+B,CAAC;QACrD,CAAC,QAAQ,EAAE,QAAQ,EAAE,6BAA6B,CAAC;KAC3C,CAAC,CACT,uDAAuD,EACvD,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC;YAClC,iBAAiB,EAAE,MAAM;YACzB,OAAO;SACR,CAAC,CAAC;QACH,MAAM,SAAS,GAAG;YAChB,IAAI,EAAE,UAAU;YAChB,MAAM;YACN,GAAG,CAAC,MAAM,KAAK,OAAO;gBACpB,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC5C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,KAAK,MAAM;gBACnB,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;gBAC9D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CAAC;QAEF,MAAM,MAAM,CACV,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAC1D,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CACF,CAAC;IAEF,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;QACpF,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC;YAClC,iBAAiB,EAAE,MAAM;YACzB,OAAO;SACR,CAAC,CAAC;QACH,MAAM,MAAM,CACV,OAAO,CAAC,OAAO,CACb,uBAAuB,CAAC,KAAK,CAAC;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;YACd,eAAe,EAAE,OAAO;YACxB,CAAC,EAAE,EAAE;YACL,CAAC,EAAE,EAAE;SACN,CAAC,CACH,CACF,CAAC,OAAO,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QACxD,0EAA0E;QAC1E,wEAAwE;QACxE,MAAM,MAAM,CACV,OAAO,CAAC,OAAO,CACb,uBAAuB,CAAC,KAAK,CAAC;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;YACd,eAAe,EAAE,YAAY;YAC7B,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,GAAG;YACN,GAAG,EAAE,GAAG;YACR,GAAG,EAAE,CAAC;SACP,CAAC,CACH,CACF,CAAC,OAAO,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;QAClE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC;YAClC,iBAAiB,EAAE,MAAM;YACzB,OAAO;SACR,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,CACnB,uBAAuB,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CACvE,CAAC;QACF,MAAM,OAAO,CAAC,OAAO,CACnB,uBAAuB,CAAC,KAAK,CAAC;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,MAAM;YACd,eAAe,EAAE,YAAY;YAC7B,CAAC,EAAE,GAAG;YACN,CAAC,EAAE,GAAG;YACN,GAAG,EAAE,GAAG;YACR,GAAG,EAAE,GAAG;SACT,CAAC,CACH,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;IAC5B,MAAM,QAAQ,GAAG;QACf,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACjB,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC;QACvB,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;KAC5E,CAAC;IAEF,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACtE,GAAG,CACJ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,wEAAwE;QACxE,sCAAsC;QACtC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAC5D,2BAA2B,CAC5B,CAAC;QACF,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAC7D,2BAA2B,CAC5B,CAAC;QACF,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAC9C,uCAAuC,CACxC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,4EAA4E;QAC5E,wEAAwE;QACxE,MAAM,IAAI,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAC1D,oCAAoC,CACrC,CAAC;QACF,MAAM,CACJ,YAAY,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CACxE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,4EAA4E;IAC5E,+CAA+C;IAC/C,MAAM,GAAG,GAAG;QACV,+FAA+F;QAC/F,0CAA0C;QAC1C,yCAAyC;QACzC,oDAAoD;QACpD,iDAAiD;QACjD,gDAAgD;QAChD,8CAA8C;KAC/C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,4EAA4E;QAC5E,4DAA4D;QAC5D,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YAC1C,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;YACrF,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;SACzF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,uEAAuE;QACvE,6EAA6E;QAC7E,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7E,MAAM,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,MAAM,KAAK,GAAG,CACZ,MAA8B,EAC9B,QAAiC,EAAE,EAChB,EAAE,CACrB,uBAAuB,CAAC,KAAK,CAAC;QAC5B,IAAI,EAAE,UAAU;QAChB,MAAM,EAAE,OAAO;QACf,MAAM;QACN,GAAG,KAAK;KACT,CAAC,CAAC;IAEL,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,OAAO,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAE5E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAE9D,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC;QACrC,6EAA6E;QAC7E,MAAM,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9E,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QAC3E,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QAE5E,OAAO,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,MAAM,CACV,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAC3D,CAAC,OAAO,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAC;QAEhE,OAAO,CAAC,QAAQ,GAAG,EAAE,CAAC;QACtB,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACpE,+BAA+B,CAChC,CAAC;QAEF,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC;YAChC,iBAAiB,EAAE,MAAM;YACzB,OAAO,EAAE,IAAI,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;SAC9C,CAAC,CAAC;QACH,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAClE,+BAA+B,CAChC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,+EAA+E;IAC/E,MAAM,OAAO,GACX,mFAAmF;QACnF,2DAA2D,CAAC;IAE9D,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CACJ,gBAAgB,CAAC,GAAG,OAAO,oCAAoC,CAAC,CACjE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,CAAC,gBAAgB,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrD,MAAM,CACJ,gBAAgB,CAAC,GAAG,OAAO,kCAAkC,CAAC,CAC/D,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,qEAAqE;QACrE,yEAAyE;QACzE,kDAAkD;QAClD,MAAM,CAAC,gBAAgB,CAAC,mCAAmC,CAAC,CAAC,CAAC,IAAI,CAChE,SAAS,CACV,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/windows.test.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"windows.test.d.ts","sourceRoot":"","sources":["../src/windows.test.ts"],"names":[],"mappings":""}
|
package/dist/windows.test.js
DELETED
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
// Copyright 2026 XAGI Labs Private Limited
|
|
2
|
-
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
import { mkdtemp, rm, stat } from "node:fs/promises";
|
|
4
|
-
import { tmpdir } from "node:os";
|
|
5
|
-
import { join } from "node:path";
|
|
6
|
-
import { ComputerOperationSchema } from "@melra/protocol";
|
|
7
|
-
import { afterEach, describe, expect, it } from "vitest";
|
|
8
|
-
import { ComputerRuntime, createSystemComputerAdapter, escapeSendKeys } from "./index.js";
|
|
9
|
-
/**
|
|
10
|
-
* Windows computer use was entirely absent: the factory had no `win32` branch,
|
|
11
|
-
* so `capabilities` reported `unavailable` and every input action threw a bare
|
|
12
|
-
* `computer_use_unavailable`. CI ran on `windows-latest` and stayed green
|
|
13
|
-
* because nothing exercised Windows behaviour — which is why the adapter tests
|
|
14
|
-
* below run for real on Windows rather than against a stub.
|
|
15
|
-
*/
|
|
16
|
-
const onWindows = process.platform === "win32";
|
|
17
|
-
const roots = [];
|
|
18
|
-
/**
|
|
19
|
-
* Two clocks, and both have to clear the same wait: vitest's own default killed
|
|
20
|
-
* these tests at 5s, and once that was raised the operation's `timeoutMs` cap
|
|
21
|
-
* killed them at 30s — which is why the schema now allows 120s for a computer
|
|
22
|
-
* action like every other operation kind.
|
|
23
|
-
*
|
|
24
|
-
* The wait is real, not slack. A computer action spawns a whole interpreter:
|
|
25
|
-
* `powershell.exe` cold-starts in seconds, the pointer script's
|
|
26
|
-
* `Add-Type -TypeDefinition` runs the C# compiler to build the P/Invoke shim,
|
|
27
|
-
* and the first such spawn after boot pays for a cold disk on top. That cost is
|
|
28
|
-
* per-process, so it is paid on every action, and a caller who leaves
|
|
29
|
-
* `timeoutMs` at its 10s default is closer to the edge on a cold or loaded
|
|
30
|
-
* machine than the number suggests.
|
|
31
|
-
*/
|
|
32
|
-
const POWERSHELL_TEST_TIMEOUT_MS = 120_000;
|
|
33
|
-
afterEach(async () => {
|
|
34
|
-
await Promise.all(roots.splice(0).map((root) => rm(root, { recursive: true, force: true })));
|
|
35
|
-
});
|
|
36
|
-
async function workspace() {
|
|
37
|
-
const root = await mkdtemp(join(tmpdir(), "melra-computer-"));
|
|
38
|
-
roots.push(root);
|
|
39
|
-
return root;
|
|
40
|
-
}
|
|
41
|
-
describe("escapeSendKeys", () => {
|
|
42
|
-
it("neutralizes the characters SendKeys reads as modifiers", () => {
|
|
43
|
-
// Unescaped, `+` is Shift, `^` is Ctrl, `%` is Alt, `~` is Enter, and the
|
|
44
|
-
// brackets group — so this password would have typed a chord and pressed
|
|
45
|
-
// Enter instead of entering any of these characters.
|
|
46
|
-
expect(escapeSendKeys("a+b^c%d~e")).toBe("a{+}b{^}c{%}d{~}e");
|
|
47
|
-
expect(escapeSendKeys("({x})[y]")).toBe("{(}{{}x{}}{)}{[}y{]}");
|
|
48
|
-
});
|
|
49
|
-
it("leaves ordinary text alone", () => {
|
|
50
|
-
expect(escapeSendKeys("Hello, world 123")).toBe("Hello, world 123");
|
|
51
|
-
});
|
|
52
|
-
});
|
|
53
|
-
describe.runIf(onWindows)("Windows computer adapter", () => {
|
|
54
|
-
it("reports itself as available rather than unavailable", async () => {
|
|
55
|
-
const runtime = new ComputerRuntime({
|
|
56
|
-
artifactDirectory: await workspace(),
|
|
57
|
-
adapter: createSystemComputerAdapter(),
|
|
58
|
-
});
|
|
59
|
-
const observed = await runtime.execute(ComputerOperationSchema.parse({ kind: "computer", action: "capabilities" }));
|
|
60
|
-
expect(observed.platform).toBe("win32");
|
|
61
|
-
expect(observed.adapter).toBe("windows-powershell");
|
|
62
|
-
expect(observed.available).toBe(true);
|
|
63
|
-
expect(observed.screenshot).toBe(true);
|
|
64
|
-
expect(observed.pointer).toBe(true);
|
|
65
|
-
// The honest ceiling of SendKeys-based input, stated rather than implied.
|
|
66
|
-
expect(observed.limitations.join(" ")).toContain("focus");
|
|
67
|
-
});
|
|
68
|
-
it("captures a real screenshot to the artifact directory", async () => {
|
|
69
|
-
const artifactDirectory = join(await workspace(), "artifacts");
|
|
70
|
-
const runtime = new ComputerRuntime({
|
|
71
|
-
artifactDirectory,
|
|
72
|
-
adapter: createSystemComputerAdapter(),
|
|
73
|
-
});
|
|
74
|
-
const observed = await runtime.execute(ComputerOperationSchema.parse({
|
|
75
|
-
kind: "computer",
|
|
76
|
-
action: "screenshot",
|
|
77
|
-
timeoutMs: 90_000,
|
|
78
|
-
}));
|
|
79
|
-
expect(observed.captured).toBe(true);
|
|
80
|
-
expect(String(observed.path).startsWith(artifactDirectory)).toBe(true);
|
|
81
|
-
const written = await stat(String(observed.path));
|
|
82
|
-
expect(written.size).toBeGreaterThan(0);
|
|
83
|
-
expect(observed.size).toBe(written.size);
|
|
84
|
-
expect(String(observed.sha256)).toHaveLength(64);
|
|
85
|
-
}, POWERSHELL_TEST_TIMEOUT_MS);
|
|
86
|
-
it("resolves a normalized coordinate against the virtual desktop", async () => {
|
|
87
|
-
const runtime = new ComputerRuntime({
|
|
88
|
-
artifactDirectory: await workspace(),
|
|
89
|
-
adapter: createSystemComputerAdapter(),
|
|
90
|
-
});
|
|
91
|
-
// A pointer move is the P/Invoke path — the part most likely to be wrong —
|
|
92
|
-
// and moving the cursor on a headless runner has no side effect worth
|
|
93
|
-
// avoiding. Clicking would, so this does not click.
|
|
94
|
-
const observed = await runtime.execute(ComputerOperationSchema.parse({
|
|
95
|
-
kind: "computer",
|
|
96
|
-
action: "move",
|
|
97
|
-
x: 0.5,
|
|
98
|
-
y: 0.5,
|
|
99
|
-
coordinateSpace: "normalized",
|
|
100
|
-
timeoutMs: 90_000,
|
|
101
|
-
}));
|
|
102
|
-
expect(observed.success).toBe(true);
|
|
103
|
-
// The pixel point comes back from the script rather than being recomputed
|
|
104
|
-
// here, so a normalized centre must land somewhere other than the origin.
|
|
105
|
-
expect(observed.x).toBeGreaterThan(0);
|
|
106
|
-
expect(observed.y).toBeGreaterThan(0);
|
|
107
|
-
}, POWERSHELL_TEST_TIMEOUT_MS);
|
|
108
|
-
it("names a timeout as a timeout instead of echoing the script", async () => {
|
|
109
|
-
const runtime = new ComputerRuntime({
|
|
110
|
-
artifactDirectory: await workspace(),
|
|
111
|
-
adapter: createSystemComputerAdapter(),
|
|
112
|
-
});
|
|
113
|
-
/**
|
|
114
|
-
* This is how the screenshot failure first presented: Node builds the
|
|
115
|
-
* rejection message from the whole command line, so the caller received
|
|
116
|
-
* fifteen lines of echoed PowerShell with an empty stderr and no way to
|
|
117
|
-
* tell a killed helper from a script that failed instantly.
|
|
118
|
-
*
|
|
119
|
-
* 100ms is unreachable for a process that has to load the CLR, so this is a
|
|
120
|
-
* timeout by construction rather than by timing luck.
|
|
121
|
-
*/
|
|
122
|
-
await expect(runtime.execute(ComputerOperationSchema.parse({
|
|
123
|
-
kind: "computer",
|
|
124
|
-
action: "screenshot",
|
|
125
|
-
timeoutMs: 100,
|
|
126
|
-
}))).rejects.toThrow(/^computer_helper_timeout:powershell\.exe:100ms$/);
|
|
127
|
-
}, POWERSHELL_TEST_TIMEOUT_MS);
|
|
128
|
-
});
|
|
129
|
-
//# sourceMappingURL=windows.test.js.map
|
package/dist/windows.test.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"windows.test.js","sourceRoot":"","sources":["../src/windows.test.ts"],"names":[],"mappings":"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"}
|