@kevinrabun/judges 3.87.0 → 3.89.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +126 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/finding-age-analysis.d.ts +5 -0
- package/dist/commands/finding-age-analysis.d.ts.map +1 -0
- package/dist/commands/finding-age-analysis.js +145 -0
- package/dist/commands/finding-age-analysis.js.map +1 -0
- package/dist/commands/finding-category-map.d.ts +5 -0
- package/dist/commands/finding-category-map.d.ts.map +1 -0
- package/dist/commands/finding-category-map.js +104 -0
- package/dist/commands/finding-category-map.js.map +1 -0
- package/dist/commands/finding-correlation.d.ts +5 -0
- package/dist/commands/finding-correlation.d.ts.map +1 -0
- package/dist/commands/finding-correlation.js +104 -0
- package/dist/commands/finding-correlation.js.map +1 -0
- package/dist/commands/finding-dedup-report.d.ts +5 -0
- package/dist/commands/finding-dedup-report.d.ts.map +1 -0
- package/dist/commands/finding-dedup-report.js +102 -0
- package/dist/commands/finding-dedup-report.js.map +1 -0
- package/dist/commands/finding-dependency-tree.d.ts +5 -0
- package/dist/commands/finding-dependency-tree.d.ts.map +1 -0
- package/dist/commands/finding-dependency-tree.js +117 -0
- package/dist/commands/finding-dependency-tree.js.map +1 -0
- package/dist/commands/finding-false-positive-log.d.ts +5 -0
- package/dist/commands/finding-false-positive-log.d.ts.map +1 -0
- package/dist/commands/finding-false-positive-log.js +151 -0
- package/dist/commands/finding-false-positive-log.js.map +1 -0
- package/dist/commands/finding-fix-validation.d.ts +5 -0
- package/dist/commands/finding-fix-validation.d.ts.map +1 -0
- package/dist/commands/finding-fix-validation.js +116 -0
- package/dist/commands/finding-fix-validation.js.map +1 -0
- package/dist/commands/finding-regression-check.d.ts +5 -0
- package/dist/commands/finding-regression-check.d.ts.map +1 -0
- package/dist/commands/finding-regression-check.js +113 -0
- package/dist/commands/finding-regression-check.js.map +1 -0
- package/dist/commands/finding-suppression-audit.d.ts +5 -0
- package/dist/commands/finding-suppression-audit.d.ts.map +1 -0
- package/dist/commands/finding-suppression-audit.js +138 -0
- package/dist/commands/finding-suppression-audit.js.map +1 -0
- package/dist/commands/review-ci-integration.d.ts +5 -0
- package/dist/commands/review-ci-integration.d.ts.map +1 -0
- package/dist/commands/review-ci-integration.js +126 -0
- package/dist/commands/review-ci-integration.js.map +1 -0
- package/dist/commands/review-comparative.d.ts +5 -0
- package/dist/commands/review-comparative.d.ts.map +1 -0
- package/dist/commands/review-comparative.js +150 -0
- package/dist/commands/review-comparative.js.map +1 -0
- package/dist/commands/review-custom-rule.d.ts +5 -0
- package/dist/commands/review-custom-rule.d.ts.map +1 -0
- package/dist/commands/review-custom-rule.js +170 -0
- package/dist/commands/review-custom-rule.js.map +1 -0
- package/dist/commands/review-dashboard-data.d.ts +5 -0
- package/dist/commands/review-dashboard-data.d.ts.map +1 -0
- package/dist/commands/review-dashboard-data.js +143 -0
- package/dist/commands/review-dashboard-data.js.map +1 -0
- package/dist/commands/review-guardrail.d.ts +5 -0
- package/dist/commands/review-guardrail.d.ts.map +1 -0
- package/dist/commands/review-guardrail.js +156 -0
- package/dist/commands/review-guardrail.js.map +1 -0
- package/dist/commands/review-notification.d.ts +5 -0
- package/dist/commands/review-notification.d.ts.map +1 -0
- package/dist/commands/review-notification.js +127 -0
- package/dist/commands/review-notification.js.map +1 -0
- package/dist/commands/review-perf-profile.d.ts +5 -0
- package/dist/commands/review-perf-profile.d.ts.map +1 -0
- package/dist/commands/review-perf-profile.js +99 -0
- package/dist/commands/review-perf-profile.js.map +1 -0
- package/dist/commands/review-scope-limit.d.ts +5 -0
- package/dist/commands/review-scope-limit.d.ts.map +1 -0
- package/dist/commands/review-scope-limit.js +101 -0
- package/dist/commands/review-scope-limit.js.map +1 -0
- package/dist/commands/review-template-export.d.ts +5 -0
- package/dist/commands/review-template-export.d.ts.map +1 -0
- package/dist/commands/review-template-export.js +147 -0
- package/dist/commands/review-template-export.js.map +1 -0
- package/package.json +1 -1
- package/server.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,35 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to **@kevinrabun/judges** are documented here.
|
|
4
4
|
|
|
5
|
+
## [3.89.0] — 2026-03-14
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- Review scope limiter to filter findings by prefix or severity: review-scope-limit
|
|
9
|
+
- Finding regression check comparing current vs baseline verdicts: finding-regression-check
|
|
10
|
+
- Finding fix validation to verify patches and estimate effort: finding-fix-validation
|
|
11
|
+
- Dashboard data generator from verdict reports: review-dashboard-data
|
|
12
|
+
- Finding category mapping with keyword-based classification: finding-category-map
|
|
13
|
+
- Deduplicated findings report with occurrence counts: finding-dedup-report
|
|
14
|
+
- Review performance profiler with judge and source metrics: review-perf-profile
|
|
15
|
+
- False positive tracking log with add/remove/check actions: finding-false-positive-log
|
|
16
|
+
- Review guardrails for enforcing quality gates (no-critical, min-score, max-findings): review-guardrail
|
|
17
|
+
|
|
18
|
+
## [3.88.0] — 2026-03-14
|
|
19
|
+
|
|
20
|
+
### Added
|
|
21
|
+
- Dependency tree: finding-dependency-tree (visualize finding dependency relationships)
|
|
22
|
+
- CI integration: review-ci-integration (generate CI pipeline configuration)
|
|
23
|
+
- Comparative review: review-comparative (compare two verdict reports side by side)
|
|
24
|
+
- Suppression audit: finding-suppression-audit (audit suppressed/ignored findings)
|
|
25
|
+
- Custom rules: review-custom-rule (create and manage custom review rules)
|
|
26
|
+
- Notifications: review-notification (configure review notification settings)
|
|
27
|
+
- Age analysis: finding-age-analysis (analyze finding age and lifecycle)
|
|
28
|
+
- Template export: review-template-export (export review templates for reuse)
|
|
29
|
+
- Correlation: finding-correlation (find correlations between findings across reports)
|
|
30
|
+
|
|
31
|
+
### Tests
|
|
32
|
+
- All 2,267 tests passing (0 failures)
|
|
33
|
+
|
|
5
34
|
## [3.87.0] — 2026-03-14
|
|
6
35
|
|
|
7
36
|
### Added
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;GAmBG;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AA20BH;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAcnD;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAQzE;AAiBD,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,EAAE,CAwBnF;AAkUD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiiH1D"}
|
package/dist/cli.js
CHANGED
|
@@ -652,6 +652,24 @@ USAGE:
|
|
|
652
652
|
judges finding-pattern-library Manage finding pattern library
|
|
653
653
|
judges review-status-badge Generate status badges
|
|
654
654
|
judges finding-rule-explain Explain rules in detail
|
|
655
|
+
judges finding-dependency-tree Visualize finding dependencies
|
|
656
|
+
judges review-ci-integration Generate CI pipeline configuration
|
|
657
|
+
judges review-comparative Compare two verdict reports
|
|
658
|
+
judges finding-suppression-audit Audit suppressed findings
|
|
659
|
+
judges review-custom-rule Manage custom review rules
|
|
660
|
+
judges review-notification Manage review notifications
|
|
661
|
+
judges finding-age-analysis Analyze finding age over time
|
|
662
|
+
judges review-template-export Export review templates
|
|
663
|
+
judges finding-correlation Find correlations between findings
|
|
664
|
+
judges review-scope-limit Limit review scope to specific criteria
|
|
665
|
+
judges finding-regression-check Check for regressions vs baseline
|
|
666
|
+
judges finding-fix-validation Validate finding fixes
|
|
667
|
+
judges review-dashboard-data Generate dashboard-ready data
|
|
668
|
+
judges finding-category-map Map findings to categories
|
|
669
|
+
judges finding-dedup-report Deduplicated findings report
|
|
670
|
+
judges review-perf-profile Profile review performance
|
|
671
|
+
judges finding-false-positive-log Track false positive findings
|
|
672
|
+
judges review-guardrail Define and enforce review guardrails
|
|
655
673
|
judges tune Analyze project and suggest optimal config
|
|
656
674
|
judges list List all available judges
|
|
657
675
|
judges version Show version information
|
|
@@ -3649,6 +3667,114 @@ export async function runCli(argv) {
|
|
|
3649
3667
|
runFindingRuleExplain(argv);
|
|
3650
3668
|
return;
|
|
3651
3669
|
}
|
|
3670
|
+
// ─── Finding Dependency Tree Command ──────────────────────────────
|
|
3671
|
+
if (args.command === "finding-dependency-tree") {
|
|
3672
|
+
const { runFindingDependencyTree } = await import("./commands/finding-dependency-tree.js");
|
|
3673
|
+
runFindingDependencyTree(argv);
|
|
3674
|
+
return;
|
|
3675
|
+
}
|
|
3676
|
+
// ─── Review CI Integration Command ────────────────────────────────
|
|
3677
|
+
if (args.command === "review-ci-integration") {
|
|
3678
|
+
const { runReviewCiIntegration } = await import("./commands/review-ci-integration.js");
|
|
3679
|
+
runReviewCiIntegration(argv);
|
|
3680
|
+
return;
|
|
3681
|
+
}
|
|
3682
|
+
// ─── Review Comparative Command ───────────────────────────────────
|
|
3683
|
+
if (args.command === "review-comparative") {
|
|
3684
|
+
const { runReviewComparative } = await import("./commands/review-comparative.js");
|
|
3685
|
+
runReviewComparative(argv);
|
|
3686
|
+
return;
|
|
3687
|
+
}
|
|
3688
|
+
// ─── Finding Suppression Audit Command ────────────────────────────
|
|
3689
|
+
if (args.command === "finding-suppression-audit") {
|
|
3690
|
+
const { runFindingSuppressionAudit } = await import("./commands/finding-suppression-audit.js");
|
|
3691
|
+
runFindingSuppressionAudit(argv);
|
|
3692
|
+
return;
|
|
3693
|
+
}
|
|
3694
|
+
// ─── Review Custom Rule Command ───────────────────────────────────
|
|
3695
|
+
if (args.command === "review-custom-rule") {
|
|
3696
|
+
const { runReviewCustomRule } = await import("./commands/review-custom-rule.js");
|
|
3697
|
+
runReviewCustomRule(argv);
|
|
3698
|
+
return;
|
|
3699
|
+
}
|
|
3700
|
+
// ─── Review Notification Command ──────────────────────────────────
|
|
3701
|
+
if (args.command === "review-notification") {
|
|
3702
|
+
const { runReviewNotification } = await import("./commands/review-notification.js");
|
|
3703
|
+
runReviewNotification(argv);
|
|
3704
|
+
return;
|
|
3705
|
+
}
|
|
3706
|
+
// ─── Finding Age Analysis Command ─────────────────────────────────
|
|
3707
|
+
if (args.command === "finding-age-analysis") {
|
|
3708
|
+
const { runFindingAgeAnalysis } = await import("./commands/finding-age-analysis.js");
|
|
3709
|
+
runFindingAgeAnalysis(argv);
|
|
3710
|
+
return;
|
|
3711
|
+
}
|
|
3712
|
+
// ─── Review Template Export Command ───────────────────────────────
|
|
3713
|
+
if (args.command === "review-template-export") {
|
|
3714
|
+
const { runReviewTemplateExport } = await import("./commands/review-template-export.js");
|
|
3715
|
+
runReviewTemplateExport(argv);
|
|
3716
|
+
return;
|
|
3717
|
+
}
|
|
3718
|
+
// ─── Finding Correlation Command ──────────────────────────────────
|
|
3719
|
+
if (args.command === "finding-correlation") {
|
|
3720
|
+
const { runFindingCorrelation } = await import("./commands/finding-correlation.js");
|
|
3721
|
+
runFindingCorrelation(argv);
|
|
3722
|
+
return;
|
|
3723
|
+
}
|
|
3724
|
+
// ─── Review Scope Limit Command ───────────────────────────────────
|
|
3725
|
+
if (args.command === "review-scope-limit") {
|
|
3726
|
+
const { runReviewScopeLimit } = await import("./commands/review-scope-limit.js");
|
|
3727
|
+
runReviewScopeLimit(argv);
|
|
3728
|
+
return;
|
|
3729
|
+
}
|
|
3730
|
+
// ─── Finding Regression Check Command ─────────────────────────────
|
|
3731
|
+
if (args.command === "finding-regression-check") {
|
|
3732
|
+
const { runFindingRegressionCheck } = await import("./commands/finding-regression-check.js");
|
|
3733
|
+
runFindingRegressionCheck(argv);
|
|
3734
|
+
return;
|
|
3735
|
+
}
|
|
3736
|
+
// ─── Finding Fix Validation Command ───────────────────────────────
|
|
3737
|
+
if (args.command === "finding-fix-validation") {
|
|
3738
|
+
const { runFindingFixValidation } = await import("./commands/finding-fix-validation.js");
|
|
3739
|
+
runFindingFixValidation(argv);
|
|
3740
|
+
return;
|
|
3741
|
+
}
|
|
3742
|
+
// ─── Review Dashboard Data Command ────────────────────────────────
|
|
3743
|
+
if (args.command === "review-dashboard-data") {
|
|
3744
|
+
const { runReviewDashboardData } = await import("./commands/review-dashboard-data.js");
|
|
3745
|
+
runReviewDashboardData(argv);
|
|
3746
|
+
return;
|
|
3747
|
+
}
|
|
3748
|
+
// ─── Finding Category Map Command ────────────────────────────────
|
|
3749
|
+
if (args.command === "finding-category-map") {
|
|
3750
|
+
const { runFindingCategoryMap } = await import("./commands/finding-category-map.js");
|
|
3751
|
+
runFindingCategoryMap(argv);
|
|
3752
|
+
return;
|
|
3753
|
+
}
|
|
3754
|
+
// ─── Finding Dedup Report Command ─────────────────────────────────
|
|
3755
|
+
if (args.command === "finding-dedup-report") {
|
|
3756
|
+
const { runFindingDedupReport } = await import("./commands/finding-dedup-report.js");
|
|
3757
|
+
runFindingDedupReport(argv);
|
|
3758
|
+
return;
|
|
3759
|
+
}
|
|
3760
|
+
// ─── Review Perf Profile Command ──────────────────────────────────
|
|
3761
|
+
if (args.command === "review-perf-profile") {
|
|
3762
|
+
const { runReviewPerfProfile } = await import("./commands/review-perf-profile.js");
|
|
3763
|
+
runReviewPerfProfile(argv);
|
|
3764
|
+
return;
|
|
3765
|
+
}
|
|
3766
|
+
// ─── Finding False Positive Log Command ───────────────────────────
|
|
3767
|
+
if (args.command === "finding-false-positive-log") {
|
|
3768
|
+
const { runFindingFalsePositiveLog } = await import("./commands/finding-false-positive-log.js");
|
|
3769
|
+
runFindingFalsePositiveLog(argv);
|
|
3770
|
+
return;
|
|
3771
|
+
}
|
|
3772
|
+
// ─── Review Guardrail Command ─────────────────────────────────────
|
|
3773
|
+
if (args.command === "review-guardrail") {
|
|
3774
|
+
const { runReviewGuardrail } = await import("./commands/review-guardrail.js");
|
|
3775
|
+
runReviewGuardrail(argv);
|
|
3776
|
+
return;
|
|
3777
|
+
}
|
|
3652
3778
|
// ─── Tune Command ─────────────────────────────────────────────────
|
|
3653
3779
|
if (args.command === "tune") {
|
|
3654
3780
|
const { runTune } = await import("./commands/tune.js");
|