Skip to content

ErebusEnigma/context-memory

v1.3.1 Breaking

This release includes breaking changes for platform teams planning a safe upgrade.

Published 3mo Relational Databases
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

claude-code claude-code-plugin context full-text-search memory plugin
+1 more
sqlite

Summary

AI summary

Fixed dashboard PUT crash when updating a single summary field without brief.

Full changelog

Fixed

  • install.py: generalized hook installation to loop over all hook types (Stop, PreCompact, etc.) instead of hardcoding Stop-only
  • uninstall.py: generalized hook removal to iterate all hook type keys, not just Stop
  • _hook_matches() in both install/uninstall: now recognizes pre_compact_save.py alongside auto_save.py and db_save.py
  • tests/test_dashboard.py: added pytest.importorskip("flask_cors") guard to prevent import errors when flask-cors is not installed
  • save_summary(): made brief optional for updates (COALESCE preserves existing value); still required for new summaries (raises ValueError). Fixes dashboard PUT crash when updating a single summary field without brief.
  • dashboard.py: api_delete_session() now cleans up context_checkpoints (linked by TEXT session_id) alongside the FK child tables. Previously, deleting a session via the dashboard left orphaned checkpoint rows.
  • README: corrected dedup mechanism description (brief pattern check, not detailed summary null check)
  • README: removed pip install context-memory[dashboard] (package not published to PyPI)
  • README: fixed CLI Tools paths from scripts/ to skills/context-memory/scripts/
  • README: updated test count from 351 to 364
  • recall.md: added missing --format flag to argument-hint and options list
  • schema-reference.md: added PRAGMA foreign_keys=ON to documented PRAGMA settings
  • db_search.py: fixed stale search_tier1() docstring to include code_snippets_fts
  • db_save.py: fixed save_messages() sequence collision when appending (replace=False) — now queries MAX(sequence) to continue numbering instead of restarting at 0
  • db_search.py: fixed search_tier1() cross-table BM25 score contamination — topic/snippet BM25 scores are no longer mixed with summary scores. Summary BM25 is now the sole ranking signal with a fixed boost per additional matching source. Non-summary matches are bucketed separately after summary matches.

Changed

  • test_dashboard.py: added regression tests for partial summary updates (outcome/user_note without brief) and checkpoint cleanup on session delete
  • test_db_save.py: added tests for save_summary update-without-brief and insert-without-brief-raises
  • Extracted shared read_hook_input() and extract_text_content(content, max_length=None) to db_utils.py, replacing duplicate implementations in auto_save.py and pre_compact_save.py
  • __init__.py: added exports for save_checkpoint, prune_checkpoints, read_hook_input, and extract_text_content
  • Comprehensive README rewrite: added Architecture section, CI/test badges, CLI Tools section, Testing section; expanded Features, Installation, How It Works, and Web Dashboard sections to match actual codebase capabilities
  • schema-reference.md: added context_checkpoints table documentation, Schema Migrations section, and checkpoint cleanup note
  • Updated tier 1 search descriptions in README, SKILL.md, CLAUDE.md, schema-reference.md, mcp_server.py, and db_init.py to reflect summary-ranked multi-source boost behavior

Full Changelog: https://github.com/ErebusEnigma/context-memory/compare/v1.3.0...v1.3.1

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track ErebusEnigma/context-memory

Get notified when new releases ship.

Sign up free

About ErebusEnigma/context-memory

Persistent, searchable context storage across Claude Code sessions using SQLite FTS5. Save sessions with AI-generated summaries, two-tier full-text search, checkpoint recovery, and a web dashboard.

All releases →

Beta — feedback welcome: [email protected]