Problem A small code change can have consequences beyond the lines being edited. Modifying a function, changing its parameters, or refactoring a shared utility may affect other parts of a codebase. Developers often need to manually inspect files, trace function calls, and determine which areas require testing. This process can be time-consuming, and indirect dependencies may be overlooked, especially in unfamiliar or growing projects. Solution ChangeStory is a developer-focused tool that helps make code changes easier to understand and review. It analyzes Git diffs using Python’s Abstract Syntax Tree (AST) and static analysis techniques to identify modified code, relevant symbols, and potential caller relationships. It highlights possible impact areas and suggests testing areas for further verification. Developers can use ChangeStory through its command-line interface and dashboard to explore change analysis and review supporting code evidence. Its reports help developers understand what changed, why it may matter, and where additional attention may be needed. Target Users and Interaction ChangeStory is designed for software developers, code reviewers, and teams maintaining existing codebases. Developers provide a code change for analysis, review the identified modifications and potential dependencies, and use the findings to guide code review and testing decisions. What Makes It Different ChangeStory combines Git-based change detection with AST-based code analysis and explainable findings. Rather than presenting every relationship as certain, it treats statically inferred relationships as potential impacts that require verification. This provides developers with a more structured starting point for reviewing changes while keeping them in control of final decisions. By organizing change information and potential impact in one workflow, ChangeStory aims to reduce manual investigation and help developers make more informed code review and testing decisions.
Category tags: