mirror of
https://github.com/nexu-io/open-design.git
synced 2026-10-27 09:51:12 +01:00
The payload branch of resolvePackagedLauncherRuntime only READ the persisted install.json launchPath (written once by the cold-start current-package branch) and never refreshed it. After an update that moved the launcher executable (0.17.0 Local\Programs\... exe to the 0.18.0 launcher payload), the stale path kept flowing into the MCP bootstrap command published by /api/mcp/install-info, so MCP clients relaunched the old executable on the same sidecar pipe until the launcher's stale-sidecar sweep killed the fresh daemon and desktop restart-looped. The payload branch now rewrites install.json when the persisted launchPath no longer matches the current launcher executable, so launchPath tracks the current launcher across updates. Only the launcher process refreshes the descriptor; a delegated payload desktop keeps the stable launch path the launcher persisted. Regression test goes red on main and green on this branch. Fixes #6494