Thoroughly analyze the existing codebase, design the architecture, and create a detailed implementation roadmap with concrete deliverables and clear success criteria.
Tasks:
Key Files to Examine:
Core Tool Implementation:
src/core/tools/refactorCodeTool.ts - Current implementation skeletonsrc/core/prompts/tools/refactor-code.ts - Current DSL promptSimilar Tools for Patterns:
src/core/tools/applyDiffTool.ts - File modification patternssrc/core/tools/searchAndReplaceTool.ts - Pattern matching logicsrc/core/tools/insertContentTool.ts - File manipulation patternssrc/core/tools/writeToFileTool.ts - File writing patternsTest Fixtures:
src/core/tools/refactor-code/__tests__/fixtures/ - Examine all subdirectoriesrename-class, move-function, remove-function directoriesValidation & Error Handling:
src/core/tools/validateToolUse.ts - Error handling patternsTasks:
Architecture Components:
┌─────────────────────┐
│ RefactorEngine │
└──────────┬──────────┘
│
┌──────┴──────┬─────────┬──────────┬─────────┐
│ │ │ │ │
┌───▼────┐ ┌─────▼───┐ ┌──▼───┐ ┌───▼───┐ ┌──▼────┐
│ Parser │ │ Schema │ │Trans-│ │Symbol │ │Import │
│ │ │Validator│ │action│ │Finder │ │Manager│
└────────┘ └─────────┘ └──────┘ └───────┘ └───────┘
Core Interfaces to Define:
interface RefactorEngine {
executeOperation(op: RefactorOperation): Promise<OperationResult>
executeBatch(ops: RefactorOperation[]): Promise<BatchResult>
validateOperation(op: RefactorOperation): ValidationResult
previewOperation(op: RefactorOperation): PreviewResult
rollback(transactionId: string): Promise<void>
}
interface OperationResult {
success: boolean
operation: RefactorOperation
error?: string
affectedFiles?: string[]
transactionId?: string
requiresReview?: boolean
reviewGuide?: string
}
interface RefactorOperation {
id?: string
operation: "rename" | "move" | "remove" | "extract" | "refactor" | "add" | "inline" | "optimize_imports"
selector: Selector
reason: string
}
Tasks:
Risk Matrix:
| Risk | Impact | Probability | Mitigation |
|---|---|---|---|
| LLM Response Variability | High | High | Robust parser with fallbacks |
| File System Conflicts | High | Medium | Transaction system |
| Data Loss | Critical | Low | Mandatory snapshots |
| Performance Issues | Medium | Medium | Lazy loading, caching |
| Breaking Changes | High | Medium | Semantic analysis |
Implementation Dependencies:
Symbol Finder <- RENAME, MOVE, REMOVE, EXTRACT
Import Manager <- MOVE, EXTRACT
Code Generator <- ADD
Transaction Manager <- ALL OPERATIONS
Dependency Analyzer <- REFACTOR, Complex scenarios
Human Review <- REMOVE, ADD, High-risk operations
Component Inventory Document (refactor-plan/analysis/component-inventory.md)
Architecture Design Document (refactor-plan/analysis/architecture-design.md)
Risk Assessment Document (refactor-plan/analysis/risk-assessment.md)
Implementation Checklist (refactor-plan/analysis/implementation-checklist.md)
TS Morph Configuration:
Testing Patterns:
Error Handling:
Agent/Test Environment Differences:
After completing Phase 0, we'll have a solid foundation to begin Phase 1 with: