humanish 0.102.0 → 0.103.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 +2 -1
- package/dist/browser-control-client.d.ts +3 -1
- package/dist/browser-control-client.js +41 -5
- package/dist/browser-control-client.js.map +1 -1
- package/dist/browser-control-dispatcher.d.ts +6 -1
- package/dist/browser-control-dispatcher.js +38 -3
- package/dist/browser-control-dispatcher.js.map +1 -1
- package/dist/browser-control-protocol.d.ts +24 -0
- package/dist/browser-control-protocol.js +7 -4
- package/dist/browser-control-protocol.js.map +1 -1
- package/dist/browser-control-recording-transfer.d.ts +4 -0
- package/dist/browser-control-recording-transfer.js +42 -0
- package/dist/browser-control-recording-transfer.js.map +1 -0
- package/dist/browser-control-transport.d.ts +3 -0
- package/dist/browser-control-transport.js +23 -2
- package/dist/browser-control-transport.js.map +1 -1
- package/dist/cua-actor-lab.d.ts +5 -2
- package/dist/cua-actor-lab.js +9 -1
- package/dist/cua-actor-lab.js.map +1 -1
- package/dist/cua-desktop-lane.d.ts +1 -1
- package/dist/desktop-recorder.d.ts +39 -0
- package/dist/desktop-recorder.js +220 -0
- package/dist/desktop-recorder.js.map +1 -0
- package/dist/desktop-recording-artifact.d.ts +5 -0
- package/dist/desktop-recording-artifact.js +54 -0
- package/dist/desktop-recording-artifact.js.map +1 -0
- package/dist/desktop-recording-types.d.ts +24 -0
- package/dist/desktop-recording-types.js +14 -0
- package/dist/desktop-recording-types.js.map +1 -0
- package/dist/doctor-lab.js +1 -1
- package/dist/doctor-lab.js.map +1 -1
- package/dist/e2b-cua-desktop.js +31 -7
- package/dist/e2b-cua-desktop.js.map +1 -1
- package/dist/e2b-desktop-launch.d.ts +8 -0
- package/dist/e2b-desktop-launch.js.map +1 -1
- package/dist/e2b-desktop-recording.d.ts +16 -0
- package/dist/e2b-desktop-recording.js +162 -0
- package/dist/e2b-desktop-recording.js.map +1 -0
- package/dist/export-bundle.js +2 -0
- package/dist/export-bundle.js.map +1 -1
- package/dist/export.js +19 -3
- package/dist/export.js.map +1 -1
- package/dist/guest-bootstrap.d.ts +4 -2
- package/dist/guest-bootstrap.js +14 -8
- package/dist/guest-bootstrap.js.map +1 -1
- package/dist/guest-runtime-desktop.d.ts +3 -1
- package/dist/guest-runtime-desktop.js +44 -2
- package/dist/guest-runtime-desktop.js.map +1 -1
- package/dist/guest-runtime-main.js +3 -2
- package/dist/guest-runtime-main.js.map +1 -1
- package/dist/guest-runtime.d.ts +7 -2
- package/dist/guest-runtime.js +3 -2
- package/dist/guest-runtime.js.map +1 -1
- package/dist/lab-config.d.ts +4 -0
- package/dist/lab-config.js +11 -0
- package/dist/lab-config.js.map +1 -1
- package/dist/lab-summary.js +1 -1
- package/dist/lab-summary.js.map +1 -1
- package/dist/local-firecracker-desktop.d.ts +7 -1
- package/dist/local-firecracker-desktop.js +10 -2
- package/dist/local-firecracker-desktop.js.map +1 -1
- package/dist/local-firecracker-study.js +14 -2
- package/dist/local-firecracker-study.js.map +1 -1
- package/dist/local-runtime-release.js +8 -8
- package/dist/observer-app.html +9 -9
- package/dist/observer-serve.js +1 -1
- package/dist/observer-serve.js.map +1 -1
- package/dist/observer.d.ts +2 -2
- package/dist/observer.js +106 -27
- package/dist/observer.js.map +1 -1
- package/dist/run.d.ts +4 -2
- package/dist/run.js +49 -9
- package/dist/run.js.map +1 -1
- package/dist/selected-output-paths.d.ts +3 -0
- package/dist/selected-output-paths.js +29 -17
- package/dist/selected-output-paths.js.map +1 -1
- package/docs/architecture/desktop-recording.md +65 -0
- package/docs/architecture/participant-media.md +4 -4
- package/docs/contracts/run-bundle.md +27 -0
- package/docs/contracts/schemas.md +1 -1
- package/docs/goals/current.md +5 -5
- package/docs/ramp/README.md +5 -1
- package/docs/release/0.103.0-desktop-recording.md +29 -0
- package/package.json +1 -1
- package/skills/humanish/SKILL.md +6 -0
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type DesktopRecordingConfig } from "./desktop-recording-types.js";
|
|
1
2
|
import type { Duplex } from "node:stream";
|
|
2
3
|
import { type BrowserControlIdentity } from "./browser-control-protocol.js";
|
|
3
4
|
import { createBrowserControlClient } from "./browser-control-client.js";
|
|
@@ -17,7 +18,7 @@ export declare const GUEST_BOOTSTRAP_LIMITS: Readonly<{
|
|
|
17
18
|
/** Same entry authority as the local desktop's opaque app-port forward. */
|
|
18
19
|
export declare function validateGuestInitialUrl(value: string): string;
|
|
19
20
|
export declare function guestReadyTimeoutMs(initialUrl?: string): number;
|
|
20
|
-
export declare function encodeGuestBootstrap(identity: BrowserControlIdentity, ready?: boolean, initialUrl?: string, media?: GuestMediaConfig): Buffer;
|
|
21
|
+
export declare function encodeGuestBootstrap(identity: BrowserControlIdentity, ready?: boolean, initialUrl?: string, media?: GuestMediaConfig, recording?: DesktopRecordingConfig): Buffer;
|
|
21
22
|
export declare function parseGuestBootstrap(bytes: Buffer, revision: string, ready?: boolean): BrowserControlIdentity;
|
|
22
23
|
/** Own the first frame and continue refusing early bytes until synchronous handoff. */
|
|
23
24
|
export declare class GuestBootstrapReader {
|
|
@@ -29,6 +30,7 @@ export declare class GuestBootstrapReader {
|
|
|
29
30
|
readonly identity: Promise<BrowserControlIdentity>;
|
|
30
31
|
initialUrl: string | undefined;
|
|
31
32
|
media: GuestMediaConfig | undefined;
|
|
33
|
+
recording: DesktopRecordingConfig | undefined;
|
|
32
34
|
private resolve;
|
|
33
35
|
private reject;
|
|
34
36
|
private readonly header;
|
|
@@ -50,4 +52,4 @@ export declare class GuestBootstrapReader {
|
|
|
50
52
|
close(): void;
|
|
51
53
|
}
|
|
52
54
|
/** Fixed preface on an already acquired Firecracker stream; no path discovery/retry. */
|
|
53
|
-
export declare function connectGuestBootstrap(stream: Duplex, identity: BrowserControlIdentity, signal: AbortSignal, initialUrl?: string, media?: GuestMediaConfig): Promise<ReturnType<typeof createBrowserControlClient>>;
|
|
55
|
+
export declare function connectGuestBootstrap(stream: Duplex, identity: BrowserControlIdentity, signal: AbortSignal, initialUrl?: string, media?: GuestMediaConfig, recording?: DesktopRecordingConfig): Promise<ReturnType<typeof createBrowserControlClient>>;
|
package/dist/guest-bootstrap.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { desktopRecordingConfigSchema } from "./desktop-recording-types.js";
|
|
1
2
|
import { validateBrowserControlIdentity, sameBrowserControlIdentity } from "./browser-control-protocol.js";
|
|
2
3
|
import { CuaExecutorError } from "./cua-executor-error.js";
|
|
3
4
|
import { createBrowserControlClient } from "./browser-control-client.js";
|
|
@@ -25,18 +26,20 @@ export function validateGuestInitialUrl(value) {
|
|
|
25
26
|
export function guestReadyTimeoutMs(initialUrl) {
|
|
26
27
|
return GUEST_BOOTSTRAP_LIMITS.readyMs + (initialUrl === undefined ? 0 : GUEST_BOOTSTRAP_LIMITS.navigationMs + GUEST_BOOTSTRAP_LIMITS.paintMs);
|
|
27
28
|
}
|
|
28
|
-
function canonical(identity, ready, initialUrl, media) {
|
|
29
|
+
function canonical(identity, ready, initialUrl, media, recording) {
|
|
29
30
|
const { generation, challenge, runtimeRevision } = validateBrowserControlIdentity(identity);
|
|
30
31
|
const fixed = { generation, challenge, runtimeRevision };
|
|
31
32
|
if (initialUrl !== undefined && (ready || validateGuestInitialUrl(initialUrl) !== initialUrl))
|
|
32
33
|
throw refused();
|
|
33
34
|
if (media !== undefined && (ready || !guestMediaConfigSchema.safeParse(media).success))
|
|
34
35
|
throw refused();
|
|
36
|
+
if (recording !== undefined && (ready || !desktopRecordingConfigSchema.safeParse(recording).success))
|
|
37
|
+
throw refused();
|
|
35
38
|
return JSON.stringify(ready ? { version: 1, ready: true, identity: fixed }
|
|
36
|
-
: { version: 1, identity: fixed, ...(initialUrl === undefined ? {} : { initialUrl }), ...(media === undefined ? {} : { media: guestMediaConfigSchema.parse(media) }) });
|
|
39
|
+
: { version: 1, identity: fixed, ...(initialUrl === undefined ? {} : { initialUrl }), ...(media === undefined ? {} : { media: guestMediaConfigSchema.parse(media) }), ...(recording === undefined ? {} : { recording: desktopRecordingConfigSchema.parse(recording) }) });
|
|
37
40
|
}
|
|
38
|
-
export function encodeGuestBootstrap(identity, ready = false, initialUrl, media) {
|
|
39
|
-
const bytes = Buffer.from(canonical(identity, ready, initialUrl, media));
|
|
41
|
+
export function encodeGuestBootstrap(identity, ready = false, initialUrl, media, recording) {
|
|
42
|
+
const bytes = Buffer.from(canonical(identity, ready, initialUrl, media, recording));
|
|
40
43
|
if (bytes.length > (ready ? GUEST_BOOTSTRAP_LIMITS.readyBytes : GUEST_BOOTSTRAP_LIMITS.bytes))
|
|
41
44
|
throw refused();
|
|
42
45
|
const frame = Buffer.alloc(4 + bytes.length);
|
|
@@ -57,11 +60,12 @@ function parseBootstrap(bytes, revision, ready) {
|
|
|
57
60
|
const identity = validateBrowserControlIdentity(value.identity);
|
|
58
61
|
const initialUrl = "initialUrl" in value ? value.initialUrl : undefined;
|
|
59
62
|
const media = "media" in value ? guestMediaConfigSchema.parse(value.media) : undefined;
|
|
63
|
+
const recording = "recording" in value ? desktopRecordingConfigSchema.parse(value.recording) : undefined;
|
|
60
64
|
if (initialUrl !== undefined && typeof initialUrl !== "string")
|
|
61
65
|
throw refused();
|
|
62
|
-
if (identity.runtimeRevision !== revision || canonical(identity, ready, initialUrl, media) !== bytes.toString("ascii"))
|
|
66
|
+
if (identity.runtimeRevision !== revision || canonical(identity, ready, initialUrl, media, recording) !== bytes.toString("ascii"))
|
|
63
67
|
throw refused();
|
|
64
|
-
return { identity, ...(initialUrl === undefined ? {} : { initialUrl }), ...(media === undefined ? {} : { media }) };
|
|
68
|
+
return { identity, ...(initialUrl === undefined ? {} : { initialUrl }), ...(media === undefined ? {} : { media }), ...(recording === undefined ? {} : { recording }) };
|
|
65
69
|
}
|
|
66
70
|
catch {
|
|
67
71
|
throw refused();
|
|
@@ -77,6 +81,7 @@ export class GuestBootstrapReader {
|
|
|
77
81
|
identity;
|
|
78
82
|
initialUrl;
|
|
79
83
|
media;
|
|
84
|
+
recording;
|
|
80
85
|
resolve;
|
|
81
86
|
reject;
|
|
82
87
|
header = Buffer.alloc(4);
|
|
@@ -141,6 +146,7 @@ export class GuestBootstrapReader {
|
|
|
141
146
|
const parsed = parseBootstrap(this.body, this.revision, this.ready);
|
|
142
147
|
this.initialUrl = parsed.initialUrl;
|
|
143
148
|
this.media = parsed.media;
|
|
149
|
+
this.recording = parsed.recording;
|
|
144
150
|
this.admitted = true;
|
|
145
151
|
clearTimeout(this.timer);
|
|
146
152
|
this.resolve(parsed.identity);
|
|
@@ -186,9 +192,9 @@ export class GuestBootstrapReader {
|
|
|
186
192
|
close() { this.fail("session_revoked"); }
|
|
187
193
|
}
|
|
188
194
|
/** Fixed preface on an already acquired Firecracker stream; no path discovery/retry. */
|
|
189
|
-
export async function connectGuestBootstrap(stream, identity, signal, initialUrl, media) {
|
|
195
|
+
export async function connectGuestBootstrap(stream, identity, signal, initialUrl, media, recording) {
|
|
190
196
|
validateBrowserControlIdentity(identity);
|
|
191
|
-
const request = encodeGuestBootstrap(identity, false, initialUrl, media);
|
|
197
|
+
const request = encodeGuestBootstrap(identity, false, initialUrl, media, recording);
|
|
192
198
|
await new Promise((resolve, reject) => {
|
|
193
199
|
let bytes = Buffer.alloc(0), done = false;
|
|
194
200
|
const timer = setTimeout(() => finish(new CuaExecutorError("deadline_exceeded", "not_dispatched")), GUEST_BOOTSTRAP_LIMITS.connectMs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guest-bootstrap.js","sourceRoot":"","sources":["../src/guest-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"guest-bootstrap.js","sourceRoot":"","sources":["../src/guest-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type BrowserContext, type Page } from "playwright-core";
|
|
2
2
|
import type { GuestRuntimeDesktop } from "./guest-runtime.js";
|
|
3
3
|
import type { GuestMediaConfig } from "./guest-media-config.js";
|
|
4
|
+
import type { DesktopRecordingConfig } from "./desktop-recording-types.js";
|
|
4
5
|
export declare const GUEST_RUNTIME_PATHS: Readonly<{
|
|
5
6
|
root: "/opt/humanish/control";
|
|
6
7
|
run: "/run/humanish";
|
|
@@ -20,7 +21,7 @@ export declare const GUEST_RUNTIME_ENV: Readonly<{
|
|
|
20
21
|
XDG_CONFIG_HOME: "/home/humanish/.config";
|
|
21
22
|
TMPDIR: "/tmp";
|
|
22
23
|
}>;
|
|
23
|
-
export type GuestRuntimePhase = "layout" | "xauthority" | "display" | "window_manager" | "media" | "browser" | "sandbox" | "focus" | "fixture" | "navigation";
|
|
24
|
+
export type GuestRuntimePhase = "layout" | "xauthority" | "display" | "window_manager" | "media" | "recording" | "browser" | "sandbox" | "focus" | "fixture" | "navigation";
|
|
24
25
|
/** Initial document only: do not wait for app data, subresources or network idle. */
|
|
25
26
|
export declare function navigateGuestInitialPage(page: Pick<Page, "goto" | "waitForFunction">, initialUrl: string, signal: AbortSignal): Promise<void>;
|
|
26
27
|
/** Fixed guest layout with an optional admitted initial loopback app URL. */
|
|
@@ -30,6 +31,7 @@ export declare function createGuestRuntimeDesktop(options: {
|
|
|
30
31
|
onPhase?(phase: GuestRuntimePhase): void;
|
|
31
32
|
initialUrl?: string;
|
|
32
33
|
media?: GuestMediaConfig;
|
|
34
|
+
recording?: DesktopRecordingConfig;
|
|
33
35
|
}): Promise<GuestRuntimeDesktop & {
|
|
34
36
|
readonly owner: {
|
|
35
37
|
context: BrowserContext;
|
|
@@ -11,6 +11,7 @@ import { createGuestDesktopExecutor } from "./guest-desktop-executor.js";
|
|
|
11
11
|
import { CuaExecutorError } from "./cua-executor-error.js";
|
|
12
12
|
import { GUEST_BOOTSTRAP_LIMITS, validateGuestInitialUrl } from "./guest-bootstrap.js";
|
|
13
13
|
import { startDesktopMedia } from "./guest-desktop-media.js";
|
|
14
|
+
import { startDesktopRecorder } from "./desktop-recorder.js";
|
|
14
15
|
export const GUEST_RUNTIME_PATHS = Object.freeze({ root: "/opt/humanish/control", run: "/run/humanish", home: "/home/humanish" });
|
|
15
16
|
export const GUEST_RUNTIME_ENV = Object.freeze({ PATH: "/usr/bin:/bin", HOME: "/home/humanish", USER: "humanish", LOGNAME: "humanish",
|
|
16
17
|
LANG: "C.UTF-8", LC_ALL: "C.UTF-8", DISPLAY: ":0", XAUTHORITY: "/run/humanish/Xauthority",
|
|
@@ -42,6 +43,8 @@ export async function createGuestRuntimeDesktop(options) {
|
|
|
42
43
|
let pendingContext;
|
|
43
44
|
let content;
|
|
44
45
|
let media;
|
|
46
|
+
let recorder;
|
|
47
|
+
let recordingFailed = false;
|
|
45
48
|
let closing;
|
|
46
49
|
let stopping = false;
|
|
47
50
|
let phase = "layout";
|
|
@@ -109,6 +112,10 @@ export async function createGuestRuntimeDesktop(options) {
|
|
|
109
112
|
catch {
|
|
110
113
|
complete = false;
|
|
111
114
|
}
|
|
115
|
+
try {
|
|
116
|
+
await recorder?.finish();
|
|
117
|
+
}
|
|
118
|
+
catch { /* Recording evidence is optional to desktop teardown. */ }
|
|
112
119
|
try {
|
|
113
120
|
await media?.close();
|
|
114
121
|
}
|
|
@@ -208,9 +215,22 @@ export async function createGuestRuntimeDesktop(options) {
|
|
|
208
215
|
}, env: GUEST_RUNTIME_ENV, signal, onTerminal: options.onTerminal });
|
|
209
216
|
check();
|
|
210
217
|
}
|
|
218
|
+
if (options.recording !== undefined) {
|
|
219
|
+
progress("recording");
|
|
220
|
+
try {
|
|
221
|
+
recorder = await startDesktopRecorder({ display: ":0", width: 960, height: 720,
|
|
222
|
+
outputPath: `${GUEST_RUNTIME_PATHS.home}/desktop-recording.mp4`, env: media?.env ?? GUEST_RUNTIME_ENV, signal,
|
|
223
|
+
audioSources: options.recording.audio ? ["microphone-input", "speaker-output"] : [],
|
|
224
|
+
pulseReady: options.recording.audio && options.media?.microphone !== undefined });
|
|
225
|
+
}
|
|
226
|
+
catch {
|
|
227
|
+
recordingFailed = true;
|
|
228
|
+
}
|
|
229
|
+
check();
|
|
230
|
+
}
|
|
211
231
|
progress("browser");
|
|
212
232
|
pendingContext = chromium.launchPersistentContext(`${GUEST_RUNTIME_PATHS.home}/browser`, { executablePath: "/usr/bin/chromium",
|
|
213
|
-
headless: false, chromiumSandbox: true, viewport: null, env: media?.env ?? GUEST_RUNTIME_ENV, timeout: 25_000,
|
|
233
|
+
headless: false, chromiumSandbox: true, viewport: null, env: recorder?.env ?? media?.env ?? GUEST_RUNTIME_ENV, timeout: 25_000,
|
|
214
234
|
args: ["--window-size=960,680", "--window-position=0,20", "--disable-background-networking", "--disable-component-update", "--no-first-run",
|
|
215
235
|
...(options.media?.permission === "granted" ? ["--use-fake-ui-for-media-stream"] : [])] });
|
|
216
236
|
void pendingContext.then(browser => { if (stopping)
|
|
@@ -257,7 +277,29 @@ export async function createGuestRuntimeDesktop(options) {
|
|
|
257
277
|
await page.locator("#note").waitFor();
|
|
258
278
|
check();
|
|
259
279
|
}
|
|
260
|
-
|
|
280
|
+
const finishRecording = options.recording === undefined ? undefined : async () => {
|
|
281
|
+
try {
|
|
282
|
+
if (recordingFailed || !recorder)
|
|
283
|
+
throw new Error();
|
|
284
|
+
const result = await recorder.finish();
|
|
285
|
+
const file = await open(result.outputPath, constants.O_RDONLY | constants.O_NOFOLLOW);
|
|
286
|
+
try {
|
|
287
|
+
const fileStat = await file.stat();
|
|
288
|
+
if (!fileStat.isFile() || fileStat.size !== result.metadata.bytes)
|
|
289
|
+
throw new Error();
|
|
290
|
+
return { metadata: result.metadata, stream: file.createReadStream({ autoClose: true }) };
|
|
291
|
+
}
|
|
292
|
+
catch (error) {
|
|
293
|
+
await file.close().catch(() => { });
|
|
294
|
+
throw error;
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
catch {
|
|
298
|
+
throw new Error("Desktop recording failed.");
|
|
299
|
+
}
|
|
300
|
+
};
|
|
301
|
+
return { executor: media?.wrap(executor) ?? executor, close,
|
|
302
|
+
...(finishRecording ? { finishRecording } : {}), owner: { context, page, sandboxReport, configSha256: CONFIG_SHA } };
|
|
261
303
|
}
|
|
262
304
|
catch {
|
|
263
305
|
await close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guest-runtime-desktop.js","sourceRoot":"","sources":["../src/guest-runtime-desktop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"guest-runtime-desktop.js","sourceRoot":"","sources":["../src/guest-runtime-desktop.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,8 +18,9 @@ try {
|
|
|
18
18
|
const runtime = await runGuestRuntime({ transport, revision: GUEST_RUNTIME_REVISION, signal: stop.signal,
|
|
19
19
|
marker: value => { if (writeSync(Number(markerFd), value) !== 1)
|
|
20
20
|
throw new Error(); },
|
|
21
|
-
createDesktop: (signal, onTerminal, initialUrl, media) => createGuestRuntimeDesktop({ signal, onTerminal,
|
|
22
|
-
...(initialUrl === undefined ? {} : { initialUrl }), ...(media === undefined ? {} : { media })
|
|
21
|
+
createDesktop: (signal, onTerminal, initialUrl, media, recording) => createGuestRuntimeDesktop({ signal, onTerminal,
|
|
22
|
+
...(initialUrl === undefined ? {} : { initialUrl }), ...(media === undefined ? {} : { media }),
|
|
23
|
+
...(recording === undefined ? {} : { recording }) }) });
|
|
23
24
|
const result = await runtime.closed;
|
|
24
25
|
process.exit(result.complete ? 0 : 1);
|
|
25
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guest-runtime-main.js","sourceRoot":"","sources":["../src/guest-runtime-main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,6EAA6E;AAC7E,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;AACnC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AAC1C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACzC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACrF,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AAC1C,IAAI,CAAC;IACH,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,sBAAsB,CAAC;QAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAC3D,IAAI,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI;QAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IAC3H,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;QACtG,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;QACrF,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,yBAAyB,CAAC,EAAE,MAAM,EAAE,UAAU;
|
|
1
|
+
{"version":3,"file":"guest-runtime-main.js","sourceRoot":"","sources":["../src/guest-runtime-main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,6EAA6E;AAC7E,MAAM,IAAI,GAAG,IAAI,eAAe,EAAE,CAAC;AACnC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AAC1C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACzC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AACrF,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AAC1C,IAAI,CAAC;IACH,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,sBAAsB,CAAC;QAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IAC3D,IAAI,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI;QAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IAC3H,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,sBAAsB,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM;QACtG,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC;QACrF,aAAa,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,yBAAyB,CAAC,EAAE,MAAM,EAAE,UAAU;YACjH,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;YAC9F,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC;IACpC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,CAAC;AAAC,MAAM,CAAC;IACP,IAAI,CAAC,KAAK,EAAE,CAAC;IAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAChD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC"}
|
package/dist/guest-runtime.d.ts
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import type { Duplex } from "node:stream";
|
|
1
|
+
import type { Duplex, Readable } from "node:stream";
|
|
2
2
|
import type { CuaExecutor } from "./computer-use.js";
|
|
3
3
|
import type { GuestMediaConfig } from "./guest-media-config.js";
|
|
4
|
+
import type { DesktopRecordingConfig, DesktopRecordingMetadata } from "./desktop-recording-types.js";
|
|
4
5
|
export interface GuestRuntimeDesktop {
|
|
5
6
|
executor: CuaExecutor;
|
|
7
|
+
finishRecording?(): Promise<{
|
|
8
|
+
metadata: DesktopRecordingMetadata;
|
|
9
|
+
stream: Readable;
|
|
10
|
+
}>;
|
|
6
11
|
close(): Promise<{
|
|
7
12
|
complete: boolean;
|
|
8
13
|
}>;
|
|
@@ -13,7 +18,7 @@ export interface GuestRuntimeOptions {
|
|
|
13
18
|
signal: AbortSignal;
|
|
14
19
|
/** Fixed private supervision channel, not browser-control output. */
|
|
15
20
|
marker(value: "A" | "R"): void;
|
|
16
|
-
createDesktop(signal: AbortSignal, onTerminal: () => void, initialUrl?: string, media?: GuestMediaConfig): Promise<GuestRuntimeDesktop>;
|
|
21
|
+
createDesktop(signal: AbortSignal, onTerminal: () => void, initialUrl?: string, media?: GuestMediaConfig, recording?: DesktopRecordingConfig): Promise<GuestRuntimeDesktop>;
|
|
17
22
|
}
|
|
18
23
|
/** One admitted desktop and one dispatcher. The owner retains physical teardown. */
|
|
19
24
|
export declare function runGuestRuntime(options: GuestRuntimeOptions): Promise<{
|
package/dist/guest-runtime.js
CHANGED
|
@@ -67,7 +67,7 @@ export async function runGuestRuntime(options) {
|
|
|
67
67
|
clearTimeout(timer);
|
|
68
68
|
timer = setTimeout(() => { void close(); }, guestReadyTimeoutMs(reader.initialUrl));
|
|
69
69
|
options.marker("A");
|
|
70
|
-
preparing = options.createDesktop(authority, terminal, reader.initialUrl, reader.media);
|
|
70
|
+
preparing = options.createDesktop(authority, terminal, reader.initialUrl, reader.media, reader.recording);
|
|
71
71
|
desktop = await Promise.race([preparing, new Promise((_, reject) => {
|
|
72
72
|
const stop = () => reject(new CuaExecutorError("session_revoked", "not_dispatched"));
|
|
73
73
|
authority.addEventListener("abort", stop, { once: true });
|
|
@@ -79,7 +79,8 @@ export async function runGuestRuntime(options) {
|
|
|
79
79
|
throw new CuaExecutorError("session_revoked", "not_dispatched");
|
|
80
80
|
reader.handoff();
|
|
81
81
|
dispatcher = attachBrowserControlDispatcher({ transport: options.transport, identity, executor: desktop.executor,
|
|
82
|
-
authoritySignal: authority, isAuthorized: () => !authority.aborted
|
|
82
|
+
authoritySignal: authority, isAuthorized: () => !authority.aborted,
|
|
83
|
+
...(desktop.finishRecording ? { finishRecording: desktop.finishRecording } : {}) });
|
|
83
84
|
// No await in this handoff: an immediate HELLO already has its sole receiver.
|
|
84
85
|
options.transport.write(encodeGuestBootstrap(identity, true), error => { if (error)
|
|
85
86
|
terminal(); });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guest-runtime.js","sourceRoot":"","sources":["../src/guest-runtime.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC/H,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"guest-runtime.js","sourceRoot":"","sources":["../src/guest-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/lab-config.d.ts
CHANGED
|
@@ -495,6 +495,10 @@ export interface LabExecutionDesktop {
|
|
|
495
495
|
fidelity?: LabDesktopFidelity;
|
|
496
496
|
/** Synthetic media devices behind the browser's own permission prompt (#509). */
|
|
497
497
|
media?: LabDesktopMedia;
|
|
498
|
+
/** Optional retained screen video. Capture is independent of participant media input. */
|
|
499
|
+
recording?: {
|
|
500
|
+
audio: boolean;
|
|
501
|
+
};
|
|
498
502
|
}
|
|
499
503
|
/**
|
|
500
504
|
* A participant with a camera (#509): a property of the ENVIRONMENT, like the screen preset and
|
package/dist/lab-config.js
CHANGED
|
@@ -643,6 +643,10 @@ export function effectiveComputerUseLaneIds(config) {
|
|
|
643
643
|
* topology may not identify the backend that is actually executing.
|
|
644
644
|
*/
|
|
645
645
|
export function desktopMediaValidationReason(config, supportsMedia = routesToComputerUse(config)) {
|
|
646
|
+
if (config.execution?.desktop?.recording !== undefined
|
|
647
|
+
&& (!supportsMedia || config.subject.topology === "shared-world" || config.subject.source === "local-app")) {
|
|
648
|
+
return "execution.desktop.recording is supported only on independent computer-use desktop lanes. Remove the declaration or select a supported route.";
|
|
649
|
+
}
|
|
646
650
|
const media = config.execution?.desktop?.media;
|
|
647
651
|
if (media === undefined)
|
|
648
652
|
return undefined;
|
|
@@ -2229,6 +2233,13 @@ function parseDesktop(raw) {
|
|
|
2229
2233
|
return { ok: true, value: undefined };
|
|
2230
2234
|
}
|
|
2231
2235
|
const desktop = {};
|
|
2236
|
+
if (raw.recording !== undefined) {
|
|
2237
|
+
if (!isRecord(raw.recording) || typeof raw.recording.audio !== "boolean"
|
|
2238
|
+
|| Object.keys(raw.recording).some(key => key !== "audio")) {
|
|
2239
|
+
return invalid("`execution.desktop.recording` must be { audio: true|false }; omit it for snapshots only.");
|
|
2240
|
+
}
|
|
2241
|
+
desktop.recording = { audio: raw.recording.audio };
|
|
2242
|
+
}
|
|
2232
2243
|
if (raw.device !== undefined) {
|
|
2233
2244
|
const device = str(raw.device);
|
|
2234
2245
|
if (!device || !isDevicePresetName(device)) {
|