• v3.12.1 72e6299ccf

    v3.12.1 Stable

    ric_harvey released this 2026-03-30 11:59:51 +00:00 | 124 commits to main since this release

    What's new

    Performance optimisations (v3.12.0)

    • Briefing: 3 episodic scans consolidated into 1 — stale memories, contradiction warnings, and reinstate candidates collected in a single pass. Reduces session-start latency by ~200-400ms per 1,000 memories
    • Dashboard: single-pass scan — state counts and recent memories in one loop per namespace instead of two
    • Memories page: projects extracted during same scan — removed separate re-scan of all namespaces
    • Metrics endpoint: 60-second cache/metrics no longer re-scans all memories on every Prometheus scrape. Configurable via METRICS_CACHE_TTL
    • Docker: multi-stage builds — all three Dockerfiles use a builder stage with gcc/g++ and slim runtime with only libgomp1/libopenblas0. Removes ~300-500MB from final images
    • Maintenance: pairwise comparison cap — capped at 2,000 comparisons (was unbounded O(n^2))
    • Dedup: max_similarity tracked during union-find — eliminates redundant re-scan
    • RSS worker: configurable connection poolVALKEY_MAX_CONNECTIONS env var (default 50)

    Bug fix (v3.12.1)

    • Auto-maintenance contradiction scanner producing mass false positives: The heuristic negation check was running on all pairwise combinations without semantic similarity filtering. Memories containing common words like "use", "with", or "works" matched against almost everything, producing 100+ false positives per briefing. Now embeds content and requires cosine similarity >= 0.5 before checking negation patterns, matching the Tier 1 approach used in remember(). Results capped at 10 per maintenance run

    Also included (v3.11.0–v3.11.1)

    • Real tool call telemetry via FastMCP middleware — records call count, duration, response size per tool to Valkey
    • Token overhead page shows measured averages from actual usage since uptime
    • Prometheus gauges for omnimem_tool_calls_total and omnimem_tool_errors_total
    • Token Overhead link moved after Refresh button on Telemetry page (#8)
    Downloads