@kevinrabun/judges 3.89.0 → 3.91.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.
Files changed (78) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +126 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/finding-auto-tag.d.ts +5 -0
  6. package/dist/commands/finding-auto-tag.d.ts.map +1 -0
  7. package/dist/commands/finding-auto-tag.js +114 -0
  8. package/dist/commands/finding-auto-tag.js.map +1 -0
  9. package/dist/commands/finding-blast-radius.d.ts +5 -0
  10. package/dist/commands/finding-blast-radius.d.ts.map +1 -0
  11. package/dist/commands/finding-blast-radius.js +92 -0
  12. package/dist/commands/finding-blast-radius.js.map +1 -0
  13. package/dist/commands/finding-cluster-group.d.ts +5 -0
  14. package/dist/commands/finding-cluster-group.d.ts.map +1 -0
  15. package/dist/commands/finding-cluster-group.js +106 -0
  16. package/dist/commands/finding-cluster-group.js.map +1 -0
  17. package/dist/commands/finding-evidence-collect.d.ts +5 -0
  18. package/dist/commands/finding-evidence-collect.d.ts.map +1 -0
  19. package/dist/commands/finding-evidence-collect.js +115 -0
  20. package/dist/commands/finding-evidence-collect.js.map +1 -0
  21. package/dist/commands/finding-hotspot-map.d.ts +5 -0
  22. package/dist/commands/finding-hotspot-map.d.ts.map +1 -0
  23. package/dist/commands/finding-hotspot-map.js +107 -0
  24. package/dist/commands/finding-hotspot-map.js.map +1 -0
  25. package/dist/commands/finding-metadata-enrich.d.ts +5 -0
  26. package/dist/commands/finding-metadata-enrich.d.ts.map +1 -0
  27. package/dist/commands/finding-metadata-enrich.js +93 -0
  28. package/dist/commands/finding-metadata-enrich.js.map +1 -0
  29. package/dist/commands/finding-resolution-tracker.d.ts +5 -0
  30. package/dist/commands/finding-resolution-tracker.d.ts.map +1 -0
  31. package/dist/commands/finding-resolution-tracker.js +164 -0
  32. package/dist/commands/finding-resolution-tracker.js.map +1 -0
  33. package/dist/commands/finding-trend-analysis.d.ts +5 -0
  34. package/dist/commands/finding-trend-analysis.d.ts.map +1 -0
  35. package/dist/commands/finding-trend-analysis.js +96 -0
  36. package/dist/commands/finding-trend-analysis.js.map +1 -0
  37. package/dist/commands/review-annotation-export.d.ts +5 -0
  38. package/dist/commands/review-annotation-export.d.ts.map +1 -0
  39. package/dist/commands/review-annotation-export.js +106 -0
  40. package/dist/commands/review-annotation-export.js.map +1 -0
  41. package/dist/commands/review-batch-mode.d.ts +5 -0
  42. package/dist/commands/review-batch-mode.d.ts.map +1 -0
  43. package/dist/commands/review-batch-mode.js +98 -0
  44. package/dist/commands/review-batch-mode.js.map +1 -0
  45. package/dist/commands/review-cache-warm.d.ts +5 -0
  46. package/dist/commands/review-cache-warm.d.ts.map +1 -0
  47. package/dist/commands/review-cache-warm.js +71 -0
  48. package/dist/commands/review-cache-warm.js.map +1 -0
  49. package/dist/commands/review-compliance-gate.d.ts +5 -0
  50. package/dist/commands/review-compliance-gate.d.ts.map +1 -0
  51. package/dist/commands/review-compliance-gate.js +152 -0
  52. package/dist/commands/review-compliance-gate.js.map +1 -0
  53. package/dist/commands/review-merge-config.d.ts +5 -0
  54. package/dist/commands/review-merge-config.d.ts.map +1 -0
  55. package/dist/commands/review-merge-config.js +120 -0
  56. package/dist/commands/review-merge-config.js.map +1 -0
  57. package/dist/commands/review-onboard-wizard.d.ts +5 -0
  58. package/dist/commands/review-onboard-wizard.d.ts.map +1 -0
  59. package/dist/commands/review-onboard-wizard.js +93 -0
  60. package/dist/commands/review-onboard-wizard.js.map +1 -0
  61. package/dist/commands/review-parallel-run.d.ts +5 -0
  62. package/dist/commands/review-parallel-run.d.ts.map +1 -0
  63. package/dist/commands/review-parallel-run.js +117 -0
  64. package/dist/commands/review-parallel-run.js.map +1 -0
  65. package/dist/commands/review-quality-score.d.ts +5 -0
  66. package/dist/commands/review-quality-score.d.ts.map +1 -0
  67. package/dist/commands/review-quality-score.js +128 -0
  68. package/dist/commands/review-quality-score.js.map +1 -0
  69. package/dist/commands/review-threshold-tune.d.ts +5 -0
  70. package/dist/commands/review-threshold-tune.d.ts.map +1 -0
  71. package/dist/commands/review-threshold-tune.js +136 -0
  72. package/dist/commands/review-threshold-tune.js.map +1 -0
  73. package/dist/commands/review-webhook-notify.d.ts +5 -0
  74. package/dist/commands/review-webhook-notify.d.ts.map +1 -0
  75. package/dist/commands/review-webhook-notify.js +146 -0
  76. package/dist/commands/review-webhook-notify.js.map +1 -0
  77. package/package.json +1 -1
  78. package/server.json +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,32 @@
2
2
 
3
3
  All notable changes to **@kevinrabun/judges** are documented here.
4
4
 
5
+ ## [3.91.0] — 2026-03-14
6
+
7
+ ### Added
8
+ - Merge multiple configuration files with conflict detection: review-merge-config
9
+ - Map finding hotspots by line range buckets: finding-hotspot-map
10
+ - Summarize parallel review runs with consensus analysis: review-parallel-run
11
+ - Export findings as GitHub Actions, inline, or JSON annotations: review-annotation-export
12
+ - Estimate finding blast radius with risk scoring: finding-blast-radius
13
+ - Compute multi-dimension quality score with grading: review-quality-score
14
+ - Onboarding wizard with focus-based judge suggestions: review-onboard-wizard
15
+ - Pre-warm review cache for faster subsequent runs: review-cache-warm
16
+ - Enrich findings with judge and domain metadata: finding-metadata-enrich
17
+
18
+ ## [3.90.0] — 2026-03-14
19
+
20
+ ### Added
21
+ - Batch review processing for multiple verdict files: review-batch-mode
22
+ - Finding trend analysis across historical reports: finding-trend-analysis
23
+ - Automatic content-based finding tagging: finding-auto-tag
24
+ - Webhook notification configuration and preview: review-webhook-notify
25
+ - Evidence collection with source code snippets: finding-evidence-collect
26
+ - Compliance gate with configurable policies: review-compliance-gate
27
+ - Finding resolution tracker with sync and status updates: finding-resolution-tracker
28
+ - Threshold tuning suggestions based on historical data: review-threshold-tune
29
+ - Finding cluster grouping by rule prefix: finding-cluster-group
30
+
5
31
  ## [3.89.0] — 2026-03-14
6
32
 
7
33
  ### 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;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"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AA61BH;;;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,CA+pH1D"}
package/dist/cli.js CHANGED
@@ -670,6 +670,24 @@ USAGE:
670
670
  judges review-perf-profile Profile review performance
671
671
  judges finding-false-positive-log Track false positive findings
672
672
  judges review-guardrail Define and enforce review guardrails
673
+ judges review-batch-mode Batch review processing
674
+ judges finding-trend-analysis Analyze finding trends over time
675
+ judges finding-auto-tag Auto-tag findings by content
676
+ judges review-webhook-notify Configure webhook notifications
677
+ judges finding-evidence-collect Collect evidence for findings
678
+ judges review-compliance-gate Compliance gate for reviews
679
+ judges finding-resolution-tracker Track finding resolutions
680
+ judges review-threshold-tune Tune review thresholds
681
+ judges finding-cluster-group Group findings into clusters
682
+ judges review-merge-config Merge multiple configuration files
683
+ judges finding-hotspot-map Map finding hotspots in code
684
+ judges review-parallel-run Summarize parallel review runs
685
+ judges review-annotation-export Export findings as code annotations
686
+ judges finding-blast-radius Estimate finding blast radius
687
+ judges review-quality-score Compute multi-dimension quality score
688
+ judges review-onboard-wizard Onboarding wizard for new users
689
+ judges review-cache-warm Pre-warm review cache
690
+ judges finding-metadata-enrich Enrich findings with metadata
673
691
  judges tune Analyze project and suggest optimal config
674
692
  judges list List all available judges
675
693
  judges version Show version information
@@ -3775,6 +3793,114 @@ export async function runCli(argv) {
3775
3793
  runReviewGuardrail(argv);
3776
3794
  return;
3777
3795
  }
3796
+ // ─── Review Batch Mode Command ────────────────────────────────────
3797
+ if (args.command === "review-batch-mode") {
3798
+ const { runReviewBatchMode } = await import("./commands/review-batch-mode.js");
3799
+ runReviewBatchMode(argv);
3800
+ return;
3801
+ }
3802
+ // ─── Finding Trend Analysis Command ──────────────────────────────
3803
+ if (args.command === "finding-trend-analysis") {
3804
+ const { runFindingTrendAnalysis } = await import("./commands/finding-trend-analysis.js");
3805
+ runFindingTrendAnalysis(argv);
3806
+ return;
3807
+ }
3808
+ // ─── Finding Auto Tag Command ─────────────────────────────────────
3809
+ if (args.command === "finding-auto-tag") {
3810
+ const { runFindingAutoTag } = await import("./commands/finding-auto-tag.js");
3811
+ runFindingAutoTag(argv);
3812
+ return;
3813
+ }
3814
+ // ─── Review Webhook Notify Command ────────────────────────────────
3815
+ if (args.command === "review-webhook-notify") {
3816
+ const { runReviewWebhookNotify } = await import("./commands/review-webhook-notify.js");
3817
+ runReviewWebhookNotify(argv);
3818
+ return;
3819
+ }
3820
+ // ─── Finding Evidence Collect Command ─────────────────────────────
3821
+ if (args.command === "finding-evidence-collect") {
3822
+ const { runFindingEvidenceCollect } = await import("./commands/finding-evidence-collect.js");
3823
+ runFindingEvidenceCollect(argv);
3824
+ return;
3825
+ }
3826
+ // ─── Review Compliance Gate Command ───────────────────────────────
3827
+ if (args.command === "review-compliance-gate") {
3828
+ const { runReviewComplianceGate } = await import("./commands/review-compliance-gate.js");
3829
+ runReviewComplianceGate(argv);
3830
+ return;
3831
+ }
3832
+ // ─── Finding Resolution Tracker Command ───────────────────────────
3833
+ if (args.command === "finding-resolution-tracker") {
3834
+ const { runFindingResolutionTracker } = await import("./commands/finding-resolution-tracker.js");
3835
+ runFindingResolutionTracker(argv);
3836
+ return;
3837
+ }
3838
+ // ─── Review Threshold Tune Command ────────────────────────────────
3839
+ if (args.command === "review-threshold-tune") {
3840
+ const { runReviewThresholdTune } = await import("./commands/review-threshold-tune.js");
3841
+ runReviewThresholdTune(argv);
3842
+ return;
3843
+ }
3844
+ // ─── Finding Cluster Group Command ────────────────────────────────
3845
+ if (args.command === "finding-cluster-group") {
3846
+ const { runFindingClusterGroup } = await import("./commands/finding-cluster-group.js");
3847
+ runFindingClusterGroup(argv);
3848
+ return;
3849
+ }
3850
+ // ─── Review Merge Config Command ──────────────────────────────────
3851
+ if (args.command === "review-merge-config") {
3852
+ const { runReviewMergeConfig } = await import("./commands/review-merge-config.js");
3853
+ runReviewMergeConfig(argv);
3854
+ return;
3855
+ }
3856
+ // ─── Finding Hotspot Map Command ──────────────────────────────────
3857
+ if (args.command === "finding-hotspot-map") {
3858
+ const { runFindingHotspotMap } = await import("./commands/finding-hotspot-map.js");
3859
+ runFindingHotspotMap(argv);
3860
+ return;
3861
+ }
3862
+ // ─── Review Parallel Run Command ──────────────────────────────────
3863
+ if (args.command === "review-parallel-run") {
3864
+ const { runReviewParallelRun } = await import("./commands/review-parallel-run.js");
3865
+ runReviewParallelRun(argv);
3866
+ return;
3867
+ }
3868
+ // ─── Review Annotation Export Command ─────────────────────────────
3869
+ if (args.command === "review-annotation-export") {
3870
+ const { runReviewAnnotationExport } = await import("./commands/review-annotation-export.js");
3871
+ runReviewAnnotationExport(argv);
3872
+ return;
3873
+ }
3874
+ // ─── Finding Blast Radius Command ─────────────────────────────────
3875
+ if (args.command === "finding-blast-radius") {
3876
+ const { runFindingBlastRadius } = await import("./commands/finding-blast-radius.js");
3877
+ runFindingBlastRadius(argv);
3878
+ return;
3879
+ }
3880
+ // ─── Review Quality Score Command ─────────────────────────────────
3881
+ if (args.command === "review-quality-score") {
3882
+ const { runReviewQualityScore } = await import("./commands/review-quality-score.js");
3883
+ runReviewQualityScore(argv);
3884
+ return;
3885
+ }
3886
+ // ─── Review Onboard Wizard Command ────────────────────────────────
3887
+ if (args.command === "review-onboard-wizard") {
3888
+ const { runReviewOnboardWizard } = await import("./commands/review-onboard-wizard.js");
3889
+ runReviewOnboardWizard(argv);
3890
+ return;
3891
+ }
3892
+ // ─── Review Cache Warm Command ────────────────────────────────────
3893
+ if (args.command === "review-cache-warm") {
3894
+ const { runReviewCacheWarm } = await import("./commands/review-cache-warm.js");
3895
+ runReviewCacheWarm(argv);
3896
+ return;
3897
+ }
3898
+ // ─── Finding Metadata Enrich Command ──────────────────────────────
3899
+ if (args.command === "finding-metadata-enrich") {
3900
+ const { runFindingMetadataEnrich } = await import("./commands/finding-metadata-enrich.js");
3901
+ runFindingMetadataEnrich(argv);
3902
+ return;
3903
+ }
3778
3904
  // ─── Tune Command ─────────────────────────────────────────────────
3779
3905
  if (args.command === "tune") {
3780
3906
  const { runTune } = await import("./commands/tune.js");