Change Planning
Research and gather context before implementing changes
Pre-work research - gather context and understand the codebase BEFORE implementing changes.
Quick Start
"I need to implement user notifications, where do I start?"
"Search for code related to email sending"
"What calls UserService?"
When to Use
Use this workflow before any non-trivial implementation task:
- Adding a new feature
- Modifying existing behavior
- Integrating with existing code
- Understanding unfamiliar code areas
Workflow
Search for Relevant Code
Use semantic search to find code related to your task:
"Search for code related to user notifications"
Uses: noodlbox_query_with_context tool
Look for:
- Relevant files and symbols
- Existing implementations
- Related documentation
Inspect the Target Symbols
Get definitions and categorized references for the key symbols:
"Show me the full context for NotificationService"
Uses: noodlbox_symbol_context tool
Review incoming callers, outgoing dependencies, and linked documentation.
Map Callers
Find the code that depends on the behavior you plan to change:
"What calls NotificationService.notify?"
Uses: noodlbox_raw_cypher_query tool
Focus on:
- Integration points
- Public entry points
- Existing tests
Map Dependencies
Find what the target code depends on:
"What does NotificationManager depend on?"
Uses: noodlbox_raw_cypher_query tool
// Find callers of a function
MATCH (caller)-[:CALLS]->(target:Symbol {name: "send"})
RETURN caller.name, caller.file_path
// Find dependencies of a class
MATCH (source:Symbol {name: "NotificationManager"})-[:CALLS]->(dep)
RETURN DISTINCT dep.name, dep.kindExample: Planning a New Feature
Task: Add push notification support alongside existing email notifications
Understand Current State
"Find the current notification implementation"
Identify the main symbols, files, and tests.
Find Existing Patterns
"Search for notification sending patterns"
Review how email notifications are currently implemented.
Identify Integration Points
"What calls NotificationService.notify?"
These callers will need to support push notifications too.
Map the Extension Points
"Show me the full context for NotificationService"
Identify where to add push notification logic without breaking existing behavior.
Tools & Resources Reference
| Purpose | Tool/Resource |
|---|---|
| Semantic search | noodlbox_query_with_context |
| Symbol details | noodlbox_symbol_context |
| Dependency queries | noodlbox_raw_cypher_query |