Repair aborts on musl (Alpine) with a network-blaming message, and smart_* then reports an unsupported language
## Before submitting - [x] I searched existing issues. #3254 settled the current split: install warns and continues on the tree-sitter step, repair aborts. #3095 called musl/Alpine an intentional fail-loud case. I'm asking to reconsider the repair abort for non-glibc Linux: there, the step passes only if a working binary already sits at the package-local path, the download can't provide one, and the remediation names neither that nor anything that works here. Without such a binary, the repair steps after it never run. #4758 and #4802 are about glibc .py. File may use an unsupported language or be empty. ``` 3. **The PATH fallback works at runtime, but doctor and repair don't count it.** With no package-local binary, the runtime already looks up `tree-sitter` on `PATH`. With a musl build of tree-sitter 0.26.7 (Alpine edge `tree-sitter-cli-0.26.7-r1`) on `PATH` plus `gcc` and `musl-dev` for `tree-sitter build`, `smart_outline` returns a full outline. In the same state, `npx claude-mem doctor` still reports: ``` ! tree-sitter CLI missing or unusable at .../node_modules/tree-sitter-cli/tree-sitter — smart_search/smart_outline disabled; run `npx claude-mem repair` ``` 4. **The PATH fallback accepts a CLI that is too old.** The `query` options the smart tools pass (`-p/--grammar-path`, `-l/--lib-path`, `--lang-name`) first appear in tree-sitter 0.26.0. Alpine 3.21's stable `tree-sitter-cli` is 0.24.4. It passes the `--version` check (`/^tree-sitter \d+\.\d+\.\d+(?:\s|$)/`), but its `query` rejects those options, so every query fails and `smart_outline` again shows the unsupported-language message. ### Steps to Reproduce 1. Alpine Linux 3.21 x86_64 (musl), claude-mem 14.0.1 installed. 2. `npx claude-mem repair` → aborts as in (1). 3. Call `smart_outline` on any `.py` file → message from (2). 4. Put a musl tree-sitter ≥ 0.26 on `PATH`, install `gcc musl-dev`, call `smart_outline` again → works. `npx claude-mem doctor` → still the warning from (3). ### Expected Behavior - On a non-glibc Linux, repair warns and continues on the tree-sitter step, as install already does. The remediation says that no musl build is published and names the way out: a tree-sitter ≥ 0.26 on `PATH` plus a C compiler. - `smart_*` says the CLI is missing, not that the language is unsupported. - The doctor resolves the CLI the same way the runtime does, so a loadable `tree-sitter` on `PATH` counts as available. - The PATH fallback rejects a CLI older than the options it needs. ### Environment - **Claude-mem version**: 14.0.1 - **Claude Code version**: 2.1.302 - **OS**: Alpine Linux 3.21.7 (musl), container on Home Assistant OS - **Platform**: linux x64, Bun 1.3.13