You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
v0.49.0: vstack-diagnose --baseline CI ratchet + fix vdiff on real reports
- Feature: vstack-diagnose --baseline <report.json> gates (with --fail-on) only
on findings NEW vs a saved baseline — the CI ratchet (don't fail on pre-existing
findings). Prints 'vs baseline: N new, M pre-existing'.
- Fix: vstack.vdiff.diff_reports assumed per_pattern was a name-keyed dict, but
real DiagnoseReports carry it as a list -> diff_reports / vstack-vdiff crashed on
genuine vstack-diagnose output. Now normalizes both shapes (+regression test).
- _gate_exit_code now takes severities (gates all findings or only new ones).
3,236 tests.
Copy file name to clipboardExpand all lines: README.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -542,8 +542,12 @@ Not on GitHub Actions? The same gating works from any shell — the core CLI is
542
542
```bash
543
543
vstack-diagnose --trace run.json --fail-on high # exit 3 if any finding ≥ high
544
544
vstack-diagnose --trace run.json --sarif > vstack.sarif # SARIF 2.1.0 for any code-scanning tool
545
+
vstack-diagnose --trace run.json --fail-on high \
546
+
--baseline last-good.json # ratchet: only fail on findings NEW vs the baseline
545
547
```
546
548
549
+
The `--baseline` ratchet gates on *new* findings only, so a CI gate won't fail on pre-existing, already-accepted findings — save a report with `--json` once, commit it as the baseline, and the gate tightens over time.
0 commit comments