Skip to content

fix(cli): the PATH version check never runs inside the check it starts - #1432

Merged
abrichr merged 1 commit into
mainfrom
fix/launcher-check-recursion
Oct 20, 2026
Merged

abrichr merged 1 commit into
mainfrom
fix/launcher-check-recursion

Conversation

@abrichr

@abrichr abrichr commented Oct 20, 2026

Copy link
Copy Markdown
Member

Bug, unreleased (#1408): openadapt --version runs <other openadapt> --version to warn about a shadowing install. That child runs the same check and asks the first one back. With two installs that both have the check, they recurse forever, and processes orphaned by the 15 s timeout keep spawning more. On 2026-10-20 it fork-bombed a dev Mac to a load of about 900.

Fix: the child runs with OPENADAPT_NO_LAUNCHER_CHECK=1, and _warn_about_launcher_conflicts returns at once when that's set. A new test covers both the guard on the child's environment and the early return. This has to land before launcher 1.18.0.

🤖 Generated with Claude Code

`openadapt --version` asks any other openadapt on PATH for its version, and
that one ran the same check, asking the first back. With two installs that
both carry the check, they recursed without bound (a fork bomb, load ~900 on
2026-10-20). The child now runs with OPENADAPT_NO_LAUNCHER_CHECK=1, and the
check returns at once when it is set.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@abrichr
abrichr enabled auto-merge October 20, 2026 16:32
@abrichr
abrichr added this pull request to the merge queue Oct 20, 2026
Merged via the queue into main with commit 2775a54 Oct 20, 2026
34 checks passed
@abrichr
abrichr deleted the fix/launcher-check-recursion branch October 20, 2026 16:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant