AST-driven refactoring advisor for nominal architecture, SSOT recovery, and anti-duck-typing cleanup in mature Python systems.
NRA is designed for repositories whose production behaviour, integrations, and operational knowledge make replacement prohibitively expensive. A practitioner or agent chooses the intended semantic authority. NRA proves the current source boundary and compiles the deterministic dependency, import, placement, and consumer-rewrite work into one reviewable change.
The tool emits evidence-backed refactoring findings, architectural direction, and proof-gated executable recipes where the source establishes a safe target.
Run locally with:
nominal-refactor-advisor path/to/python/packageBuild the Sphinx docs with:
pip install -e .[docs]
python -m sphinx -b html docs/source docs/_build/htmlThe docs are intentionally code-derived where possible:
- pattern docs are generated from
PatternIddeclarations - detector docs are generated from the registered
IssueDetectorfamily
Start with:
docs/source/api/getting_started.rstdocs/source/api/pattern_catalog.rstdocs/source/api/detector_catalog.rst