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>
This commit is contained in:
@@ -47,6 +47,7 @@ from tools import (
|
||||
RefactorTool,
|
||||
TestGenTool,
|
||||
ThinkDeepTool,
|
||||
TracePathTool,
|
||||
)
|
||||
from tools.models import ToolOutput
|
||||
|
||||
@@ -150,6 +151,7 @@ TOOLS = {
|
||||
"precommit": Precommit(), # Pre-commit validation of git changes
|
||||
"testgen": TestGenTool(), # Comprehensive test generation with edge case coverage
|
||||
"refactor": RefactorTool(), # Intelligent code refactoring suggestions with precise line references
|
||||
"tracepath": TracePathTool(), # Static call path prediction and control flow analysis
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user