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.
Files changed (104) hide show
  1. package/README.md +30 -0
  2. package/dist/evidence/change_coverage.d.ts +41 -0
  3. package/dist/evidence/change_coverage.d.ts.map +1 -1
  4. package/dist/evidence/change_coverage.js +69 -2
  5. package/dist/evidence/change_coverage.js.map +1 -1
  6. package/dist/evidence/interaction_coverage.d.ts.map +1 -1
  7. package/dist/evidence/interaction_coverage.js +2 -0
  8. package/dist/evidence/interaction_coverage.js.map +1 -1
  9. package/dist/evidence/interaction_evidence.d.ts +38 -0
  10. package/dist/evidence/interaction_evidence.d.ts.map +1 -1
  11. package/dist/evidence/interaction_evidence.js +60 -0
  12. package/dist/evidence/interaction_evidence.js.map +1 -1
  13. package/dist/index.d.ts +2 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +311 -57
  16. package/dist/index.js.map +1 -1
  17. package/dist/runners/active_target.d.ts +31 -0
  18. package/dist/runners/active_target.d.ts.map +1 -0
  19. package/dist/runners/active_target.js +65 -0
  20. package/dist/runners/active_target.js.map +1 -0
  21. package/dist/runners/android_sdk.d.ts +50 -0
  22. package/dist/runners/android_sdk.d.ts.map +1 -0
  23. package/dist/runners/android_sdk.js +123 -0
  24. package/dist/runners/android_sdk.js.map +1 -0
  25. package/dist/runners/app_launcher.d.ts +59 -1
  26. package/dist/runners/app_launcher.d.ts.map +1 -1
  27. package/dist/runners/app_launcher.js +184 -33
  28. package/dist/runners/app_launcher.js.map +1 -1
  29. package/dist/runners/app_logger.d.ts +1 -1
  30. package/dist/runners/app_logger.d.ts.map +1 -1
  31. package/dist/runners/app_logger.js +9 -8
  32. package/dist/runners/app_logger.js.map +1 -1
  33. package/dist/runners/device_probe.d.ts +18 -0
  34. package/dist/runners/device_probe.d.ts.map +1 -1
  35. package/dist/runners/device_probe.js +52 -22
  36. package/dist/runners/device_probe.js.map +1 -1
  37. package/dist/runners/interaction_engine.d.ts +6 -0
  38. package/dist/runners/interaction_engine.d.ts.map +1 -1
  39. package/dist/runners/interaction_engine.js +71 -21
  40. package/dist/runners/interaction_engine.js.map +1 -1
  41. package/dist/runners/ios_sim_input.d.ts +106 -0
  42. package/dist/runners/ios_sim_input.d.ts.map +1 -0
  43. package/dist/runners/ios_sim_input.js +453 -0
  44. package/dist/runners/ios_sim_input.js.map +1 -0
  45. package/dist/runners/journey_to_maestro.d.ts +27 -0
  46. package/dist/runners/journey_to_maestro.d.ts.map +1 -1
  47. package/dist/runners/journey_to_maestro.js +54 -0
  48. package/dist/runners/journey_to_maestro.js.map +1 -1
  49. package/dist/runners/logging_readiness.d.ts.map +1 -1
  50. package/dist/runners/logging_readiness.js +38 -7
  51. package/dist/runners/logging_readiness.js.map +1 -1
  52. package/dist/runners/maestro.d.ts +27 -2
  53. package/dist/runners/maestro.d.ts.map +1 -1
  54. package/dist/runners/maestro.js +57 -7
  55. package/dist/runners/maestro.js.map +1 -1
  56. package/dist/runners/maestro_generator.d.ts +1 -1
  57. package/dist/runners/maestro_generator.d.ts.map +1 -1
  58. package/dist/runners/maestro_generator.js +3 -2
  59. package/dist/runners/maestro_generator.js.map +1 -1
  60. package/dist/runners/screenshot.d.ts +6 -0
  61. package/dist/runners/screenshot.d.ts.map +1 -1
  62. package/dist/runners/screenshot.js +20 -10
  63. package/dist/runners/screenshot.js.map +1 -1
  64. package/dist/runners/semantics_audit.d.ts +32 -0
  65. package/dist/runners/semantics_audit.d.ts.map +1 -0
  66. package/dist/runners/semantics_audit.js +140 -0
  67. package/dist/runners/semantics_audit.js.map +1 -0
  68. package/dist/runners/video_recorder.d.ts +3 -1
  69. package/dist/runners/video_recorder.d.ts.map +1 -1
  70. package/dist/runners/video_recorder.js +44 -12
  71. package/dist/runners/video_recorder.js.map +1 -1
  72. package/dist/runners/wayland.d.ts +32 -0
  73. package/dist/runners/wayland.d.ts.map +1 -0
  74. package/dist/runners/wayland.js +49 -0
  75. package/dist/runners/wayland.js.map +1 -0
  76. package/dist/runners/window_manager.d.ts +55 -25
  77. package/dist/runners/window_manager.d.ts.map +1 -1
  78. package/dist/runners/window_manager.js +171 -71
  79. package/dist/runners/window_manager.js.map +1 -1
  80. package/dist/tools/discover_interactions.d.ts +22 -0
  81. package/dist/tools/discover_interactions.d.ts.map +1 -1
  82. package/dist/tools/discover_interactions.js +283 -6
  83. package/dist/tools/discover_interactions.js.map +1 -1
  84. package/dist/tools/discover_screens.d.ts +2 -0
  85. package/dist/tools/discover_screens.d.ts.map +1 -1
  86. package/dist/tools/discover_screens.js +139 -1
  87. package/dist/tools/discover_screens.js.map +1 -1
  88. package/dist/tools/gate_check.d.ts.map +1 -1
  89. package/dist/tools/gate_check.js +16 -2
  90. package/dist/tools/gate_check.js.map +1 -1
  91. package/dist/tools/plan_change_journey.d.ts.map +1 -1
  92. package/dist/tools/plan_change_journey.js +15 -2
  93. package/dist/tools/plan_change_journey.js.map +1 -1
  94. package/dist/tools/plan_user_journey.d.ts.map +1 -1
  95. package/dist/tools/plan_user_journey.js +5 -2
  96. package/dist/tools/plan_user_journey.js.map +1 -1
  97. package/dist/tools/run_journey.d.ts +70 -0
  98. package/dist/tools/run_journey.d.ts.map +1 -1
  99. package/dist/tools/run_journey.js +209 -21
  100. package/dist/tools/run_journey.js.map +1 -1
  101. package/dist/tools/verify.d.ts.map +1 -1
  102. package/dist/tools/verify.js +55 -11
  103. package/dist/tools/verify.js.map +1 -1
  104. package/package.json +2 -2
@@ -19,13 +19,14 @@
19
19
  * Never throws; always returns a handle (with a best-effort stop()).
20
20
  */
21
21
  import { spawn } from "child_process";
22
- import { existsSync, readdirSync, mkdtempSync } from "fs";
22
+ import { existsSync, readdirSync, mkdtempSync, statSync } from "fs";
23
23
  import { join } from "path";
24
24
  import { platform, tmpdir } from "os";
25
25
  import { checkToolAvailable, runCommand } from "./base.js";
26
26
  import { resolveMobileAppId } from "./mobile_app_id.js";
27
27
  import { captureScreenshot } from "./screenshot.js";
28
28
  import { verifyMobileAppLive, isBlankFrame } from "./launch_liveness.js";
29
+ import { newestSourceMtime } from "../evidence/evidence_freshness.js";
29
30
  /** Output lines that mean the Flutter app finished launching and is live. */
30
31
  const FLUTTER_READY = /(Flutter run key commands|Dart VM Service is listening|VM Service|DevTools|is being served at|Syncing files to device|Application finished|Hot reload|Flutter DevTools|✓ +Built)/i;
31
32
  /** Output lines that mean the Flutter build/launch FAILED (don't keep waiting). */
@@ -54,7 +55,92 @@ export function flutterDeviceId(target, bootedDevice) {
54
55
  export function isFlutterProject(cwd) {
55
56
  return existsSync(join(cwd, "pubspec.yaml"));
56
57
  }
57
- const DEFAULT_READY_TIMEOUT_MS = 240_000; // cold build + install can take minutes
58
+ /** Last non-empty output line of a launcher buffer (pure, for heartbeats). */
59
+ export function lastOutputLine(buffer) {
60
+ const lines = buffer.split(/\r?\n/);
61
+ for (let i = lines.length - 1; i >= 0; i--) {
62
+ const t = lines[i].trim();
63
+ if (t)
64
+ return t.slice(0, 160);
65
+ }
66
+ return "";
67
+ }
68
+ /** Heartbeat throttle: emit when at least intervalMs passed (pure). */
69
+ export function shouldEmitHeartbeat(now, lastEmitAt, intervalMs = 10_000) {
70
+ return now - lastEmitAt >= intervalMs;
71
+ }
72
+ /**
73
+ * 0.1.90 (P0.2) — the launch deadline is STALL-AWARE, not wall-clock.
74
+ * WedCheese's first cold `flutter build ios --simulator` took 734s; the old
75
+ * fixed 240s deadline killed `flutter run` mid-build (twice — the retry killed
76
+ * a second partial build) and reported "App did not finish launching". A build
77
+ * that is still TALKING is still working: only silence (no output for
78
+ * `stallMs`) or the hard cap fails the wait.
79
+ */
80
+ const DEFAULT_HARD_CAP_MS = 1_800_000; // 30 min — absolute bound even with output
81
+ const DEFAULT_STALL_MS = 180_000; // 3 min of SILENCE = stuck
82
+ /**
83
+ * Decide whether the ready-wait loop should keep waiting. Pure so the
84
+ * stall-vs-cap policy is testable without spawning real builds.
85
+ */
86
+ export function shouldKeepWaiting(s) {
87
+ if (s.now - s.startedAt >= s.hardCapMs)
88
+ return { keep_waiting: false, why: "hard_cap" };
89
+ if (s.now - s.lastOutputAt >= s.stallMs)
90
+ return { keep_waiting: false, why: "stalled" };
91
+ return { keep_waiting: true };
92
+ }
93
+ /** Freshness buffer matching evidence/binary_freshness.ts (mtime jitter). */
94
+ const PREBUILT_FRESHNESS_BUFFER_MS = 60_000;
95
+ /**
96
+ * 0.1.90 (P0.2) — reuse the verify-phase build. A full verify on a mobile
97
+ * Flutter project already built the app (`flutter build ios --simulator` /
98
+ * gradle); relaunching via plain `flutter run` then rebuilds from scratch —
99
+ * the second 12-minute build WedCheese hit. When a FRESH prebuilt binary
100
+ * exists (newer than the newest source edit, minus a 60s jitter buffer),
101
+ * launch with `flutter run --use-application-binary <path>` instead.
102
+ *
103
+ * iOS accepts a .app bundle directory; Android the debug APK (both verified
104
+ * against flutter_tools' IOSApp.fromPrebuiltApp / ApplicationPackageFactory).
105
+ */
106
+ export function findFreshPrebuilt(cwd, target) {
107
+ let candidate = null;
108
+ let mtimeMs = 0;
109
+ try {
110
+ if (target === "ios_simulator") {
111
+ const dir = join(cwd, "build", "ios", "iphonesimulator");
112
+ const app = readdirSync(dir).find((f) => f.endsWith(".app"));
113
+ if (!app)
114
+ return null;
115
+ candidate = join(dir, app);
116
+ // The .app dir's own mtime updates too eagerly; Info.plist is the
117
+ // reliable "when was this actually built" signal (same trick as
118
+ // binary_freshness.ts).
119
+ const plist = join(candidate, "Info.plist");
120
+ mtimeMs = statSync(existsSync(plist) ? plist : candidate).mtimeMs;
121
+ }
122
+ else if (target === "android_emulator") {
123
+ const apk = join(cwd, "build", "app", "outputs", "flutter-apk", "app-debug.apk");
124
+ if (!existsSync(apk))
125
+ return null;
126
+ candidate = apk;
127
+ mtimeMs = statSync(apk).mtimeMs;
128
+ }
129
+ else {
130
+ return null;
131
+ }
132
+ }
133
+ catch {
134
+ return null;
135
+ }
136
+ if (!candidate || mtimeMs === 0)
137
+ return null;
138
+ const newest = newestSourceMtime(cwd);
139
+ if (newest && newest.mtimeMs - mtimeMs > PREBUILT_FRESHNESS_BUFFER_MS) {
140
+ return null; // stale — source changed since this binary was built
141
+ }
142
+ return candidate;
143
+ }
58
144
  /**
59
145
  * Launch the app for an interactive journey. Returns a handle whose `stop()`
60
146
  * quits the app. Only the Flutter path actually builds+launches today; native
@@ -102,21 +188,37 @@ async function launchNativeAndroid(opts) {
102
188
  if (!hasGradlew && !(await checkToolAvailable("gradle"))) {
103
189
  return { launched: false, method: "native-android", reason: "No gradlew/gradle found — build & install manually (./gradlew installDebug), then drive with codeloop_interact." };
104
190
  }
105
- const appId = resolveMobileAppId(cwd, "android");
191
+ // P3.2 flavored builds: e2e.android_app_id pins the final applicationId
192
+ // (computed ids — applicationIdSuffix, placeholders — defeat gradle parsing),
193
+ // e2e.gradle_install_task pins the install task (e.g. ":app:installDevDebug").
194
+ const appId = opts.androidAppId ?? resolveMobileAppId(cwd, "android");
106
195
  const gradleCmd = hasGradlew ? (platform() === "win32" ? "gradlew.bat" : "./gradlew") : "gradle";
107
- const install = await runCommand(gradleCmd, [":app:installDebug"], cwd, opts.logPath, undefined, opts.readyTimeoutMs ?? NATIVE_BUILD_TIMEOUT_MS);
108
- if (install.exit_code !== 0) {
109
- // Retry the non-scoped task name (some projects don't use :app:).
110
- const retry = await runCommand(gradleCmd, ["installDebug"], cwd, opts.logPath, undefined, opts.readyTimeoutMs ?? NATIVE_BUILD_TIMEOUT_MS);
111
- if (retry.exit_code !== 0) {
196
+ if (opts.gradleInstallTask) {
197
+ const install = await runCommand(gradleCmd, [opts.gradleInstallTask], cwd, opts.logPath, undefined, opts.readyTimeoutMs ?? NATIVE_BUILD_TIMEOUT_MS);
198
+ if (install.exit_code !== 0) {
112
199
  return {
113
200
  launched: false,
114
- method: "gradlew installDebug",
115
- reason: "Android build/install failed — the app does not build on the emulator.",
116
- error_excerpt: tail(install.stdout + install.stderr + retry.stdout + retry.stderr),
201
+ method: `gradlew ${opts.gradleInstallTask}`,
202
+ reason: `Android build/install failed for the configured e2e.gradle_install_task "${opts.gradleInstallTask}" fix the task name in .codeloop/config.json or the build itself.`,
203
+ error_excerpt: tail(install.stdout + install.stderr),
117
204
  };
118
205
  }
119
206
  }
207
+ else {
208
+ const install = await runCommand(gradleCmd, [":app:installDebug"], cwd, opts.logPath, undefined, opts.readyTimeoutMs ?? NATIVE_BUILD_TIMEOUT_MS);
209
+ if (install.exit_code !== 0) {
210
+ // Retry the non-scoped task name (some projects don't use :app:).
211
+ const retry = await runCommand(gradleCmd, ["installDebug"], cwd, opts.logPath, undefined, opts.readyTimeoutMs ?? NATIVE_BUILD_TIMEOUT_MS);
212
+ if (retry.exit_code !== 0) {
213
+ return {
214
+ launched: false,
215
+ method: "gradlew installDebug",
216
+ reason: "Android build/install failed — the app does not build on the emulator. (Flavored builds: set e2e.gradle_install_task, e.g. \":app:installDevDebug\", in .codeloop/config.json.)",
217
+ error_excerpt: tail(install.stdout + install.stderr + retry.stdout + retry.stderr),
218
+ };
219
+ }
220
+ }
221
+ }
120
222
  if (!appId) {
121
223
  return { launched: true, method: "gradlew installDebug", device: opts.bootedDevice, reason: "Installed but could not resolve applicationId to auto-launch — open the app from the launcher (then it can be driven)." };
122
224
  }
@@ -154,19 +256,25 @@ async function launchNativeIos(opts) {
154
256
  return { launched: false, method: "native-ios", reason: "No booted simulator udid to install onto." };
155
257
  }
156
258
  const bundleId = resolveMobileAppId(cwd, "ios");
157
- // Resolve a scheme from `xcodebuild -list -json`.
158
- const list = await runCommand("xcodebuild", [...listArgs, "-list", "-json"], cwd, undefined, undefined, NATIVE_CMD_TIMEOUT_MS);
159
- const scheme = parseFirstScheme(list.stdout);
259
+ // P3.1 e2e.ios_scheme pins the scheme (multi-scheme workspaces: white-label
260
+ // apps, Dev/Staging/Prod) and skips the `-list` round-trip; otherwise resolve
261
+ // the first non-test scheme from `xcodebuild -list -json`.
262
+ let scheme = opts.iosScheme;
160
263
  if (!scheme) {
161
- return { launched: false, method: "native-ios", reason: "Could not resolve an Xcode scheme — open the workspace and build/run once, or set it up, then retry.", error_excerpt: tail(list.stdout + list.stderr) };
264
+ const list = await runCommand("xcodebuild", [...listArgs, "-list", "-json"], cwd, undefined, undefined, NATIVE_CMD_TIMEOUT_MS);
265
+ scheme = parseFirstScheme(list.stdout) ?? undefined;
266
+ if (!scheme) {
267
+ return { launched: false, method: "native-ios", reason: "Could not resolve an Xcode scheme — set e2e.ios_scheme in .codeloop/config.json (or open the workspace and build/run once), then retry.", error_excerpt: tail(list.stdout + list.stderr) };
268
+ }
162
269
  }
270
+ const configuration = opts.iosConfiguration ?? "Debug";
163
271
  const derived = join(cwd, "build", "codeloop-derived");
164
272
  const build = await runCommand("xcodebuild", [
165
273
  ...listArgs,
166
274
  "-scheme",
167
275
  scheme,
168
276
  "-configuration",
169
- "Debug",
277
+ configuration,
170
278
  "-destination",
171
279
  `platform=iOS Simulator,id=${udid}`,
172
280
  "-derivedDataPath",
@@ -181,9 +289,10 @@ async function launchNativeIos(opts) {
181
289
  "build",
182
290
  ], cwd, opts.logPath, undefined, opts.readyTimeoutMs ?? NATIVE_BUILD_TIMEOUT_MS);
183
291
  if (build.exit_code !== 0) {
184
- return { launched: false, method: `xcodebuild -scheme ${scheme}`, reason: "iOS build failed — the app does not build for the simulator.", error_excerpt: tail(build.stdout + build.stderr) };
292
+ return { launched: false, method: `xcodebuild -scheme ${scheme}`, reason: `iOS build failed — the app does not build for the simulator (scheme "${scheme}", configuration "${configuration}"). Multi-scheme/multi-config projects: set e2e.ios_scheme / e2e.ios_configuration in .codeloop/config.json.`, error_excerpt: tail(build.stdout + build.stderr) };
185
293
  }
186
- const appPath = join(derived, "Build", "Products", "Debug-iphonesimulator");
294
+ // The products dir is named after the build configuration.
295
+ const appPath = join(derived, "Build", "Products", `${configuration}-iphonesimulator`);
187
296
  let appBundle = null;
188
297
  try {
189
298
  appBundle = readdirSync(appPath).find((f) => f.endsWith(".app")) ?? null;
@@ -310,7 +419,8 @@ async function launchFlutter(opts) {
310
419
  * AND the device must show a non-blank first frame.
311
420
  */
312
421
  async function verifyLaunchedMobile(opts, device) {
313
- const appId = resolveMobileAppId(opts.cwd, opts.target === "ios_simulator" ? "ios" : "android");
422
+ const appId = (opts.target === "android_emulator" ? opts.androidAppId : undefined) ??
423
+ resolveMobileAppId(opts.cwd, opts.target === "ios_simulator" ? "ios" : "android");
314
424
  const liveness = await verifyMobileAppLive(opts.target, device, appId);
315
425
  if (!liveness.live) {
316
426
  return { ok: false, reason: "App process is not running after launch.", detail: liveness.detail };
@@ -320,7 +430,7 @@ async function verifyLaunchedMobile(opts, device) {
320
430
  let detail = liveness.detail;
321
431
  try {
322
432
  const probeDir = mkdtempSync(join(tmpdir(), "codeloop-liveness-"));
323
- const ss = await captureScreenshot(probeDir, "first_frame", undefined, opts.target);
433
+ const ss = await captureScreenshot(probeDir, "first_frame", undefined, opts.target, { device });
324
434
  if (ss.captured && ss.paths[0]) {
325
435
  blank = await isBlankFrame(ss.paths[0]);
326
436
  detail = `${liveness.detail}; first-frame ${blank ? "BLANK" : "rendered"}`;
@@ -350,9 +460,21 @@ async function launchFlutterOnce(opts) {
350
460
  // `flutter pub get` before us in fix mode, but we let `flutter run` resolve
351
461
  // deps too so a skipped pre-flight (audit / direct call) still launches.
352
462
  const args = ["run", "-d", device, ...(opts.extraArgs ?? [])];
353
- const readyTimeoutMs = opts.readyTimeoutMs ?? DEFAULT_READY_TIMEOUT_MS;
354
463
  const isMobile = target === "android_emulator" || target === "ios_simulator";
355
- const appId = isMobile ? resolveMobileAppId(cwd, target === "ios_simulator" ? "ios" : "android") : null;
464
+ const appId = isMobile
465
+ ? ((target === "android_emulator" ? opts.androidAppId : undefined) ??
466
+ resolveMobileAppId(cwd, target === "ios_simulator" ? "ios" : "android"))
467
+ : null;
468
+ // Build reuse (P0.2): a fresh verify-phase binary skips the second full
469
+ // build — `flutter run` installs + launches the prebuilt in seconds.
470
+ let usedPrebuilt = false;
471
+ if (isMobile && !(opts.extraArgs ?? []).some((a) => a.startsWith("--use-application-binary"))) {
472
+ const prebuilt = findFreshPrebuilt(cwd, target);
473
+ if (prebuilt) {
474
+ args.push(`--use-application-binary=${prebuilt}`);
475
+ usedPrebuilt = true;
476
+ }
477
+ }
356
478
  let child;
357
479
  try {
358
480
  child = spawn("flutter", args, { cwd, stdio: ["pipe", "pipe", "pipe"], detached: false });
@@ -361,8 +483,13 @@ async function launchFlutterOnce(opts) {
361
483
  return { launched: false, method: "flutter run", device, reason: `Failed to spawn flutter run: ${e.message}` };
362
484
  }
363
485
  let buffer = "";
364
- const onData = (d) => { buffer += d.toString(); if (buffer.length > 200_000)
365
- buffer = buffer.slice(-100_000); };
486
+ let lastOutputAt = Date.now();
487
+ const onData = (d) => {
488
+ buffer += d.toString();
489
+ lastOutputAt = Date.now();
490
+ if (buffer.length > 200_000)
491
+ buffer = buffer.slice(-100_000);
492
+ };
366
493
  child.stdout?.on("data", onData);
367
494
  child.stderr?.on("data", onData);
368
495
  const stop = async () => {
@@ -388,16 +515,23 @@ async function launchFlutterOnce(opts) {
388
515
  catch { /* ignore */ }
389
516
  }
390
517
  };
391
- // Poll the captured output for ready / failure / process-exit / timeout.
392
- const deadline = Date.now() + readyTimeoutMs;
518
+ // Poll the captured output for ready / failure / process-exit, with a
519
+ // STALL-AWARE deadline (P0.2): a build that keeps producing output keeps
520
+ // the wait alive; only silence (stallMs) or the hard cap fails it.
521
+ const startedAt = Date.now();
522
+ const hardCapMs = opts.readyTimeoutMs ?? DEFAULT_HARD_CAP_MS;
523
+ const stallMs = opts.stallTimeoutMs ?? DEFAULT_STALL_MS;
524
+ const methodLabel = `flutter run -d ${device}${usedPrebuilt ? " --use-application-binary (verify build reused)" : ""}`;
393
525
  let exited = false;
394
526
  let polls = 0;
527
+ let lastHeartbeatAt = 0;
395
528
  child.on("exit", () => { exited = true; });
396
- while (Date.now() < deadline) {
529
+ let verdict = { keep_waiting: true };
530
+ while (verdict.keep_waiting) {
397
531
  if (FLUTTER_READY.test(buffer)) {
398
532
  // Give the first frame a moment to render before we screenshot/drive.
399
533
  await new Promise((r) => setTimeout(r, 2500));
400
- return { launched: true, method: `flutter run -d ${device}`, device, stop };
534
+ return { launched: true, method: methodLabel, device, stop };
401
535
  }
402
536
  // Robust ready-detection: a MISSED ready log line must not cause a false
403
537
  // timeout. Every ~12s, for mobile, also probe whether the app process is
@@ -407,7 +541,7 @@ async function launchFlutterOnce(opts) {
407
541
  const liveness = await verifyMobileAppLive(target, device, appId);
408
542
  if (liveness.live) {
409
543
  await new Promise((r) => setTimeout(r, 1500));
410
- return { launched: true, method: `flutter run -d ${device} (liveness-confirmed)`, device, stop };
544
+ return { launched: true, method: `${methodLabel} (liveness-confirmed)`, device, stop };
411
545
  }
412
546
  }
413
547
  catch { /* best-effort */ }
@@ -416,7 +550,7 @@ async function launchFlutterOnce(opts) {
416
550
  await stop();
417
551
  return {
418
552
  launched: false,
419
- method: `flutter run -d ${device}`,
553
+ method: methodLabel,
420
554
  device,
421
555
  reason: exited
422
556
  ? "flutter run exited before the app came up — the app failed to build/launch on the device."
@@ -426,14 +560,31 @@ async function launchFlutterOnce(opts) {
426
560
  }
427
561
  polls++;
428
562
  await new Promise((r) => setTimeout(r, 2000));
563
+ // P5.5 — heartbeat: stream the latest launcher line every ~10s so cold
564
+ // builds surface as progress ("Running Gradle task …", "Running pod
565
+ // install …") instead of a silent multi-minute wait.
566
+ if (opts.onProgress && shouldEmitHeartbeat(Date.now(), lastHeartbeatAt)) {
567
+ lastHeartbeatAt = Date.now();
568
+ try {
569
+ opts.onProgress({ elapsedMs: Date.now() - startedAt, lastLine: lastOutputLine(buffer) });
570
+ }
571
+ catch { /* progress is best-effort */ }
572
+ }
573
+ verdict = shouldKeepWaiting({ now: Date.now(), startedAt, lastOutputAt, stallMs, hardCapMs });
429
574
  }
430
- // Timed out waiting for the app to come up.
575
+ // Stalled or hit the hard cap.
431
576
  await stop();
577
+ const waitedS = Math.round((Date.now() - startedAt) / 1000);
578
+ const reason = verdict.why === "stalled"
579
+ ? `Launch stalled — no build/launcher output for ${Math.round(stallMs / 1000)}s (waited ${waitedS}s total). ` +
580
+ `If this toolchain legitimately goes quiet for longer, raise e2e.launch_stall_seconds in .codeloop/config.json.`
581
+ : `App did not finish launching within the e2e.launch_timeout_seconds hard cap (${Math.round(hardCapMs / 1000)}s) — ` +
582
+ `the build was still producing output, so consider pre-building (flutter build) or raising the cap in .codeloop/config.json.`;
432
583
  return {
433
584
  launched: false,
434
- method: `flutter run -d ${device}`,
585
+ method: methodLabel,
435
586
  device,
436
- reason: `App did not finish launching within ${Math.round(readyTimeoutMs / 1000)}s (slow build or stuck on the device).`,
587
+ reason,
437
588
  error_excerpt: buffer.split("\n").filter(Boolean).slice(-25).join("\n"),
438
589
  };
439
590
  }
@@ -1 +1 @@
1
- {"version":3,"file":"app_launcher.js","sourceRoot":"","sources":["../../src/runners/app_launcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app_launcher.js","sourceRoot":"","sources":["../../src/runners/app_launcher.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export interface LogCaptureHandle {
14
14
  *
15
15
  * Returns the log ID and path, or an error if prerequisites are missing.
16
16
  */
17
- export declare function startLogCapture(outputDir: string, appName: string, targetType: TargetType, packageOrBundleId?: string): Promise<{
17
+ export declare function startLogCapture(outputDir: string, appName: string, targetType: TargetType, packageOrBundleId?: string, device?: string): Promise<{
18
18
  logId: string;
19
19
  logPath: string;
20
20
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"app_logger.d.ts","sourceRoot":"","sources":["../../src/runners/app_logger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAS,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAsBD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,EACtB,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA4DjE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsB1E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAW3E;AA+JD;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAwCjE"}
1
+ {"version":3,"file":"app_logger.d.ts","sourceRoot":"","sources":["../../src/runners/app_logger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAS,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAsBD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,EACtB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA4DjE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsB1E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAW3E;AAkKD;;;GAGG;AACH,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAwCjE"}
@@ -23,7 +23,7 @@ function spawnTailProcess(file, lines = 200) {
23
23
  *
24
24
  * Returns the log ID and path, or an error if prerequisites are missing.
25
25
  */
26
- export async function startLogCapture(outputDir, appName, targetType, packageOrBundleId) {
26
+ export async function startLogCapture(outputDir, appName, targetType, packageOrBundleId, device) {
27
27
  mkdirSync(outputDir, { recursive: true });
28
28
  const logId = `log_${Date.now()}`;
29
29
  const logPath = join(outputDir, `app_log_${Date.now()}.txt`);
@@ -38,10 +38,10 @@ export async function startLogCapture(outputDir, appName, targetType, packageOrB
38
38
  let child = null;
39
39
  try {
40
40
  if (targetType === "android_emulator") {
41
- child = await startAndroidLogCapture(handle, packageOrBundleId);
41
+ child = await startAndroidLogCapture(handle, packageOrBundleId, device);
42
42
  }
43
43
  else if (targetType === "ios_simulator") {
44
- child = await startiOSLogCapture(handle, packageOrBundleId);
44
+ child = await startiOSLogCapture(handle, packageOrBundleId, device);
45
45
  }
46
46
  else if (targetType === "browser") {
47
47
  writeFileSync(logPath, `[CodeLoop] Browser log capture started: ${new Date().toISOString()}\n`);
@@ -128,13 +128,14 @@ export function readLogTail(logPath, maxLines = 200) {
128
128
  }
129
129
  }
130
130
  // ── Platform-specific log capture ───────────────────────────────
131
- async function startAndroidLogCapture(handle, packageId) {
131
+ async function startAndroidLogCapture(handle, packageId, device) {
132
132
  if (!(await checkToolAvailable("adb")))
133
133
  return null;
134
- const args = ["logcat", "-v", "time"];
134
+ const sel = device ? ["-s", device] : [];
135
+ const args = [...sel, "logcat", "-v", "time"];
135
136
  if (packageId) {
136
137
  // Get the PID for the package to filter logs
137
- const pidResult = await runCommand("adb", ["shell", "pidof", packageId], process.cwd());
138
+ const pidResult = await runCommand("adb", [...sel, "shell", "pidof", packageId], process.cwd());
138
139
  const pid = pidResult.stdout.trim();
139
140
  if (pid) {
140
141
  args.push(`--pid=${pid}`);
@@ -146,13 +147,13 @@ async function startAndroidLogCapture(handle, packageId) {
146
147
  }
147
148
  return spawn("adb", args, { cwd: process.cwd(), stdio: "pipe", detached: false });
148
149
  }
149
- async function startiOSLogCapture(_handle, bundleId) {
150
+ async function startiOSLogCapture(_handle, bundleId, device) {
150
151
  const os = platform();
151
152
  if (os !== "darwin")
152
153
  return null;
153
154
  if (!(await checkToolAvailable("xcrun")))
154
155
  return null;
155
- const args = ["simctl", "spawn", "booted", "log", "stream", "--level", "error"];
156
+ const args = ["simctl", "spawn", device || "booted", "log", "stream", "--level", "error"];
156
157
  if (bundleId) {
157
158
  args.push("--predicate", `subsystem == "${bundleId}"`);
158
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"app_logger.js","sourceRoot":"","sources":["../../src/runners/app_logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app_logger.js","sourceRoot":"","sources":["../../src/runners/app_logger.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,15 @@ export interface BootedDevices {
3
3
  android: string[];
4
4
  /** Booted iOS simulator display names (macOS only). */
5
5
  ios: string[];
6
+ /**
7
+ * Booted iOS simulators with their UDIDs (macOS only). The UDID is what
8
+ * simctl/Maestro device pinning needs — `ios` keeps the human-readable
9
+ * names for directives.
10
+ */
11
+ ios_devices: Array<{
12
+ udid: string;
13
+ name: string;
14
+ }>;
6
15
  /** adb present on PATH? */
7
16
  adb_available: boolean;
8
17
  /** xcrun present on PATH (macOS only)? */
@@ -22,6 +31,15 @@ export interface MobileTargets {
22
31
  */
23
32
  export declare function detectMobileTargets(cwd: string): MobileTargets;
24
33
  export declare function probeBootedDevices(): Promise<BootedDevices>;
34
+ /**
35
+ * PURE: parse `simctl list devices booted` lines like
36
+ * ` iPhone 16 Pro (ABCD1234-...) (Booted)` into { udid, name } pairs.
37
+ * Exported for tests.
38
+ */
39
+ export declare function parseBootedIosDevices(output: string): Array<{
40
+ udid: string;
41
+ name: string;
42
+ }>;
25
43
  export interface PhysicalDevices {
26
44
  /** adb serials for PHYSICAL Android devices (emulators excluded). */
27
45
  android: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"device_probe.d.ts","sourceRoot":"","sources":["../../src/runners/device_probe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device_probe.d.ts","sourceRoot":"","sources":["../../src/runners/device_probe.ts"],"names":[],"mappings":"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"}