Fahad
3bc7956239
Implement TracePath tool for static call path analysis
Add comprehensive TracePath tool that predicts and explains full call paths
and control flow without executing code. Features include:
**Core Functionality:**
- Static call path prediction with confidence levels (🟢🟡🔴)
- Multi-language support (Python, JavaScript, TypeScript, C#, Java)
- Value-driven flow analysis based on parameter combinations
- Side effects identification (database, network, filesystem)
- Polymorphism and dynamic dispatch analysis
- Entry point parsing for multiple syntax patterns
**Technical Implementation:**
- Hybrid AI-first architecture (Phase 1: pure AI, Phase 2: AST enhancement)
- Export formats: Markdown, JSON, PlantUML
- Confidence threshold filtering for speculative branches
- Integration with existing tool ecosystem and conversation threading
- Comprehensive error handling and token management
**Files Added:**
- tools/tracepath.py - Main tool implementation
- systemprompts/tracepath_prompt.py - System prompt for analysis
- tests/test_tracepath.py - Comprehensive unit tests (32 tests)
**Files Modified:**
- server.py - Tool registration
- tools/__init__.py - Tool exports
- systemprompts/__init__.py - Prompt exports
**Quality Assurance:**
- All 449 unit tests pass including 32 new TracePath tests
- Full linting and formatting compliance
- Follows established project patterns and conventions
- Multi-model validation with O3 and Gemini Pro insights
**Usage Examples:**
- "Use zen tracepath to analyze BookingManager::finalizeInvoice(invoiceId: 123)"
- "Trace payment.process_payment() with confidence levels and side effects"
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-15 14:07:23 +04:00
..
2025-06-12 10:40:43 +04:00
2025-06-15 12:21:44 +04:00
2025-06-13 09:28:33 +04:00
2025-06-15 12:21:44 +04:00
2025-06-15 12:21:44 +04:00
2025-06-14 21:09:47 +10:00
2025-06-15 12:21:44 +04:00
2025-06-14 00:26:59 +04:00
2025-06-13 09:06:12 +04:00
2025-06-14 09:34:56 +04:00
2025-06-12 20:46:54 +04:00
2025-06-14 13:27:19 +04:00
2025-06-12 20:46:54 +04:00
2025-06-14 11:34:17 +04:00
2025-06-15 06:00:01 +04:00
2025-06-14 00:26:59 +04:00
2025-06-15 12:21:44 +04:00
2025-06-15 12:21:44 +04:00
2025-06-15 07:02:27 +04:00
2025-06-15 12:21:44 +04:00
2025-06-15 12:21:44 +04:00
2025-06-14 19:33:20 +02:00
2025-06-13 16:09:40 +04:00
2025-06-15 12:21:44 +04:00
2025-06-15 07:02:27 +04:00
2025-06-15 07:02:27 +04:00
2025-06-13 20:49:37 +04:00
2025-06-13 15:22:09 +04:00
2025-06-13 15:22:09 +04:00
2025-06-14 10:56:53 +04:00
2025-06-15 09:25:52 +04:00
2025-06-15 06:00:01 +04:00
2025-06-15 09:25:52 +04:00
2025-06-15 09:25:52 +04:00
2025-06-13 16:13:02 +04:00
2025-06-14 15:41:47 +04:00
2025-06-15 14:07:23 +04:00
2025-06-13 20:49:37 +04:00
2025-06-15 12:21:44 +04:00