Extensions / breaking-change-detector

Internal Breaking-Change Detector

Diffs an internal package's public API across versions and maps exactly which in-repo call sites a change will break.

v0.1.1 · 638 downloads · MIT

Internal Breaking-Change Detector

Diffs an internal TypeScript package’s public API against a git baseline and maps which in-repo call sites will break — before merge.

Install

git clone https://github.com/bobrowsse-tech/breaking-change-detector.git
cd breaking-change-detector
npm install
npm run package
npx @vscode/vsce package --no-dependencies
code --install-extension breaking-change-detector-0.1.1.vsix

Or press F5 after npm install.

Use

Action What it does
Diff Against Base Extract API surface, compare to a git ref, find consumer call sites
View Impacted Call Sites Ranked: removed → signature-changed → type-narrowed
Post PR Check Optional GitHub PR comment (token in SecretStorage; confirm first)

CLI for CI (same analysis as the extension):

npx breaking-change-check @acme/shared --base origin/main

Agents can call check_breaking_changes (report-only). PR comments need a human click.

How it’s built

TypeScript Compiler API for surface extract; simple-git for baselines; esbuild produces dist/extension.js and dist/cli.js.

npm run watch
npm run test:unit
npm run package

Author

Bob Rowsse Walakira — hello@bobrowsse.com

License

MIT

Contributing

Changes to main must go through a pull request. See CONTRIBUTING.md.

Extension Development Host

With the local suite umbrella checked out, press F5 (Extension + playground) to load ../playgrounds/breaking-change-detector/ as the test workspace.