Conversation
- Add tree-sitter-xml parser for XML file parsing - Add XML extension support to tree-sitter extensions array - Add XML queries for Odoo view definitions (form, tree, kanban, etc.) - Add QWeb template support - Add Odoo-specific XML element parsing - All tests pass (338 tests)
- Add Hybrid Search combining semantic and keyword search - Implement Adaptive Chunking for multiple languages - Enhance Tree-sitter queries for Generics, Decorators, Type Aliases - Add Context Compression with 3 strategies - Add comprehensive tests (5,465 tests passing) - Fix TypeScript errors and build issues BREAKING CHANGE: New feature flags for optional features
- Hybrid Search (semantic + keyword search) enabled - Adaptive Chunking (intelligent code segmentation) enabled - Enhanced Tree-sitter Queries enabled - Context Compression enabled with balanced strategy All features are now enabled by default for better code awareness and context understanding.
- Phase 1: Multi-Level Cache (L1 + L2) with TTL - Phase 2: Search & Embedding Cache - Phase 3: Context Memory Enhancement (Usage Tracking, Hot Files) - Phase 4: Smart Incremental Indexing with Priority Processing - Phase 5: Integration & Build Validation - Add comprehensive tests for all features - Create build validation script Total: ~1,700 lines added, 79 new tests
- Add ParallelToolExecutor for executing multiple tools concurrently - Add ToolDependencyGraphBuilder and ToolDependencyResolver for dependency management - Update experiments.ts to include parallel execution configuration - Update assistant message handling for parallel execution - Update ClineProvider to support parallel tool execution - Add comprehensive tests for dependency graph and parallel executor - Update settings localization files
- Add Knowledge Graph module with GraphStore and GraphBuilder - Enable graph context in search service for enhanced results - Add cycle detection and impact analysis for change management - Implement fail-safe architecture (graph failures don't affect indexing) - Add Odoo ERP specific analyzers (Python, XML, views, models) - Fix ReDoS vulnerability in TypeScriptAnalyzer regex patterns - Fix getLineNumber bounds checking - Fix atomic write temp file cleanup - Fix cachedHash validation check Enterprise-grade features: - Persistent graph storage with atomic writes - Transitive dependency queries - Dependency cycle detection with severity levels - File impact analysis for change management - Comprehensive metrics and tracing
…ment - Add periodic graph save every 5 minutes - Add graph save on extension shutdown - Add populateGraphFromCache for initial graph population - Fix ReDoS vulnerability with regex limits - Fix getLineNumber bounds checking - Fix atomic write temp file cleanup - Fix cachedHash validation check Enterprise-grade features: - Reliable graph persistence with periodic saves - Graceful shutdown with graph save - Graph population from cached files after initial scan
feat: Add Context, Memory, and Indexing improvements - Phase 1: Multi-Level Cache (L1 + L2) with TTL - Phase 2: Search & Embedding Cache - Phase 3: Context Memory Enhancement (Usage Tracking, Hot Files) - Phase 4: Smart Incremental Indexing with Priority Processing Total: ~4,200 lines added, 80 new tests
- Created ContextDashboard component that displays files and folders from context - Added collapsible header with stats badge - Shows opened tabs and workspace files - Integrated into ChatView above ChatTextArea - Added English translations - Added unit tests (9 tests passing)
- Add comprehensive bmad agent workflow commands (bmm, bmb, bmad, tea) - Update ContextDashboard with new features - Enhance chat components (ChatView, ChatTextArea) - Update vscode-extension-host types - Add i18n translations for chat
- Add PROJECT_UNDERSTANDING.md with complete project overview - Include system architecture, components, and workflows - Document Checkpoints system (new feature) - Explain Modes, API Providers, and MCP integration - Add coding standards and development guidelines - 387 lines of detailed documentation in Arabic
- Add Context Engine service with: - context-builder: Build and manage conversation context - intent-detector: Detect user intent from messages - behavioral-analyzer: Analyze conversation behavior patterns - relevance-ranker: Rank and prioritize context relevance - context-compressor-v2: Compress context for token optimization - Add Memory services with: - conversation-memory: Store and retrieve conversation history - project-memory: Track project-specific information - pattern-memory: Store and recognize code patterns - memory-manager: Unified memory management - sqlite-adapter: SQLite storage backend - Add Semantic Analysis: - semantic-analyzer: Analyze code semantics - symbol-cache: Cache symbol information - symbol-resolver: Resolve code symbols and references - architecture-detector: Detect code architecture patterns - Add Pattern Tracker for code-index graph - Update system prompts and extension configurations
Remove all bmad method related files and folders
- Add Speckit commands for analyze, plan, specify, implement, tasks, taskstoissues, checklist, and constitution - Add Speckit workflows for Windsurf - Add .specify directory with scripts and templates for agent workflows
|
Generated with ❤️ by ellipsis.dev |
Reviewed merge from main. No new issues found. 1 previously flagged issue remains unresolved:
Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
| async run<T>(sql: string, params: any[] = []): Promise<{ changes: number }> { | ||
| if (!this.db) throw new Error("Database not initialized") | ||
| const changes = this.db.getRowsModified() | ||
| this.db.run(sql, params) | ||
| if (!this.isMemory) { | ||
| await this.save() // Auto-save for persistence | ||
| } | ||
| return { changes } | ||
| } |
There was a problem hiding this comment.
The changes count is retrieved via getRowsModified() BEFORE the SQL statement is executed. This means the returned value reflects rows modified by a previous operation, not the current one. The call to getRowsModified() should be moved after this.db.run(sql, params).
| async run<T>(sql: string, params: any[] = []): Promise<{ changes: number }> { | |
| if (!this.db) throw new Error("Database not initialized") | |
| const changes = this.db.getRowsModified() | |
| this.db.run(sql, params) | |
| if (!this.isMemory) { | |
| await this.save() // Auto-save for persistence | |
| } | |
| return { changes } | |
| } | |
| async run<T>(sql: string, params: any[] = []): Promise<{ changes: number }> { | |
| if (!this.db) throw new Error("Database not initialized") | |
| this.db.run(sql, params) | |
| const changes = this.db.getRowsModified() | |
| if (!this.isMemory) { | |
| await this.save() // Auto-save for persistence | |
| } | |
| return { changes } | |
| } |
Fix it with Roo Code or mention @roomote and request a fix.
Related GitHub Issue
Closes: #
Roo Code Task Context (Optional)
Description
Test Procedure
Pre-Submission Checklist
Screenshots / Videos
Documentation Updates
Additional Notes
Get in Touch