Ship changes with less guesswork: blastmap turns a diff into a focused test + review plan in seconds.
GIF / screenshot placeholder: Add a terminal capture here showing
blastmap analyzeandblastmap reportoutput.
Big PRs fail when impact is fuzzy. blastmap makes scope explicit by mapping changed files to impacted modules/functions, ranking what to test first, flagging risky non-code edits, and surfacing likely CODEOWNERS reviewers.
Python 3.10+ is required.
python3 -m pip install -e .From the repository root:
# 1) Fast terminal summary from explicit changed files
blastmap analyze \
--repo . \
--changed-file src/blastmap/__main__.py \
--changed-file README.md
# 2) Same analysis as JSON for automation
blastmap analyze \
--repo . \
--changed-file src/blastmap/__main__.py \
--json
# 3) Shareable markdown report
blastmap report \
--repo . \
--changed-file src/blastmap/__main__.py \
--format markdown- Impact map: changed files plus impacted modules and functions.
- Ranked testing targets: top tests and packages/modules to run first.
- Non-code risk flags: docs/config/schema/migration changes called out explicitly.
- Reviewer suggestions: CODEOWNERS pattern matches grouped into likely reviewers.
- Two output lanes: quick terminal/JSON (
analyze) and share-ready markdown/PR comment (report).
# Analyze with explicit changed files (copy/paste friendly)
blastmap analyze \
--repo . \
--changed-file src/blastmap/impact_map.py \
--changed-file src/blastmap/ranking.py
# Analyze with explicit files + JSON output
blastmap analyze \
--repo . \
--changed-file src/blastmap/__main__.py \
--json
# Report as markdown
blastmap report \
--repo . \
--changed-file src/blastmap/reporting.py \
--format markdown
# Report as PR-comment text
blastmap report \
--repo . \
--changed-file README.md \
--format pr-comment
# Git-ref input mode (real branch diff workflow)
blastmap analyze --repo . --base origin/main --head HEAD
blastmap report --repo . --base origin/main --head HEAD --format markdown- Add richer language-aware dependency resolution beyond current graph heuristics.
- Add CI-focused outputs (for checks/status annotations) on top of existing JSON and report modes.
- Expand non-code impact categories with stronger schema/migration awareness.
Contributions are welcome. Open an issue for bugs/ideas, then submit a PR with focused changes and tests.
Run tests locally:
python3 -m pip install -e ".[test]"
make test