OpenClawBot / src /macos /relay-smoke.ts
darkfire514's picture
Upload 2526 files
fb4d8fe verified
export type RelaySmokeTest = "qr";
export function parseRelaySmokeTest(args: string[], env: NodeJS.ProcessEnv): RelaySmokeTest | null {
const smokeIdx = args.indexOf("--smoke");
if (smokeIdx !== -1) {
const value = args[smokeIdx + 1];
if (!value || value.startsWith("-")) {
throw new Error("Missing value for --smoke (expected: qr)");
}
if (value === "qr") {
return "qr";
}
throw new Error(`Unknown smoke test: ${value}`);
}
if (args.includes("--smoke-qr")) {
return "qr";
}
// Back-compat: only run env-based smoke mode when no CLI args are present,
// to avoid surprising early-exit when users set env vars globally.
if (args.length === 0 && (env.OPENCLAW_SMOKE_QR === "1" || env.OPENCLAW_SMOKE === "qr")) {
return "qr";
}
return null;
}
export async function runRelaySmokeTest(test: RelaySmokeTest): Promise<void> {
switch (test) {
case "qr": {
const { renderQrPngBase64 } = await import("../web/qr-image.js");
await renderQrPngBase64("smoke-test");
return;
}
}
}