Turn a local git diff into a clean change, verification, and risk proof packet.
- Stage: published
- Priority: 1
- GitHub remote: https://github.com/ccmqcy/change-proof
- Package registry: https://www.npmjs.com/package/change-proof
- Current implementation: local TypeScript CLI
AI coding often produces a patch faster than a reviewer can understand it. The missing artifact is not another diff view; it is a short proof packet that says what changed, why it matters, what was actually verified, what was not verified, and what risk remains.
- Not a generic diff viewer.
- Not an AI reviewer that claims correctness.
- Focused on evidence wording:
verified,not verified,risk, andnext check.
Command:
npx change-proof report --test "npm test"Inputs:
git diff --statgit diff --name-only- optional test command output
Outputs:
change-proof-report.md- optional
change-proof-report.json
npm install
npm run build
node dist/cli.js report --helpAfter npm publication:
npx change-proof@latest report --helpInstall from npm:
npm install -g change-proof
change-proof --versionGenerate a Markdown report for the current Git repository:
node dist/cli.js reportGenerate Markdown and JSON, and include a verification command:
node dist/cli.js report --test "npm test" --json change-proof-report.jsonInspect another repository:
node dist/cli.js report -C ../my-repo --base origin/main --output reports/change-proof.mdFail the CLI when the verification command fails:
node dist/cli.js report --test "npm test" --fail-on-test-failureKeep the --test value simple on Windows shells:
node dist/cli.js report --test "npm test"
node dist/cli.js report --test "node --version"Avoid deeply nested quotes such as node -e "console.log('ok')", because PowerShell and cmd.exe can pass those quotes differently. For complex checks, put the check in an npm script and call that script:
{
"scripts": {
"verify": "npm test && npm run build"
}
}node dist/cli.js report --test "npm run verify"The Markdown report includes:
- summary counts
- files grouped as
source,test,docs,config,generated,asset, orother - path-based risk signals
- actual verification command output when
--testis provided - explicit
Not Verifiednotes - raw
git diff --stat
Example console output:
Change Proof: files=1 risks=1 high=1 verification=PASS
Wrote report=change-proof-report.md json=change-proof-report.json
- Group changed files by type: source, test, docs, config, generated.
- Detect risky paths: auth, payment, migration, config, workflow, dependency.
- Run one optional verification command.
- Never mark anything verified unless a command actually ran.
npm run build
npm test
npm run verify
npm run publish:dry
node dist/cli.js report --helpCurrent package version: 0.1.2
The project is published to npm:
npm view change-proof version --registry https://registry.npmjs.org/
npx --registry https://registry.npmjs.org/ --yes change-proof@latest --versionBoth commands have been verified to return 0.1.2.
Prepared checks:
npm run npm:preflightnpm run pack:drynpm run verify:installnpm run verifynpm run publish:dry
Important: this machine's default npm registry points to https://registry.npmmirror.com, so publish scripts explicitly use https://registry.npmjs.org/.
Future manual publishes run a strict auth check first:
npm run publish:manualIf publishing with a granular access token that has bypass 2FA enabled, set this explicitly for that shell:
$env:CHANGE_PROOF_NPM_BYPASS_2FA="1"
npm run publish:manualThe first npm publish is documented in docs/npm-publish-preflight-2026-06-01.md.
See docs/verification-2026-06-01.md.
Duplicate risk: medium.
Adjacent tools exist around diff viewing, AI review, and PR summarization. The project should stay narrow: local diff to verification receipt.
| Route | Purpose |
|---|---|
README.md |
Project entry |
docs/ |
Research, design notes, verification evidence |
src/ |
CLI source |
tests/ |
Node test runner tests |
scripts/ |
npm preflight, package install verification, and publish support scripts |
.github/workflows/ci.yml |
GitHub CI |
Before GitHub release, complete ../../docs/operations/github-publish-checklist.md.