openclaw/scripts/lib/bun-cli-launcher.d.mts
Peter Steinberger c4228dc7ee
fix(cli): openclaw command fails to start on Bun-only installs without Node (#162541)
Fix plain openclaw startup on trusted POSIX Bun-only global installs by
pinning the installed Bun executable. Keep paths as inert launcher data so
released updaters can relocate them safely, with existing ownership, Doctor
consent, and rollback handling.

Validated 114 focused tests per runtime, package/tarball integrity, native
published-9.7 plain/apostrophe upgrades, and byte-exact rollback controls.
Document the inherited 9.7 readiness wait and the 9.6 upgrade limitation.

CI exception: the only failing test job reproduces an inherited browser
mock-cache defect already fixed on main by #162796; all other selected
checks passed. Exact-head ClawSweeper found no actionable code issue.
2026-10-01 12:53:07 -07:00

16 lines
844 B
TypeScript

export type BunCliLauncherTarget = { bunPath: string; entryPath: string };
export type BunCliLauncherParams = { packageRoot: string; bunPath: string; binDir: string };
export type BunCliLauncherInspection = {
path: string;
state: "current" | "missing" | "stale" | "conflict";
};
export function renderBunCliLauncher(target: BunCliLauncherTarget): string;
export function getBunCliLauncherPathIssue(target: BunCliLauncherTarget): string | null;
export function parseBunCliLauncher(content: string): BunCliLauncherTarget | null;
export function resolveBunGlobalBinDir(params: {
bunPath: string;
env?: NodeJS.ProcessEnv;
cwd?: string;
}): string;
export function inspectBunCliLauncher(params: BunCliLauncherParams): BunCliLauncherInspection;
export function installBunCliLauncher(params: BunCliLauncherParams): BunCliLauncherInspection;