codeloop-mcp-server 0.1.85 → 0.1.87
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/dist/index.js +11 -1
- package/dist/index.js.map +1 -1
- package/dist/runners/platform_detect.js +24 -9
- package/dist/runners/platform_detect.js.map +1 -1
- package/dist/tools/run_journey.d.ts.map +1 -1
- package/dist/tools/run_journey.js +130 -73
- package/dist/tools/run_journey.js.map +1 -1
- package/dist/tools/verify.d.ts +22 -1
- package/dist/tools/verify.d.ts.map +1 -1
- package/dist/tools/verify.js +101 -6
- package/dist/tools/verify.js.map +1 -1
- package/package.json +2 -2
|
@@ -61,30 +61,45 @@ function detectFlutterTargetType(cwd, _pubspecPath) {
|
|
|
61
61
|
const hasWindows = existsSync(join(cwd, "windows"));
|
|
62
62
|
const hasLinux = existsSync(join(cwd, "linux"));
|
|
63
63
|
const hasWeb = existsSync(join(cwd, "web"));
|
|
64
|
-
//
|
|
64
|
+
// 0.1.87 — PREFER MOBILE over desktop. The overwhelming majority of Flutter
|
|
65
|
+
// apps ship the DEFAULT macos/windows/linux scaffolds (created by
|
|
66
|
+
// `flutter create`) without ever being a desktop app — so picking "desktop"
|
|
67
|
+
// just because `macos/` exists mis-routed every mobile-first app to a desktop
|
|
68
|
+
// launch (the WedCheese log-11 failure: it ran `flutter run` for macOS, whose
|
|
69
|
+
// pods broke on `gal` needing macOS >= 11.0, and captured 0 screenshots while
|
|
70
|
+
// the real iOS/Android apps were never tried). A project that declares ios/ or
|
|
71
|
+
// android/ is a MOBILE app; desktop is only the right target when NO mobile
|
|
72
|
+
// platform exists (a genuinely desktop-only Flutter app). On macOS we prefer
|
|
73
|
+
// the native iOS simulator; the run_journey orchestrator falls back to the
|
|
74
|
+
// other mobile target if the first one can't launch.
|
|
75
|
+
const isMobile = hasIos || hasAndroid;
|
|
76
|
+
if (isMobile) {
|
|
77
|
+
if (os === "darwin") {
|
|
78
|
+
if (hasIos)
|
|
79
|
+
return "ios_simulator";
|
|
80
|
+
return "android_emulator";
|
|
81
|
+
}
|
|
82
|
+
// Windows / Linux can't drive an iOS simulator — Android is the mobile target.
|
|
83
|
+
if (hasAndroid)
|
|
84
|
+
return "android_emulator";
|
|
85
|
+
return "ios_simulator";
|
|
86
|
+
}
|
|
87
|
+
// No mobile platform — fall back to the host-native desktop/web target.
|
|
65
88
|
if (os === "darwin") {
|
|
66
89
|
if (hasMacos)
|
|
67
90
|
return "desktop";
|
|
68
|
-
if (hasIos)
|
|
69
|
-
return "ios_simulator";
|
|
70
91
|
if (hasWeb)
|
|
71
92
|
return "browser";
|
|
72
|
-
if (hasAndroid)
|
|
73
|
-
return "android_emulator";
|
|
74
93
|
}
|
|
75
94
|
else if (os === "win32") {
|
|
76
95
|
if (hasWindows)
|
|
77
96
|
return "desktop";
|
|
78
|
-
if (hasAndroid)
|
|
79
|
-
return "android_emulator";
|
|
80
97
|
if (hasWeb)
|
|
81
98
|
return "browser";
|
|
82
99
|
}
|
|
83
100
|
else {
|
|
84
101
|
if (hasLinux)
|
|
85
102
|
return "desktop";
|
|
86
|
-
if (hasAndroid)
|
|
87
|
-
return "android_emulator";
|
|
88
103
|
if (hasWeb)
|
|
89
104
|
return "browser";
|
|
90
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"platform_detect.js","sourceRoot":"","sources":["../../src/runners/platform_detect.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"platform_detect.js","sourceRoot":"","sources":["../../src/runners/platform_detect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run_journey.d.ts","sourceRoot":"","sources":["../../src/tools/run_journey.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run_journey.d.ts","sourceRoot":"","sources":["../../src/tools/run_journey.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,7 +19,8 @@
|
|
|
19
19
|
* CodeLoop must always produce; only the agent's source-code edits are paused.
|
|
20
20
|
*/
|
|
21
21
|
import { join } from "path";
|
|
22
|
-
import { mkdirSync, readdirSync } from "fs";
|
|
22
|
+
import { mkdirSync, readdirSync, existsSync } from "fs";
|
|
23
|
+
import { platform } from "os";
|
|
23
24
|
/**
|
|
24
25
|
* PURE: flatten a journey plan into the deterministic engine steps the executor
|
|
25
26
|
* can drive on the given target. Selector-bearing fills and the AI-chatbox arc
|
|
@@ -103,79 +104,50 @@ export async function runJourney(opts) {
|
|
|
103
104
|
const dp = await import("../runners/device_probe.js");
|
|
104
105
|
const { launchApp, isFlutterProject } = await import("../runners/app_launcher.js");
|
|
105
106
|
if (target === "android_emulator" || target === "ios_simulator") {
|
|
106
|
-
|
|
107
|
-
//
|
|
108
|
-
//
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
// Build PRE-FLIGHT: pub get / pod install / create missing asset dirs (fix
|
|
150
|
-
// mode) BEFORE launch — the dominant "app never opened" root cause was a
|
|
151
|
-
// skipped pre-flight (no pub get, no pod install, missing assets).
|
|
152
|
-
const prep = await prepareMobileBuildSafe({ cwd, target, mode, logPath: join(runDir, "logs", "build_prep.log") });
|
|
153
|
-
if (prep.directive)
|
|
154
|
-
notes.push(prep.directive);
|
|
155
|
-
// Device is up — now LAUNCH the app on it (flutter run / native directive).
|
|
156
|
-
const launch = await launchApp({ cwd, target, bootedDevice: booted.device, logPath: join(runDir, "logs", "app_launch.log") });
|
|
157
|
-
notes.push(`App launch: ${launch.method} → ${launch.launched ? "launched" : "NOT launched"}${launch.reason ? ` (${launch.reason})` : ""}`);
|
|
158
|
-
if (!launch.launched) {
|
|
159
|
-
const authSuffix = await cliAuthSuffix(`${launch.reason ?? ""}\n${launch.error_excerpt ?? ""}`);
|
|
160
|
-
return {
|
|
161
|
-
status: "launch_failed",
|
|
162
|
-
target_type: target,
|
|
163
|
-
booted,
|
|
164
|
-
steps: [],
|
|
165
|
-
screens_captured: [],
|
|
166
|
-
screenshots: [],
|
|
167
|
-
unsupported_count: 0,
|
|
168
|
-
manual_followups: [],
|
|
169
|
-
directive: `The device booted but the APP DID NOT OPEN: ${launch.reason ?? "unknown"}. ` +
|
|
170
|
-
(launch.error_excerpt ? `\nLauncher output (tail):\n${launch.error_excerpt}\n` : "") +
|
|
171
|
-
buildPrepFixBlock(prep.findings, mode) +
|
|
172
|
-
"Fix the build/launch error (or launch the app manually), then re-run codeloop_run_journey. " +
|
|
173
|
-
"Driving a blank device is not valid evidence." +
|
|
174
|
-
authSuffix,
|
|
175
|
-
notes,
|
|
176
|
-
};
|
|
107
|
+
// 0.1.87 — boot+prep+launch one mobile target, with FALLBACK to the other
|
|
108
|
+
// mobile target if the first can't open. A Flutter app that ships both ios/
|
|
109
|
+
// and android/ should still produce visual evidence when, say, the iOS pods
|
|
110
|
+
// are broken but Android builds (the WedCheese case: gradle passed, xcode
|
|
111
|
+
// didn't). The host-native target is tried first; if it has no device or the
|
|
112
|
+
// app won't launch, CodeLoop tries the alternate platform once before giving
|
|
113
|
+
// up — so a single broken platform no longer means "0 screenshots".
|
|
114
|
+
const primary = target;
|
|
115
|
+
let outcome = await attemptMobileTarget(primary, {
|
|
116
|
+
cwd, runDir, mode, e2e: opts.e2e, dp, launchApp, notes,
|
|
117
|
+
});
|
|
118
|
+
if (!outcome.ok) {
|
|
119
|
+
const alt = alternateMobileTarget(primary, cwd);
|
|
120
|
+
if (alt) {
|
|
121
|
+
notes.push(`Primary mobile target ${primary} ${outcome.status === "device_required" ? "had no device" : "failed to launch"} — ` +
|
|
122
|
+
`falling back to ${alt}.`);
|
|
123
|
+
const altOutcome = await attemptMobileTarget(alt, {
|
|
124
|
+
cwd, runDir, mode, e2e: opts.e2e, dp, launchApp, notes,
|
|
125
|
+
});
|
|
126
|
+
if (altOutcome.ok) {
|
|
127
|
+
target = alt;
|
|
128
|
+
outcome = altOutcome;
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
notes.push(`Fallback target ${alt} also ${altOutcome.status === "device_required" ? "had no device" : "failed to launch"}.`);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (!outcome.ok) {
|
|
135
|
+
return {
|
|
136
|
+
status: outcome.status,
|
|
137
|
+
target_type: primary,
|
|
138
|
+
booted: outcome.booted,
|
|
139
|
+
steps: [],
|
|
140
|
+
screens_captured: [],
|
|
141
|
+
screenshots: [],
|
|
142
|
+
unsupported_count: 0,
|
|
143
|
+
manual_followups: [],
|
|
144
|
+
directive: outcome.directive,
|
|
145
|
+
notes,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
177
148
|
}
|
|
178
|
-
|
|
149
|
+
booted = outcome.booted;
|
|
150
|
+
appStop = outcome.appStop;
|
|
179
151
|
// Bring the device window frontmost so screenshots capture the APP, not the IDE.
|
|
180
152
|
try {
|
|
181
153
|
const { bringDeviceToFront } = await import("../runners/launch_liveness.js");
|
|
@@ -584,4 +556,89 @@ function launchFailed(target, reason, notes) {
|
|
|
584
556
|
notes,
|
|
585
557
|
};
|
|
586
558
|
}
|
|
559
|
+
/**
|
|
560
|
+
* 0.1.87 — boot the device for ONE mobile target, run the build pre-flight, and
|
|
561
|
+
* launch the app on it. Pushes evidence to the shared `notes`. Returns a
|
|
562
|
+
* structured outcome instead of returning the whole RunJourneyResult so the
|
|
563
|
+
* orchestrator can FALL BACK to the other mobile platform when this one can't
|
|
564
|
+
* open (no device, or app won't launch). Never throws.
|
|
565
|
+
*/
|
|
566
|
+
async function attemptMobileTarget(target, deps) {
|
|
567
|
+
const { cwd, runDir, mode, e2e, dp, launchApp, notes } = deps;
|
|
568
|
+
const platformName = target === "android_emulator" ? "android" : "ios";
|
|
569
|
+
// A connected PHYSICAL device (or an explicit, already-running e2e.device_id)
|
|
570
|
+
// needs no boot — launch directly on it.
|
|
571
|
+
const existing = await dp.resolveExistingDevice(platformName, e2e?.device_id);
|
|
572
|
+
const wantBoot = e2e?.boot_device !== false;
|
|
573
|
+
let booted;
|
|
574
|
+
if (existing) {
|
|
575
|
+
booted = { booted: true, already: true, device: existing.device };
|
|
576
|
+
notes.push(`Device (${target}): ${existing.reason}.`);
|
|
577
|
+
}
|
|
578
|
+
else if (wantBoot) {
|
|
579
|
+
const r = await dp.bootDevice({
|
|
580
|
+
platform: platformName,
|
|
581
|
+
avd: e2e?.android_avd ?? e2e?.device_id,
|
|
582
|
+
iosDevice: e2e?.ios_device ?? e2e?.device_id,
|
|
583
|
+
});
|
|
584
|
+
booted = { booted: r.booted, already: r.already, device: r.device, reason: r.reason };
|
|
585
|
+
if (r.command)
|
|
586
|
+
notes.push(`Booted via: ${r.command}`);
|
|
587
|
+
}
|
|
588
|
+
else {
|
|
589
|
+
const probe = await dp.probeBootedDevices();
|
|
590
|
+
const any = target === "android_emulator" ? probe.android.length > 0 : probe.ios.length > 0;
|
|
591
|
+
const dev = target === "android_emulator" ? probe.android[0] : probe.ios[0];
|
|
592
|
+
booted = { booted: any, already: any, device: dev, reason: any ? undefined : "boot_device:false and no device booted" };
|
|
593
|
+
}
|
|
594
|
+
if (!booted.booted) {
|
|
595
|
+
return {
|
|
596
|
+
ok: false,
|
|
597
|
+
status: "device_required",
|
|
598
|
+
booted,
|
|
599
|
+
directive: dp.buildOpenSimulatorsDirective({
|
|
600
|
+
booted: await dp.probeBootedDevices(),
|
|
601
|
+
targets: dp.detectMobileTargets(cwd),
|
|
602
|
+
context: "recording",
|
|
603
|
+
}),
|
|
604
|
+
};
|
|
605
|
+
}
|
|
606
|
+
// Build PRE-FLIGHT: pub get / pod install / create missing asset dirs (fix
|
|
607
|
+
// mode) BEFORE launch.
|
|
608
|
+
const prep = await prepareMobileBuildSafe({ cwd, target, mode, logPath: join(runDir, "logs", "build_prep.log") });
|
|
609
|
+
if (prep.directive)
|
|
610
|
+
notes.push(prep.directive);
|
|
611
|
+
// Device is up — now LAUNCH the app on it.
|
|
612
|
+
const launch = await launchApp({ cwd, target, bootedDevice: booted.device, logPath: join(runDir, "logs", "app_launch.log") });
|
|
613
|
+
notes.push(`App launch (${target}): ${launch.method} → ${launch.launched ? "launched" : "NOT launched"}${launch.reason ? ` (${launch.reason})` : ""}`);
|
|
614
|
+
if (!launch.launched) {
|
|
615
|
+
const authSuffix = await cliAuthSuffix(`${launch.reason ?? ""}\n${launch.error_excerpt ?? ""}`);
|
|
616
|
+
return {
|
|
617
|
+
ok: false,
|
|
618
|
+
status: "launch_failed",
|
|
619
|
+
booted,
|
|
620
|
+
directive: `The device booted but the APP DID NOT OPEN: ${launch.reason ?? "unknown"}. ` +
|
|
621
|
+
(launch.error_excerpt ? `\nLauncher output (tail):\n${launch.error_excerpt}\n` : "") +
|
|
622
|
+
buildPrepFixBlock(prep.findings, mode) +
|
|
623
|
+
"Fix the build/launch error (or launch the app manually), then re-run codeloop_run_journey. " +
|
|
624
|
+
"Driving a blank device is not valid evidence." +
|
|
625
|
+
authSuffix,
|
|
626
|
+
};
|
|
627
|
+
}
|
|
628
|
+
return { ok: true, booted, appStop: launch.stop };
|
|
629
|
+
}
|
|
630
|
+
/**
|
|
631
|
+
* 0.1.87 — the OTHER mobile platform to try when the primary target can't open.
|
|
632
|
+
* Only suggests a platform the project actually ships (ios/ or android/ folder),
|
|
633
|
+
* and only offers iOS when the host can run an iOS simulator (macOS).
|
|
634
|
+
*/
|
|
635
|
+
function alternateMobileTarget(primary, cwd) {
|
|
636
|
+
const hasIos = existsSync(join(cwd, "ios"));
|
|
637
|
+
const hasAndroid = existsSync(join(cwd, "android"));
|
|
638
|
+
if (primary === "ios_simulator" && hasAndroid)
|
|
639
|
+
return "android_emulator";
|
|
640
|
+
if (primary === "android_emulator" && hasIos && platform() === "darwin")
|
|
641
|
+
return "ios_simulator";
|
|
642
|
+
return undefined;
|
|
643
|
+
}
|
|
587
644
|
//# sourceMappingURL=run_journey.js.map
|
|
@@ -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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"}
|
package/dist/tools/verify.d.ts
CHANGED
|
@@ -94,7 +94,28 @@ export declare function formatVerifyProgress(u: {
|
|
|
94
94
|
total: number;
|
|
95
95
|
message: string;
|
|
96
96
|
};
|
|
97
|
-
|
|
97
|
+
/**
|
|
98
|
+
* 0.1.86 — should a full `codeloop_verify` AUTO-RUN the deep-E2E journey
|
|
99
|
+
* (launch + drive + screenshots) as its final phase?
|
|
100
|
+
*
|
|
101
|
+
* This is the structural fix for the recurring "the app never opened" failure:
|
|
102
|
+
* across WedCheese logs 7–10 the agent ran verify → diagnose and then STOPPED —
|
|
103
|
+
* each time for a different reason (audit, the hung-test ASK, a stale escalation
|
|
104
|
+
* counter, plain "you said verify not fix") — so codeloop_run_journey, a SEPARATE
|
|
105
|
+
* opt-in tool, was never called and the app was never launched. Folding the
|
|
106
|
+
* journey into verify removes the agent's discretion: the launch happens as part
|
|
107
|
+
* of verify itself. A launch_failed result is still produced (and IS the
|
|
108
|
+
* evidence), so a broken build no longer silently means "no visual evidence".
|
|
109
|
+
*
|
|
110
|
+
* Applies only to a FULL-scope verify on a UI-capable project, and only when the
|
|
111
|
+
* project owner hasn't opted out (`e2e.auto_journey:false` or
|
|
112
|
+
* `evidence.capture_screenshots:false`). Pure + exported for unit tests.
|
|
113
|
+
*/
|
|
114
|
+
export declare function shouldAutoRunJourney(scope: string | undefined, platform: string, config: CodeLoopConfig): boolean;
|
|
115
|
+
export declare function runVerify(input: VerifyInput, config: CodeLoopConfig, cwd?: string, onProgress?: VerifyProgress, verifyOpts?: {
|
|
116
|
+
enableAutoJourney?: boolean;
|
|
117
|
+
journeyMode?: import("../evidence/agent_mode.js").AgentMode;
|
|
118
|
+
}): Promise<VerifyOutput>;
|
|
98
119
|
/**
|
|
99
120
|
* Pick a single .sln (preferred) or .csproj target for `dotnet build` so we
|
|
100
121
|
* don't trigger MSB1011 ("Specify which project or solution file to use…")
|
|
@@ -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,wBAAsB,SAAS,CAC7B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,cAAc,EACtB,GAAG,GAAE,MAAsB,EAC3B,UAAU,CAAC,EAAE,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,CA83BvB;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"}
|
package/dist/tools/verify.js
CHANGED
|
@@ -398,7 +398,36 @@ export function formatVerifyProgress(u, prevProgress) {
|
|
|
398
398
|
const progress = Math.max(prevProgress + 0.001, elapsedS);
|
|
399
399
|
return { progress, total: totalS, message };
|
|
400
400
|
}
|
|
401
|
-
|
|
401
|
+
/**
|
|
402
|
+
* 0.1.86 — should a full `codeloop_verify` AUTO-RUN the deep-E2E journey
|
|
403
|
+
* (launch + drive + screenshots) as its final phase?
|
|
404
|
+
*
|
|
405
|
+
* This is the structural fix for the recurring "the app never opened" failure:
|
|
406
|
+
* across WedCheese logs 7–10 the agent ran verify → diagnose and then STOPPED —
|
|
407
|
+
* each time for a different reason (audit, the hung-test ASK, a stale escalation
|
|
408
|
+
* counter, plain "you said verify not fix") — so codeloop_run_journey, a SEPARATE
|
|
409
|
+
* opt-in tool, was never called and the app was never launched. Folding the
|
|
410
|
+
* journey into verify removes the agent's discretion: the launch happens as part
|
|
411
|
+
* of verify itself. A launch_failed result is still produced (and IS the
|
|
412
|
+
* evidence), so a broken build no longer silently means "no visual evidence".
|
|
413
|
+
*
|
|
414
|
+
* Applies only to a FULL-scope verify on a UI-capable project, and only when the
|
|
415
|
+
* project owner hasn't opted out (`e2e.auto_journey:false` or
|
|
416
|
+
* `evidence.capture_screenshots:false`). Pure + exported for unit tests.
|
|
417
|
+
*/
|
|
418
|
+
export function shouldAutoRunJourney(scope, platform, config) {
|
|
419
|
+
if (scope && scope !== "full")
|
|
420
|
+
return false; // quick "affected" checks stay fast
|
|
421
|
+
const uiCapable = ["flutter", "web", "xcode", "android", "mobile", "dotnet"].includes(platform);
|
|
422
|
+
if (!uiCapable)
|
|
423
|
+
return false;
|
|
424
|
+
if (config.evidence?.capture_screenshots === false)
|
|
425
|
+
return false;
|
|
426
|
+
if (config.e2e?.auto_journey === false)
|
|
427
|
+
return false;
|
|
428
|
+
return true;
|
|
429
|
+
}
|
|
430
|
+
export async function runVerify(input, config, cwd = process.cwd(), onProgress, verifyOpts = {}) {
|
|
402
431
|
const start = Date.now();
|
|
403
432
|
// Flutter hang fix: clear the per-run Flutter command cache so this verify
|
|
404
433
|
// memoizes `flutter analyze` / `flutter test --coverage` fresh. Without the
|
|
@@ -739,11 +768,48 @@ export async function runVerify(input, config, cwd = process.cwd(), onProgress)
|
|
|
739
768
|
// "launch + screenshot + drive interactions" capability actually gets used
|
|
740
769
|
// instead of being silently skipped.
|
|
741
770
|
const uiCapable = ["flutter", "web", "xcode", "android", "dotnet", "mobile"].includes(platform);
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
771
|
+
// 0.1.86 — AUTO-RUN the deep-E2E journey as verify's final phase (UI projects,
|
|
772
|
+
// full scope), instead of only telling the agent to call codeloop_run_journey
|
|
773
|
+
// next. This is the structural fix: the launch+drive happens INSIDE verify, so
|
|
774
|
+
// it can't be skipped by the agent stopping at diagnose. The handler enables
|
|
775
|
+
// this (verifyOpts.enableAutoJourney); direct unit-test callers leave it off so
|
|
776
|
+
// tests never boot a device.
|
|
777
|
+
let journeyRan = false;
|
|
778
|
+
if (verifyOpts.enableAutoJourney && shouldAutoRunJourney(scope, platform, config)) {
|
|
779
|
+
phaseLabel = "Launching + driving the app (deep-E2E journey)";
|
|
780
|
+
emitProgress();
|
|
781
|
+
try {
|
|
782
|
+
const { runJourney } = await import("./run_journey.js");
|
|
783
|
+
const jr = await runJourney({
|
|
784
|
+
cwd,
|
|
785
|
+
e2e: config.e2e,
|
|
786
|
+
targetApp: config.evidence?.target_app,
|
|
787
|
+
mode: verifyOpts.journeyMode,
|
|
788
|
+
});
|
|
789
|
+
journeyRan = true;
|
|
790
|
+
if (jr.screenshots && jr.screenshots.length > 0) {
|
|
791
|
+
screenshotPaths.push(...jr.screenshots);
|
|
792
|
+
}
|
|
793
|
+
const head = jr.status === "completed"
|
|
794
|
+
? `[CodeLoop] Deep-E2E journey RAN automatically (target ${jr.target_type}): the app was launched and driven, ${jr.screenshots.length} screenshot(s) captured across ${jr.screens_captured.length} screen(s).`
|
|
795
|
+
: jr.status === "launch_failed"
|
|
796
|
+
? `[CodeLoop] Deep-E2E journey ran but the APP DID NOT LAUNCH (target ${jr.target_type}) — this launch_failed IS the evidence: the app cannot currently open. Fix the build/launch blocker below, then re-run codeloop_verify (it will re-attempt the launch automatically).`
|
|
797
|
+
: `[CodeLoop] Deep-E2E journey could not start (target ${jr.target_type}, ${jr.status}) — no device was available to launch on.`;
|
|
798
|
+
captureNotes.push(`${head}\n${jr.directive}`);
|
|
799
|
+
}
|
|
800
|
+
catch (e) {
|
|
801
|
+
captureNotes.push(`[CodeLoop] Auto deep-E2E journey errored: ${e.message}. Call codeloop_run_journey to launch + drive the app manually.`);
|
|
802
|
+
}
|
|
803
|
+
}
|
|
804
|
+
// Fallback directive — only when the journey did NOT auto-run (opted out, or a
|
|
805
|
+
// direct verify caller). When it DID run, the journey's own directive above is
|
|
806
|
+
// the source of truth and this redundant "you must call run_journey" note is
|
|
807
|
+
// suppressed.
|
|
808
|
+
if (!journeyRan && uiCapable && screenshotPaths.length === 0 && config.evidence?.capture_screenshots !== false) {
|
|
809
|
+
// Launching + driving the app is VERIFICATION, not a code edit, so it runs
|
|
810
|
+
// even when the user asked the agent not to modify their code — that request
|
|
811
|
+
// only pauses source edits, never the visual/interactive evidence CodeLoop
|
|
812
|
+
// must produce.
|
|
747
813
|
captureNotes.push("[CodeLoop] MANDATORY NEXT STEP — VISUAL/INTERACTIVE evidence is PENDING and verify does NOT launch or drive the app. " +
|
|
748
814
|
"You MUST now call codeloop_run_journey: it does the whole thing in ONE step — launches the app (web/desktop/Flutter) or BOOTS the Android emulator / iOS simulator AND installs+launches the app, drives a planned journey (types into named fields, taps by label, submits, exercises the AI chatbox; via Maestro on mobile), screenshots every screen, records video, and emits the replay + visual_review + gate directive. " +
|
|
749
815
|
"This runs in every mode — even 'just list the problems, don't change my code' — because driving the app is verification, not a modification. " +
|
|
@@ -1272,6 +1338,35 @@ async function runNativeBuild(nativePlatform, cwd, logPath, config, skipTests =
|
|
|
1272
1338
|
if (!xcodeDir) {
|
|
1273
1339
|
return makeSkippedResult("xcode_build", "No .xcodeproj or .xcworkspace found");
|
|
1274
1340
|
}
|
|
1341
|
+
// 0.1.87 — A FLUTTER iOS app cannot be built with raw `xcodebuild` on the
|
|
1342
|
+
// Runner project: that skips the Flutter assemble phases and CocoaPods
|
|
1343
|
+
// integration, so the build fails with "Module 'cloud_firestore' not found"
|
|
1344
|
+
// (every pod search path missing) even when the pods ARE installed on disk
|
|
1345
|
+
// and `flutter build ios --simulator` succeeds — exactly the false negative
|
|
1346
|
+
// in the WedCheese log-11 run. For Flutter projects we must build through
|
|
1347
|
+
// the Flutter toolchain, which runs `pod install`, generates the plugin
|
|
1348
|
+
// registrant, and invokes xcodebuild on the .xcworkspace with pods linked.
|
|
1349
|
+
const flutterRoot = existsSync(join(cwd, "pubspec.yaml"))
|
|
1350
|
+
? cwd
|
|
1351
|
+
: (existsSync(join(dirname(xcodeDir), "pubspec.yaml")) ? dirname(xcodeDir) : undefined);
|
|
1352
|
+
if (flutterRoot) {
|
|
1353
|
+
if (!(await checkToolAvailable("flutter"))) {
|
|
1354
|
+
return makeSkippedResult("xcode_build", "flutter not found — install the Flutter SDK to build the iOS app");
|
|
1355
|
+
}
|
|
1356
|
+
const fResult = await runCommand("flutter", ["build", "ios", "--simulator", "--no-codesign"], flutterRoot, logPath, undefined, NATIVE_BUILD_TIMEOUT_MS);
|
|
1357
|
+
return {
|
|
1358
|
+
runner_name: "xcode_build",
|
|
1359
|
+
available: true,
|
|
1360
|
+
exit_code: fResult.exit_code,
|
|
1361
|
+
passed: fResult.exit_code === 0 ? 1 : 0,
|
|
1362
|
+
failed: fResult.exit_code === 0 ? 0 : 1,
|
|
1363
|
+
skipped: 0,
|
|
1364
|
+
log_path: logPath,
|
|
1365
|
+
duration_ms: fResult.duration_ms,
|
|
1366
|
+
stdout: fResult.stdout,
|
|
1367
|
+
stderr: fResult.stderr,
|
|
1368
|
+
};
|
|
1369
|
+
}
|
|
1275
1370
|
if (!(await checkToolAvailable("xcodebuild"))) {
|
|
1276
1371
|
return makeSkippedResult("xcode_build", "xcodebuild not found — install Xcode Command Line Tools: xcode-select --install");
|
|
1277
1372
|
}
|