Repository navigation
v0.25.3
Fixed
-
Capture no longer dies silently when the OS purges the model cache. fastembed
defaults its ONNX cache totempfile.gettempdir(); on macOS that directory is purged
on a timer. The purge removes the small config/tokenizer blobs first and leaves the
snapshot's symlinks dangling, so every model load then fails with
Could not find config.json.The damage was invisible in two separate ways:
cairn sweepcrashed outright — and
the plugin's capture hook sent its output to/dev/null, so sessions could go
uncaptured for weeks with no error anywhere — while recall appeared to keep working
because it silently fell back to BM25-only, quietly losing semantic retrieval.agentcairn now pins the cache to a persistent directory it owns
(~/.cache/agentcairn/models, beside the index) for both the embedder and the
cross-encoder reranker. An explicitFASTEMBED_CACHE_PATHstill wins.
Changed
cairn doctornow verifies the embedder actually loads and fails with aPROBLEM
when it does not. A healthy index never implied a healthy model: the index is a static
file, the model is a cache that can rot long after it was built. Doctor previously
reportedstatus: OKwhile capture was dead and recall was degraded.- The capture hook keeps its output in
~/.cache/agentcairn/logs/capture.log
(truncated per run) instead of discarding it, so a failing sweep leaves a trace.
Claude Code plugin0.4.2, Codex plugin0.1.4.
If capture has been quiet for you, upgrade and run cairn doctor — it will now tell
you the truth. A single cairn sweep re-distills any sessions whose transcripts are
still on disk, so a backlog is usually recoverable rather than lost.