An offline, read-only version suggestion from an exported API diff and explicit behavior review. It does not decide whether unchanged APIs imply compatible behavior.
This walkthrough uses the tool's public README and checked-in example files. Run the command from a repository checkout with Node.js 22+; inspect the source before using it on your own files.
Run the checked-in example
node bin/semantic-version-planner.mjs --root examples/pass --policy policy.json --evidence evidence.json
node bin/semantic-version-planner.mjs --root examples/fail --policy policy.json --evidence evidence.json
npm run checkRead the result
The CLI prints one JSON report. Exit 0=pass, 1=fail (bump exceeds the policy maximum), 2=incomplete or invalid configuration. Invalid options, root, or policy emit empty stdout. Unreadable or malformed evidence emits an incomplete report. Both file paths must resolve within the realpath of --root; no files are written. Strict UTF-8 and duplicate decoded JSON keys are enforced.
Where this check stops
Policy ≤65,536 bytes; evidence ≤524,288 bytes; at most 1,000 changes per section; JSON depth ≤16; evaluation ≤5,000 ms using an injectable monotonic clock. Each bound accepts N and rejects N+1. Findings and reasons use fixed privacy-safe messages and logical pointers, sorted by UTF-16 code-unit order. The tool does not query source control, infer behavior from API similarity, publish tags or releases, or calculate downstream dependency impact.
Before adapting the command to your own workflow, review the accepted inputs, exit codes and safety boundaries in the README.
Compiled with AI assistance from checked-in public documentation and example scripts. Run the example and review the repository's current documentation before relying on its result.