codeloop-mcp-server 0.1.88 → 0.1.95
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 -0
- package/dist/evidence/change_coverage.d.ts +41 -0
- package/dist/evidence/change_coverage.d.ts.map +1 -1
- package/dist/evidence/change_coverage.js +69 -2
- package/dist/evidence/change_coverage.js.map +1 -1
- package/dist/evidence/interaction_coverage.d.ts.map +1 -1
- package/dist/evidence/interaction_coverage.js +2 -0
- package/dist/evidence/interaction_coverage.js.map +1 -1
- package/dist/evidence/interaction_evidence.d.ts +38 -0
- package/dist/evidence/interaction_evidence.d.ts.map +1 -1
- package/dist/evidence/interaction_evidence.js +60 -0
- package/dist/evidence/interaction_evidence.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +311 -57
- package/dist/index.js.map +1 -1
- package/dist/runners/active_target.d.ts +31 -0
- package/dist/runners/active_target.d.ts.map +1 -0
- package/dist/runners/active_target.js +65 -0
- package/dist/runners/active_target.js.map +1 -0
- package/dist/runners/android_sdk.d.ts +50 -0
- package/dist/runners/android_sdk.d.ts.map +1 -0
- package/dist/runners/android_sdk.js +123 -0
- package/dist/runners/android_sdk.js.map +1 -0
- package/dist/runners/app_launcher.d.ts +59 -1
- package/dist/runners/app_launcher.d.ts.map +1 -1
- package/dist/runners/app_launcher.js +184 -33
- package/dist/runners/app_launcher.js.map +1 -1
- package/dist/runners/app_logger.d.ts +1 -1
- package/dist/runners/app_logger.d.ts.map +1 -1
- package/dist/runners/app_logger.js +9 -8
- package/dist/runners/app_logger.js.map +1 -1
- package/dist/runners/device_probe.d.ts +18 -0
- package/dist/runners/device_probe.d.ts.map +1 -1
- package/dist/runners/device_probe.js +52 -22
- package/dist/runners/device_probe.js.map +1 -1
- package/dist/runners/interaction_engine.d.ts +6 -0
- package/dist/runners/interaction_engine.d.ts.map +1 -1
- package/dist/runners/interaction_engine.js +71 -21
- package/dist/runners/interaction_engine.js.map +1 -1
- package/dist/runners/ios_sim_input.d.ts +106 -0
- package/dist/runners/ios_sim_input.d.ts.map +1 -0
- package/dist/runners/ios_sim_input.js +453 -0
- package/dist/runners/ios_sim_input.js.map +1 -0
- package/dist/runners/journey_to_maestro.d.ts +27 -0
- package/dist/runners/journey_to_maestro.d.ts.map +1 -1
- package/dist/runners/journey_to_maestro.js +54 -0
- package/dist/runners/journey_to_maestro.js.map +1 -1
- package/dist/runners/logging_readiness.d.ts.map +1 -1
- package/dist/runners/logging_readiness.js +38 -7
- package/dist/runners/logging_readiness.js.map +1 -1
- package/dist/runners/maestro.d.ts +27 -2
- package/dist/runners/maestro.d.ts.map +1 -1
- package/dist/runners/maestro.js +57 -7
- package/dist/runners/maestro.js.map +1 -1
- package/dist/runners/maestro_generator.d.ts +1 -1
- package/dist/runners/maestro_generator.d.ts.map +1 -1
- package/dist/runners/maestro_generator.js +3 -2
- package/dist/runners/maestro_generator.js.map +1 -1
- package/dist/runners/screenshot.d.ts +6 -0
- package/dist/runners/screenshot.d.ts.map +1 -1
- package/dist/runners/screenshot.js +20 -10
- package/dist/runners/screenshot.js.map +1 -1
- package/dist/runners/semantics_audit.d.ts +32 -0
- package/dist/runners/semantics_audit.d.ts.map +1 -0
- package/dist/runners/semantics_audit.js +140 -0
- package/dist/runners/semantics_audit.js.map +1 -0
- package/dist/runners/video_recorder.d.ts +3 -1
- package/dist/runners/video_recorder.d.ts.map +1 -1
- package/dist/runners/video_recorder.js +44 -12
- package/dist/runners/video_recorder.js.map +1 -1
- package/dist/runners/wayland.d.ts +32 -0
- package/dist/runners/wayland.d.ts.map +1 -0
- package/dist/runners/wayland.js +49 -0
- package/dist/runners/wayland.js.map +1 -0
- package/dist/runners/window_manager.d.ts +55 -25
- package/dist/runners/window_manager.d.ts.map +1 -1
- package/dist/runners/window_manager.js +171 -71
- package/dist/runners/window_manager.js.map +1 -1
- package/dist/tools/discover_interactions.d.ts +22 -0
- package/dist/tools/discover_interactions.d.ts.map +1 -1
- package/dist/tools/discover_interactions.js +283 -6
- package/dist/tools/discover_interactions.js.map +1 -1
- package/dist/tools/discover_screens.d.ts +2 -0
- package/dist/tools/discover_screens.d.ts.map +1 -1
- package/dist/tools/discover_screens.js +139 -1
- package/dist/tools/discover_screens.js.map +1 -1
- package/dist/tools/gate_check.d.ts.map +1 -1
- package/dist/tools/gate_check.js +16 -2
- package/dist/tools/gate_check.js.map +1 -1
- package/dist/tools/plan_change_journey.d.ts.map +1 -1
- package/dist/tools/plan_change_journey.js +15 -2
- package/dist/tools/plan_change_journey.js.map +1 -1
- package/dist/tools/plan_user_journey.d.ts.map +1 -1
- package/dist/tools/plan_user_journey.js +5 -2
- package/dist/tools/plan_user_journey.js.map +1 -1
- package/dist/tools/run_journey.d.ts +70 -0
- package/dist/tools/run_journey.d.ts.map +1 -1
- package/dist/tools/run_journey.js +209 -21
- package/dist/tools/run_journey.js.map +1 -1
- package/dist/tools/verify.d.ts.map +1 -1
- package/dist/tools/verify.js +55 -11
- package/dist/tools/verify.js.map +1 -1
- package/package.json +2 -2
|
@@ -75,6 +75,14 @@ export function flattenJourneyToSteps(plan, target) {
|
|
|
75
75
|
export async function runJourney(opts) {
|
|
76
76
|
const { cwd } = opts;
|
|
77
77
|
const notes = [];
|
|
78
|
+
// P5.5 — phase progress emitter (never throws into the journey).
|
|
79
|
+
const journeyStartedAt = Date.now();
|
|
80
|
+
const progress = (phase, detail) => {
|
|
81
|
+
try {
|
|
82
|
+
opts.onProgress?.({ phase, detail, elapsedMs: Date.now() - journeyStartedAt });
|
|
83
|
+
}
|
|
84
|
+
catch { /* progress is best-effort */ }
|
|
85
|
+
};
|
|
78
86
|
// No mode gate: launching + driving the app is VERIFICATION, not a code
|
|
79
87
|
// modification, so the journey runs in every mode. A "don't modify my code"
|
|
80
88
|
// request only pauses the agent's source edits — CodeLoop must still produce
|
|
@@ -97,6 +105,7 @@ export async function runJourney(opts) {
|
|
|
97
105
|
const { detectTargetType } = await import("../runners/platform_detect.js");
|
|
98
106
|
target = (await detectTargetType(cwd));
|
|
99
107
|
}
|
|
108
|
+
progress("Target resolved", target);
|
|
100
109
|
const runId = `journey_${Date.now()}`;
|
|
101
110
|
const runDir = join(cwd, "artifacts", "runs", runId);
|
|
102
111
|
const screensDir = join(runDir, "screenshots");
|
|
@@ -120,16 +129,18 @@ export async function runJourney(opts) {
|
|
|
120
129
|
// app won't launch, CodeLoop tries the alternate platform once before giving
|
|
121
130
|
// up — so a single broken platform no longer means "0 screenshots".
|
|
122
131
|
const primary = target;
|
|
132
|
+
progress("Booting device + launching app", primary);
|
|
123
133
|
let outcome = await attemptMobileTarget(primary, {
|
|
124
|
-
cwd, runDir, mode, e2e: opts.e2e, dp, launchApp, notes,
|
|
134
|
+
cwd, runDir, mode, e2e: opts.e2e, dp, launchApp, notes, onProgress: progress,
|
|
125
135
|
});
|
|
126
136
|
if (!outcome.ok) {
|
|
127
|
-
const alt = alternateMobileTarget(primary, cwd);
|
|
137
|
+
const alt = opts.disableMobileFallback ? undefined : alternateMobileTarget(primary, cwd);
|
|
128
138
|
if (alt) {
|
|
129
139
|
notes.push(`Primary mobile target ${primary} ${outcome.status === "device_required" ? "had no device" : "failed to launch"} — ` +
|
|
130
140
|
`falling back to ${alt}.`);
|
|
141
|
+
progress("Falling back to alternate mobile target", alt);
|
|
131
142
|
const altOutcome = await attemptMobileTarget(alt, {
|
|
132
|
-
cwd, runDir, mode, e2e: opts.e2e, dp, launchApp, notes,
|
|
143
|
+
cwd, runDir, mode, e2e: opts.e2e, dp, launchApp, notes, onProgress: progress,
|
|
133
144
|
});
|
|
134
145
|
if (altOutcome.ok) {
|
|
135
146
|
target = alt;
|
|
@@ -156,6 +167,15 @@ export async function runJourney(opts) {
|
|
|
156
167
|
}
|
|
157
168
|
booted = outcome.booted;
|
|
158
169
|
appStop = outcome.appStop;
|
|
170
|
+
// Persist the pinned device so follow-up codeloop_interact / screenshot
|
|
171
|
+
// calls (which may arrive after this run returns) hit the SAME device.
|
|
172
|
+
if (booted?.device) {
|
|
173
|
+
try {
|
|
174
|
+
const { saveActiveTarget } = await import("../runners/active_target.js");
|
|
175
|
+
saveActiveTarget(cwd, { target_type: target, device_id: booted.device });
|
|
176
|
+
}
|
|
177
|
+
catch { /* best-effort */ }
|
|
178
|
+
}
|
|
159
179
|
// Bring the device window frontmost so screenshots capture the APP, not the IDE.
|
|
160
180
|
try {
|
|
161
181
|
const { bringDeviceToFront } = await import("../runners/launch_liveness.js");
|
|
@@ -178,10 +198,18 @@ export async function runJourney(opts) {
|
|
|
178
198
|
// A Flutter desktop app launches via `flutter run -d <macos|windows|linux>`;
|
|
179
199
|
// a non-Flutter desktop app uses the configured window/process name.
|
|
180
200
|
if (isFlutterProject(cwd)) {
|
|
201
|
+
progress("Building + launching desktop app");
|
|
181
202
|
const prep = await prepareMobileBuildSafe({ cwd, target, mode, logPath: join(runDir, "logs", "build_prep.log") });
|
|
182
203
|
if (prep.directive)
|
|
183
204
|
notes.push(prep.directive);
|
|
184
|
-
const launch = await launchApp({
|
|
205
|
+
const launch = await launchApp({
|
|
206
|
+
cwd,
|
|
207
|
+
target,
|
|
208
|
+
logPath: join(runDir, "logs", "app_launch.log"),
|
|
209
|
+
readyTimeoutMs: opts.e2e?.launch_timeout_seconds ? opts.e2e.launch_timeout_seconds * 1000 : undefined,
|
|
210
|
+
stallTimeoutMs: opts.e2e?.launch_stall_seconds ? opts.e2e.launch_stall_seconds * 1000 : undefined,
|
|
211
|
+
onProgress: (u) => progress("Building + launching desktop app", `${Math.round(u.elapsedMs / 1000)}s — ${u.lastLine}`),
|
|
212
|
+
});
|
|
185
213
|
notes.push(`App launch: ${launch.method} → ${launch.launched ? "launched" : "NOT launched"}${launch.reason ? ` (${launch.reason})` : ""}`);
|
|
186
214
|
if (!launch.launched) {
|
|
187
215
|
const authSuffix = await cliAuthSuffix(`${launch.reason ?? ""}\n${launch.error_excerpt ?? ""}`);
|
|
@@ -217,6 +245,7 @@ export async function runJourney(opts) {
|
|
|
217
245
|
}
|
|
218
246
|
}
|
|
219
247
|
// 4. Plan the journey.
|
|
248
|
+
progress("Planning journey");
|
|
220
249
|
const { planUserJourney } = await import("./plan_user_journey.js");
|
|
221
250
|
let plan;
|
|
222
251
|
try {
|
|
@@ -231,7 +260,7 @@ export async function runJourney(opts) {
|
|
|
231
260
|
const appName = opts.targetApp ?? (await import("../runners/browser_interaction.js")).getBrowserAppName() ?? "app";
|
|
232
261
|
try {
|
|
233
262
|
const vr = await import("../runners/video_recorder.js");
|
|
234
|
-
const handle = await vr.startBackgroundRecording(join(runDir, "video"), appName, opts.maxDurationSeconds ?? 180, target);
|
|
263
|
+
const handle = await vr.startBackgroundRecording(join(runDir, "video"), appName, opts.maxDurationSeconds ?? 180, target, booted?.device);
|
|
235
264
|
if (!("error" in handle)) {
|
|
236
265
|
recordingId = handle.recording_id;
|
|
237
266
|
videoPath = handle.output_path;
|
|
@@ -260,6 +289,7 @@ export async function runJourney(opts) {
|
|
|
260
289
|
if (isMobile) {
|
|
261
290
|
// Opt-in high-fidelity path first, when requested for a Flutter project.
|
|
262
291
|
if (opts.e2e?.flutter_driver && isFlutterProject(cwd) && booted?.device) {
|
|
292
|
+
progress("Driving interactions", "Flutter integration_test driver");
|
|
263
293
|
const driverFlow = await driveMobileWithFlutterDriver({ cwd, plan, device: booted.device, runDir });
|
|
264
294
|
if (driverFlow) {
|
|
265
295
|
mobileFlow = driverFlow;
|
|
@@ -272,29 +302,44 @@ export async function runJourney(opts) {
|
|
|
272
302
|
}
|
|
273
303
|
// Default Maestro path (also the fallback when the opt-in driver didn't run).
|
|
274
304
|
if (!mobileFlow) {
|
|
275
|
-
|
|
305
|
+
progress("Driving interactions", "Maestro label-based flow");
|
|
306
|
+
const maestroFlow = (await driveMobileWithMaestro({ cwd, target, plan, runDir, device: booted?.device, appIdOverride: target === "android_emulator" ? opts.e2e?.android_app_id : undefined })) ?? undefined;
|
|
276
307
|
if (maestroFlow) {
|
|
277
308
|
mobileFlow = maestroFlow;
|
|
278
309
|
screenshots.push(...maestroFlow.screenshots);
|
|
279
310
|
notes.push(`Mobile interactions via Maestro: ${maestroFlow.passed}/${maestroFlow.flows} flow(s) passed (appId=${maestroFlow.app_id ?? "?"}).`);
|
|
311
|
+
// P0.4: surface toolchain/generation problems (flows 0 = nothing ran).
|
|
312
|
+
if (maestroFlow.flows === 0 && maestroFlow.detail)
|
|
313
|
+
notes.push(`Maestro did not drive: ${maestroFlow.detail}`);
|
|
280
314
|
}
|
|
281
315
|
else {
|
|
282
|
-
|
|
316
|
+
const { maestroInstallDirective } = await import("../runners/maestro.js");
|
|
317
|
+
manual.push(`${maestroInstallDirective()} Falling back to coordinate/blind driving for this run.`);
|
|
283
318
|
mobileFlow = { engine: "coordinate", flows: 0, passed: 0, failed: 0, screenshots: [], detail: "Maestro not installed — coordinate fallback." };
|
|
284
319
|
}
|
|
285
320
|
}
|
|
286
321
|
}
|
|
287
|
-
// Coordinate per-step driving: browser/desktop always
|
|
288
|
-
//
|
|
289
|
-
|
|
322
|
+
// Coordinate per-step driving: browser/desktop always. Mobile: only when the
|
|
323
|
+
// label engine FULLY drove the journey (P0.4) — a failed or zero-flow Maestro/
|
|
324
|
+
// driver run keeps its screenshots AND hands the steps to the now-real
|
|
325
|
+
// coordinate engine (P0.1) instead of ending the drive.
|
|
326
|
+
const labelEngineDrove = isMobile &&
|
|
327
|
+
(mobileFlow?.engine === "maestro" || mobileFlow?.engine === "flutter_driver") &&
|
|
328
|
+
(mobileFlow?.flows ?? 0) > 0 &&
|
|
329
|
+
(mobileFlow?.failed ?? 0) === 0;
|
|
330
|
+
const runCoordinateSteps = !labelEngineDrove;
|
|
331
|
+
if (isMobile && !labelEngineDrove && (mobileFlow?.failed ?? 0) > 0) {
|
|
332
|
+
notes.push(`Maestro flow failed — keeping its screenshots and driving the remaining steps with the coordinate engine (fallback, P0.4).`);
|
|
333
|
+
}
|
|
290
334
|
let i = 0;
|
|
291
335
|
for (const { source, step } of runCoordinateSteps ? engineSteps : []) {
|
|
292
|
-
|
|
336
|
+
progress("Driving steps (coordinate engine)", `step ${i + 1}/${engineSteps.length}: ${step.action}`);
|
|
337
|
+
const res = await executeInteraction(step, { target, app_name: opts.targetApp, device: booted?.device });
|
|
293
338
|
if (res.unsupported)
|
|
294
339
|
unsupported += 1;
|
|
295
340
|
let shot;
|
|
296
341
|
try {
|
|
297
|
-
const cap = await captureScreenshot(screensDir, `step_${i}`, opts.targetApp, target, { desktopAppMode: target === "desktop" });
|
|
342
|
+
const cap = await captureScreenshot(screensDir, `step_${i}`, opts.targetApp, target, { desktopAppMode: target === "desktop", device: booted?.device });
|
|
298
343
|
if (cap.captured && cap.paths.length) {
|
|
299
344
|
shot = cap.paths[0];
|
|
300
345
|
screenshots.push(shot);
|
|
@@ -317,6 +362,7 @@ export async function runJourney(opts) {
|
|
|
317
362
|
i += 1;
|
|
318
363
|
}
|
|
319
364
|
// 7. Full screen coverage (A6) — visit every discovered screen + screenshot.
|
|
365
|
+
progress("Capturing screens");
|
|
320
366
|
const screensCaptured = [];
|
|
321
367
|
try {
|
|
322
368
|
const { discoverScreens } = await import("./discover_screens.js");
|
|
@@ -330,7 +376,7 @@ export async function runJourney(opts) {
|
|
|
330
376
|
await bi.browserNavigate(base + (screen.route.startsWith("/") ? screen.route : "/" + screen.route));
|
|
331
377
|
await new Promise((r) => setTimeout(r, 1500));
|
|
332
378
|
}
|
|
333
|
-
const cap = await captureScreenshot(screensDir, `screen_${screen.name}`, opts.targetApp, target, { desktopAppMode: target === "desktop" });
|
|
379
|
+
const cap = await captureScreenshot(screensDir, `screen_${screen.name}`, opts.targetApp, target, { desktopAppMode: target === "desktop", device: booted?.device });
|
|
334
380
|
if (cap.captured && cap.paths.length) {
|
|
335
381
|
screenshots.push(...cap.paths);
|
|
336
382
|
screensCaptured.push(screen.name);
|
|
@@ -343,6 +389,7 @@ export async function runJourney(opts) {
|
|
|
343
389
|
notes.push(`Screen discovery skipped: ${e.message}`);
|
|
344
390
|
}
|
|
345
391
|
// 8. Stop recording, then quit the launched app.
|
|
392
|
+
progress("Finalizing", "stopping recording + app teardown");
|
|
346
393
|
if (recordingId) {
|
|
347
394
|
try {
|
|
348
395
|
const vr = await import("../runners/video_recorder.js");
|
|
@@ -402,6 +449,8 @@ export async function runJourney(opts) {
|
|
|
402
449
|
return {
|
|
403
450
|
status: "completed",
|
|
404
451
|
target_type: target,
|
|
452
|
+
run_id: runId,
|
|
453
|
+
run_dir: runDir,
|
|
405
454
|
booted,
|
|
406
455
|
plan_summary: plan.project_summary,
|
|
407
456
|
recording_id: recordingId,
|
|
@@ -416,6 +465,88 @@ export async function runJourney(opts) {
|
|
|
416
465
|
notes,
|
|
417
466
|
};
|
|
418
467
|
}
|
|
468
|
+
/**
|
|
469
|
+
* P5.3 (0.1.94) — normalize the `e2e.platforms` list into journey targets:
|
|
470
|
+
* synonyms per entry ("ios" → ios_simulator, "android" → android_emulator,
|
|
471
|
+
* "web" → browser), order preserved, duplicates and unrecognized values
|
|
472
|
+
* dropped (a typo skips that entry rather than crashing the run).
|
|
473
|
+
*/
|
|
474
|
+
export function normalizeE2ePlatforms(platforms) {
|
|
475
|
+
const out = [];
|
|
476
|
+
for (const p of platforms ?? []) {
|
|
477
|
+
const t = normalizeConfigTarget(String(p));
|
|
478
|
+
if (t && !out.includes(t))
|
|
479
|
+
out.push(t);
|
|
480
|
+
}
|
|
481
|
+
return out;
|
|
482
|
+
}
|
|
483
|
+
/**
|
|
484
|
+
* P5.3 (0.1.94) — run the journey on EVERY configured platform sequentially,
|
|
485
|
+
* each leg with its own boot + launch + drive + screenshots + video evidence.
|
|
486
|
+
*
|
|
487
|
+
* Resolution: an explicit opts.targetType always wins (single run — the
|
|
488
|
+
* one-off "test the other platform" call). Otherwise `e2e.platforms` with 2+
|
|
489
|
+
* entries triggers the loop; 1 entry pins that platform; empty/missing falls
|
|
490
|
+
* through to the existing single-run path (e2e.target / auto-detection).
|
|
491
|
+
*
|
|
492
|
+
* After a multi run, an AGGREGATE interaction-evidence record (per_platform
|
|
493
|
+
* breakdown) is written into the newest completed leg's run dir so the
|
|
494
|
+
* interaction_evidence gate sees ALL legs — a launch_failed platform blocks
|
|
495
|
+
* the gate honestly instead of being shadowed by the other platform's pass.
|
|
496
|
+
*/
|
|
497
|
+
export async function runJourneyForPlatforms(opts) {
|
|
498
|
+
const platforms = opts.targetType ? [] : normalizeE2ePlatforms(opts.e2e?.platforms);
|
|
499
|
+
if (platforms.length === 0) {
|
|
500
|
+
const result = await runJourney(opts);
|
|
501
|
+
return { multi: false, outcomes: [{ platform: result.target_type, result }] };
|
|
502
|
+
}
|
|
503
|
+
if (platforms.length === 1) {
|
|
504
|
+
const result = await runJourney({ ...opts, targetType: platforms[0] });
|
|
505
|
+
return { multi: false, outcomes: [{ platform: platforms[0], result }] };
|
|
506
|
+
}
|
|
507
|
+
const outcomes = [];
|
|
508
|
+
for (const p of platforms) {
|
|
509
|
+
const result = await runJourney({
|
|
510
|
+
...opts,
|
|
511
|
+
targetType: p,
|
|
512
|
+
disableMobileFallback: true,
|
|
513
|
+
onProgress: opts.onProgress
|
|
514
|
+
? (u) => opts.onProgress({ ...u, phase: `[${p}] ${u.phase}` })
|
|
515
|
+
: undefined,
|
|
516
|
+
});
|
|
517
|
+
outcomes.push({ platform: p, result });
|
|
518
|
+
}
|
|
519
|
+
// Aggregate evidence — written LAST so its mtime makes it the record the
|
|
520
|
+
// gate's newest-lookup finds.
|
|
521
|
+
try {
|
|
522
|
+
const completed = outcomes.filter((o) => o.result.status === "completed" && o.result.run_dir);
|
|
523
|
+
const evidenceDir = completed[completed.length - 1]?.result.run_dir;
|
|
524
|
+
if (evidenceDir) {
|
|
525
|
+
const { writeInteractionEvidence } = await import("../evidence/interaction_evidence.js");
|
|
526
|
+
writeInteractionEvidence(evidenceDir, {
|
|
527
|
+
generated_at: new Date().toISOString(),
|
|
528
|
+
source: "run_journey",
|
|
529
|
+
target: outcomes.map((o) => o.platform).join("+"),
|
|
530
|
+
driven_steps: outcomes.reduce((n, o) => n +
|
|
531
|
+
o.result.steps.length +
|
|
532
|
+
(o.result.mobile_flow && o.result.mobile_flow.engine !== "coordinate" ? o.result.mobile_flow.flows : 0), 0),
|
|
533
|
+
screenshots: outcomes.reduce((n, o) => n + o.result.screenshots.length, 0),
|
|
534
|
+
per_platform: outcomes.map((o) => ({
|
|
535
|
+
target: o.platform,
|
|
536
|
+
status: o.result.status,
|
|
537
|
+
driven_steps: o.result.steps.length +
|
|
538
|
+
(o.result.mobile_flow && o.result.mobile_flow.engine !== "coordinate" ? o.result.mobile_flow.flows : 0),
|
|
539
|
+
screenshots: o.result.screenshots.length,
|
|
540
|
+
mobile_engine: o.result.mobile_flow?.engine,
|
|
541
|
+
mobile_flows_passed: o.result.mobile_flow?.passed,
|
|
542
|
+
mobile_flows_total: o.result.mobile_flow?.flows,
|
|
543
|
+
})),
|
|
544
|
+
});
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
catch { /* best-effort */ }
|
|
548
|
+
return { multi: true, outcomes };
|
|
549
|
+
}
|
|
419
550
|
/**
|
|
420
551
|
* Drive the FULL label-based interaction suite on a booted mobile device via
|
|
421
552
|
* Maestro: translate the journey plan into Maestro steps, generate a flow with
|
|
@@ -423,18 +554,40 @@ export async function runJourney(opts) {
|
|
|
423
554
|
* the caller can fall back to the coordinate engine.
|
|
424
555
|
*/
|
|
425
556
|
async function driveMobileWithMaestro(args) {
|
|
426
|
-
const { cwd, target, plan, runDir } = args;
|
|
427
|
-
const { isMaestroInstalled } = await import("../runners/maestro.js");
|
|
557
|
+
const { cwd, target, plan, runDir, device } = args;
|
|
558
|
+
const { isMaestroInstalled, maestroPreflight, maestroRunEnv } = await import("../runners/maestro.js");
|
|
428
559
|
if (!(await isMaestroInstalled()))
|
|
429
560
|
return null;
|
|
561
|
+
// P0.4 — Maestro is a JVM CLI: catch a missing/broken Java HERE with a
|
|
562
|
+
// per-OS directive instead of a cryptic mid-flow launcher failure.
|
|
563
|
+
const preflight = await maestroPreflight();
|
|
564
|
+
if (!preflight.ok) {
|
|
565
|
+
return {
|
|
566
|
+
engine: "maestro",
|
|
567
|
+
flows: 0,
|
|
568
|
+
passed: 0,
|
|
569
|
+
failed: 0,
|
|
570
|
+
screenshots: [],
|
|
571
|
+
detail: preflight.directive ?? "Maestro toolchain preflight failed.",
|
|
572
|
+
};
|
|
573
|
+
}
|
|
430
574
|
const { journeyToMaestroSteps } = await import("../runners/journey_to_maestro.js");
|
|
431
575
|
const { generateMaestroFlow } = await import("../runners/maestro_generator.js");
|
|
432
576
|
const { resolveMobileAppId } = await import("../runners/mobile_app_id.js");
|
|
433
577
|
const { runCommand } = await import("../runners/base.js");
|
|
434
578
|
const { MAESTRO_TIMEOUT_MS } = await import("../runners/test_watchdog.js");
|
|
435
|
-
|
|
579
|
+
// P1.5 (0.1.92) — feed discovered screens into the flow so it BREADTH-visits
|
|
580
|
+
// every screen (optional nav tap + scroll pass + back), not just the entity
|
|
581
|
+
// arcs. Static scan, best-effort: discovery failure just means no breadth.
|
|
436
582
|
const platformName = target === "android_emulator" ? "android" : "ios";
|
|
437
|
-
|
|
583
|
+
let screens = [];
|
|
584
|
+
try {
|
|
585
|
+
const { discoverScreens } = await import("./discover_screens.js");
|
|
586
|
+
screens = discoverScreens(cwd, "auto").screens;
|
|
587
|
+
}
|
|
588
|
+
catch { /* best-effort */ }
|
|
589
|
+
const steps = journeyToMaestroSteps(plan, { screens, platform: platformName });
|
|
590
|
+
const appId = args.appIdOverride ?? resolveMobileAppId(cwd, platformName) ?? undefined;
|
|
438
591
|
if (steps.length === 0) {
|
|
439
592
|
return { engine: "maestro", flows: 0, passed: 0, failed: 0, app_id: appId, screenshots: [], detail: "Journey produced no label-drivable steps." };
|
|
440
593
|
}
|
|
@@ -448,7 +601,13 @@ async function driveMobileWithMaestro(args) {
|
|
|
448
601
|
mkdirSync(outDir, { recursive: true });
|
|
449
602
|
}
|
|
450
603
|
catch { /* best-effort */ }
|
|
451
|
-
|
|
604
|
+
// `--udid` (root-level flag, alias --device) pins the run to the device the
|
|
605
|
+
// journey booted — without it Maestro picks its own device when several are
|
|
606
|
+
// connected. Works for both adb serials and simulator UDIDs.
|
|
607
|
+
const res = await runCommand("maestro", [...(device ? ["--udid", device] : []), "test", "--test-output-dir", outDir, gen.flowPath], cwd, join(runDir, "logs", "maestro.log"),
|
|
608
|
+
// First iOS run installs + boots the XCTest driver — needs a longer
|
|
609
|
+
// driver-startup window than Maestro's default.
|
|
610
|
+
maestroRunEnv(), MAESTRO_TIMEOUT_MS);
|
|
452
611
|
const passed = res.exit_code === 0;
|
|
453
612
|
const screenshots = collectPngs(outDir);
|
|
454
613
|
let detail = "Maestro flow passed";
|
|
@@ -458,6 +617,7 @@ async function driveMobileWithMaestro(args) {
|
|
|
458
617
|
detail = failures.length > 0
|
|
459
618
|
? `Maestro could not match: ${failures.join("; ")} (likely unlabeled widgets — add Semantics labels or enable e2e.flutter_driver).`
|
|
460
619
|
: (res.stdout + res.stderr).split("\n").filter(Boolean).slice(-20).join("\n");
|
|
620
|
+
detail = `[device ${device ?? "auto"}, flow ${gen.flowPath}] ${detail}`;
|
|
461
621
|
}
|
|
462
622
|
return {
|
|
463
623
|
engine: "maestro",
|
|
@@ -595,6 +755,12 @@ function normalizeConfigTarget(v) {
|
|
|
595
755
|
*/
|
|
596
756
|
async function attemptMobileTarget(target, deps) {
|
|
597
757
|
const { cwd, runDir, mode, e2e, dp, launchApp, notes } = deps;
|
|
758
|
+
const emit = (phase, detail) => {
|
|
759
|
+
try {
|
|
760
|
+
deps.onProgress?.(phase, detail);
|
|
761
|
+
}
|
|
762
|
+
catch { /* best-effort */ }
|
|
763
|
+
};
|
|
598
764
|
const platformName = target === "android_emulator" ? "android" : "ios";
|
|
599
765
|
// A connected PHYSICAL device (or an explicit, already-running e2e.device_id)
|
|
600
766
|
// needs no boot — launch directly on it.
|
|
@@ -606,10 +772,13 @@ async function attemptMobileTarget(target, deps) {
|
|
|
606
772
|
notes.push(`Device (${target}): ${existing.reason}.`);
|
|
607
773
|
}
|
|
608
774
|
else if (wantBoot) {
|
|
775
|
+
emit(`Booting ${platformName} device`, "cold boots can take minutes on first run");
|
|
609
776
|
const r = await dp.bootDevice({
|
|
610
777
|
platform: platformName,
|
|
611
778
|
avd: e2e?.android_avd ?? e2e?.device_id,
|
|
612
779
|
iosDevice: e2e?.ios_device ?? e2e?.device_id,
|
|
780
|
+
// P0.2 — config-aware boot deadline (cold first boots on slow machines).
|
|
781
|
+
timeoutMs: e2e?.boot_timeout_seconds ? e2e.boot_timeout_seconds * 1000 : undefined,
|
|
613
782
|
});
|
|
614
783
|
booted = { booted: r.booted, already: r.already, device: r.device, reason: r.reason };
|
|
615
784
|
if (r.command)
|
|
@@ -618,7 +787,8 @@ async function attemptMobileTarget(target, deps) {
|
|
|
618
787
|
else {
|
|
619
788
|
const probe = await dp.probeBootedDevices();
|
|
620
789
|
const any = target === "android_emulator" ? probe.android.length > 0 : probe.ios.length > 0;
|
|
621
|
-
|
|
790
|
+
// Pin by UDID for iOS (names are ambiguous for simctl/Maestro/idb).
|
|
791
|
+
const dev = target === "android_emulator" ? probe.android[0] : (probe.ios_devices[0]?.udid ?? probe.ios[0]);
|
|
622
792
|
booted = { booted: any, already: any, device: dev, reason: any ? undefined : "boot_device:false and no device booted" };
|
|
623
793
|
}
|
|
624
794
|
if (!booted.booted) {
|
|
@@ -635,11 +805,29 @@ async function attemptMobileTarget(target, deps) {
|
|
|
635
805
|
}
|
|
636
806
|
// Build PRE-FLIGHT: pub get / pod install / create missing asset dirs (fix
|
|
637
807
|
// mode) BEFORE launch.
|
|
808
|
+
emit("Preparing build", "pub get / pod install pre-flight");
|
|
638
809
|
const prep = await prepareMobileBuildSafe({ cwd, target, mode, logPath: join(runDir, "logs", "build_prep.log") });
|
|
639
810
|
if (prep.directive)
|
|
640
811
|
notes.push(prep.directive);
|
|
641
|
-
// Device is up — now LAUNCH the app on it.
|
|
642
|
-
|
|
812
|
+
// Device is up — now LAUNCH the app on it. The wait is stall-aware (P0.2):
|
|
813
|
+
// a cold build that keeps producing output keeps the wait alive.
|
|
814
|
+
emit("Building + launching app", target);
|
|
815
|
+
const launch = await launchApp({
|
|
816
|
+
cwd,
|
|
817
|
+
target,
|
|
818
|
+
bootedDevice: booted.device,
|
|
819
|
+
logPath: join(runDir, "logs", "app_launch.log"),
|
|
820
|
+
readyTimeoutMs: e2e?.launch_timeout_seconds ? e2e.launch_timeout_seconds * 1000 : undefined,
|
|
821
|
+
stallTimeoutMs: e2e?.launch_stall_seconds ? e2e.launch_stall_seconds * 1000 : undefined,
|
|
822
|
+
// P3.1/P3.2 — native build pinning (multi-scheme Xcode / flavored Gradle).
|
|
823
|
+
iosScheme: e2e?.ios_scheme,
|
|
824
|
+
iosConfiguration: e2e?.ios_configuration,
|
|
825
|
+
gradleInstallTask: e2e?.gradle_install_task,
|
|
826
|
+
androidAppId: e2e?.android_app_id,
|
|
827
|
+
// P5.5 — surface the live build line every ~10s ("Running Gradle task
|
|
828
|
+
// assembleDebug…", "Xcode build…") so a cold build reads as progress.
|
|
829
|
+
onProgress: (u) => emit("Building + launching app", `${Math.round(u.elapsedMs / 1000)}s — ${u.lastLine}`),
|
|
830
|
+
});
|
|
643
831
|
notes.push(`App launch (${target}): ${launch.method} → ${launch.launched ? "launched" : "NOT launched"}${launch.reason ? ` (${launch.reason})` : ""}`);
|
|
644
832
|
if (!launch.launched) {
|
|
645
833
|
const authSuffix = await cliAuthSuffix(`${launch.reason ?? ""}\n${launch.error_excerpt ?? ""}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run_journey.js","sourceRoot":"","sources":["../../src/tools/run_journey.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run_journey.js","sourceRoot":"","sources":["../../src/tools/run_journey.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/tools/verify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAuCtF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAyElD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAuC1D;AAkJD;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,KAAK,IAAI,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,OAAO,GACjB,MAAM,CA0BR;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAOT;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,EACjE,YAAY,EAAE,MAAM,GACnB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAetD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAOT;AAED,wBAAsB,SAAS,CAC7B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,cAAc,EACtB,GAAG,GAAE,MAAsB,EAC3B,UAAU,CAAC,EAAE,cAAc,EAC3B,UAAU,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,2BAA2B,EAAE,SAAS,CAAA;CAAO,GAC5G,OAAO,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/tools/verify.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAuCtF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAyElD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAuC1D;AAkJD;;;;;;;GAOG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,KAAK,IAAI,CAAC;AAEX;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,OAAO,GACjB,MAAM,CA0BR;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,GAC3B,OAAO,CAOT;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAClC,CAAC,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,EACjE,YAAY,EAAE,MAAM,GACnB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAetD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,cAAc,GACrB,OAAO,CAOT;AAED,wBAAsB,SAAS,CAC7B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,cAAc,EACtB,GAAG,GAAE,MAAsB,EAC3B,UAAU,CAAC,EAAE,cAAc,EAC3B,UAAU,GAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,2BAA2B,EAAE,SAAS,CAAA;CAAO,GAC5G,OAAO,CAAC,YAAY,CAAC,CA+6BvB;AA4XD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,cAAc,GACtB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAoCzC"}
|