@@ -343,3 +343,136 @@ Export memories from mcp-memory-service → Import to shodh-cloudflare → Sync
343343- ** v10.23.0** - Quality scorer fix, consolidator improvements, two new opt-out flags: fix asyncio NameError in ai_evaluator.py (#544 ), fix consolidator invalid memory_type and dedup bug (#545 ), MCP_TYPED_EDGES_ENABLED opt-out (#546 ), MCP_CONSOLIDATION_STORE_ASSOCIATIONS opt-out (#547 ) — 14 new tests
344344
345345** Full version history** : [ CHANGELOG.md] ( CHANGELOG.md ) | [ Older versions (v10.22.0 and earlier)] ( docs/archive/CHANGELOG-HISTORIC.md ) | [ All Releases] ( https://github.com/doobidoo/mcp-memory-service/releases )
346+
347+ ---
348+
349+ ## Migration to v9.0.0
350+
351+ ** ⚡ TL;DR** : No manual migration needed - upgrades happen automatically!
352+
353+ ** Breaking Changes:**
354+ - ** Memory Type Ontology** : Legacy types auto-migrate to new taxonomy (task→observation, note→observation)
355+ - ** Asymmetric Relationships** : Directed edges only (no longer bidirectional)
356+
357+ ** Migration Process:**
358+ 1 . Stop your MCP server
359+ 2 . Update to latest version (` git pull ` or ` pip install --upgrade mcp-memory-service ` )
360+ 3 . Restart server - automatic migrations run on startup:
361+ - Database schema migrations (009, 010)
362+ - Memory type soft-validation (legacy types → observation)
363+ - No tag migration needed (backward compatible)
364+
365+ ** Safety** : Migrations are idempotent and safe to re-run
366+
367+ ---
368+
369+ ### Breaking Changes
370+
371+ #### 1. Memory Type Ontology
372+
373+ ** What Changed:**
374+ - Legacy memory types (task, note, standard) are deprecated
375+ - New formal taxonomy: 5 base types (observation, decision, learning, error, pattern) with 21 subtypes
376+ - Type validation now defaults to 'observation' for invalid types (soft validation)
377+
378+ ** Migration Process:**
379+ ✅ ** Automatic** - No manual action required!
380+
381+ When you restart the server with v9.0.0:
382+ - Invalid memory types are automatically soft-validated to 'observation'
383+ - Database schema updates run automatically
384+ - Existing memories continue to work without modification
385+
386+ ** New Memory Types:**
387+ - observation: General observations, facts, and discoveries
388+ - decision: Decisions and planning
389+ - learning: Learnings and insights
390+ - error: Errors and failures
391+ - pattern: Patterns and trends
392+
393+ ** Backward Compatibility:**
394+ - Existing memories will be auto-migrated (task→observation, note→observation, standard→observation)
395+ - Invalid types default to 'observation' (no errors thrown)
396+
397+ #### 2. Asymmetric Relationships
398+
399+ ** What Changed:**
400+ - Asymmetric relationships (causes, fixes, supports, follows) now store only directed edges
401+ - Symmetric relationships (related, contradicts) continue storing bidirectional edges
402+ - Database migration (010) removes incorrect reverse edges
403+
404+ ** Migration Required:**
405+ No action needed - database migration runs automatically on startup.
406+
407+ ** Code Changes Required:**
408+ If your code expects bidirectional storage for asymmetric relationships:
409+
410+ ``` python
411+ # OLD (will no longer work):
412+ # Asymmetric relationships were stored bidirectionally
413+ result = storage.find_connected(memory_id, relationship_type = " causes" )
414+
415+ # NEW (correct approach):
416+ # Use direction parameter for asymmetric relationships
417+ result = storage.find_connected(
418+ memory_id,
419+ relationship_type = " causes" ,
420+ direction = " both" # Explicit direction required for asymmetric types
421+ )
422+ ```
423+
424+ ** Relationship Types:**
425+ - Asymmetric: causes, fixes, supports, follows (A→B ≠ B→A)
426+ - Symmetric: related, contradicts (A↔B)
427+
428+ ### Performance Improvements
429+
430+ - ontology validation: 97.5x faster (module-level caching)
431+ - Type lookups: 35.9x faster (cached reverse maps)
432+ - Tag validation: 47.3% faster (eliminated double parsing)
433+
434+ ### Testing
435+
436+ - 829/914 tests passing (90.7%)
437+ - 80 new ontology tests with 100% backward compatibility
438+ - All API/HTTP integration tests passing
439+
440+ ### Support
441+
442+ If you encounter issues during migration:
443+ - Check [ Troubleshooting Guide] ( docs/troubleshooting/ )
444+ - Review [ CHANGELOG.md] ( CHANGELOG.md ) for detailed changes
445+ - Open an issue: https://github.com/doobidoo/mcp-memory-service/issues
446+
447+ ---
448+
449+ ## 📚 Documentation & Resources
450+
451+ - ** [ Agent Integration Guides] ( docs/agents/ ) ** 🆕 – LangGraph, CrewAI, AutoGen, HTTP generic
452+ - ** [ Remote MCP Setup (claude.ai)] ( docs/remote-mcp-setup.md ) ** 🆕 – Browser integration via HTTPS + OAuth
453+ - ** [ Installation Guide] ( docs/installation.md ) ** – Detailed setup instructions
454+ - ** [ Configuration Guide] ( docs/mastery/configuration-guide.md ) ** – Backend options and customization
455+ - ** [ Architecture Overview] ( docs/architecture.md ) ** – How it works under the hood
456+ - ** [ Team Setup Guide] ( docs/teams.md ) ** – OAuth and cloud collaboration
457+ - ** [ Knowledge Graph Dashboard] ( docs/features/knowledge-graph-dashboard.md ) ** 🆕 – Interactive graph visualization guide
458+ - ** [ Troubleshooting] ( docs/troubleshooting/ ) ** – Common issues and solutions
459+ - ** [ API Reference] ( docs/api.md ) ** – Programmatic usage
460+ - ** [ Wiki] ( https://github.com/doobidoo/mcp-memory-service/wiki ) ** – Complete documentation
461+ - [ ![ Ask DeepWiki] ( https://deepwiki.com/badge.svg )] ( https://deepwiki.com/doobidoo/mcp-memory-service ) – AI-powered documentation assistant
462+ - ** [ MCP Starter Kit] ( https://kruppster57.gumroad.com/l/glbhd ) ** – Build your own MCP server using the patterns from this project
463+
464+ ---
465+
466+ ## 🤝 Contributing
467+
468+ We welcome contributions! See [ CONTRIBUTING.md] ( CONTRIBUTING.md ) for guidelines.
469+
470+ ** Quick Development Setup:**
471+ ``` bash
472+ git clone https://github.com/doobidoo/mcp-memory-service.git
473+ cd mcp-memory-service
474+ pip install -e . # Editable install
475+ pytest tests/ # Run test suite
476+ ```
477+
478+ ---
0 commit comments