mirror of
https://github.com/samvallad33/vestige.git
synced 2026-04-24 16:26:22 +02:00
Retention Target System: auto-GC low-retention memories during consolidation (VESTIGE_RETENTION_TARGET env var, default 0.8). Auto-Promote: memories accessed 3+ times in 24h get frequency-dependent potentiation. Waking SWR Tagging: promoted memories get preferential 70/30 dream replay. Improved Consolidation Scheduler: triggers on 6h staleness or 2h active use. New tools: memory_health (retention dashboard with distribution buckets, trend tracking, recommendations) and memory_graph (subgraph export with Fruchterman-Reingold force-directed layout, up to 200 nodes). Dream connections now persist to database via save_connection(), enabling memory_graph traversal. Schema Migration V8 adds waking_tag, utility_score, times_retrieved/useful columns and retention_snapshots table. 21 MCP tools. v1.9.1 fixes: ConnectionRecord export, UTF-8 safe truncation, link_type normalization, utility_score clamping, only-new-connections persistence, 70/30 split capacity fill, nonexistent center_id error handling. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
10 KiB
10 KiB
Changelog
All notable changes to Vestige will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[1.8.0] - 2026-02-21
Added
session_contexttool — one-call session initialization replacing 5 separate calls (search × 2, intention check, system_status, predict). Token-budgeted responses (~15K tokens → ~500-1000 tokens). Returns assembled markdown context,automationTriggers(needsDream/needsBackup/needsGc), andexpandablememory IDs for on-demand retrieval.token_budgetparameter onsearch— limits response size (100-10000 tokens). Results exceeding budget moved toexpandablearray withtokensUsed/tokenBudgettracking.- Reader/writer connection split —
Storagestruct usesMutex<Connection>for separate reader/writer SQLite handles with WAL mode. All methods take&self(interior mutability).Arc<Mutex<Storage>>→Arc<Storage>across ~30 files. - int8 vector quantization —
ScalarKind::F16→I8(2x memory savings, <1% recall loss) - Migration v7 — FTS5 porter tokenizer (15-30% keyword recall) + page_size 8192 (10-30% faster large-row reads)
- 22 new tests for session_context and token_budget (335 → 357 mcp tests, 651 total)
Changed
- Tool count: 18 → 19
EmbeddingService::init()changed from&mut selfto&self(deadmodel_loadedfield removed)- CLAUDE.md updated: session start uses
session_context, 19 tools documented, development section reflects storage architecture
Performance
- Session init: ~15K tokens → ~500-1000 tokens (single tool call)
- Vector storage: 2x reduction (F16 → I8)
- Keyword search: 15-30% better recall (FTS5 porter stemming)
- Large-row reads: 10-30% faster (page_size 8192)
- Concurrent reads: non-blocking (reader/writer WAL split)
[1.7.0] - 2026-02-20
Changed
- Tool consolidation: 23 → 18 tools — merged redundant tools while maintaining 100% backward compatibility via deprecated redirects
ingest→smart_ingest—ingestwas a duplicate ofsmart_ingest; now redirects automaticallysession_checkpoint→smart_ingestbatch mode — newitemsparameter onsmart_ingestaccepts up to 20 items, each running the full cognitive pipeline (importance scoring, intent detection, synaptic tagging, hippocampal indexing). Oldsession_checkpointskipped the cognitive pipeline.promote_memory+demote_memory→memoryunified — newpromoteanddemoteactions on thememorytool with optionalreasonparameter and full cognitive feedback pipeline (reward signal, reconsolidation, competition)health_check+stats→system_status— single tool returns combined health status, full statistics, FSRS preview, cognitive module health, state distribution, warnings, and recommendations- CLAUDE.md automation overhaul — all 18 tools now have explicit auto-trigger rules; session start expanded to 5 steps (added
system_status+predict); full proactive behaviors table
Added
smart_ingestbatch mode withitemsparameter (max 20 items, full cognitive pipeline per item)memoryactions:promoteanddemotewith optionalreasonparametersystem_statustool combining health check + statistics + cognitive health- 30 new tests (305 → 335)
Deprecated (still work via redirects)
ingest→ usesmart_ingestsession_checkpoint→ usesmart_ingestwithitemspromote_memory→ usememory(action="promote")demote_memory→ usememory(action="demote")health_check→ usesystem_statusstats→ usesystem_status
[1.6.0] - 2026-02-19
Changed
- F16 vector quantization — USearch vectors stored as F16 instead of F32 (2x storage savings)
- Matryoshka 256-dim truncation — embedding dimensions reduced from 768 to 256 (3x embedding storage savings)
- Convex Combination fusion — replaced RRF with 0.3 keyword / 0.7 semantic weighted fusion for better score preservation
- Cross-encoder reranker — added Jina Reranker v1 Turbo (fastembed TextRerank) for neural reranking (~20% retrieval quality improvement)
- Combined: 6x vector storage reduction with better retrieval quality
- Cross-encoder loads in background — server starts instantly
- Old 768-dim embeddings auto-migrated on load
[1.5.0] - 2026-02-18
Added
- CognitiveEngine — 28-module stateful engine with full neuroscience pipeline on every tool call
dreamtool — memory consolidation via replay, discovers hidden connections and synthesizes insightsexplore_connectionstool — graph traversal with chain, associations, and bridges actionspredicttool — proactive retrieval based on context and activity patternsrestoretool — restore memories from JSON backup files- Automatic consolidation — FSRS-6 decay runs on a 6-hour timer + inline every 100 tool calls
- ACT-R base-level activation with full access history
- Episodic-to-semantic auto-merge during consolidation
- Cross-memory reinforcement on access
- Park et al. triple retrieval scoring
- Personalized w20 optimization
Changed
- All existing tools upgraded with cognitive pre/post processing pipelines
- Tool count: 19 → 23
[1.3.0] - 2026-02-12
Added
importance_scoretool — 4-channel neuroscience scoring (novelty, arousal, reward, attention)session_checkpointtool — batch smart_ingest up to 20 items with Prediction Error Gatingfind_duplicatestool — cosine similarity clustering with union-find for dedupvestige ingestCLI command for memory ingestion via command line
Changed
- Tool count: 16 → 19
- Made
get_node_embeddingpublic in core API - Added
get_all_embeddingsfor duplicate scanning
[1.2.0] - 2026-02-12
Added
- Web dashboard — Axum-based on port 3927 with memory browser, search, and system stats
memory_timelinetool — browse memories chronologically, grouped by daymemory_changelogtool — audit trail of memory state transitionshealth_checktool — system health status with recommendationsconsolidatetool — run FSRS-6 maintenance cyclestatstool — full memory system statisticsbackuptool — create SQLite database backupsexporttool — export memories as JSON/JSONL with filtersgctool — garbage collect low-retention memoriesbackup_to()andget_recent_state_transitions()storage APIs
Changed
- Search now supports
detail_level(brief/summary/full) to control token usage - Tool count: 8 → 16
[1.1.3] - 2026-02-12
Changed
- Upgraded to Rust edition 2024
- Security hardening and dependency updates
Fixed
- Dedup on ingest edge cases
- Intel Mac CI builds
- NPM package version alignment
- Removed dead TypeScript package
[1.1.2] - 2025-01-27
Fixed
- Embedding model cache now uses platform-appropriate directories instead of polluting project folders
- macOS:
~/Library/Caches/com.vestige.core/fastembed - Linux:
~/.cache/vestige/fastembed - Windows:
%LOCALAPPDATA%\vestige\cache\fastembed
- macOS:
- Can still override with
FASTEMBED_CACHE_PATHenvironment variable
[1.1.1] - 2025-01-27
Fixed
- UTF-8 string slicing issues in keyword search and prospective memory
- Silent error handling in MCP stdio protocol
- Feature flag forwarding between crates
- All GitHub issues resolved (#1, #3, #4)
Added
- Pre-built binaries for Linux, Windows, and macOS (Intel & ARM)
- GitHub Actions CI/CD for automated releases
[1.1.0] - 2025-01-26
Changed
- Tool Consolidation: 29 tools → 8 cognitive primitives
recall,semantic_search,hybrid_search→searchget_knowledge,delete_knowledge,get_memory_state→memoryremember_pattern,remember_decision,get_codebase_context→codebase- 5 intention tools →
intention
- Stats and maintenance moved from MCP to CLI (
vestige stats,vestige health, etc.)
Added
- CLI admin commands:
vestige stats,vestige health,vestige consolidate,vestige restore - Feedback tools:
promote_memory,demote_memory - 30+ FAQ entries with verified neuroscience claims
- Storage modes documentation: Global, per-project, multi-Claude household
- CLAUDE.md templates for proactive memory use
- Version pinning via git tags
Deprecated
- Old tool names (still work with warnings, removed in v2.0)
[1.0.0] - 2025-01-25
Added
- FSRS-6 spaced repetition algorithm with 21 parameters
- Bjork & Bjork dual-strength memory model (storage + retrieval strength)
- Local semantic embeddings with fastembed v5 (BGE-base-en-v1.5, 768 dimensions)
- HNSW vector search with USearch (20x faster than FAISS)
- Hybrid search combining BM25 keyword + semantic + RRF fusion
- Two-stage retrieval with reranking (+15-20% precision)
- MCP server for Claude Desktop integration
- Tauri desktop application
- Codebase memory module for AI code understanding
- Neuroscience-inspired memory mechanisms:
- Synaptic Tagging and Capture (retroactive importance)
- Context-Dependent Memory (Tulving encoding specificity)
- Spreading Activation Networks
- Memory States (Active/Dormant/Silent/Unavailable)
- Multi-channel Importance Signals (Novelty/Arousal/Reward/Attention)
- Hippocampal Indexing (Teyler & Rudy 2007)
- Prospective memory (intentions and reminders)
- Sleep consolidation with 5-stage processing
- Memory compression for long-term storage
- Cross-project learning for universal patterns
Changed
- Upgraded embedding model from all-MiniLM-L6-v2 (384d) to BGE-base-en-v1.5 (768d)
- Upgraded fastembed from v4 to v5
Fixed
- SQL injection protection in FTS5 queries
- Infinite loop prevention in file watcher
- SIGSEGV crash in vector index (reserve before add)
- Memory safety with Mutex wrapper for embedding model
[0.1.0] - 2025-01-24
Added
- Initial release
- Core memory storage with SQLite + FTS5
- Basic FSRS scheduling
- MCP protocol support
- Desktop app skeleton