humanish 0.75.0 → 0.77.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 +30 -11
- package/dist/chrome-cdp-probe.d.ts +34 -2
- package/dist/chrome-cdp-probe.js +291 -56
- package/dist/chrome-cdp-probe.js.map +1 -1
- package/dist/cua-actor-lab.d.ts +35 -1
- package/dist/cua-actor-lab.js +220 -12
- package/dist/cua-actor-lab.js.map +1 -1
- package/dist/e2b-desktop-launch.d.ts +33 -1
- package/dist/e2b-desktop-launch.js +49 -4
- package/dist/e2b-desktop-launch.js.map +1 -1
- package/dist/feedback.d.ts +20 -5
- package/dist/feedback.js +47 -16
- package/dist/feedback.js.map +1 -1
- package/dist/lab-config.d.ts +21 -0
- package/dist/lab-config.js +30 -0
- package/dist/lab-config.js.map +1 -1
- package/dist/openai-responses-cu.d.ts +14 -0
- package/dist/openai-responses-cu.js +55 -2
- package/dist/openai-responses-cu.js.map +1 -1
- package/dist/program.js +26 -8
- package/dist/program.js.map +1 -1
- package/dist/run.d.ts +44 -0
- package/dist/run.js.map +1 -1
- package/dist/telemetry.d.ts +10 -0
- package/dist/telemetry.js +12 -0
- package/dist/telemetry.js.map +1 -1
- package/docs/contracts/schemas.md +4 -2
- package/docs/goals/current.md +39 -2
- package/docs/ramp/README.md +1 -1
- package/package.json +1 -1
|
@@ -152,4 +152,36 @@ export declare function isSandboxNotFoundError(error: unknown): boolean;
|
|
|
152
152
|
* the SDK's `Sandbox.create(template, options)` overload so the lab runs on an adopter's image.
|
|
153
153
|
* The template (when set) is a public-safe label, never a secret.
|
|
154
154
|
*/
|
|
155
|
-
export declare function createDesktopSandbox(module: E2BDesktopModule, options: E2BDesktopCreateOptions, template?: string): Promise<E2BDesktopSandbox>;
|
|
155
|
+
export declare function createDesktopSandbox(module: E2BDesktopModule, options: E2BDesktopCreateOptions, template?: string, retry?: TransientRetryHooks): Promise<E2BDesktopSandbox>;
|
|
156
|
+
/** How a caller hears about the one retry; `sleep` is injectable so tests never wait. */
|
|
157
|
+
export interface TransientRetryHooks {
|
|
158
|
+
onRetry?: (reason: string) => void;
|
|
159
|
+
sleep?: (ms: number) => Promise<void>;
|
|
160
|
+
}
|
|
161
|
+
/** Wall-clock pause before the single retry; envd routing settles within a few seconds. */
|
|
162
|
+
export declare const TRANSIENT_RETRY_DELAY_MS = 3000;
|
|
163
|
+
/**
|
|
164
|
+
* The provider errors worth exactly ONE retry, by the message the SDK throws. Measured
|
|
165
|
+
* 2026-09-04: six lanes created within 100 s lost five to these three shapes, and a probe of the
|
|
166
|
+
* same SDK a minute later created a sandbox, wrote 7 MB into it and killed it in 6 s.
|
|
167
|
+
*
|
|
168
|
+
* - `12: [unimplemented] HTTP 404` and `[unavailable]`: the sandbox exists but its envd is not
|
|
169
|
+
* routable yet, so the first request (the desktop SDK's Xvfb start) hits the proxy instead.
|
|
170
|
+
* - `Cannot read properties of undefined (reading 'envdVersion')` / `Response data is missing`:
|
|
171
|
+
* the create API answered without a body.
|
|
172
|
+
* - `Expected to receive information about written file`: a file write the envd accepted without
|
|
173
|
+
* describing, the same routing gap seen from the upload side.
|
|
174
|
+
* - transport resets (`fetch failed`, `ECONNRESET`, `socket hang up`, 502/503/504).
|
|
175
|
+
*
|
|
176
|
+
* NOT retried: timeouts (the budget is spent), auth (401/403), quota and rate limits (429: a burst
|
|
177
|
+
* that hit the limit should be spaced, not repeated), and anything that names the request as wrong.
|
|
178
|
+
*/
|
|
179
|
+
export declare function isTransientE2BError(error: unknown): boolean;
|
|
180
|
+
/**
|
|
181
|
+
* Run `attempt`; on a transient provider error, say so through `onRetry`, wait, and run it once
|
|
182
|
+
* more. A second failure, or a non-transient first one, propagates as is. The first attempt may
|
|
183
|
+
* have allocated a sandbox this process never learned the id of (the SDK throws after the API
|
|
184
|
+
* call); the provider's own `timeoutMs` on that sandbox is what reclaims it, which the caller's
|
|
185
|
+
* warning should say.
|
|
186
|
+
*/
|
|
187
|
+
export declare function withOneRetryOnTransientE2BError<T>(attempt: () => Promise<T>, hooks?: TransientRetryHooks): Promise<T>;
|
|
@@ -71,9 +71,54 @@ export function isSandboxNotFoundError(error) {
|
|
|
71
71
|
* the SDK's `Sandbox.create(template, options)` overload so the lab runs on an adopter's image.
|
|
72
72
|
* The template (when set) is a public-safe label, never a secret.
|
|
73
73
|
*/
|
|
74
|
-
export async function createDesktopSandbox(module, options, template) {
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
74
|
+
export async function createDesktopSandbox(module, options, template, retry) {
|
|
75
|
+
const create = () => (template === undefined ? module.Sandbox.create(options) : module.Sandbox.create(template, options));
|
|
76
|
+
return withOneRetryOnTransientE2BError(create, retry);
|
|
77
|
+
}
|
|
78
|
+
/** Wall-clock pause before the single retry; envd routing settles within a few seconds. */
|
|
79
|
+
export const TRANSIENT_RETRY_DELAY_MS = 3_000;
|
|
80
|
+
/**
|
|
81
|
+
* The provider errors worth exactly ONE retry, by the message the SDK throws. Measured
|
|
82
|
+
* 2026-09-04: six lanes created within 100 s lost five to these three shapes, and a probe of the
|
|
83
|
+
* same SDK a minute later created a sandbox, wrote 7 MB into it and killed it in 6 s.
|
|
84
|
+
*
|
|
85
|
+
* - `12: [unimplemented] HTTP 404` and `[unavailable]`: the sandbox exists but its envd is not
|
|
86
|
+
* routable yet, so the first request (the desktop SDK's Xvfb start) hits the proxy instead.
|
|
87
|
+
* - `Cannot read properties of undefined (reading 'envdVersion')` / `Response data is missing`:
|
|
88
|
+
* the create API answered without a body.
|
|
89
|
+
* - `Expected to receive information about written file`: a file write the envd accepted without
|
|
90
|
+
* describing, the same routing gap seen from the upload side.
|
|
91
|
+
* - transport resets (`fetch failed`, `ECONNRESET`, `socket hang up`, 502/503/504).
|
|
92
|
+
*
|
|
93
|
+
* NOT retried: timeouts (the budget is spent), auth (401/403), quota and rate limits (429: a burst
|
|
94
|
+
* that hit the limit should be spaced, not repeated), and anything that names the request as wrong.
|
|
95
|
+
*/
|
|
96
|
+
export function isTransientE2BError(error) {
|
|
97
|
+
const message = error instanceof Error ? `${error.name}: ${error.message}` : String(error ?? "");
|
|
98
|
+
if (/timeout|timed out|deadline/i.test(message))
|
|
99
|
+
return false;
|
|
100
|
+
if (/\b(401|403|429)\b|unauthorized|forbidden|rate limit|quota/i.test(message))
|
|
101
|
+
return false;
|
|
102
|
+
return /\[unimplemented\]|\[unavailable\]|HTTP 404|HTTP 50[234]|\b50[234]\b|reading 'envdVersion'|Response data is missing|Expected to receive information about written file|fetch failed|ECONNRESET|ECONNREFUSED|socket hang up|UND_ERR/i.test(message);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Run `attempt`; on a transient provider error, say so through `onRetry`, wait, and run it once
|
|
106
|
+
* more. A second failure, or a non-transient first one, propagates as is. The first attempt may
|
|
107
|
+
* have allocated a sandbox this process never learned the id of (the SDK throws after the API
|
|
108
|
+
* call); the provider's own `timeoutMs` on that sandbox is what reclaims it, which the caller's
|
|
109
|
+
* warning should say.
|
|
110
|
+
*/
|
|
111
|
+
export async function withOneRetryOnTransientE2BError(attempt, hooks) {
|
|
112
|
+
try {
|
|
113
|
+
return await attempt();
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
if (!isTransientE2BError(error))
|
|
117
|
+
throw error;
|
|
118
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
119
|
+
hooks?.onRetry?.(reason);
|
|
120
|
+
await (hooks?.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms))))(TRANSIENT_RETRY_DELAY_MS);
|
|
121
|
+
return attempt();
|
|
122
|
+
}
|
|
78
123
|
}
|
|
79
124
|
//# sourceMappingURL=e2b-desktop-launch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e2b-desktop-launch.js","sourceRoot":"","sources":["../src/e2b-desktop-launch.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,6FAA6F;AAC7F,wFAAwF;AACxF,4FAA4F;AAC5F,UAAU;AACV,EAAE;AACF,+FAA+F;AAC/F,4FAA4F;AAC5F,gGAAgG;AAChG,yFAAyF;AACzF,0FAA0F;AAC1F,aAAa;AAEb,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAwIzC,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,IAAI,CAAC;QACH,OAAO,MAAM,MAAM,CAAC,cAAc,CAAgC,CAAC;IACrE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,6BAA6B,CAAC,KAAK,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,kBAAkB,EAAE;gBAClB,CAAC,CAAC,8FAA8F;sBAC5F,2CAA2C;gBAC/C,CAAC,CAAC,mGAAmG;sBACjG,kGAAkG;sBAClG,gGAAgG;sBAChG,iEAAiE,CACxE,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAGD;;;;;;;GAOG;AACH,SAAS,kBAAkB;IACzB,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,eAAe,GAAG,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAAc;IAC1D,MAAM,KAAK,GAAG,KAA4C,CAAC;IAC3D,OAAO,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;AACnG,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,KAAK,GAAG,KAA6D,CAAC;IAC5E,OAAO,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,sBAAsB,CAAC;AACrG,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAwB,EACxB,OAAgC,EAChC,QAAiB;
|
|
1
|
+
{"version":3,"file":"e2b-desktop-launch.js","sourceRoot":"","sources":["../src/e2b-desktop-launch.ts"],"names":[],"mappings":"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"}
|
package/dist/feedback.d.ts
CHANGED
|
@@ -38,14 +38,29 @@ export interface FeedbackResult {
|
|
|
38
38
|
issueMarkdown?: string;
|
|
39
39
|
issueUrl?: string;
|
|
40
40
|
draft?: FeedbackDraft;
|
|
41
|
+
/** Every usable candidate on the bundle, so a multi-lane study's second and third findings can be
|
|
42
|
+
* chosen with `--candidate` instead of being invisible behind the first (#609). */
|
|
43
|
+
candidates?: FeedbackCandidateSummary[];
|
|
41
44
|
shareSafety?: VerifyResult["shareSafety"];
|
|
42
45
|
error?: {
|
|
43
|
-
code: "HUMANISH_RUN_NOT_FOUND" | "HUMANISH_INVALID_RUN_BUNDLE" | "HUMANISH_INVALID_FEEDBACK_DRAFT" | "HUMANISH_FEEDBACK_SHARE_SAFETY_BLOCKED";
|
|
46
|
+
code: "HUMANISH_RUN_NOT_FOUND" | "HUMANISH_INVALID_RUN_BUNDLE" | "HUMANISH_INVALID_FEEDBACK_DRAFT" | "HUMANISH_FEEDBACK_SHARE_SAFETY_BLOCKED" | "HUMANISH_FEEDBACK_CANDIDATE_NOT_FOUND";
|
|
44
47
|
message: string;
|
|
45
48
|
};
|
|
46
49
|
}
|
|
47
|
-
|
|
48
|
-
export
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
/** One row of `feedback list`: enough to choose a candidate, never the evidence itself. */
|
|
51
|
+
export interface FeedbackCandidateSummary {
|
|
52
|
+
id: string;
|
|
53
|
+
stream_id?: string;
|
|
54
|
+
persona_id: string;
|
|
55
|
+
failure_owner: RunFeedbackCandidate["failure_owner"];
|
|
56
|
+
summary: string;
|
|
57
|
+
}
|
|
58
|
+
export interface FeedbackDraftOptions {
|
|
59
|
+
/** A candidate id from `feedback list`. Absent: the first usable candidate, as before. */
|
|
60
|
+
candidate?: string;
|
|
61
|
+
}
|
|
62
|
+
export declare function draftFeedback(cwdInput: string, runInput: string, options?: FeedbackDraftOptions): Promise<FeedbackResult>;
|
|
63
|
+
export declare function verifyFeedback(cwdInput: string, runInput: string, options?: FeedbackDraftOptions): Promise<FeedbackResult>;
|
|
64
|
+
export declare function renderIssueMarkdown(cwdInput: string, runInput: string, repo: string, options?: FeedbackDraftOptions): Promise<FeedbackResult>;
|
|
65
|
+
export declare function renderIssueUrl(cwdInput: string, runInput: string, repo: string, options?: FeedbackDraftOptions): Promise<FeedbackResult>;
|
|
51
66
|
export declare function listFeedback(cwdInput: string, runInput: string): Promise<FeedbackResult>;
|
package/dist/feedback.js
CHANGED
|
@@ -5,10 +5,21 @@ import { bindExistingRunArtifactPaths, isSafeRunIdSegment, resolveLatestRunDirec
|
|
|
5
5
|
import { bindExistingManagedHumanishOutputDirectory, readContainedRegularFile, writeContainedOutputFile } from "./selected-output-paths.js";
|
|
6
6
|
export const FEEDBACK_SCHEMA = "humanish.feedback.v1";
|
|
7
7
|
export const FEEDBACK_RESULT_SCHEMA = "humanish.feedback-result.v1";
|
|
8
|
-
|
|
9
|
-
return
|
|
8
|
+
function summarizeCandidates(bundle) {
|
|
9
|
+
return bundle.feedbackCandidates
|
|
10
|
+
.filter((item) => isUsableFeedbackCandidate(item))
|
|
11
|
+
.map((item) => ({
|
|
12
|
+
id: item.id,
|
|
13
|
+
...(item.stream_id === undefined ? {} : { stream_id: item.stream_id }),
|
|
14
|
+
persona_id: item.persona_id,
|
|
15
|
+
failure_owner: item.failure_owner,
|
|
16
|
+
summary: item.summary
|
|
17
|
+
}));
|
|
10
18
|
}
|
|
11
|
-
async function
|
|
19
|
+
export async function draftFeedback(cwdInput, runInput, options = {}) {
|
|
20
|
+
return (await draftFeedbackBound(cwdInput, runInput, options)).result;
|
|
21
|
+
}
|
|
22
|
+
async function draftFeedbackBound(cwdInput, runInput, options = {}) {
|
|
12
23
|
const cwd = path.resolve(cwdInput);
|
|
13
24
|
const context = await resolveFeedbackRunContext(cwd, runInput);
|
|
14
25
|
if (!context) {
|
|
@@ -50,7 +61,23 @@ async function draftFeedbackBound(cwdInput, runInput) {
|
|
|
50
61
|
}
|
|
51
62
|
} };
|
|
52
63
|
}
|
|
53
|
-
const
|
|
64
|
+
const candidates = summarizeCandidates(context.loaded.bundle);
|
|
65
|
+
if (options.candidate !== undefined && !candidates.some((item) => item.id === options.candidate)) {
|
|
66
|
+
return { context, result: {
|
|
67
|
+
schema: FEEDBACK_RESULT_SCHEMA,
|
|
68
|
+
ok: false,
|
|
69
|
+
cwd,
|
|
70
|
+
run: runInput,
|
|
71
|
+
candidates,
|
|
72
|
+
error: {
|
|
73
|
+
code: "HUMANISH_FEEDBACK_CANDIDATE_NOT_FOUND",
|
|
74
|
+
message: candidates.length === 0
|
|
75
|
+
? `No feedback candidate on run ${context.storedRunId}; \`--candidate ${options.candidate}\` cannot be drafted.`
|
|
76
|
+
: `No feedback candidate \`${options.candidate}\` on run ${context.storedRunId}. Available: ${candidates.map((item) => item.id).join(", ")}.`
|
|
77
|
+
}
|
|
78
|
+
} };
|
|
79
|
+
}
|
|
80
|
+
const draft = buildDraft(context.loaded.bundle, context.loaded.bundlePath, options.candidate);
|
|
54
81
|
const draftPath = path.join(context.preparedRunPaths.relativeRunRoot, "feedback", "draft.json");
|
|
55
82
|
await writeJson(context.preparedRunPaths, path.join("feedback", "draft.json"), draft);
|
|
56
83
|
return { context, result: {
|
|
@@ -59,14 +86,15 @@ async function draftFeedbackBound(cwdInput, runInput) {
|
|
|
59
86
|
cwd,
|
|
60
87
|
run: runInput,
|
|
61
88
|
draftPath,
|
|
62
|
-
draft
|
|
89
|
+
draft,
|
|
90
|
+
candidates
|
|
63
91
|
} };
|
|
64
92
|
}
|
|
65
|
-
export async function verifyFeedback(cwdInput, runInput) {
|
|
66
|
-
return (await verifyFeedbackBound(cwdInput, runInput)).result;
|
|
93
|
+
export async function verifyFeedback(cwdInput, runInput, options = {}) {
|
|
94
|
+
return (await verifyFeedbackBound(cwdInput, runInput, options)).result;
|
|
67
95
|
}
|
|
68
|
-
async function verifyFeedbackBound(cwdInput, runInput) {
|
|
69
|
-
const drafted = await draftFeedbackBound(cwdInput, runInput);
|
|
96
|
+
async function verifyFeedbackBound(cwdInput, runInput, options = {}) {
|
|
97
|
+
const drafted = await draftFeedbackBound(cwdInput, runInput, options);
|
|
70
98
|
if (!drafted.result.ok || !drafted.result.draft || !drafted.context) {
|
|
71
99
|
return drafted;
|
|
72
100
|
}
|
|
@@ -96,8 +124,8 @@ async function isSafeFeedbackEvidenceFile(context, evidencePath) {
|
|
|
96
124
|
}
|
|
97
125
|
return await readContainedRegularFile(context.preparedRunPaths, relative) !== null;
|
|
98
126
|
}
|
|
99
|
-
export async function renderIssueMarkdown(cwdInput, runInput, repo) {
|
|
100
|
-
const verified = await verifyFeedbackBound(cwdInput, runInput);
|
|
127
|
+
export async function renderIssueMarkdown(cwdInput, runInput, repo, options = {}) {
|
|
128
|
+
const verified = await verifyFeedbackBound(cwdInput, runInput, options);
|
|
101
129
|
if (!verified.result.ok || !verified.result.draft || !verified.result.draftPath || !verified.context) {
|
|
102
130
|
return verified.result;
|
|
103
131
|
}
|
|
@@ -110,8 +138,8 @@ export async function renderIssueMarkdown(cwdInput, runInput, repo) {
|
|
|
110
138
|
issueMarkdown
|
|
111
139
|
};
|
|
112
140
|
}
|
|
113
|
-
export async function renderIssueUrl(cwdInput, runInput, repo) {
|
|
114
|
-
const rendered = await renderIssueMarkdown(cwdInput, runInput, repo);
|
|
141
|
+
export async function renderIssueUrl(cwdInput, runInput, repo, options = {}) {
|
|
142
|
+
const rendered = await renderIssueMarkdown(cwdInput, runInput, repo, options);
|
|
115
143
|
if (!rendered.ok || !rendered.issueMarkdown || !rendered.draft) {
|
|
116
144
|
return rendered;
|
|
117
145
|
}
|
|
@@ -144,7 +172,10 @@ export async function listFeedback(cwdInput, runInput) {
|
|
|
144
172
|
ok: true,
|
|
145
173
|
cwd,
|
|
146
174
|
run: runInput,
|
|
147
|
-
...(draft ? { draftPath, draft } : {})
|
|
175
|
+
...(draft ? { draftPath, draft } : {}),
|
|
176
|
+
// The choice set for `draft --candidate`: a three-participant study has up to three findings,
|
|
177
|
+
// and until #609 only the first ever reached a draft.
|
|
178
|
+
candidates: summarizeCandidates(context.loaded.bundle)
|
|
148
179
|
};
|
|
149
180
|
}
|
|
150
181
|
async function resolveFeedbackRunContext(cwd, runInput) {
|
|
@@ -196,8 +227,8 @@ async function resolveFeedbackRunContext(cwd, runInput) {
|
|
|
196
227
|
await validatePreparedRunArtifactPaths(preparedRunPaths);
|
|
197
228
|
return { cwd, loaded, physicalCwd, preparedRunPaths, storedRunId };
|
|
198
229
|
}
|
|
199
|
-
function buildDraft(bundle, bundlePath) {
|
|
200
|
-
const candidate = bundle.feedbackCandidates.find((item) => isUsableFeedbackCandidate(item));
|
|
230
|
+
function buildDraft(bundle, bundlePath, candidateId) {
|
|
231
|
+
const candidate = bundle.feedbackCandidates.find((item) => isUsableFeedbackCandidate(item) && (candidateId === undefined || item.id === candidateId));
|
|
201
232
|
if (candidate) {
|
|
202
233
|
return {
|
|
203
234
|
schema: FEEDBACK_SCHEMA,
|
package/dist/feedback.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"feedback.js","sourceRoot":"","sources":["../src/feedback.ts"],"names":[],"mappings":"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"}
|
package/dist/lab-config.d.ts
CHANGED
|
@@ -464,6 +464,27 @@ export interface LabExecutionDesktop {
|
|
|
464
464
|
template?: string;
|
|
465
465
|
/** Use the Codex app-server client mode for headed desktop actor surfaces. Consumed (meta). */
|
|
466
466
|
codexAppServer?: boolean;
|
|
467
|
+
/**
|
|
468
|
+
* Mobile fidelity beyond viewport size (#221). With `mobileEmulation: true`, every hosted
|
|
469
|
+
* Chromium computer-use lane ON A MOBILE PRESET (mobile / small-mobile / narrow-mobile) gets
|
|
470
|
+
* CDP device emulation applied to its launch page before the participant arrives; desktop,
|
|
471
|
+
* tablet and wide lanes in the same run are untouched and carry no fidelity block. Applied: the lane's device preset width/height as the CSS viewport, the preset's
|
|
472
|
+
* device pixel ratio (or `deviceScaleFactor`), touch events (`touch`, default true) and a mobile
|
|
473
|
+
* user agent (`userAgent`, default an iPhone Safari string). The bundle records what the page
|
|
474
|
+
* then reported about itself under `desktopGeometry.fidelity`; a browser that cannot be
|
|
475
|
+
* emulated (Firefox) fails the lane closed instead of shipping a desktop run labelled mobile.
|
|
476
|
+
* Applies to the launch tab; a tab the participant opens later is not emulated.
|
|
477
|
+
*/
|
|
478
|
+
fidelity?: LabDesktopFidelity;
|
|
479
|
+
}
|
|
480
|
+
export interface LabDesktopFidelity {
|
|
481
|
+
mobileEmulation: boolean;
|
|
482
|
+
/** Emulated devicePixelRatio; default: the device preset's. */
|
|
483
|
+
deviceScaleFactor?: number;
|
|
484
|
+
/** Emulate touch (coarse pointer, touch events); default true. */
|
|
485
|
+
touch?: boolean;
|
|
486
|
+
/** Full user-agent string to present; default: a mobile Safari string. */
|
|
487
|
+
userAgent?: string;
|
|
467
488
|
}
|
|
468
489
|
export interface LabExecution {
|
|
469
490
|
target?: LabExecutionTarget;
|
package/dist/lab-config.js
CHANGED
|
@@ -976,6 +976,9 @@ function forwardDeclaredWarnings(config) {
|
|
|
976
976
|
inert.push("execution.desktop.device");
|
|
977
977
|
if (!routesToHostedCuaBrowser && config.execution?.desktop?.browser !== undefined)
|
|
978
978
|
inert.push("execution.desktop.browser");
|
|
979
|
+
if (!routesToHostedCuaBrowser && config.execution?.desktop?.fidelity !== undefined) {
|
|
980
|
+
inert.push("execution.desktop.fidelity (mobile emulation is applied only to hosted Chromium computer-use lanes on execution.target: e2b-desktop)");
|
|
981
|
+
}
|
|
979
982
|
if (!routesToCua && config.execution?.desktop?.sandboxTimeoutMs !== undefined)
|
|
980
983
|
inert.push("execution.desktop.sandboxTimeoutMs");
|
|
981
984
|
// execution.desktop.template (the custom E2B desktop image) is consumed ONLY where a desktop is
|
|
@@ -2091,6 +2094,33 @@ function parseDesktop(raw) {
|
|
|
2091
2094
|
}
|
|
2092
2095
|
if (typeof raw.codexAppServer === "boolean")
|
|
2093
2096
|
desktop.codexAppServer = raw.codexAppServer;
|
|
2097
|
+
if (raw.fidelity !== undefined) {
|
|
2098
|
+
if (!isRecord(raw.fidelity) || typeof raw.fidelity.mobileEmulation !== "boolean") {
|
|
2099
|
+
return invalid("`execution.desktop.fidelity` must be an object with `mobileEmulation: true|false` (optional deviceScaleFactor, touch, userAgent).");
|
|
2100
|
+
}
|
|
2101
|
+
const fidelity = { mobileEmulation: raw.fidelity.mobileEmulation };
|
|
2102
|
+
if (raw.fidelity.deviceScaleFactor !== undefined) {
|
|
2103
|
+
const scale = raw.fidelity.deviceScaleFactor;
|
|
2104
|
+
if (typeof scale !== "number" || !Number.isFinite(scale) || scale <= 0 || scale > 4) {
|
|
2105
|
+
return invalid("`execution.desktop.fidelity.deviceScaleFactor` must be a number greater than 0 and at most 4.");
|
|
2106
|
+
}
|
|
2107
|
+
fidelity.deviceScaleFactor = scale;
|
|
2108
|
+
}
|
|
2109
|
+
if (raw.fidelity.touch !== undefined) {
|
|
2110
|
+
if (typeof raw.fidelity.touch !== "boolean") {
|
|
2111
|
+
return invalid("`execution.desktop.fidelity.touch` must be true or false.");
|
|
2112
|
+
}
|
|
2113
|
+
fidelity.touch = raw.fidelity.touch;
|
|
2114
|
+
}
|
|
2115
|
+
if (raw.fidelity.userAgent !== undefined) {
|
|
2116
|
+
const userAgent = str(raw.fidelity.userAgent);
|
|
2117
|
+
if (userAgent === undefined) {
|
|
2118
|
+
return invalid("`execution.desktop.fidelity.userAgent` must be a non-empty string when set.");
|
|
2119
|
+
}
|
|
2120
|
+
fidelity.userAgent = userAgent;
|
|
2121
|
+
}
|
|
2122
|
+
desktop.fidelity = fidelity;
|
|
2123
|
+
}
|
|
2094
2124
|
return { ok: true, value: Object.keys(desktop).length > 0 ? desktop : undefined };
|
|
2095
2125
|
}
|
|
2096
2126
|
function parsePersonas(raw) {
|