v10.2.3

thedotmack/claude-memv10.2.3Feb 17, 2026by thedotmack

AI Summary

This is a bug fix release addressing persistent embedding pipeline failures caused by Chroma ONNX model cache corruption. Three root causes were identified and fixed: the destructive `bun pm cache rm` command that broke ONNX resolution, missing `bun install` in the plugin cache directory, and the ONNX model being stored inside node_modules where it could be corrupted on reinstall.

Key Highlights

  • Removed destructive `bun pm cache rm` command from install scripts that was breaking ONNX resolution chain
  • Added `bun install` in plugin cache directory after marketplace sync to enable runtime dependency resolution
  • Moved HuggingFace model cache from node_modules to `~/.claude-mem/models/` to prevent corruption on reinstall
  • Added self-healing retry mechanism that automatically clears and re-downloads corrupted models
  • Fixed issues reported across multiple GitHub issues (#1104, #1105, #1110)

Breaking Changes

  • HuggingFace model cache location changed from `node_modules/@huggingface/transformers/.cache/` to `~/.claude-mem/models/`

New Features

  • Self-healing retry for Protobuf parsing failures with automatic cache clearing and re-download
  • Proper dependency installation in plugin cache directory after marketplace sync

Full Release Notes

## Fix Chroma ONNX Model Cache Corruption

Addresses the persistent embedding pipeline failures reported across #1104, #1105, #1110, and subsequent sessions. Three root causes identified and fixed:

### Changes

- **Removed nuclear `bun pm cache rm`** from both `smart-install.js` and `sync-marketplace.cjs`. This was added in v10.2.2 for the now-removed sharp dependency but destroyed all cached packages, breaking the ONNX resolution chain.
- **Added `bun install` in plugin cache directory** after marketplace sync. The cache directory had a `package.json` with `@chroma-core/default-embed` as a dependency but never ran install, so the worker couldn't resolve it at runtime.
- **Moved HuggingFace model cache to `~/.claude-mem/models/`** outside `node_modules`. The ~23MB ONNX model was stored inside `node_modules/@huggingface/transformers/.cache/`, so any reinstall or cache clear corrupted it.
- **Added self-healing retry** for Protobuf parsing failures. If the downloaded model is corrupted, the cache is cleared and re-downloaded automatically on next use.

### Files Changed

- `scripts/smart-install.js` — removed `bun pm cache rm`
- `scripts/sync-marketplace.cjs` — removed `bun pm cache rm`, added `bun install` in cache dir
- `src/services/sync/ChromaSync.ts` — moved model cache, added corruption recovery