Skip to content Analyse a change Give ChangeGuard a diff. Add the repository at its base revision to unlock cross-file checks, and a coverage report to measure which changed lines your tests never run. Nothing you upload is executed, and archives are processed in memory and discarded.
The change required Paste a diff Upload a patch file
Unified diff From your repository: git diff origin/main...HEAD Copy command
Optional context Enables callers, tests, and differential static analysis. git archive -o base.zip origin/main
Must describe the head revision. Numbers are read, never computed.
Analyse change
No diff at hand? Analyse a sample Synthetic repositories with realistic changes. Clearly labelled as sample data in their reports.
What happens next 01 Parse inputs Validates and parses the patch, snapshot archive, and coverage report. 02 Reconstruct revisions Applies the patch to the snapshot in memory to rebuild the base and head revisions. 03 Structural diff Parses both revisions with tree-sitter and diffs functions, classes, and signatures. 04 Cross-file references Resolves imports and finds every caller of a changed symbol, then checks each call against the new signature. 05 Static analysis Runs Ruff on both revisions and keeps only diagnostics the change introduced. 06 Risk rules Secrets, injection sinks, migrations, dependencies, condition flips, and test-integrity rules on added lines. 07 Test mapping Finds tests that import and exercise each changed symbol. 08 Coverage Measures which changed lines the uploaded coverage report says never ran. 09 AI synthesis Optional: a model explains findings and proposes risks, citing evidence IDs only. 10 Grounding verification Rejects any model claim whose evidence, paths, lines, or numbers do not check out. 11 Assemble report De-duplicates findings, verifies every evidence reference, and computes the review priority.