When running the native version cleanup after an update, Claude Code now checks whether the launcher at the executable path is a native-installer-managed symlink. If the launcher is externally managed (not a symlink into the claude/versions/ directory and not an npm shim), version cleanup is skipped with a clear message rather than potentially interfering with the external manager.
Evidence
Launcher ownership check (search for "Skipping native version cleanup: the launcher at" and "not created by the native installer")
Strings lifted out of the shipped bundle, so the claim above can be checked against them.