chore: checkpoint current worktree state

This commit is contained in:
Mohamed Boudra
2026-04-11 13:09:51 +07:00
parent 3b8cfcbec6
commit aa1d33f0a0
7 changed files with 246 additions and 301 deletions
+32 -3
View File
@@ -4,6 +4,7 @@ import { spawnProcess } from "@getpaseo/server";
import { createRequire } from "node:module";
import path from "node:path";
import { app } from "electron";
import log from "electron-log/main";
import {
DESKTOP_CLI_ENV,
createNodeEntrypointInvocation as createSharedNodeEntrypointInvocation,
@@ -284,7 +285,18 @@ export async function runCliTextCommand(args: string[]): Promise<string> {
if (result.exitCode !== 0) {
const stderr = result.stderr.trim();
throw new Error(stderr.length > 0 ? stderr : `CLI command failed with exit code ${result.exitCode}`);
const stdout = result.stdout.trim();
log.warn("[desktop cli]", `CLI text command failed`, {
args,
exitCode: result.exitCode,
stdout: stdout.slice(0, 500),
stderr: stderr.slice(0, 500),
});
throw new Error(
stderr.length > 0
? stderr
: `CLI command failed with exit code ${result.exitCode}${stdout.length > 0 ? `\nstdout: ${stdout.slice(0, 200)}` : ""}`,
);
}
return result.stdout.trimEnd();
@@ -298,11 +310,24 @@ export async function runCliJsonCommand(args: string[]): Promise<unknown> {
if (result.exitCode !== 0) {
const stderr = result.stderr.trim();
throw new Error(stderr.length > 0 ? stderr : `CLI command failed with exit code ${result.exitCode}`);
const stdout = result.stdout.trim();
log.warn("[desktop cli]", `CLI command failed`, {
args,
exitCode: result.exitCode,
stdout: stdout.slice(0, 500),
stderr: stderr.slice(0, 500),
command: invocation.command,
});
throw new Error(
stderr.length > 0
? stderr
: `CLI command failed with exit code ${result.exitCode}${stdout.length > 0 ? `\nstdout: ${stdout.slice(0, 200)}` : ""}`,
);
}
const stdout = result.stdout.trim();
if (stdout.length === 0) {
log.warn("[desktop cli]", `CLI command produced no output`, { args });
throw new Error("CLI command did not produce JSON output.");
}
@@ -310,7 +335,11 @@ export async function runCliJsonCommand(args: string[]): Promise<unknown> {
// Extract the first valid JSON object or array from the output.
const jsonStart = stdout.search(/[{[]/);
if (jsonStart < 0) {
throw new Error("CLI command output contained no JSON.");
log.warn("[desktop cli]", `CLI command output contained no JSON`, {
args,
stdout: stdout.slice(0, 500),
});
throw new Error(`CLI command output contained no JSON. Output: ${stdout.slice(0, 200)}`);
}
const jsonText = stdout.slice(jsonStart);