v2.21.11 — Fix Dashboard, Doctor, MCP Reliability
Fix: Dashboard, Doctor, and MCP Reliability (#72)
Fixed — Doctor gave false positives for broken MCP configs
- MCP JSON validation —
doctornow validates the actual JSON structure of each MCP config file instead of just checking for the string "lean-ctx". Checks formcpServers→lean-ctx→commandfields, verifies the binary path exists, and reports per-IDE status (valid vs. broken configs). - Honest stats check — A missing
stats.jsonis now reported as a warning ("MCP server has not been used yet") instead of counting as a passed check.
Fixed — Dashboard showed empty state without guidance
- The empty state now includes an actionable troubleshooting checklist with IDE-specific steps (Cursor reload, Claude Code init, config validation).
Fixed — No session created until first tool call batch
- A session is now created immediately on MCP
initialize, sodoctor --reportalways shows session info even before any tools are used.
Fixed — Tool calls only logged when >100ms
- All tool calls are now logged regardless of duration. Previously, fast calls were silently dropped, making the tool call log appear empty.
Fixed — macOS binary hangs at _dyld_start after install
- On macOS, copying the binary (via
cp,install, or download) could strip the ad-hoc code signature, causing the dynamic linker to hang indefinitely on startup. Bothinstall.shand the self-updater now runxattr -cr+codesign --force --sign -after placing the binary.
Upgrade
cargo install lean-ctx # or
npm update -g lean-ctx-bin # or
brew upgrade lean-ctxFull Changelog: v2.21.11...v2.21.11