v9.0.0 - Phase 0 Ontology Foundation
⚠️ MAJOR RELEASE - Contains breaking changes. Please read the Migration Guide before upgrading.
Breaking Changes
1. Memory Type Ontology
What Changed:
- Legacy memory types (task, note, standard) are deprecated
- New formal taxonomy: 5 base types with 21 subtypes
- observation, decision, learning, error, pattern
- Type validation now defaults to 'observation' for invalid types
Migration:
# Run migration script to update existing memories
python scripts/migrate_ontology.py2. Asymmetric Relationships
What Changed:
- Asymmetric relationships (causes, fixes, supports, follows) now store only directed edges
- Symmetric relationships (related, contradicts) continue storing bidirectional edges
- Database migration (010) automatically removes incorrect reverse edges
Code Changes Required:
# OLD (will no longer work):
result = storage.find_connected(memory_id, relationship_type="causes")
# NEW (correct approach):
result = storage.find_connected(
memory_id,
relationship_type="causes",
direction="both" # Explicit direction required
)New Features
Phase 0 Ontology Foundation (PR #347)
- Memory Type Ontology: Formal classification system with hierarchical taxonomy
- Tag Taxonomy: Structured namespace system (sys:, q:, proj:, topic:, t:, user:)
- Typed Relationships: 6 relationship types for knowledge graphs
- Lightweight Reasoning Engine: Foundation for causal inference (SemanticReasoner class)
- 97.5x Performance: Caching improvements in ontology validation
Response Size Limiter (PR #344)
- Added max_response_chars parameter to 5 memory retrieval tools
- Prevents context window overflow
- Truncates at memory boundaries (never mid-content)
- Environment variable: MCP_MAX_RESPONSE_CHARS
Bug Fixes
- Fixed 33 API/HTTP test failures (Issue #351, PR #352) - Import errors resolved
- Fixed validation tests (PR #350) - 38 legacy types migrated to new ontology
- Fixed bidirectional storage (Issue #348, PR #349) - Asymmetric relationships corrected
Performance Improvements
- get_all_types(): 97.5x speedup via module-level caching
- get_parent_type(): 35.9x speedup via cached reverse lookup map
- Tag validation: 47.3% speedup (eliminated double parsing)
Test Results
- 829/914 tests passing (90.7%)
- 80 new ontology tests with 100% backward compatibility
- All API/HTTP integration tests passing
Installation
pip install --upgrade mcp-memory-serviceSupport
Full Changelog: v8.76.0...v9.0.0