Skip to content

Changelog

All notable changes to the Code Graph Knowledge System will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

[0.9.0] - 2025-11-07

Maintenance

  • Major improvements:
  • Major improvements:
    • Update pyproject.toml description from 'AI-powered code intelligence' to 'Enterprise knowledge management platform'
    • Remove invalid ../README.md references from mkdocs.yml (mkdocs can't access files outside docs/)
    • Move frontend documentation to appropriate docs/ directories

[0.8.0] - 2025-11-06

Added

  • Add Memory Store for AI agent project knowledge persistence (v0.6)

Maintenance

-

-

-

  • Update permission settings
  • Claude/refactor directory structure 011 c us sd tp bi mf1 eiq b hx zr m
  • Fix import paths for reorganized services subpackage structure
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • CRITICAL FIX (P0): Fixed all internal imports to use codebase_rag.* namespace
  • Fixed all dynamic imports inside test functions that were still using
  • Updated all test files to use new import paths:
    • Update build-frontend.sh references: ./build-frontend.sh → ./scripts/build-frontend.sh
    • Remove docs/CNAME (use GitHub Pages default URL)
  • This reverts commit 393317c.
  • Added professional technical documentation to explain:
  • Comprehensive documentation update to reflect the new src-layout structure.
  • Complete removal of backward compatibility shims and legacy code structure.
  • Scripts documentation should be in docs/development/ instead of
  • Phase 6: Non-code file organization and cleanup
  • Major restructuring to align with Python best practices:
  • Updated cache-to configuration to include a TTL of 7 days.
  • Fetch Latest Main Branch Updates
  • REMOVED from all Dockerfiles:
  • Changed from 'version' to 'bun-version' per official docs:
    • uses: oven-sh/setup-bun@v2 (was @v1)
  • CRITICAL FIXES:
  • Removed temporary documentation files created during development:
  • Updated all docker-compose files to support two-port architecture:
  • User Feedback

  • Context

  • Context

  • Problem

  • Problem

  • Changes

  • Problem

  • Problem

  • These files are now in .gitignore and should not be tracked:
  • As TS Type Safety Auditor, eliminated ALL type issues:
  • Upgraded frontend to production-ready modern stack:
  • This commit fixes multiple issues that prevented Docker build from succeeding:
  • The frontend-builder stage in Dockerfile.full and Dockerfile.standard
  • Migrate monitor features from NiceGUI to frontend
  • Properly integrate the React frontend into the Docker build process to enable
  • Backend Docker images don't need frontend code:
  • Runtime images don't need README.md or pyproject.toml:
  • Critical Docker Build Issues Fixed

  • Phase 3: Remove NiceGUI Dependencies

  • This commit migrates all task monitoring features from NiceGUI to the React frontend:
  • Delete old file
  • Fix Docker setup and MCP image building
  • Implemented complete changelog automation using Conventional Commits:
  • Implemented complete version management automation:
  • Removed manual "Table of Contents" sections from 3 documentation files:
  • Fixed all 9 broken links causing build failures in strict mode:
  • Added comprehensive documentation (13,000+ more lines):
  • Added comprehensive user documentation (13,000+ lines):
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Added complete documentation for all three deployment modes:
    • Create logo.svg with code graph visualization
    • Remove non-existent custom_dir (docs/overrides)
    • Remove temporary documentation files (CONFIGURATION_GUIDE, summaries)
  • Address PR review feedback: align Python versions and clarify Ollama config
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Updated remaining references from docs.vantagecraft.dev to code-graph.vantagecraft.dev
  • Complete step-by-step guide covering:
  • Complete documentation of Docker MCP Registry submission:
  • Add submission files for Docker MCP Registry with 3 variants:
  • BREAKING CHANGE: Default docker-compose.yml now points to minimal mode
  • Implement automatic memory extraction features
  • Address code review feedback: extract magic numbers and fix variable reassignment bug
  • Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Comprehensive implementation of automatic memory extraction features using LLM analysis.
  • Fixed test failures caused by MCP SDK type handling:
  • [WIP] Add memory management system for AI agent project
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Addressed two issues from code review:
  • Fixed two critical P1 bugs in Memory Store:
  • Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
  • Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
  • Add complete testing infrastructure with 105+ unit tests and CI/CD workflows
  • BREAKING CHANGE: FastMCP v1 removed, Official MCP SDK is now the only version
  • Migration Summary:
  • Implements official Model Context Protocol SDK alongside existing FastMCP version,
  • Implements a comprehensive Memory Management system for AI agents to maintain
  • This commit adds a complete modern frontend application to replace the
  • Fix get_changed_files() dict access in incremental ingestion
  • Fix deduplication silently dropping nodes without ref
  • Fix dict access, missing parameters, and key mismatches from PR #6 review
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Review codebase-rag against requirements
  • This commit adds multi-language support and production-ready Docker deployment.
  • This commit completes v0.5 milestone by adding MCP tools for code graph
    • Added v0.4 status and progress tracking (90% complete)
  • Implements major v0.4 features: incremental mode and pack enhancements.
  • Implements v0.3 requirement: extract import/dependency relationships between files.
  • Added detailed documentation covering:
  • This commit addresses critical gaps in the v0.2 specification:
  • Add repository ingestion, related search, and context packing APIs
  • Per feedback, keeping original Python 3.13 requirement
    • Remove all v02-suffixed files and backend/ directory structure
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Co-authored-by: royisme 350731+royisme@users.noreply.github.com
  • Roy/tests fix query bug
  • This commit introduces a complete real-time monitoring ecosystem with three distinct approaches:
  • ```python
  • Here's the corrected SEARCH/REPLACE block:
    1. Added OpenRouterEmbeddingGenerator implementation for embedding generation
    1. Added OpenRouter fields in config model info
    1. Adding OpenRouter configuration settings (API key, base URL, models)
  • This reverts commit 0b8fd12.

Other

    1. services/init.py:
  • Removed eager imports of all subpackages to avoid triggering heavy dependencies (llama_index, etc.) when tests import services
  • Updated documentation with correct import examples
    1. Remove docs/CNAME file (use GitHub Pages default URL)
  • Update site_url to vantagecraft.dev/docs/code-graph/
  • Update workflow notification URL
  • Add comprehensive Cloudflare setup guide
    • Remove main branch push trigger from docker-build.yml
  • Now Docker images are built only when version tags are pushed
  • This aligns with the bump-version.sh workflow where tags are created
  • Keep PR and manual workflow_dispatch triggers for testing
  • Avoid conflicts with user's main GitHub Pages site (royisme.github.io) and allow multiple project-specific subdomains.

Planned Features

  • API authentication with JWT
  • Web-based configuration UI
  • Multi-provider LLM support (simultaneous)
  • Advanced code refactoring suggestions
  • Rust, C++, C# language support
  • Real-time collaboration features
  • Plugin system for custom extensions

[0.7.0] - 2025-01-15

Added - Automatic Memory Extraction

  • Conversation Analysis: Extract memories from AI conversation history
  • LLM-powered decision and experience detection
  • Confidence scoring for automatic saving
  • Configurable auto-save threshold
  • Git Commit Analysis: Analyze git commits for architectural decisions
  • Parse commit messages and changed files
  • Extract decisions, experiences, and conventions
  • Link memories to specific commits
  • Code Comment Mining: Extract TODO, FIXME, NOTE, DECISION markers
  • Automatic scanning of code comments
  • Convert markers to structured memories
  • Track technical debt and action items
  • Query-based Memory Suggestions: Suggest important memories from Q&A
  • Analyze knowledge base queries and answers
  • Identify information worth remembering
  • Suggest memory creation with auto-populated fields
  • Batch Repository Extraction: Comprehensive codebase analysis
  • Extract from git history (configurable commit limit)
  • Mine code comments across file patterns
  • Bulk memory creation from repository insights

Added - New MCP Tools (5 tools)

  • extract_from_conversation: Extract memories from conversation history
  • extract_from_git_commit: Analyze git commits for memories
  • extract_from_code_comments: Mine code comments for action items
  • suggest_memory_from_query: Suggest memories from Q&A sessions
  • batch_extract_from_repository: Full repository analysis

Added - New API Endpoints (5 endpoints)

  • POST /api/v1/memory/extract/conversation: Extract from conversations
  • POST /api/v1/memory/extract/commit: Extract from git commits
  • POST /api/v1/memory/extract/comments: Extract from code comments
  • POST /api/v1/memory/suggest: Suggest memory from query/answer
  • POST /api/v1/memory/extract/batch: Batch repository extraction

Changed

  • Enhanced memory extraction service with LLM-powered analysis
  • Improved error messages for memory operations
  • Updated MCP handler architecture documentation
  • Enhanced memory search relevance scoring

Fixed

  • Neo4j connection timeout in Docker environments
  • Memory search not finding recently added memories
  • Environment variable handling in Docker deployment
  • Race condition in concurrent memory additions

Documentation

  • Added comprehensive memory extraction guide
  • Updated API documentation with extraction endpoints
  • New examples for automatic memory extraction
  • Enhanced troubleshooting guide

[0.6.0] - 2024-12-20

Added - Memory Store for AI Agents

  • Memory Management System: Long-term project knowledge persistence
  • Decision memory type: Architecture and technical choices
  • Preference memory type: Coding styles and conventions
  • Experience memory type: Problems encountered and solutions
  • Convention memory type: Team rules and standards
  • Plan memory type: Future improvements and TODOs
  • Note memory type: General project information
  • Memory Operations: Full CRUD operations for memories
  • Add memory with importance scoring
  • Search memories with semantic search
  • Update existing memories
  • Delete memories (soft delete)
  • Supersede memories (version history)
  • Project memory summaries
  • Memory Relationships: Graph-based memory connections
  • BELONGS_TO: Memory to project relationships
  • RELATES_TO: Inter-memory relationships
  • SUPERSEDES: Memory version history

Added - Multi-Language Support (3 languages)

  • Java Support: Complete Java code analysis
  • Import statement parsing (standard and static)
  • Class inheritance and interface tracking
  • Method visibility detection (public/protected/private)
  • Package dependency mapping
  • PHP Support: PHP code analysis
  • Use statement parsing (class, function, const)
  • Require/include dependency tracking
  • Class extends and implements relationships
  • Function type hint extraction
  • Go Support: Golang code analysis
  • Package import parsing (single and blocks)
  • Struct and interface detection
  • Function and method extraction (with receivers)
  • Package alias tracking

Added - Docker Multi-Mode Deployment

  • Three deployment modes:
  • Minimal: Code Graph only (~800MB)
  • Standard: Code Graph + Memory (~1.2GB)
  • Full: All features (~1.5GB)
  • Docker Compose configurations:
  • docker-compose.minimal.yml
  • docker-compose.standard.yml
  • docker-compose.full.yml
  • Multi-platform support: amd64, arm64
  • Helper scripts: Simplified deployment commands

Added - MCP Tools (7 memory tools)

  • add_memory: Save new project knowledge
  • search_memories: Find relevant memories
  • get_memory: Retrieve specific memory
  • update_memory: Modify existing memory
  • delete_memory: Remove memory
  • supersede_memory: Create new memory that replaces old one
  • get_project_summary: Get project memory overview

Added - API Endpoints (7 memory endpoints)

  • POST /api/v1/memory/add: Add new memory
  • POST /api/v1/memory/search: Search memories
  • GET /api/v1/memory/{memory_id}: Get specific memory
  • PUT /api/v1/memory/{memory_id}: Update memory
  • DELETE /api/v1/memory/{memory_id}: Delete memory
  • POST /api/v1/memory/supersede: Supersede old memory
  • GET /api/v1/memory/project/{project_id}/summary: Project summary

Changed

  • Updated file patterns to include Java, PHP, Go files
  • Enhanced code graph to support new language relationships
  • Improved transformer architecture for multi-language support

Documentation

  • Added Memory Store user guide
  • Added memory API documentation
  • Updated examples with memory usage
  • Enhanced CLAUDE.md with memory workflows

[0.5.0] - 2024-11-15

Added - MCP Protocol Support

  • Official MCP SDK Integration: Model Context Protocol v1.1.0+
  • Modular Architecture: Handler-based design (310-line main server)
  • Knowledge handlers: Query, search, document management
  • Code graph handlers: Ingestion, analysis, statistics
  • System handlers: Health checks, configuration
  • Task handlers: Background processing, monitoring
  • 30 MCP Tools: Comprehensive AI assistant integration
  • 8 knowledge tools
  • 10 code graph tools
  • 4 system tools
  • 8 task monitoring tools
  • Advanced Features:
  • Session management framework
  • Streaming support (SSE)
  • Multi-transport capability (stdio, SSE, WebSocket)

Added - Prometheus Metrics

  • 15+ metrics for monitoring:
  • Request counters (total, by endpoint, by status)
  • Request duration histograms
  • Active request gauges
  • Neo4j operation metrics
  • Document processing metrics
  • Error rate tracking
  • Metrics endpoint: GET /api/v1/metrics
  • Grafana dashboard configuration (optional)

Added - Neo4j Health Monitoring

  • Connection status tracking
  • Query performance metrics
  • Database size monitoring
  • Index usage statistics

Changed

  • Refactored MCP server from 1400 lines to 310 lines (78% reduction)
  • Extracted handlers into mcp_tools/ package
  • Improved error handling and logging
  • Enhanced code organization and maintainability

Documentation

  • Added MCP v2 modularization guide
  • Updated MCP integration documentation
  • Added Prometheus metrics documentation
  • Enhanced deployment guides

[0.4.0] - 2024-10-20

Added - Real-time Task Monitoring

  • Web UI Monitoring: NiceGUI-based monitoring interface
  • Real-time task status updates via WebSocket
  • File upload functionality (50KB size limit)
  • Directory batch processing
  • Task progress visualization
  • Accessible at /ui/monitor when ENABLE_MONITORING=true
  • Server-Sent Events (SSE): Streaming APIs for real-time updates
  • /api/v1/sse/task/{task_id}: Monitor single task
  • /api/v1/sse/tasks: Monitor all tasks with filtering
  • /api/v1/sse/stats: SSE connection statistics
  • Task Queue System: Background processing with monitoring
  • Async task execution
  • Progress tracking
  • Error handling and retry logic
  • Task history and logs

Added - Large File Handling

  • Multi-strategy approach:
  • Direct processing: Files < 10KB
  • Temporary file strategy: Files 10-50KB
  • Directory processing prompt: Files > 50KB
  • MCP automatic temp files: All sizes
  • Configurable limits: Size thresholds via environment variables

Added - Client Examples

  • examples/pure_mcp_client.py: Pure MCP client with watch tools
  • examples/hybrid_http_sse_client.py: HTTP + SSE hybrid approach
  • Real-time monitoring demonstrations

Changed

  • Enhanced file upload handling with size validation
  • Improved error messages for large file uploads
  • Better timeout handling for large documents

Fixed

  • Memory leaks in long-running tasks
  • SSE connection stability issues
  • File upload timeout for large files

[0.3.0] - 2024-09-15

Added - Universal SQL Schema Parser

  • Multi-dialect support: Oracle, MySQL, PostgreSQL, SQL Server
  • Configurable business domain classification: YAML/JSON configuration
  • Pre-built industry templates:
  • Insurance: Policies, claims, underwriting
  • E-commerce: Products, orders, customers
  • Banking: Accounts, transactions, loans
  • Healthcare: Patients, diagnoses, treatments
  • Comprehensive parsing:
  • Table and column extraction
  • Foreign key relationships
  • Index definitions
  • Business domain classification
  • Professional documentation generation: Markdown output
  • Real-world tested: 356-table Oracle database (4,511 columns)

Added - SQL API Endpoints

  • POST /api/v1/sql/parse: Parse SQL schema files
  • POST /api/v1/sql/analyze: Analyze database structure
  • GET /api/v1/sql/templates: List available templates

Changed

  • Enhanced schema parsing with configurable templates
  • Improved relationship detection
  • Better error handling for malformed SQL

Documentation

  • Added SQL parsing user guide
  • Industry template documentation
  • Configuration examples

[0.2.0] - 2024-08-01

Added - Multi-Provider LLM Support

  • Ollama integration: Local LLM hosting (default)
  • OpenAI integration: GPT models and embeddings
  • Google Gemini integration: Gemini models and embeddings
  • OpenRouter integration: Multi-provider access
  • HuggingFace embeddings: Local embedding models
  • Provider configuration: Via .env file with flexible switching

Added - Enhanced Configuration

  • Environment-based configuration system
  • Support for multiple embedding providers
  • Configurable timeouts and limits
  • Feature flags (monitoring, Prometheus)

Changed

  • Refactored service initialization for multi-provider support
  • Improved LLM provider abstraction layer
  • Enhanced error messages for provider issues

Fixed

  • OpenAI API compatibility issues
  • Gemini embedding dimension mismatches
  • Provider-specific timeout handling

[0.1.0] - 2024-07-01

Added - Initial Release

  • Core Features:
  • Neo4j GraphRAG integration
  • Vector search with LlamaIndex
  • Document processing (text, markdown, code)
  • Knowledge graph construction
  • Intelligent query engine
  • RESTful API
  • Code Analysis:
  • Python code parsing
  • TypeScript/JavaScript parsing
  • Import relationship mapping
  • Basic code graph visualization
  • Document Management:
  • Multi-format support
  • Asynchronous processing
  • Chunk-based indexing
  • Vector similarity search
  • API Endpoints:
  • /api/v1/health: Health check
  • /api/v1/knowledge/query: Query knowledge base
  • /api/v1/knowledge/search: Vector search
  • /api/v1/documents/upload: Upload documents
  • /api/v1/documents/list: List documents
  • Infrastructure:
  • FastAPI backend
  • Neo4j database
  • Docker support
  • Basic logging and error handling

Documentation

  • Initial README
  • API documentation
  • Basic deployment guide
  • Example scripts

Version History Summary

Version Release Date Key Features
0.7.0 2025-01-15 Automatic memory extraction (5 tools)
0.6.0 2024-12-20 Memory Store, Multi-language (Java/PHP/Go), Docker modes
0.5.0 2024-11-15 MCP protocol, Prometheus metrics, Modular architecture
0.4.0 2024-10-20 Real-time monitoring, SSE, Large file handling
0.3.0 2024-09-15 Universal SQL parser, Business domain templates
0.2.0 2024-08-01 Multi-provider LLM support (Ollama/OpenAI/Gemini)
0.1.0 2024-07-01 Initial release with core features

Upgrade Guides

Upgrading from 0.6.x to 0.7.0

No breaking changes. Simply pull new Docker image:

docker pull royisme/codebase-rag:0.7.0-full
docker-compose restart

New Features Available: - Memory extraction endpoints and MCP tools - Automatic memory mining from git and code

Upgrading from 0.5.x to 0.6.0

Breaking Changes: - None, fully backward compatible

New Configuration Options:

# Optional: Enable memory features (included in standard/full modes)
ENABLE_MEMORY_STORE=true

Data Migration: - No migration needed - Memory Store creates new nodes in existing Neo4j database

Upgrading from 0.4.x to 0.5.0

Breaking Changes: - MCP server entry point changed from mcp_server.py to start_mcp.py

Configuration Update:

// claude_desktop_config.json
{
  "mcpServers": {
    "code-graph": {
      "command": "python",
      "args": ["/path/to/start_mcp.py"]  // Changed from mcp_server.py
    }
  }
}

Data Migration: - No database changes - MCP protocol fully backward compatible

Upgrading from 0.3.x to 0.4.0

No breaking changes. New features are opt-in:

# Enable monitoring UI
ENABLE_MONITORING=true

# Enable Prometheus metrics
ENABLE_PROMETHEUS=true

Migration Notes

Python Version Upgrade

As of v0.6.0, Python 3.13+ is required. If upgrading from older versions:

# Update Python
python3.13 -m venv .venv
source .venv/bin/activate

# Reinstall dependencies
pip install --upgrade pip
pip install -e .

Neo4j Version Compatibility

All versions support Neo4j 5.0+. No database migration needed between versions.

Environment Variables

Check .env.example for new configuration options in each version.

Deprecation Notices

Deprecated in 0.7.0

  • None

Deprecated in 0.6.0

  • None

Deprecated in 0.5.0

  • Old MCP server entry point (mcp_server.py): Use start_mcp.py instead
  • Will be removed in: v1.0.0

Removed in 0.5.0

  • None

Contributing

See CONTRIBUTING.md for guidelines on contributing to this project.

Support


Note: Dates in this changelog are illustrative. Check GitHub Releases for actual release dates.