diff --git a/packages/cli/src/__tests__/cmd-fix.test.ts b/packages/cli/src/__tests__/cmd-fix.test.ts index d573946c..77f1e79b 100644 --- a/packages/cli/src/__tests__/cmd-fix.test.ts +++ b/packages/cli/src/__tests__/cmd-fix.test.ts @@ -412,8 +412,9 @@ describe("cmdFix", () => { await loadManifest(true); global.fetch = savedFetch; - await cmdFix("nonexistent-id"); + await expect(cmdFix("nonexistent-id")).rejects.toThrow("process.exit"); + expect(processExitSpy).toHaveBeenCalledWith(1); expect(clack.logError).toHaveBeenCalledWith(expect.stringContaining("not found")); }); diff --git a/packages/cli/src/commands/fix.ts b/packages/cli/src/commands/fix.ts index 4c172931..ff0db431 100644 --- a/packages/cli/src/commands/fix.ts +++ b/packages/cli/src/commands/fix.ts @@ -226,7 +226,7 @@ export async function cmdFix(spawnId?: string, options?: FixOptions): Promise")}`); - return; + process.exit(1); } // Interactive picker: show active servers and let user choose @@ -264,7 +264,7 @@ export async function cmdFix(spawnId?: string, options?: FixOptions): Promise (r.id || r.timestamp) === selected); if (!record) { p.log.error("Spawn not found."); - return; + process.exit(1); } await fixSpawn(record, manifest, options);