feat(FN-3404): add local embedded runtime manager to desktop app

Adds a local runtime manager to the desktop app (FN-3404) — an embedded engine process managed via IPC with packaging for bundled dependencies and lifecycle documentation. Also includes project mapping onboarding UI with persistence and rollback (FN-3505), plus related dashboard API and hook updates

Fusion-Task-Id: FN-3404
This commit is contained in:
Fusion
2026-05-07 19:48:58 -07:00
committed by gsxdsm
parent 65a9371d31
commit 22834e5c4e
13 changed files with 495 additions and 97 deletions

View File

@@ -10,6 +10,7 @@ const workspaceRoot = resolve(packageRoot, "..", "..");
const dashboardClientDir = join(workspaceRoot, "packages", "dashboard", "dist", "client");
const desktopDistDir = join(packageRoot, "dist");
const desktopClientDistDir = join(desktopDistDir, "client");
const externalMainProcessPackages = ["electron", "@fusion/core", "@fusion/dashboard"];
function run(command: string, args: string[], cwd: string): Promise<void> {
return new Promise((resolvePromise, rejectPromise) => {
@@ -58,7 +59,7 @@ async function buildElectronEntrypoints(): Promise<void> {
target: "node22",
sourcemap: true,
packages: "external",
external: ["electron"],
external: externalMainProcessPackages,
logLevel: "info",
}),
build({
@@ -70,7 +71,7 @@ async function buildElectronEntrypoints(): Promise<void> {
target: "node22",
sourcemap: true,
packages: "external",
external: ["electron"],
external: externalMainProcessPackages,
logLevel: "info",
}),
]);