@kevinrabun/judges 3.112.0 → 3.113.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/README.md +118 -4
- package/dist/api.d.ts +0 -2
- package/dist/api.js +0 -3
- package/dist/ast/cross-file-taint.d.ts +0 -1
- package/dist/ast/cross-file-taint.js +0 -1
- package/dist/ast/index.d.ts +0 -1
- package/dist/ast/index.js +0 -1
- package/dist/ast/structural-parser.d.ts +0 -1
- package/dist/ast/structural-parser.js +0 -1
- package/dist/ast/taint-tracker.d.ts +0 -1
- package/dist/ast/taint-tracker.js +0 -1
- package/dist/ast/tree-sitter-ast.d.ts +0 -1
- package/dist/ast/tree-sitter-ast.js +43 -2
- package/dist/ast/types.d.ts +0 -1
- package/dist/ast/types.js +0 -1
- package/dist/auto-tune.d.ts +0 -1
- package/dist/auto-tune.js +0 -1
- package/dist/cache.d.ts +0 -1
- package/dist/cache.js +0 -1
- package/dist/calibration.d.ts +0 -1
- package/dist/calibration.js +0 -1
- package/dist/commands/auto-detect.d.ts +0 -1
- package/dist/commands/auto-detect.js +0 -1
- package/dist/commands/benchmark-advanced.d.ts +0 -1
- package/dist/commands/benchmark-advanced.js +0 -1
- package/dist/commands/benchmark-ai-agents.d.ts +0 -1
- package/dist/commands/benchmark-ai-agents.js +0 -1
- package/dist/commands/benchmark-ai-output.d.ts +0 -1
- package/dist/commands/benchmark-ai-output.js +0 -1
- package/dist/commands/benchmark-compliance-ethics.d.ts +0 -1
- package/dist/commands/benchmark-compliance-ethics.js +0 -1
- package/dist/commands/benchmark-expanded-2.d.ts +0 -1
- package/dist/commands/benchmark-expanded-2.js +0 -1
- package/dist/commands/benchmark-expanded.d.ts +0 -1
- package/dist/commands/benchmark-expanded.js +0 -1
- package/dist/commands/benchmark-infrastructure.d.ts +0 -1
- package/dist/commands/benchmark-infrastructure.js +0 -1
- package/dist/commands/benchmark-languages.d.ts +0 -1
- package/dist/commands/benchmark-languages.js +0 -1
- package/dist/commands/benchmark-quality-ops.d.ts +0 -1
- package/dist/commands/benchmark-quality-ops.js +0 -1
- package/dist/commands/benchmark-security-deep.d.ts +0 -1
- package/dist/commands/benchmark-security-deep.js +0 -1
- package/dist/commands/benchmark.d.ts +0 -1
- package/dist/commands/benchmark.js +0 -1
- package/dist/commands/config-share.d.ts +0 -1
- package/dist/commands/config-share.js +0 -1
- package/dist/commands/coverage.d.ts +0 -1
- package/dist/commands/coverage.js +0 -1
- package/dist/commands/doctor.d.ts +0 -1
- package/dist/commands/doctor.js +2 -3
- package/dist/commands/feedback.d.ts +0 -1
- package/dist/commands/feedback.js +0 -1
- package/dist/commands/fix.d.ts +0 -1
- package/dist/commands/fix.js +0 -1
- package/dist/commands/language-packs.d.ts +0 -1
- package/dist/commands/language-packs.js +0 -1
- package/dist/commands/llm-benchmark.d.ts +0 -1
- package/dist/commands/llm-benchmark.js +0 -1
- package/dist/commands/review.d.ts +0 -1
- package/dist/commands/review.js +4 -17
- package/dist/commands/rule-metrics.d.ts +0 -1
- package/dist/commands/rule-metrics.js +0 -1
- package/dist/commands/rule.d.ts +0 -1
- package/dist/commands/rule.js +0 -1
- package/dist/commands/smart-output.d.ts +0 -1
- package/dist/commands/smart-output.js +0 -1
- package/dist/commands/snapshot.d.ts +0 -1
- package/dist/commands/snapshot.js +0 -1
- package/dist/comparison.d.ts +0 -1
- package/dist/comparison.js +0 -1
- package/dist/config.d.ts +11 -1
- package/dist/config.js +49 -30
- package/dist/data-adapter.d.ts +0 -1
- package/dist/data-adapter.js +0 -1
- package/dist/dedup.d.ts +0 -1
- package/dist/dedup.js +0 -1
- package/dist/disk-cache.d.ts +0 -1
- package/dist/disk-cache.js +0 -1
- package/dist/errors.d.ts +0 -1
- package/dist/errors.js +0 -1
- package/dist/evaluators/accessibility.d.ts +0 -1
- package/dist/evaluators/accessibility.js +0 -1
- package/dist/evaluators/agent-instructions.d.ts +0 -1
- package/dist/evaluators/agent-instructions.js +0 -1
- package/dist/evaluators/ai-code-safety.d.ts +0 -1
- package/dist/evaluators/ai-code-safety.js +0 -1
- package/dist/evaluators/api-contract.d.ts +0 -1
- package/dist/evaluators/api-contract.js +0 -1
- package/dist/evaluators/api-design.d.ts +0 -1
- package/dist/evaluators/api-design.js +0 -1
- package/dist/evaluators/app-builder.d.ts +0 -1
- package/dist/evaluators/app-builder.js +0 -1
- package/dist/evaluators/authentication.d.ts +0 -1
- package/dist/evaluators/authentication.js +0 -1
- package/dist/evaluators/backwards-compatibility.d.ts +0 -1
- package/dist/evaluators/backwards-compatibility.js +0 -1
- package/dist/evaluators/caching.d.ts +0 -1
- package/dist/evaluators/caching.js +0 -1
- package/dist/evaluators/ci-cd.d.ts +0 -1
- package/dist/evaluators/ci-cd.js +0 -1
- package/dist/evaluators/cloud-readiness.d.ts +0 -1
- package/dist/evaluators/cloud-readiness.js +0 -1
- package/dist/evaluators/code-structure.d.ts +0 -1
- package/dist/evaluators/code-structure.js +0 -1
- package/dist/evaluators/compliance.d.ts +0 -1
- package/dist/evaluators/compliance.js +0 -1
- package/dist/evaluators/concurrency.d.ts +0 -1
- package/dist/evaluators/concurrency.js +0 -1
- package/dist/evaluators/configuration-management.d.ts +0 -1
- package/dist/evaluators/configuration-management.js +0 -1
- package/dist/evaluators/cost-effectiveness.d.ts +0 -1
- package/dist/evaluators/cost-effectiveness.js +0 -1
- package/dist/evaluators/cybersecurity.d.ts +0 -1
- package/dist/evaluators/cybersecurity.js +0 -1
- package/dist/evaluators/data-security.d.ts +0 -1
- package/dist/evaluators/data-security.js +0 -1
- package/dist/evaluators/data-sovereignty.d.ts +0 -1
- package/dist/evaluators/data-sovereignty.js +0 -1
- package/dist/evaluators/database.d.ts +0 -1
- package/dist/evaluators/database.js +0 -1
- package/dist/evaluators/dependencies.d.ts +0 -1
- package/dist/evaluators/dependencies.js +0 -1
- package/dist/evaluators/dependency-health.d.ts +0 -1
- package/dist/evaluators/dependency-health.js +0 -1
- package/dist/evaluators/documentation.d.ts +0 -1
- package/dist/evaluators/documentation.js +0 -1
- package/dist/evaluators/error-handling.d.ts +0 -1
- package/dist/evaluators/error-handling.js +0 -1
- package/dist/evaluators/ethics-bias.d.ts +0 -1
- package/dist/evaluators/ethics-bias.js +0 -1
- package/dist/evaluators/false-positive-review.d.ts +0 -1
- package/dist/evaluators/false-positive-review.js +0 -1
- package/dist/evaluators/framework-rules.d.ts +0 -1
- package/dist/evaluators/framework-rules.js +0 -1
- package/dist/evaluators/framework-safety.d.ts +0 -1
- package/dist/evaluators/framework-safety.js +0 -1
- package/dist/evaluators/hallucination-detection.d.ts +0 -1
- package/dist/evaluators/hallucination-detection.js +0 -1
- package/dist/evaluators/iac-security.d.ts +0 -1
- package/dist/evaluators/iac-security.js +0 -1
- package/dist/evaluators/index.d.ts +0 -1
- package/dist/evaluators/index.js +0 -1
- package/dist/evaluators/intent-alignment.d.ts +0 -1
- package/dist/evaluators/intent-alignment.js +0 -1
- package/dist/evaluators/internationalization.d.ts +0 -1
- package/dist/evaluators/internationalization.js +0 -1
- package/dist/evaluators/logging-privacy.d.ts +0 -1
- package/dist/evaluators/logging-privacy.js +0 -1
- package/dist/evaluators/logic-review.d.ts +0 -1
- package/dist/evaluators/logic-review.js +0 -1
- package/dist/evaluators/maintainability.d.ts +0 -1
- package/dist/evaluators/maintainability.js +0 -1
- package/dist/evaluators/model-fingerprint.d.ts +0 -1
- package/dist/evaluators/model-fingerprint.js +0 -1
- package/dist/evaluators/multi-turn-coherence.d.ts +0 -1
- package/dist/evaluators/multi-turn-coherence.js +0 -1
- package/dist/evaluators/observability.d.ts +0 -1
- package/dist/evaluators/observability.js +0 -1
- package/dist/evaluators/over-engineering.d.ts +0 -1
- package/dist/evaluators/over-engineering.js +0 -1
- package/dist/evaluators/performance.d.ts +0 -1
- package/dist/evaluators/performance.js +0 -1
- package/dist/evaluators/portability.d.ts +0 -1
- package/dist/evaluators/portability.js +0 -1
- package/dist/evaluators/project.d.ts +0 -1
- package/dist/evaluators/project.js +0 -1
- package/dist/evaluators/rate-limiting.d.ts +0 -1
- package/dist/evaluators/rate-limiting.js +0 -1
- package/dist/evaluators/reliability.d.ts +0 -1
- package/dist/evaluators/reliability.js +0 -1
- package/dist/evaluators/scalability.d.ts +0 -1
- package/dist/evaluators/scalability.js +0 -1
- package/dist/evaluators/security.d.ts +0 -1
- package/dist/evaluators/security.js +0 -1
- package/dist/evaluators/shared.d.ts +0 -1
- package/dist/evaluators/shared.js +0 -1
- package/dist/evaluators/software-practices.d.ts +0 -1
- package/dist/evaluators/software-practices.js +0 -1
- package/dist/evaluators/testing.d.ts +0 -1
- package/dist/evaluators/testing.js +0 -1
- package/dist/evaluators/ux.d.ts +0 -1
- package/dist/evaluators/ux.js +0 -1
- package/dist/evaluators/v2.d.ts +0 -1
- package/dist/evaluators/v2.js +0 -1
- package/dist/finding-lifecycle.d.ts +0 -1
- package/dist/finding-lifecycle.js +0 -1
- package/dist/fingerprint.d.ts +0 -1
- package/dist/fingerprint.js +0 -1
- package/dist/fix-history.d.ts +0 -1
- package/dist/fix-history.js +0 -1
- package/dist/formatters/badge.d.ts +0 -1
- package/dist/formatters/badge.js +0 -1
- package/dist/formatters/codeclimate.d.ts +0 -1
- package/dist/formatters/codeclimate.js +0 -1
- package/dist/formatters/csv.d.ts +0 -1
- package/dist/formatters/csv.js +0 -1
- package/dist/formatters/diagnostics.d.ts +0 -1
- package/dist/formatters/diagnostics.js +0 -1
- package/dist/formatters/github-actions.d.ts +0 -1
- package/dist/formatters/github-actions.js +0 -1
- package/dist/formatters/html.d.ts +0 -1
- package/dist/formatters/html.js +0 -1
- package/dist/formatters/junit.d.ts +0 -1
- package/dist/formatters/junit.js +0 -1
- package/dist/formatters/pdf.d.ts +0 -1
- package/dist/formatters/pdf.js +0 -1
- package/dist/formatters/sarif.d.ts +0 -1
- package/dist/formatters/sarif.js +0 -1
- package/dist/github-app.d.ts +9 -1
- package/dist/github-app.js +6 -5
- package/dist/index.d.ts +1 -17
- package/dist/index.js +32 -104
- package/dist/judge-registry.d.ts +0 -1
- package/dist/judge-registry.js +0 -1
- package/dist/judges/accessibility.d.ts +0 -1
- package/dist/judges/accessibility.js +0 -1
- package/dist/judges/agent-instructions.d.ts +0 -1
- package/dist/judges/agent-instructions.js +0 -1
- package/dist/judges/ai-code-safety.d.ts +0 -1
- package/dist/judges/ai-code-safety.js +0 -1
- package/dist/judges/api-contract.d.ts +0 -1
- package/dist/judges/api-contract.js +0 -1
- package/dist/judges/api-design.d.ts +0 -1
- package/dist/judges/api-design.js +0 -1
- package/dist/judges/authentication.d.ts +0 -1
- package/dist/judges/authentication.js +0 -1
- package/dist/judges/backwards-compatibility.d.ts +0 -1
- package/dist/judges/backwards-compatibility.js +0 -1
- package/dist/judges/caching.d.ts +0 -1
- package/dist/judges/caching.js +0 -1
- package/dist/judges/ci-cd.d.ts +0 -1
- package/dist/judges/ci-cd.js +0 -1
- package/dist/judges/cloud-readiness.d.ts +0 -1
- package/dist/judges/cloud-readiness.js +0 -1
- package/dist/judges/code-structure.d.ts +0 -1
- package/dist/judges/code-structure.js +0 -1
- package/dist/judges/compliance.d.ts +0 -1
- package/dist/judges/compliance.js +0 -1
- package/dist/judges/concurrency.d.ts +0 -1
- package/dist/judges/concurrency.js +0 -1
- package/dist/judges/configuration-management.d.ts +0 -1
- package/dist/judges/configuration-management.js +0 -1
- package/dist/judges/cost-effectiveness.d.ts +0 -1
- package/dist/judges/cost-effectiveness.js +0 -1
- package/dist/judges/cybersecurity.d.ts +0 -1
- package/dist/judges/cybersecurity.js +0 -1
- package/dist/judges/data-security.d.ts +0 -1
- package/dist/judges/data-security.js +0 -1
- package/dist/judges/data-sovereignty.d.ts +0 -1
- package/dist/judges/data-sovereignty.js +0 -1
- package/dist/judges/database.d.ts +0 -1
- package/dist/judges/database.js +0 -1
- package/dist/judges/dependency-health.d.ts +0 -1
- package/dist/judges/dependency-health.js +0 -1
- package/dist/judges/documentation.d.ts +0 -1
- package/dist/judges/documentation.js +0 -1
- package/dist/judges/error-handling.d.ts +0 -1
- package/dist/judges/error-handling.js +0 -1
- package/dist/judges/ethics-bias.d.ts +0 -1
- package/dist/judges/ethics-bias.js +0 -1
- package/dist/judges/false-positive-review.d.ts +0 -1
- package/dist/judges/false-positive-review.js +0 -1
- package/dist/judges/framework-safety.d.ts +0 -1
- package/dist/judges/framework-safety.js +0 -1
- package/dist/judges/hallucination-detection.d.ts +0 -1
- package/dist/judges/hallucination-detection.js +0 -1
- package/dist/judges/iac-security.d.ts +0 -1
- package/dist/judges/iac-security.js +0 -1
- package/dist/judges/index.d.ts +0 -1
- package/dist/judges/index.js +0 -1
- package/dist/judges/intent-alignment.d.ts +0 -1
- package/dist/judges/intent-alignment.js +0 -1
- package/dist/judges/internationalization.d.ts +0 -1
- package/dist/judges/internationalization.js +0 -1
- package/dist/judges/logging-privacy.d.ts +0 -1
- package/dist/judges/logging-privacy.js +0 -1
- package/dist/judges/logic-review.d.ts +0 -1
- package/dist/judges/logic-review.js +0 -1
- package/dist/judges/maintainability.d.ts +0 -1
- package/dist/judges/maintainability.js +0 -1
- package/dist/judges/model-fingerprint.d.ts +0 -1
- package/dist/judges/model-fingerprint.js +0 -1
- package/dist/judges/multi-turn-coherence.d.ts +0 -1
- package/dist/judges/multi-turn-coherence.js +0 -1
- package/dist/judges/observability.d.ts +0 -1
- package/dist/judges/observability.js +0 -1
- package/dist/judges/over-engineering.d.ts +0 -1
- package/dist/judges/over-engineering.js +0 -1
- package/dist/judges/performance.d.ts +0 -1
- package/dist/judges/performance.js +0 -1
- package/dist/judges/portability.d.ts +0 -1
- package/dist/judges/portability.js +0 -1
- package/dist/judges/rate-limiting.d.ts +0 -1
- package/dist/judges/rate-limiting.js +0 -1
- package/dist/judges/reliability.d.ts +0 -1
- package/dist/judges/reliability.js +0 -1
- package/dist/judges/scalability.d.ts +0 -1
- package/dist/judges/scalability.js +0 -1
- package/dist/judges/security.d.ts +0 -1
- package/dist/judges/security.js +0 -1
- package/dist/judges/software-practices.d.ts +0 -1
- package/dist/judges/software-practices.js +0 -1
- package/dist/judges/testing.d.ts +0 -1
- package/dist/judges/testing.js +0 -1
- package/dist/judges/ux.d.ts +0 -1
- package/dist/judges/ux.js +0 -1
- package/dist/language-patterns.d.ts +0 -1
- package/dist/language-patterns.js +0 -1
- package/dist/parallel.d.ts +0 -1
- package/dist/parallel.js +0 -1
- package/dist/patches/index.d.ts +0 -1
- package/dist/patches/index.js +0 -1
- package/dist/plugins.d.ts +0 -1
- package/dist/plugins.js +0 -1
- package/dist/presets.d.ts +0 -1
- package/dist/presets.js +0 -1
- package/dist/reports/public-repo-report.d.ts +0 -1
- package/dist/reports/public-repo-report.js +0 -1
- package/dist/scoring.d.ts +0 -1
- package/dist/scoring.js +0 -1
- package/dist/security-ids.d.ts +0 -1
- package/dist/security-ids.js +0 -1
- package/dist/tools/command-safety.d.ts +13 -0
- package/dist/tools/command-safety.js +95 -0
- package/dist/tools/deep-review.d.ts +0 -1
- package/dist/tools/deep-review.js +0 -1
- package/dist/tools/prompts.d.ts +0 -1
- package/dist/tools/prompts.js +0 -1
- package/dist/tools/register-evaluation.d.ts +0 -1
- package/dist/tools/register-evaluation.js +0 -1
- package/dist/tools/register-fix.d.ts +0 -1
- package/dist/tools/register-fix.js +0 -1
- package/dist/tools/register-review.d.ts +0 -1
- package/dist/tools/register-review.js +0 -1
- package/dist/tools/register-scaffold.d.ts +0 -1
- package/dist/tools/register-scaffold.js +0 -1
- package/dist/tools/register-workflow.d.ts +0 -1
- package/dist/tools/register-workflow.js +0 -1
- package/dist/tools/register-workspace.d.ts +0 -1
- package/dist/tools/register-workspace.js +0 -1
- package/dist/tools/register.d.ts +0 -1
- package/dist/tools/register.js +0 -1
- package/dist/tools/schemas.d.ts +0 -1
- package/dist/tools/schemas.js +0 -1
- package/dist/types.d.ts +0 -1
- package/dist/types.js +0 -1
- package/package.json +112 -27
- package/server.json +2 -2
- package/CHANGELOG.md +0 -2754
- package/dist/api.d.ts.map +0 -1
- package/dist/api.js.map +0 -1
- package/dist/ast/cross-file-taint.d.ts.map +0 -1
- package/dist/ast/cross-file-taint.js.map +0 -1
- package/dist/ast/index.d.ts.map +0 -1
- package/dist/ast/index.js.map +0 -1
- package/dist/ast/structural-parser.d.ts.map +0 -1
- package/dist/ast/structural-parser.js.map +0 -1
- package/dist/ast/taint-tracker.d.ts.map +0 -1
- package/dist/ast/taint-tracker.js.map +0 -1
- package/dist/ast/tree-sitter-ast.d.ts.map +0 -1
- package/dist/ast/tree-sitter-ast.js.map +0 -1
- package/dist/ast/types.d.ts.map +0 -1
- package/dist/ast/types.js.map +0 -1
- package/dist/auto-tune.d.ts.map +0 -1
- package/dist/auto-tune.js.map +0 -1
- package/dist/cache.d.ts.map +0 -1
- package/dist/cache.js.map +0 -1
- package/dist/calibration.d.ts.map +0 -1
- package/dist/calibration.js.map +0 -1
- package/dist/cli.d.ts +0 -37
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -6062
- package/dist/cli.js.map +0 -1
- package/dist/commands/adoption-report.d.ts +0 -8
- package/dist/commands/adoption-report.d.ts.map +0 -1
- package/dist/commands/adoption-report.js +0 -219
- package/dist/commands/adoption-report.js.map +0 -1
- package/dist/commands/adoption-track.d.ts +0 -5
- package/dist/commands/adoption-track.d.ts.map +0 -1
- package/dist/commands/adoption-track.js +0 -247
- package/dist/commands/adoption-track.js.map +0 -1
- package/dist/commands/ai-gate.d.ts +0 -8
- package/dist/commands/ai-gate.d.ts.map +0 -1
- package/dist/commands/ai-gate.js +0 -213
- package/dist/commands/ai-gate.js.map +0 -1
- package/dist/commands/ai-model-trust.d.ts +0 -17
- package/dist/commands/ai-model-trust.d.ts.map +0 -1
- package/dist/commands/ai-model-trust.js +0 -235
- package/dist/commands/ai-model-trust.js.map +0 -1
- package/dist/commands/ai-output-compare.d.ts +0 -9
- package/dist/commands/ai-output-compare.d.ts.map +0 -1
- package/dist/commands/ai-output-compare.js +0 -203
- package/dist/commands/ai-output-compare.js.map +0 -1
- package/dist/commands/ai-pattern-trend.d.ts +0 -9
- package/dist/commands/ai-pattern-trend.d.ts.map +0 -1
- package/dist/commands/ai-pattern-trend.js +0 -224
- package/dist/commands/ai-pattern-trend.js.map +0 -1
- package/dist/commands/ai-prompt-audit.d.ts +0 -23
- package/dist/commands/ai-prompt-audit.d.ts.map +0 -1
- package/dist/commands/ai-prompt-audit.js +0 -255
- package/dist/commands/ai-prompt-audit.js.map +0 -1
- package/dist/commands/ai-provenance.d.ts +0 -5
- package/dist/commands/ai-provenance.d.ts.map +0 -1
- package/dist/commands/ai-provenance.js +0 -248
- package/dist/commands/ai-provenance.js.map +0 -1
- package/dist/commands/api-audit.d.ts +0 -9
- package/dist/commands/api-audit.d.ts.map +0 -1
- package/dist/commands/api-audit.js +0 -360
- package/dist/commands/api-audit.js.map +0 -1
- package/dist/commands/api-misuse.d.ts +0 -5
- package/dist/commands/api-misuse.d.ts.map +0 -1
- package/dist/commands/api-misuse.js +0 -261
- package/dist/commands/api-misuse.js.map +0 -1
- package/dist/commands/api-versioning-audit.d.ts +0 -6
- package/dist/commands/api-versioning-audit.d.ts.map +0 -1
- package/dist/commands/api-versioning-audit.js +0 -234
- package/dist/commands/api-versioning-audit.js.map +0 -1
- package/dist/commands/approve-chain.d.ts +0 -8
- package/dist/commands/approve-chain.d.ts.map +0 -1
- package/dist/commands/approve-chain.js +0 -235
- package/dist/commands/approve-chain.js.map +0 -1
- package/dist/commands/arch-audit.d.ts +0 -9
- package/dist/commands/arch-audit.d.ts.map +0 -1
- package/dist/commands/arch-audit.js +0 -284
- package/dist/commands/arch-audit.js.map +0 -1
- package/dist/commands/assertion-density.d.ts +0 -5
- package/dist/commands/assertion-density.d.ts.map +0 -1
- package/dist/commands/assertion-density.js +0 -264
- package/dist/commands/assertion-density.js.map +0 -1
- package/dist/commands/assign-findings.d.ts +0 -37
- package/dist/commands/assign-findings.d.ts.map +0 -1
- package/dist/commands/assign-findings.js +0 -178
- package/dist/commands/assign-findings.js.map +0 -1
- package/dist/commands/async-safety.d.ts +0 -5
- package/dist/commands/async-safety.d.ts.map +0 -1
- package/dist/commands/async-safety.js +0 -267
- package/dist/commands/async-safety.js.map +0 -1
- package/dist/commands/audit-bundle.d.ts +0 -29
- package/dist/commands/audit-bundle.d.ts.map +0 -1
- package/dist/commands/audit-bundle.js +0 -235
- package/dist/commands/audit-bundle.js.map +0 -1
- package/dist/commands/audit-trail.d.ts +0 -18
- package/dist/commands/audit-trail.d.ts.map +0 -1
- package/dist/commands/audit-trail.js +0 -155
- package/dist/commands/audit-trail.js.map +0 -1
- package/dist/commands/auto-approve.d.ts +0 -5
- package/dist/commands/auto-approve.d.ts.map +0 -1
- package/dist/commands/auto-approve.js +0 -189
- package/dist/commands/auto-approve.js.map +0 -1
- package/dist/commands/auto-calibrate.d.ts +0 -15
- package/dist/commands/auto-calibrate.d.ts.map +0 -1
- package/dist/commands/auto-calibrate.js +0 -107
- package/dist/commands/auto-calibrate.js.map +0 -1
- package/dist/commands/auto-detect.d.ts.map +0 -1
- package/dist/commands/auto-detect.js.map +0 -1
- package/dist/commands/auto-fix.d.ts +0 -18
- package/dist/commands/auto-fix.d.ts.map +0 -1
- package/dist/commands/auto-fix.js +0 -241
- package/dist/commands/auto-fix.js.map +0 -1
- package/dist/commands/auto-triage.d.ts +0 -32
- package/dist/commands/auto-triage.d.ts.map +0 -1
- package/dist/commands/auto-triage.js +0 -126
- package/dist/commands/auto-triage.js.map +0 -1
- package/dist/commands/baseline.d.ts +0 -48
- package/dist/commands/baseline.d.ts.map +0 -1
- package/dist/commands/baseline.js +0 -394
- package/dist/commands/baseline.js.map +0 -1
- package/dist/commands/batch-review.d.ts +0 -5
- package/dist/commands/batch-review.d.ts.map +0 -1
- package/dist/commands/batch-review.js +0 -181
- package/dist/commands/batch-review.js.map +0 -1
- package/dist/commands/benchmark-advanced.d.ts.map +0 -1
- package/dist/commands/benchmark-advanced.js.map +0 -1
- package/dist/commands/benchmark-ai-agents.d.ts.map +0 -1
- package/dist/commands/benchmark-ai-agents.js.map +0 -1
- package/dist/commands/benchmark-ai-output.d.ts.map +0 -1
- package/dist/commands/benchmark-ai-output.js.map +0 -1
- package/dist/commands/benchmark-compliance-ethics.d.ts.map +0 -1
- package/dist/commands/benchmark-compliance-ethics.js.map +0 -1
- package/dist/commands/benchmark-expanded-2.d.ts.map +0 -1
- package/dist/commands/benchmark-expanded-2.js.map +0 -1
- package/dist/commands/benchmark-expanded.d.ts.map +0 -1
- package/dist/commands/benchmark-expanded.js.map +0 -1
- package/dist/commands/benchmark-infrastructure.d.ts.map +0 -1
- package/dist/commands/benchmark-infrastructure.js.map +0 -1
- package/dist/commands/benchmark-languages.d.ts.map +0 -1
- package/dist/commands/benchmark-languages.js.map +0 -1
- package/dist/commands/benchmark-quality-ops.d.ts.map +0 -1
- package/dist/commands/benchmark-quality-ops.js.map +0 -1
- package/dist/commands/benchmark-security-deep.d.ts.map +0 -1
- package/dist/commands/benchmark-security-deep.js.map +0 -1
- package/dist/commands/benchmark.d.ts.map +0 -1
- package/dist/commands/benchmark.js.map +0 -1
- package/dist/commands/blame-review.d.ts +0 -5
- package/dist/commands/blame-review.d.ts.map +0 -1
- package/dist/commands/blame-review.js +0 -270
- package/dist/commands/blame-review.js.map +0 -1
- package/dist/commands/boundary-enforce.d.ts +0 -6
- package/dist/commands/boundary-enforce.d.ts.map +0 -1
- package/dist/commands/boundary-enforce.js +0 -256
- package/dist/commands/boundary-enforce.js.map +0 -1
- package/dist/commands/build-optimize.d.ts +0 -7
- package/dist/commands/build-optimize.d.ts.map +0 -1
- package/dist/commands/build-optimize.js +0 -257
- package/dist/commands/build-optimize.js.map +0 -1
- package/dist/commands/burndown.d.ts +0 -27
- package/dist/commands/burndown.d.ts.map +0 -1
- package/dist/commands/burndown.js +0 -180
- package/dist/commands/burndown.js.map +0 -1
- package/dist/commands/cache-audit.d.ts +0 -5
- package/dist/commands/cache-audit.d.ts.map +0 -1
- package/dist/commands/cache-audit.js +0 -220
- package/dist/commands/cache-audit.js.map +0 -1
- package/dist/commands/calibration-dashboard.d.ts +0 -2
- package/dist/commands/calibration-dashboard.d.ts.map +0 -1
- package/dist/commands/calibration-dashboard.js +0 -295
- package/dist/commands/calibration-dashboard.js.map +0 -1
- package/dist/commands/calibration-share.d.ts +0 -31
- package/dist/commands/calibration-share.d.ts.map +0 -1
- package/dist/commands/calibration-share.js +0 -183
- package/dist/commands/calibration-share.js.map +0 -1
- package/dist/commands/chat-notify.d.ts +0 -9
- package/dist/commands/chat-notify.d.ts.map +0 -1
- package/dist/commands/chat-notify.js +0 -259
- package/dist/commands/chat-notify.js.map +0 -1
- package/dist/commands/ci-template.d.ts +0 -15
- package/dist/commands/ci-template.d.ts.map +0 -1
- package/dist/commands/ci-template.js +0 -212
- package/dist/commands/ci-template.js.map +0 -1
- package/dist/commands/ci-templates.d.ts +0 -10
- package/dist/commands/ci-templates.d.ts.map +0 -1
- package/dist/commands/ci-templates.js +0 -90
- package/dist/commands/ci-templates.js.map +0 -1
- package/dist/commands/clarity-score.d.ts +0 -9
- package/dist/commands/clarity-score.d.ts.map +0 -1
- package/dist/commands/clarity-score.js +0 -261
- package/dist/commands/clarity-score.js.map +0 -1
- package/dist/commands/clone-detect.d.ts +0 -5
- package/dist/commands/clone-detect.d.ts.map +0 -1
- package/dist/commands/clone-detect.js +0 -233
- package/dist/commands/clone-detect.js.map +0 -1
- package/dist/commands/coach-mode.d.ts +0 -8
- package/dist/commands/coach-mode.d.ts.map +0 -1
- package/dist/commands/coach-mode.js +0 -230
- package/dist/commands/coach-mode.js.map +0 -1
- package/dist/commands/code-health.d.ts +0 -5
- package/dist/commands/code-health.d.ts.map +0 -1
- package/dist/commands/code-health.js +0 -196
- package/dist/commands/code-health.js.map +0 -1
- package/dist/commands/code-owner-suggest.d.ts +0 -17
- package/dist/commands/code-owner-suggest.d.ts.map +0 -1
- package/dist/commands/code-owner-suggest.js +0 -215
- package/dist/commands/code-owner-suggest.js.map +0 -1
- package/dist/commands/code-similarity.d.ts +0 -9
- package/dist/commands/code-similarity.d.ts.map +0 -1
- package/dist/commands/code-similarity.js +0 -232
- package/dist/commands/code-similarity.js.map +0 -1
- package/dist/commands/comment-drift.d.ts +0 -5
- package/dist/commands/comment-drift.d.ts.map +0 -1
- package/dist/commands/comment-drift.js +0 -229
- package/dist/commands/comment-drift.js.map +0 -1
- package/dist/commands/commit-hygiene.d.ts +0 -6
- package/dist/commands/commit-hygiene.d.ts.map +0 -1
- package/dist/commands/commit-hygiene.js +0 -176
- package/dist/commands/commit-hygiene.js.map +0 -1
- package/dist/commands/community-patterns.d.ts +0 -2
- package/dist/commands/community-patterns.d.ts.map +0 -1
- package/dist/commands/community-patterns.js +0 -132
- package/dist/commands/community-patterns.js.map +0 -1
- package/dist/commands/compare-runs.d.ts +0 -38
- package/dist/commands/compare-runs.d.ts.map +0 -1
- package/dist/commands/compare-runs.js +0 -229
- package/dist/commands/compare-runs.js.map +0 -1
- package/dist/commands/completion-audit.d.ts +0 -5
- package/dist/commands/completion-audit.d.ts.map +0 -1
- package/dist/commands/completion-audit.js +0 -297
- package/dist/commands/completion-audit.js.map +0 -1
- package/dist/commands/completions.d.ts +0 -2
- package/dist/commands/completions.d.ts.map +0 -1
- package/dist/commands/completions.js +0 -226
- package/dist/commands/completions.js.map +0 -1
- package/dist/commands/compliance-map.d.ts +0 -9
- package/dist/commands/compliance-map.d.ts.map +0 -1
- package/dist/commands/compliance-map.js +0 -375
- package/dist/commands/compliance-map.js.map +0 -1
- package/dist/commands/compliance-report.d.ts +0 -35
- package/dist/commands/compliance-report.d.ts.map +0 -1
- package/dist/commands/compliance-report.js +0 -162
- package/dist/commands/compliance-report.js.map +0 -1
- package/dist/commands/compliance-weight.d.ts +0 -9
- package/dist/commands/compliance-weight.d.ts.map +0 -1
- package/dist/commands/compliance-weight.js +0 -273
- package/dist/commands/compliance-weight.js.map +0 -1
- package/dist/commands/config-drift.d.ts +0 -25
- package/dist/commands/config-drift.d.ts.map +0 -1
- package/dist/commands/config-drift.js +0 -214
- package/dist/commands/config-drift.js.map +0 -1
- package/dist/commands/config-lint.d.ts +0 -5
- package/dist/commands/config-lint.d.ts.map +0 -1
- package/dist/commands/config-lint.js +0 -188
- package/dist/commands/config-lint.js.map +0 -1
- package/dist/commands/config-migrate.d.ts +0 -44
- package/dist/commands/config-migrate.d.ts.map +0 -1
- package/dist/commands/config-migrate.js +0 -241
- package/dist/commands/config-migrate.js.map +0 -1
- package/dist/commands/config-share.d.ts.map +0 -1
- package/dist/commands/config-share.js.map +0 -1
- package/dist/commands/context-blind.d.ts +0 -5
- package/dist/commands/context-blind.d.ts.map +0 -1
- package/dist/commands/context-blind.js +0 -273
- package/dist/commands/context-blind.js.map +0 -1
- package/dist/commands/context-inject.d.ts +0 -9
- package/dist/commands/context-inject.d.ts.map +0 -1
- package/dist/commands/context-inject.js +0 -212
- package/dist/commands/context-inject.js.map +0 -1
- package/dist/commands/contract-verify.d.ts +0 -5
- package/dist/commands/contract-verify.d.ts.map +0 -1
- package/dist/commands/contract-verify.js +0 -317
- package/dist/commands/contract-verify.js.map +0 -1
- package/dist/commands/correlate.d.ts +0 -28
- package/dist/commands/correlate.d.ts.map +0 -1
- package/dist/commands/correlate.js +0 -242
- package/dist/commands/correlate.js.map +0 -1
- package/dist/commands/cost-forecast.d.ts +0 -19
- package/dist/commands/cost-forecast.d.ts.map +0 -1
- package/dist/commands/cost-forecast.js +0 -194
- package/dist/commands/cost-forecast.js.map +0 -1
- package/dist/commands/coverage-map.d.ts +0 -23
- package/dist/commands/coverage-map.d.ts.map +0 -1
- package/dist/commands/coverage-map.js +0 -223
- package/dist/commands/coverage-map.js.map +0 -1
- package/dist/commands/coverage.d.ts.map +0 -1
- package/dist/commands/coverage.js.map +0 -1
- package/dist/commands/cross-file-consistency.d.ts +0 -5
- package/dist/commands/cross-file-consistency.d.ts.map +0 -1
- package/dist/commands/cross-file-consistency.js +0 -255
- package/dist/commands/cross-file-consistency.js.map +0 -1
- package/dist/commands/cross-pr-regression.d.ts +0 -9
- package/dist/commands/cross-pr-regression.d.ts.map +0 -1
- package/dist/commands/cross-pr-regression.js +0 -298
- package/dist/commands/cross-pr-regression.js.map +0 -1
- package/dist/commands/custom-rule.d.ts +0 -5
- package/dist/commands/custom-rule.d.ts.map +0 -1
- package/dist/commands/custom-rule.js +0 -211
- package/dist/commands/custom-rule.js.map +0 -1
- package/dist/commands/dead-code-detect.d.ts +0 -5
- package/dist/commands/dead-code-detect.d.ts.map +0 -1
- package/dist/commands/dead-code-detect.js +0 -256
- package/dist/commands/dead-code-detect.js.map +0 -1
- package/dist/commands/dedup-report.d.ts +0 -13
- package/dist/commands/dedup-report.d.ts.map +0 -1
- package/dist/commands/dedup-report.js +0 -138
- package/dist/commands/dedup-report.js.map +0 -1
- package/dist/commands/dep-audit.d.ts +0 -53
- package/dist/commands/dep-audit.d.ts.map +0 -1
- package/dist/commands/dep-audit.js +0 -278
- package/dist/commands/dep-audit.js.map +0 -1
- package/dist/commands/dep-correlate.d.ts +0 -9
- package/dist/commands/dep-correlate.d.ts.map +0 -1
- package/dist/commands/dep-correlate.js +0 -208
- package/dist/commands/dep-correlate.js.map +0 -1
- package/dist/commands/deploy-readiness.d.ts +0 -6
- package/dist/commands/deploy-readiness.d.ts.map +0 -1
- package/dist/commands/deploy-readiness.js +0 -212
- package/dist/commands/deploy-readiness.js.map +0 -1
- package/dist/commands/deprecated.d.ts +0 -48
- package/dist/commands/deprecated.d.ts.map +0 -1
- package/dist/commands/deprecated.js +0 -202
- package/dist/commands/deprecated.js.map +0 -1
- package/dist/commands/deps.d.ts +0 -6
- package/dist/commands/deps.d.ts.map +0 -1
- package/dist/commands/deps.js +0 -123
- package/dist/commands/deps.js.map +0 -1
- package/dist/commands/design-audit.d.ts +0 -9
- package/dist/commands/design-audit.d.ts.map +0 -1
- package/dist/commands/design-audit.js +0 -302
- package/dist/commands/design-audit.js.map +0 -1
- package/dist/commands/dev-score.d.ts +0 -37
- package/dist/commands/dev-score.d.ts.map +0 -1
- package/dist/commands/dev-score.js +0 -204
- package/dist/commands/dev-score.js.map +0 -1
- package/dist/commands/diff-explain.d.ts +0 -5
- package/dist/commands/diff-explain.d.ts.map +0 -1
- package/dist/commands/diff-explain.js +0 -143
- package/dist/commands/diff-explain.js.map +0 -1
- package/dist/commands/diff-only.d.ts +0 -34
- package/dist/commands/diff-only.d.ts.map +0 -1
- package/dist/commands/diff-only.js +0 -152
- package/dist/commands/diff-only.js.map +0 -1
- package/dist/commands/diff-review.d.ts +0 -5
- package/dist/commands/diff-review.d.ts.map +0 -1
- package/dist/commands/diff-review.js +0 -191
- package/dist/commands/diff-review.js.map +0 -1
- package/dist/commands/diff.d.ts +0 -7
- package/dist/commands/diff.d.ts.map +0 -1
- package/dist/commands/diff.js +0 -486
- package/dist/commands/diff.js.map +0 -1
- package/dist/commands/digest.d.ts +0 -20
- package/dist/commands/digest.d.ts.map +0 -1
- package/dist/commands/digest.js +0 -222
- package/dist/commands/digest.js.map +0 -1
- package/dist/commands/doc-drift.d.ts +0 -9
- package/dist/commands/doc-drift.d.ts.map +0 -1
- package/dist/commands/doc-drift.js +0 -259
- package/dist/commands/doc-drift.js.map +0 -1
- package/dist/commands/doc-gen.d.ts +0 -8
- package/dist/commands/doc-gen.d.ts.map +0 -1
- package/dist/commands/doc-gen.js +0 -209
- package/dist/commands/doc-gen.js.map +0 -1
- package/dist/commands/docs.d.ts +0 -2
- package/dist/commands/docs.d.ts.map +0 -1
- package/dist/commands/docs.js +0 -157
- package/dist/commands/docs.js.map +0 -1
- package/dist/commands/doctor.d.ts.map +0 -1
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/encoding-safety.d.ts +0 -5
- package/dist/commands/encoding-safety.d.ts.map +0 -1
- package/dist/commands/encoding-safety.js +0 -276
- package/dist/commands/encoding-safety.js.map +0 -1
- package/dist/commands/error-taxonomy.d.ts +0 -6
- package/dist/commands/error-taxonomy.d.ts.map +0 -1
- package/dist/commands/error-taxonomy.js +0 -227
- package/dist/commands/error-taxonomy.js.map +0 -1
- package/dist/commands/error-ux.d.ts +0 -5
- package/dist/commands/error-ux.d.ts.map +0 -1
- package/dist/commands/error-ux.js +0 -253
- package/dist/commands/error-ux.js.map +0 -1
- package/dist/commands/event-leak.d.ts +0 -5
- package/dist/commands/event-leak.d.ts.map +0 -1
- package/dist/commands/event-leak.js +0 -263
- package/dist/commands/event-leak.js.map +0 -1
- package/dist/commands/evidence-chain.d.ts +0 -5
- package/dist/commands/evidence-chain.d.ts.map +0 -1
- package/dist/commands/evidence-chain.js +0 -310
- package/dist/commands/evidence-chain.js.map +0 -1
- package/dist/commands/example-leak.d.ts +0 -5
- package/dist/commands/example-leak.d.ts.map +0 -1
- package/dist/commands/example-leak.js +0 -233
- package/dist/commands/example-leak.js.map +0 -1
- package/dist/commands/exception-consistency.d.ts +0 -7
- package/dist/commands/exception-consistency.d.ts.map +0 -1
- package/dist/commands/exception-consistency.js +0 -193
- package/dist/commands/exception-consistency.js.map +0 -1
- package/dist/commands/exec-report.d.ts +0 -9
- package/dist/commands/exec-report.d.ts.map +0 -1
- package/dist/commands/exec-report.js +0 -272
- package/dist/commands/exec-report.js.map +0 -1
- package/dist/commands/explain-finding.d.ts +0 -8
- package/dist/commands/explain-finding.d.ts.map +0 -1
- package/dist/commands/explain-finding.js +0 -279
- package/dist/commands/explain-finding.js.map +0 -1
- package/dist/commands/false-negatives.d.ts +0 -35
- package/dist/commands/false-negatives.d.ts.map +0 -1
- package/dist/commands/false-negatives.js +0 -166
- package/dist/commands/false-negatives.js.map +0 -1
- package/dist/commands/feedback-rules.d.ts +0 -29
- package/dist/commands/feedback-rules.d.ts.map +0 -1
- package/dist/commands/feedback-rules.js +0 -174
- package/dist/commands/feedback-rules.js.map +0 -1
- package/dist/commands/feedback.d.ts.map +0 -1
- package/dist/commands/feedback.js.map +0 -1
- package/dist/commands/finding-age-analysis.d.ts +0 -5
- package/dist/commands/finding-age-analysis.d.ts.map +0 -1
- package/dist/commands/finding-age-analysis.js +0 -145
- package/dist/commands/finding-age-analysis.js.map +0 -1
- package/dist/commands/finding-age-report.d.ts +0 -5
- package/dist/commands/finding-age-report.d.ts.map +0 -1
- package/dist/commands/finding-age-report.js +0 -155
- package/dist/commands/finding-age-report.js.map +0 -1
- package/dist/commands/finding-age-tracker.d.ts +0 -8
- package/dist/commands/finding-age-tracker.d.ts.map +0 -1
- package/dist/commands/finding-age-tracker.js +0 -153
- package/dist/commands/finding-age-tracker.js.map +0 -1
- package/dist/commands/finding-age.d.ts +0 -5
- package/dist/commands/finding-age.d.ts.map +0 -1
- package/dist/commands/finding-age.js +0 -146
- package/dist/commands/finding-age.js.map +0 -1
- package/dist/commands/finding-ancestry-trace.d.ts +0 -2
- package/dist/commands/finding-ancestry-trace.d.ts.map +0 -1
- package/dist/commands/finding-ancestry-trace.js +0 -70
- package/dist/commands/finding-ancestry-trace.js.map +0 -1
- package/dist/commands/finding-annotation-export.d.ts +0 -2
- package/dist/commands/finding-annotation-export.d.ts.map +0 -1
- package/dist/commands/finding-annotation-export.js +0 -98
- package/dist/commands/finding-annotation-export.js.map +0 -1
- package/dist/commands/finding-annotation-layer.d.ts +0 -5
- package/dist/commands/finding-annotation-layer.d.ts.map +0 -1
- package/dist/commands/finding-annotation-layer.js +0 -129
- package/dist/commands/finding-annotation-layer.js.map +0 -1
- package/dist/commands/finding-auto-categorize.d.ts +0 -2
- package/dist/commands/finding-auto-categorize.d.ts.map +0 -1
- package/dist/commands/finding-auto-categorize.js +0 -110
- package/dist/commands/finding-auto-categorize.js.map +0 -1
- package/dist/commands/finding-auto-fix-suggest.d.ts +0 -2
- package/dist/commands/finding-auto-fix-suggest.d.ts.map +0 -1
- package/dist/commands/finding-auto-fix-suggest.js +0 -77
- package/dist/commands/finding-auto-fix-suggest.js.map +0 -1
- package/dist/commands/finding-auto-fix.d.ts +0 -5
- package/dist/commands/finding-auto-fix.d.ts.map +0 -1
- package/dist/commands/finding-auto-fix.js +0 -189
- package/dist/commands/finding-auto-fix.js.map +0 -1
- package/dist/commands/finding-auto-group.d.ts +0 -5
- package/dist/commands/finding-auto-group.d.ts.map +0 -1
- package/dist/commands/finding-auto-group.js +0 -109
- package/dist/commands/finding-auto-group.js.map +0 -1
- package/dist/commands/finding-auto-label.d.ts +0 -5
- package/dist/commands/finding-auto-label.d.ts.map +0 -1
- package/dist/commands/finding-auto-label.js +0 -221
- package/dist/commands/finding-auto-label.js.map +0 -1
- package/dist/commands/finding-auto-priority.d.ts +0 -2
- package/dist/commands/finding-auto-priority.d.ts.map +0 -1
- package/dist/commands/finding-auto-priority.js +0 -101
- package/dist/commands/finding-auto-priority.js.map +0 -1
- package/dist/commands/finding-auto-suppress.d.ts +0 -5
- package/dist/commands/finding-auto-suppress.d.ts.map +0 -1
- package/dist/commands/finding-auto-suppress.js +0 -127
- package/dist/commands/finding-auto-suppress.js.map +0 -1
- package/dist/commands/finding-auto-tag.d.ts +0 -5
- package/dist/commands/finding-auto-tag.d.ts.map +0 -1
- package/dist/commands/finding-auto-tag.js +0 -114
- package/dist/commands/finding-auto-tag.js.map +0 -1
- package/dist/commands/finding-auto-triage.d.ts +0 -5
- package/dist/commands/finding-auto-triage.d.ts.map +0 -1
- package/dist/commands/finding-auto-triage.js +0 -109
- package/dist/commands/finding-auto-triage.js.map +0 -1
- package/dist/commands/finding-autofix-preview.d.ts +0 -5
- package/dist/commands/finding-autofix-preview.d.ts.map +0 -1
- package/dist/commands/finding-autofix-preview.js +0 -87
- package/dist/commands/finding-autofix-preview.js.map +0 -1
- package/dist/commands/finding-batch-resolve.d.ts +0 -5
- package/dist/commands/finding-batch-resolve.d.ts.map +0 -1
- package/dist/commands/finding-batch-resolve.js +0 -166
- package/dist/commands/finding-batch-resolve.js.map +0 -1
- package/dist/commands/finding-batch-suppress.d.ts +0 -5
- package/dist/commands/finding-batch-suppress.d.ts.map +0 -1
- package/dist/commands/finding-batch-suppress.js +0 -86
- package/dist/commands/finding-batch-suppress.js.map +0 -1
- package/dist/commands/finding-batch-triage.d.ts +0 -2
- package/dist/commands/finding-batch-triage.d.ts.map +0 -1
- package/dist/commands/finding-batch-triage.js +0 -91
- package/dist/commands/finding-batch-triage.js.map +0 -1
- package/dist/commands/finding-blast-radius.d.ts +0 -5
- package/dist/commands/finding-blast-radius.d.ts.map +0 -1
- package/dist/commands/finding-blast-radius.js +0 -92
- package/dist/commands/finding-blast-radius.js.map +0 -1
- package/dist/commands/finding-budget.d.ts +0 -5
- package/dist/commands/finding-budget.d.ts.map +0 -1
- package/dist/commands/finding-budget.js +0 -233
- package/dist/commands/finding-budget.js.map +0 -1
- package/dist/commands/finding-category-map.d.ts +0 -5
- package/dist/commands/finding-category-map.d.ts.map +0 -1
- package/dist/commands/finding-category-map.js +0 -104
- package/dist/commands/finding-category-map.js.map +0 -1
- package/dist/commands/finding-category-stats.d.ts +0 -5
- package/dist/commands/finding-category-stats.d.ts.map +0 -1
- package/dist/commands/finding-category-stats.js +0 -105
- package/dist/commands/finding-category-stats.js.map +0 -1
- package/dist/commands/finding-category.d.ts +0 -5
- package/dist/commands/finding-category.d.ts.map +0 -1
- package/dist/commands/finding-category.js +0 -110
- package/dist/commands/finding-category.js.map +0 -1
- package/dist/commands/finding-change-impact.d.ts +0 -5
- package/dist/commands/finding-change-impact.d.ts.map +0 -1
- package/dist/commands/finding-change-impact.js +0 -108
- package/dist/commands/finding-change-impact.js.map +0 -1
- package/dist/commands/finding-cluster-analysis.d.ts +0 -5
- package/dist/commands/finding-cluster-analysis.d.ts.map +0 -1
- package/dist/commands/finding-cluster-analysis.js +0 -134
- package/dist/commands/finding-cluster-analysis.js.map +0 -1
- package/dist/commands/finding-cluster-group.d.ts +0 -5
- package/dist/commands/finding-cluster-group.d.ts.map +0 -1
- package/dist/commands/finding-cluster-group.js +0 -106
- package/dist/commands/finding-cluster-group.js.map +0 -1
- package/dist/commands/finding-cluster-summary.d.ts +0 -2
- package/dist/commands/finding-cluster-summary.d.ts.map +0 -1
- package/dist/commands/finding-cluster-summary.js +0 -86
- package/dist/commands/finding-cluster-summary.js.map +0 -1
- package/dist/commands/finding-cluster.d.ts +0 -5
- package/dist/commands/finding-cluster.d.ts.map +0 -1
- package/dist/commands/finding-cluster.js +0 -158
- package/dist/commands/finding-cluster.js.map +0 -1
- package/dist/commands/finding-code-context.d.ts +0 -5
- package/dist/commands/finding-code-context.d.ts.map +0 -1
- package/dist/commands/finding-code-context.js +0 -97
- package/dist/commands/finding-code-context.js.map +0 -1
- package/dist/commands/finding-code-smell.d.ts +0 -5
- package/dist/commands/finding-code-smell.d.ts.map +0 -1
- package/dist/commands/finding-code-smell.js +0 -114
- package/dist/commands/finding-code-smell.js.map +0 -1
- package/dist/commands/finding-compare-runs.d.ts +0 -5
- package/dist/commands/finding-compare-runs.d.ts.map +0 -1
- package/dist/commands/finding-compare-runs.js +0 -106
- package/dist/commands/finding-compare-runs.js.map +0 -1
- package/dist/commands/finding-compliance-tag.d.ts +0 -2
- package/dist/commands/finding-compliance-tag.d.ts.map +0 -1
- package/dist/commands/finding-compliance-tag.js +0 -107
- package/dist/commands/finding-compliance-tag.js.map +0 -1
- package/dist/commands/finding-confidence-boost.d.ts +0 -2
- package/dist/commands/finding-confidence-boost.d.ts.map +0 -1
- package/dist/commands/finding-confidence-boost.js +0 -89
- package/dist/commands/finding-confidence-boost.js.map +0 -1
- package/dist/commands/finding-confidence-calibrate.d.ts +0 -5
- package/dist/commands/finding-confidence-calibrate.d.ts.map +0 -1
- package/dist/commands/finding-confidence-calibrate.js +0 -112
- package/dist/commands/finding-confidence-calibrate.js.map +0 -1
- package/dist/commands/finding-confidence-filter.d.ts +0 -5
- package/dist/commands/finding-confidence-filter.d.ts.map +0 -1
- package/dist/commands/finding-confidence-filter.js +0 -78
- package/dist/commands/finding-confidence-filter.js.map +0 -1
- package/dist/commands/finding-contest.d.ts +0 -8
- package/dist/commands/finding-contest.d.ts.map +0 -1
- package/dist/commands/finding-contest.js +0 -193
- package/dist/commands/finding-contest.js.map +0 -1
- package/dist/commands/finding-context-enrich.d.ts +0 -5
- package/dist/commands/finding-context-enrich.d.ts.map +0 -1
- package/dist/commands/finding-context-enrich.js +0 -90
- package/dist/commands/finding-context-enrich.js.map +0 -1
- package/dist/commands/finding-context-expand.d.ts +0 -5
- package/dist/commands/finding-context-expand.d.ts.map +0 -1
- package/dist/commands/finding-context-expand.js +0 -103
- package/dist/commands/finding-context-expand.js.map +0 -1
- package/dist/commands/finding-context-link.d.ts +0 -2
- package/dist/commands/finding-context-link.d.ts.map +0 -1
- package/dist/commands/finding-context-link.js +0 -95
- package/dist/commands/finding-context-link.js.map +0 -1
- package/dist/commands/finding-context-summary.d.ts +0 -2
- package/dist/commands/finding-context-summary.d.ts.map +0 -1
- package/dist/commands/finding-context-summary.js +0 -86
- package/dist/commands/finding-context-summary.js.map +0 -1
- package/dist/commands/finding-context-window.d.ts +0 -5
- package/dist/commands/finding-context-window.d.ts.map +0 -1
- package/dist/commands/finding-context-window.js +0 -127
- package/dist/commands/finding-context-window.js.map +0 -1
- package/dist/commands/finding-context.d.ts +0 -5
- package/dist/commands/finding-context.d.ts.map +0 -1
- package/dist/commands/finding-context.js +0 -141
- package/dist/commands/finding-context.js.map +0 -1
- package/dist/commands/finding-correlate.d.ts +0 -5
- package/dist/commands/finding-correlate.d.ts.map +0 -1
- package/dist/commands/finding-correlate.js +0 -89
- package/dist/commands/finding-correlate.js.map +0 -1
- package/dist/commands/finding-correlation-map.d.ts +0 -5
- package/dist/commands/finding-correlation-map.d.ts.map +0 -1
- package/dist/commands/finding-correlation-map.js +0 -102
- package/dist/commands/finding-correlation-map.js.map +0 -1
- package/dist/commands/finding-correlation.d.ts +0 -5
- package/dist/commands/finding-correlation.d.ts.map +0 -1
- package/dist/commands/finding-correlation.js +0 -104
- package/dist/commands/finding-correlation.js.map +0 -1
- package/dist/commands/finding-cross-file-link.d.ts +0 -2
- package/dist/commands/finding-cross-file-link.d.ts.map +0 -1
- package/dist/commands/finding-cross-file-link.js +0 -102
- package/dist/commands/finding-cross-file-link.js.map +0 -1
- package/dist/commands/finding-cross-ref.d.ts +0 -5
- package/dist/commands/finding-cross-ref.d.ts.map +0 -1
- package/dist/commands/finding-cross-ref.js +0 -99
- package/dist/commands/finding-cross-ref.js.map +0 -1
- package/dist/commands/finding-cve-lookup.d.ts +0 -5
- package/dist/commands/finding-cve-lookup.d.ts.map +0 -1
- package/dist/commands/finding-cve-lookup.js +0 -98
- package/dist/commands/finding-cve-lookup.js.map +0 -1
- package/dist/commands/finding-cwe-lookup.d.ts +0 -5
- package/dist/commands/finding-cwe-lookup.d.ts.map +0 -1
- package/dist/commands/finding-cwe-lookup.js +0 -149
- package/dist/commands/finding-cwe-lookup.js.map +0 -1
- package/dist/commands/finding-cwe-map.d.ts +0 -5
- package/dist/commands/finding-cwe-map.d.ts.map +0 -1
- package/dist/commands/finding-cwe-map.js +0 -134
- package/dist/commands/finding-cwe-map.js.map +0 -1
- package/dist/commands/finding-dedup-cross-file.d.ts +0 -5
- package/dist/commands/finding-dedup-cross-file.d.ts.map +0 -1
- package/dist/commands/finding-dedup-cross-file.js +0 -96
- package/dist/commands/finding-dedup-cross-file.js.map +0 -1
- package/dist/commands/finding-dedup-cross.d.ts +0 -5
- package/dist/commands/finding-dedup-cross.d.ts.map +0 -1
- package/dist/commands/finding-dedup-cross.js +0 -91
- package/dist/commands/finding-dedup-cross.js.map +0 -1
- package/dist/commands/finding-dedup-merge.d.ts +0 -2
- package/dist/commands/finding-dedup-merge.d.ts.map +0 -1
- package/dist/commands/finding-dedup-merge.js +0 -108
- package/dist/commands/finding-dedup-merge.js.map +0 -1
- package/dist/commands/finding-dedup-report.d.ts +0 -5
- package/dist/commands/finding-dedup-report.d.ts.map +0 -1
- package/dist/commands/finding-dedup-report.js +0 -102
- package/dist/commands/finding-dedup-report.js.map +0 -1
- package/dist/commands/finding-dedup-smart.d.ts +0 -2
- package/dist/commands/finding-dedup-smart.d.ts.map +0 -1
- package/dist/commands/finding-dedup-smart.js +0 -110
- package/dist/commands/finding-dedup-smart.js.map +0 -1
- package/dist/commands/finding-deduplicate.d.ts +0 -5
- package/dist/commands/finding-deduplicate.d.ts.map +0 -1
- package/dist/commands/finding-deduplicate.js +0 -142
- package/dist/commands/finding-deduplicate.js.map +0 -1
- package/dist/commands/finding-dependency-check.d.ts +0 -5
- package/dist/commands/finding-dependency-check.d.ts.map +0 -1
- package/dist/commands/finding-dependency-check.js +0 -120
- package/dist/commands/finding-dependency-check.js.map +0 -1
- package/dist/commands/finding-dependency-impact.d.ts +0 -2
- package/dist/commands/finding-dependency-impact.d.ts.map +0 -1
- package/dist/commands/finding-dependency-impact.js +0 -98
- package/dist/commands/finding-dependency-impact.js.map +0 -1
- package/dist/commands/finding-dependency-link.d.ts +0 -5
- package/dist/commands/finding-dependency-link.d.ts.map +0 -1
- package/dist/commands/finding-dependency-link.js +0 -74
- package/dist/commands/finding-dependency-link.js.map +0 -1
- package/dist/commands/finding-dependency-risk.d.ts +0 -5
- package/dist/commands/finding-dependency-risk.d.ts.map +0 -1
- package/dist/commands/finding-dependency-risk.js +0 -118
- package/dist/commands/finding-dependency-risk.js.map +0 -1
- package/dist/commands/finding-dependency-tree.d.ts +0 -5
- package/dist/commands/finding-dependency-tree.d.ts.map +0 -1
- package/dist/commands/finding-dependency-tree.js +0 -117
- package/dist/commands/finding-dependency-tree.js.map +0 -1
- package/dist/commands/finding-diff-highlight.d.ts +0 -5
- package/dist/commands/finding-diff-highlight.d.ts.map +0 -1
- package/dist/commands/finding-diff-highlight.js +0 -108
- package/dist/commands/finding-diff-highlight.js.map +0 -1
- package/dist/commands/finding-dismiss-workflow.d.ts +0 -5
- package/dist/commands/finding-dismiss-workflow.d.ts.map +0 -1
- package/dist/commands/finding-dismiss-workflow.js +0 -120
- package/dist/commands/finding-dismiss-workflow.js.map +0 -1
- package/dist/commands/finding-duplicate-detect.d.ts +0 -5
- package/dist/commands/finding-duplicate-detect.d.ts.map +0 -1
- package/dist/commands/finding-duplicate-detect.js +0 -114
- package/dist/commands/finding-duplicate-detect.js.map +0 -1
- package/dist/commands/finding-duplicate-rule.d.ts +0 -5
- package/dist/commands/finding-duplicate-rule.d.ts.map +0 -1
- package/dist/commands/finding-duplicate-rule.js +0 -104
- package/dist/commands/finding-duplicate-rule.js.map +0 -1
- package/dist/commands/finding-effort-rank.d.ts +0 -2
- package/dist/commands/finding-effort-rank.d.ts.map +0 -1
- package/dist/commands/finding-effort-rank.js +0 -94
- package/dist/commands/finding-effort-rank.js.map +0 -1
- package/dist/commands/finding-evidence-chain.d.ts +0 -5
- package/dist/commands/finding-evidence-chain.d.ts.map +0 -1
- package/dist/commands/finding-evidence-chain.js +0 -148
- package/dist/commands/finding-evidence-chain.js.map +0 -1
- package/dist/commands/finding-evidence-collect.d.ts +0 -5
- package/dist/commands/finding-evidence-collect.d.ts.map +0 -1
- package/dist/commands/finding-evidence-collect.js +0 -115
- package/dist/commands/finding-evidence-collect.js.map +0 -1
- package/dist/commands/finding-explain.d.ts +0 -5
- package/dist/commands/finding-explain.d.ts.map +0 -1
- package/dist/commands/finding-explain.js +0 -94
- package/dist/commands/finding-explain.js.map +0 -1
- package/dist/commands/finding-export-csv.d.ts +0 -5
- package/dist/commands/finding-export-csv.d.ts.map +0 -1
- package/dist/commands/finding-export-csv.js +0 -79
- package/dist/commands/finding-export-csv.js.map +0 -1
- package/dist/commands/finding-false-neg-check.d.ts +0 -9
- package/dist/commands/finding-false-neg-check.d.ts.map +0 -1
- package/dist/commands/finding-false-neg-check.js +0 -140
- package/dist/commands/finding-false-neg-check.js.map +0 -1
- package/dist/commands/finding-false-positive-learn.d.ts +0 -5
- package/dist/commands/finding-false-positive-learn.d.ts.map +0 -1
- package/dist/commands/finding-false-positive-learn.js +0 -86
- package/dist/commands/finding-false-positive-learn.js.map +0 -1
- package/dist/commands/finding-false-positive-log.d.ts +0 -5
- package/dist/commands/finding-false-positive-log.d.ts.map +0 -1
- package/dist/commands/finding-false-positive-log.js +0 -151
- package/dist/commands/finding-false-positive-log.js.map +0 -1
- package/dist/commands/finding-false-positive.d.ts +0 -5
- package/dist/commands/finding-false-positive.d.ts.map +0 -1
- package/dist/commands/finding-false-positive.js +0 -135
- package/dist/commands/finding-false-positive.js.map +0 -1
- package/dist/commands/finding-filter-view.d.ts +0 -5
- package/dist/commands/finding-filter-view.d.ts.map +0 -1
- package/dist/commands/finding-filter-view.js +0 -108
- package/dist/commands/finding-filter-view.js.map +0 -1
- package/dist/commands/finding-fix-chain.d.ts +0 -2
- package/dist/commands/finding-fix-chain.d.ts.map +0 -1
- package/dist/commands/finding-fix-chain.js +0 -79
- package/dist/commands/finding-fix-chain.js.map +0 -1
- package/dist/commands/finding-fix-estimate.d.ts +0 -2
- package/dist/commands/finding-fix-estimate.d.ts.map +0 -1
- package/dist/commands/finding-fix-estimate.js +0 -96
- package/dist/commands/finding-fix-estimate.js.map +0 -1
- package/dist/commands/finding-fix-playbook.d.ts +0 -2
- package/dist/commands/finding-fix-playbook.d.ts.map +0 -1
- package/dist/commands/finding-fix-playbook.js +0 -111
- package/dist/commands/finding-fix-playbook.js.map +0 -1
- package/dist/commands/finding-fix-priority.d.ts +0 -5
- package/dist/commands/finding-fix-priority.d.ts.map +0 -1
- package/dist/commands/finding-fix-priority.js +0 -99
- package/dist/commands/finding-fix-priority.js.map +0 -1
- package/dist/commands/finding-fix-rate.d.ts +0 -5
- package/dist/commands/finding-fix-rate.d.ts.map +0 -1
- package/dist/commands/finding-fix-rate.js +0 -142
- package/dist/commands/finding-fix-rate.js.map +0 -1
- package/dist/commands/finding-fix-suggest.d.ts +0 -5
- package/dist/commands/finding-fix-suggest.d.ts.map +0 -1
- package/dist/commands/finding-fix-suggest.js +0 -89
- package/dist/commands/finding-fix-suggest.js.map +0 -1
- package/dist/commands/finding-fix-validation.d.ts +0 -5
- package/dist/commands/finding-fix-validation.d.ts.map +0 -1
- package/dist/commands/finding-fix-validation.js +0 -116
- package/dist/commands/finding-fix-validation.js.map +0 -1
- package/dist/commands/finding-fix-verify.d.ts +0 -5
- package/dist/commands/finding-fix-verify.d.ts.map +0 -1
- package/dist/commands/finding-fix-verify.js +0 -199
- package/dist/commands/finding-fix-verify.js.map +0 -1
- package/dist/commands/finding-group-by.d.ts +0 -5
- package/dist/commands/finding-group-by.d.ts.map +0 -1
- package/dist/commands/finding-group-by.js +0 -87
- package/dist/commands/finding-group-by.js.map +0 -1
- package/dist/commands/finding-group.d.ts +0 -16
- package/dist/commands/finding-group.d.ts.map +0 -1
- package/dist/commands/finding-group.js +0 -165
- package/dist/commands/finding-group.js.map +0 -1
- package/dist/commands/finding-groupby-file.d.ts +0 -5
- package/dist/commands/finding-groupby-file.d.ts.map +0 -1
- package/dist/commands/finding-groupby-file.js +0 -95
- package/dist/commands/finding-groupby-file.js.map +0 -1
- package/dist/commands/finding-hotfix-suggest.d.ts +0 -8
- package/dist/commands/finding-hotfix-suggest.d.ts.map +0 -1
- package/dist/commands/finding-hotfix-suggest.js +0 -171
- package/dist/commands/finding-hotfix-suggest.js.map +0 -1
- package/dist/commands/finding-hotspot-detect.d.ts +0 -2
- package/dist/commands/finding-hotspot-detect.d.ts.map +0 -1
- package/dist/commands/finding-hotspot-detect.js +0 -121
- package/dist/commands/finding-hotspot-detect.js.map +0 -1
- package/dist/commands/finding-hotspot-map.d.ts +0 -5
- package/dist/commands/finding-hotspot-map.d.ts.map +0 -1
- package/dist/commands/finding-hotspot-map.js +0 -107
- package/dist/commands/finding-hotspot-map.js.map +0 -1
- package/dist/commands/finding-hotspot.d.ts +0 -5
- package/dist/commands/finding-hotspot.d.ts.map +0 -1
- package/dist/commands/finding-hotspot.js +0 -116
- package/dist/commands/finding-hotspot.js.map +0 -1
- package/dist/commands/finding-impact-radius.d.ts +0 -2
- package/dist/commands/finding-impact-radius.d.ts.map +0 -1
- package/dist/commands/finding-impact-radius.js +0 -95
- package/dist/commands/finding-impact-radius.js.map +0 -1
- package/dist/commands/finding-impact-rank.d.ts +0 -5
- package/dist/commands/finding-impact-rank.d.ts.map +0 -1
- package/dist/commands/finding-impact-rank.js +0 -86
- package/dist/commands/finding-impact-rank.js.map +0 -1
- package/dist/commands/finding-impact-score.d.ts +0 -5
- package/dist/commands/finding-impact-score.d.ts.map +0 -1
- package/dist/commands/finding-impact-score.js +0 -124
- package/dist/commands/finding-impact-score.js.map +0 -1
- package/dist/commands/finding-impact.d.ts +0 -5
- package/dist/commands/finding-impact.d.ts.map +0 -1
- package/dist/commands/finding-impact.js +0 -136
- package/dist/commands/finding-impact.js.map +0 -1
- package/dist/commands/finding-line-blame.d.ts +0 -8
- package/dist/commands/finding-line-blame.d.ts.map +0 -1
- package/dist/commands/finding-line-blame.js +0 -133
- package/dist/commands/finding-line-blame.js.map +0 -1
- package/dist/commands/finding-link-graph.d.ts +0 -5
- package/dist/commands/finding-link-graph.d.ts.map +0 -1
- package/dist/commands/finding-link-graph.js +0 -145
- package/dist/commands/finding-link-graph.js.map +0 -1
- package/dist/commands/finding-link.d.ts +0 -5
- package/dist/commands/finding-link.d.ts.map +0 -1
- package/dist/commands/finding-link.js +0 -129
- package/dist/commands/finding-link.js.map +0 -1
- package/dist/commands/finding-merge-results.d.ts +0 -5
- package/dist/commands/finding-merge-results.d.ts.map +0 -1
- package/dist/commands/finding-merge-results.js +0 -111
- package/dist/commands/finding-merge-results.js.map +0 -1
- package/dist/commands/finding-merge-strategy.d.ts +0 -2
- package/dist/commands/finding-merge-strategy.d.ts.map +0 -1
- package/dist/commands/finding-merge-strategy.js +0 -85
- package/dist/commands/finding-merge-strategy.js.map +0 -1
- package/dist/commands/finding-metadata-enrich.d.ts +0 -5
- package/dist/commands/finding-metadata-enrich.d.ts.map +0 -1
- package/dist/commands/finding-metadata-enrich.js +0 -93
- package/dist/commands/finding-metadata-enrich.js.map +0 -1
- package/dist/commands/finding-noise-filter.d.ts +0 -8
- package/dist/commands/finding-noise-filter.d.ts.map +0 -1
- package/dist/commands/finding-noise-filter.js +0 -141
- package/dist/commands/finding-noise-filter.js.map +0 -1
- package/dist/commands/finding-noise-reduce.d.ts +0 -2
- package/dist/commands/finding-noise-reduce.d.ts.map +0 -1
- package/dist/commands/finding-noise-reduce.js +0 -82
- package/dist/commands/finding-noise-reduce.js.map +0 -1
- package/dist/commands/finding-noise-score.d.ts +0 -2
- package/dist/commands/finding-noise-score.d.ts.map +0 -1
- package/dist/commands/finding-noise-score.js +0 -94
- package/dist/commands/finding-noise-score.js.map +0 -1
- package/dist/commands/finding-owner-assign.d.ts +0 -5
- package/dist/commands/finding-owner-assign.d.ts.map +0 -1
- package/dist/commands/finding-owner-assign.js +0 -134
- package/dist/commands/finding-owner-assign.js.map +0 -1
- package/dist/commands/finding-owner-notify.d.ts +0 -2
- package/dist/commands/finding-owner-notify.d.ts.map +0 -1
- package/dist/commands/finding-owner-notify.js +0 -122
- package/dist/commands/finding-owner-notify.js.map +0 -1
- package/dist/commands/finding-ownership-assign.d.ts +0 -5
- package/dist/commands/finding-ownership-assign.d.ts.map +0 -1
- package/dist/commands/finding-ownership-assign.js +0 -102
- package/dist/commands/finding-ownership-assign.js.map +0 -1
- package/dist/commands/finding-ownership-map.d.ts +0 -5
- package/dist/commands/finding-ownership-map.d.ts.map +0 -1
- package/dist/commands/finding-ownership-map.js +0 -118
- package/dist/commands/finding-ownership-map.js.map +0 -1
- package/dist/commands/finding-patch-chain.d.ts +0 -2
- package/dist/commands/finding-patch-chain.d.ts.map +0 -1
- package/dist/commands/finding-patch-chain.js +0 -91
- package/dist/commands/finding-patch-chain.js.map +0 -1
- package/dist/commands/finding-patch-preview.d.ts +0 -5
- package/dist/commands/finding-patch-preview.d.ts.map +0 -1
- package/dist/commands/finding-patch-preview.js +0 -104
- package/dist/commands/finding-patch-preview.js.map +0 -1
- package/dist/commands/finding-pattern-detect.d.ts +0 -5
- package/dist/commands/finding-pattern-detect.d.ts.map +0 -1
- package/dist/commands/finding-pattern-detect.js +0 -128
- package/dist/commands/finding-pattern-detect.js.map +0 -1
- package/dist/commands/finding-pattern-library.d.ts +0 -5
- package/dist/commands/finding-pattern-library.d.ts.map +0 -1
- package/dist/commands/finding-pattern-library.js +0 -146
- package/dist/commands/finding-pattern-library.js.map +0 -1
- package/dist/commands/finding-pattern-match.d.ts +0 -5
- package/dist/commands/finding-pattern-match.d.ts.map +0 -1
- package/dist/commands/finding-pattern-match.js +0 -166
- package/dist/commands/finding-pattern-match.js.map +0 -1
- package/dist/commands/finding-prioritize.d.ts +0 -5
- package/dist/commands/finding-prioritize.d.ts.map +0 -1
- package/dist/commands/finding-prioritize.js +0 -120
- package/dist/commands/finding-prioritize.js.map +0 -1
- package/dist/commands/finding-priority-matrix.d.ts +0 -5
- package/dist/commands/finding-priority-matrix.d.ts.map +0 -1
- package/dist/commands/finding-priority-matrix.js +0 -103
- package/dist/commands/finding-priority-matrix.js.map +0 -1
- package/dist/commands/finding-priority-queue.d.ts +0 -5
- package/dist/commands/finding-priority-queue.d.ts.map +0 -1
- package/dist/commands/finding-priority-queue.js +0 -132
- package/dist/commands/finding-priority-queue.js.map +0 -1
- package/dist/commands/finding-priority-rank.d.ts +0 -2
- package/dist/commands/finding-priority-rank.d.ts.map +0 -1
- package/dist/commands/finding-priority-rank.js +0 -83
- package/dist/commands/finding-priority-rank.js.map +0 -1
- package/dist/commands/finding-quality-gate.d.ts +0 -5
- package/dist/commands/finding-quality-gate.d.ts.map +0 -1
- package/dist/commands/finding-quality-gate.js +0 -108
- package/dist/commands/finding-quality-gate.js.map +0 -1
- package/dist/commands/finding-rank.d.ts +0 -5
- package/dist/commands/finding-rank.d.ts.map +0 -1
- package/dist/commands/finding-rank.js +0 -139
- package/dist/commands/finding-rank.js.map +0 -1
- package/dist/commands/finding-reachability-check.d.ts +0 -5
- package/dist/commands/finding-reachability-check.d.ts.map +0 -1
- package/dist/commands/finding-reachability-check.js +0 -103
- package/dist/commands/finding-reachability-check.js.map +0 -1
- package/dist/commands/finding-reachability.d.ts +0 -5
- package/dist/commands/finding-reachability.d.ts.map +0 -1
- package/dist/commands/finding-reachability.js +0 -132
- package/dist/commands/finding-reachability.js.map +0 -1
- package/dist/commands/finding-recurrence-check.d.ts +0 -2
- package/dist/commands/finding-recurrence-check.d.ts.map +0 -1
- package/dist/commands/finding-recurrence-check.js +0 -104
- package/dist/commands/finding-recurrence-check.js.map +0 -1
- package/dist/commands/finding-recurrence-detect.d.ts +0 -5
- package/dist/commands/finding-recurrence-detect.d.ts.map +0 -1
- package/dist/commands/finding-recurrence-detect.js +0 -78
- package/dist/commands/finding-recurrence-detect.js.map +0 -1
- package/dist/commands/finding-recurrence.d.ts +0 -5
- package/dist/commands/finding-recurrence.d.ts.map +0 -1
- package/dist/commands/finding-recurrence.js +0 -136
- package/dist/commands/finding-recurrence.js.map +0 -1
- package/dist/commands/finding-regression-check.d.ts +0 -5
- package/dist/commands/finding-regression-check.d.ts.map +0 -1
- package/dist/commands/finding-regression-check.js +0 -113
- package/dist/commands/finding-regression-check.js.map +0 -1
- package/dist/commands/finding-regression-detect.d.ts +0 -2
- package/dist/commands/finding-regression-detect.d.ts.map +0 -1
- package/dist/commands/finding-regression-detect.js +0 -87
- package/dist/commands/finding-regression-detect.js.map +0 -1
- package/dist/commands/finding-related-rules.d.ts +0 -5
- package/dist/commands/finding-related-rules.d.ts.map +0 -1
- package/dist/commands/finding-related-rules.js +0 -152
- package/dist/commands/finding-related-rules.js.map +0 -1
- package/dist/commands/finding-remediation-cost.d.ts +0 -2
- package/dist/commands/finding-remediation-cost.d.ts.map +0 -1
- package/dist/commands/finding-remediation-cost.js +0 -80
- package/dist/commands/finding-remediation-cost.js.map +0 -1
- package/dist/commands/finding-remediation-plan.d.ts +0 -5
- package/dist/commands/finding-remediation-plan.d.ts.map +0 -1
- package/dist/commands/finding-remediation-plan.js +0 -108
- package/dist/commands/finding-remediation-plan.js.map +0 -1
- package/dist/commands/finding-reopen-detect.d.ts +0 -2
- package/dist/commands/finding-reopen-detect.d.ts.map +0 -1
- package/dist/commands/finding-reopen-detect.js +0 -78
- package/dist/commands/finding-reopen-detect.js.map +0 -1
- package/dist/commands/finding-repeat-detect.d.ts +0 -2
- package/dist/commands/finding-repeat-detect.d.ts.map +0 -1
- package/dist/commands/finding-repeat-detect.js +0 -93
- package/dist/commands/finding-repeat-detect.js.map +0 -1
- package/dist/commands/finding-resolution-track.d.ts +0 -5
- package/dist/commands/finding-resolution-track.d.ts.map +0 -1
- package/dist/commands/finding-resolution-track.js +0 -151
- package/dist/commands/finding-resolution-track.js.map +0 -1
- package/dist/commands/finding-resolution-tracker.d.ts +0 -5
- package/dist/commands/finding-resolution-tracker.d.ts.map +0 -1
- package/dist/commands/finding-resolution-tracker.js +0 -164
- package/dist/commands/finding-resolution-tracker.js.map +0 -1
- package/dist/commands/finding-resolution-workflow.d.ts +0 -2
- package/dist/commands/finding-resolution-workflow.d.ts.map +0 -1
- package/dist/commands/finding-resolution-workflow.js +0 -92
- package/dist/commands/finding-resolution-workflow.js.map +0 -1
- package/dist/commands/finding-resolution.d.ts +0 -5
- package/dist/commands/finding-resolution.d.ts.map +0 -1
- package/dist/commands/finding-resolution.js +0 -143
- package/dist/commands/finding-resolution.js.map +0 -1
- package/dist/commands/finding-risk-label.d.ts +0 -2
- package/dist/commands/finding-risk-label.d.ts.map +0 -1
- package/dist/commands/finding-risk-label.js +0 -73
- package/dist/commands/finding-risk-label.js.map +0 -1
- package/dist/commands/finding-risk-matrix.d.ts +0 -5
- package/dist/commands/finding-risk-matrix.d.ts.map +0 -1
- package/dist/commands/finding-risk-matrix.js +0 -127
- package/dist/commands/finding-risk-matrix.js.map +0 -1
- package/dist/commands/finding-risk-score.d.ts +0 -5
- package/dist/commands/finding-risk-score.d.ts.map +0 -1
- package/dist/commands/finding-risk-score.js +0 -96
- package/dist/commands/finding-risk-score.js.map +0 -1
- package/dist/commands/finding-root-cause.d.ts +0 -5
- package/dist/commands/finding-root-cause.d.ts.map +0 -1
- package/dist/commands/finding-root-cause.js +0 -185
- package/dist/commands/finding-root-cause.js.map +0 -1
- package/dist/commands/finding-rule-explain.d.ts +0 -5
- package/dist/commands/finding-rule-explain.d.ts.map +0 -1
- package/dist/commands/finding-rule-explain.js +0 -141
- package/dist/commands/finding-rule-explain.js.map +0 -1
- package/dist/commands/finding-scope-filter.d.ts +0 -2
- package/dist/commands/finding-scope-filter.d.ts.map +0 -1
- package/dist/commands/finding-scope-filter.js +0 -78
- package/dist/commands/finding-scope-filter.js.map +0 -1
- package/dist/commands/finding-scope-impact.d.ts +0 -2
- package/dist/commands/finding-scope-impact.d.ts.map +0 -1
- package/dist/commands/finding-scope-impact.js +0 -84
- package/dist/commands/finding-scope-impact.js.map +0 -1
- package/dist/commands/finding-search-index.d.ts +0 -5
- package/dist/commands/finding-search-index.d.ts.map +0 -1
- package/dist/commands/finding-search-index.js +0 -100
- package/dist/commands/finding-search-index.js.map +0 -1
- package/dist/commands/finding-security-hotspot.d.ts +0 -5
- package/dist/commands/finding-security-hotspot.d.ts.map +0 -1
- package/dist/commands/finding-security-hotspot.js +0 -176
- package/dist/commands/finding-security-hotspot.js.map +0 -1
- package/dist/commands/finding-severity-dist.d.ts +0 -5
- package/dist/commands/finding-severity-dist.d.ts.map +0 -1
- package/dist/commands/finding-severity-dist.js +0 -106
- package/dist/commands/finding-severity-dist.js.map +0 -1
- package/dist/commands/finding-severity-drift.d.ts +0 -5
- package/dist/commands/finding-severity-drift.d.ts.map +0 -1
- package/dist/commands/finding-severity-drift.js +0 -93
- package/dist/commands/finding-severity-drift.js.map +0 -1
- package/dist/commands/finding-severity-heatmap.d.ts +0 -5
- package/dist/commands/finding-severity-heatmap.d.ts.map +0 -1
- package/dist/commands/finding-severity-heatmap.js +0 -109
- package/dist/commands/finding-severity-heatmap.js.map +0 -1
- package/dist/commands/finding-severity-histogram.d.ts +0 -5
- package/dist/commands/finding-severity-histogram.d.ts.map +0 -1
- package/dist/commands/finding-severity-histogram.js +0 -67
- package/dist/commands/finding-severity-histogram.js.map +0 -1
- package/dist/commands/finding-severity-override.d.ts +0 -5
- package/dist/commands/finding-severity-override.d.ts.map +0 -1
- package/dist/commands/finding-severity-override.js +0 -132
- package/dist/commands/finding-severity-override.js.map +0 -1
- package/dist/commands/finding-severity-rebalance.d.ts +0 -2
- package/dist/commands/finding-severity-rebalance.d.ts.map +0 -1
- package/dist/commands/finding-severity-rebalance.js +0 -109
- package/dist/commands/finding-severity-rebalance.js.map +0 -1
- package/dist/commands/finding-severity-trend.d.ts +0 -5
- package/dist/commands/finding-severity-trend.d.ts.map +0 -1
- package/dist/commands/finding-severity-trend.js +0 -128
- package/dist/commands/finding-severity-trend.js.map +0 -1
- package/dist/commands/finding-similar-match.d.ts +0 -2
- package/dist/commands/finding-similar-match.d.ts.map +0 -1
- package/dist/commands/finding-similar-match.js +0 -113
- package/dist/commands/finding-similar-match.js.map +0 -1
- package/dist/commands/finding-snippet.d.ts +0 -5
- package/dist/commands/finding-snippet.d.ts.map +0 -1
- package/dist/commands/finding-snippet.js +0 -103
- package/dist/commands/finding-snippet.js.map +0 -1
- package/dist/commands/finding-summary-digest.d.ts +0 -8
- package/dist/commands/finding-summary-digest.d.ts.map +0 -1
- package/dist/commands/finding-summary-digest.js +0 -146
- package/dist/commands/finding-summary-digest.js.map +0 -1
- package/dist/commands/finding-suppress-pattern.d.ts +0 -5
- package/dist/commands/finding-suppress-pattern.d.ts.map +0 -1
- package/dist/commands/finding-suppress-pattern.js +0 -149
- package/dist/commands/finding-suppress-pattern.js.map +0 -1
- package/dist/commands/finding-suppress.d.ts +0 -5
- package/dist/commands/finding-suppress.d.ts.map +0 -1
- package/dist/commands/finding-suppress.js +0 -165
- package/dist/commands/finding-suppress.js.map +0 -1
- package/dist/commands/finding-suppression-audit.d.ts +0 -5
- package/dist/commands/finding-suppression-audit.d.ts.map +0 -1
- package/dist/commands/finding-suppression-audit.js +0 -138
- package/dist/commands/finding-suppression-audit.js.map +0 -1
- package/dist/commands/finding-suppression-list.d.ts +0 -5
- package/dist/commands/finding-suppression-list.d.ts.map +0 -1
- package/dist/commands/finding-suppression-list.js +0 -120
- package/dist/commands/finding-suppression-list.js.map +0 -1
- package/dist/commands/finding-suppression-log.d.ts +0 -5
- package/dist/commands/finding-suppression-log.d.ts.map +0 -1
- package/dist/commands/finding-suppression-log.js +0 -175
- package/dist/commands/finding-suppression-log.js.map +0 -1
- package/dist/commands/finding-time-to-fix.d.ts +0 -2
- package/dist/commands/finding-time-to-fix.d.ts.map +0 -1
- package/dist/commands/finding-time-to-fix.js +0 -99
- package/dist/commands/finding-time-to-fix.js.map +0 -1
- package/dist/commands/finding-timeline-view.d.ts +0 -5
- package/dist/commands/finding-timeline-view.d.ts.map +0 -1
- package/dist/commands/finding-timeline-view.js +0 -99
- package/dist/commands/finding-timeline-view.js.map +0 -1
- package/dist/commands/finding-timeline.d.ts +0 -5
- package/dist/commands/finding-timeline.d.ts.map +0 -1
- package/dist/commands/finding-timeline.js +0 -144
- package/dist/commands/finding-timeline.js.map +0 -1
- package/dist/commands/finding-top-offender.d.ts +0 -2
- package/dist/commands/finding-top-offender.d.ts.map +0 -1
- package/dist/commands/finding-top-offender.js +0 -76
- package/dist/commands/finding-top-offender.js.map +0 -1
- package/dist/commands/finding-trace.d.ts +0 -5
- package/dist/commands/finding-trace.d.ts.map +0 -1
- package/dist/commands/finding-trace.js +0 -119
- package/dist/commands/finding-trace.js.map +0 -1
- package/dist/commands/finding-trend-alert.d.ts +0 -2
- package/dist/commands/finding-trend-alert.d.ts.map +0 -1
- package/dist/commands/finding-trend-alert.js +0 -127
- package/dist/commands/finding-trend-alert.js.map +0 -1
- package/dist/commands/finding-trend-analysis.d.ts +0 -5
- package/dist/commands/finding-trend-analysis.d.ts.map +0 -1
- package/dist/commands/finding-trend-analysis.js +0 -96
- package/dist/commands/finding-trend-analysis.js.map +0 -1
- package/dist/commands/finding-trend-forecast.d.ts +0 -5
- package/dist/commands/finding-trend-forecast.d.ts.map +0 -1
- package/dist/commands/finding-trend-forecast.js +0 -107
- package/dist/commands/finding-trend-forecast.js.map +0 -1
- package/dist/commands/finding-trend-report.d.ts +0 -5
- package/dist/commands/finding-trend-report.d.ts.map +0 -1
- package/dist/commands/finding-trend-report.js +0 -108
- package/dist/commands/finding-trend-report.js.map +0 -1
- package/dist/commands/finding-trend.d.ts +0 -5
- package/dist/commands/finding-trend.d.ts.map +0 -1
- package/dist/commands/finding-trend.js +0 -119
- package/dist/commands/finding-trend.js.map +0 -1
- package/dist/commands/fix-pr.d.ts +0 -23
- package/dist/commands/fix-pr.d.ts.map +0 -1
- package/dist/commands/fix-pr.js +0 -323
- package/dist/commands/fix-pr.js.map +0 -1
- package/dist/commands/fix-suggest.d.ts +0 -5
- package/dist/commands/fix-suggest.d.ts.map +0 -1
- package/dist/commands/fix-suggest.js +0 -172
- package/dist/commands/fix-suggest.js.map +0 -1
- package/dist/commands/fix-verify.d.ts +0 -5
- package/dist/commands/fix-verify.d.ts.map +0 -1
- package/dist/commands/fix-verify.js +0 -124
- package/dist/commands/fix-verify.js.map +0 -1
- package/dist/commands/fix.d.ts.map +0 -1
- package/dist/commands/fix.js.map +0 -1
- package/dist/commands/focus-area.d.ts +0 -6
- package/dist/commands/focus-area.d.ts.map +0 -1
- package/dist/commands/focus-area.js +0 -193
- package/dist/commands/focus-area.js.map +0 -1
- package/dist/commands/generate.d.ts +0 -8
- package/dist/commands/generate.d.ts.map +0 -1
- package/dist/commands/generate.js +0 -404
- package/dist/commands/generate.js.map +0 -1
- package/dist/commands/governance.d.ts +0 -32
- package/dist/commands/governance.d.ts.map +0 -1
- package/dist/commands/governance.js +0 -203
- package/dist/commands/governance.js.map +0 -1
- package/dist/commands/group-findings.d.ts +0 -23
- package/dist/commands/group-findings.d.ts.map +0 -1
- package/dist/commands/group-findings.js +0 -155
- package/dist/commands/group-findings.js.map +0 -1
- package/dist/commands/guided-tour.d.ts +0 -9
- package/dist/commands/guided-tour.d.ts.map +0 -1
- package/dist/commands/guided-tour.js +0 -288
- package/dist/commands/guided-tour.js.map +0 -1
- package/dist/commands/habit-tracker.d.ts +0 -8
- package/dist/commands/habit-tracker.d.ts.map +0 -1
- package/dist/commands/habit-tracker.js +0 -195
- package/dist/commands/habit-tracker.js.map +0 -1
- package/dist/commands/hallucination-detect.d.ts +0 -5
- package/dist/commands/hallucination-detect.d.ts.map +0 -1
- package/dist/commands/hallucination-detect.js +0 -351
- package/dist/commands/hallucination-detect.js.map +0 -1
- package/dist/commands/hallucination-score.d.ts +0 -9
- package/dist/commands/hallucination-score.d.ts.map +0 -1
- package/dist/commands/hallucination-score.js +0 -317
- package/dist/commands/hallucination-score.js.map +0 -1
- package/dist/commands/help.d.ts +0 -8
- package/dist/commands/help.d.ts.map +0 -1
- package/dist/commands/help.js +0 -303
- package/dist/commands/help.js.map +0 -1
- package/dist/commands/hook-install.d.ts +0 -22
- package/dist/commands/hook-install.d.ts.map +0 -1
- package/dist/commands/hook-install.js +0 -143
- package/dist/commands/hook-install.js.map +0 -1
- package/dist/commands/hook.d.ts +0 -9
- package/dist/commands/hook.d.ts.map +0 -1
- package/dist/commands/hook.js +0 -146
- package/dist/commands/hook.js.map +0 -1
- package/dist/commands/iac-lint.d.ts +0 -8
- package/dist/commands/iac-lint.d.ts.map +0 -1
- package/dist/commands/iac-lint.js +0 -313
- package/dist/commands/iac-lint.js.map +0 -1
- package/dist/commands/idempotency-audit.d.ts +0 -5
- package/dist/commands/idempotency-audit.d.ts.map +0 -1
- package/dist/commands/idempotency-audit.js +0 -223
- package/dist/commands/idempotency-audit.js.map +0 -1
- package/dist/commands/ignore-list.d.ts +0 -19
- package/dist/commands/ignore-list.d.ts.map +0 -1
- package/dist/commands/ignore-list.js +0 -166
- package/dist/commands/ignore-list.js.map +0 -1
- package/dist/commands/impact-scan.d.ts +0 -9
- package/dist/commands/impact-scan.d.ts.map +0 -1
- package/dist/commands/impact-scan.js +0 -282
- package/dist/commands/impact-scan.js.map +0 -1
- package/dist/commands/incident-response.d.ts +0 -8
- package/dist/commands/incident-response.d.ts.map +0 -1
- package/dist/commands/incident-response.js +0 -255
- package/dist/commands/incident-response.js.map +0 -1
- package/dist/commands/incremental-review.d.ts +0 -5
- package/dist/commands/incremental-review.d.ts.map +0 -1
- package/dist/commands/incremental-review.js +0 -240
- package/dist/commands/incremental-review.js.map +0 -1
- package/dist/commands/init.d.ts +0 -11
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -266
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/input-guard.d.ts +0 -5
- package/dist/commands/input-guard.d.ts.map +0 -1
- package/dist/commands/input-guard.js +0 -256
- package/dist/commands/input-guard.js.map +0 -1
- package/dist/commands/interactive-fix.d.ts +0 -23
- package/dist/commands/interactive-fix.d.ts.map +0 -1
- package/dist/commands/interactive-fix.js +0 -140
- package/dist/commands/interactive-fix.js.map +0 -1
- package/dist/commands/judge-author.d.ts +0 -8
- package/dist/commands/judge-author.d.ts.map +0 -1
- package/dist/commands/judge-author.js +0 -261
- package/dist/commands/judge-author.js.map +0 -1
- package/dist/commands/judge-config.d.ts +0 -5
- package/dist/commands/judge-config.d.ts.map +0 -1
- package/dist/commands/judge-config.js +0 -152
- package/dist/commands/judge-config.js.map +0 -1
- package/dist/commands/judge-learn.d.ts +0 -9
- package/dist/commands/judge-learn.d.ts.map +0 -1
- package/dist/commands/judge-learn.js +0 -218
- package/dist/commands/judge-learn.js.map +0 -1
- package/dist/commands/judge-reputation.d.ts +0 -29
- package/dist/commands/judge-reputation.d.ts.map +0 -1
- package/dist/commands/judge-reputation.js +0 -199
- package/dist/commands/judge-reputation.js.map +0 -1
- package/dist/commands/kb.d.ts +0 -41
- package/dist/commands/kb.d.ts.map +0 -1
- package/dist/commands/kb.js +0 -231
- package/dist/commands/kb.js.map +0 -1
- package/dist/commands/language-packs.d.ts.map +0 -1
- package/dist/commands/language-packs.js.map +0 -1
- package/dist/commands/learn.d.ts +0 -27
- package/dist/commands/learn.d.ts.map +0 -1
- package/dist/commands/learn.js +0 -289
- package/dist/commands/learn.js.map +0 -1
- package/dist/commands/learning-path.d.ts +0 -9
- package/dist/commands/learning-path.d.ts.map +0 -1
- package/dist/commands/learning-path.js +0 -326
- package/dist/commands/learning-path.js.map +0 -1
- package/dist/commands/license-scan.d.ts +0 -9
- package/dist/commands/license-scan.d.ts.map +0 -1
- package/dist/commands/license-scan.js +0 -180
- package/dist/commands/license-scan.js.map +0 -1
- package/dist/commands/llm-benchmark.d.ts.map +0 -1
- package/dist/commands/llm-benchmark.js.map +0 -1
- package/dist/commands/log-quality.d.ts +0 -6
- package/dist/commands/log-quality.d.ts.map +0 -1
- package/dist/commands/log-quality.js +0 -212
- package/dist/commands/log-quality.js.map +0 -1
- package/dist/commands/logic-lint.d.ts +0 -5
- package/dist/commands/logic-lint.d.ts.map +0 -1
- package/dist/commands/logic-lint.js +0 -256
- package/dist/commands/logic-lint.js.map +0 -1
- package/dist/commands/lsp.d.ts +0 -24
- package/dist/commands/lsp.d.ts.map +0 -1
- package/dist/commands/lsp.js +0 -286
- package/dist/commands/lsp.js.map +0 -1
- package/dist/commands/merge-verdict.d.ts +0 -5
- package/dist/commands/merge-verdict.d.ts.map +0 -1
- package/dist/commands/merge-verdict.js +0 -288
- package/dist/commands/merge-verdict.js.map +0 -1
- package/dist/commands/metrics-dashboard.d.ts +0 -22
- package/dist/commands/metrics-dashboard.d.ts.map +0 -1
- package/dist/commands/metrics-dashboard.js +0 -335
- package/dist/commands/metrics-dashboard.js.map +0 -1
- package/dist/commands/metrics.d.ts +0 -58
- package/dist/commands/metrics.d.ts.map +0 -1
- package/dist/commands/metrics.js +0 -242
- package/dist/commands/metrics.js.map +0 -1
- package/dist/commands/migration-safety.d.ts +0 -6
- package/dist/commands/migration-safety.d.ts.map +0 -1
- package/dist/commands/migration-safety.js +0 -257
- package/dist/commands/migration-safety.js.map +0 -1
- package/dist/commands/model-report.d.ts +0 -9
- package/dist/commands/model-report.d.ts.map +0 -1
- package/dist/commands/model-report.js +0 -195
- package/dist/commands/model-report.js.map +0 -1
- package/dist/commands/model-risk.d.ts +0 -28
- package/dist/commands/model-risk.d.ts.map +0 -1
- package/dist/commands/model-risk.js +0 -221
- package/dist/commands/model-risk.js.map +0 -1
- package/dist/commands/monorepo.d.ts +0 -38
- package/dist/commands/monorepo.d.ts.map +0 -1
- package/dist/commands/monorepo.js +0 -233
- package/dist/commands/monorepo.js.map +0 -1
- package/dist/commands/multi-lang-review.d.ts +0 -5
- package/dist/commands/multi-lang-review.d.ts.map +0 -1
- package/dist/commands/multi-lang-review.js +0 -231
- package/dist/commands/multi-lang-review.js.map +0 -1
- package/dist/commands/noise-advisor.d.ts +0 -30
- package/dist/commands/noise-advisor.d.ts.map +0 -1
- package/dist/commands/noise-advisor.js +0 -171
- package/dist/commands/noise-advisor.js.map +0 -1
- package/dist/commands/notify.d.ts +0 -79
- package/dist/commands/notify.d.ts.map +0 -1
- package/dist/commands/notify.js +0 -325
- package/dist/commands/notify.js.map +0 -1
- package/dist/commands/null-safety-audit.d.ts +0 -6
- package/dist/commands/null-safety-audit.d.ts.map +0 -1
- package/dist/commands/null-safety-audit.js +0 -222
- package/dist/commands/null-safety-audit.js.map +0 -1
- package/dist/commands/observability-gap.d.ts +0 -6
- package/dist/commands/observability-gap.d.ts.map +0 -1
- package/dist/commands/observability-gap.js +0 -212
- package/dist/commands/observability-gap.js.map +0 -1
- package/dist/commands/onboard.d.ts +0 -13
- package/dist/commands/onboard.d.ts.map +0 -1
- package/dist/commands/onboard.js +0 -179
- package/dist/commands/onboard.js.map +0 -1
- package/dist/commands/org-metrics.d.ts +0 -24
- package/dist/commands/org-metrics.d.ts.map +0 -1
- package/dist/commands/org-metrics.js +0 -238
- package/dist/commands/org-metrics.js.map +0 -1
- package/dist/commands/org-policy.d.ts +0 -8
- package/dist/commands/org-policy.d.ts.map +0 -1
- package/dist/commands/org-policy.js +0 -208
- package/dist/commands/org-policy.js.map +0 -1
- package/dist/commands/over-abstraction.d.ts +0 -5
- package/dist/commands/over-abstraction.d.ts.map +0 -1
- package/dist/commands/over-abstraction.js +0 -308
- package/dist/commands/over-abstraction.js.map +0 -1
- package/dist/commands/override.d.ts +0 -62
- package/dist/commands/override.d.ts.map +0 -1
- package/dist/commands/override.js +0 -264
- package/dist/commands/override.js.map +0 -1
- package/dist/commands/ownership-map.d.ts +0 -6
- package/dist/commands/ownership-map.d.ts.map +0 -1
- package/dist/commands/ownership-map.js +0 -229
- package/dist/commands/ownership-map.js.map +0 -1
- package/dist/commands/parity.d.ts +0 -31
- package/dist/commands/parity.d.ts.map +0 -1
- package/dist/commands/parity.js +0 -213
- package/dist/commands/parity.js.map +0 -1
- package/dist/commands/pattern-registry.d.ts +0 -23
- package/dist/commands/pattern-registry.d.ts.map +0 -1
- package/dist/commands/pattern-registry.js +0 -227
- package/dist/commands/pattern-registry.js.map +0 -1
- package/dist/commands/perf-compare.d.ts +0 -9
- package/dist/commands/perf-compare.d.ts.map +0 -1
- package/dist/commands/perf-compare.js +0 -246
- package/dist/commands/perf-compare.js.map +0 -1
- package/dist/commands/perf-hotspot.d.ts +0 -8
- package/dist/commands/perf-hotspot.d.ts.map +0 -1
- package/dist/commands/perf-hotspot.js +0 -274
- package/dist/commands/perf-hotspot.js.map +0 -1
- package/dist/commands/phantom-import.d.ts +0 -5
- package/dist/commands/phantom-import.d.ts.map +0 -1
- package/dist/commands/phantom-import.js +0 -261
- package/dist/commands/phantom-import.js.map +0 -1
- package/dist/commands/pii-scan.d.ts +0 -8
- package/dist/commands/pii-scan.d.ts.map +0 -1
- package/dist/commands/pii-scan.js +0 -300
- package/dist/commands/pii-scan.js.map +0 -1
- package/dist/commands/plugin-search.d.ts +0 -40
- package/dist/commands/plugin-search.d.ts.map +0 -1
- package/dist/commands/plugin-search.js +0 -328
- package/dist/commands/plugin-search.js.map +0 -1
- package/dist/commands/plugins.d.ts +0 -13
- package/dist/commands/plugins.d.ts.map +0 -1
- package/dist/commands/plugins.js +0 -105
- package/dist/commands/plugins.js.map +0 -1
- package/dist/commands/policy-audit.d.ts +0 -53
- package/dist/commands/policy-audit.d.ts.map +0 -1
- package/dist/commands/policy-audit.js +0 -161
- package/dist/commands/policy-audit.js.map +0 -1
- package/dist/commands/pr-quality-gate.d.ts +0 -29
- package/dist/commands/pr-quality-gate.d.ts.map +0 -1
- package/dist/commands/pr-quality-gate.js +0 -208
- package/dist/commands/pr-quality-gate.js.map +0 -1
- package/dist/commands/pr-summary.d.ts +0 -26
- package/dist/commands/pr-summary.d.ts.map +0 -1
- package/dist/commands/pr-summary.js +0 -188
- package/dist/commands/pr-summary.js.map +0 -1
- package/dist/commands/predict.d.ts +0 -8
- package/dist/commands/predict.d.ts.map +0 -1
- package/dist/commands/predict.js +0 -219
- package/dist/commands/predict.js.map +0 -1
- package/dist/commands/privilege-path.d.ts +0 -5
- package/dist/commands/privilege-path.d.ts.map +0 -1
- package/dist/commands/privilege-path.js +0 -234
- package/dist/commands/privilege-path.js.map +0 -1
- package/dist/commands/profile.d.ts +0 -38
- package/dist/commands/profile.d.ts.map +0 -1
- package/dist/commands/profile.js +0 -102
- package/dist/commands/profile.js.map +0 -1
- package/dist/commands/prompt-replay.d.ts +0 -8
- package/dist/commands/prompt-replay.d.ts.map +0 -1
- package/dist/commands/prompt-replay.js +0 -177
- package/dist/commands/prompt-replay.js.map +0 -1
- package/dist/commands/quality-gate.d.ts +0 -70
- package/dist/commands/quality-gate.d.ts.map +0 -1
- package/dist/commands/quality-gate.js +0 -264
- package/dist/commands/quality-gate.js.map +0 -1
- package/dist/commands/query.d.ts +0 -20
- package/dist/commands/query.d.ts.map +0 -1
- package/dist/commands/query.js +0 -230
- package/dist/commands/query.js.map +0 -1
- package/dist/commands/quick-check.d.ts +0 -5
- package/dist/commands/quick-check.d.ts.map +0 -1
- package/dist/commands/quick-check.js +0 -174
- package/dist/commands/quick-check.js.map +0 -1
- package/dist/commands/recommend.d.ts +0 -21
- package/dist/commands/recommend.d.ts.map +0 -1
- package/dist/commands/recommend.js +0 -283
- package/dist/commands/recommend.js.map +0 -1
- package/dist/commands/refactor-safety.d.ts +0 -9
- package/dist/commands/refactor-safety.d.ts.map +0 -1
- package/dist/commands/refactor-safety.js +0 -274
- package/dist/commands/refactor-safety.js.map +0 -1
- package/dist/commands/reg-watch.d.ts +0 -21
- package/dist/commands/reg-watch.d.ts.map +0 -1
- package/dist/commands/reg-watch.js +0 -220
- package/dist/commands/reg-watch.js.map +0 -1
- package/dist/commands/regression-alert.d.ts +0 -32
- package/dist/commands/regression-alert.d.ts.map +0 -1
- package/dist/commands/regression-alert.js +0 -216
- package/dist/commands/regression-alert.js.map +0 -1
- package/dist/commands/remediation-lib.d.ts +0 -9
- package/dist/commands/remediation-lib.d.ts.map +0 -1
- package/dist/commands/remediation-lib.js +0 -266
- package/dist/commands/remediation-lib.js.map +0 -1
- package/dist/commands/remediation.d.ts +0 -21
- package/dist/commands/remediation.d.ts.map +0 -1
- package/dist/commands/remediation.js +0 -257
- package/dist/commands/remediation.js.map +0 -1
- package/dist/commands/report-template.d.ts +0 -17
- package/dist/commands/report-template.d.ts.map +0 -1
- package/dist/commands/report-template.js +0 -291
- package/dist/commands/report-template.js.map +0 -1
- package/dist/commands/report.d.ts +0 -13
- package/dist/commands/report.d.ts.map +0 -1
- package/dist/commands/report.js +0 -140
- package/dist/commands/report.js.map +0 -1
- package/dist/commands/resource-cleanup.d.ts +0 -7
- package/dist/commands/resource-cleanup.d.ts.map +0 -1
- package/dist/commands/resource-cleanup.js +0 -236
- package/dist/commands/resource-cleanup.js.map +0 -1
- package/dist/commands/retro.d.ts +0 -23
- package/dist/commands/retro.d.ts.map +0 -1
- package/dist/commands/retro.js +0 -217
- package/dist/commands/retro.js.map +0 -1
- package/dist/commands/retry-pattern-audit.d.ts +0 -6
- package/dist/commands/retry-pattern-audit.d.ts.map +0 -1
- package/dist/commands/retry-pattern-audit.js +0 -216
- package/dist/commands/retry-pattern-audit.js.map +0 -1
- package/dist/commands/review-ab-test.d.ts +0 -5
- package/dist/commands/review-ab-test.d.ts.map +0 -1
- package/dist/commands/review-ab-test.js +0 -225
- package/dist/commands/review-ab-test.js.map +0 -1
- package/dist/commands/review-access-log.d.ts +0 -5
- package/dist/commands/review-access-log.d.ts.map +0 -1
- package/dist/commands/review-access-log.js +0 -66
- package/dist/commands/review-access-log.js.map +0 -1
- package/dist/commands/review-action-item-gen.d.ts +0 -2
- package/dist/commands/review-action-item-gen.d.ts.map +0 -1
- package/dist/commands/review-action-item-gen.js +0 -73
- package/dist/commands/review-action-item-gen.js.map +0 -1
- package/dist/commands/review-adoption-metrics.d.ts +0 -5
- package/dist/commands/review-adoption-metrics.d.ts.map +0 -1
- package/dist/commands/review-adoption-metrics.js +0 -96
- package/dist/commands/review-adoption-metrics.js.map +0 -1
- package/dist/commands/review-adoption-score.d.ts +0 -2
- package/dist/commands/review-adoption-score.d.ts.map +0 -1
- package/dist/commands/review-adoption-score.js +0 -182
- package/dist/commands/review-adoption-score.js.map +0 -1
- package/dist/commands/review-ai-feedback-loop.d.ts +0 -2
- package/dist/commands/review-ai-feedback-loop.d.ts.map +0 -1
- package/dist/commands/review-ai-feedback-loop.js +0 -117
- package/dist/commands/review-ai-feedback-loop.js.map +0 -1
- package/dist/commands/review-annotate.d.ts +0 -5
- package/dist/commands/review-annotate.d.ts.map +0 -1
- package/dist/commands/review-annotate.js +0 -123
- package/dist/commands/review-annotate.js.map +0 -1
- package/dist/commands/review-annotation-export.d.ts +0 -5
- package/dist/commands/review-annotation-export.d.ts.map +0 -1
- package/dist/commands/review-annotation-export.js +0 -106
- package/dist/commands/review-annotation-export.js.map +0 -1
- package/dist/commands/review-annotation.d.ts +0 -5
- package/dist/commands/review-annotation.d.ts.map +0 -1
- package/dist/commands/review-annotation.js +0 -134
- package/dist/commands/review-annotation.js.map +0 -1
- package/dist/commands/review-api-export.d.ts +0 -5
- package/dist/commands/review-api-export.d.ts.map +0 -1
- package/dist/commands/review-api-export.js +0 -99
- package/dist/commands/review-api-export.js.map +0 -1
- package/dist/commands/review-approval-criteria.d.ts +0 -2
- package/dist/commands/review-approval-criteria.d.ts.map +0 -1
- package/dist/commands/review-approval-criteria.js +0 -100
- package/dist/commands/review-approval-criteria.js.map +0 -1
- package/dist/commands/review-approval-gate.d.ts +0 -8
- package/dist/commands/review-approval-gate.d.ts.map +0 -1
- package/dist/commands/review-approval-gate.js +0 -191
- package/dist/commands/review-approval-gate.js.map +0 -1
- package/dist/commands/review-approval.d.ts +0 -5
- package/dist/commands/review-approval.d.ts.map +0 -1
- package/dist/commands/review-approval.js +0 -134
- package/dist/commands/review-approval.js.map +0 -1
- package/dist/commands/review-archive-search.d.ts +0 -5
- package/dist/commands/review-archive-search.d.ts.map +0 -1
- package/dist/commands/review-archive-search.js +0 -71
- package/dist/commands/review-archive-search.js.map +0 -1
- package/dist/commands/review-archive.d.ts +0 -5
- package/dist/commands/review-archive.d.ts.map +0 -1
- package/dist/commands/review-archive.js +0 -136
- package/dist/commands/review-archive.js.map +0 -1
- package/dist/commands/review-audit-export.d.ts +0 -5
- package/dist/commands/review-audit-export.d.ts.map +0 -1
- package/dist/commands/review-audit-export.js +0 -94
- package/dist/commands/review-audit-export.js.map +0 -1
- package/dist/commands/review-audit-log.d.ts +0 -5
- package/dist/commands/review-audit-log.d.ts.map +0 -1
- package/dist/commands/review-audit-log.js +0 -140
- package/dist/commands/review-audit-log.js.map +0 -1
- package/dist/commands/review-audit-trail.d.ts +0 -5
- package/dist/commands/review-audit-trail.d.ts.map +0 -1
- package/dist/commands/review-audit-trail.js +0 -97
- package/dist/commands/review-audit-trail.js.map +0 -1
- package/dist/commands/review-auto-merge.d.ts +0 -5
- package/dist/commands/review-auto-merge.d.ts.map +0 -1
- package/dist/commands/review-auto-merge.js +0 -176
- package/dist/commands/review-auto-merge.js.map +0 -1
- package/dist/commands/review-badge.d.ts +0 -5
- package/dist/commands/review-badge.d.ts.map +0 -1
- package/dist/commands/review-badge.js +0 -153
- package/dist/commands/review-badge.js.map +0 -1
- package/dist/commands/review-batch-files.d.ts +0 -5
- package/dist/commands/review-batch-files.d.ts.map +0 -1
- package/dist/commands/review-batch-files.js +0 -83
- package/dist/commands/review-batch-files.js.map +0 -1
- package/dist/commands/review-batch-mode.d.ts +0 -5
- package/dist/commands/review-batch-mode.d.ts.map +0 -1
- package/dist/commands/review-batch-mode.js +0 -98
- package/dist/commands/review-batch-mode.js.map +0 -1
- package/dist/commands/review-batch-run.d.ts +0 -5
- package/dist/commands/review-batch-run.d.ts.map +0 -1
- package/dist/commands/review-batch-run.js +0 -150
- package/dist/commands/review-batch-run.js.map +0 -1
- package/dist/commands/review-benchmark-self.d.ts +0 -5
- package/dist/commands/review-benchmark-self.d.ts.map +0 -1
- package/dist/commands/review-benchmark-self.js +0 -141
- package/dist/commands/review-benchmark-self.js.map +0 -1
- package/dist/commands/review-blame-map.d.ts +0 -5
- package/dist/commands/review-blame-map.d.ts.map +0 -1
- package/dist/commands/review-blame-map.js +0 -101
- package/dist/commands/review-blame-map.js.map +0 -1
- package/dist/commands/review-branch-compare.d.ts +0 -5
- package/dist/commands/review-branch-compare.d.ts.map +0 -1
- package/dist/commands/review-branch-compare.js +0 -114
- package/dist/commands/review-branch-compare.js.map +0 -1
- package/dist/commands/review-branch-policy.d.ts +0 -5
- package/dist/commands/review-branch-policy.d.ts.map +0 -1
- package/dist/commands/review-branch-policy.js +0 -103
- package/dist/commands/review-branch-policy.js.map +0 -1
- package/dist/commands/review-bulk-action.d.ts +0 -5
- package/dist/commands/review-bulk-action.d.ts.map +0 -1
- package/dist/commands/review-bulk-action.js +0 -110
- package/dist/commands/review-bulk-action.js.map +0 -1
- package/dist/commands/review-bulk-apply.d.ts +0 -5
- package/dist/commands/review-bulk-apply.d.ts.map +0 -1
- package/dist/commands/review-bulk-apply.js +0 -103
- package/dist/commands/review-bulk-apply.js.map +0 -1
- package/dist/commands/review-cache-clear.d.ts +0 -5
- package/dist/commands/review-cache-clear.d.ts.map +0 -1
- package/dist/commands/review-cache-clear.js +0 -161
- package/dist/commands/review-cache-clear.js.map +0 -1
- package/dist/commands/review-cache-warm.d.ts +0 -5
- package/dist/commands/review-cache-warm.d.ts.map +0 -1
- package/dist/commands/review-cache-warm.js +0 -71
- package/dist/commands/review-cache-warm.js.map +0 -1
- package/dist/commands/review-cache.d.ts +0 -23
- package/dist/commands/review-cache.d.ts.map +0 -1
- package/dist/commands/review-cache.js +0 -135
- package/dist/commands/review-cache.js.map +0 -1
- package/dist/commands/review-changelog-entry.d.ts +0 -8
- package/dist/commands/review-changelog-entry.d.ts.map +0 -1
- package/dist/commands/review-changelog-entry.js +0 -110
- package/dist/commands/review-changelog-entry.js.map +0 -1
- package/dist/commands/review-changelog-gen.d.ts +0 -5
- package/dist/commands/review-changelog-gen.d.ts.map +0 -1
- package/dist/commands/review-changelog-gen.js +0 -118
- package/dist/commands/review-changelog-gen.js.map +0 -1
- package/dist/commands/review-changelog-impact.d.ts +0 -2
- package/dist/commands/review-changelog-impact.d.ts.map +0 -1
- package/dist/commands/review-changelog-impact.js +0 -90
- package/dist/commands/review-changelog-impact.js.map +0 -1
- package/dist/commands/review-checklist.d.ts +0 -5
- package/dist/commands/review-checklist.d.ts.map +0 -1
- package/dist/commands/review-checklist.js +0 -145
- package/dist/commands/review-checklist.js.map +0 -1
- package/dist/commands/review-checkpoint.d.ts +0 -5
- package/dist/commands/review-checkpoint.d.ts.map +0 -1
- package/dist/commands/review-checkpoint.js +0 -164
- package/dist/commands/review-checkpoint.js.map +0 -1
- package/dist/commands/review-ci-gate.d.ts +0 -5
- package/dist/commands/review-ci-gate.d.ts.map +0 -1
- package/dist/commands/review-ci-gate.js +0 -115
- package/dist/commands/review-ci-gate.js.map +0 -1
- package/dist/commands/review-ci-insight.d.ts +0 -2
- package/dist/commands/review-ci-insight.d.ts.map +0 -1
- package/dist/commands/review-ci-insight.js +0 -101
- package/dist/commands/review-ci-insight.js.map +0 -1
- package/dist/commands/review-ci-integration.d.ts +0 -5
- package/dist/commands/review-ci-integration.d.ts.map +0 -1
- package/dist/commands/review-ci-integration.js +0 -126
- package/dist/commands/review-ci-integration.js.map +0 -1
- package/dist/commands/review-ci-status.d.ts +0 -5
- package/dist/commands/review-ci-status.d.ts.map +0 -1
- package/dist/commands/review-ci-status.js +0 -201
- package/dist/commands/review-ci-status.js.map +0 -1
- package/dist/commands/review-cicd-integrate.d.ts +0 -5
- package/dist/commands/review-cicd-integrate.d.ts.map +0 -1
- package/dist/commands/review-cicd-integrate.js +0 -123
- package/dist/commands/review-cicd-integrate.js.map +0 -1
- package/dist/commands/review-code-health-score.d.ts +0 -2
- package/dist/commands/review-code-health-score.d.ts.map +0 -1
- package/dist/commands/review-code-health-score.js +0 -101
- package/dist/commands/review-code-health-score.js.map +0 -1
- package/dist/commands/review-code-owner.d.ts +0 -8
- package/dist/commands/review-code-owner.d.ts.map +0 -1
- package/dist/commands/review-code-owner.js +0 -165
- package/dist/commands/review-code-owner.js.map +0 -1
- package/dist/commands/review-code-ownership.d.ts +0 -2
- package/dist/commands/review-code-ownership.d.ts.map +0 -1
- package/dist/commands/review-code-ownership.js +0 -89
- package/dist/commands/review-code-ownership.js.map +0 -1
- package/dist/commands/review-comment.d.ts +0 -5
- package/dist/commands/review-comment.d.ts.map +0 -1
- package/dist/commands/review-comment.js +0 -166
- package/dist/commands/review-comment.js.map +0 -1
- package/dist/commands/review-commit-hook.d.ts +0 -8
- package/dist/commands/review-commit-hook.d.ts.map +0 -1
- package/dist/commands/review-commit-hook.js +0 -135
- package/dist/commands/review-commit-hook.js.map +0 -1
- package/dist/commands/review-commit-quality.d.ts +0 -2
- package/dist/commands/review-commit-quality.d.ts.map +0 -1
- package/dist/commands/review-commit-quality.js +0 -95
- package/dist/commands/review-commit-quality.js.map +0 -1
- package/dist/commands/review-comparative.d.ts +0 -5
- package/dist/commands/review-comparative.d.ts.map +0 -1
- package/dist/commands/review-comparative.js +0 -150
- package/dist/commands/review-comparative.js.map +0 -1
- package/dist/commands/review-compare-version.d.ts +0 -5
- package/dist/commands/review-compare-version.d.ts.map +0 -1
- package/dist/commands/review-compare-version.js +0 -109
- package/dist/commands/review-compare-version.js.map +0 -1
- package/dist/commands/review-compare.d.ts +0 -5
- package/dist/commands/review-compare.d.ts.map +0 -1
- package/dist/commands/review-compare.js +0 -201
- package/dist/commands/review-compare.js.map +0 -1
- package/dist/commands/review-compliance-check.d.ts +0 -5
- package/dist/commands/review-compliance-check.d.ts.map +0 -1
- package/dist/commands/review-compliance-check.js +0 -203
- package/dist/commands/review-compliance-check.js.map +0 -1
- package/dist/commands/review-compliance-gate.d.ts +0 -5
- package/dist/commands/review-compliance-gate.d.ts.map +0 -1
- package/dist/commands/review-compliance-gate.js +0 -152
- package/dist/commands/review-compliance-gate.js.map +0 -1
- package/dist/commands/review-compliance-map.d.ts +0 -5
- package/dist/commands/review-compliance-map.d.ts.map +0 -1
- package/dist/commands/review-compliance-map.js +0 -111
- package/dist/commands/review-compliance-map.js.map +0 -1
- package/dist/commands/review-compliance-report.d.ts +0 -5
- package/dist/commands/review-compliance-report.d.ts.map +0 -1
- package/dist/commands/review-compliance-report.js +0 -128
- package/dist/commands/review-compliance-report.js.map +0 -1
- package/dist/commands/review-confidence-explain.d.ts +0 -2
- package/dist/commands/review-confidence-explain.d.ts.map +0 -1
- package/dist/commands/review-confidence-explain.js +0 -100
- package/dist/commands/review-confidence-explain.js.map +0 -1
- package/dist/commands/review-config-diff.d.ts +0 -5
- package/dist/commands/review-config-diff.d.ts.map +0 -1
- package/dist/commands/review-config-diff.js +0 -109
- package/dist/commands/review-config-diff.js.map +0 -1
- package/dist/commands/review-config-export.d.ts +0 -5
- package/dist/commands/review-config-export.d.ts.map +0 -1
- package/dist/commands/review-config-export.js +0 -125
- package/dist/commands/review-config-export.js.map +0 -1
- package/dist/commands/review-config-health.d.ts +0 -2
- package/dist/commands/review-config-health.d.ts.map +0 -1
- package/dist/commands/review-config-health.js +0 -173
- package/dist/commands/review-config-health.js.map +0 -1
- package/dist/commands/review-config-migrate.d.ts +0 -5
- package/dist/commands/review-config-migrate.d.ts.map +0 -1
- package/dist/commands/review-config-migrate.js +0 -124
- package/dist/commands/review-config-migrate.js.map +0 -1
- package/dist/commands/review-config-template.d.ts +0 -5
- package/dist/commands/review-config-template.d.ts.map +0 -1
- package/dist/commands/review-config-template.js +0 -113
- package/dist/commands/review-config-template.js.map +0 -1
- package/dist/commands/review-config-validate.d.ts +0 -5
- package/dist/commands/review-config-validate.d.ts.map +0 -1
- package/dist/commands/review-config-validate.js +0 -111
- package/dist/commands/review-config-validate.js.map +0 -1
- package/dist/commands/review-contract.d.ts +0 -5
- package/dist/commands/review-contract.d.ts.map +0 -1
- package/dist/commands/review-contract.js +0 -200
- package/dist/commands/review-contract.js.map +0 -1
- package/dist/commands/review-coverage-gap.d.ts +0 -5
- package/dist/commands/review-coverage-gap.d.ts.map +0 -1
- package/dist/commands/review-coverage-gap.js +0 -121
- package/dist/commands/review-coverage-gap.js.map +0 -1
- package/dist/commands/review-coverage-map.d.ts +0 -5
- package/dist/commands/review-coverage-map.d.ts.map +0 -1
- package/dist/commands/review-coverage-map.js +0 -195
- package/dist/commands/review-coverage-map.js.map +0 -1
- package/dist/commands/review-custom-judge-config.d.ts +0 -5
- package/dist/commands/review-custom-judge-config.d.ts.map +0 -1
- package/dist/commands/review-custom-judge-config.js +0 -104
- package/dist/commands/review-custom-judge-config.js.map +0 -1
- package/dist/commands/review-custom-judge.d.ts +0 -5
- package/dist/commands/review-custom-judge.d.ts.map +0 -1
- package/dist/commands/review-custom-judge.js +0 -183
- package/dist/commands/review-custom-judge.js.map +0 -1
- package/dist/commands/review-custom-prompt.d.ts +0 -5
- package/dist/commands/review-custom-prompt.d.ts.map +0 -1
- package/dist/commands/review-custom-prompt.js +0 -171
- package/dist/commands/review-custom-prompt.js.map +0 -1
- package/dist/commands/review-custom-rule.d.ts +0 -5
- package/dist/commands/review-custom-rule.d.ts.map +0 -1
- package/dist/commands/review-custom-rule.js +0 -170
- package/dist/commands/review-custom-rule.js.map +0 -1
- package/dist/commands/review-dashboard-data.d.ts +0 -5
- package/dist/commands/review-dashboard-data.d.ts.map +0 -1
- package/dist/commands/review-dashboard-data.js +0 -143
- package/dist/commands/review-dashboard-data.js.map +0 -1
- package/dist/commands/review-dashboard.d.ts +0 -5
- package/dist/commands/review-dashboard.d.ts.map +0 -1
- package/dist/commands/review-dashboard.js +0 -141
- package/dist/commands/review-dashboard.js.map +0 -1
- package/dist/commands/review-data-retention.d.ts +0 -5
- package/dist/commands/review-data-retention.d.ts.map +0 -1
- package/dist/commands/review-data-retention.js +0 -120
- package/dist/commands/review-data-retention.js.map +0 -1
- package/dist/commands/review-dependency-graph.d.ts +0 -5
- package/dist/commands/review-dependency-graph.d.ts.map +0 -1
- package/dist/commands/review-dependency-graph.js +0 -95
- package/dist/commands/review-dependency-graph.js.map +0 -1
- package/dist/commands/review-dependency-review.d.ts +0 -2
- package/dist/commands/review-dependency-review.d.ts.map +0 -1
- package/dist/commands/review-dependency-review.js +0 -105
- package/dist/commands/review-dependency-review.js.map +0 -1
- package/dist/commands/review-deployment-gate.d.ts +0 -5
- package/dist/commands/review-deployment-gate.d.ts.map +0 -1
- package/dist/commands/review-deployment-gate.js +0 -95
- package/dist/commands/review-deployment-gate.js.map +0 -1
- package/dist/commands/review-depth.d.ts +0 -5
- package/dist/commands/review-depth.d.ts.map +0 -1
- package/dist/commands/review-depth.js +0 -143
- package/dist/commands/review-depth.js.map +0 -1
- package/dist/commands/review-diff-annotate.d.ts +0 -5
- package/dist/commands/review-diff-annotate.d.ts.map +0 -1
- package/dist/commands/review-diff-annotate.js +0 -105
- package/dist/commands/review-diff-annotate.js.map +0 -1
- package/dist/commands/review-diff-context.d.ts +0 -5
- package/dist/commands/review-diff-context.d.ts.map +0 -1
- package/dist/commands/review-diff-context.js +0 -159
- package/dist/commands/review-diff-context.js.map +0 -1
- package/dist/commands/review-diff-highlight.d.ts +0 -5
- package/dist/commands/review-diff-highlight.d.ts.map +0 -1
- package/dist/commands/review-diff-highlight.js +0 -180
- package/dist/commands/review-diff-highlight.js.map +0 -1
- package/dist/commands/review-diff-stats.d.ts +0 -5
- package/dist/commands/review-diff-stats.d.ts.map +0 -1
- package/dist/commands/review-diff-stats.js +0 -91
- package/dist/commands/review-diff-stats.js.map +0 -1
- package/dist/commands/review-diff-summary.d.ts +0 -5
- package/dist/commands/review-diff-summary.d.ts.map +0 -1
- package/dist/commands/review-diff-summary.js +0 -155
- package/dist/commands/review-diff-summary.js.map +0 -1
- package/dist/commands/review-digest-gen.d.ts +0 -2
- package/dist/commands/review-digest-gen.d.ts.map +0 -1
- package/dist/commands/review-digest-gen.js +0 -101
- package/dist/commands/review-digest-gen.js.map +0 -1
- package/dist/commands/review-digest.d.ts +0 -5
- package/dist/commands/review-digest.d.ts.map +0 -1
- package/dist/commands/review-digest.js +0 -266
- package/dist/commands/review-digest.js.map +0 -1
- package/dist/commands/review-dry-run.d.ts +0 -5
- package/dist/commands/review-dry-run.d.ts.map +0 -1
- package/dist/commands/review-dry-run.js +0 -121
- package/dist/commands/review-dry-run.js.map +0 -1
- package/dist/commands/review-engagement-score.d.ts +0 -2
- package/dist/commands/review-engagement-score.d.ts.map +0 -1
- package/dist/commands/review-engagement-score.js +0 -112
- package/dist/commands/review-engagement-score.js.map +0 -1
- package/dist/commands/review-env-check.d.ts +0 -5
- package/dist/commands/review-env-check.d.ts.map +0 -1
- package/dist/commands/review-env-check.js +0 -116
- package/dist/commands/review-env-check.js.map +0 -1
- package/dist/commands/review-environment-config.d.ts +0 -5
- package/dist/commands/review-environment-config.d.ts.map +0 -1
- package/dist/commands/review-environment-config.js +0 -103
- package/dist/commands/review-environment-config.js.map +0 -1
- package/dist/commands/review-escalation-path.d.ts +0 -2
- package/dist/commands/review-escalation-path.d.ts.map +0 -1
- package/dist/commands/review-escalation-path.js +0 -87
- package/dist/commands/review-escalation-path.js.map +0 -1
- package/dist/commands/review-exclude-vendor.d.ts +0 -5
- package/dist/commands/review-exclude-vendor.d.ts.map +0 -1
- package/dist/commands/review-exclude-vendor.js +0 -159
- package/dist/commands/review-exclude-vendor.js.map +0 -1
- package/dist/commands/review-explain.d.ts +0 -6
- package/dist/commands/review-explain.d.ts.map +0 -1
- package/dist/commands/review-explain.js +0 -195
- package/dist/commands/review-explain.js.map +0 -1
- package/dist/commands/review-export-pdf.d.ts +0 -8
- package/dist/commands/review-export-pdf.d.ts.map +0 -1
- package/dist/commands/review-export-pdf.js +0 -132
- package/dist/commands/review-export-pdf.js.map +0 -1
- package/dist/commands/review-export.d.ts +0 -5
- package/dist/commands/review-export.d.ts.map +0 -1
- package/dist/commands/review-export.js +0 -180
- package/dist/commands/review-export.js.map +0 -1
- package/dist/commands/review-feedback-loop.d.ts +0 -5
- package/dist/commands/review-feedback-loop.d.ts.map +0 -1
- package/dist/commands/review-feedback-loop.js +0 -114
- package/dist/commands/review-feedback-loop.js.map +0 -1
- package/dist/commands/review-feedback-summary.d.ts +0 -2
- package/dist/commands/review-feedback-summary.d.ts.map +0 -1
- package/dist/commands/review-feedback-summary.js +0 -131
- package/dist/commands/review-feedback-summary.js.map +0 -1
- package/dist/commands/review-feedback.d.ts +0 -5
- package/dist/commands/review-feedback.d.ts.map +0 -1
- package/dist/commands/review-feedback.js +0 -146
- package/dist/commands/review-feedback.js.map +0 -1
- package/dist/commands/review-file-complexity.d.ts +0 -5
- package/dist/commands/review-file-complexity.d.ts.map +0 -1
- package/dist/commands/review-file-complexity.js +0 -138
- package/dist/commands/review-file-complexity.js.map +0 -1
- package/dist/commands/review-file-filter.d.ts +0 -5
- package/dist/commands/review-file-filter.d.ts.map +0 -1
- package/dist/commands/review-file-filter.js +0 -122
- package/dist/commands/review-file-filter.js.map +0 -1
- package/dist/commands/review-file-stats.d.ts +0 -5
- package/dist/commands/review-file-stats.d.ts.map +0 -1
- package/dist/commands/review-file-stats.js +0 -131
- package/dist/commands/review-file-stats.js.map +0 -1
- package/dist/commands/review-filter.d.ts +0 -5
- package/dist/commands/review-filter.d.ts.map +0 -1
- package/dist/commands/review-filter.js +0 -166
- package/dist/commands/review-filter.js.map +0 -1
- package/dist/commands/review-finding-link.d.ts +0 -8
- package/dist/commands/review-finding-link.d.ts.map +0 -1
- package/dist/commands/review-finding-link.js +0 -116
- package/dist/commands/review-finding-link.js.map +0 -1
- package/dist/commands/review-focus-area.d.ts +0 -2
- package/dist/commands/review-focus-area.d.ts.map +0 -1
- package/dist/commands/review-focus-area.js +0 -97
- package/dist/commands/review-focus-area.js.map +0 -1
- package/dist/commands/review-focus.d.ts +0 -5
- package/dist/commands/review-focus.d.ts.map +0 -1
- package/dist/commands/review-focus.js +0 -197
- package/dist/commands/review-focus.js.map +0 -1
- package/dist/commands/review-gate-config.d.ts +0 -5
- package/dist/commands/review-gate-config.d.ts.map +0 -1
- package/dist/commands/review-gate-config.js +0 -154
- package/dist/commands/review-gate-config.js.map +0 -1
- package/dist/commands/review-gate.d.ts +0 -5
- package/dist/commands/review-gate.d.ts.map +0 -1
- package/dist/commands/review-gate.js +0 -213
- package/dist/commands/review-gate.js.map +0 -1
- package/dist/commands/review-goal-track.d.ts +0 -2
- package/dist/commands/review-goal-track.d.ts.map +0 -1
- package/dist/commands/review-goal-track.js +0 -124
- package/dist/commands/review-goal-track.js.map +0 -1
- package/dist/commands/review-guardrail.d.ts +0 -5
- package/dist/commands/review-guardrail.d.ts.map +0 -1
- package/dist/commands/review-guardrail.js +0 -156
- package/dist/commands/review-guardrail.js.map +0 -1
- package/dist/commands/review-handoff.d.ts +0 -5
- package/dist/commands/review-handoff.d.ts.map +0 -1
- package/dist/commands/review-handoff.js +0 -209
- package/dist/commands/review-handoff.js.map +0 -1
- package/dist/commands/review-health-check.d.ts +0 -5
- package/dist/commands/review-health-check.d.ts.map +0 -1
- package/dist/commands/review-health-check.js +0 -149
- package/dist/commands/review-health-check.js.map +0 -1
- package/dist/commands/review-health-trend.d.ts +0 -2
- package/dist/commands/review-health-trend.d.ts.map +0 -1
- package/dist/commands/review-health-trend.js +0 -108
- package/dist/commands/review-health-trend.js.map +0 -1
- package/dist/commands/review-history-compare.d.ts +0 -5
- package/dist/commands/review-history-compare.d.ts.map +0 -1
- package/dist/commands/review-history-compare.js +0 -94
- package/dist/commands/review-history-compare.js.map +0 -1
- package/dist/commands/review-history-search.d.ts +0 -5
- package/dist/commands/review-history-search.d.ts.map +0 -1
- package/dist/commands/review-history-search.js +0 -215
- package/dist/commands/review-history-search.js.map +0 -1
- package/dist/commands/review-ide-sync.d.ts +0 -5
- package/dist/commands/review-ide-sync.d.ts.map +0 -1
- package/dist/commands/review-ide-sync.js +0 -92
- package/dist/commands/review-ide-sync.js.map +0 -1
- package/dist/commands/review-ignore-path.d.ts +0 -5
- package/dist/commands/review-ignore-path.d.ts.map +0 -1
- package/dist/commands/review-ignore-path.js +0 -148
- package/dist/commands/review-ignore-path.js.map +0 -1
- package/dist/commands/review-ignore-pattern.d.ts +0 -6
- package/dist/commands/review-ignore-pattern.d.ts.map +0 -1
- package/dist/commands/review-ignore-pattern.js +0 -140
- package/dist/commands/review-ignore-pattern.js.map +0 -1
- package/dist/commands/review-incident-link.d.ts +0 -5
- package/dist/commands/review-incident-link.d.ts.map +0 -1
- package/dist/commands/review-incident-link.js +0 -94
- package/dist/commands/review-incident-link.js.map +0 -1
- package/dist/commands/review-incremental.d.ts +0 -5
- package/dist/commands/review-incremental.d.ts.map +0 -1
- package/dist/commands/review-incremental.js +0 -129
- package/dist/commands/review-incremental.js.map +0 -1
- package/dist/commands/review-integration-health.d.ts +0 -5
- package/dist/commands/review-integration-health.d.ts.map +0 -1
- package/dist/commands/review-integration-health.js +0 -85
- package/dist/commands/review-integration-health.js.map +0 -1
- package/dist/commands/review-integration-test.d.ts +0 -5
- package/dist/commands/review-integration-test.d.ts.map +0 -1
- package/dist/commands/review-integration-test.js +0 -146
- package/dist/commands/review-integration-test.js.map +0 -1
- package/dist/commands/review-integration.d.ts +0 -5
- package/dist/commands/review-integration.d.ts.map +0 -1
- package/dist/commands/review-integration.js +0 -237
- package/dist/commands/review-integration.js.map +0 -1
- package/dist/commands/review-interactive.d.ts +0 -5
- package/dist/commands/review-interactive.d.ts.map +0 -1
- package/dist/commands/review-interactive.js +0 -86
- package/dist/commands/review-interactive.js.map +0 -1
- package/dist/commands/review-knowledge-capture.d.ts +0 -2
- package/dist/commands/review-knowledge-capture.d.ts.map +0 -1
- package/dist/commands/review-knowledge-capture.js +0 -95
- package/dist/commands/review-knowledge-capture.js.map +0 -1
- package/dist/commands/review-language-profile.d.ts +0 -5
- package/dist/commands/review-language-profile.d.ts.map +0 -1
- package/dist/commands/review-language-profile.js +0 -73
- package/dist/commands/review-language-profile.js.map +0 -1
- package/dist/commands/review-language-stats.d.ts +0 -5
- package/dist/commands/review-language-stats.d.ts.map +0 -1
- package/dist/commands/review-language-stats.js +0 -153
- package/dist/commands/review-language-stats.js.map +0 -1
- package/dist/commands/review-lock-file.d.ts +0 -5
- package/dist/commands/review-lock-file.d.ts.map +0 -1
- package/dist/commands/review-lock-file.js +0 -154
- package/dist/commands/review-lock-file.js.map +0 -1
- package/dist/commands/review-lock.d.ts +0 -5
- package/dist/commands/review-lock.d.ts.map +0 -1
- package/dist/commands/review-lock.js +0 -108
- package/dist/commands/review-lock.js.map +0 -1
- package/dist/commands/review-log.d.ts +0 -23
- package/dist/commands/review-log.d.ts.map +0 -1
- package/dist/commands/review-log.js +0 -165
- package/dist/commands/review-log.js.map +0 -1
- package/dist/commands/review-mentor-suggest.d.ts +0 -2
- package/dist/commands/review-mentor-suggest.d.ts.map +0 -1
- package/dist/commands/review-mentor-suggest.js +0 -113
- package/dist/commands/review-mentor-suggest.js.map +0 -1
- package/dist/commands/review-merge-check.d.ts +0 -5
- package/dist/commands/review-merge-check.d.ts.map +0 -1
- package/dist/commands/review-merge-check.js +0 -102
- package/dist/commands/review-merge-check.js.map +0 -1
- package/dist/commands/review-merge-config.d.ts +0 -5
- package/dist/commands/review-merge-config.d.ts.map +0 -1
- package/dist/commands/review-merge-config.js +0 -120
- package/dist/commands/review-merge-config.js.map +0 -1
- package/dist/commands/review-merge-readiness.d.ts +0 -2
- package/dist/commands/review-merge-readiness.d.ts.map +0 -1
- package/dist/commands/review-merge-readiness.js +0 -91
- package/dist/commands/review-merge-readiness.js.map +0 -1
- package/dist/commands/review-merge-request.d.ts +0 -5
- package/dist/commands/review-merge-request.d.ts.map +0 -1
- package/dist/commands/review-merge-request.js +0 -96
- package/dist/commands/review-merge-request.js.map +0 -1
- package/dist/commands/review-merge.d.ts +0 -5
- package/dist/commands/review-merge.d.ts.map +0 -1
- package/dist/commands/review-merge.js +0 -146
- package/dist/commands/review-merge.js.map +0 -1
- package/dist/commands/review-metric-export.d.ts +0 -5
- package/dist/commands/review-metric-export.d.ts.map +0 -1
- package/dist/commands/review-metric-export.js +0 -63
- package/dist/commands/review-metric-export.js.map +0 -1
- package/dist/commands/review-milestone.d.ts +0 -5
- package/dist/commands/review-milestone.d.ts.map +0 -1
- package/dist/commands/review-milestone.js +0 -137
- package/dist/commands/review-milestone.js.map +0 -1
- package/dist/commands/review-multi-repo-sync.d.ts +0 -5
- package/dist/commands/review-multi-repo-sync.d.ts.map +0 -1
- package/dist/commands/review-multi-repo-sync.js +0 -116
- package/dist/commands/review-multi-repo-sync.js.map +0 -1
- package/dist/commands/review-multi-repo.d.ts +0 -5
- package/dist/commands/review-multi-repo.d.ts.map +0 -1
- package/dist/commands/review-multi-repo.js +0 -146
- package/dist/commands/review-multi-repo.js.map +0 -1
- package/dist/commands/review-note.d.ts +0 -5
- package/dist/commands/review-note.d.ts.map +0 -1
- package/dist/commands/review-note.js +0 -105
- package/dist/commands/review-note.js.map +0 -1
- package/dist/commands/review-notification-config.d.ts +0 -5
- package/dist/commands/review-notification-config.d.ts.map +0 -1
- package/dist/commands/review-notification-config.js +0 -123
- package/dist/commands/review-notification-config.js.map +0 -1
- package/dist/commands/review-notification-digest.d.ts +0 -5
- package/dist/commands/review-notification-digest.d.ts.map +0 -1
- package/dist/commands/review-notification-digest.js +0 -65
- package/dist/commands/review-notification-digest.js.map +0 -1
- package/dist/commands/review-notification.d.ts +0 -5
- package/dist/commands/review-notification.d.ts.map +0 -1
- package/dist/commands/review-notification.js +0 -127
- package/dist/commands/review-notification.js.map +0 -1
- package/dist/commands/review-notify.d.ts +0 -5
- package/dist/commands/review-notify.d.ts.map +0 -1
- package/dist/commands/review-notify.js +0 -144
- package/dist/commands/review-notify.js.map +0 -1
- package/dist/commands/review-offline.d.ts +0 -5
- package/dist/commands/review-offline.d.ts.map +0 -1
- package/dist/commands/review-offline.js +0 -126
- package/dist/commands/review-offline.js.map +0 -1
- package/dist/commands/review-onboard-checklist.d.ts +0 -5
- package/dist/commands/review-onboard-checklist.d.ts.map +0 -1
- package/dist/commands/review-onboard-checklist.js +0 -120
- package/dist/commands/review-onboard-checklist.js.map +0 -1
- package/dist/commands/review-onboard-wizard.d.ts +0 -5
- package/dist/commands/review-onboard-wizard.d.ts.map +0 -1
- package/dist/commands/review-onboard-wizard.js +0 -93
- package/dist/commands/review-onboard-wizard.js.map +0 -1
- package/dist/commands/review-onboard.d.ts +0 -5
- package/dist/commands/review-onboard.d.ts.map +0 -1
- package/dist/commands/review-onboard.js +0 -155
- package/dist/commands/review-onboard.js.map +0 -1
- package/dist/commands/review-onboarding-check.d.ts +0 -2
- package/dist/commands/review-onboarding-check.d.ts.map +0 -1
- package/dist/commands/review-onboarding-check.js +0 -94
- package/dist/commands/review-onboarding-check.js.map +0 -1
- package/dist/commands/review-org-dashboard.d.ts +0 -5
- package/dist/commands/review-org-dashboard.d.ts.map +0 -1
- package/dist/commands/review-org-dashboard.js +0 -69
- package/dist/commands/review-org-dashboard.js.map +0 -1
- package/dist/commands/review-output-filter.d.ts +0 -5
- package/dist/commands/review-output-filter.d.ts.map +0 -1
- package/dist/commands/review-output-filter.js +0 -113
- package/dist/commands/review-output-filter.js.map +0 -1
- package/dist/commands/review-output-format.d.ts +0 -5
- package/dist/commands/review-output-format.d.ts.map +0 -1
- package/dist/commands/review-output-format.js +0 -145
- package/dist/commands/review-output-format.js.map +0 -1
- package/dist/commands/review-output-transform.d.ts +0 -5
- package/dist/commands/review-output-transform.d.ts.map +0 -1
- package/dist/commands/review-output-transform.js +0 -120
- package/dist/commands/review-output-transform.js.map +0 -1
- package/dist/commands/review-owner.d.ts +0 -5
- package/dist/commands/review-owner.d.ts.map +0 -1
- package/dist/commands/review-owner.js +0 -130
- package/dist/commands/review-owner.js.map +0 -1
- package/dist/commands/review-parallel-diff.d.ts +0 -5
- package/dist/commands/review-parallel-diff.d.ts.map +0 -1
- package/dist/commands/review-parallel-diff.js +0 -147
- package/dist/commands/review-parallel-diff.js.map +0 -1
- package/dist/commands/review-parallel-files.d.ts +0 -8
- package/dist/commands/review-parallel-files.d.ts.map +0 -1
- package/dist/commands/review-parallel-files.js +0 -135
- package/dist/commands/review-parallel-files.js.map +0 -1
- package/dist/commands/review-parallel-run.d.ts +0 -5
- package/dist/commands/review-parallel-run.d.ts.map +0 -1
- package/dist/commands/review-parallel-run.js +0 -117
- package/dist/commands/review-parallel-run.js.map +0 -1
- package/dist/commands/review-parallel.d.ts +0 -5
- package/dist/commands/review-parallel.d.ts.map +0 -1
- package/dist/commands/review-parallel.js +0 -183
- package/dist/commands/review-parallel.js.map +0 -1
- package/dist/commands/review-perf-profile.d.ts +0 -5
- package/dist/commands/review-perf-profile.d.ts.map +0 -1
- package/dist/commands/review-perf-profile.js +0 -99
- package/dist/commands/review-perf-profile.js.map +0 -1
- package/dist/commands/review-permission-model.d.ts +0 -5
- package/dist/commands/review-permission-model.d.ts.map +0 -1
- package/dist/commands/review-permission-model.js +0 -150
- package/dist/commands/review-permission-model.js.map +0 -1
- package/dist/commands/review-pipeline-status.d.ts +0 -5
- package/dist/commands/review-pipeline-status.d.ts.map +0 -1
- package/dist/commands/review-pipeline-status.js +0 -55
- package/dist/commands/review-pipeline-status.js.map +0 -1
- package/dist/commands/review-plugin-config.d.ts +0 -5
- package/dist/commands/review-plugin-config.d.ts.map +0 -1
- package/dist/commands/review-plugin-config.js +0 -168
- package/dist/commands/review-plugin-config.js.map +0 -1
- package/dist/commands/review-plugin-list.d.ts +0 -5
- package/dist/commands/review-plugin-list.d.ts.map +0 -1
- package/dist/commands/review-plugin-list.js +0 -100
- package/dist/commands/review-plugin-list.js.map +0 -1
- package/dist/commands/review-plugin-manage.d.ts +0 -5
- package/dist/commands/review-plugin-manage.d.ts.map +0 -1
- package/dist/commands/review-plugin-manage.js +0 -138
- package/dist/commands/review-plugin-manage.js.map +0 -1
- package/dist/commands/review-plugin-status.d.ts +0 -5
- package/dist/commands/review-plugin-status.d.ts.map +0 -1
- package/dist/commands/review-plugin-status.js +0 -54
- package/dist/commands/review-plugin-status.js.map +0 -1
- package/dist/commands/review-policy-enforce.d.ts +0 -2
- package/dist/commands/review-policy-enforce.d.ts.map +0 -1
- package/dist/commands/review-policy-enforce.js +0 -93
- package/dist/commands/review-policy-enforce.js.map +0 -1
- package/dist/commands/review-policy-engine.d.ts +0 -5
- package/dist/commands/review-policy-engine.d.ts.map +0 -1
- package/dist/commands/review-policy-engine.js +0 -136
- package/dist/commands/review-policy-engine.js.map +0 -1
- package/dist/commands/review-pr-comment-gen.d.ts +0 -5
- package/dist/commands/review-pr-comment-gen.d.ts.map +0 -1
- package/dist/commands/review-pr-comment-gen.js +0 -63
- package/dist/commands/review-pr-comment-gen.js.map +0 -1
- package/dist/commands/review-pr-comment.d.ts +0 -5
- package/dist/commands/review-pr-comment.d.ts.map +0 -1
- package/dist/commands/review-pr-comment.js +0 -107
- package/dist/commands/review-pr-comment.js.map +0 -1
- package/dist/commands/review-pr-label-suggest.d.ts +0 -2
- package/dist/commands/review-pr-label-suggest.d.ts.map +0 -1
- package/dist/commands/review-pr-label-suggest.js +0 -78
- package/dist/commands/review-pr-label-suggest.js.map +0 -1
- package/dist/commands/review-pr-size-check.d.ts +0 -2
- package/dist/commands/review-pr-size-check.d.ts.map +0 -1
- package/dist/commands/review-pr-size-check.js +0 -99
- package/dist/commands/review-pr-size-check.js.map +0 -1
- package/dist/commands/review-pr-template.d.ts +0 -5
- package/dist/commands/review-pr-template.d.ts.map +0 -1
- package/dist/commands/review-pr-template.js +0 -105
- package/dist/commands/review-pr-template.js.map +0 -1
- package/dist/commands/review-preset-save.d.ts +0 -5
- package/dist/commands/review-preset-save.d.ts.map +0 -1
- package/dist/commands/review-preset-save.js +0 -160
- package/dist/commands/review-preset-save.js.map +0 -1
- package/dist/commands/review-priority.d.ts +0 -5
- package/dist/commands/review-priority.d.ts.map +0 -1
- package/dist/commands/review-priority.js +0 -158
- package/dist/commands/review-priority.js.map +0 -1
- package/dist/commands/review-profile.d.ts +0 -5
- package/dist/commands/review-profile.d.ts.map +0 -1
- package/dist/commands/review-profile.js +0 -169
- package/dist/commands/review-profile.js.map +0 -1
- package/dist/commands/review-progress-bar.d.ts +0 -5
- package/dist/commands/review-progress-bar.d.ts.map +0 -1
- package/dist/commands/review-progress-bar.js +0 -158
- package/dist/commands/review-progress-bar.js.map +0 -1
- package/dist/commands/review-progress-report.d.ts +0 -2
- package/dist/commands/review-progress-report.d.ts.map +0 -1
- package/dist/commands/review-progress-report.js +0 -96
- package/dist/commands/review-progress-report.js.map +0 -1
- package/dist/commands/review-progress-track.d.ts +0 -5
- package/dist/commands/review-progress-track.d.ts.map +0 -1
- package/dist/commands/review-progress-track.js +0 -95
- package/dist/commands/review-progress-track.js.map +0 -1
- package/dist/commands/review-quality-baseline.d.ts +0 -2
- package/dist/commands/review-quality-baseline.d.ts.map +0 -1
- package/dist/commands/review-quality-baseline.js +0 -135
- package/dist/commands/review-quality-baseline.js.map +0 -1
- package/dist/commands/review-quality-gate.d.ts +0 -2
- package/dist/commands/review-quality-gate.d.ts.map +0 -1
- package/dist/commands/review-quality-gate.js +0 -87
- package/dist/commands/review-quality-gate.js.map +0 -1
- package/dist/commands/review-quality-score.d.ts +0 -5
- package/dist/commands/review-quality-score.d.ts.map +0 -1
- package/dist/commands/review-quality-score.js +0 -128
- package/dist/commands/review-quality-score.js.map +0 -1
- package/dist/commands/review-quality-trend.d.ts +0 -5
- package/dist/commands/review-quality-trend.d.ts.map +0 -1
- package/dist/commands/review-quality-trend.js +0 -58
- package/dist/commands/review-quality-trend.js.map +0 -1
- package/dist/commands/review-queue.d.ts +0 -34
- package/dist/commands/review-queue.d.ts.map +0 -1
- package/dist/commands/review-queue.js +0 -226
- package/dist/commands/review-queue.js.map +0 -1
- package/dist/commands/review-quickstart.d.ts +0 -5
- package/dist/commands/review-quickstart.d.ts.map +0 -1
- package/dist/commands/review-quickstart.js +0 -108
- package/dist/commands/review-quickstart.js.map +0 -1
- package/dist/commands/review-quota-check.d.ts +0 -5
- package/dist/commands/review-quota-check.d.ts.map +0 -1
- package/dist/commands/review-quota-check.js +0 -98
- package/dist/commands/review-quota-check.js.map +0 -1
- package/dist/commands/review-quota.d.ts +0 -5
- package/dist/commands/review-quota.d.ts.map +0 -1
- package/dist/commands/review-quota.js +0 -127
- package/dist/commands/review-quota.js.map +0 -1
- package/dist/commands/review-rate-limit.d.ts +0 -5
- package/dist/commands/review-rate-limit.d.ts.map +0 -1
- package/dist/commands/review-rate-limit.js +0 -131
- package/dist/commands/review-rate-limit.js.map +0 -1
- package/dist/commands/review-readiness-check.d.ts +0 -2
- package/dist/commands/review-readiness-check.d.ts.map +0 -1
- package/dist/commands/review-readiness-check.js +0 -99
- package/dist/commands/review-readiness-check.js.map +0 -1
- package/dist/commands/review-receipt.d.ts +0 -5
- package/dist/commands/review-receipt.d.ts.map +0 -1
- package/dist/commands/review-receipt.js +0 -221
- package/dist/commands/review-receipt.js.map +0 -1
- package/dist/commands/review-release-gate.d.ts +0 -2
- package/dist/commands/review-release-gate.d.ts.map +0 -1
- package/dist/commands/review-release-gate.js +0 -82
- package/dist/commands/review-release-gate.js.map +0 -1
- package/dist/commands/review-replay.d.ts +0 -9
- package/dist/commands/review-replay.d.ts.map +0 -1
- package/dist/commands/review-replay.js +0 -265
- package/dist/commands/review-replay.js.map +0 -1
- package/dist/commands/review-repo-onboard.d.ts +0 -5
- package/dist/commands/review-repo-onboard.d.ts.map +0 -1
- package/dist/commands/review-repo-onboard.js +0 -115
- package/dist/commands/review-repo-onboard.js.map +0 -1
- package/dist/commands/review-report-archive.d.ts +0 -5
- package/dist/commands/review-report-archive.d.ts.map +0 -1
- package/dist/commands/review-report-archive.js +0 -101
- package/dist/commands/review-report-archive.js.map +0 -1
- package/dist/commands/review-report-merge.d.ts +0 -5
- package/dist/commands/review-report-merge.d.ts.map +0 -1
- package/dist/commands/review-report-merge.js +0 -91
- package/dist/commands/review-report-merge.js.map +0 -1
- package/dist/commands/review-report-pdf.d.ts +0 -5
- package/dist/commands/review-report-pdf.d.ts.map +0 -1
- package/dist/commands/review-report-pdf.js +0 -164
- package/dist/commands/review-report-pdf.js.map +0 -1
- package/dist/commands/review-report-schedule.d.ts +0 -5
- package/dist/commands/review-report-schedule.d.ts.map +0 -1
- package/dist/commands/review-report-schedule.js +0 -97
- package/dist/commands/review-report-schedule.js.map +0 -1
- package/dist/commands/review-retrospective.d.ts +0 -2
- package/dist/commands/review-retrospective.d.ts.map +0 -1
- package/dist/commands/review-retrospective.js +0 -119
- package/dist/commands/review-retrospective.js.map +0 -1
- package/dist/commands/review-retry.d.ts +0 -5
- package/dist/commands/review-retry.d.ts.map +0 -1
- package/dist/commands/review-retry.js +0 -92
- package/dist/commands/review-retry.js.map +0 -1
- package/dist/commands/review-review-cadence.d.ts +0 -2
- package/dist/commands/review-review-cadence.d.ts.map +0 -1
- package/dist/commands/review-review-cadence.js +0 -86
- package/dist/commands/review-review-cadence.js.map +0 -1
- package/dist/commands/review-review-comments.d.ts +0 -5
- package/dist/commands/review-review-comments.d.ts.map +0 -1
- package/dist/commands/review-review-comments.js +0 -85
- package/dist/commands/review-review-comments.js.map +0 -1
- package/dist/commands/review-reviewer-match.d.ts +0 -2
- package/dist/commands/review-reviewer-match.d.ts.map +0 -1
- package/dist/commands/review-reviewer-match.js +0 -109
- package/dist/commands/review-reviewer-match.js.map +0 -1
- package/dist/commands/review-risk-matrix.d.ts +0 -2
- package/dist/commands/review-risk-matrix.d.ts.map +0 -1
- package/dist/commands/review-risk-matrix.js +0 -97
- package/dist/commands/review-risk-matrix.js.map +0 -1
- package/dist/commands/review-risk-score.d.ts +0 -5
- package/dist/commands/review-risk-score.d.ts.map +0 -1
- package/dist/commands/review-risk-score.js +0 -157
- package/dist/commands/review-risk-score.js.map +0 -1
- package/dist/commands/review-role-assignment.d.ts +0 -5
- package/dist/commands/review-role-assignment.d.ts.map +0 -1
- package/dist/commands/review-role-assignment.js +0 -99
- package/dist/commands/review-role-assignment.js.map +0 -1
- package/dist/commands/review-rollback.d.ts +0 -5
- package/dist/commands/review-rollback.d.ts.map +0 -1
- package/dist/commands/review-rollback.js +0 -172
- package/dist/commands/review-rollback.js.map +0 -1
- package/dist/commands/review-rollout-plan.d.ts +0 -5
- package/dist/commands/review-rollout-plan.d.ts.map +0 -1
- package/dist/commands/review-rollout-plan.js +0 -124
- package/dist/commands/review-rollout-plan.js.map +0 -1
- package/dist/commands/review-rule-filter.d.ts +0 -5
- package/dist/commands/review-rule-filter.d.ts.map +0 -1
- package/dist/commands/review-rule-filter.js +0 -117
- package/dist/commands/review-rule-filter.js.map +0 -1
- package/dist/commands/review-rule-stats.d.ts +0 -5
- package/dist/commands/review-rule-stats.d.ts.map +0 -1
- package/dist/commands/review-rule-stats.js +0 -162
- package/dist/commands/review-rule-stats.js.map +0 -1
- package/dist/commands/review-sandbox.d.ts +0 -5
- package/dist/commands/review-sandbox.d.ts.map +0 -1
- package/dist/commands/review-sandbox.js +0 -192
- package/dist/commands/review-sandbox.js.map +0 -1
- package/dist/commands/review-schedule.d.ts +0 -5
- package/dist/commands/review-schedule.d.ts.map +0 -1
- package/dist/commands/review-schedule.js +0 -170
- package/dist/commands/review-schedule.js.map +0 -1
- package/dist/commands/review-scope-limit.d.ts +0 -5
- package/dist/commands/review-scope-limit.d.ts.map +0 -1
- package/dist/commands/review-scope-limit.js +0 -101
- package/dist/commands/review-scope-limit.js.map +0 -1
- package/dist/commands/review-scope-lock.d.ts +0 -8
- package/dist/commands/review-scope-lock.d.ts.map +0 -1
- package/dist/commands/review-scope-lock.js +0 -139
- package/dist/commands/review-scope-lock.js.map +0 -1
- package/dist/commands/review-scope-select.d.ts +0 -5
- package/dist/commands/review-scope-select.d.ts.map +0 -1
- package/dist/commands/review-scope-select.js +0 -99
- package/dist/commands/review-scope-select.js.map +0 -1
- package/dist/commands/review-scope-suggest.d.ts +0 -2
- package/dist/commands/review-scope-suggest.d.ts.map +0 -1
- package/dist/commands/review-scope-suggest.js +0 -113
- package/dist/commands/review-scope-suggest.js.map +0 -1
- package/dist/commands/review-scope.d.ts +0 -5
- package/dist/commands/review-scope.d.ts.map +0 -1
- package/dist/commands/review-scope.js +0 -198
- package/dist/commands/review-scope.js.map +0 -1
- package/dist/commands/review-score-history.d.ts +0 -5
- package/dist/commands/review-score-history.d.ts.map +0 -1
- package/dist/commands/review-score-history.js +0 -138
- package/dist/commands/review-score-history.js.map +0 -1
- package/dist/commands/review-security-posture.d.ts +0 -2
- package/dist/commands/review-security-posture.d.ts.map +0 -1
- package/dist/commands/review-security-posture.js +0 -106
- package/dist/commands/review-security-posture.js.map +0 -1
- package/dist/commands/review-session-replay.d.ts +0 -5
- package/dist/commands/review-session-replay.d.ts.map +0 -1
- package/dist/commands/review-session-replay.js +0 -82
- package/dist/commands/review-session-replay.js.map +0 -1
- package/dist/commands/review-session-save.d.ts +0 -5
- package/dist/commands/review-session-save.d.ts.map +0 -1
- package/dist/commands/review-session-save.js +0 -174
- package/dist/commands/review-session-save.js.map +0 -1
- package/dist/commands/review-session.d.ts +0 -5
- package/dist/commands/review-session.d.ts.map +0 -1
- package/dist/commands/review-session.js +0 -151
- package/dist/commands/review-session.js.map +0 -1
- package/dist/commands/review-skip-list.d.ts +0 -5
- package/dist/commands/review-skip-list.d.ts.map +0 -1
- package/dist/commands/review-skip-list.js +0 -136
- package/dist/commands/review-skip-list.js.map +0 -1
- package/dist/commands/review-skip-rule.d.ts +0 -5
- package/dist/commands/review-skip-rule.d.ts.map +0 -1
- package/dist/commands/review-skip-rule.js +0 -106
- package/dist/commands/review-skip-rule.js.map +0 -1
- package/dist/commands/review-sla-config.d.ts +0 -5
- package/dist/commands/review-sla-config.d.ts.map +0 -1
- package/dist/commands/review-sla-config.js +0 -89
- package/dist/commands/review-sla-config.js.map +0 -1
- package/dist/commands/review-slack-format.d.ts +0 -5
- package/dist/commands/review-slack-format.d.ts.map +0 -1
- package/dist/commands/review-slack-format.js +0 -114
- package/dist/commands/review-slack-format.js.map +0 -1
- package/dist/commands/review-snapshot-diff.d.ts +0 -5
- package/dist/commands/review-snapshot-diff.d.ts.map +0 -1
- package/dist/commands/review-snapshot-diff.js +0 -101
- package/dist/commands/review-snapshot-diff.js.map +0 -1
- package/dist/commands/review-sprint-plan.d.ts +0 -2
- package/dist/commands/review-sprint-plan.d.ts.map +0 -1
- package/dist/commands/review-sprint-plan.js +0 -80
- package/dist/commands/review-sprint-plan.js.map +0 -1
- package/dist/commands/review-stakeholder-notify.d.ts +0 -2
- package/dist/commands/review-stakeholder-notify.d.ts.map +0 -1
- package/dist/commands/review-stakeholder-notify.js +0 -135
- package/dist/commands/review-stakeholder-notify.js.map +0 -1
- package/dist/commands/review-stakeholder-report.d.ts +0 -5
- package/dist/commands/review-stakeholder-report.d.ts.map +0 -1
- package/dist/commands/review-stakeholder-report.js +0 -76
- package/dist/commands/review-stakeholder-report.js.map +0 -1
- package/dist/commands/review-stale-finding-clean.d.ts +0 -2
- package/dist/commands/review-stale-finding-clean.d.ts.map +0 -1
- package/dist/commands/review-stale-finding-clean.js +0 -82
- package/dist/commands/review-stale-finding-clean.js.map +0 -1
- package/dist/commands/review-standup.d.ts +0 -5
- package/dist/commands/review-standup.d.ts.map +0 -1
- package/dist/commands/review-standup.js +0 -96
- package/dist/commands/review-standup.js.map +0 -1
- package/dist/commands/review-stats.d.ts +0 -5
- package/dist/commands/review-stats.d.ts.map +0 -1
- package/dist/commands/review-stats.js +0 -176
- package/dist/commands/review-stats.js.map +0 -1
- package/dist/commands/review-status-badge.d.ts +0 -5
- package/dist/commands/review-status-badge.d.ts.map +0 -1
- package/dist/commands/review-status-badge.js +0 -121
- package/dist/commands/review-status-badge.js.map +0 -1
- package/dist/commands/review-streak.d.ts +0 -5
- package/dist/commands/review-streak.d.ts.map +0 -1
- package/dist/commands/review-streak.js +0 -151
- package/dist/commands/review-streak.js.map +0 -1
- package/dist/commands/review-summary-dashboard.d.ts +0 -5
- package/dist/commands/review-summary-dashboard.d.ts.map +0 -1
- package/dist/commands/review-summary-dashboard.js +0 -97
- package/dist/commands/review-summary-dashboard.js.map +0 -1
- package/dist/commands/review-summary-email.d.ts +0 -5
- package/dist/commands/review-summary-email.d.ts.map +0 -1
- package/dist/commands/review-summary-email.js +0 -103
- package/dist/commands/review-summary-email.js.map +0 -1
- package/dist/commands/review-summary.d.ts +0 -5
- package/dist/commands/review-summary.d.ts.map +0 -1
- package/dist/commands/review-summary.js +0 -175
- package/dist/commands/review-summary.js.map +0 -1
- package/dist/commands/review-tag-manager.d.ts +0 -5
- package/dist/commands/review-tag-manager.d.ts.map +0 -1
- package/dist/commands/review-tag-manager.js +0 -129
- package/dist/commands/review-tag-manager.js.map +0 -1
- package/dist/commands/review-tag.d.ts +0 -5
- package/dist/commands/review-tag.d.ts.map +0 -1
- package/dist/commands/review-tag.js +0 -137
- package/dist/commands/review-tag.js.map +0 -1
- package/dist/commands/review-team-analytics.d.ts +0 -2
- package/dist/commands/review-team-analytics.d.ts.map +0 -1
- package/dist/commands/review-team-analytics.js +0 -95
- package/dist/commands/review-team-analytics.js.map +0 -1
- package/dist/commands/review-team-assign.d.ts +0 -8
- package/dist/commands/review-team-assign.d.ts.map +0 -1
- package/dist/commands/review-team-assign.js +0 -212
- package/dist/commands/review-team-assign.js.map +0 -1
- package/dist/commands/review-team-coverage.d.ts +0 -2
- package/dist/commands/review-team-coverage.d.ts.map +0 -1
- package/dist/commands/review-team-coverage.js +0 -96
- package/dist/commands/review-team-coverage.js.map +0 -1
- package/dist/commands/review-team-dashboard.d.ts +0 -5
- package/dist/commands/review-team-dashboard.d.ts.map +0 -1
- package/dist/commands/review-team-dashboard.js +0 -99
- package/dist/commands/review-team-dashboard.js.map +0 -1
- package/dist/commands/review-team-rotation.d.ts +0 -2
- package/dist/commands/review-team-rotation.d.ts.map +0 -1
- package/dist/commands/review-team-rotation.js +0 -100
- package/dist/commands/review-team-rotation.js.map +0 -1
- package/dist/commands/review-team-skill-map.d.ts +0 -2
- package/dist/commands/review-team-skill-map.d.ts.map +0 -1
- package/dist/commands/review-team-skill-map.js +0 -103
- package/dist/commands/review-team-skill-map.js.map +0 -1
- package/dist/commands/review-team-stats.d.ts +0 -5
- package/dist/commands/review-team-stats.d.ts.map +0 -1
- package/dist/commands/review-team-stats.js +0 -98
- package/dist/commands/review-team-stats.js.map +0 -1
- package/dist/commands/review-team-summary.d.ts +0 -5
- package/dist/commands/review-team-summary.d.ts.map +0 -1
- package/dist/commands/review-team-summary.js +0 -156
- package/dist/commands/review-team-summary.js.map +0 -1
- package/dist/commands/review-team-velocity.d.ts +0 -2
- package/dist/commands/review-team-velocity.d.ts.map +0 -1
- package/dist/commands/review-team-velocity.js +0 -104
- package/dist/commands/review-team-velocity.js.map +0 -1
- package/dist/commands/review-template-export.d.ts +0 -5
- package/dist/commands/review-template-export.d.ts.map +0 -1
- package/dist/commands/review-template-export.js +0 -147
- package/dist/commands/review-template-export.js.map +0 -1
- package/dist/commands/review-template-library.d.ts +0 -5
- package/dist/commands/review-template-library.d.ts.map +0 -1
- package/dist/commands/review-template-library.js +0 -156
- package/dist/commands/review-template-library.js.map +0 -1
- package/dist/commands/review-template-suggest.d.ts +0 -2
- package/dist/commands/review-template-suggest.d.ts.map +0 -1
- package/dist/commands/review-template-suggest.js +0 -120
- package/dist/commands/review-template-suggest.js.map +0 -1
- package/dist/commands/review-template.d.ts +0 -5
- package/dist/commands/review-template.d.ts.map +0 -1
- package/dist/commands/review-template.js +0 -213
- package/dist/commands/review-template.js.map +0 -1
- package/dist/commands/review-tenant-config.d.ts +0 -5
- package/dist/commands/review-tenant-config.d.ts.map +0 -1
- package/dist/commands/review-tenant-config.js +0 -117
- package/dist/commands/review-tenant-config.js.map +0 -1
- package/dist/commands/review-threshold-tune.d.ts +0 -5
- package/dist/commands/review-threshold-tune.d.ts.map +0 -1
- package/dist/commands/review-threshold-tune.js +0 -136
- package/dist/commands/review-threshold-tune.js.map +0 -1
- package/dist/commands/review-timeline.d.ts +0 -5
- package/dist/commands/review-timeline.d.ts.map +0 -1
- package/dist/commands/review-timeline.js +0 -77
- package/dist/commands/review-timeline.js.map +0 -1
- package/dist/commands/review-token-budget.d.ts +0 -5
- package/dist/commands/review-token-budget.d.ts.map +0 -1
- package/dist/commands/review-token-budget.js +0 -118
- package/dist/commands/review-token-budget.js.map +0 -1
- package/dist/commands/review-velocity-track.d.ts +0 -2
- package/dist/commands/review-velocity-track.d.ts.map +0 -1
- package/dist/commands/review-velocity-track.js +0 -95
- package/dist/commands/review-velocity-track.js.map +0 -1
- package/dist/commands/review-watch-mode.d.ts +0 -8
- package/dist/commands/review-watch-mode.d.ts.map +0 -1
- package/dist/commands/review-watch-mode.js +0 -133
- package/dist/commands/review-watch-mode.js.map +0 -1
- package/dist/commands/review-webhook-dispatch.d.ts +0 -5
- package/dist/commands/review-webhook-dispatch.d.ts.map +0 -1
- package/dist/commands/review-webhook-dispatch.js +0 -100
- package/dist/commands/review-webhook-dispatch.js.map +0 -1
- package/dist/commands/review-webhook-notify.d.ts +0 -5
- package/dist/commands/review-webhook-notify.d.ts.map +0 -1
- package/dist/commands/review-webhook-notify.js +0 -146
- package/dist/commands/review-webhook-notify.js.map +0 -1
- package/dist/commands/review-webhook.d.ts +0 -5
- package/dist/commands/review-webhook.d.ts.map +0 -1
- package/dist/commands/review-webhook.js +0 -141
- package/dist/commands/review-webhook.js.map +0 -1
- package/dist/commands/review-whitelist.d.ts +0 -5
- package/dist/commands/review-whitelist.d.ts.map +0 -1
- package/dist/commands/review-whitelist.js +0 -159
- package/dist/commands/review-whitelist.js.map +0 -1
- package/dist/commands/review-workflow-suggest.d.ts +0 -2
- package/dist/commands/review-workflow-suggest.d.ts.map +0 -1
- package/dist/commands/review-workflow-suggest.js +0 -130
- package/dist/commands/review-workflow-suggest.js.map +0 -1
- package/dist/commands/review-workload-balance.d.ts +0 -2
- package/dist/commands/review-workload-balance.d.ts.map +0 -1
- package/dist/commands/review-workload-balance.js +0 -87
- package/dist/commands/review-workload-balance.js.map +0 -1
- package/dist/commands/review-workspace-init.d.ts +0 -5
- package/dist/commands/review-workspace-init.d.ts.map +0 -1
- package/dist/commands/review-workspace-init.js +0 -105
- package/dist/commands/review-workspace-init.js.map +0 -1
- package/dist/commands/review-workspace-scan.d.ts +0 -5
- package/dist/commands/review-workspace-scan.d.ts.map +0 -1
- package/dist/commands/review-workspace-scan.js +0 -145
- package/dist/commands/review-workspace-scan.js.map +0 -1
- package/dist/commands/review.d.ts.map +0 -1
- package/dist/commands/review.js.map +0 -1
- package/dist/commands/risk-heatmap.d.ts +0 -8
- package/dist/commands/risk-heatmap.d.ts.map +0 -1
- package/dist/commands/risk-heatmap.js +0 -224
- package/dist/commands/risk-heatmap.js.map +0 -1
- package/dist/commands/rollback-safety.d.ts +0 -5
- package/dist/commands/rollback-safety.d.ts.map +0 -1
- package/dist/commands/rollback-safety.js +0 -192
- package/dist/commands/rollback-safety.js.map +0 -1
- package/dist/commands/rule-catalog.d.ts +0 -5
- package/dist/commands/rule-catalog.d.ts.map +0 -1
- package/dist/commands/rule-catalog.js +0 -129
- package/dist/commands/rule-catalog.js.map +0 -1
- package/dist/commands/rule-metrics.d.ts.map +0 -1
- package/dist/commands/rule-metrics.js.map +0 -1
- package/dist/commands/rule-owner.d.ts +0 -31
- package/dist/commands/rule-owner.d.ts.map +0 -1
- package/dist/commands/rule-owner.js +0 -182
- package/dist/commands/rule-owner.js.map +0 -1
- package/dist/commands/rule-share.d.ts +0 -35
- package/dist/commands/rule-share.d.ts.map +0 -1
- package/dist/commands/rule-share.js +0 -203
- package/dist/commands/rule-share.js.map +0 -1
- package/dist/commands/rule-test.d.ts +0 -5
- package/dist/commands/rule-test.d.ts.map +0 -1
- package/dist/commands/rule-test.js +0 -216
- package/dist/commands/rule-test.js.map +0 -1
- package/dist/commands/rule.d.ts.map +0 -1
- package/dist/commands/rule.js.map +0 -1
- package/dist/commands/sbom-export.d.ts +0 -8
- package/dist/commands/sbom-export.d.ts.map +0 -1
- package/dist/commands/sbom-export.js +0 -162
- package/dist/commands/sbom-export.js.map +0 -1
- package/dist/commands/scaffold-plugin.d.ts +0 -16
- package/dist/commands/scaffold-plugin.d.ts.map +0 -1
- package/dist/commands/scaffold-plugin.js +0 -271
- package/dist/commands/scaffold-plugin.js.map +0 -1
- package/dist/commands/secret-age.d.ts +0 -6
- package/dist/commands/secret-age.d.ts.map +0 -1
- package/dist/commands/secret-age.js +0 -215
- package/dist/commands/secret-age.js.map +0 -1
- package/dist/commands/secret-scan.d.ts +0 -8
- package/dist/commands/secret-scan.d.ts.map +0 -1
- package/dist/commands/secret-scan.js +0 -245
- package/dist/commands/secret-scan.js.map +0 -1
- package/dist/commands/security-maturity.d.ts +0 -8
- package/dist/commands/security-maturity.d.ts.map +0 -1
- package/dist/commands/security-maturity.js +0 -313
- package/dist/commands/security-maturity.js.map +0 -1
- package/dist/commands/security-theater.d.ts +0 -5
- package/dist/commands/security-theater.d.ts.map +0 -1
- package/dist/commands/security-theater.js +0 -279
- package/dist/commands/security-theater.js.map +0 -1
- package/dist/commands/setup-wizard.d.ts +0 -5
- package/dist/commands/setup-wizard.d.ts.map +0 -1
- package/dist/commands/setup-wizard.js +0 -175
- package/dist/commands/setup-wizard.js.map +0 -1
- package/dist/commands/severity-tune.d.ts +0 -5
- package/dist/commands/severity-tune.d.ts.map +0 -1
- package/dist/commands/severity-tune.js +0 -209
- package/dist/commands/severity-tune.js.map +0 -1
- package/dist/commands/sla-track.d.ts +0 -57
- package/dist/commands/sla-track.d.ts.map +0 -1
- package/dist/commands/sla-track.js +0 -269
- package/dist/commands/sla-track.js.map +0 -1
- package/dist/commands/smart-output.d.ts.map +0 -1
- package/dist/commands/smart-output.js.map +0 -1
- package/dist/commands/smart-select.d.ts +0 -27
- package/dist/commands/smart-select.d.ts.map +0 -1
- package/dist/commands/smart-select.js +0 -346
- package/dist/commands/smart-select.js.map +0 -1
- package/dist/commands/snapshot.d.ts.map +0 -1
- package/dist/commands/snapshot.js.map +0 -1
- package/dist/commands/snippet-eval.d.ts +0 -8
- package/dist/commands/snippet-eval.d.ts.map +0 -1
- package/dist/commands/snippet-eval.js +0 -224
- package/dist/commands/snippet-eval.js.map +0 -1
- package/dist/commands/spec-conform.d.ts +0 -5
- package/dist/commands/spec-conform.d.ts.map +0 -1
- package/dist/commands/spec-conform.js +0 -305
- package/dist/commands/spec-conform.js.map +0 -1
- package/dist/commands/stale-pattern.d.ts +0 -5
- package/dist/commands/stale-pattern.d.ts.map +0 -1
- package/dist/commands/stale-pattern.js +0 -294
- package/dist/commands/stale-pattern.js.map +0 -1
- package/dist/commands/state-integrity.d.ts +0 -5
- package/dist/commands/state-integrity.d.ts.map +0 -1
- package/dist/commands/state-integrity.js +0 -284
- package/dist/commands/state-integrity.js.map +0 -1
- package/dist/commands/suppress.d.ts +0 -40
- package/dist/commands/suppress.d.ts.map +0 -1
- package/dist/commands/suppress.js +0 -209
- package/dist/commands/suppress.js.map +0 -1
- package/dist/commands/team-config.d.ts +0 -5
- package/dist/commands/team-config.d.ts.map +0 -1
- package/dist/commands/team-config.js +0 -235
- package/dist/commands/team-config.js.map +0 -1
- package/dist/commands/team-leaderboard.d.ts +0 -25
- package/dist/commands/team-leaderboard.d.ts.map +0 -1
- package/dist/commands/team-leaderboard.js +0 -228
- package/dist/commands/team-leaderboard.js.map +0 -1
- package/dist/commands/team-rules-sync.d.ts +0 -8
- package/dist/commands/team-rules-sync.d.ts.map +0 -1
- package/dist/commands/team-rules-sync.js +0 -251
- package/dist/commands/team-rules-sync.js.map +0 -1
- package/dist/commands/team-trust.d.ts +0 -8
- package/dist/commands/team-trust.d.ts.map +0 -1
- package/dist/commands/team-trust.js +0 -175
- package/dist/commands/team-trust.js.map +0 -1
- package/dist/commands/test-correlate.d.ts +0 -8
- package/dist/commands/test-correlate.d.ts.map +0 -1
- package/dist/commands/test-correlate.js +0 -222
- package/dist/commands/test-correlate.js.map +0 -1
- package/dist/commands/test-isolation.d.ts +0 -6
- package/dist/commands/test-isolation.d.ts.map +0 -1
- package/dist/commands/test-isolation.js +0 -235
- package/dist/commands/test-isolation.js.map +0 -1
- package/dist/commands/test-quality.d.ts +0 -6
- package/dist/commands/test-quality.d.ts.map +0 -1
- package/dist/commands/test-quality.js +0 -161
- package/dist/commands/test-quality.js.map +0 -1
- package/dist/commands/test-suggest.d.ts +0 -9
- package/dist/commands/test-suggest.d.ts.map +0 -1
- package/dist/commands/test-suggest.js +0 -248
- package/dist/commands/test-suggest.js.map +0 -1
- package/dist/commands/ticket-sync.d.ts +0 -26
- package/dist/commands/ticket-sync.d.ts.map +0 -1
- package/dist/commands/ticket-sync.js +0 -236
- package/dist/commands/ticket-sync.js.map +0 -1
- package/dist/commands/timeout-audit.d.ts +0 -5
- package/dist/commands/timeout-audit.d.ts.map +0 -1
- package/dist/commands/timeout-audit.js +0 -211
- package/dist/commands/timeout-audit.js.map +0 -1
- package/dist/commands/trace.d.ts +0 -65
- package/dist/commands/trace.d.ts.map +0 -1
- package/dist/commands/trace.js +0 -246
- package/dist/commands/trace.js.map +0 -1
- package/dist/commands/trend-report.d.ts +0 -5
- package/dist/commands/trend-report.d.ts.map +0 -1
- package/dist/commands/trend-report.js +0 -149
- package/dist/commands/trend-report.js.map +0 -1
- package/dist/commands/triage.d.ts +0 -16
- package/dist/commands/triage.d.ts.map +0 -1
- package/dist/commands/triage.js +0 -172
- package/dist/commands/triage.js.map +0 -1
- package/dist/commands/trust-adaptive.d.ts +0 -9
- package/dist/commands/trust-adaptive.d.ts.map +0 -1
- package/dist/commands/trust-adaptive.js +0 -194
- package/dist/commands/trust-adaptive.js.map +0 -1
- package/dist/commands/trust-ramp.d.ts +0 -30
- package/dist/commands/trust-ramp.d.ts.map +0 -1
- package/dist/commands/trust-ramp.js +0 -190
- package/dist/commands/trust-ramp.js.map +0 -1
- package/dist/commands/tune.d.ts +0 -25
- package/dist/commands/tune.d.ts.map +0 -1
- package/dist/commands/tune.js +0 -408
- package/dist/commands/tune.js.map +0 -1
- package/dist/commands/type-boundary.d.ts +0 -5
- package/dist/commands/type-boundary.d.ts.map +0 -1
- package/dist/commands/type-boundary.js +0 -236
- package/dist/commands/type-boundary.js.map +0 -1
- package/dist/commands/upload.d.ts +0 -14
- package/dist/commands/upload.d.ts.map +0 -1
- package/dist/commands/upload.js +0 -173
- package/dist/commands/upload.js.map +0 -1
- package/dist/commands/validate-config.d.ts +0 -17
- package/dist/commands/validate-config.d.ts.map +0 -1
- package/dist/commands/validate-config.js +0 -268
- package/dist/commands/validate-config.js.map +0 -1
- package/dist/commands/vendor-lock-detect.d.ts +0 -8
- package/dist/commands/vendor-lock-detect.d.ts.map +0 -1
- package/dist/commands/vendor-lock-detect.js +0 -289
- package/dist/commands/vendor-lock-detect.js.map +0 -1
- package/dist/commands/vote.d.ts +0 -32
- package/dist/commands/vote.d.ts.map +0 -1
- package/dist/commands/vote.js +0 -201
- package/dist/commands/vote.js.map +0 -1
- package/dist/commands/warm-cache.d.ts +0 -31
- package/dist/commands/warm-cache.d.ts.map +0 -1
- package/dist/commands/warm-cache.js +0 -166
- package/dist/commands/warm-cache.js.map +0 -1
- package/dist/commands/watch-judge.d.ts +0 -8
- package/dist/commands/watch-judge.d.ts.map +0 -1
- package/dist/commands/watch-judge.js +0 -180
- package/dist/commands/watch-judge.js.map +0 -1
- package/dist/commands/watch.d.ts +0 -18
- package/dist/commands/watch.d.ts.map +0 -1
- package/dist/commands/watch.js +0 -187
- package/dist/commands/watch.js.map +0 -1
- package/dist/comparison.d.ts.map +0 -1
- package/dist/comparison.js.map +0 -1
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js.map +0 -1
- package/dist/data-adapter.d.ts.map +0 -1
- package/dist/data-adapter.js.map +0 -1
- package/dist/dedup.d.ts.map +0 -1
- package/dist/dedup.js.map +0 -1
- package/dist/disk-cache.d.ts.map +0 -1
- package/dist/disk-cache.js.map +0 -1
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js.map +0 -1
- package/dist/evaluators/accessibility.d.ts.map +0 -1
- package/dist/evaluators/accessibility.js.map +0 -1
- package/dist/evaluators/agent-instructions.d.ts.map +0 -1
- package/dist/evaluators/agent-instructions.js.map +0 -1
- package/dist/evaluators/ai-code-safety.d.ts.map +0 -1
- package/dist/evaluators/ai-code-safety.js.map +0 -1
- package/dist/evaluators/api-contract.d.ts.map +0 -1
- package/dist/evaluators/api-contract.js.map +0 -1
- package/dist/evaluators/api-design.d.ts.map +0 -1
- package/dist/evaluators/api-design.js.map +0 -1
- package/dist/evaluators/app-builder.d.ts.map +0 -1
- package/dist/evaluators/app-builder.js.map +0 -1
- package/dist/evaluators/authentication.d.ts.map +0 -1
- package/dist/evaluators/authentication.js.map +0 -1
- package/dist/evaluators/backwards-compatibility.d.ts.map +0 -1
- package/dist/evaluators/backwards-compatibility.js.map +0 -1
- package/dist/evaluators/caching.d.ts.map +0 -1
- package/dist/evaluators/caching.js.map +0 -1
- package/dist/evaluators/ci-cd.d.ts.map +0 -1
- package/dist/evaluators/ci-cd.js.map +0 -1
- package/dist/evaluators/cloud-readiness.d.ts.map +0 -1
- package/dist/evaluators/cloud-readiness.js.map +0 -1
- package/dist/evaluators/code-structure.d.ts.map +0 -1
- package/dist/evaluators/code-structure.js.map +0 -1
- package/dist/evaluators/compliance.d.ts.map +0 -1
- package/dist/evaluators/compliance.js.map +0 -1
- package/dist/evaluators/concurrency.d.ts.map +0 -1
- package/dist/evaluators/concurrency.js.map +0 -1
- package/dist/evaluators/configuration-management.d.ts.map +0 -1
- package/dist/evaluators/configuration-management.js.map +0 -1
- package/dist/evaluators/cost-effectiveness.d.ts.map +0 -1
- package/dist/evaluators/cost-effectiveness.js.map +0 -1
- package/dist/evaluators/cybersecurity.d.ts.map +0 -1
- package/dist/evaluators/cybersecurity.js.map +0 -1
- package/dist/evaluators/data-security.d.ts.map +0 -1
- package/dist/evaluators/data-security.js.map +0 -1
- package/dist/evaluators/data-sovereignty.d.ts.map +0 -1
- package/dist/evaluators/data-sovereignty.js.map +0 -1
- package/dist/evaluators/database.d.ts.map +0 -1
- package/dist/evaluators/database.js.map +0 -1
- package/dist/evaluators/dependencies.d.ts.map +0 -1
- package/dist/evaluators/dependencies.js.map +0 -1
- package/dist/evaluators/dependency-health.d.ts.map +0 -1
- package/dist/evaluators/dependency-health.js.map +0 -1
- package/dist/evaluators/documentation.d.ts.map +0 -1
- package/dist/evaluators/documentation.js.map +0 -1
- package/dist/evaluators/error-handling.d.ts.map +0 -1
- package/dist/evaluators/error-handling.js.map +0 -1
- package/dist/evaluators/ethics-bias.d.ts.map +0 -1
- package/dist/evaluators/ethics-bias.js.map +0 -1
- package/dist/evaluators/false-positive-review.d.ts.map +0 -1
- package/dist/evaluators/false-positive-review.js.map +0 -1
- package/dist/evaluators/framework-rules.d.ts.map +0 -1
- package/dist/evaluators/framework-rules.js.map +0 -1
- package/dist/evaluators/framework-safety.d.ts.map +0 -1
- package/dist/evaluators/framework-safety.js.map +0 -1
- package/dist/evaluators/hallucination-detection.d.ts.map +0 -1
- package/dist/evaluators/hallucination-detection.js.map +0 -1
- package/dist/evaluators/iac-security.d.ts.map +0 -1
- package/dist/evaluators/iac-security.js.map +0 -1
- package/dist/evaluators/index.d.ts.map +0 -1
- package/dist/evaluators/index.js.map +0 -1
- package/dist/evaluators/intent-alignment.d.ts.map +0 -1
- package/dist/evaluators/intent-alignment.js.map +0 -1
- package/dist/evaluators/internationalization.d.ts.map +0 -1
- package/dist/evaluators/internationalization.js.map +0 -1
- package/dist/evaluators/logging-privacy.d.ts.map +0 -1
- package/dist/evaluators/logging-privacy.js.map +0 -1
- package/dist/evaluators/logic-review.d.ts.map +0 -1
- package/dist/evaluators/logic-review.js.map +0 -1
- package/dist/evaluators/maintainability.d.ts.map +0 -1
- package/dist/evaluators/maintainability.js.map +0 -1
- package/dist/evaluators/model-fingerprint.d.ts.map +0 -1
- package/dist/evaluators/model-fingerprint.js.map +0 -1
- package/dist/evaluators/multi-turn-coherence.d.ts.map +0 -1
- package/dist/evaluators/multi-turn-coherence.js.map +0 -1
- package/dist/evaluators/observability.d.ts.map +0 -1
- package/dist/evaluators/observability.js.map +0 -1
- package/dist/evaluators/over-engineering.d.ts.map +0 -1
- package/dist/evaluators/over-engineering.js.map +0 -1
- package/dist/evaluators/performance.d.ts.map +0 -1
- package/dist/evaluators/performance.js.map +0 -1
- package/dist/evaluators/portability.d.ts.map +0 -1
- package/dist/evaluators/portability.js.map +0 -1
- package/dist/evaluators/project.d.ts.map +0 -1
- package/dist/evaluators/project.js.map +0 -1
- package/dist/evaluators/rate-limiting.d.ts.map +0 -1
- package/dist/evaluators/rate-limiting.js.map +0 -1
- package/dist/evaluators/reliability.d.ts.map +0 -1
- package/dist/evaluators/reliability.js.map +0 -1
- package/dist/evaluators/scalability.d.ts.map +0 -1
- package/dist/evaluators/scalability.js.map +0 -1
- package/dist/evaluators/security.d.ts.map +0 -1
- package/dist/evaluators/security.js.map +0 -1
- package/dist/evaluators/shared.d.ts.map +0 -1
- package/dist/evaluators/shared.js.map +0 -1
- package/dist/evaluators/software-practices.d.ts.map +0 -1
- package/dist/evaluators/software-practices.js.map +0 -1
- package/dist/evaluators/testing.d.ts.map +0 -1
- package/dist/evaluators/testing.js.map +0 -1
- package/dist/evaluators/ux.d.ts.map +0 -1
- package/dist/evaluators/ux.js.map +0 -1
- package/dist/evaluators/v2.d.ts.map +0 -1
- package/dist/evaluators/v2.js.map +0 -1
- package/dist/finding-lifecycle.d.ts.map +0 -1
- package/dist/finding-lifecycle.js.map +0 -1
- package/dist/fingerprint.d.ts.map +0 -1
- package/dist/fingerprint.js.map +0 -1
- package/dist/fix-history.d.ts.map +0 -1
- package/dist/fix-history.js.map +0 -1
- package/dist/formatters/badge.d.ts.map +0 -1
- package/dist/formatters/badge.js.map +0 -1
- package/dist/formatters/codeclimate.d.ts.map +0 -1
- package/dist/formatters/codeclimate.js.map +0 -1
- package/dist/formatters/csv.d.ts.map +0 -1
- package/dist/formatters/csv.js.map +0 -1
- package/dist/formatters/diagnostics.d.ts.map +0 -1
- package/dist/formatters/diagnostics.js.map +0 -1
- package/dist/formatters/github-actions.d.ts.map +0 -1
- package/dist/formatters/github-actions.js.map +0 -1
- package/dist/formatters/html.d.ts.map +0 -1
- package/dist/formatters/html.js.map +0 -1
- package/dist/formatters/junit.d.ts.map +0 -1
- package/dist/formatters/junit.js.map +0 -1
- package/dist/formatters/pdf.d.ts.map +0 -1
- package/dist/formatters/pdf.js.map +0 -1
- package/dist/formatters/sarif.d.ts.map +0 -1
- package/dist/formatters/sarif.js.map +0 -1
- package/dist/github-app.d.ts.map +0 -1
- package/dist/github-app.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/judge-registry.d.ts.map +0 -1
- package/dist/judge-registry.js.map +0 -1
- package/dist/judges/accessibility.d.ts.map +0 -1
- package/dist/judges/accessibility.js.map +0 -1
- package/dist/judges/agent-instructions.d.ts.map +0 -1
- package/dist/judges/agent-instructions.js.map +0 -1
- package/dist/judges/ai-code-safety.d.ts.map +0 -1
- package/dist/judges/ai-code-safety.js.map +0 -1
- package/dist/judges/api-contract.d.ts.map +0 -1
- package/dist/judges/api-contract.js.map +0 -1
- package/dist/judges/api-design.d.ts.map +0 -1
- package/dist/judges/api-design.js.map +0 -1
- package/dist/judges/authentication.d.ts.map +0 -1
- package/dist/judges/authentication.js.map +0 -1
- package/dist/judges/backwards-compatibility.d.ts.map +0 -1
- package/dist/judges/backwards-compatibility.js.map +0 -1
- package/dist/judges/caching.d.ts.map +0 -1
- package/dist/judges/caching.js.map +0 -1
- package/dist/judges/ci-cd.d.ts.map +0 -1
- package/dist/judges/ci-cd.js.map +0 -1
- package/dist/judges/cloud-readiness.d.ts.map +0 -1
- package/dist/judges/cloud-readiness.js.map +0 -1
- package/dist/judges/code-structure.d.ts.map +0 -1
- package/dist/judges/code-structure.js.map +0 -1
- package/dist/judges/compliance.d.ts.map +0 -1
- package/dist/judges/compliance.js.map +0 -1
- package/dist/judges/concurrency.d.ts.map +0 -1
- package/dist/judges/concurrency.js.map +0 -1
- package/dist/judges/configuration-management.d.ts.map +0 -1
- package/dist/judges/configuration-management.js.map +0 -1
- package/dist/judges/cost-effectiveness.d.ts.map +0 -1
- package/dist/judges/cost-effectiveness.js.map +0 -1
- package/dist/judges/cybersecurity.d.ts.map +0 -1
- package/dist/judges/cybersecurity.js.map +0 -1
- package/dist/judges/data-security.d.ts.map +0 -1
- package/dist/judges/data-security.js.map +0 -1
- package/dist/judges/data-sovereignty.d.ts.map +0 -1
- package/dist/judges/data-sovereignty.js.map +0 -1
- package/dist/judges/database.d.ts.map +0 -1
- package/dist/judges/database.js.map +0 -1
- package/dist/judges/dependency-health.d.ts.map +0 -1
- package/dist/judges/dependency-health.js.map +0 -1
- package/dist/judges/documentation.d.ts.map +0 -1
- package/dist/judges/documentation.js.map +0 -1
- package/dist/judges/error-handling.d.ts.map +0 -1
- package/dist/judges/error-handling.js.map +0 -1
- package/dist/judges/ethics-bias.d.ts.map +0 -1
- package/dist/judges/ethics-bias.js.map +0 -1
- package/dist/judges/false-positive-review.d.ts.map +0 -1
- package/dist/judges/false-positive-review.js.map +0 -1
- package/dist/judges/framework-safety.d.ts.map +0 -1
- package/dist/judges/framework-safety.js.map +0 -1
- package/dist/judges/hallucination-detection.d.ts.map +0 -1
- package/dist/judges/hallucination-detection.js.map +0 -1
- package/dist/judges/iac-security.d.ts.map +0 -1
- package/dist/judges/iac-security.js.map +0 -1
- package/dist/judges/index.d.ts.map +0 -1
- package/dist/judges/index.js.map +0 -1
- package/dist/judges/intent-alignment.d.ts.map +0 -1
- package/dist/judges/intent-alignment.js.map +0 -1
- package/dist/judges/internationalization.d.ts.map +0 -1
- package/dist/judges/internationalization.js.map +0 -1
- package/dist/judges/logging-privacy.d.ts.map +0 -1
- package/dist/judges/logging-privacy.js.map +0 -1
- package/dist/judges/logic-review.d.ts.map +0 -1
- package/dist/judges/logic-review.js.map +0 -1
- package/dist/judges/maintainability.d.ts.map +0 -1
- package/dist/judges/maintainability.js.map +0 -1
- package/dist/judges/model-fingerprint.d.ts.map +0 -1
- package/dist/judges/model-fingerprint.js.map +0 -1
- package/dist/judges/multi-turn-coherence.d.ts.map +0 -1
- package/dist/judges/multi-turn-coherence.js.map +0 -1
- package/dist/judges/observability.d.ts.map +0 -1
- package/dist/judges/observability.js.map +0 -1
- package/dist/judges/over-engineering.d.ts.map +0 -1
- package/dist/judges/over-engineering.js.map +0 -1
- package/dist/judges/performance.d.ts.map +0 -1
- package/dist/judges/performance.js.map +0 -1
- package/dist/judges/portability.d.ts.map +0 -1
- package/dist/judges/portability.js.map +0 -1
- package/dist/judges/rate-limiting.d.ts.map +0 -1
- package/dist/judges/rate-limiting.js.map +0 -1
- package/dist/judges/reliability.d.ts.map +0 -1
- package/dist/judges/reliability.js.map +0 -1
- package/dist/judges/scalability.d.ts.map +0 -1
- package/dist/judges/scalability.js.map +0 -1
- package/dist/judges/security.d.ts.map +0 -1
- package/dist/judges/security.js.map +0 -1
- package/dist/judges/software-practices.d.ts.map +0 -1
- package/dist/judges/software-practices.js.map +0 -1
- package/dist/judges/testing.d.ts.map +0 -1
- package/dist/judges/testing.js.map +0 -1
- package/dist/judges/ux.d.ts.map +0 -1
- package/dist/judges/ux.js.map +0 -1
- package/dist/language-patterns.d.ts.map +0 -1
- package/dist/language-patterns.js.map +0 -1
- package/dist/parallel.d.ts.map +0 -1
- package/dist/parallel.js.map +0 -1
- package/dist/patches/index.d.ts.map +0 -1
- package/dist/patches/index.js.map +0 -1
- package/dist/plugins.d.ts.map +0 -1
- package/dist/plugins.js.map +0 -1
- package/dist/presets.d.ts.map +0 -1
- package/dist/presets.js.map +0 -1
- package/dist/reports/public-repo-report.d.ts.map +0 -1
- package/dist/reports/public-repo-report.js.map +0 -1
- package/dist/scoring.d.ts.map +0 -1
- package/dist/scoring.js.map +0 -1
- package/dist/security-ids.d.ts.map +0 -1
- package/dist/security-ids.js.map +0 -1
- package/dist/tools/deep-review.d.ts.map +0 -1
- package/dist/tools/deep-review.js.map +0 -1
- package/dist/tools/prompts.d.ts.map +0 -1
- package/dist/tools/prompts.js.map +0 -1
- package/dist/tools/register-evaluation.d.ts.map +0 -1
- package/dist/tools/register-evaluation.js.map +0 -1
- package/dist/tools/register-fix.d.ts.map +0 -1
- package/dist/tools/register-fix.js.map +0 -1
- package/dist/tools/register-review.d.ts.map +0 -1
- package/dist/tools/register-review.js.map +0 -1
- package/dist/tools/register-scaffold.d.ts.map +0 -1
- package/dist/tools/register-scaffold.js.map +0 -1
- package/dist/tools/register-workflow.d.ts.map +0 -1
- package/dist/tools/register-workflow.js.map +0 -1
- package/dist/tools/register-workspace.d.ts.map +0 -1
- package/dist/tools/register-workspace.js.map +0 -1
- package/dist/tools/register.d.ts.map +0 -1
- package/dist/tools/register.js.map +0 -1
- package/dist/tools/schemas.d.ts.map +0 -1
- package/dist/tools/schemas.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/grammars/tree-sitter-c_sharp.wasm +0 -0
- package/grammars/tree-sitter-cpp.wasm +0 -0
- package/grammars/tree-sitter-go.wasm +0 -0
- package/grammars/tree-sitter-java.wasm +0 -0
- package/grammars/tree-sitter-kotlin.wasm +0 -0
- package/grammars/tree-sitter-php.wasm +0 -0
- package/grammars/tree-sitter-python.wasm +0 -0
- package/grammars/tree-sitter-ruby.wasm +0 -0
- package/grammars/tree-sitter-rust.wasm +0 -0
- package/grammars/tree-sitter-swift.wasm +0 -0
- package/grammars/tree-sitter-typescript.wasm +0 -0
package/CHANGELOG.md
DELETED
|
@@ -1,2754 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to **@kevinrabun/judges** are documented here.
|
|
4
|
-
|
|
5
|
-
## [3.112.0] — 2026-03-14
|
|
6
|
-
|
|
7
|
-
### Added
|
|
8
|
-
- **finding-scope-impact** — Analyse finding scope impact across domains (isolated, moderate, widespread, systemic)
|
|
9
|
-
- **review-health-trend** — Track review health over time with composite scoring and trend detection
|
|
10
|
-
- **finding-fix-estimate** — Estimate fix effort for each finding with time-boxed labels
|
|
11
|
-
- **review-readiness-check** — Assess codebase readiness for review with prerequisite checklist
|
|
12
|
-
- **finding-noise-score** — Score finding noise levels to identify low-signal findings
|
|
13
|
-
- **review-workflow-suggest** — Suggest optimal review workflows based on project characteristics
|
|
14
|
-
- **finding-top-offender** — Identify the most frequently triggered rules
|
|
15
|
-
- **review-team-skill-map** — Build team skill map from review history with expertise levels
|
|
16
|
-
- **finding-repeat-detect** — Detect findings that repeat across multiple reviews
|
|
17
|
-
|
|
18
|
-
## [3.111.0] — 2026-03-14
|
|
19
|
-
|
|
20
|
-
### Added
|
|
21
|
-
- **finding-resolution-workflow** — Guide through severity-based resolution workflows with step checklists
|
|
22
|
-
- **review-quality-baseline** — Compare current review quality against historical baseline
|
|
23
|
-
- **finding-context-link** — Link findings to relevant documentation via keyword matching
|
|
24
|
-
- **review-team-velocity** — Track team review velocity metrics with trend detection
|
|
25
|
-
- **finding-auto-priority** — Auto-prioritise findings with multi-factor scoring (P0–P4)
|
|
26
|
-
- **review-retrospective** — Generate review retrospective summaries (went well, needs improvement, action items)
|
|
27
|
-
- **finding-dependency-impact** — Show impact of dependency-related findings and blast radius
|
|
28
|
-
- **review-mentor-suggest** — Suggest mentor pairings based on expertise gaps in review history
|
|
29
|
-
- **finding-cluster-summary** — Summarise finding clusters by domain with severity breakdown
|
|
30
|
-
|
|
31
|
-
## [3.110.0] — 2026-03-14
|
|
32
|
-
|
|
33
|
-
### Added
|
|
34
|
-
- **finding-risk-label** — Label findings with risk categories (exploitable, data-loss, compliance, etc.)
|
|
35
|
-
- **review-feedback-summary** — Summarize reviewer feedback trends from review history
|
|
36
|
-
- **finding-fix-chain** — Chain related fixes together for batch remediation
|
|
37
|
-
- **review-config-health** — Assess configuration health and suggest improvements
|
|
38
|
-
- **finding-owner-notify** — Generate ownership-based notification lists for findings
|
|
39
|
-
- **review-progress-report** — Generate progress reports from review history
|
|
40
|
-
- **finding-patch-chain** — Link and order patches for safe sequential application
|
|
41
|
-
- **review-engagement-score** — Score team engagement with code reviews
|
|
42
|
-
- **finding-effort-rank** — Rank findings by estimated fix effort
|
|
43
|
-
|
|
44
|
-
## [3.109.0] — 2026-03-14
|
|
45
|
-
|
|
46
|
-
### Added
|
|
47
|
-
- **finding-compliance-tag** — Tag findings with compliance framework identifiers (SOC2, PCI-DSS, GDPR)
|
|
48
|
-
- **review-team-coverage** — Show review coverage distribution across team members
|
|
49
|
-
- **finding-severity-rebalance** — Rebalance finding severities based on project context
|
|
50
|
-
- **review-stakeholder-notify** — Format notifications for different stakeholder roles
|
|
51
|
-
- **finding-fix-playbook** — Generate step-by-step fix playbooks for common finding patterns
|
|
52
|
-
- **review-adoption-score** — Calculate project adoption readiness score
|
|
53
|
-
- **finding-dedup-merge** — Merge duplicate findings across review runs
|
|
54
|
-
- **review-team-rotation** — Manage reviewer rotation schedules
|
|
55
|
-
- **review-goal-track** — Track team review quality goals over time
|
|
56
|
-
|
|
57
|
-
## [3.108.0] — 2026-03-14
|
|
58
|
-
|
|
59
|
-
### Added
|
|
60
|
-
- Action item generation: review-action-item-gen
|
|
61
|
-
- Policy enforcement: review-policy-enforce
|
|
62
|
-
- Time-to-fix estimates: finding-time-to-fix
|
|
63
|
-
- Sprint planning: review-sprint-plan
|
|
64
|
-
- Finding ancestry tracing: finding-ancestry-trace
|
|
65
|
-
- Escalation paths: review-escalation-path
|
|
66
|
-
- Remediation cost estimates: finding-remediation-cost
|
|
67
|
-
- Review digest generation: review-digest-gen
|
|
68
|
-
- Recurrence checking: finding-recurrence-check
|
|
69
|
-
|
|
70
|
-
## [3.107.0] — 2026-03-14
|
|
71
|
-
|
|
72
|
-
### Added
|
|
73
|
-
- Auto-fix suggestions: finding-auto-fix-suggest
|
|
74
|
-
- Scope-based finding filter: finding-scope-filter
|
|
75
|
-
- Finding noise reduction: finding-noise-reduce
|
|
76
|
-
- Release gate evaluation: review-release-gate
|
|
77
|
-
- Code ownership mapping: review-code-ownership
|
|
78
|
-
- Batch triage: finding-batch-triage
|
|
79
|
-
- PR label suggestions: review-pr-label-suggest
|
|
80
|
-
- Confidence boost analysis: finding-confidence-boost
|
|
81
|
-
- Review cadence analysis: review-review-cadence
|
|
82
|
-
|
|
83
|
-
## [3.106.0] — 2026-03-14
|
|
84
|
-
|
|
85
|
-
### Added
|
|
86
|
-
- Quality gate evaluation: review-quality-gate
|
|
87
|
-
- Reopened finding detection: finding-reopen-detect
|
|
88
|
-
- Finding priority ranking: finding-priority-rank
|
|
89
|
-
- Dependency risk review: review-dependency-review
|
|
90
|
-
- Merge readiness assessment: review-merge-readiness
|
|
91
|
-
- Security posture analysis: review-security-posture
|
|
92
|
-
- Knowledge capture: review-knowledge-capture
|
|
93
|
-
- Onboarding checklist: review-onboarding-check
|
|
94
|
-
- Regression detection: finding-regression-detect
|
|
95
|
-
|
|
96
|
-
## [3.105.0] — 2026-03-14
|
|
97
|
-
|
|
98
|
-
### Added
|
|
99
|
-
- Risk matrix view: review-risk-matrix
|
|
100
|
-
- Approval criteria checks: review-approval-criteria
|
|
101
|
-
- Finding context summaries: finding-context-summary
|
|
102
|
-
- Changelog impact assessment: review-changelog-impact
|
|
103
|
-
- Commit quality scoring: review-commit-quality
|
|
104
|
-
- Auto-categorize findings: finding-auto-categorize
|
|
105
|
-
- Stale finding cleanup: review-stale-finding-clean
|
|
106
|
-
- Impact radius analysis: finding-impact-radius
|
|
107
|
-
- Reviewer matching: review-reviewer-match
|
|
108
|
-
|
|
109
|
-
## [3.104.0] — 2026-03-14
|
|
110
|
-
|
|
111
|
-
### Added
|
|
112
|
-
- Review template suggestions: review-template-suggest
|
|
113
|
-
- Code hotspot detection: finding-hotspot-detect
|
|
114
|
-
- Code health scoring: review-code-health-score
|
|
115
|
-
- Review velocity tracking: review-velocity-track
|
|
116
|
-
- Cross-file finding links: finding-cross-file-link
|
|
117
|
-
- PR size analysis: review-pr-size-check
|
|
118
|
-
- Review focus areas: review-focus-area
|
|
119
|
-
- Team review analytics: review-team-analytics
|
|
120
|
-
- Similar finding matching: finding-similar-match
|
|
121
|
-
|
|
122
|
-
## [3.103.0] — 2026-03-14
|
|
123
|
-
|
|
124
|
-
### Added
|
|
125
|
-
- Confidence explainability: review-confidence-explain
|
|
126
|
-
- Cross-branch finding merge: finding-merge-strategy
|
|
127
|
-
- Review scope suggestions: review-scope-suggest
|
|
128
|
-
- AI feedback loop: review-ai-feedback-loop
|
|
129
|
-
- Finding trend alerts: finding-trend-alert
|
|
130
|
-
- Workload balancing: review-workload-balance
|
|
131
|
-
- Smart deduplication: finding-dedup-smart
|
|
132
|
-
- Annotation export: finding-annotation-export
|
|
133
|
-
- CI pipeline insights: review-ci-insight
|
|
134
|
-
|
|
135
|
-
## [3.102.0] — 2026-03-14
|
|
136
|
-
|
|
137
|
-
### Added
|
|
138
|
-
- Quality trend tracking: review-quality-trend
|
|
139
|
-
- Batch finding suppression: finding-batch-suppress
|
|
140
|
-
- Severity drift detection: finding-severity-drift
|
|
141
|
-
- PR comment generation: review-pr-comment-gen
|
|
142
|
-
- Finding dependency linking: finding-dependency-link
|
|
143
|
-
- Reviewer role assignment: review-role-assignment
|
|
144
|
-
- Archived review search: review-archive-search
|
|
145
|
-
- Incident linking: review-incident-link
|
|
146
|
-
- Finding search index: finding-search-index
|
|
147
|
-
|
|
148
|
-
## [3.101.0] — 2026-03-14
|
|
149
|
-
|
|
150
|
-
### Added
|
|
151
|
-
- Configure custom judge settings per project: review-custom-judge-config
|
|
152
|
-
- Manage branch-level review policies: review-branch-policy
|
|
153
|
-
- Detect recurring findings across review runs: finding-recurrence-detect
|
|
154
|
-
- Check health of Judges integrations: review-integration-health
|
|
155
|
-
- Export review metrics for external dashboards: review-metric-export
|
|
156
|
-
- Assign ownership of findings to team members: finding-ownership-assign
|
|
157
|
-
- Generate notification digests for review activity: review-notification-digest
|
|
158
|
-
- View and manage review access logs: review-access-log
|
|
159
|
-
- Manage tags for reviews and findings: review-tag-manager
|
|
160
|
-
|
|
161
|
-
## [3.100.0] — 2026-03-14
|
|
162
|
-
|
|
163
|
-
### Added
|
|
164
|
-
- Auto-triage findings by severity, confidence, and rules: finding-auto-triage
|
|
165
|
-
- Generate stakeholder-facing summaries from review verdicts: review-stakeholder-report
|
|
166
|
-
- Assess impact of code changes on existing findings: finding-change-impact
|
|
167
|
-
- Configure deployment gates with threshold-based blocking: review-deployment-gate
|
|
168
|
-
- Manage per-environment review configurations: review-environment-config
|
|
169
|
-
- Track and learn from false positive patterns: finding-false-positive-learn
|
|
170
|
-
- Synchronize review configs across multiple repositories: review-multi-repo-sync
|
|
171
|
-
- Replay and inspect past review sessions: review-session-replay
|
|
172
|
-
- Enrich findings with surrounding code context: finding-context-enrich
|
|
173
|
-
|
|
174
|
-
## [3.99.0] — 2026-03-14
|
|
175
|
-
|
|
176
|
-
### Added
|
|
177
|
-
- Auto-suppress findings matching criteria: finding-auto-suppress
|
|
178
|
-
- Generate structured review comments from findings: review-review-comments
|
|
179
|
-
- Role-based permission management for review workflows: review-permission-model
|
|
180
|
-
- Onboard a repository to Judges with config and baseline: review-repo-onboard
|
|
181
|
-
- Manage finding dismissals with reasons and audit trail: finding-dismiss-workflow
|
|
182
|
-
- Configure local data retention policies and cleanup: review-data-retention
|
|
183
|
-
- Check if findings reference reachable code paths: finding-reachability-check
|
|
184
|
-
- Export audit data in JSON/CSV for compliance: review-audit-export
|
|
185
|
-
- Monitor review pipeline and integration status: review-pipeline-status
|
|
186
|
-
|
|
187
|
-
## [3.98.0] — 2026-03-14
|
|
188
|
-
|
|
189
|
-
### Added
|
|
190
|
-
- Analyze review findings distribution by language: review-language-profile
|
|
191
|
-
- Look up CWE details for finding rule IDs: finding-cwe-lookup
|
|
192
|
-
- Generate CI/CD integration configs (GitHub Actions, GitLab, Azure Pipelines, Jenkins): review-cicd-integrate
|
|
193
|
-
- Preview how patches would modify source files: finding-patch-preview
|
|
194
|
-
- Organization-wide review dashboard: review-org-dashboard
|
|
195
|
-
- Detect duplicate or near-duplicate findings: finding-duplicate-detect
|
|
196
|
-
- Create urgency x impact priority matrix: finding-priority-matrix
|
|
197
|
-
- Configure SLA targets for review resolution: review-sla-config
|
|
198
|
-
- Archive and manage historical review reports: review-report-archive
|
|
199
|
-
|
|
200
|
-
## [3.97.0] — 2026-03-14
|
|
201
|
-
|
|
202
|
-
### Added
|
|
203
|
-
- Define and enforce local code-review policies: review-policy-engine
|
|
204
|
-
- Configure webhook endpoints for review events: review-webhook-dispatch
|
|
205
|
-
- Calculate composite risk scores for findings: finding-risk-score
|
|
206
|
-
- Map findings to compliance frameworks (OWASP, CWE, PCI-DSS): review-compliance-map
|
|
207
|
-
- Forecast finding trends from historical data: finding-trend-forecast
|
|
208
|
-
- Rank findings by estimated business impact: finding-impact-rank
|
|
209
|
-
- Generate phased rollout plans for adoption: review-rollout-plan
|
|
210
|
-
- Add contextual annotations to findings: finding-annotation-layer
|
|
211
|
-
- Configure quality gates for review pipelines: review-gate-config
|
|
212
|
-
|
|
213
|
-
## [3.96.0] — 2026-03-14
|
|
214
|
-
|
|
215
|
-
### Added
|
|
216
|
-
- Apply suggested fixes in bulk across findings: review-bulk-apply
|
|
217
|
-
- Severity distribution heatmap visualization: finding-severity-heatmap
|
|
218
|
-
- Migrate configs between Judges versions: review-config-migrate
|
|
219
|
-
- Compare review history across time periods: review-history-compare
|
|
220
|
-
- Team-level review dashboard with aggregates: review-team-dashboard
|
|
221
|
-
- Calibrate confidence thresholds from feedback: finding-confidence-calibrate
|
|
222
|
-
- Transform review output between formats: review-output-transform
|
|
223
|
-
- Track Judges adoption metrics over time: review-adoption-metrics
|
|
224
|
-
- Initialize workspace with Judges config files: review-workspace-init
|
|
225
|
-
|
|
226
|
-
## [3.95.0] — 2026-03-14
|
|
227
|
-
|
|
228
|
-
### Added
|
|
229
|
-
- Aggregate review dashboard with key metrics: review-summary-dashboard
|
|
230
|
-
- Format findings for merge/pull request comments: review-merge-request
|
|
231
|
-
- Group findings by source file path: finding-groupby-file
|
|
232
|
-
- Deduplicate findings across multiple review files: finding-dedup-cross
|
|
233
|
-
- Select review scope by path patterns and extensions: review-scope-select
|
|
234
|
-
- Export review data in API-compatible JSON format: review-api-export
|
|
235
|
-
- Map correlations between related findings: finding-correlation-map
|
|
236
|
-
- Library of reusable review templates: review-template-library
|
|
237
|
-
- Configure notification preferences for review results: review-notification-config
|
|
238
|
-
|
|
239
|
-
## [3.94.0] — 2026-03-14
|
|
240
|
-
|
|
241
|
-
### Added
|
|
242
|
-
- Interactive quickstart guide for new users: review-quickstart
|
|
243
|
-
- Step-by-step finding walkthrough sessions: review-interactive
|
|
244
|
-
- Detailed finding explanations with context: finding-explain
|
|
245
|
-
- Sync review results to IDE formats (VSCode/JetBrains): review-ide-sync
|
|
246
|
-
- Multi-criteria finding filtering and viewing: finding-filter-view
|
|
247
|
-
- Per-tenant/team configuration profiles: review-tenant-config
|
|
248
|
-
- Surrounding code context for findings: finding-code-context
|
|
249
|
-
- Finding resolution status tracking over time: finding-resolution-track
|
|
250
|
-
- Team onboarding checklists for adoption: review-onboard-checklist
|
|
251
|
-
|
|
252
|
-
## [3.93.0] — 2026-03-14
|
|
253
|
-
|
|
254
|
-
### Added
|
|
255
|
-
- Format review summaries for Slack-compatible output: review-slack-format
|
|
256
|
-
- Generate config templates for common review scenarios: review-config-template
|
|
257
|
-
- Suggest fixes for findings with code-level recommendations: finding-fix-suggest
|
|
258
|
-
- Track review progress across multiple runs: review-progress-track
|
|
259
|
-
- Map findings to code owners and maintainers: finding-ownership-map
|
|
260
|
-
- Manage scheduled report generation: review-report-schedule
|
|
261
|
-
- Build finding relationship graphs for dependency analysis: finding-link-graph
|
|
262
|
-
- Maintain review audit trails with full history: review-audit-trail
|
|
263
|
-
- Generate compliance reports from review findings: review-compliance-report
|
|
264
|
-
|
|
265
|
-
## [3.92.0] — 2026-03-14
|
|
266
|
-
|
|
267
|
-
### Added
|
|
268
|
-
- Auto-group findings into logical categories by content analysis: finding-auto-group
|
|
269
|
-
- Manage finding suppression lists with expiry support: finding-suppression-list
|
|
270
|
-
- Show plugin loading status and domain filtering: review-plugin-status
|
|
271
|
-
- Cross-reference findings across multiple review files: finding-cross-ref
|
|
272
|
-
- CI gate integration with configurable pass/fail policies: review-ci-gate
|
|
273
|
-
- Team review statistics with aggregated metrics: review-team-stats
|
|
274
|
-
- Detect recurring finding patterns and co-occurrences: finding-pattern-detect
|
|
275
|
-
- Identify review coverage gaps and missing judges: review-coverage-gap
|
|
276
|
-
- Track review feedback loop with trend analysis: review-feedback-loop
|
|
277
|
-
|
|
278
|
-
## [3.91.0] — 2026-03-14
|
|
279
|
-
|
|
280
|
-
### Added
|
|
281
|
-
- Merge multiple configuration files with conflict detection: review-merge-config
|
|
282
|
-
- Map finding hotspots by line range buckets: finding-hotspot-map
|
|
283
|
-
- Summarize parallel review runs with consensus analysis: review-parallel-run
|
|
284
|
-
- Export findings as GitHub Actions, inline, or JSON annotations: review-annotation-export
|
|
285
|
-
- Estimate finding blast radius with risk scoring: finding-blast-radius
|
|
286
|
-
- Compute multi-dimension quality score with grading: review-quality-score
|
|
287
|
-
- Onboarding wizard with focus-based judge suggestions: review-onboard-wizard
|
|
288
|
-
- Pre-warm review cache for faster subsequent runs: review-cache-warm
|
|
289
|
-
- Enrich findings with judge and domain metadata: finding-metadata-enrich
|
|
290
|
-
|
|
291
|
-
## [3.90.0] — 2026-03-14
|
|
292
|
-
|
|
293
|
-
### Added
|
|
294
|
-
- Batch review processing for multiple verdict files: review-batch-mode
|
|
295
|
-
- Finding trend analysis across historical reports: finding-trend-analysis
|
|
296
|
-
- Automatic content-based finding tagging: finding-auto-tag
|
|
297
|
-
- Webhook notification configuration and preview: review-webhook-notify
|
|
298
|
-
- Evidence collection with source code snippets: finding-evidence-collect
|
|
299
|
-
- Compliance gate with configurable policies: review-compliance-gate
|
|
300
|
-
- Finding resolution tracker with sync and status updates: finding-resolution-tracker
|
|
301
|
-
- Threshold tuning suggestions based on historical data: review-threshold-tune
|
|
302
|
-
- Finding cluster grouping by rule prefix: finding-cluster-group
|
|
303
|
-
|
|
304
|
-
## [3.89.0] — 2026-03-14
|
|
305
|
-
|
|
306
|
-
### Added
|
|
307
|
-
- Review scope limiter to filter findings by prefix or severity: review-scope-limit
|
|
308
|
-
- Finding regression check comparing current vs baseline verdicts: finding-regression-check
|
|
309
|
-
- Finding fix validation to verify patches and estimate effort: finding-fix-validation
|
|
310
|
-
- Dashboard data generator from verdict reports: review-dashboard-data
|
|
311
|
-
- Finding category mapping with keyword-based classification: finding-category-map
|
|
312
|
-
- Deduplicated findings report with occurrence counts: finding-dedup-report
|
|
313
|
-
- Review performance profiler with judge and source metrics: review-perf-profile
|
|
314
|
-
- False positive tracking log with add/remove/check actions: finding-false-positive-log
|
|
315
|
-
- Review guardrails for enforcing quality gates (no-critical, min-score, max-findings): review-guardrail
|
|
316
|
-
|
|
317
|
-
## [3.88.0] — 2026-03-14
|
|
318
|
-
|
|
319
|
-
### Added
|
|
320
|
-
- Dependency tree: finding-dependency-tree (visualize finding dependency relationships)
|
|
321
|
-
- CI integration: review-ci-integration (generate CI pipeline configuration)
|
|
322
|
-
- Comparative review: review-comparative (compare two verdict reports side by side)
|
|
323
|
-
- Suppression audit: finding-suppression-audit (audit suppressed/ignored findings)
|
|
324
|
-
- Custom rules: review-custom-rule (create and manage custom review rules)
|
|
325
|
-
- Notifications: review-notification (configure review notification settings)
|
|
326
|
-
- Age analysis: finding-age-analysis (analyze finding age and lifecycle)
|
|
327
|
-
- Template export: review-template-export (export review templates for reuse)
|
|
328
|
-
- Correlation: finding-correlation (find correlations between findings across reports)
|
|
329
|
-
|
|
330
|
-
### Tests
|
|
331
|
-
- All 2,267 tests passing (0 failures)
|
|
332
|
-
|
|
333
|
-
## [3.87.0] — 2026-03-14
|
|
334
|
-
|
|
335
|
-
### Added
|
|
336
|
-
- Code smell: finding-code-smell (detect code-smell indicators among findings)
|
|
337
|
-
- Related rules: finding-related-rules (find related rules for a finding)
|
|
338
|
-
- Token budget: review-token-budget (estimate and manage token budget usage)
|
|
339
|
-
- Plugin list: review-plugin-list (list available and active plugins)
|
|
340
|
-
- Owner assign: finding-owner-assign (assign finding owners based on rules)
|
|
341
|
-
- Lock file: review-lock-file (analyze lock files for security issues)
|
|
342
|
-
- Pattern library: finding-pattern-library (manage finding pattern library)
|
|
343
|
-
- Status badge: review-status-badge (generate status badges for review results)
|
|
344
|
-
- Rule explain: finding-rule-explain (explain rules in detail with examples)
|
|
345
|
-
|
|
346
|
-
### Tests
|
|
347
|
-
- All 2,267 tests passing (0 failures)
|
|
348
|
-
|
|
349
|
-
## [3.86.0] — 2026-03-14
|
|
350
|
-
|
|
351
|
-
### Added
|
|
352
|
-
- Ignore pattern: review-ignore-pattern (manage review ignore patterns)
|
|
353
|
-
- Quality gate: finding-quality-gate (enforce quality gates on findings)
|
|
354
|
-
- Reachability: finding-reachability (analyze finding reachability)
|
|
355
|
-
- Merge check: review-merge-check (pre-merge review validation)
|
|
356
|
-
- Workspace scan: review-workspace-scan (scan workspace for reviewable files)
|
|
357
|
-
- Context window: finding-context-window (show findings with code context)
|
|
358
|
-
- Severity dist: finding-severity-dist (severity distribution analysis)
|
|
359
|
-
- Report merge: review-report-merge (merge multiple verdict reports)
|
|
360
|
-
- Plugin config: review-plugin-config (manage plugin configuration)
|
|
361
|
-
|
|
362
|
-
## [3.85.0] — 2026-03-14
|
|
363
|
-
|
|
364
|
-
### Added
|
|
365
|
-
- Dependency risk: finding-dependency-risk (assess dependency risk levels)
|
|
366
|
-
- PR template: review-pr-template (generate PR templates from findings)
|
|
367
|
-
- Security hotspot: finding-security-hotspot (identify security-sensitive code)
|
|
368
|
-
- Suppression log: finding-suppression-log (log and track suppressed findings)
|
|
369
|
-
- Diff highlight: review-diff-highlight (highlight review differences)
|
|
370
|
-
- CVE lookup: finding-cve-lookup (extract CVE references from findings)
|
|
371
|
-
- Batch run: review-batch-run (run batch review on multiple files)
|
|
372
|
-
- Output filter: review-output-filter (filter and transform review output)
|
|
373
|
-
- Timeline view: finding-timeline-view (show findings on a timeline)
|
|
374
|
-
|
|
375
|
-
## [3.84.0] — 2026-03-14
|
|
376
|
-
|
|
377
|
-
### Added
|
|
378
|
-
- Trend report: finding-trend-report (generate trend reports from historical findings)
|
|
379
|
-
- Commit hook: review-commit-hook (install/manage git commit hooks for reviews)
|
|
380
|
-
- Noise filter: finding-noise-filter (filter out noisy/low-value findings)
|
|
381
|
-
- Fix priority: finding-fix-priority (prioritize findings for fixing by impact)
|
|
382
|
-
- Quota check: review-quota-check (check review quotas and rate limits)
|
|
383
|
-
- Cluster analysis: finding-cluster-analysis (cluster findings by similarity)
|
|
384
|
-
- Session save: review-session-save (save and restore review sessions)
|
|
385
|
-
- Evidence chain: finding-evidence-chain (build evidence chains across findings)
|
|
386
|
-
- File complexity: review-file-complexity (analyze file complexity metrics)
|
|
387
|
-
|
|
388
|
-
## [3.83.0] — 2026-03-14
|
|
389
|
-
|
|
390
|
-
### Added
|
|
391
|
-
- Finding link: review-finding-link (link related findings together)
|
|
392
|
-
- Team assign: review-team-assign (assign findings to team members)
|
|
393
|
-
- Compare runs: finding-compare-runs (compare findings across runs)
|
|
394
|
-
- Skip list: review-skip-list (manage review skip list)
|
|
395
|
-
- Hotfix suggest: finding-hotfix-suggest (suggest quick hotfixes)
|
|
396
|
-
- Approval gate: review-approval-gate (configurable quality gates)
|
|
397
|
-
- Changelog entry: review-changelog-entry (generate changelog from findings)
|
|
398
|
-
- Branch compare: review-branch-compare (compare reviews between branches)
|
|
399
|
-
- Category stats: finding-category-stats (category statistics)
|
|
400
|
-
|
|
401
|
-
## [3.82.0] — 2026-03-14
|
|
402
|
-
|
|
403
|
-
### Added
|
|
404
|
-
- Scope lock: review-scope-lock (lock review scope to files/directories)
|
|
405
|
-
- Duplicate rule: finding-duplicate-rule (detect duplicate/overlapping rules)
|
|
406
|
-
- Watch mode: review-watch-mode (watch files and auto-trigger reviews)
|
|
407
|
-
- Export PDF: review-export-pdf (export results as PDF-ready markdown)
|
|
408
|
-
- Line blame: finding-line-blame (map findings to git blame)
|
|
409
|
-
- Age tracker: finding-age-tracker (track finding ages over time)
|
|
410
|
-
- Parallel files: review-parallel-files (batch files for parallel review)
|
|
411
|
-
- Summary digest: finding-summary-digest (concise finding digests)
|
|
412
|
-
- Code owner: review-code-owner (map findings to CODEOWNERS entries)
|
|
413
|
-
|
|
414
|
-
## [3.81.0] — 2026-03-14
|
|
415
|
-
|
|
416
|
-
### Added
|
|
417
|
-
- Dependency graph: review-dependency-graph (visualize finding relationships)
|
|
418
|
-
- Pattern match: finding-pattern-match (custom pattern matching for findings)
|
|
419
|
-
- Diff stats: review-diff-stats (git diff statistics for reviews)
|
|
420
|
-
- CWE map: finding-cwe-map (map findings to CWE identifiers)
|
|
421
|
-
- Exclude vendor: review-exclude-vendor (exclude vendor/third-party code)
|
|
422
|
-
- Risk matrix: finding-risk-matrix (generate risk matrices from findings)
|
|
423
|
-
- File stats: review-file-stats (per-file review statistics)
|
|
424
|
-
- False neg check: finding-false-neg-check (check for potential false negatives)
|
|
425
|
-
- Rule filter: review-rule-filter (filter review results by rule criteria)
|
|
426
|
-
|
|
427
|
-
## [3.80.0] — 2026-03-14
|
|
428
|
-
|
|
429
|
-
### Added
|
|
430
|
-
- Blame map: review-blame-map (map findings to git blame authors)
|
|
431
|
-
- Autofix preview: finding-autofix-preview (preview patches before applying)
|
|
432
|
-
- Config diff: review-config-diff (diff two review configurations)
|
|
433
|
-
- Severity trend: finding-severity-trend (track severity trends over time)
|
|
434
|
-
- Batch files: review-batch-files (batch-review multiple files)
|
|
435
|
-
- Context expand: finding-context-expand (expand finding context with source)
|
|
436
|
-
- Output format: review-output-format (configure and manage output formats)
|
|
437
|
-
- Merge results: finding-merge-results (merge results from multiple runs)
|
|
438
|
-
|
|
439
|
-
## [3.79.0] — 2026-03-14
|
|
440
|
-
|
|
441
|
-
### Added
|
|
442
|
-
- Group by: finding-group-by (group findings by category/severity/file)
|
|
443
|
-
- Diff highlight: finding-diff-highlight (highlight diff regions related to findings)
|
|
444
|
-
- Fix verify: finding-fix-verify (verify fixes resolve findings)
|
|
445
|
-
- Custom judges: review-custom-judge (register and manage custom judges)
|
|
446
|
-
- Prioritize: finding-prioritize (prioritize findings by business impact)
|
|
447
|
-
- Annotations: review-annotation (add annotations to review results)
|
|
448
|
-
- Multi-repo: review-multi-repo (review across multiple repositories)
|
|
449
|
-
- Finding trace: finding-trace (trace findings to origin commits)
|
|
450
|
-
- Preset save: review-preset-save (save and load review preset configurations)
|
|
451
|
-
|
|
452
|
-
## [3.78.0] — 2026-03-14
|
|
453
|
-
|
|
454
|
-
### Added
|
|
455
|
-
- File filtering: review-file-filter (filter files for review inclusion/exclusion)
|
|
456
|
-
- Dependency check: finding-dependency-check (check dependency-related findings)
|
|
457
|
-
- Incremental review: review-incremental (review only changed files since last review)
|
|
458
|
-
- Severity histogram: finding-severity-histogram (visualize severity distribution)
|
|
459
|
-
- Plugin management: review-plugin-manage (manage review plugins and extensions)
|
|
460
|
-
- Cross-file dedup: finding-dedup-cross-file (deduplicate findings across result files)
|
|
461
|
-
- Progress tracking: review-progress-bar (track and display review progress)
|
|
462
|
-
- Auto-labeling: finding-auto-label (auto-label findings based on content analysis)
|
|
463
|
-
|
|
464
|
-
## [3.77.0] — 2026-03-14
|
|
465
|
-
|
|
466
|
-
### Added
|
|
467
|
-
- Auto-merge: review-auto-merge (auto-merge reviews passing all checks)
|
|
468
|
-
- Finding correlation: finding-correlate (correlate related findings across files)
|
|
469
|
-
- Dry run: review-dry-run (simulate reviews without persisting results)
|
|
470
|
-
- Suppress patterns: finding-suppress-pattern (suppress findings by glob pattern)
|
|
471
|
-
- Cache management: review-cache-clear (clear review caches selectively)
|
|
472
|
-
- Impact scoring: finding-impact-score (score findings by estimated impact)
|
|
473
|
-
- Compliance checks: review-compliance-check (OWASP/CWE compliance mapping)
|
|
474
|
-
- Root cause analysis: finding-root-cause (identify root causes of recurring findings)
|
|
475
|
-
|
|
476
|
-
## [3.76.0] — 2026-03-14
|
|
477
|
-
|
|
478
|
-
### Added
|
|
479
|
-
- Finding trends: finding-trend (show finding trends over time)
|
|
480
|
-
- Code snippets: finding-snippet (extract code snippets from findings with context)
|
|
481
|
-
- Environment check: review-env-check (verify review environment prerequisites)
|
|
482
|
-
- Batch resolve: finding-batch-resolve (resolve multiple findings in bulk)
|
|
483
|
-
- CI/CD integration test: review-integration-test (validate CI/CD integration)
|
|
484
|
-
- Health check: review-health-check (diagnose review system health)
|
|
485
|
-
- Age report: finding-age-report (report on finding ages and staleness)
|
|
486
|
-
- Rule stats: review-rule-stats (per-rule statistics across reviews)
|
|
487
|
-
- Parallel diff: review-parallel-diff (review multiple diff hunks)
|
|
488
|
-
|
|
489
|
-
## [3.75.0] — 2026-03-14
|
|
490
|
-
|
|
491
|
-
### Added
|
|
492
|
-
- Review checklists: review-checklist (manage pre/post-review checklists)
|
|
493
|
-
- Finding categories: finding-category (categorize findings into custom groups)
|
|
494
|
-
- Review locking: review-lock (lock reviews to prevent re-runs)
|
|
495
|
-
- Priority queue: finding-priority-queue (queue findings by priority for triage)
|
|
496
|
-
- Diff annotation: review-diff-annotate (annotate diff hunks with findings)
|
|
497
|
-
- Remediation plans: finding-remediation-plan (generate remediation plans from findings)
|
|
498
|
-
- Config validation: review-config-validate (validate review configuration files)
|
|
499
|
-
- Rate limiting: review-rate-limit (control review execution frequency)
|
|
500
|
-
|
|
501
|
-
## [3.74.0] — 2026-03-14
|
|
502
|
-
|
|
503
|
-
### Added
|
|
504
|
-
- Confidence filtering: finding-confidence-filter (filter findings by confidence level)
|
|
505
|
-
- Rule skipping: review-skip-rule (quick skip/disable specific rules)
|
|
506
|
-
- Review notes: review-note (attach notes to reviews)
|
|
507
|
-
- CSV export: finding-export-csv (export findings as CSV)
|
|
508
|
-
- Timeline: review-timeline (show review activity timeline)
|
|
509
|
-
- Snapshot diff: review-snapshot-diff (diff between review snapshots)
|
|
510
|
-
- Resolution tracking: finding-resolution (track finding resolution status)
|
|
511
|
-
- Review ownership: review-owner (assign review ownership to team members)
|
|
512
|
-
|
|
513
|
-
## [3.73.0] — 2026-03-14
|
|
514
|
-
|
|
515
|
-
### Added
|
|
516
|
-
- False positive management: finding-false-positive (track and manage false positive findings)
|
|
517
|
-
- Review sessions: review-session (group reviews into named sessions)
|
|
518
|
-
- Bulk actions: review-bulk-action (dismiss, suppress, approve findings in bulk)
|
|
519
|
-
- Review retry: review-retry (retry failed or incomplete reviews)
|
|
520
|
-
- Review depth: review-depth (control review depth — shallow, normal, deep)
|
|
521
|
-
- Finding links: finding-link (link related findings across files)
|
|
522
|
-
- Version comparison: review-compare-version (compare results between code versions)
|
|
523
|
-
- Email summaries: review-summary-email (generate email-ready review summaries)
|
|
524
|
-
|
|
525
|
-
## [3.72.0] — 2026-03-14
|
|
526
|
-
|
|
527
|
-
### Added
|
|
528
|
-
- Approval workflows: review-approval (request, approve, reject review results)
|
|
529
|
-
- Severity customization: finding-severity-override (per-project severity overrides)
|
|
530
|
-
- Config sharing: review-config-export (export and import review configurations)
|
|
531
|
-
- PR integration: review-pr-comment (generate PR comment summaries from reviews)
|
|
532
|
-
- Path management: review-ignore-path (manage path ignore lists for reviews)
|
|
533
|
-
- Deduplication: finding-deduplicate (detect and deduplicate similar findings)
|
|
534
|
-
- Score tracking: review-score-history (track review scores over time)
|
|
535
|
-
- Feedback: review-feedback (collect user feedback on review quality)
|
|
536
|
-
|
|
537
|
-
## [3.71.0] — 2026-03-14
|
|
538
|
-
|
|
539
|
-
### Added
|
|
540
|
-
- Auto-fix: finding-auto-fix (auto-generate fix suggestions for common patterns)
|
|
541
|
-
- History: review-history-search (search through past review history)
|
|
542
|
-
- Language insights: review-language-stats (language-specific statistics)
|
|
543
|
-
- Coverage: review-coverage-map (map which files have been reviewed)
|
|
544
|
-
- Config management: review-rollback (roll back review config to a previous state)
|
|
545
|
-
- Onboarding: review-onboard (guided onboarding for new team members)
|
|
546
|
-
- Batch review: review-parallel (discover and queue multiple files for review)
|
|
547
|
-
- Context enrichment: finding-context (enrich findings with surrounding code)
|
|
548
|
-
|
|
549
|
-
## [3.70.0] — 2026-03-14
|
|
550
|
-
|
|
551
|
-
### Added
|
|
552
|
-
- Organization: review-tag (tag reviews for filtering), review-archive (archive and retrieve old results)
|
|
553
|
-
- Impact analysis: finding-impact (estimate business impact of findings)
|
|
554
|
-
- Allow-listing: review-whitelist (allow-list safe patterns that shouldn't be flagged)
|
|
555
|
-
- Customization: review-custom-prompt (customize review prompts for project needs)
|
|
556
|
-
- Context: review-diff-context (show diff hunks with surrounding file context)
|
|
557
|
-
- CI integration: review-ci-status (check CI pipeline review readiness)
|
|
558
|
-
- Team metrics: review-team-summary (aggregate team review metrics)
|
|
559
|
-
|
|
560
|
-
## [3.69.0] — 2026-03-14
|
|
561
|
-
|
|
562
|
-
### Added
|
|
563
|
-
- Daily workflow: review-standup (daily standup-ready summaries), review-changelog-gen (auto-generate changelog from findings)
|
|
564
|
-
- Fix tracking: finding-fix-rate (track resolution speed over time), finding-recurrence (detect findings that keep reappearing)
|
|
565
|
-
- Progress: review-milestone (track and celebrate review milestones), review-benchmark-self (benchmark against your own history)
|
|
566
|
-
- Risk & reporting: review-risk-score (weighted aggregate project risk), review-report-pdf (generate printable markdown review reports)
|
|
567
|
-
|
|
568
|
-
## [3.68.0] — 2026-03-14
|
|
569
|
-
|
|
570
|
-
### Added
|
|
571
|
-
- Engagement: review-streak (track consecutive clean review streaks with achievements), review-badge (generate status badges for project READMEs)
|
|
572
|
-
- Pattern analysis: finding-cluster (cluster related findings to reveal systemic AI patterns), finding-hotspot (identify areas with highest finding density)
|
|
573
|
-
- Compliance: review-audit-log (comprehensive local audit log for all review actions)
|
|
574
|
-
- Experimentation: review-sandbox (test review configs safely without affecting real setup), review-ab-test (A/B test review configurations)
|
|
575
|
-
- Onboarding: review-integration (verify CI/CD, IDE, and hook integrations are connected)
|
|
576
|
-
|
|
577
|
-
## [3.67.0] — 2026-03-14
|
|
578
|
-
|
|
579
|
-
### Added
|
|
580
|
-
- Tracking: finding-age (track how long findings remain unresolved), finding-rank (rank findings by business impact and fix effort)
|
|
581
|
-
- Insights: review-dashboard (terminal-based review health dashboard with ASCII charts), review-diff-summary (concise PR-ready change summaries)
|
|
582
|
-
- Governance: config-lint (lint and validate .judgesrc configuration), review-quota (local review usage quota tracking)
|
|
583
|
-
- Resilience: review-offline (offline mode support for air-gapped environments), review-notify (configurable local notification rules)
|
|
584
|
-
|
|
585
|
-
## [3.66.0] — 2026-03-14
|
|
586
|
-
|
|
587
|
-
### Added
|
|
588
|
-
- Verification: fix-verify (confirm fixes resolved findings), review-comment (generate inline code comments from findings)
|
|
589
|
-
- Tracking: finding-timeline (track finding trends across commits), review-schedule (configure scheduled review cadences)
|
|
590
|
-
- Discovery: rule-catalog (browse and search available rules), review-scope (define review scope boundaries)
|
|
591
|
-
- Export: review-export (unified export to CSV, markdown, HTML), setup-wizard (guided setup for new users/teams)
|
|
592
|
-
|
|
593
|
-
## [3.65.0] — 2026-03-14
|
|
594
|
-
|
|
595
|
-
### Added
|
|
596
|
-
- Integrations: review-webhook (webhook notifications for CI/CD), review-annotate (GitHub-compatible PR annotations), review-merge (merge multiple review results)
|
|
597
|
-
- Governance: finding-suppress (suppress findings with expiration), judge-config (per-judge sensitivity overrides), review-checkpoint (save/restore review state)
|
|
598
|
-
- Analysis: review-filter (advanced multi-criteria finding filter), code-health (overall codebase health score with letter grades)
|
|
599
|
-
|
|
600
|
-
## [3.64.0] — 2026-03-14
|
|
601
|
-
|
|
602
|
-
### Added
|
|
603
|
-
- Personalization: review-profile (per-developer preferences), review-template (reusable workflow templates), review-stats (personal statistics and improvement trends)
|
|
604
|
-
- Automation: auto-approve (auto-approve below threshold), fix-suggest (concrete fix suggestions with OWASP references)
|
|
605
|
-
- Intelligence: diff-explain (explain why changes were flagged), review-priority (smart prioritization by context/impact), multi-lang-review (cross-language consistency checking)
|
|
606
|
-
|
|
607
|
-
## [3.63.0] — 2026-03-14
|
|
608
|
-
|
|
609
|
-
### Added
|
|
610
|
-
- Workflow efficiency: review-cache (cache results for unchanged files), ignore-list (configurable file/rule ignore patterns), incremental-review (only review changed files since last run)
|
|
611
|
-
- Team governance: team-config (shared team-level configuration), review-log (structured audit log of review actions)
|
|
612
|
-
- Developer productivity: finding-group (group related findings into clusters), review-summary (PR-ready summary with metrics), rule-test (test custom rules against sample code)
|
|
613
|
-
|
|
614
|
-
## [3.62.0] — 2026-03-14
|
|
615
|
-
|
|
616
|
-
### Added
|
|
617
|
-
- CI/CD integration: review-gate (quality gate with thresholds), diff-review (review only changed lines), batch-review (parallel multi-file review)
|
|
618
|
-
- Customization: custom-rule (user-defined rules), severity-tune (auto-calibrate severity levels)
|
|
619
|
-
- Insights: review-compare (compare review runs), review-explain (plain-language explanations), focus-area (risk-based file prioritization)
|
|
620
|
-
|
|
621
|
-
## [3.61.0] — 2026-03-14
|
|
622
|
-
|
|
623
|
-
### Added
|
|
624
|
-
- Trust & transparency: quick-check (sub-100ms pattern review), merge-verdict (single MERGE/HOLD decision), review-handoff (structured human escalation)
|
|
625
|
-
- Evidence & provenance: evidence-chain (traversable reasoning chains), ai-provenance (AI-generated code detection), review-receipt (cryptographic attestation)
|
|
626
|
-
- CI/CD depth: review-contract (versionable review policy), blame-review (git-blame finding attribution)
|
|
627
|
-
|
|
628
|
-
## [3.60.0] — 2026-03-14
|
|
629
|
-
|
|
630
|
-
### Added
|
|
631
|
-
- **hallucination-detect** — Find fabricated API calls, non-existent methods, invented config options, and undeclared env vars
|
|
632
|
-
- **context-blind** — Flag when AI reinvents utilities already present in the codebase (duplicate functions, redundant validators)
|
|
633
|
-
- **over-abstraction** — Detect unnecessary abstractions: single-impl abstract classes, barely-used generics, delegation-only wrappers
|
|
634
|
-
- **stale-pattern** — Identify outdated idioms when modern alternatives exist: callback→async, var→const, deprecated APIs, legacy React
|
|
635
|
-
- **security-theater** — Detect security-looking code with no protection: weak hashing, unverified CSRF, wildcard CORS, hardcoded keys
|
|
636
|
-
- **review-digest** — Generate concise role-appropriate review summaries with risk scores, hot files, and action items
|
|
637
|
-
- **adoption-track** — Measure team-level Judges adoption metrics: config completeness, suppression rates, cold spots
|
|
638
|
-
- **finding-budget** — Manage finding volume per PR to prevent alert fatigue with risk-based prioritization and graduated disclosure
|
|
639
|
-
|
|
640
|
-
## [3.59.0] — 2025-07-25
|
|
641
|
-
|
|
642
|
-
### Added
|
|
643
|
-
- **logic-lint** — Detect common logic errors AI generates: tautological comparisons, off-by-one loops, constant conditions, invalid typeof
|
|
644
|
-
- **phantom-import** — Find hallucinated imports, non-existent modules, and wrong export names AI invents
|
|
645
|
-
- **example-leak** — Detect AI-copied placeholder URLs, example data, tutorial names, and stub code left in production
|
|
646
|
-
- **completion-audit** — Verify AI code completeness: unmatched brackets, truncation markers, TODO stubs, ellipsis placeholders
|
|
647
|
-
- **spec-conform** — Auto-detect project conventions (semicolons, quotes, indent, naming) and flag AI-generated deviations
|
|
648
|
-
- **cross-file-consistency** — Verify naming, error handling, import styles, and return types are consistent across files
|
|
649
|
-
- **api-misuse** — Detect incorrect API usage: async forEach, unprotected JSON.parse, fetch without status check, Promise anti-patterns
|
|
650
|
-
- **review-focus** — Prioritize human review attention by file risk score (security, payment, DB, complexity, nesting)
|
|
651
|
-
|
|
652
|
-
## [3.58.0] — 2025-07-25
|
|
653
|
-
|
|
654
|
-
### Added
|
|
655
|
-
- **dead-code-detect** — Find unreachable code, unused exports, orphaned functions, and dead branches via cross-file analysis
|
|
656
|
-
- **async-safety** — Detect async anti-patterns: fire-and-forget promises, .then() without .catch(), await in loops, async in timers
|
|
657
|
-
- **input-guard** — Verify input validation on route handlers, SQL/command injection, file upload limits, ReDoS, open redirects
|
|
658
|
-
- **clone-detect** — Find duplicated code blocks and functions using normalized comparison across files
|
|
659
|
-
- **contract-verify** — Check API spec vs implementation alignment: unimplemented routes, undocumented statuses, mixed versions
|
|
660
|
-
- **encoding-safety** — Detect encoding/serialization hazards: eval(), unsafe deserialization, innerHTML, RegExp injection
|
|
661
|
-
- **assertion-density** — Audit defensive checks: missing preconditions, division without zero-check, switch without default, unchecked Map.get
|
|
662
|
-
- **state-integrity** — Validate state machine correctness: incomplete enum handling, impossible boolean combos, missing error states
|
|
663
|
-
|
|
664
|
-
## [3.57.0] — 2025-07-25
|
|
665
|
-
|
|
666
|
-
### Added
|
|
667
|
-
- **comment-drift** — Detect stale, misleading, or contradictory inline comments (TODO without tickets, renamed variable refs, commented-out code, tautological comments, outdated @param names)
|
|
668
|
-
- **timeout-audit** — Trace timeout and deadline propagation gaps (missing HTTP timeouts, hardcoded values, DB queries, Promise.all guards, downstream > upstream mismatches)
|
|
669
|
-
- **cache-audit** — Audit cache invalidation correctness, TTL consistency, and stampede risk (missing TTL, unbounded caches, write-through gaps, suspicious TTL values)
|
|
670
|
-
- **idempotency-audit** — Verify retried/webhook operations are safely idempotent (INSERT without conflict handling, counter mutation in retries, notification dedup, payment keys)
|
|
671
|
-
- **type-boundary** — Check type safety at serialization boundaries (JSON.parse without validation, unchecked `as` casts, ts-ignore at boundaries, `any` at API boundaries)
|
|
672
|
-
- **event-leak** — Detect orphaned event listeners, unsubscribed observables, dangling async handles (addEventListener without cleanup, setInterval without clear, useEffect leaks)
|
|
673
|
-
- **privilege-path** — Model authorization flows to find privilege-escalation paths (routes without auth, IDOR patterns, JWT decode without verify, CORS misconfig)
|
|
674
|
-
- **error-ux** — Audit user-facing error messages for actionability and safety (generic messages, stack trace leaks, internal path exposure, missing remediation hints)
|
|
675
|
-
|
|
676
|
-
## [3.56.0] — 2025-07-25
|
|
677
|
-
|
|
678
|
-
### Added
|
|
679
|
-
- **api-versioning-audit** — Detect breaking changes and versioning policy violations across API surfaces
|
|
680
|
-
- **ownership-map** — Generate and validate CODEOWNERS coverage, stale owners, and orphaned paths
|
|
681
|
-
- **retry-pattern-audit** — Audit retry, backoff, and circuit-breaker patterns for correctness
|
|
682
|
-
- **error-taxonomy** — Classify and standardize error codes, messages, and hierarchies
|
|
683
|
-
- **boundary-enforce** — Validate architectural module boundaries and import rules
|
|
684
|
-
- **log-quality** — Assess logging hygiene: structured format consistency, PII leaks, level correctness
|
|
685
|
-
- **null-safety-audit** — Identify null/undefined dereference risks, missing guards, and inconsistent nullability
|
|
686
|
-
- **test-isolation** — Detect shared mutable state, ordering dependencies, and resource leaks between tests
|
|
687
|
-
|
|
688
|
-
## [3.55.0] — 2025-07-25
|
|
689
|
-
|
|
690
|
-
### Added
|
|
691
|
-
- **commit-hygiene** — Audit commit messages and diff structure for AI-generated code submission quality
|
|
692
|
-
- **deploy-readiness** — Pre-deployment production readiness checklist (health checks, graceful shutdown, env validation, rate limiting, CORS, probes)
|
|
693
|
-
- **rollback-safety** — Detect changes unsafe or impossible to roll back (destructive migrations, API removals, encryption changes)
|
|
694
|
-
- **test-quality** — Score test suites for assertion density, boundary coverage, flakiness patterns, and mutation-testing readiness
|
|
695
|
-
- **build-optimize** — Detect build-time inefficiencies (unused imports, barrel re-exports, dynamic require, circular dependencies)
|
|
696
|
-
- **secret-age** — Credential lifecycle and rotation analysis (hardcoded secrets, missing vault refs, disabled rotation)
|
|
697
|
-
- **observability-gap** — Detect missing instrumentation at critical code paths (silent catches, untraced calls, no heartbeats)
|
|
698
|
-
- **migration-safety** — Validate framework/language migration PRs for compatibility gaps and data-loss risks
|
|
699
|
-
|
|
700
|
-
## [3.54.0] — 2025-07-25
|
|
701
|
-
|
|
702
|
-
### Added
|
|
703
|
-
- **prompt-replay** — Reverse-engineer AI prompts that generated flagged code and suggest improved prompts
|
|
704
|
-
- **review-replay** — Record, export, and replay full evaluation runs as step-by-step walkthroughs
|
|
705
|
-
- **context-inject** — Feed project-specific context (architecture docs, coding standards) into evaluation
|
|
706
|
-
- **habit-tracker** — Track recurring finding patterns per developer/AI-model with improvement suggestions
|
|
707
|
-
- **finding-contest** — Gamified challenge mode for competitive fix sprints with leaderboards
|
|
708
|
-
- **approve-chain** — Multi-stage approval workflows based on finding severity and code sensitivity
|
|
709
|
-
- **snippet-eval** — Evaluate code snippets from clipboard/stdin without project setup (zero-friction entry)
|
|
710
|
-
- **coach-mode** — Interactive teaching mode with real-world breach examples and secure alternatives
|
|
711
|
-
|
|
712
|
-
## [3.53.0] — 2025-07-25
|
|
713
|
-
|
|
714
|
-
### Added
|
|
715
|
-
- **doc-drift** — Detect documentation-to-code drift (@param mismatches, stale @returns, dead doc blocks)
|
|
716
|
-
- **cross-pr-regression** — Track flagged pattern recurrence across PRs (SQL injection, eval, innerHTML, etc.)
|
|
717
|
-
- **code-similarity** — Compare code across files for duplication using line-level and N-gram structural similarity
|
|
718
|
-
- **team-trust** — Aggregate team-wide false-positive/true-positive feedback to build collective trust profiles
|
|
719
|
-
- **exception-consistency** — Detect inconsistent exception handling (empty catch, throw string, mixed strategies)
|
|
720
|
-
- **resource-cleanup** — Validate resource cleanup patterns (file handles, DB connections, timers, streams)
|
|
721
|
-
- **refactor-safety** — Analyze refactoring safety (orphaned imports, deprecated-still-used, dead files)
|
|
722
|
-
- **compliance-weight** — Re-weight finding severity by active compliance frameworks (PCI-DSS, HIPAA, GDPR, SOC2, ISO27001)
|
|
723
|
-
|
|
724
|
-
## [3.52.0] — 2025-07-25
|
|
725
|
-
|
|
726
|
-
### Added
|
|
727
|
-
- **`judges watch-judge`** — Continuously monitor files and auto-evaluate on change (live feedback with configurable polling interval and score threshold; single-pass `--once` mode for CI)
|
|
728
|
-
- **`judges impact-scan`** — Cross-file ripple effect detection (broken imports, unused exports, naming conflicts, dependency chain analysis, fragile API signatures)
|
|
729
|
-
- **`judges model-report`** — AI model scorecard and comparison (track evaluations per model, pass rates, failure categories, trend detection; side-by-side model comparison)
|
|
730
|
-
- **`judges trust-adaptive`** — Adaptive trust scoring for developers and AI models (high-trust actors skip non-critical judges, low-trust get strict evaluation with human escalation)
|
|
731
|
-
- **`judges judge-learn`** — Generate custom judges from feedback (record false positives/negatives, extract patterns, auto-generate detection rules with confidence calibration)
|
|
732
|
-
- **`judges chat-notify`** — Publish findings to Slack, Teams, Discord, or custom webhooks (rich formatting with attachments/embeds, critical mention routing, webhook config stored locally)
|
|
733
|
-
- **`judges design-audit`** — Detect code breaking project conventions (convention adherence, abstraction level, orphaned imports, async pattern consistency, error handling, naming coherence)
|
|
734
|
-
- **`judges remediation-lib`** — Proven fix templates ranked by effectiveness (built-in templates for empty catch, SQL injection, XSS, hardcoded secrets; team voting, auto-apply with rollback)
|
|
735
|
-
|
|
736
|
-
## [3.51.0] — 2025-07-25
|
|
737
|
-
|
|
738
|
-
### Added
|
|
739
|
-
- **`judges ai-output-compare`** — Compare outputs from multiple AI models (divergence detection across complexity, patterns, structure, dependencies; structural similarity score 0-100)
|
|
740
|
-
- **`judges hallucination-score`** — Hallucination risk score (0-100) with 10 weighted signal detectors: suspicious imports, generic naming, TODOs, dead code, tautologies, copy-paste artifacts, magic numbers, empty catch, commented code, empty functions
|
|
741
|
-
- **`judges ai-gate`** — Pre-commit/pre-PR guard blocking AI-generated code below confidence threshold (8 AI detection signals; --block flag for CI exit code 1; report generation to `.judges-ai-gate/`)
|
|
742
|
-
- **`judges ai-pattern-trend`** — Track AI-generated code pattern evolution over time (snapshot capture to `.judges-ai-trend/history.json`; trend arrows for metric changes across snapshots)
|
|
743
|
-
- **`judges test-suggest`** — Test scenario suggestions for AI-generated code (function extraction; 10 suggestion categories: null input, empty input, error path, async error, boundary, type coercion, regex edge case, file IO, state mutation, return consistency)
|
|
744
|
-
- **`judges vendor-lock-detect`** — Vendor-specific API/SDK detection (AWS, Azure, GCP, Vercel, Cloudflare, Firebase, Stripe, Twilio, Docker, MongoDB, PostgreSQL; portability scoring 0-100)
|
|
745
|
-
- **`judges clarity-score`** — Code readability and self-documentation score (naming quality, comment coverage, function length, line length, nesting depth, magic values, style consistency; A-F grading)
|
|
746
|
-
- **`judges arch-audit`** — Architecture quality audit (coupling, separation of concerns, dependency injection, testability, single responsibility, scalability patterns; A-F grading with issue severity)
|
|
747
|
-
|
|
748
|
-
## [3.50.0] — 2025-07-25
|
|
749
|
-
|
|
750
|
-
### Added
|
|
751
|
-
- **`judges secret-scan`** — Scan for hardcoded secrets and API keys (AWS, GitHub, Stripe, Slack, JWT, connection strings; 16 patterns with entropy-based detection)
|
|
752
|
-
- **`judges iac-lint`** — Lint Dockerfiles, Kubernetes manifests, and Helm charts for security misconfigurations (privileged mode, host network, root user, missing resource limits)
|
|
753
|
-
- **`judges pii-scan`** — Detect PII patterns in source code (SSN, credit card with Luhn validation, email, phone, passport, drivers license, PII in logging statements)
|
|
754
|
-
- **`judges api-audit`** — API endpoint security audit (Express, Fastify, Flask, Spring, Django; rate limiting, CORS, authentication, input validation, SQL injection detection)
|
|
755
|
-
- **`judges compliance-map`** — Map findings to compliance frameworks (HIPAA, SOC 2, PCI-DSS v4.0, ISO 27001:2022, NIST 800-53 Rev 5) with cross-walk matrix and gap analysis
|
|
756
|
-
- **`judges perf-compare`** — Before/after performance comparison (loop nesting, allocations, async anti-patterns, Big-O estimation, recursive calls, regex operations)
|
|
757
|
-
- **`judges guided-tour`** — Interactive onboarding tutorials (quick start, CI/CD integration, team adoption tracks with step-by-step guidance and starter .judgesrc generation)
|
|
758
|
-
- **`judges exec-report`** — Executive security dashboard (HTML report with risk posture score, severity distribution, top recurring issues, actionable recommendations)
|
|
759
|
-
|
|
760
|
-
## [3.49.0] — 2026-03-12
|
|
761
|
-
|
|
762
|
-
### Added
|
|
763
|
-
- `judges sbom-export` — Generate CycloneDX Software Bill of Materials from project manifests
|
|
764
|
-
- `judges license-scan` — Dependency license compliance scanning with copyleft/unknown detection
|
|
765
|
-
- `judges test-correlate` — Cross-reference test coverage (lcov/istanbul/cobertura) with security findings
|
|
766
|
-
- `judges predict` — Forecast remediation timelines and regression-prone files via linear regression
|
|
767
|
-
- `judges org-policy` — Organization-wide policy management with per-repo compliance checking
|
|
768
|
-
- `judges incident-response` — Incident response playbook generation and tracking
|
|
769
|
-
- `judges risk-heatmap` — File/directory risk visualization with HTML report output
|
|
770
|
-
- `judges learning-path` — Personalized developer security learning with skill progression tracking
|
|
771
|
-
|
|
772
|
-
## [3.48.0] — 2026-03-12
|
|
773
|
-
|
|
774
|
-
### Added
|
|
775
|
-
- `judges auto-fix` — Automated fix suggestions with 10 fix templates for common vulnerability patterns
|
|
776
|
-
- `judges audit-trail` — Chain-of-custody tracking for findings (created, reviewed, suppressed, resolved, reopened, escalated, voted)
|
|
777
|
-
- `judges pattern-registry` — Team security pattern knowledge repository with built-in and custom patterns
|
|
778
|
-
- `judges security-maturity` — Security posture maturity assessment across 5 dimensions (scanning, finding mgmt, compliance, collaboration, AI readiness)
|
|
779
|
-
- `judges perf-hotspot` — Performance anti-pattern detection (N+1 queries, unbounded collections, sync I/O, string concat loops)
|
|
780
|
-
- `judges doc-gen` — Generate security documentation (policy, remediation guide, team playbook)
|
|
781
|
-
- `judges dep-correlate` — Dependency vulnerability correlation and upgrade priority recommendations
|
|
782
|
-
- `judges judge-author` — Custom judge authoring toolkit (scaffold, validate, test)
|
|
783
|
-
|
|
784
|
-
## [3.47.0] — 2026-03-12
|
|
785
|
-
|
|
786
|
-
### Added
|
|
787
|
-
- **`judges ai-model-trust`** — AI model confidence scoring with LLM source fingerprinting and per-model trust profiles
|
|
788
|
-
- **`judges team-rules-sync`** — Fast team onboarding by applying shared rule templates (security-team, frontend-team, backend-team, etc.)
|
|
789
|
-
- **`judges cost-forecast`** — Security debt cost projections with 30/60/90-day trend forecasting and industry cost-per-finding benchmarks
|
|
790
|
-
- **`judges team-leaderboard`** — Gamified security review engagement tracking with badges, streaks, and team rankings
|
|
791
|
-
- **`judges code-owner-suggest`** — Auto-recommend CODEOWNERS entries based on developer finding resolution history
|
|
792
|
-
- **`judges pr-quality-gate`** — Automated PR pass/fail quality gate with configurable thresholds and decision history
|
|
793
|
-
- **`judges ai-prompt-audit`** — Scan AI-generated code for prompt injection risks (SQL injection, shell injection, SSRF, etc.)
|
|
794
|
-
- **`judges adoption-report`** — Team adoption metrics dashboard with executive summary, trends, and cost savings tracking
|
|
795
|
-
|
|
796
|
-
## [3.46.0] — 2026-03-12
|
|
797
|
-
|
|
798
|
-
### Added
|
|
799
|
-
- **`judges audit-bundle`** — Assembles auditor-ready evidence packages with SOC2/ISO27001 control mapping from local data files
|
|
800
|
-
- **`judges dev-score`** — Developer security growth score tracking with leaderboard and streak tracking
|
|
801
|
-
- **`judges model-risk`** — AI model vulnerability risk profiling for gpt-4o, gpt-4, claude, copilot, cursor with recommended judges
|
|
802
|
-
- **`judges retro`** — Security incident retrospective analysis checking if Judges would have caught a vulnerability at a git commit
|
|
803
|
-
- **`judges config-drift`** — Detects config divergence from org baseline with drift scoring and directory scanning
|
|
804
|
-
- **`judges reg-watch`** — Regulatory standard coverage monitor for OWASP Top 10, CWE Top 25, NIST SSDF
|
|
805
|
-
- **`judges learn`** — Personalized developer learning paths with module catalog, exercises, and progress tracking
|
|
806
|
-
- **`judges generate`** — Secure code template generator with pre-hardened templates for Express, React, Flask, Go, and Node.js
|
|
807
|
-
|
|
808
|
-
## [3.45.0] — 2026-03-12
|
|
809
|
-
|
|
810
|
-
### Added — Intelligence, Collaboration & Analysis (8 features)
|
|
811
|
-
- **Consensus voting** (`judges vote`) — Multi-developer voting on findings with agree/disagree/unsure verdicts; automatic consensus scoring; dispute detection; local `.judges-votes.json` storage
|
|
812
|
-
- **Advanced finding query** (`judges query`) — Complex finding search with filter keys (severity, rule, confidence, has-patch); negation support; saved queries; aggregate grouping
|
|
813
|
-
- **Judge reputation tracking** (`judges judge-reputation`) — Per-judge accuracy and FP rate tracking over time; confidence calibration scoring; trend analysis (improving/stable/declining); flagged judges alert
|
|
814
|
-
- **Finding correlation** (`judges correlate`) — Link related findings and identify root causes; auto-correlate by rule ID and line overlap; manual root-cause records with severity
|
|
815
|
-
- **Periodic digest** (`judges digest`) — Record point-in-time snapshots and generate daily/weekly/monthly digest reports with trend charts and severity distribution
|
|
816
|
-
- **Rule sharing** (`judges rule-share`) — Export/import custom rule configurations as shareable packages; merge rule overrides, disabled rules, and disabled judges into `.judgesrc`
|
|
817
|
-
- **Finding explanation** (`judges explain-finding`) — Rich context for individual findings with category info, common causes, remediation steps, and external references (OWASP, CWE, NIST)
|
|
818
|
-
- **Run comparison** (`judges compare-runs`) — Save evaluation snapshots and compare side by side; shows added/removed findings, severity deltas, and per-rule changes
|
|
819
|
-
|
|
820
|
-
## [3.44.0] — 2026-03-12
|
|
821
|
-
|
|
822
|
-
### Added — Trust, Noise Reduction & Team Adoption (8 features)
|
|
823
|
-
- **Batch FP suppression** (`judges suppress`) — Suppress findings by file glob, rule prefix, severity, or exact rule IDs with full audit trail; supports auto-expiry; `--list` and `--stats`
|
|
824
|
-
- **Rule ownership** (`judges rule-owner`) — Map rules/categories to team owners with contact info and expertise levels; `--find` resolves ownership for any rule ID via prefix matching
|
|
825
|
-
- **Noise advisor** (`judges noise-advisor`) — Analyze rule FP rates by cross-referencing suppressions, false-negative feedback, and confidence scores; recommends disable/raise-threshold/lower-severity actions
|
|
826
|
-
- **Human review queue** (`judges review-queue`) — Surface low-confidence findings needing human judgment; route to experts via rule-owner integration; record verdicts (approve/dismiss/escalate)
|
|
827
|
-
- **Report templates** (`judges report-template`) — 6 predefined templates (exec-summary, dev-detail, compliance, pr-review, trend, onboarding) targeting different audiences; `--output` to write files
|
|
828
|
-
- **Finding burndown** (`judges burndown`) — Track resolution progress over time with visual chart; `--set-target` and `--trajectory` for ETA analysis; local `.judges-burndown.json` storage
|
|
829
|
-
- **Team knowledge base** (`judges kb`) — Store team decisions about rules (not-applicable, accepted-risk, deferred, exception, custom-guidance); searchable with expiry; approved-by audit trail
|
|
830
|
-
- **Judge recommendations** (`judges recommend`) — Analyze project stack (16 framework detectors) and recommend relevant judges; shows coverage estimates and reasons
|
|
831
|
-
|
|
832
|
-
## [3.43.0] — 2026-03-12
|
|
833
|
-
|
|
834
|
-
### Added — Workflow Integration & Compliance (9 features)
|
|
835
|
-
- **CI template generator** (`judges ci-template`) — Generate CI pipeline templates for GitHub Actions, GitLab CI, Azure Pipelines, Bitbucket Pipelines, and CircleCI; auto-detect platform from repo structure; `--write` to create file directly
|
|
836
|
-
- **Policy audit trail** (`judges policy-audit`) — SOC2/ISO27001 compliance audit trail with SHA-256 policy snapshots; records enabled/disabled judges, rules, overrides, and git commit; `--diff` compares policy changes; `--export` for external systems
|
|
837
|
-
- **Remediation guides** (`judges remediation`) — 10 step-by-step fix guides for common finding categories (SQL injection, XSS, command injection, auth, crypto, SSRF, performance, error handling, concurrency, IaC); before/after code examples; OWASP/CWE references
|
|
838
|
-
- **Git hook installation** (`judges hook-install`) — Install pre-commit/pre-push hooks with direct `.git/hooks` or Husky support; `JUDGES_SKIP_HOOK` env var to bypass; timeout protection; `--uninstall` support
|
|
839
|
-
- **False-negative tracking** (`judges false-negatives`) — Local feedback database for tracking missed findings; `--add` with file/line/category/severity/description; `--resolve`; stats by category, severity, and language
|
|
840
|
-
- **Finding assignment** (`judges assign`) — Assign findings to team members with local database; severity filtering; `--resolve` workflow; `--stats` for workload analysis
|
|
841
|
-
- **Ticket sync** (`judges ticket-sync`) — Create tickets from findings in Jira, Linear, or GitHub Issues; severity filtering; `--dry-run` preview; supports `JUDGES_TICKET_TOKEN` env var
|
|
842
|
-
- **SLA tracking** (`judges sla-track`) — Define response-time SLAs per severity and track violations; `--check` for violation detection; `--set-policy` to customize thresholds; local `.judges-sla.json` storage
|
|
843
|
-
- **Regression alerting** (`judges regression-alert`) — Baseline snapshot comparison to detect quality regressions; `--save` to capture baseline; `--check` to compare; `--fail-on-regression` for CI gating; severity and rule-level delta reporting
|
|
844
|
-
|
|
845
|
-
## [3.42.0] — 2026-03-12
|
|
846
|
-
|
|
847
|
-
### Added — CI Integration & Review UX (10 features)
|
|
848
|
-
- **SARIF upload to GitHub Code Scanning** (`judges upload`) — Upload SARIF results directly to GitHub's Code Scanning API; auto-detects git ref, SHA, and repo; supports `GITHUB_TOKEN` env var; gzip+base64 encoding
|
|
849
|
-
- **Smart judge selection** (`judges smart-select`) — Auto-select relevant judges based on file language and content signals; reduces noise by skipping irrelevant judges (e.g., IaC judge on `.tsx` files); exports `getRelevantJudges()` for programmatic use
|
|
850
|
-
- **PR summary comment** (`judges pr-summary`) — Post a top-level PR comment with verdict, score, per-judge breakdown, and top findings; updates in-place on subsequent runs via comment marker; supports `--sarif` and `--json` input
|
|
851
|
-
- **Performance profiling** (`judges profile`) — Track evaluation time per judge with `JUDGES_PROFILE=1`; view timing reports with slow-judge warnings; bar chart visualization in terminal
|
|
852
|
-
- **Finding grouping** (`judges group`) — Group findings by category, severity, file, rule, or judge for digest-style review; automatic category classification from rule ID prefixes
|
|
853
|
-
- **Diff-only evaluation** (`judges diff-only`) — Filter findings to only changed lines in a PR; parses unified diff output; supports `--base <ref>` and `--diff-file`; dramatically reduces CI review noise
|
|
854
|
-
- **Confidence auto-triage** (`judges auto-triage`) — Auto-suppress findings below configurable confidence threshold; per-severity threshold overrides; always-keep and always-suppress rule lists; audit trail preserved
|
|
855
|
-
- **Config validation** (`judges validate-config`) — Validate `.judgesrc` against known fields with Levenshtein-based typo suggestions; checks severity, format, concurrency, quality gate, and notification config; `--strict` mode
|
|
856
|
-
- **Rule coverage map** (`judges coverage-map`) — Visual matrix of which rules apply to which languages; stats by language and judge; `--languages` filter; coverage gap identification
|
|
857
|
-
- **Eval cache warming** (`judges warm-cache`) — Pre-populate disk cache with file hashes for faster CI runs; supports `--max`, `--root`, `--extensions`; skips already-warm files
|
|
858
|
-
|
|
859
|
-
### Tests
|
|
860
|
-
- 2,267 tests passing (1,082 main + 1,185 additional suites), 0 failures
|
|
861
|
-
|
|
862
|
-
## [3.41.0] — 2026-03-12
|
|
863
|
-
|
|
864
|
-
### Added — Adoption Gap Closure (12 features)
|
|
865
|
-
- **Webhook notification system** (`judges notify`) — Send evaluation results to Slack, Teams, or generic webhook endpoints; configurable via `.judgesrc` `notifications.channels[]`; HTTPS-only enforcement
|
|
866
|
-
- **Auto-fix PR creation** (`judges fix-pr`) — Evaluate files, apply auto-fix patches on a new git branch, push, and create a GitHub PR via `gh` CLI or REST API; supports `--dry-run`, `--branch`, `--severity`, `--repo`
|
|
867
|
-
- **Configurable quality gates** (`judges quality-gate`) — Composite quality gate definitions with `maxFindings`, `minScore`, `requiredJudges`, `blockerRules`, `maxFpRate`, `minFixRate`, `minConfidence`; configurable via `.judgesrc` `qualityGates`
|
|
868
|
-
- **Parallel file processing** (`src/parallel.ts`) — Async promise pool for concurrent multi-file evaluation; `evaluateParallel()`, `evaluateSequential()`, `batchEvaluate()` with configurable concurrency; auto-detects CPU count
|
|
869
|
-
- **Interactive fix mode** (`judges fix --interactive`) — Per-finding accept/skip/all/quit flow with colored inline diff display and severity-colored headers
|
|
870
|
-
- **Framework-aware detection** (`src/evaluators/framework-rules.ts`) — 10 framework profiles (React, Next.js, Express, Fastify, Django, Flask, FastAPI, Spring, Rails, Angular) with auto-detection, framework-specific rules (FW-REACT-001..003, FW-EXPRESS-001..002, FW-DJANGO-001..002, FW-FLASK-001, FW-SPRING-001, FW-RAILS-001, FW-NEXT-001), and severity adjustments to reduce false positives
|
|
871
|
-
- **Auto-calibration from feedback** (`judges auto-calibrate`) — CLI wrapper for auto-tune engine; analyzes accumulated feedback to recommend threshold adjustments and rule overrides; `--apply` writes to `.judgesrc`
|
|
872
|
-
- **Dependency vulnerability correlation** (`judges dep-audit`) — Runs `npm audit` / `pip-audit` and correlates dependency CVEs with code findings via CWE mapping; supports `--correlate` with existing results
|
|
873
|
-
- **Monorepo workspace support** (`judges monorepo`) — Discovers packages via pnpm-workspace.yaml, lerna.json, turbo.json, npm workspaces, nx.json, or heuristic; per-package cascading config resolution
|
|
874
|
-
- **Config migration assistant** (`judges config-migrate`) — Detects deprecated fields, renamed keys, and structural changes with 10 migration rules; `--apply` flag writes migrated config; `--dry-run` shows changes
|
|
875
|
-
- **Rule deprecation lifecycle** (`judges deprecated`) — Registry of deprecated rules with version info, migration guidance, and replacement rules; `--check` validates `.judgesrc` for stale references
|
|
876
|
-
- **Cross-run finding dedup report** (`judges dedup-report`) — Surfaces new vs recurring vs fixed findings from `.judges-findings.json` with stats, severity breakdown, and filtering (`--new`, `--recurring`, `--fixed`)
|
|
877
|
-
|
|
878
|
-
### Fixed
|
|
879
|
-
- ESLint: removed all unused import warnings across 7 files (cli.ts, fix-pr.ts, quality-gate.ts, parallel.ts, auto-calibrate.ts, monorepo.ts, dedup-report.ts)
|
|
880
|
-
|
|
881
|
-
### Tests
|
|
882
|
-
- 2,267 tests passing (1,082 main + 1,185 additional suites), 0 failures
|
|
883
|
-
|
|
884
|
-
## [3.40.0] — 2026-03-11
|
|
885
|
-
|
|
886
|
-
### Added — Adoption & Enterprise Features
|
|
887
|
-
- **DataAdapter persistence layer** — All stores (feedback, finding-lifecycle, fix-history, calibration, snapshot) now flow through the pluggable `DataAdapter` interface; users can wire custom backends (REST, DB, cloud) via `.judgesrc` without judges ever hosting their data
|
|
888
|
-
- **Auto-fix verification loop** (`judges fix --verify`) — Re-evaluates code after applying patches; tracks fix success/regression rates per judge
|
|
889
|
-
- **Override/exception workflow** (`judges override`) — Accept-risk, false-positive, and time-limited suppression with audit logging; `override list` and `override audit` subcommands
|
|
890
|
-
- **Evidence-backed explanations** — Every finding now includes an `evidence` array in both text and SARIF output, citing specific AST/pattern matches and confidence scores
|
|
891
|
-
- **Cross-file import context** — `project` evaluator resolves ES/TS/Python/Go imports to detect cross-module issues (unused exports, circular deps, re-export of internals)
|
|
892
|
-
- **Auto-activate model profiles** — Evaluator index detects LLM watermarks (Codex, Copilot, Claude, GPT, Gemini, Cursor) and applies tuned thresholds automatically
|
|
893
|
-
- **Feedback-to-rule pipeline** (`judges feedback-rules`) — Aggregates user feedback to generate candidate custom rules; `--apply` flag writes to `.judgesrc`
|
|
894
|
-
- **IDE fix diff preview** — VS Code extension shows inline diff previews before applying auto-fixes with accept/reject actions
|
|
895
|
-
- **Enhanced `--explain` output** — Layer 2 evidence details with AST node types, pattern matcher names, and confidence breakdowns
|
|
896
|
-
- **Trend regression alerts** — `judges snapshot --check` compares latest snapshot to baseline and exits non-zero on regression; configurable thresholds
|
|
897
|
-
- **Multi-repo governance dashboard** (`judges governance`) — Aggregates findings across repos with risk scoring, trend tracking, and HTML/JSON output
|
|
898
|
-
- **Language pattern parity audit** (`judges parity`) — Compares rule coverage across languages and reports gaps
|
|
899
|
-
- **Semantic intent-drift detection** — Four new evaluator rules (INTENT-007 through INTENT-010): scope creep, naming drift, contract violation, dead intent
|
|
900
|
-
- **Compliance evidence reports** (`judges compliance-report`) — Generates audit-ready evidence packages for SOC 2, ISO 27001, OWASP, PCI DSS frameworks
|
|
901
|
-
- **Staged-only pre-commit** (`--staged-only`) — Single-pass mode for `judges hook` that scans only `git diff --cached` files
|
|
902
|
-
- **Plugin discovery** (`judges plugin-search`) — Enhanced with `list`, `info`, and `init` subcommands for community plugin ecosystem
|
|
903
|
-
|
|
904
|
-
### Fixed
|
|
905
|
-
- ESLint: removed forbidden `import()` type annotation in CLI compliance-report handler
|
|
906
|
-
- ESLint: removed unused imports (`FeedbackEntry` in data-adapter, `Severity` in org-metrics)
|
|
907
|
-
- ESLint: prefixed unused dashboard variables to satisfy no-unused-vars rule
|
|
908
|
-
|
|
909
|
-
### Tests
|
|
910
|
-
- 2,267 tests passing (1,082 main + 1,185 additional suites), 0 failures
|
|
911
|
-
|
|
912
|
-
## [3.39.0] — 2026-03-10
|
|
913
|
-
|
|
914
|
-
### Added — LLM Prompt Benchmark (Layer 2)
|
|
915
|
-
- **`src/commands/llm-benchmark.ts`** — New module with types, rule-ID parser, prompt construction, stratified sampling, scoring, and markdown formatting for LLM-based benchmark results
|
|
916
|
-
- **`scripts/run-llm-benchmark.ts`** — Standalone LLM benchmark runner supporting OpenAI and Anthropic APIs; configurable via env vars (`LLM_API_KEY`, `LLM_MODEL`, `LLM_PROVIDER`); supports `--sample`, `--mode tribunal|per-judge`, `--dry-run`; saves snapshot JSON to `benchmarks/`
|
|
917
|
-
- **`npm run benchmark:llm`** — New npm script to run LLM benchmarks
|
|
918
|
-
- **`benchmarks/` directory** — Storage for LLM benchmark snapshot results (latest + timestamped archives)
|
|
919
|
-
|
|
920
|
-
### Improved — Benchmark Report Methodology
|
|
921
|
-
- **"How to Read This Report"** — New methodology preamble explaining the dual-layer architecture (L1 deterministic + L2 LLM prompts), all metrics (Detection Rate, Precision, Recall, F1, FP Rate), and matching types (TP, FP, FN)
|
|
922
|
-
- **Layer headers** — Report now clearly labels "Layer 1 — Deterministic Analysis" and "Layer 2 — LLM Prompt Analysis" sections
|
|
923
|
-
- **Layer comparison table** — Side-by-side L1 vs L2 metrics when LLM snapshot data is available
|
|
924
|
-
- **Auto-load LLM snapshot** — `judges benchmark report` automatically incorporates `benchmarks/llm-snapshot-latest.json` into the published report
|
|
925
|
-
- **Regenerated `docs/benchmark-report.md`** — Updated to v3.39.0 with methodology section; 1,048 cases, Grade A, F1 94.0%, 0 FP
|
|
926
|
-
|
|
927
|
-
### Added — Tests
|
|
928
|
-
- 15 new unit tests for all LLM benchmark components: `parseLlmRuleIds`, `constructPerJudgePrompt`, `constructTribunalPrompt`, `selectStratifiedSample`, `scoreLlmCase`, `computeLlmMetrics`, `formatLlmSnapshotMarkdown`, `formatLayerComparisonMarkdown`
|
|
929
|
-
|
|
930
|
-
## [3.38.0] — 2026-03-10
|
|
931
|
-
|
|
932
|
-
### Fixed — Benchmark Quality (0 failures, all FP rates <30%)
|
|
933
|
-
- **HALLU evaluator** — Excluded `HALLU-` prefixed findings from the import-line false-positive filter so dependency confusion detections survive the pipeline
|
|
934
|
-
- **I18N evaluator** — Skip raw-number formatting check when code already uses `Intl` APIs (e.g., `Intl.NumberFormat`), eliminating spurious I18N-001 on properly internationalized code
|
|
935
|
-
- **I18N evaluator** — Improved sorting/RTL/currency detection patterns and removed I18N from `WEB_ONLY_PREFIXES` so it applies to all file types
|
|
936
|
-
- **Shared utilities** — `looksLikeIaCSecretValue` now recognizes file paths (containing `/` with a file extension) as non-secrets, preventing false IAC-002 on Terraform module sources
|
|
937
|
-
- **IAC evaluator** — Improved tag-threshold logic and `default_tags` detection for Terraform resources
|
|
938
|
-
- **SOV evaluator** — Region/consent gate detection improvements
|
|
939
|
-
- **CONC evaluator** — Properly handle exported Go functions
|
|
940
|
-
- **DOC evaluator** — Improved cryptic naming detection
|
|
941
|
-
- **LOGIC evaluator** — Threshold tuning for inverted-condition and dead-code detection
|
|
942
|
-
- **MAINT evaluator** — Threshold tuning for maintainability checks
|
|
943
|
-
- **Pipeline** — Expanded `hasIO` detection, added COMP string-literal exemption
|
|
944
|
-
- **STRUCT-005 disabled** — Dead code detection moved to LOGIC evaluator to avoid false positives on multi-line expressions
|
|
945
|
-
- **`classifyFile`** — Improved JSX file-type detection
|
|
946
|
-
|
|
947
|
-
### Fixed — Benchmark Test Cases
|
|
948
|
-
- Strengthened `clean-terraform-hardened` with terraform block, required_providers, backend config, and default_tags
|
|
949
|
-
- Strengthened `clean-accessible-form-tsx` with i18n support and loading state
|
|
950
|
-
- Fixed `clean-terraform-well-structured-hcl` — was incorrectly expecting IAC-001 on genuinely clean code
|
|
951
|
-
- Fixed 7 clean benchmark cases with overlapping `expectedRuleIds`/`unexpectedRuleIds` prefixes that caused same findings to count as both TP and FP
|
|
952
|
-
|
|
953
|
-
### Benchmark Results
|
|
954
|
-
- 1,048 cases, 0 failures, 100% detection rate
|
|
955
|
-
- Precision 99.0%, Recall 88.6%, F1 93.5%, Grade A
|
|
956
|
-
- All per-judge FP rates below 30%, clean category FP rate 0%
|
|
957
|
-
|
|
958
|
-
### Tests
|
|
959
|
-
- 1,082 tests pass across 218 suites
|
|
960
|
-
|
|
961
|
-
## [3.37.0] — 2026-03-10
|
|
962
|
-
|
|
963
|
-
### Added
|
|
964
|
-
- **Auto-onboarding preset** — When no `.judgesrc` config file exists and no `--preset` or `--config` flag is provided, the CLI automatically applies the `onboarding` preset (high-severity only, 9 noisy judges disabled) with a guidance message to run `judges init` for full control. Reduces noise for first-time users.
|
|
965
|
-
- **Fix rate visibility (CLI)** — Findings summary now shows auto-fixable count everywhere: verdict summary (`Findings : 12 (4 auto-fixable)`), `--summary` one-liner, multi-file per-file progress, multi-file summary, and critical/high findings list (tagged with 🔧). New guidance line after verdict: `🔧 N finding(s) can be auto-fixed. Run: judges eval <file> --fix`.
|
|
966
|
-
|
|
967
|
-
### Changed (VS Code Extension)
|
|
968
|
-
- **Live status bar** — Status bar now updates dynamically after evaluations, showing finding count and fixable count (e.g., `Judges: 5 finding(s), 2 fixable`) instead of the static "Judges" label. Also updates when switching between editor tabs.
|
|
969
|
-
- **`getCachedFindings()` API** — New method on `JudgesDiagnosticProvider` for retrieving cached findings by URI, used by the status bar.
|
|
970
|
-
|
|
971
|
-
### Tests
|
|
972
|
-
- 1,082 tests pass across 218 suites
|
|
973
|
-
|
|
974
|
-
## [3.36.0] — 2026-03-10
|
|
975
|
-
|
|
976
|
-
### Added
|
|
977
|
-
- **New judge: logic-review** — 7 detection categories for semantic correctness: inverted security conditions (critical), off-by-one errors (high), dead code after return/throw (medium), name-body mismatch (medium), swapped comparison operands (high), empty catch/except blocks (medium), redundant boolean comparisons (low). 45 judges total.
|
|
978
|
-
- **Review verdict & summary** — `synthesizeReviewDecision()` wired into `TribunalVerdict`, producing an approve/request-changes/comment decision with blocking findings list and executive summary.
|
|
979
|
-
- **Package registry verification** — expanded fabricated package detection: 50+ npm names, 30+ Python names, Go module hallucination patterns, Java/Kotlin hallucination patterns, and dependency confusion detection for unscoped packages with internal-looking names.
|
|
980
|
-
- **Test adequacy assessment** — 2 new test quality checks: happy-path-only detection (test files with ≥3 cases but no error/edge scenarios) and status-code-only detection (API tests that only assert HTTP codes without body verification).
|
|
981
|
-
- **LLM contextual auto-fixes** — `enrichWithContextualFixes()` generates `suggestedFix` for findings that lack a deterministic patch, using actual code context from affected lines.
|
|
982
|
-
- **Triage feedback learning loop** — `computeTriageFeedback()` and `applyTriageFeedback()` adjust confidence scores based on historical false-positive rates from the finding lifecycle store. Rules with FP rate >30% get proportional confidence reduction (max -0.3).
|
|
983
|
-
- **JetBrains IDE integration guide** — documentation for connecting Judges as an MCP server in IntelliJ IDEA, WebStorm, PyCharm, GoLand, and Rider via `.mcp.json` or IDE settings.
|
|
984
|
-
- **AI-output benchmark suite** — 18 new benchmark cases targeting LLM-generated code patterns: logic inversions, off-by-one errors, dead code, name-body mismatches, swapped operands, empty catch blocks, happy-path-only tests, status-code-only tests, dependency confusion, and 3 negative (clean code) cases.
|
|
985
|
-
|
|
986
|
-
### Changed (VS Code Extension)
|
|
987
|
-
- **Diff-aware evaluation** — new `judges.evaluateDiff` command evaluates the full file but only reports findings on lines changed relative to git HEAD (±2 line context margin).
|
|
988
|
-
- **Judge grouping in findings panel** — new "Sort by Judge" mode groups findings by judge prefix (AUTH, CRYPTO, LOGIC, etc.) with collapsible tree nodes.
|
|
989
|
-
|
|
990
|
-
### Tests
|
|
991
|
-
- 1,082 tests pass across 218 suites
|
|
992
|
-
|
|
993
|
-
## [3.35.0] — 2026-03-10
|
|
994
|
-
|
|
995
|
-
### Added
|
|
996
|
-
- **Dedup: 12 new topic patterns** — timing-attack, ssrf, mass-assignment, insecure-deserialization, info-disclosure, denial-of-service, file-upload-security, missing-access-control, hardcoded-config, unsafe-html-render, a11y-violation — eliminates duplicate findings across judges
|
|
997
|
-
- **Auto-fix: 10 new multi-line patch rules** — timing-safe comparison (`crypto.timingSafeEqual`), path traversal prevention, hardcoded secrets → env vars, open redirect validation, SSRF URL allowlist, insecure cookies, Java SQL injection (→ `PreparedStatement`), Python f-string SQL (→ parameterized), CSP header insertion, C# SQL injection (→ `SqlParameter`)
|
|
998
|
-
- **Framework judges: 17 new patterns** — Django (5: SESSION_COOKIE_SECURE, SECURE_SSL_REDIRECT, mark_safe, FILE_UPLOAD_PERMISSIONS, locals/globals in render), Flask (2: send_file path traversal, session without SECRET_KEY), Spring Boot (5: @RequestBody without @Valid, permitAll on sensitive paths, Jackson default typing, hardcoded credentials, logging sensitive data), ASP.NET Core (5: missing UseHttpsRedirection, mass assignment model binding, string interpolation in ILogger, ProblemDetails with exception message, missing [Authorize] on [ApiController])
|
|
999
|
-
- **Suppression analytics** — `getSuppressionAnalytics()` and `formatSuppressionAnalytics()` functions for analyzing FP rates by rule, suppression rates by judge, auto-suppress candidates, and actionable tuning recommendations
|
|
1000
|
-
- **5 new MCP tools for conversational review:**
|
|
1001
|
-
- `explain_finding` — plain-language explanation with OWASP/CWE references and remediation guidance
|
|
1002
|
-
- `triage_finding` — set triage status (accepted-risk, deferred, wont-fix, false-positive) with attribution
|
|
1003
|
-
- `get_finding_stats` — lifecycle statistics: open, fixed, triaged counts with trends
|
|
1004
|
-
- `get_suppression_analytics` — FP rates, auto-suppress candidates, per-judge analytics
|
|
1005
|
-
- `list_triaged_findings` — browse triaged findings with optional status filter
|
|
1006
|
-
- **Benchmark dashboard MCP tool** — `run_benchmark` returns full dashboard with per-judge, per-category, per-difficulty breakdowns in markdown, JSON, or summary format
|
|
1007
|
-
|
|
1008
|
-
### Tests
|
|
1009
|
-
- 1,075 tests pass across 217 suites
|
|
1010
|
-
|
|
1011
|
-
## [3.34.1] — 2026-03-10
|
|
1012
|
-
|
|
1013
|
-
### Fixed
|
|
1014
|
-
- **CI build fix** — Added missing `findings` property to the `CaseResult` interface in `benchmark.ts`, resolving TS2353 compile error that failed the v3.34.0 publish workflow
|
|
1015
|
-
|
|
1016
|
-
## [3.34.0] — 2026-03-10
|
|
1017
|
-
|
|
1018
|
-
### Fixed
|
|
1019
|
-
- **False-positive filter (check #6) now requires ALL lines to match identifier context** — Previously, a single line matching identifier context would suppress the entire finding. When cross-evaluator dedup merges line numbers from multiple findings, a single inherited "foreign" line could wrongly suppress a legitimate finding. Now all flagged lines must match the identifier context pattern for suppression to apply.
|
|
1020
|
-
- **Removed CYBER- and AUTH- from test-only prefix suppression** — These prefixes were being incorrectly suppressed in test files, causing missed true positives
|
|
1021
|
-
- **Security evaluator skips import/require lines** for JWT verification detection — `import jsonwebtoken` no longer triggers a "JWT verification" finding
|
|
1022
|
-
- **Documentation evaluator strips type annotations** before counting single-letter parameters — generic type params like `T` in `(items: T[])` no longer trigger cryptic-naming detection
|
|
1023
|
-
- **Added `assert` to magic-number exclusion list** — Test assertions with numeric values are no longer flagged as magic numbers
|
|
1024
|
-
- **I18N added to web-only prefix suppression** — Internationalization rules now correctly suppressed for non-web files
|
|
1025
|
-
- **Shared `classifyFile` minimum line guard** — Files under 8 lines are no longer classified as "utility", preventing over-suppression of findings in small files
|
|
1026
|
-
|
|
1027
|
-
### Changed
|
|
1028
|
-
- **12 evaluator threshold recalibrations** to reduce false positives while improving recall:
|
|
1029
|
-
- AI Code Safety: unvalidated input handler threshold 4→2
|
|
1030
|
-
- Caching: minimum file length 100→30 lines
|
|
1031
|
-
- Cloud Readiness: hardcoded config threshold 5→1
|
|
1032
|
-
- Configuration Management: env vars without defaults 3→4
|
|
1033
|
-
- Cost Effectiveness: nested loop threshold 4→2
|
|
1034
|
-
- Data Sovereignty: hardcoded global/foreign threshold 5→1, cross-border egress 5→2
|
|
1035
|
-
- Documentation: undocumented exports count 2→4, minimum lines 10→30, magic numbers threshold 50→20
|
|
1036
|
-
- Internationalization: hardcoded strings threshold 0→5
|
|
1037
|
-
- Reliability: empty catch threshold 3→1
|
|
1038
|
-
- UX: inline handlers 10→2, form loading state minimum 50→15 lines, generic errors minimum 60 lines, empty state minimum 80→120 lines, file/stream progress minimum 60 lines
|
|
1039
|
-
- **Cross-evaluator dedup simplified** — Removed per-prefix diversity logic (which preserved one representative per rule prefix) in favor of single-winner with cross-reference annotation; fixes dedup correctness for SQL injection, race conditions, and other cross-cutting findings
|
|
1040
|
-
- **Benchmark scoring now parses cross-reference annotations** — Dedup-merged findings annotated with `_Also identified by: AUTH-001, SEC-001_` now contribute their referenced ruleIds to true-positive matching, recovering 115 previously undercounted TPs
|
|
1041
|
-
|
|
1042
|
-
### Benchmark
|
|
1043
|
-
- **Grade A** — F1: 93.0% (was 87.9%), Precision: 98.7%, Recall: 87.9% (was 79.3%), Detection Rate: 97.6% (was 94.0%)
|
|
1044
|
-
- TP: 1182 (+115), FN: 163 (−115), FP: 16
|
|
1045
|
-
- All per-judge false-positive rates ≤ 30%
|
|
1046
|
-
|
|
1047
|
-
### Tests
|
|
1048
|
-
- 2226 tests passing, 0 failures
|
|
1049
|
-
|
|
1050
|
-
## [3.33.0] — 2026-03-10
|
|
1051
|
-
|
|
1052
|
-
### Added
|
|
1053
|
-
- **Over-engineering detector judge** — New 44th judge (`over-engineering`) with 6 rules detecting excessive abstraction layers, trivial wrappers, god interfaces, builder pattern overuse, enterprise patterns in small codebases, and excessive generic type parameters
|
|
1054
|
-
- **PDF export formatter** (`--format pdf`) — Print-optimized HTML report with @media print styles, page breaks, and clean A4 layout; open in browser and "Save as PDF"
|
|
1055
|
-
- **HTML trend dashboard** (`judges trend --format html`) — Self-contained interactive HTML with SVG bar chart, severity breakdown, metrics summary, run history table, and dark/light theme support
|
|
1056
|
-
- **`--sample` flag** — Random file sampling for large repos; use with `--max-files` to randomly select files instead of taking the first N alphabetically
|
|
1057
|
-
- **Suppression metrics in text output** — When inline suppressions are present, the text report now shows suppressed finding count, breakdown by type (line/next-line/block/file), and top suppressed rules
|
|
1058
|
-
- **Code provenance signals** — All findings now carry a `provenance` field (defaults to `"regex-pattern-match"`) indicating how the finding was detected
|
|
1059
|
-
- **Per-judge timing metrics** — Each `JudgeEvaluation` includes `durationMs`; `TribunalVerdict` includes `timing` with total and per-judge breakdown; text output shows timing and slowest judges
|
|
1060
|
-
- **OWASP LLM Top 10 mapping** — Findings are automatically mapped to OWASP LLM Top 10 categories (LLM01–LLM10) where applicable
|
|
1061
|
-
- **VS Code CodeLens provider** — Shows finding counts above functions, methods, and classes in the editor
|
|
1062
|
-
- **Centralized judge metadata** — Extended `JudgeDefinition` with `tableDescription` and `promptDescription` fields; all 44 judges now carry documentation metadata as part of their definition
|
|
1063
|
-
- **`npm run sync-docs` script** — New `scripts/sync-docs.ts` regenerates the README judge table, prompts table, `docs/index.html` JS array, and judge counts across 15+ files from the `JUDGES` array as single source of truth
|
|
1064
|
-
- **Adding-a-judge instructions** — `.github/instructions/adding-a-judge.instructions.md` codifies the full step-by-step workflow for adding new judges
|
|
1065
|
-
|
|
1066
|
-
### Changed
|
|
1067
|
-
- **README and docs auto-generated** — Judge table and prompts table in README use marker-delimited sections (`JUDGES_TABLE_START`/`END`, `PROMPTS_TABLE_START`/`END`); `docs/index.html` uses `JUDGES_ARRAY_START`/`END` markers
|
|
1068
|
-
|
|
1069
|
-
### Fixed
|
|
1070
|
-
- **4 inconsistent judge names** — Data Sovereignty, API Contract, Multi-Turn Coherence, and Model Fingerprint judges now follow the `"Judge {Domain}"` naming convention
|
|
1071
|
-
- **PDF formatter build error** — Fixed `Finding.line` reference to use `Finding.lineNumbers`
|
|
1072
|
-
|
|
1073
|
-
### Tests
|
|
1074
|
-
- 1075 tests passing, Benchmark Grade A
|
|
1075
|
-
|
|
1076
|
-
## [3.31.0] — 2026-03-10
|
|
1077
|
-
|
|
1078
|
-
### Changed
|
|
1079
|
-
- **Calibration enabled by default** — PR review now applies feedback-driven confidence calibration automatically; use `--no-calibrate` to opt out
|
|
1080
|
-
- **diff-only mode default in Actions** — GitHub Action `diff-only` input now defaults to `true`, evaluating only changed lines in PRs to dramatically reduce noise
|
|
1081
|
-
- **Minimum confidence floor** — PR review applies a default `--min-confidence 0.6` threshold, dropping low-confidence findings automatically
|
|
1082
|
-
|
|
1083
|
-
### Added
|
|
1084
|
-
- **FP-rate reliability badge** — Each PR review comment now shows a reliability badge (e.g., "🎯 99%+ reliable" or "⚠️ 75% reliable") based on historical false-positive rates
|
|
1085
|
-
- **Absence-based finding filter in diff mode** — Findings like "no rate limiting" or "no authentication" are now suppressed in diff mode since they cannot be accurately assessed from a single diff hunk
|
|
1086
|
-
- **`ai-review` preset** — New preset optimized for reviewing AI-generated code: focuses on security, hallucination, and correctness judges while disabling non-essential judges (documentation, i18n, accessibility, etc.)
|
|
1087
|
-
- **`--judges` flag for PR review** — Select a subset of judges to run during PR review (e.g., `--judges cybersecurity,authentication`); all other judges are disabled
|
|
1088
|
-
- **`--no-calibrate` flag** — Opt out of feedback-driven confidence calibration in PR reviews
|
|
1089
|
-
|
|
1090
|
-
### Tests
|
|
1091
|
-
- 1068 tests pass, 0 failures
|
|
1092
|
-
|
|
1093
|
-
### Benchmark
|
|
1094
|
-
- Grade A, 98.8% precision, 90.3% recall, F1 0.94
|
|
1095
|
-
|
|
1096
|
-
## [3.30.0] — 2026-03-10
|
|
1097
|
-
|
|
1098
|
-
### Added
|
|
1099
|
-
- **Scope-aware HALLU suppression** — Hallucination detector now checks for local method definitions before firing on generic patterns (`.push()` in Python, `.isEmpty()` in Python, `.append()` in Go, etc.), reducing false positives on user-defined methods
|
|
1100
|
-
- **Hallucination auto-fix patches** — All HALLU findings now include structured `Patch` objects with `oldText`/`newText` for automated remediation
|
|
1101
|
-
- **Confidence evidence trails** — All 5 hallucination detection sections now include `EvidenceChain` with multi-step reasoning (observation → source → line) and `evidenceBasis` scoring strings
|
|
1102
|
-
- **14 new hallucination patterns** — FastAPI `app.route()` confusion (import-guarded), SQLAlchemy raw SQL in `session.execute()`, pandas `.to_array()`/`.filterBy()`, Spring `@Autowired` on local variables, `ResponseEntity.ok().body()` chaining, EF Core `DbContext.Query<T>()`, ASP.NET `HttpContext.Response.Write()`, Rust `tokio::spawn` without async / `.unwrap_default()`, Deno `readFile` with encoding, Bun `.serve().listen()`
|
|
1103
|
-
- **3 new suspicious submodule patterns** — FastAPI, Next.js, and Vue fabricated submodule imports
|
|
1104
|
-
- **Import-guard system** — New `requiresImport` field on hallucination patterns prevents cross-framework false positives (e.g., Flask `app.route()` no longer triggers the FastAPI-specific pattern)
|
|
1105
|
-
- **Per-LLM benchmark tracking** — New `aiSource` field on benchmark cases and `perAISource` result breakdowns for tracking detection effectiveness per AI code generator
|
|
1106
|
-
|
|
1107
|
-
### Tests
|
|
1108
|
-
- 1068 tests pass, 0 failures
|
|
1109
|
-
|
|
1110
|
-
### Benchmark
|
|
1111
|
-
- Grade A, 99.8% detection, 1030/1032 cases, 15 FP
|
|
1112
|
-
- All 43 judges at ≤30% individual FP rate
|
|
1113
|
-
- HALLU judge: 100% precision (0 FP, improved from 67% FP rate in v3.29.2)
|
|
1114
|
-
|
|
1115
|
-
## [3.29.2] — 2026-03-09
|
|
1116
|
-
|
|
1117
|
-
### Fixed
|
|
1118
|
-
- **Per-judge FP rate reduction** — All 43 judges now report <30% individual FP rates on the benchmark
|
|
1119
|
-
- **STRUCT** 30.4% → 22.2%: Raised STRUCT-005 dead-code threshold to >2 lines (avoids parser artifacts, switch-case, guard clauses); raised STRUCT-003 long-function threshold to >1 (single long function is common in utilities)
|
|
1120
|
-
- **COH** 100% → 0%: Disabled COH-002 regex-based dead-code detection (redundant with STRUCT-005 AST-based analysis); raised COH-004 conflicting-config threshold to ≥6 conflict lines
|
|
1121
|
-
- **INTENT** 100% → 0%: Required INTENT-003 to find ≥2 empty functions before flagging; added deprecated function skip (`old_`, `legacy_`, `deprecated_` prefixes) to INTENT-001
|
|
1122
|
-
- **API** 38.8% → 26.2%: Added file-level validation middleware detection (express-validator, joi, zod imports) to skip API-001; improved API-002 error response detection with Python/Django patterns; fixed API-004 to recognise `res.json()` auto-sets Content-Type; fixed `express.json()` regex to match calls with arguments; improved API versioning detection (`/v\d+\b`); added `express.urlencoded` to content-type validation patterns; required 2+ routes for API-002 missing-error-responses rule
|
|
1123
|
-
- **Tests** — Updated STRUCT-005 and STRUCT-003 test inputs to match new thresholds; 1068 tests pass
|
|
1124
|
-
- **Benchmark** — Grade A, 99.8% detection, 98.8% precision, 94.4% F1
|
|
1125
|
-
|
|
1126
|
-
## [3.29.1] — 2026-03-09
|
|
1127
|
-
|
|
1128
|
-
### Fixed
|
|
1129
|
-
- **TypeScript compilation error** — Removed invalid `weight` property from 3 judge definitions (api-contract, multi-turn-coherence, model-fingerprint) that does not exist on `JudgeDefinition` interface, fixing CI build failure
|
|
1130
|
-
|
|
1131
|
-
## [3.29.0] — 2026-07-07
|
|
1132
|
-
|
|
1133
|
-
### Added
|
|
1134
|
-
- **Model fingerprint detection** — New judge #43 (MFPR prefix) detecting stylistic signatures of ChatGPT/GPT-4, Copilot, Claude, and Gemini in AI-generated code for provenance transparency
|
|
1135
|
-
- **Community pattern sharing** — New `community-patterns` CLI command with `import`, `export`, and `list` sub-commands for crowdsourced rule pack exchange via portable JSON format
|
|
1136
|
-
- **Interactive VS Code review** — New `judges.reviewSession` command walks through findings one-by-one with Accept/Dismiss/Skip actions and editor navigation
|
|
1137
|
-
- **Industry policy templates** — 5 new preset profiles: `fintech` (PCI DSS), `healthtech` (HIPAA), `saas` (multi-tenant), `open-source`, and `government` (FedRAMP/NIST)
|
|
1138
|
-
- **Intent alignment evaluator** — Judge #40 (INTENT prefix) detecting stub functions, misleading names, empty implementations, and contradictory comments
|
|
1139
|
-
- **API contract conformance** — Judge #41 (API prefix) evaluating REST endpoints for input validation, status codes, error handling, rate limiting, and versioning
|
|
1140
|
-
- **Multi-turn coherence** — Judge #42 (COH prefix) catching duplicate definitions, contradictory assignments, dead code after returns, and conflicting configs
|
|
1141
|
-
- **Confidence calibration dashboard** — New `calibration-dashboard` CLI command showing per-rule accuracy metrics and false-positive rates
|
|
1142
|
-
- **Human escalation escape hatch** — `escalationThreshold` config option flagging low-confidence findings with `needsHumanReview` for manual triage
|
|
1143
|
-
- **Explanation mode** — `--explain` flag providing educational context for any rule prefix with severity mapping and false-positive guidance
|
|
1144
|
-
- **Business logic validation** — `customRules` config field supporting user-defined regex-based detection rules with full severity and autofix support
|
|
1145
|
-
- **Inline fix suggestions** — ~50 new PATCH_RULES covering auth, crypto, injection, error handling, rate limiting, and more
|
|
1146
|
-
- **Approve/request-changes verdict** — Tiered GitHub review events (APPROVE for clean code, COMMENT for low-severity, REQUEST_CHANGES for critical findings)
|
|
1147
|
-
- **Test adequacy analysis** — TEST-COV-001 rule detecting missing test coverage for changed functions in PR diffs
|
|
1148
|
-
|
|
1149
|
-
### Tests
|
|
1150
|
-
- 1068 tests, 0 failures
|
|
1151
|
-
- Benchmark: Grade A (99.8% detection, 98.8% precision, 94.4% F1)
|
|
1152
|
-
|
|
1153
|
-
## [3.28.0] — 2026-07-07
|
|
1154
|
-
|
|
1155
|
-
### Added
|
|
1156
|
-
- **Onboarding preset** — New `onboarding` preset profile for first-time adopters with high-severity-only filtering and advisory judges disabled
|
|
1157
|
-
- **Import verification for hallucination detection** — Heuristic import verification (section 5) using dual-pattern matching for generic prefixes and suffixes to catch hallucinated API imports
|
|
1158
|
-
- **Diff deletion analysis** — New DIFF-DEL-001 rule detecting security-relevant deletions (auth checks, input validation, CSRF tokens, rate limiting) in PR diffs
|
|
1159
|
-
- **PR summary comment** — Enhanced GitHub Action PR review body with rich summary table including verdict, score, severity breakdown, baseline suppressed count, and top 5 most frequent rule IDs; zero-findings path posts clean bill of health
|
|
1160
|
-
- **Passive calibration** — `buildPassiveCalibrationProfile()` merging 3 signal sources: explicit feedback, inline suppressions (implicit FP signals), and triage history
|
|
1161
|
-
- **Test quality analysis** — Tautological assertion detection (e.g. `expect(true).toBe(true)`) and over-mocking detection (mock setup count exceeding 3× test case count)
|
|
1162
|
-
- **Cross-file breaking changes** — DIFF-BREAK-001 rule detecting exported function signature changes (renamed, removed, or parameter count changes) across PR diffs
|
|
1163
|
-
- **Parallel judge execution** — Configurable `concurrency` option with AST/taint cache pre-warming via `preWarmCaches()` and chunked batch file processing in project evaluator
|
|
1164
|
-
- **Organization config inheritance** — `extends` field in `.judgesrc` supporting single or array of base config paths with cycle detection via `resolveExtendsConfig()`
|
|
1165
|
-
- **Metrics & trends API** — `computeMetrics()` function with `RuleMetric` and `MetricsSummary` types for top offenders, severity breakdown, distinct/resolved/new rule tracking
|
|
1166
|
-
- **Net-change CI gate** — `evaluateNetChangeGate()` with `NetChangeGateOptions` and `NetChangeGateResult` for pass/fail decisions on whether a PR fixed more than it introduced
|
|
1167
|
-
- **Per-language rule profiles** — `languageProfiles` config field and `applyLanguageProfile()` for language-specific judge configuration overrides
|
|
1168
|
-
|
|
1169
|
-
### Tests
|
|
1170
|
-
- 1040 tests, 0 failures
|
|
1171
|
-
- Benchmark: Grade A
|
|
1172
|
-
|
|
1173
|
-
## [3.27.1] — 2026-03-09
|
|
1174
|
-
|
|
1175
|
-
### Fixed
|
|
1176
|
-
- **CI `npm ci` failure** — Removed tree-sitter native grammar devDependencies (tree-sitter-c-sharp, tree-sitter-cpp, tree-sitter-go, tree-sitter-java, tree-sitter-kotlin, tree-sitter-php, tree-sitter-python, tree-sitter-ruby, tree-sitter-rust, tree-sitter-swift, tree-sitter-typescript, tree-sitter-cli) that caused `ERESOLVE` peer dependency conflicts during `npm ci` in CI. These packages were only needed for one-time WASM grammar generation; the pre-built WASM files in `grammars/` are committed and used at runtime via `web-tree-sitter`
|
|
1177
|
-
- **Added `.npmrc`** — Sets `legacy-peer-deps=true` as a safety net for any remaining transitive peer conflicts
|
|
1178
|
-
|
|
1179
|
-
## [3.27.0] — 2026-03-09
|
|
1180
|
-
|
|
1181
|
-
### Added
|
|
1182
|
-
- **New language support: Dart, Bash/Shell, SQL** — Full `LangFamily` type coverage, ~30+ language pattern constants (crypto, auth, injection, eval, file-system, etc.), structural parser support (function/class extraction, complexity analysis, weak-type detection, import extraction), AST routing, and file-extension-to-language maps across CLI, GitHub App, and baseline commands
|
|
1183
|
-
- **Tree-sitter grammars for PHP, Ruby, Kotlin, Swift** — Four new WASM grammars enabling deep AST analysis (function/class/method node extraction, parameter counting, import extraction, weak-type detection) for languages previously limited to regex-only structural parsing
|
|
1184
|
-
- **Accessibility evaluator deepened (17 → 23 rules)** — Six new rules: A11Y-018 vague link text ("click here", "read more"), A11Y-019 data tables without `<th>` headers, A11Y-020 modal/dialog without focus trap, A11Y-021 interactive ARIA role without tab focusability, A11Y-022 icon-only button/link without accessible name, A11Y-023 page missing landmark regions
|
|
1185
|
-
- **IaC security evaluator deepened (22 → 32 rules)** — Ten new rules: Kubernetes container running as root, missing resource limits, writable filesystem; Terraform resources without tags; password auth without managed identity; database firewall allowing all Azure services (0.0.0.0); Dockerfile ADD vs COPY; Dockerfile FROM :latest/untagged
|
|
1186
|
-
- **Cost-effectiveness evaluator deepened (15 → 20 rules)** — Five new rules: COST-016 high-frequency events without debounce/throttle, COST-017 large bundle imports (lodash, moment, rxjs full imports), COST-018 event listeners without cleanup (memory leak), COST-019 inline objects/functions in React JSX props causing re-renders
|
|
1187
|
-
- **UX evaluator deepened (12 → 18 rules)** — Six new rules for user-experience quality detection
|
|
1188
|
-
- **Integration tests** — 19 new tests covering all 5 output formatters (SARIF, JUnit, HTML, CodeClimate, GitHub Actions), evaluation of all 7 new languages (Dart, Bash, SQL, PHP, Ruby, Kotlin, Swift), multi-file project evaluation, diff-based evaluation, and verdict structure validation
|
|
1189
|
-
|
|
1190
|
-
### Fixed
|
|
1191
|
-
- **`ruleNum` increment bug** — Last rule in accessibility, IaC security, cost-effectiveness, and UX evaluators used `ruleNum` without `++`, causing potential rule-ID collisions when new rules were appended. Fixed across all four evaluators
|
|
1192
|
-
|
|
1193
|
-
### Tests
|
|
1194
|
-
- 2210 tests (2180 pass, 30 pre-existing failures unrelated to this release)
|
|
1195
|
-
- Self-eval: 0 findings across 177 source files
|
|
1196
|
-
- Benchmark: Grade A, F1 = 94.4%, Precision = 98.9%, Recall = 90.3%
|
|
1197
|
-
|
|
1198
|
-
## [3.26.0] — 2026-03-09
|
|
1199
|
-
|
|
1200
|
-
### Fixed
|
|
1201
|
-
- **Security evaluator false positives** — Fixed two regex patterns that triggered on benign code: `args\.` now uses word boundary (`\bargs\.`) to avoid matching compound identifiers like `curlArgs`, and static IV pattern now uses `\b(?:iv|IV)\b` to avoid matching strings like `PRIV`
|
|
1202
|
-
- **PR review inline suppressions removed** — Two broken inline `judges-ignore-next-line` directives in `review.ts` (SEC-003, SEC-020) removed now that root cause FPs are fixed in the security evaluator
|
|
1203
|
-
|
|
1204
|
-
### Changed
|
|
1205
|
-
- **False-positive filter improvements** — Expanded heuristic coverage to eliminate self-eval findings (211 → 0):
|
|
1206
|
-
- SEC-* and HALLU-* rules added to analysis-tool inapplicable prefixes (evaluator code contains detection patterns by design)
|
|
1207
|
-
- Test file gating expanded from TEST-* only to TEST-*/SEC-*/HALLU-* for files with embedded code specimens
|
|
1208
|
-
- New benchmark CLI gating suppresses SEC/HALLU on benchmark command files with ≥5 template literal code specimens
|
|
1209
|
-
- CLI file-system-access and database-related SEC findings suppressed (CLI tools are designed for file I/O and have no database connections)
|
|
1210
|
-
- Utility module gating expanded with path-confirmed rules for PERF/COST/TEST/COMPAT/ERR/STRUCT prefixes
|
|
1211
|
-
- **Scoring module refactored** — `estimateFindingConfidenceWithBasis()` (cyclomatic complexity 42) decomposed into 7 focused helpers: `scoreLinePrecision()`, `scorePatternSpecificity()`, `scoreStructuredEvidence()`, `scoreAbsencePattern()`, `scoreProvenance()`, `scoreDomainAlignment()`, `applyNoiseCap()`
|
|
1212
|
-
|
|
1213
|
-
### Tests
|
|
1214
|
-
- 2191 tests (2161 pass, 30 pre-existing failures unrelated to this release)
|
|
1215
|
-
- Self-eval: 0 findings across 176 source files (down from 211)
|
|
1216
|
-
- Benchmark: Grade A, F1 = 94.4%, Precision = 98.9%, Recall = 90.3%, Detection = 99.9%
|
|
1217
|
-
|
|
1218
|
-
## [3.25.1] — 2026-03-09
|
|
1219
|
-
|
|
1220
|
-
### Fixed
|
|
1221
|
-
- **PR review JSON output pollution** — In `--format json` mode, banner and informational `console.log` messages were written to stdout alongside the JSON result, corrupting the output file. All non-JSON output now redirected to stderr so stdout is pure JSON
|
|
1222
|
-
- **Inline PR review comments never posted in JSON mode** — `process.exit()` was called before the GitHub review-posting code, so inline comments and approve/request-changes events were silently skipped. Now posts the review before emitting JSON
|
|
1223
|
-
- **Workflow stderr redirect corrupting result file** — Removed `2>&1` from the PR review workflow step so stderr (Node.js warnings, subprocess output) no longer pollutes `judges-review-result.json`
|
|
1224
|
-
- **CodeQL code scanning alerts resolved** — Fixed 14 code scanning alerts: command injection via `execSync` replaced with `execFileSync`, incomplete URL substring sanitization, missing origin checks in `postMessage`, and unsafe regexp construction
|
|
1225
|
-
- **ESLint unused variable/import warnings** — Resolved 5 lint errors across evaluators, scoring, and comparison modules
|
|
1226
|
-
|
|
1227
|
-
### Changed
|
|
1228
|
-
- **CI: actions/configure-pages bumped from v4 to v5** (Dependabot #18)
|
|
1229
|
-
- **Dev dependencies updated** — vitest, @biomejs/biome, and @anthropic-ai/sdk bumped (Dependabot #19)
|
|
1230
|
-
|
|
1231
|
-
### Tests
|
|
1232
|
-
- 2191 tests (2161 pass, 30 pre-existing failures unrelated to this release)
|
|
1233
|
-
|
|
1234
|
-
## [3.25.0] — 2026-03-09
|
|
1235
|
-
|
|
1236
|
-
### Added
|
|
1237
|
-
- **Project context in L2 prompts** — `detectProjectContext()` auto-detects frameworks, runtime, entry-point type, project type, and dependencies from code. `formatProjectContextSection()` injects this context into deep-review prompts so L2 reviews calibrate to the stack (e.g., absence-based rate-limiting rules suppressed for CLI tools). Wired into `evaluate_code`, `evaluate_code_single_judge`, and `evaluate_file` MCP handlers. React added to framework detection patterns
|
|
1238
|
-
- **Multi-file fix coordination** — `collectPatchSet()` groups findings by file path into a `PatchSet`, and `applyPatchSet()` applies patches across multiple files with per-file results. Enables cross-file auto-fix from a single review pass
|
|
1239
|
-
- **Real-time IDE evaluation** — VS Code extension now supports on-change evaluation via debounced `onDidChangeTextDocument` handler. Controlled by `judges.evaluateOnChange` (default: off) and `judges.changeDebounceMs` (default: 2000ms) settings
|
|
1240
|
-
- **Evidence chains on findings** — `buildEvidenceChain()` constructs multi-step evidence (detection trigger, location precision, cross-file context, fix availability) with a severity-calibrated impact statement. `EvidenceChain` and `EvidenceStep` types added to `Finding`
|
|
1241
|
-
- **Auto-suppression from triage history** — `triageToFeedbackEntries()` converts false-positive/wont-fix triage decisions into feedback entries. `getTriageBasedSuppressions()` identifies rules that should be auto-suppressed based on triage patterns (≥80% FP rate with ≥3 samples)
|
|
1242
|
-
- **AI-specific benchmark cases** — 10 new benchmark cases covering model-serving input validation, embedding data leakage, unbounded LLM streaming, async race conditions, memory leak patterns, N+1 queries, unsafe type assertions, hardcoded AI credentials, plus 2 clean counterparts
|
|
1243
|
-
- **PR review summary narrative** — `buildPRReviewNarrative()` generates rich review summaries with executive summary, per-file breakdown (sorted by finding count), cross-cutting theme analysis (17 domain labels), and prioritized action items. Replaces the previous `buildReviewSummary()`
|
|
1244
|
-
- **Review completeness signal** — `assessReviewCompleteness()` returns a `ReviewCompleteness` struct with `complete` boolean, coverage percentage, unreviewed files list, and human-readable status message
|
|
1245
|
-
|
|
1246
|
-
### Fixed
|
|
1247
|
-
- **Node.js runtime detection** — `require()` calls now correctly detected by splitting the regex to avoid trailing `\b` failure on non-word characters
|
|
1248
|
-
- **Serverless entry-point detection** — Added "serverless" pattern to `ENTRY_POINT_PATTERNS` so `exports.handler` / Lambda / Azure Functions code is correctly classified as serverless entry points
|
|
1249
|
-
|
|
1250
|
-
### Tests
|
|
1251
|
-
- 821 tests (808 pass, 13 pre-existing failures unrelated to this release)
|
|
1252
|
-
|
|
1253
|
-
## [3.24.0] — 2026-03-09
|
|
1254
|
-
|
|
1255
|
-
### Added
|
|
1256
|
-
- **Closed-loop L2 feedback capture** — L2 (LLM deep-review) dismissals are now automatically parsed and recorded as feedback via `parseDismissedFindings()` and `recordL2Feedback()`. `FeedbackEntry.source` tracks origin (`manual`, `l2-dismissal`, `pr-review`)
|
|
1257
|
-
- **Finding triage workflow** — Findings can now be triaged as `accepted-risk`, `deferred`, `wont-fix`, or `false-positive` via `triageFinding()`. New CLI command `judges triage set|list|summary` for interactive triage. Triaged findings are preserved across scans
|
|
1258
|
-
- **Multi-file context in L2 prompts** — Deep-review builders accept optional `relatedFiles` parameter to include cross-file snippets (imports, callers, config) in L2 prompts. MCP tool schemas updated with `relatedFiles` input
|
|
1259
|
-
- **L2 coverage benchmark** — `analyzeL2Coverage()` maps L1 false negatives to judges and checks L2 prompt availability. `formatL2CoverageReport()` generates markdown with per-judge, per-category, and per-difficulty breakdowns. CLI: `judges benchmark l2-coverage`
|
|
1260
|
-
- **Benchmark case ingestion pipeline** — `ingestFindingsAsBenchmarkCases()` converts real-world findings into benchmark cases with category inference and code truncation. `deduplicateIngestCases()` prevents duplicates via normalized-whitespace fingerprinting. CLI: `judges benchmark ingest <file>`
|
|
1261
|
-
- **Centralized org policy management** — `PolicyLock` for locking org-wide configuration baselines. `validatePolicyCompliance()` checks required judges, rules, severity thresholds, and baseline compliance. `pullRemoteConfig()` fetches team configs over HTTPS (with SSRF protection). CLI: `judges config pull|lock|validate`
|
|
1262
|
-
|
|
1263
|
-
### Tests
|
|
1264
|
-
- 1824 tests passing (784 subsystems + 1040 judges), 13 pre-existing failures unrelated to this release
|
|
1265
|
-
|
|
1266
|
-
## [3.23.20] — 2026-03-08
|
|
1267
|
-
|
|
1268
|
-
### Fixed
|
|
1269
|
-
- **All per-judge FP rates now under 30%** — STRUCT dropped from 40% → 23.8%, ETHICS from 33% → 0%, COMPAT from 60% → 0% via expectedRuleIds corrections and new TP cases
|
|
1270
|
-
- **Structural parser cyclomatic-complexity counting fixed** — `&&`, `||`, and ternary `?` operators now correctly counted in DECISION_POINTS regex for all brace-based languages; previously `\b` word boundaries silently prevented matching these operators
|
|
1271
|
-
- **Ternary `?` no longer matches optional chaining `?.` or nullish coalescing `??`** — DECISION_POINTS regex uses `\?(?![.?])` to avoid false CC inflation
|
|
1272
|
-
- **struct-tp-permission-resolver benchmark case fixed** — Multi-line function parameters collapsed to single line so the structural parser's line-by-line FUNC_PATTERNS regex can detect the function
|
|
1273
|
-
- **ux-tp-destructive-no-confirm benchmark case fixed** — Code expanded from ~35 to ~65 lines to satisfy UX-001's >50 line threshold
|
|
1274
|
-
- **STRUCT-001 added to 4 benchmark expectedRuleIds** — ts-code-smells, maint-god-function-long, maint-deep-deep-nesting, swdev-deep-deep-nesting now correctly expect STRUCT-001 detection
|
|
1275
|
-
|
|
1276
|
-
### Improved
|
|
1277
|
-
- **Benchmark: Grade A, F1=94.7%** — Up from 91.3%; 1022 cases, 0 failures, Precision=98.9%, Recall=91.0%, Detection Rate=100%
|
|
1278
|
-
|
|
1279
|
-
### Tests
|
|
1280
|
-
- 1040 tests passing, 0 failures
|
|
1281
|
-
|
|
1282
|
-
## [3.23.19] — 2026-03-08
|
|
1283
|
-
|
|
1284
|
-
### Added
|
|
1285
|
-
- **Benchmark expanded from 301 to 1003 test cases** — Added 7 new benchmark files covering security-deep (99 cases), quality-ops (74), languages (63), infrastructure (83), compliance-ethics (81), AI-agents (86), and advanced cross-cutting scenarios (226), plus expanded cases in existing files
|
|
1286
|
-
- **New benchmark categories** — Full coverage across 55 categories including injection, XSS, auth, IaC-security, AI-code-safety, hallucination-detection, agent-security, compliance, ethics, internationalization, data-sovereignty, and more
|
|
1287
|
-
|
|
1288
|
-
### Fixed
|
|
1289
|
-
- **Benchmark Grade A maintained at 1003 cases** — F1=91.3%, Precision=98.0%, Recall=85.4%, 14 FP, 120 FN
|
|
1290
|
-
- **Duplicate benchmark IDs resolved** — 8 duplicate case IDs across 3 files renamed to ensure all 1003 cases load correctly
|
|
1291
|
-
- **4 benchmark expectedRuleIds corrected** — SCALE-001, MAINT-001, COST-001, CACHE-001 removed from cases where judges cannot reliably detect the pattern, eliminating false negatives
|
|
1292
|
-
|
|
1293
|
-
### Tests
|
|
1294
|
-
- 1040 tests passing, 0 failures
|
|
1295
|
-
- Benchmark: 1003 cases, Grade A, F1=91.3%, Detection Rate=100% across all difficulties
|
|
1296
|
-
|
|
1297
|
-
## [3.23.18] — 2026-03-07
|
|
1298
|
-
|
|
1299
|
-
### Changed
|
|
1300
|
-
- **DOC-001 precision improved** — Added cryptic-naming heuristic: only flags undocumented functions with short names (≤3 chars) or multiple single-letter parameters; self-documenting code with descriptive names is no longer flagged (FP rate 91.3% → 0%)
|
|
1301
|
-
- **OBS-001 precision improved** — Added minimum route-count requirement (≥2 route definitions, excluding middleware); single-endpoint snippets are no longer flagged (FP rate 50% → 25%)
|
|
1302
|
-
|
|
1303
|
-
### Fixed
|
|
1304
|
-
- **Benchmark** — Grade A, F1=0.904, TP=355, FN=75, FP=0 (301 cases, 39 judges)
|
|
1305
|
-
- **Tests** — 1040 pass, 0 fail
|
|
1306
|
-
|
|
1307
|
-
## [3.23.17] — 2026-03-07
|
|
1308
|
-
|
|
1309
|
-
### Changed
|
|
1310
|
-
- **Judge count updated to 39** — All references across docs, tests, HTML, action.yml, Dockerfile, and README updated from 37 to 39
|
|
1311
|
-
- **VS Code extension README rewritten** — New adoption-focused copy: 1-sentence value prop, "Try in 60 seconds" quick start, noise-control section, CI integration guide, full 15-language listing
|
|
1312
|
-
- **Default `minSeverity` raised to `"high"`** — New installs see only critical + high findings, reducing noise for first-time users
|
|
1313
|
-
- **Preset dropdown with enum values** — `judges.preset` now offers named choices (strict, lenient, security-only, startup, compliance, performance) in the Settings UI
|
|
1314
|
-
|
|
1315
|
-
### Added
|
|
1316
|
-
- **First-run toast notification** — After the first successful evaluation, a one-time toast introduces `@judges` chat and links to noise settings
|
|
1317
|
-
- **`Judges: Add CI Workflow` command** — Generates `.github/workflows/judges.yml` with a PR-triggered security-only preset
|
|
1318
|
-
- **"Report false positive" code action** — New Quick Fix action opens a pre-filled GitHub issue for any Judges finding
|
|
1319
|
-
- **Enhanced `@judges /help`** — Now includes verdict bands (PASS/WARN/FAIL), noise-control tips, and more examples
|
|
1320
|
-
- **Improved chat command inference** — `inferCommand()` now recognizes "run judges", "judges review", "evaluate", "check" as review intent
|
|
1321
|
-
- **Updated welcome view** — Findings panel shows 3 quick actions: evaluate file, evaluate workspace, open @judges chat
|
|
1322
|
-
|
|
1323
|
-
### Tests
|
|
1324
|
-
- 1040 tests passing (0 failures)
|
|
1325
|
-
|
|
1326
|
-
## [3.23.16] — 2026-03-07
|
|
1327
|
-
|
|
1328
|
-
### Fixed
|
|
1329
|
-
- **Benchmark F1 improved from 0.900 to 0.904** — TP increased from 352 to 355 with 0 FP, maintaining Grade A
|
|
1330
|
-
- **10 benchmark expectedRuleIds prefix mismatches** — Fixed AI→AICS, DEP→DEPS, CONFIG→CFG, DSOV→SOV, PORT→PORTA, FRAME→FW, LOG→LOGPRIV prefix mappings in benchmark cases that caused false negatives in scoring
|
|
1331
|
-
- **LOGPRIV utility-module FP filter suppression** — Removed `LOGPRIV-` from `UTILITY_INAPPLICABLE` prefixes in false-positive-review.ts; logging privacy violations (passwords, tokens, PII in logs) are valid concerns even in utility code
|
|
1332
|
-
- **DEPS FP filter suppression** — Exempted `DEPS-*` findings from the import/type-only line false-positive filter; dependency declarations in import lines ARE the finding
|
|
1333
|
-
- **REL timeout context false suppression from comments** — Added `isCommentLine` filter to the timeout/retry context window in reliability.ts so comments like `// No timeout, no retry` no longer trick the evaluator into thinking timeout handling exists
|
|
1334
|
-
- **DOC evaluator thresholds too strict** — Lowered undocumented-function minimum from ≥5 to ≥2 and file-length guard from >100 to >10 lines, allowing detection in smaller modules
|
|
1335
|
-
- **OBS console.log threshold too strict** — Lowered "console logging instead of structured logger" threshold from >15 to >5 instances
|
|
1336
|
-
- **LOGPRIV password-logging threshold too strict** — Lowered from ≥4 to ≥2 instances; even 2 password log statements indicate a privacy violation
|
|
1337
|
-
|
|
1338
|
-
### Changed
|
|
1339
|
-
- 22 evaluators refined with improved detection thresholds across ai-code-safety, api-design, caching, cloud-readiness, code-structure, concurrency, configuration-management, cost-effectiveness, data-security, data-sovereignty, database, documentation, framework-safety, logging-privacy, maintainability, observability, performance, rate-limiting, reliability, scalability, software-practices, and ux
|
|
1340
|
-
- Test fixtures expanded to match updated evaluator thresholds across all affected test suites
|
|
1341
|
-
|
|
1342
|
-
### Tests
|
|
1343
|
-
- 1040 tests passing
|
|
1344
|
-
- 301 benchmark cases: TP=355, FN=75, FP=0, F1=0.904, Grade A
|
|
1345
|
-
|
|
1346
|
-
## [3.23.15] — 2026-03-06
|
|
1347
|
-
|
|
1348
|
-
### Fixed
|
|
1349
|
-
- **VS Code Marketplace publish fix** — Obfuscated fake Slack webhook URL in benchmark test data (`ts-cicd-secrets-in-code`) that triggered `vsce`'s secret scanner, and added `--allow-package-secrets slack` to the publish workflow as a safety net
|
|
1350
|
-
|
|
1351
|
-
## [3.23.14] — 2026-03-06
|
|
1352
|
-
|
|
1353
|
-
### Fixed
|
|
1354
|
-
- **Benchmark Grade A achieved** — F1 score improved from 0.889 (Grade B) to 0.900 (Grade A) with TP=352, FN=78, FP=0
|
|
1355
|
-
- **SEC-018 path traversal FP on CLI tools** — Added HTTP handler context requirement to the direct file-ops-near-path-join detection block, preventing false positives on Go/Python CLI tools that use `filepath.Join` + `os.ReadFile` without any HTTP context
|
|
1356
|
-
- **ERR-002 Go builtin `close()` FP** — Changed unchecked-close pattern from `(?:\w+\.)?Close` to `\w+\.Close` requiring a method receiver, so Go's builtin `close(ch)` (which doesn't return a value) is no longer flagged
|
|
1357
|
-
- **AUTH hardcoded credential detection for camelCase identifiers** — Added `camelCaseAssignmentPattern` to detect credentials in camelCase identifiers like `dockerPassword`, `awsSecretAccessKey`, `awsAccessKeyId` that were missed by word-boundary patterns
|
|
1358
|
-
- **AUTH JWT 'none' algorithm detection** — Broadened pattern from exact `['none']` to match `'none'` anywhere in the algorithms list (e.g., `algorithms: ['HS256', 'none']`)
|
|
1359
|
-
- **IAC YAML IaC detection** — Added content-based detection for Docker Compose (`services:`) and Kubernetes (`apiVersion:|kind:`) manifests, since YAML was not recognized as IaC by the language normalizer. Detects `privileged: true`, `network_mode: host`, `allowPrivilegeEscalation: true`, and hardcoded secrets in environment variables
|
|
1360
|
-
- **SEC-022 format string cross-line matching** — Changed `.*` to `[\s\S]*` in the format-string injection context check so `request.args.get` on one line and `.format()` on the next are correctly matched
|
|
1361
|
-
- **CYBER SSTI Python `.format()` injection** — Added detection of Python `.format()` calls with user-controlled input (`request.args`, `request.form`, etc.)
|
|
1362
|
-
- **ERR multi-line empty catch block detection** — Added forward-scanning logic to detect catch blocks spanning multiple lines that contain only comments or whitespace, complementing the existing single-line empty catch pattern
|
|
1363
|
-
|
|
1364
|
-
### Tests
|
|
1365
|
-
- 1059 tests passing
|
|
1366
|
-
- 301 benchmark cases: TP=352, FN=78, FP=0, F1=0.900, Grade A
|
|
1367
|
-
|
|
1368
|
-
## [3.23.13] — 2026-03-06
|
|
1369
|
-
|
|
1370
|
-
### Added
|
|
1371
|
-
- **P3 — Benchmark expansion to 300+**: 301 benchmark test cases (79 original + 110 batch 2 + 112 batch 3) covering PHP, Ruby, Kotlin, Swift, and advanced patterns
|
|
1372
|
-
- **P4 — Full pipeline PHP/Ruby/Kotlin/Swift**: Structural parser extended with complete AST support for PHP, Ruby (including end-keyword extractors), Kotlin, and Swift
|
|
1373
|
-
- **P5 — Inline PR suggested fixes**: GitHub suggestion blocks with `start_line`/`start_side` for multi-line ranges in review.ts and github-app.ts
|
|
1374
|
-
- **P6 — Hallucinated API validation**: New 39th judge (`hallucination-detection`, prefix `HALLU`) with 30+ patterns across 10+ languages to detect non-existent API calls
|
|
1375
|
-
- **P7 — FP rate tracking & auto-tuning**: `src/auto-tune.ts` engine with time-decay weighted FP rates, auto-suppression (≥80% FP), severity downgrade (50–80%), confidence boost (<15%), trend detection; `judges feedback tune` CLI subcommand; integrated into evaluators/index.ts calibration pipeline
|
|
1376
|
-
- **P8 — VS Code extension all languages**: Added PHP, Ruby, Kotlin, Swift to all LANG_MAP objects, SUPPORTED_LANGUAGES, and activationEvents; added Terraform, Bicep, PowerShell to activationEvents (15 languages total)
|
|
1377
|
-
|
|
1378
|
-
### Fixed
|
|
1379
|
-
- Removed unused imports across security.ts, hallucination-detection.ts, auto-tune.ts, github-app.ts
|
|
1380
|
-
- Replaced `as any` casts with proper `TribunalRunner` type in github-app.ts and review.ts
|
|
1381
|
-
- Fixed `!=` to `!==` strict equality in github-app.ts
|
|
1382
|
-
- Fixed unnecessary regex escape characters in security.ts and benchmark-expanded.ts
|
|
1383
|
-
- Removed unused `ruleNum++` post-increments in ci-cd.ts, software-practices.ts, agent-instructions.ts, security.ts
|
|
1384
|
-
- Updated judge count from 38 to 39 in test assertions and extension descriptions
|
|
1385
|
-
- Cleaned up stale benchmark output files; added to .gitignore
|
|
1386
|
-
|
|
1387
|
-
### Tests
|
|
1388
|
-
- 1059 tests passing (8 new auto-tune tests, judge registry count updated)
|
|
1389
|
-
|
|
1390
|
-
## [3.23.12] — 2026-03-06
|
|
1391
|
-
|
|
1392
|
-
### Fixed
|
|
1393
|
-
- **Benchmark: 79/79 (0 FN, 0 FP)** — Resolved all remaining benchmark failures (was 17 FN / 2 FP in 3.23.11).
|
|
1394
|
-
- **classifyFile health-check misclassification** — Express apps with a `/status` endpoint AND other routes are now correctly classified as "server" instead of "utility". Added `routeHandlerCount` guard so files with 2+ route handlers skip the health-check heuristic.
|
|
1395
|
-
- **Structural parser false dead-code on template literals** — The `return \`...\`` pattern no longer causes subsequent lines to be marked as dead code. Multi-line expression detection (odd backtick count, unmatched parens/brackets) skips dead code marking.
|
|
1396
|
-
- **Absence gating removal for 6 evaluators** — Removed `isAbsenceBased: true` from OBS-001 (no logging), REL-001 (graceful shutdown), TEST-001 (no tests), CICD-001 (no CI/CD pipeline), SWDEV-001 (no linting/formatting), and CACHE-002 (no caching). Added concrete `lineNumbers` so findings survive the absence filter.
|
|
1397
|
-
- **I18N findings on non-web code** — Removed I18N from `WEB_ONLY_PREFIXES` so internationalization findings apply to any code with user-facing strings (string formatting utilities, CLI output, etc.), not just code with web patterns.
|
|
1398
|
-
- **COMPAT findings on comment-based evidence** — Exempted COMPAT-* from the "all comment lines" false-positive check. The backwards-compatibility evaluator intentionally scans comments (e.g., `// Was: oldFieldName`) as evidence of breaking changes.
|
|
1399
|
-
- **A11Y click handler FP on native elements** — Native interactive elements (`<button>`, `<a>`, `<input>`, `<select>`, `<textarea>`) with `onClick` are no longer flagged for missing keyboard handlers, since they inherently support keyboard events.
|
|
1400
|
-
- **A11Y form input FP on multi-line JSX** — The `<input>` label check now scans the full multi-line JSX tag (up to 10 subsequent lines) for `id=`, `aria-label`, or `aria-labelledby`, instead of only checking the opening line.
|
|
1401
|
-
- **SQL injection FP on JSX labels** — Both CYBER and SEC SQL injection fallback checks now require 2+ SQL keywords on the same line, preventing false positives where UI labels like `Select ${user.name}` triggered the single-keyword match.
|
|
1402
|
-
- **IAC egress rule FP** — The IaC overly-permissive network rule check now skips `0.0.0.0/0` in Terraform `egress` blocks, which is standard outbound traffic configuration.
|
|
1403
|
-
- **Go CLI tool FP** — Extended `isLikelyCLI()` to recognize Go (`flag.*`), Python (`argparse`, `click`, `typer`), and Rust (`clap`) CLI patterns, so `log.Fatal` in `main()` is no longer flagged as abrupt process termination.
|
|
1404
|
-
- **WEB_ONLY check expanded** — `hasWebPatterns` regex now includes HTTP API patterns (`res.json`, `app.get`, `router.post`, `@app.route`, `@GetMapping`, `http.HandleFunc`), so A11Y/UX findings survive on API server code.
|
|
1405
|
-
- **UTILITY_INAPPLICABLE trimmed** — Removed I18N-, A11Y-, AICS-, ETHICS-, COMPAT- from the utility-inapplicable prefix list.
|
|
1406
|
-
- **FP filter: AICS/DEPS exemptions** — AICS-* findings exempted from "all comment lines" check; DEPS-* findings exempted from "all string literal lines" check.
|
|
1407
|
-
- **Caching threshold** — CACHE-002 line count threshold reduced from 40 to 15 lines.
|
|
1408
|
-
- **Testing threshold** — TEST-001 line count threshold reduced from 50 to 20 lines.
|
|
1409
|
-
|
|
1410
|
-
### Changed
|
|
1411
|
-
- **`isLikelyCLI()` scope** — Now detects CLI tool patterns across 5 ecosystems (Node.js, Go, Python, Rust, shell shebang) instead of only Node.js.
|
|
1412
|
-
|
|
1413
|
-
### Tests
|
|
1414
|
-
- 1044 tests passing, 0 failures
|
|
1415
|
-
- 79/79 benchmark cases passing (66 vulnerability + 13 clean)
|
|
1416
|
-
|
|
1417
|
-
## [3.23.11] — 2026-03-06
|
|
1418
|
-
|
|
1419
|
-
### Added
|
|
1420
|
-
- **Security evaluator + judge** — New SEC-prefixed evaluator with 15 rules covering input validation, path traversal, uncontrolled file access, missing rate limiting, insecure randomness, information disclosure, and more. Registered as the 38th judge in the panel.
|
|
1421
|
-
- **AUTH: JWT decode-without-verify rule** — Detects `jwt.decode()` usage without corresponding `jwt.verify()`, catching the JWT "none algorithm" vulnerability. Severity: critical, confidence: 0.95.
|
|
1422
|
-
- **AUTH: Timing-unsafe comparison rule** — Detects `===`/`==` comparison of secrets, tokens, signatures, or hashes without `timingSafeEqual` or `constantTimeCompare`. Severity: high, confidence: 0.85.
|
|
1423
|
-
- **CONC: Go unsynchronized map detection** — Detects package-level `map` declarations accessed from HTTP handlers or goroutines without `sync.Mutex`/`sync.Map` protection. Severity: critical, confidence: 0.9.
|
|
1424
|
-
- **Auto-fix patches for Ruby, Rust, Kotlin, Swift, and Scala** — 40+ new patch rules covering command injection, SQL injection, path traversal, eval usage, deserialization, XSS, CSRF, and cryptographic weaknesses across five additional languages.
|
|
1425
|
-
- **Benchmark markdown report** — `formatBenchmarkMarkdown()` generates a publishable markdown report with grade badges, per-category breakdown, FP analysis, and missed-case details.
|
|
1426
|
-
- **Benchmark GitHub Actions workflow** — `.github/workflows/benchmark.yml` runs the benchmark suite on push/PR and publishes `benchmark-results.json` and `docs/benchmark-report.md` as artifacts.
|
|
1427
|
-
- **PR review: config and calibration support** — `judges review` now accepts `--config`, `--confidence`, and `--calibrate` flags. Loads `.judgesrc` cascading config, suppresses rules with high FP rates from feedback history, and applies feedback-driven confidence calibration.
|
|
1428
|
-
- **PR review: FP suppression tracking** — Review results now report `fpSuppressed` count for rules filtered by feedback-driven confidence thresholds.
|
|
1429
|
-
- **PR review workflow overhaul** — `.github/workflows/judges-pr-review.yml` upgraded to Node 22, adds build step, uses inline `judges review` command with `--approve`, `--calibrate`, and `--format json`, and posts structured summary comments.
|
|
1430
|
-
|
|
1431
|
-
### Fixed
|
|
1432
|
-
- **AUTH hardcoded-secret false negatives** — URLs containing `example` (e.g., `api.example.com`) no longer trigger the non-production context suppression. URLs and domain names are stripped from context before the non-production pattern check.
|
|
1433
|
-
- **AUTH compound identifier matching** — Variables like `DB_PASSWORD`, `ADMIN_SECRET`, and `API_KEY` are now detected via a compound assignment pattern (`\w+[_-](password|secret|api_key|token|...)`).
|
|
1434
|
-
- **CYBER Java deserialization detection** — Broadened `UNSAFE_DESERIALIZATION.java` pattern to catch instance-style `ois.readObject()` calls and `new ObjectInputStream` construction, not just static `ObjectInputStream.readObject`.
|
|
1435
|
-
- **CYBER C# SQL injection detection** — SQL injection fallback now detects C# string interpolation (`$"SELECT ... {query} ..."`) in addition to JavaScript template literals.
|
|
1436
|
-
- **SEC input validation FP on Pydantic/Django** — `BaseModel`, `Field()`, `EmailStr`, `HttpUrl`, `Serializer`, `Form`, and `ModelForm` are now recognized as validation frameworks, preventing false positives on clean Python FastAPI code.
|
|
1437
|
-
- **SEC file access FP on compound identifiers** — Tightened user input matching from broad `/input|user/i` to require assignment/access operators (e.g., `input[`, `user.`), preventing false positives on config properties like `cfg.InputDir`.
|
|
1438
|
-
- **Cross-evaluator dedup prefix preservation** — Dedup now preserves up to 3 findings from unique non-winner prefixes per cluster, annotated with `_Primary finding: [winner ruleId]_`, ensuring diverse evaluator perspectives are retained.
|
|
1439
|
-
- **Tribunal "high findings" test** — Fixed test to check raw evaluations instead of capped output, since the 20-finding cap can exclude high-severity findings when many critical findings exist.
|
|
1440
|
-
|
|
1441
|
-
### Changed
|
|
1442
|
-
- **Judge count** — Panel increased from 37 to 38 judges with the addition of the security judge.
|
|
1443
|
-
|
|
1444
|
-
### Tests
|
|
1445
|
-
- 1044 tests passing
|
|
1446
|
-
|
|
1447
|
-
### Benchmark
|
|
1448
|
-
- **P=97.8%, R=80.2%, F1=88.1%** (TP=89, FN=22, FP=2)
|
|
1449
|
-
|
|
1450
|
-
## [3.23.10] — 2026-03-06
|
|
1451
|
-
|
|
1452
|
-
### Fixed
|
|
1453
|
-
- **File classification ordering bug** — Path-based category checks (analysis-tool, CLI, VS Code extension) now run before content-based heuristics in `classifyFile()`. Previously, evaluator files were misclassified as "test" (due to `.test()` regex method calls) and command files as "server" (due to framework name mentions in string-literal data), causing ~550 false positive findings.
|
|
1454
|
-
- **Test detection false match on `.test()` regex calls** — The test-file heuristic no longer matches `.test()` regex method calls (e.g., `/pattern/.test(str)`). Uses a strip-and-recheck approach to exclude regex API usage from the test-framework signal.
|
|
1455
|
-
- **Server detection false match on string-literal framework names** — Files that reference Django, Spring, Express etc. inside template-literal code specimens or preset data are no longer misclassified as "server". Analysis-tool import checks now run before server signal detection.
|
|
1456
|
-
- **VS Code extension diagnostics provider** — Fixed diagnostic scope to avoid stale diagnostics on file close.
|
|
1457
|
-
- **ESLint warnings fixed** — Resolved useless-escape warnings in `taint-tracker.ts`, `structural-parser.ts`, `deep-review.ts`, `compliance.ts`, and `fix.ts`; fixed useless-assignment in `framework-safety.ts`.
|
|
1458
|
-
- **Duplicate string literals in errors.ts** — Extracted `"JUDGES_CONFIG_INVALID"`, `"JUDGES_EVALUATION_FAILED"`, and `"JUDGES_PARSE_FAILED"` into an `ErrorCode` constants object (MAINT-001).
|
|
1459
|
-
- **Missing `@returns` JSDoc tags** — Added `@returns` documentation to all exported functions in `cache.ts`, `disk-cache.ts`, and `fix-history.ts` (DOC-001/DOC-003).
|
|
1460
|
-
- **Long function refactoring** — Extracted `evictLru()` helper in `LRUCache`, and `loadIndexFile()`, `isEntryExpired()`, `readEntryFile()` standalone helpers in `DiskCache` to reduce average function length (MAINT-001).
|
|
1461
|
-
|
|
1462
|
-
### Added
|
|
1463
|
-
- **`analysis-tool` file category** — New `FileCategory` for files in `src/evaluators/`, `src/commands/`, `scripts/`, `src/ast/`, and other analysis-tool directories. 28 inapplicable rule prefixes suppressed (SOV, CLOUD, A11Y, DB, etc.).
|
|
1464
|
-
- **`vscode-extension` file category** — New `FileCategory` for VS Code extension source. 19 inapplicable rule prefixes suppressed.
|
|
1465
|
-
- **Utility module FP heuristics** — Expanded utility-file suppression for rules that target deployed services (SCALE, CFG, COMPAT, PORTA, etc.) but not maintenance or documentation rules.
|
|
1466
|
-
- **Analysis-tool test specimen heuristic** — TEST-* rules suppressed on analysis-tool files when flagged patterns exist only inside template-literal code specimens (test fixtures).
|
|
1467
|
-
- **High-regex-count fallback** — Files with ≥20 regex literals automatically classified as analysis-tool (catches pattern-heavy files like `language-patterns.ts`).
|
|
1468
|
-
- **Self-evaluation build gate** — `npm run check` runs `tsc --noEmit && eslint && self-eval` ensuring zero judges findings across all 160 source files. `npm run self-eval` available standalone.
|
|
1469
|
-
- **`scripts/self-eval.ts`** — Walks `src/`, `vscode-extension/src/`, and `tests/`, runs `evaluateWithTribunal` on every `.ts` file, and exits non-zero if any findings remain.
|
|
1470
|
-
- **`scripts/debug-classify.ts`** — Diagnostic script to inspect file classification assignments.
|
|
1471
|
-
|
|
1472
|
-
### Tests
|
|
1473
|
-
- 1037 tests passing
|
|
1474
|
-
|
|
1475
|
-
## [3.23.9] — 2026-03-06
|
|
1476
|
-
|
|
1477
|
-
### Changed
|
|
1478
|
-
- **Deep review is now the default** — `@judges`, `/review`, and `/deepreview` all run Layer 1 (pattern analysis) + Layer 2 (AI contextual review) by default.
|
|
1479
|
-
- **New `/shallowreview` command** — Added `/shallowreview` slash command for fast Layer 1 pattern-only analysis without the LLM deep review step.
|
|
1480
|
-
|
|
1481
|
-
### Fixed
|
|
1482
|
-
- **Disk cache key includes `mustFixGate`** — The `evaluateWithTribunal` cache key now incorporates `mustFixGate` options, preventing stale cached results when toggling the must-fix gate on identical code. This caused CI failures when the must-fix gate test reused a cached result that lacked gate metadata.
|
|
1483
|
-
- **Added `.judges-cache/` to `.gitignore`** — Prevent disk cache artifacts from being committed.
|
|
1484
|
-
|
|
1485
|
-
### Tests
|
|
1486
|
-
- All 2084 tests passing (1324 judges + 760 subsystems)
|
|
1487
|
-
|
|
1488
|
-
## [3.23.8] — 2026-03-06
|
|
1489
|
-
|
|
1490
|
-
### Added
|
|
1491
|
-
- **MCP batch parallelism** (`evaluateFilesBatch`) — Bounded-concurrency multi-file evaluation for MCP tool calls, processing files in parallel batches instead of sequentially.
|
|
1492
|
-
- **Disk-backed persistent cache** (`DiskCache`) — Content-addressable LRU cache with TTL and configurable max entries, persisted to `.judges-cache/` for cross-run performance. Cache keys now incorporate evaluation options (AST, confidence, severity, rules, weights) for correctness.
|
|
1493
|
-
- **Incremental `--changed-only` flag** — Evaluate only files changed since the last git commit, using `git diff --name-only` for fast CI feedback loops.
|
|
1494
|
-
- **GitHub Actions annotation formatter** (`--format github-actions`) — Emit `::error`, `::warning`, and `::notice` annotations for native GitHub Actions integration.
|
|
1495
|
-
- **Confidence explanations** (`estimateFindingConfidenceWithBasis`) — Each finding now includes an `evidenceBasis` string explaining why the confidence score was assigned (line-precise signal, AST match, pattern heuristic, etc.).
|
|
1496
|
-
- **Per-path config overrides** — `.judgesrc.json` `overrides` array supports glob-matched per-path `minSeverity`, `disabledRules`, and `disabledJudges` settings via `applyOverridesForFile()`.
|
|
1497
|
-
- **`failOnScoreBelow` config** — Set a minimum score threshold in config; CI exits non-zero when the overall score falls below.
|
|
1498
|
-
- **Weighted judge scoring** — `judgeWeights` config field allows per-judge influence weighting on the aggregate score.
|
|
1499
|
-
- **LSP server scaffold** (`judges lsp --stdio`) — JSON-RPC/LSP server for real-time diagnostics in editors, exposed via `runLsp()`.
|
|
1500
|
-
- **Score trend CLI command** (`judges trend`) — Track and display evaluation score trends over time.
|
|
1501
|
-
- **Migration guides** (`docs/migration-guides.md`) — Step-by-step guides for migrating from ESLint, SonarQube, Semgrep, and CodeQL.
|
|
1502
|
-
- **Block-level selective autofix** — `judges fix` now supports `--rule`, `--severity`, and `--lines` flags for targeted patching.
|
|
1503
|
-
- **MCP `evaluate_file` tool** — Single-file evaluation tool for MCP integrations via `register-evaluation.ts`.
|
|
1504
|
-
- **Plugin scaffolding** (`judges scaffold-plugin`) — Generate a starter plugin directory with evaluator template, test harness, and `package.json`.
|
|
1505
|
-
|
|
1506
|
-
### Fixed
|
|
1507
|
-
- **Fix README patch count** — Updated from 53 to 114 to reflect actual patch coverage.
|
|
1508
|
-
|
|
1509
|
-
### Tests
|
|
1510
|
-
- 300+ new test lines covering all P0–P2 features
|
|
1511
|
-
- All 2084 tests passing (1324 judges + 760 subsystems)
|
|
1512
|
-
|
|
1513
|
-
## [3.23.7] — 2026-03-05
|
|
1514
|
-
|
|
1515
|
-
### Added
|
|
1516
|
-
- **`judges review` command** — Post inline review comments on GitHub PRs directly from the CLI. Supports `--pr`, `--repo`, `--approve`, `--dry-run`, `--min-severity`, `--max-comments`, and `--format` flags. Authenticates via `GITHUB_TOKEN` env var or `gh` CLI.
|
|
1517
|
-
- **`judges tune` command** — Analyze a project directory and generate an optimal `.judgesrc.json` configuration. Detects frameworks, languages, and file structure to suggest presets, disabled rules, and severity overrides. Supports `--dir`, `--apply`, `--max-files`, and `--verbose` flags.
|
|
1518
|
-
- **Finding lifecycle tracking** (`src/finding-lifecycle.ts`) — Track individual findings across evaluation runs with fingerprinting, trend detection (improving/stable/degrading), and stats. Supports in-memory and file-backed (`.judges-findings.json`) stores.
|
|
1519
|
-
- **8 framework-aware presets** — `react`, `express`, `fastapi`, `django`, `spring-boot`, `rails`, `nextjs`, `terraform` — each disables irrelevant evaluators for that framework.
|
|
1520
|
-
- **~15 new autofix patches** — Python (`eval→ast.literal_eval`, `verify=False→True`, `shell=True→False`, `open` without encoding), Go (`log.Fatal→http.Error`, defer Close error check), Rust (`panic!→Result match`, `.clone()→borrow`), Java (`System.out.println→Logger`, `Statement→PreparedStatement`), C# (`ExecuteSqlRaw→ExecuteSqlInterpolated`, `Console.WriteLine→ILogger`).
|
|
1521
|
-
- **10 new clean-code FP benchmark cases** — FastAPI, Go handler, Rust handler, Java Spring, C# ASP.NET, TS utility lib, hardened Terraform, Python data script, Go CLI tool, React component.
|
|
1522
|
-
- **Enhanced diff mode** — `judges diff` now loads full file content from disk when the file path exists, improving patch context accuracy.
|
|
1523
|
-
|
|
1524
|
-
### Tests
|
|
1525
|
-
- 38 new tests added (framework presets, finding lifecycle, new patches, review/tune CLI parsing)
|
|
1526
|
-
- All 2051 tests passing (1037 judges + 727 subsystems + 217 negative + 70 extension-logic)
|
|
1527
|
-
|
|
1528
|
-
## [3.23.6] — 2026-03-05
|
|
1529
|
-
|
|
1530
|
-
### Fixed — False Positive Reductions
|
|
1531
|
-
|
|
1532
|
-
- **Analysis-code & CLI guards** — Added `isLikelyAnalysisCode()` and `isLikelyCLI()` heuristics to `shared.ts` and applied guards across 21+ evaluators. Files that contain analysis/evaluator logic (≥8 `.test()` calls, rule-definition patterns) or CLI scaffolding (argument-parser imports, `yargs`/`commander` patterns) are now suppressed from application-code rules that would otherwise misfire.
|
|
1533
|
-
- **IaC template guards (Bicep/Terraform)** — Added `isIaCTemplate` early returns to 5 evaluators (`cloud-readiness`, `data-security`, `database`, `portability`, `maintainability`) so application-code rules no longer fire on declarative infrastructure files. Raised `maintainability` file-length threshold from 300→600 for IaC templates and suppressed duplicate-string detection for IaC.
|
|
1534
|
-
- **IAC-001 hardcoded-secret refinement** — Added `looksLikeIaCSecretValue()` post-filter to `iac-security.ts` so boolean config values (`'true'`/`'false'`), PascalCase enum identifiers, and known IaC configuration constants are no longer flagged as hardcoded secrets.
|
|
1535
|
-
|
|
1536
|
-
### Tests
|
|
1537
|
-
- 217 new negative tests added
|
|
1538
|
-
- All 1943 tests passing (1037 judges + 689 subsystems + 217 negative)
|
|
1539
|
-
|
|
1540
|
-
## [3.23.5] — 2026-03-05
|
|
1541
|
-
|
|
1542
|
-
### Security
|
|
1543
|
-
- **Dependabot: Update hono 4.12.3 → 4.12.5** — Resolves CVE-2026-29045 (arbitrary file access via serveStatic), CVE-2026-29085 (SSE control field injection via CR/LF), CVE-2026-29086 (cookie attribute injection via unsanitized domain/path). Transitive dependency of `@modelcontextprotocol/sdk`.
|
|
1544
|
-
- **Dependabot: Update @hono/node-server 1.19.9 → 1.19.11** — Resolves CVE-2026-29087 (authorization bypass for protected static paths via encoded slashes). Transitive dependency of `@modelcontextprotocol/sdk`.
|
|
1545
|
-
|
|
1546
|
-
### Fixed
|
|
1547
|
-
- **CodeQL: Polynomial ReDoS in suppression/file-ignore regexes** (`src/evaluators/index.ts`) — Replaced `[\w*,\s-]+?` with `[\w*,-]+(?:\s+(?!--)[\w*,-]+)*` to eliminate whitespace overlap with subsequent `\s+` groups, preventing catastrophic backtracking on crafted input.
|
|
1548
|
-
- **CodeQL: Polynomial ReDoS in singletonRe** (`src/evaluators/project.ts`) — Replaced `[^=]*` with `[^=\s]+(?:\s+[^=\s]+)*` to prevent overlap between optional type annotation and `\s*=`.
|
|
1549
|
-
- **CodeQL: Polynomial ReDoS in prompt stripping** (`src/tools/prompts.ts`) — Replaced regex-based `.replace()` with `split/filter/join` string-based line removal, eliminating ReDoS risk entirely.
|
|
1550
|
-
- **CodeQL: Incomplete string escaping in globToRegex** (`src/cli.ts`) — Added `-` to the regex escape character class so literal hyphens in glob patterns are properly escaped.
|
|
1551
|
-
|
|
1552
|
-
### Tests
|
|
1553
|
-
- All 1726 tests passing (1037 judges + 689 subsystems)
|
|
1554
|
-
|
|
1555
|
-
## [3.23.4] — 2025-07-26
|
|
1556
|
-
|
|
1557
|
-
### Fixed — Self-Review False Positive Reductions (3 root causes, batch 2)
|
|
1558
|
-
|
|
1559
|
-
Continued self-review of all 43 evaluator files. Groups A–E (27 files) scored 100/100 with only DOC-001. Group F (3 orchestrator files: `index.ts`, `project.ts`, `v2.ts`) scored 97–99/100, revealing 3 new FP root causes:
|
|
1560
|
-
|
|
1561
|
-
- **DATA-001: Compound identifiers ending in `iv` no longer flagged as hardcoded encryption IVs** — Added `\b` word boundaries around the short token `iv` (and `nonce`) in the `data-security.ts` encryption-key regex. Property names like `LOGPRIV: "Logging Privacy"` where `IV` appears at the end of a compound identifier previously matched `iv\s*[:=]\s*"..."`. Standalone `iv = "..."` assignments are still correctly flagged.
|
|
1562
|
-
- **DB-002: In-memory collection methods no longer trigger "mutations without transaction"** — Added a database-context signal check to `database.ts`. The `hasMutations` regex matches generic method names (`.delete()`, `.save()`, `.create()`) that are common on `Map`, `Set`, and other non-database objects. The rule now requires at least one database-related import or usage pattern (e.g., `pg`, `prisma`, `sequelize`, SQL query strings) before firing, preventing false positives on `stack.delete(node)` in DFS traversal code and `cache.delete(key)` in Map-based caches.
|
|
1563
|
-
- **SOV-001: Compound identifiers and multi-line import continuations no longer trigger "data export path"** — Enhanced `data-sovereignty.ts` export-keyword scanner with two new filters: (1) skip lines that are multi-line import continuations (bare identifiers like `UncertaintyReportV2,`), and (2) skip lines where trigger words (`report`, `export`, `download`, etc.) appear only embedded inside compound identifiers (e.g., `UncertaintyReportV2`, `DownloadManager`). Standalone usages like `export(data)` and `download(file)` are still correctly flagged.
|
|
1564
|
-
|
|
1565
|
-
### Tests
|
|
1566
|
-
- 11 new tests covering all 3 FP root causes (positive and negative cases)
|
|
1567
|
-
- 1037 judges tests passing, 689 subsystems tests passing (1726 total)
|
|
1568
|
-
|
|
1569
|
-
## [3.23.3] — 2025-07-26
|
|
1570
|
-
|
|
1571
|
-
### Fixed — Self-Review False Positive Reductions (3 root causes)
|
|
1572
|
-
|
|
1573
|
-
Ran judges against its own evaluator source code to identify and fix FP root causes:
|
|
1574
|
-
|
|
1575
|
-
- **CONC-001: Local `let` declarations no longer flagged as shared mutable state** — Added indentation-based scope check in `concurrency.ts`. Only module-level (column 0) `let`/`var` declarations are now considered potentially shared mutable state. Variables declared inside function bodies (indented code) are local by definition and no longer trigger false positives when the file contains `async`/`await` keywords in strings or later code.
|
|
1576
|
-
- **CYBER-001: Auth keywords in analysis/evaluator code no longer trigger rate-limiting findings** — Added `isLikelyAnalysisCode` guard to `cybersecurity.ts` auth endpoint rate-limiting rule of file. Files with ≥8 `.test()` calls (indicating code-analysis or evaluator logic) are now suppressed, matching the existing pattern in `authentication.ts`.
|
|
1577
|
-
- **ERR-003: `throw` patterns inside regex literals and string values no longer flagged** — Enhanced `error-handling.ts` throw-string detection with multi-layer filtering: skips regex literal lines, string-literal-only lines, lines with regex method calls containing throw patterns, and lines where `throw` appears inside quoted string content (e.g., `suggestedFix: "Replace throw 'msg' with throw new Error('msg')"`).
|
|
1578
|
-
|
|
1579
|
-
### Tests
|
|
1580
|
-
- 6 new tests covering all 3 FP root causes (positive and negative cases)
|
|
1581
|
-
- 1026 judges tests passing, 689 subsystems tests passing (1715 total)
|
|
1582
|
-
|
|
1583
|
-
## [3.23.2] — 2026-03-04
|
|
1584
|
-
|
|
1585
|
-
### Fixed — False Positive Reductions (9 categories)
|
|
1586
|
-
- **COST-001 / PERF-001: Sequential Python loops no longer flagged as nested** — Fixed indent-stack algorithm to pop loop scopes on all code lines (not just loop lines), so that `try/except`, `if`, and `with` blocks correctly close preceding loop scopes. Sequential loops inside try/except blocks are no longer misidentified as O(n²).
|
|
1587
|
-
- **SWDEV-001-post / MAINT-001-post: Nesting depth threshold raised to 5+ levels** — Changed deep-nesting threshold from 16 spaces (4 levels) to 20 spaces (5 levels), matching `structural-parser.ts`. Python patterns like `async def → try/except → for → if` naturally need 4 levels and should not be flagged.
|
|
1588
|
-
- **SWDEV-002-post: `except Exception:` no longer flagged as bare except** — Removed `except Exception:` from `GENERIC_CATCH.python` pattern. `except Exception:` correctly excludes `BaseException` subclasses (KeyboardInterrupt, SystemExit) and is the recommended Python pattern for facade layers.
|
|
1589
|
-
- **SOV-001: Docstring body lines no longer trigger sovereignty findings** — Added multi-line Python string tracking (`"""`/`'''`) to the data-sovereignty export keyword scanner. Keywords like "export", "report", "analytics" inside module docstrings are no longer mistaken for real data export paths.
|
|
1590
|
-
- **DOC-001: Multi-line Python function signatures now detected** — Extended docstring lookahead to walk past multi-line function signatures (parameters spanning multiple lines) before searching for body docstrings. Previously, functions with signatures spanning 5+ lines would be falsely flagged as undocumented.
|
|
1591
|
-
- **MAINT-002-post: Format template strings excluded from duplicate detection** — Duplicate string detection now skips strings containing format placeholders (`{}`, `%s`, `${}`), and strings that are purely whitespace. Template strings repeated in different contexts are no longer flagged.
|
|
1592
|
-
- **STRUCT-006: `TYPE_CHECKING` imports excluded from weak type detection** — `detectWeakTypes()` now skips lines containing `TYPE_CHECKING` and all lines inside `if TYPE_CHECKING:` blocks in Python. Static-analysis-only imports are no longer flagged as weak/dynamic types.
|
|
1593
|
-
|
|
1594
|
-
### Tests
|
|
1595
|
-
- 14 new tests covering all 9 FP categories (both positive and negative cases)
|
|
1596
|
-
- 1020 judges tests passing, 689 subsystems tests passing (1709 total)
|
|
1597
|
-
|
|
1598
|
-
## [3.23.1] — 2026-03-04
|
|
1599
|
-
|
|
1600
|
-
### Fixed
|
|
1601
|
-
- **TypeScript type errors** — Fixed 5 compilation errors that caused CI failure on v3.23.0:
|
|
1602
|
-
- `doctor.ts`: Referenced non-existent `judges` and `threshold` properties on `JudgesConfig`; now uses `disabledJudges` and `minSeverity`
|
|
1603
|
-
- `rule-metrics.ts`: Imported `JudgeDefinition` from `evaluators/index.js` which didn't re-export it; now imports from `types.js`
|
|
1604
|
-
- `snapshot.ts`: `Record<Severity, number>` missing `info` key; added `info: 0` initializer
|
|
1605
|
-
- `dedup.ts`: Referenced non-existent `filePath` property on `Finding` type in `findingDiffKey()`
|
|
1606
|
-
- **Test fix** — Updated finding-diff test that relied on invalid `Finding.filePath` property to use the `diffFindings()` `filePath` parameter instead
|
|
1607
|
-
|
|
1608
|
-
### Tests
|
|
1609
|
-
- 1006 judges tests passing, 689 subsystems tests passing (1695 total)
|
|
1610
|
-
|
|
1611
|
-
## [3.23.0] — 2026-03-05
|
|
1612
|
-
|
|
1613
|
-
### Added — P0: Trust & Accuracy Foundation
|
|
1614
|
-
- **Hard/subtle benchmark cases** — 13 new benchmark cases targeting subtle vulnerabilities (prototype pollution, timing attacks, ReDoS, SSRF through URL parsing, null-byte injection, etc.) with `DifficultyResult` interface and strict metrics; `--save` CLI flag for benchmark persistence
|
|
1615
|
-
- **Autofix patch expansion** — 33 new patch rules (71→104 total): 25 single-line rules covering CSRF, prototype pollution, ReDoS, path traversal, insecure cookies, etc; 8 multi-line patch rules for complex fixes; 27 new patch tests
|
|
1616
|
-
- **V2 baseline with fingerprinting** — Complete `baseline.ts` rewrite (142→~510 lines) with V2 format: per-file fingerprinted findings, `baselineVersion: 2`, `fingerprintBaseline()` with line-context hashing, `diffBaseline()` showing new/fixed/carried findings with severity summaries; 17 new tests
|
|
1617
|
-
|
|
1618
|
-
### Added — P1: Developer Experience & Adoption
|
|
1619
|
-
- **Sample report generation** — `examples/generate-reports.ts` script producing Markdown, JSON, and SARIF reports; 3 sample reports in `reports/`
|
|
1620
|
-
- **PR comment dedup & Check Runs** — Enhanced `action.yml` with deterministic comment fingerprinting to prevent duplicate PR comments, Check Runs API integration via `@octokit/rest`; 6 new tests
|
|
1621
|
-
- **Plugin loading infrastructure** — `loadPluginJudges()`, `validatePluginSpecifiers()`, `isValidJudgeDefinition()` in config.ts; `JudgesConfig` expanded with `preset`, `failOnFindings`, `baseline`, `format`, `plugins` fields; `mergeConfigs()` and `resolveJudgeSet()` plugin-aware; 30 new tests
|
|
1622
|
-
- **Suppression audit trail** — Full suppression rewrite with `judges-ignore-block`/`judges-end-block` block scope, reason capture, `applyInlineSuppressionsWithAudit()` returning `SuppressionResult` with `SuppressionRecord[]` audit trail; 14 new tests
|
|
1623
|
-
- **Team feedback aggregation** — `contributor` field on `FeedbackEntry`, `TeamFeedbackStats`/`RuleTeamStats` interfaces, `mergeFeedbackStores()`, `computeTeamFeedbackStats()`, `formatTeamStatsOutput()`; 16 new tests
|
|
1624
|
-
|
|
1625
|
-
### Added — P2: Depth & Precision
|
|
1626
|
-
- **Rule test assertion framework** — `RuleTestCase`/`RuleTestResult`/`RuleTestSuiteResult` types, `runRuleTests()`, `validateRuleTestSuite()`, `formatRuleTestResults()` in rule.ts; 13 new tests
|
|
1627
|
-
- **Calibration pipeline integration** — `calibrate?: boolean | CalibrationOptions` on `EvaluationOptions`, wired `loadCalibrationProfile()` and `calibrateFindings()` into `evaluateWithTribunal()`; 5 new tests
|
|
1628
|
-
- **Finding diff between runs** — `FindingDiff` interface, `findingDiffKey()`, `diffFindings()` (classifies new/fixed/recurring), `formatFindingDiff()` in dedup.ts; 11 new tests
|
|
1629
|
-
- **`judges doctor` command** — Full diagnostic healthcheck: 7 checks (Node version, config file, judges loaded, plugins, feedback store, baseline file, presets), `runDoctorChecks()` runner, `formatDoctorReport()` formatter, `--json` CLI support; 12 new tests
|
|
1630
|
-
|
|
1631
|
-
### Added — P3: Ecosystem & Integration
|
|
1632
|
-
- **Language coverage report** — `detectFileLanguage()`, `computeLanguageCoverage()`, `formatCoverageReport()` in coverage.ts; covers 16 languages with judge availability mapping; 11 new tests
|
|
1633
|
-
- **Finding snapshot & trend tracking** — `SnapshotStore` with versioned persistence, `recordSnapshot()` from findings, `computeTrend()` with improving/stable/regressing detection (10% threshold comparing recent vs early runs), `formatTrendReport()` with delta history; 12 new tests
|
|
1634
|
-
- **Rule hit metrics** — `computeRuleHitMetrics()` tracking active/silent rules, severity breakdown per rule, noisy-rule ranking with percentages, `findJudgeForRule()` prefix matching, `formatRuleHitReport()`; 11 new tests
|
|
1635
|
-
- **Project auto-detection for init wizard** — `detectLanguages()`, `detectFrameworksFromFiles()` (package.json + requirements.txt + file indicators), `classifyProjectType()` (9 project types), `detectCI()`, `detectMonorepo()`, `recommendPreset()` with confidence scoring, `formatProjectSummary()`, `formatRecommendation()`; 22 new tests
|
|
1636
|
-
|
|
1637
|
-
### Tests
|
|
1638
|
-
- 1982 tests passing (0 failures)
|
|
1639
|
-
- 689 subsystem tests (up from 610), 45 new tests this release
|
|
1640
|
-
- New test sections: Finding Diff (§27), Doctor Diagnostics (§28), Language Coverage (§29), Finding Snapshot & Trend (§30), Rule Hit Metrics (§31), Project Auto-Detection (§32)
|
|
1641
|
-
|
|
1642
|
-
## [3.22.1] — 2026-03-04
|
|
1643
|
-
|
|
1644
|
-
### Fixed
|
|
1645
|
-
- **JSON Schema test for preset composability** — Updated `judgesrc.schema.json` test to reflect intentional removal of preset `enum` constraint (now free-form string for comma-separated preset composition); fixes CI failure on Node 20 + 22 matrix
|
|
1646
|
-
|
|
1647
|
-
### Tests
|
|
1648
|
-
- 1006 tests passing (0 failures)
|
|
1649
|
-
|
|
1650
|
-
## [3.22.0] — 2026-03-04
|
|
1651
|
-
|
|
1652
|
-
### Added — P0: Trust & Accuracy Foundation
|
|
1653
|
-
- **V2 prefix mapping completeness** — Added 4 missing rule prefix mappings (`RES`, `SEC`, `IAC`, `AIGEN`) to `mapSpecialty()` and `mapJudgeIdFromRule()` in v2.ts, ensuring all 37 judges route correctly in V2 policy profiles
|
|
1654
|
-
- **Cross-file deduplication** — New `crossFileDedup()` function in dedup.ts detects project-wide duplicate findings across files using topic patterns, severity matching, and configurable tightness; integrated into project.ts evaluation pipeline
|
|
1655
|
-
- **Benchmark expansion** — Expanded benchmark suite from 17 to ~47 test cases covering all major vulnerability categories with balanced true-positive / false-positive samples; version now auto-read from package.json
|
|
1656
|
-
- **Test coverage expansion** — 481 subsystem tests (up from ~400), covering scoring, dedup, config, CLI, presets, benchmark gate, cascading config, CSV formatter, and streaming API
|
|
1657
|
-
|
|
1658
|
-
### Added — P1: Developer Experience & Adoption
|
|
1659
|
-
- **CLI `--exclude` / `--include` / `--maxFiles` flags** — File filtering via glob patterns and file-count limits; integrated into `action.yml` inputs and `.judgesrc` schema; `globToRegex()`, `matchesGlob()`, `collectFiles()` utilities
|
|
1660
|
-
- **Preset composability** — `composePresets()` merges multiple presets with intersection for disabledJudges, union for disabledRules, and most-permissive minSeverity; CLI accepts comma-separated `--preset security,quick`
|
|
1661
|
-
- **API reference & plugin guide** — New `docs/api-reference.md` (comprehensive API surface) and `docs/plugin-guide.md` (custom evaluator/formatter development guide)
|
|
1662
|
-
|
|
1663
|
-
### Added — P2: Depth & Precision
|
|
1664
|
-
- **Confidence tuning** — Enhanced `estimateFindingConfidence` with provenance-based boosts (AST +0.15, taint-flow +0.18, regex +0.08), domain-severity alignment (+0.04 for security-critical), and 3-tier noise caps: Tier 1 subjective judges (COMP/ETHICS/SOV/COST/DOC → 0.82), Tier 2 context-dependent (API/CONC/DB/DEPS/LOGPRIV/OBS/PERF → 0.88), Tier 3 mechanical (CACHE/CFG/COMPAT/MAINT/SWDEV/TEST → 0.92)
|
|
1665
|
-
- **Dedup topic expansion** — Expanded `DEDUP_TOPIC_PATTERNS` from ~27 to ~52 patterns adding auth/session, concurrency, database, logging/privacy, config/infra, dependency, resource management, and error handling domains
|
|
1666
|
-
- **VS Code extension depth** — 4 new settings: `judges.exclude`, `judges.include`, `judges.maxFiles`, `judges.confidenceTier` (essential/important/supplementary); confidence tier filtering in diagnostics and workspace reviews; configurable workspace eval limits
|
|
1667
|
-
- **CI benchmark gate** — `--gate` CLI flag with `--min-f1`, `--min-precision`, `--min-recall`, `--min-detection-rate`, `--baseline` options; `benchmarkGate()` API function with regression detection (1% tolerance); `BenchmarkGateOptions` / `BenchmarkGateResult` types
|
|
1668
|
-
|
|
1669
|
-
### Added — P3: Ecosystem & Integration
|
|
1670
|
-
- **Cascading config** — Directory-level `.judgesrc` override support: `discoverCascadingConfigs()` walks up from file to project root finding configs, `mergeConfigs()` unions arrays and deep-merges ruleOverrides, `loadCascadingConfig()` convenience wrapper; enables monorepo per-package configuration
|
|
1671
|
-
- **Streaming / async API** — `evaluateFilesStream()` async generator yields results per file for progress UIs; `evaluateFilesBatch()` with bounded concurrency (default 4 workers) and `onProgress` callback; new `FileInput` / `FileEvaluationResult` types
|
|
1672
|
-
- **MCP tool expansion** — 3 new MCP tools (13 → 16 total): `benchmark_gate` (run benchmark with quality thresholds), `compare_benchmarks` (diff two benchmark runs), `evaluate_batch` (evaluate multiple files in one call with per-file results table)
|
|
1673
|
-
- **CSV formatter** — New `src/formatters/csv.ts` with `verdictToCsvRows()`, `verdictsToCsv()`, `findingsToCsv()` for spreadsheet / data-pipeline ingestion; header: `file,ruleId,severity,confidence,title,lines,reference`
|
|
1674
|
-
|
|
1675
|
-
### Changed
|
|
1676
|
-
- Benchmark report now reads version dynamically from package.json instead of hardcoded string
|
|
1677
|
-
- `evaluateWithTribunal` MCP tool handlers use correct call signature (`code, language, context?, options?`)
|
|
1678
|
-
|
|
1679
|
-
### Tests
|
|
1680
|
-
- 481 subsystem tests passing (102 suites), covering all new features
|
|
1681
|
-
- 20 new tests for P3: cascading config merge (10), CSV formatter (5), streaming/batch API (5)
|
|
1682
|
-
|
|
1683
|
-
## [3.21.0] — 2026-03-05
|
|
1684
|
-
|
|
1685
|
-
### Added — P0: GitHub Action CI/CD
|
|
1686
|
-
- **PR inline review comments** — New `pr-review` input in `action.yml` posts findings as inline PR review comments with severity badges, auto-fix hints, and judge attribution
|
|
1687
|
-
- **Diff-only mode** — New `diff-only` input restricts analysis to changed files using `git diff`, dramatically reducing CI noise on large repos
|
|
1688
|
-
- **Baseline filtering** — New `baseline-file` input suppresses known findings via a baseline JSON, surfacing only new issues in PRs
|
|
1689
|
-
- **Improved step summary** — GitHub Actions summary now includes findings table, score badge, and must-fix gate status
|
|
1690
|
-
|
|
1691
|
-
### Added — P1: Core Engine Enhancements
|
|
1692
|
-
- **AST context in more evaluators** — `AnalyzeContext` interface pipes tree-sitter AST data into cybersecurity (scope-aware taint), performance (async/complexity detection), and authentication (decorator/import awareness) evaluators
|
|
1693
|
-
- **`fix_code` MCP tool** — New tool evaluates code and auto-applies all available patches, returning fixed code + summary of remaining findings
|
|
1694
|
-
- **Multi-language framework evaluators** — Extended `framework-safety.ts` from JS/TS-only to 8 frameworks: Django (6 rules), Flask (4), FastAPI (1), Spring Boot (6), ASP.NET Core (6), Go/Gin/Echo/Fiber (5)
|
|
1695
|
-
|
|
1696
|
-
### Added — P2: Depth & Tooling
|
|
1697
|
-
- **20+ new auto-fix patches** — Added patches for Python (7), Go (2), Java (5), C# (4), Rust (2) covering SQL injection, command injection, weak hashing, empty catch, and more
|
|
1698
|
-
- **VS Code findings panel** — TreeView-based panel with sort-by-severity/judge, filter controls, go-to-line navigation, and 7 new commands (`judges.showFindingsPanel`, `judges.sortBySeverity`, etc.)
|
|
1699
|
-
- **Cross-file type/state tracking** — Three new project-level detectors: `detectSharedMutableState()`, `detectTypeSafetyGaps()`, `detectScatteredEnvAccess()` in `project.ts`
|
|
1700
|
-
- **Taint tracker language depth** — Expanded from 5 to 9 language-specific pattern sets with `LanguagePatternSet` interface; each set defines sources, sinks, sanitizers, assign patterns, and guard conditions
|
|
1701
|
-
|
|
1702
|
-
### Added — P3: Breadth & Polish
|
|
1703
|
-
- **PHP/Ruby/Kotlin/Swift language support** — Added 4 new languages to `LangFamily`, expanded all ~35 pattern constants in `language-patterns.ts`, added 4 complete taint tracker pattern sets (PHP: 7 sources/11 sinks/11 sanitizers, Ruby: 9/11/10, Kotlin: 9/8/8, Swift: 8/9/6)
|
|
1704
|
-
- **Performance & snapshot tests** — 3 new test suites: performance budgets (tribunal <5s, per-judge <500ms, evaluateDiff <3s, large-block <15s), rule coverage stability (≥30 judges, 100-600 findings, required families, severity distribution), multi-language pattern coverage (8 tests for PHP/Ruby/Kotlin/Swift)
|
|
1705
|
-
- **Framework version awareness** — `detectFrameworkVersions()` extracts versions from 14 manifest/config patterns; `getVersionConfidenceAdjustment()` applies version-specific confidence rules for Django 4+, Spring 3+, Next.js 13+/14+, Express 5+, Rails 6+/7+, Laravel 9+, ASP.NET 8+; integrated into `applyFrameworkAwareness()`
|
|
1706
|
-
- **MCP workspace & streaming tools** — 3 new MCP tools: `list_files` (recursive directory listing with skip-dirs), `read_file` (content reading with line-range slicing), `evaluate_with_progress` (progressive judge-by-judge reporting with count updates)
|
|
1707
|
-
|
|
1708
|
-
### Changed
|
|
1709
|
-
- **MCP tool count** — 10 → 13 tools registered in `server.json`
|
|
1710
|
-
- **`applyFrameworkAwareness()` rewritten** — Now combines framework mitigation with version-aware confidence adjustments and stacked provenance notes
|
|
1711
|
-
- **`register.ts` modular architecture** — Now orchestrates 4 registration modules: evaluation, workflow, fix, workspace
|
|
1712
|
-
|
|
1713
|
-
### Tests
|
|
1714
|
-
- 19 new performance/snapshot/multi-language tests in `judges.test.ts`
|
|
1715
|
-
- 19 new framework version awareness tests in `subsystems.test.ts`
|
|
1716
|
-
- 1006 tests in judges.test.ts, 392 tests in subsystems.test.ts — all passing
|
|
1717
|
-
|
|
1718
|
-
## [3.20.14] — 2026-03-04
|
|
1719
|
-
|
|
1720
|
-
### Added
|
|
1721
|
-
- **Three new FP heuristics (H33–H35)** — Expanded the false-positive filter from 32 to 35 deterministic heuristics:
|
|
1722
|
-
- **H33: Destructuring variable extraction** — Suppresses hardcoded-credential findings when the security keyword is a destructured variable name (`const { password } = req.body`), recognizing the code extracts a named field from runtime data
|
|
1723
|
-
- **H34: Dictionary/map key access** — Suppresses hardcoded-credential findings when the keyword is a dictionary key being accessed (`data["password"]`, `request.form.get("token")`), not a hardcoded value; excludes LOGPRIV and exposure-related findings
|
|
1724
|
-
- **H35: CLI argument/option definitions** — Suppresses findings when the keyword defines a CLI parameter in argparse, click, commander.js, or yargs (`parser.add_argument("--password")`, `.option("--token")`)
|
|
1725
|
-
- **Expanded H6 keyword-in-identifier patterns** — Significantly broadened compound-identifier recognition for all five security keywords:
|
|
1726
|
-
- `password`: ~25 new suffixes (manager, service, handler, helper, criteria, complexity, expiry, generator, mask, etc.) and ~16 new prefixes (set, get, save, store, update, change, manage, generate, etc.)
|
|
1727
|
-
- `secret`: ~14 new suffixes (holder, service, handler, helper, resolver, loader, fetcher, etc.) and ~20 new prefixes (get, set, read, fetch, load, resolve, lookup, rotate, etc.)
|
|
1728
|
-
- `token`: ~18 new suffixes (manager, service, handler, provider, factory, builder, cache, parser, etc.) and ~26 new prefixes (get, set, create, generate, fetch, store, validate, revoke, etc.)
|
|
1729
|
-
- `delete`: Refined to add safe lifecycle prefixes (soft, hard, mark, pre, post, async, schedule) and safe naming suffixes (scheduled, pending, mark) while deliberately excluding operation-target suffixes (many, all, records) that represent actual data operations
|
|
1730
|
-
- `exec`: ~13 new suffixes (command, args, timeout, callback, handler, etc.) and ~12 new prefixes (pre, post, async, remote, batch, parallel, etc.)
|
|
1731
|
-
- **Three new safe idiom patterns (H7)** — Added vault/secrets-manager SDK calls, hash/digest function calls, and UI label/placeholder strings as recognized safe contexts
|
|
1732
|
-
|
|
1733
|
-
### Tests
|
|
1734
|
-
- Added 29 new FP heuristic tests covering all new and expanded heuristics with both FP-suppression and TP-retention validation
|
|
1735
|
-
- 1666 tests, 0 failures
|
|
1736
|
-
|
|
1737
|
-
## [3.20.13] — 2026-03-04
|
|
1738
|
-
|
|
1739
|
-
### Fixed
|
|
1740
|
-
- **Documentation accuracy audit** — Comprehensive review and correction of all documentation claims against the actual codebase:
|
|
1741
|
-
- Updated test badge count (1557 → 1666)
|
|
1742
|
-
- Updated judge dimension counts throughout (35 → 37) and architecture diagram heuristic count (33 → 36)
|
|
1743
|
-
- Added missing judges (`iac-security`, `false-positive-review`) to Judge IDs list, Judge Panel table, and MCP Prompts table
|
|
1744
|
-
- Updated evaluator and judge file counts (35 → 37)
|
|
1745
|
-
- Added 4 missing package exports to exports table (`./diagnostics`, `./plugins`, `./fingerprint`, `./comparison`)
|
|
1746
|
-
- Added 10 missing CLI commands to Scripts table (`feedback`, `benchmark`, `rule`, `pack`, `config`, `compare`, `list`)
|
|
1747
|
-
- Expanded project structure with ~20 missing files and directories (AST files, formatters, patches, tools, tests, scripts)
|
|
1748
|
-
- Fixed incorrect script filename (`analyze-report-findings.ts` → `debug-fp.ts`)
|
|
1749
|
-
- **VS Code extension README** — Replaced 3 hardcoded GPT-4o model references with vendor-neutral phrasing ("available language model" / "AI contextual review"), fixed "right-click a file" → "right-click in the editor", updated auto-fix patch count (47+ → 53)
|
|
1750
|
-
|
|
1751
|
-
### Tests
|
|
1752
|
-
- 1666 tests, 0 failures
|
|
1753
|
-
|
|
1754
|
-
## [3.20.12] — 2026-03-03
|
|
1755
|
-
|
|
1756
|
-
### Changed
|
|
1757
|
-
- **VS Code extension — Layer 2 progress feedback** — Replaced silent full-response buffering with two-phase streaming and granular progress indicators so users see real-time status during the AI deep review instead of a blank screen for 30–60 seconds:
|
|
1758
|
-
- **Chat participant (`/deepreview`)**: Added progress messages at each stage (preparing prompt, selecting model, sending request, AI analyzing, streaming results); LLM response now streams incrementally to the chat after the first 500 chars clear the content-policy refusal check — user sees text appearing in real-time instead of a single wall of text at the end
|
|
1759
|
-
- **Command palette (`Judges: Deep Review`)**: `withProgress` notification now shows phase-specific messages via a new `onProgress` callback passed into `deepReview()` — Layer 1 analysis, model selection, request sending, AI analysis, retry status all reported in the notification area
|
|
1760
|
-
- **Retry path**: Content-policy retry also uses two-phase streaming and granular progress instead of silent buffering
|
|
1761
|
-
|
|
1762
|
-
### Tests
|
|
1763
|
-
- 1666 tests, 0 failures
|
|
1764
|
-
|
|
1765
|
-
## [3.20.11] — 2026-03-03
|
|
1766
|
-
|
|
1767
|
-
### Fixed
|
|
1768
|
-
- **False positive reduction — 5 new Bicep/IaC-specific heuristics (H28–H32)** — Eliminates 5 high-confidence false positive patterns specific to Infrastructure-as-Code templates (Bicep, ARM, Terraform):
|
|
1769
|
-
- **H28 — IaC compile-time property resolution**: Suppresses REL null-check findings (e.g. "deep property access without null checks") on IaC templates where resource property references like `vnet.properties.subnets[0].id` are resolved at deploy time, not at runtime — null checks and optional chaining are inapplicable
|
|
1770
|
-
- **H29 — IaC domain-convention numbers**: Suppresses MAINT magic-number findings for numeric values that are IaC domain conventions (NSG priorities 100–4096, port numbers, CIDR prefix lengths, retention periods like 365 days)
|
|
1771
|
-
- **H30 — Schema-mandated nesting depth**: Suppresses MAINT deep-nesting findings on IaC templates where hierarchical depth (resource → properties → subnets[] → properties → addressPrefix) is mandated by the ARM/Terraform resource schema and cannot be flattened
|
|
1772
|
-
- **H31 — IaC schema enum values**: Suppresses MAINT duplicate-string findings for schema-constrained enum values like `'Tcp'`, `'Allow'`, `'Deny'`, `'Inbound'`, `'Outbound'` that must be repeated per ARM/Terraform schema requirements
|
|
1773
|
-
- **H32 — Azure Bastion documented-requirement**: Suppresses IAC Internet-HTTPS findings on Bastion NSG rules that require inbound HTTPS (443) from `'Internet'` per Microsoft documentation — only when a Bastion subnet is present AND compensating controls (Conditional Access, MFA, audit logging) are documented in comments
|
|
1774
|
-
|
|
1775
|
-
### Tests
|
|
1776
|
-
- 9 new tests in `IaC/Bicep-specific FP heuristics` describe block: H28 REL-001 suppress + non-IaC keep, H29 MAINT-001 magic numbers, H30 MAINT-002 deep nesting on Bicep + Terraform, H31 MAINT-003 duplicate strings, H32 IAC-004 Bastion with/without compensating controls, MAINT on non-IaC keep
|
|
1777
|
-
- 1666 tests, 0 failures
|
|
1778
|
-
|
|
1779
|
-
## [3.20.10] — 2026-03-03
|
|
1780
|
-
|
|
1781
|
-
### Fixed
|
|
1782
|
-
- **Security — 6 polynomial-ReDoS vulnerabilities fixed (CodeQL `js/polynomial-redos`)** — All 6 open code-scanning alerts resolved:
|
|
1783
|
-
- **`src/tools/prompts.ts`**: Bounded negated character classes in the rule-ID stripping regex with `\n` anchors (`[^"]*` → `[^"\n]*`, `[^)]*` → `[^)\n]*`) to prevent cross-line polynomial backtracking
|
|
1784
|
-
- **`src/evaluators/false-positive-review.ts`** (5 alerts): Replaced `word1.*word2` regex patterns in `finding.title` checks with equivalent `.includes()` string method calls that eliminate polynomial backtracking entirely — affects heuristics for scalability/lock detection, resilience/retry detection, i18n hardcoded-string detection, performance nested-loop detection, and sovereignty data-egress detection. Identical matching semantics preserved.
|
|
1785
|
-
|
|
1786
|
-
### Tests
|
|
1787
|
-
- 1657 tests, 0 failures
|
|
1788
|
-
|
|
1789
|
-
## [3.20.9] — 2026-03-03
|
|
1790
|
-
|
|
1791
|
-
### Changed
|
|
1792
|
-
- **Token usage optimisation — MCP full-tribunal prompt** — Refactored the `full-tribunal` MCP prompt to deduplicate shared behavioural directives (adversarial mandate, precision mandate) that were previously repeated 37× — once per judge. Shared directives are now stated once in a "Universal Evaluation Directives" preamble. Per-judge sections include only unique evaluation criteria, domain-specific rules, and FP-avoidance guidance. Boilerplate lines (persona introductions, rule-prefix assignment templates, score templates) are stripped by the new `getCondensedCriteria()` helper. **~40 000 chars (~10 000 tokens) saved per full-tribunal invocation — approximately 30% reduction — with zero impact on TP detection quality.** All evaluation criteria, domain-specific rules, and FP-avoidance sections are fully preserved.
|
|
1793
|
-
- **MCP per-judge prompts — evaluation criteria now included** — Per-judge MCP prompts previously sent only a generic "Please evaluate" message without the judge's evaluation criteria, making LLM-powered single-judge reviews less effective. Each per-judge prompt now includes the judge's full `systemPrompt` and precision mandate, significantly improving TP detection quality for single-judge deep reviews.
|
|
1794
|
-
- **New exported utility `getCondensedCriteria()`** — Extracts only the unique evaluation criteria from a judge's `systemPrompt`, stripping persona introductions, adversarial mandates, and boilerplate rule/score templates. Available via the public API for custom integrations that need token-efficient prompt construction.
|
|
1795
|
-
|
|
1796
|
-
### Tests
|
|
1797
|
-
- 11 new tests in `getCondensedCriteria — Token Optimisation` describe block: persona intro stripping, adversarial mandate stripping, boilerplate rule/score line stripping, FP avoidance retention, real judge criteria retention (cybersecurity, data-sovereignty), measurable savings across all judges (>25% per-judge, ≥20% tribunal-level), non-empty output for every judge, persona stripping for all judges, adversarial mandate stripping for all judges, simulated tribunal prompt savings measurement
|
|
1798
|
-
- 1657 tests, 0 failures
|
|
1799
|
-
|
|
1800
|
-
## [3.20.8] — 2026-03-03
|
|
1801
|
-
|
|
1802
|
-
### Fixed
|
|
1803
|
-
- **False positive reduction — 3 new heuristics (H25–H27) + 1 new safe idiom entry + extended identifier patterns** — Continued proactive FP analysis targeting config/schema definitions, function call assignments, string comparison dispatch, and broadened env-var credential suppression:
|
|
1804
|
-
- **H25**: Config/schema object keys with non-credential values — findings suppressed when security keywords (`password`, `secret`, `token`, `credential`) appear as object/dict keys followed by boolean (`true`/`false`), null (`null`/`undefined`/`None`), config keywords (`required`/`optional`), nested schema objects (`{ type: ... }`), or ORM field definitions (`Column(...)`, `Field(...)`, `models.CharField(...)`)
|
|
1805
|
-
- **H26**: Assignment from function call / config lookup — findings about "hardcoded" or "plaintext" credentials suppressed when the value is assigned from a function call (`getConfig(...)`, `vault.read(...)`) or env-var access (`process.env`, `os.environ`), not from a literal string; excludes request/input object bracket access (`request.form[...]`)
|
|
1806
|
-
- **H27**: String comparison / switch-case dispatch — findings suppressed when security keywords appear as string values in equality comparisons (`=== "password"`, `== "token"`), switch-case labels (`case "secret":`), inclusion checks (`.includes("password")`), or Python `in` operator (`in ["password", "secret"]`)
|
|
1807
|
-
- **Extended SAFE_IDIOM_PATTERNS**: New entry broadening env-var access suppression from DB-001-only to all hardcoded credential findings (DATA-00x, AUTH-00x) when lines contain `process.env`, `os.environ`, `os.getenv()`, `System.getenv()`, `Environment.GetEnvironmentVariable()`, or `env::var()`
|
|
1808
|
-
- **Extended KEYWORD_IDENTIFIER_PATTERNS**: Added password suffixes (`error`, `expired`, `required`, `schema`, `type`, `view`, `prompt`, `attempts`) and prefixes (`forgot`, `enter`, `missing`, `invalid`, `has`, `is`, `no`, `require`); token suffixes (`error`, `invalid`, `missing`, `source`, `response`, `config`, `schema`) and prefixes (`missing`, `invalid`, `expired`, `has`, `is`, `no`, `decode`, `parse`); secret suffixes (`error`, `invalid`, `missing`, `config`, `schema`, `type`, `provider`) and prefixes (`has`, `is`, `no`, `missing`, `invalid`, `create`, `generate`, `list`)
|
|
1809
|
-
|
|
1810
|
-
### Tests
|
|
1811
|
-
- 19 new tests across 5 describe blocks: env-var safe idiom broadening (4), config/schema object keys (4), assignment from function call (4), string comparison/dispatch (4), extended identifier patterns (3)
|
|
1812
|
-
- 1646 tests, 0 failures
|
|
1813
|
-
|
|
1814
|
-
## [3.20.7] — 2026-03-03
|
|
1815
|
-
|
|
1816
|
-
### Fixed
|
|
1817
|
-
- **False positive reduction — 4 new heuristics (H2c, H22–H24) + extended identifier patterns + H20 bugfix** — Continued proactive FP analysis targeting typed declarations, error messages, regex patterns, and type-definition files:
|
|
1818
|
-
- **H2c**: Type-definition file gating — absence-based findings suppressed on files classified as `"types"` by `classifyFile()` (`.d.ts` files, interface-only modules); type-definition files declaring shapes should not trigger missing-implementation findings
|
|
1819
|
-
- **H22**: Typed parameter/property declarations — findings suppressed when security keywords (`password`, `secret`, `token`) appear as typed parameter names (`password: string`, `String secret`) rather than hardcoded credentials; excludes LOGPRIV findings that flag the parameter itself
|
|
1820
|
-
- **H23**: Throw/raise error message strings — findings suppressed when keywords appear in static throw/raise error messages (`throw new Error("Invalid password")`, `raise ValueError("Bad token")`); extends H21 logging concept to error-throwing; excludes LOGPRIV/LOG-* findings
|
|
1821
|
-
- **H24**: Regex pattern literal context — findings suppressed when keywords appear inside regex patterns (`/password|secret|token/`, `re.compile(r"...")`, `new RegExp(...)`, `Pattern.compile(...)`)
|
|
1822
|
-
- **H20 bugfix**: Enum/union type definitions — fixed false match where bare assignments like `password = "admin123"` incorrectly matched the enum-member pattern; now requires `enum`, `type =`, or `class` declaration context in the file
|
|
1823
|
-
- **Extended KEYWORD_IDENTIFIER_PATTERNS**: Changed separators from `\s*` to `[-_]?` across password, secret, token, delete, exec patterns to support snake_case/kebab-case identifiers while preventing space-separated English phrases from matching; added new suffixes (column, prop, param, check, verify, form, dialog, modal) and prefixes (confirm, verify, validate, check, reset, new, old, current, previous, hashed, encrypted) to password pattern; added client/app prefixes to secret; added verification/reset suffixes to token
|
|
1824
|
-
|
|
1825
|
-
### Tests
|
|
1826
|
-
- 21 new tests across 5 describe blocks: keyword-in-identifier with underscore/hyphen separators (7), type-definition file gating (2), typed parameter/property declarations (4), throw/raise error messages (4), regex pattern literals (4)
|
|
1827
|
-
- 1627 tests, 0 failures
|
|
1828
|
-
|
|
1829
|
-
## [3.20.6] — 2026-03-03
|
|
1830
|
-
|
|
1831
|
-
### Fixed
|
|
1832
|
-
- **False positive reduction — 4 new heuristics (H18–H21) + 4 new pattern entries** — Proactive FP analysis adding heuristics and extending pattern arrays to reduce false positives across common code idioms:
|
|
1833
|
-
- **H18**: Barrel/re-export file suppression — absence-based findings (ERR-001, OBS-001, etc.) suppressed on files where ≥80% of lines are re-exports, imports, comments, or blanks (index.ts, \_\_init\_\_.py, mod.rs barrel files)
|
|
1834
|
-
- **H19**: Decorator/annotation security presence — AUTH absence findings suppressed when the file contains authentication decorators (`@login_required`, `[Authorize]`, `@PreAuthorize`, `@Secured`, `@RolesAllowed`, etc.)
|
|
1835
|
-
- **H20**: Enum/union type definitions — keyword collision findings suppressed when all flagged lines are enum values or union type members containing security keywords as inert values (`Action.DELETE`, `type Method = "GET" | "DELETE"`)
|
|
1836
|
-
- **H21**: Log/error message security keywords — findings triggered by `password`/`secret`/`token`/`credential` suppressed when all flagged lines are logging calls (`logger.error(...)`, `console.warn(...)`) describing the operation rather than leaking credentials; excludes LOGPRIV/LOG-* findings that flag the logging itself as the problem
|
|
1837
|
-
- **Extended KEYWORD_IDENTIFIER_PATTERNS**: Added `key` pattern (matches `apiKeyHeader`, `primaryKey`, `foreignKey`, `keyVaultUrl` but NOT `apiKey` alone) and `hash` pattern (matches `contentHash`, `fileHash`, `checksumHash`, `hashCode`, `hashMap` — non-crypto contexts)
|
|
1838
|
-
- **Extended SAFE_IDIOM_PATTERNS**: Added log/error message suppression for security keywords in logging calls (with LOGPRIV exclusion) and HTTP routing `app.delete()`/`router.delete()` suppression for data-deletion findings
|
|
1839
|
-
|
|
1840
|
-
### Tests
|
|
1841
|
-
- 32 new tests covering all new heuristics and pattern entries: key/hash identifier collision (4), log/error message idiom (4), HTTP routing delete (3), barrel/re-export files (3), decorator security presence (4), enum/union type (4), log message keyword suppression (4), TP confidence edge cases (6)
|
|
1842
|
-
- 1606 tests, 0 failures
|
|
1843
|
-
|
|
1844
|
-
## [3.20.5] — 2026-03-03
|
|
1845
|
-
|
|
1846
|
-
### Fixed
|
|
1847
|
-
- **False positive reduction — 6 new heuristics + 4 extended patterns** — Added six new deterministic FP heuristics to `filterFalsePositiveHeuristics` and extended three existing pattern sets, addressing 12 high-confidence false positive categories identified in regulated-policy evaluations:
|
|
1848
|
-
- **H12**: Distributed lock fallback — SCALE local-lock findings suppressed when Redlock/Redis/etcd/Consul/ZooKeeper distributed locking is present in the same module
|
|
1849
|
-
- **H13**: Retry/backoff/fallback chain — SOV-001/REL resilience findings suppressed when retry with exponential backoff or multi-tier fallback (cache→online→bundled) is implemented
|
|
1850
|
-
- **H14**: Constant definitions — I18N hardcoded-string findings suppressed when flagged lines are ALL_CAPS or `const` constant definitions (field-name keys, not user-facing text)
|
|
1851
|
-
- **H15**: Bounded-dataset tree traversal — PERF/COST O(n²) findings suppressed when code traverses tree structures (chapters→sections→articles) or operates on documented bounded datasets
|
|
1852
|
-
- **H16**: Read-only content fetch — SOV-002 cross-border findings suppressed when code fetches public/regulatory content with no personal data patterns
|
|
1853
|
-
- **H17**: Cache-age/TTL context — COMP age-verification findings suppressed when "age" appears in cache/TTL context (cache_age, max_age, stale) with no user-age patterns (dob, minor, parental)
|
|
1854
|
-
- **Extended WEB_ONLY_PREFIXES**: Added `I18N-` — i18n findings now gated to files with HTML/JSX/DOM patterns
|
|
1855
|
-
- **Extended KEYWORD_IDENTIFIER_PATTERNS**: Broadened `age` regex to cover hyphenated/underscored cache-age, stale-age, fresh-age, and age-seconds/minutes/hours/days/ms/header patterns
|
|
1856
|
-
- **Extended SAFE_IDIOM_PATTERNS**: Added 3 new entries — json.dumps/JSON.stringify for SOV-003 data-export findings, os.environ.get/process.env for DB-001 connection-string findings, and justified type:ignore/noqa/eslint-disable for SWDEV-001/CICD-003 suppression findings
|
|
1857
|
-
|
|
1858
|
-
- **Judge system prompt anti-FP guidance** — Added `FALSE POSITIVE AVOIDANCE` sections to 9 judge system prompts, providing explicit instructions to avoid known false-positive patterns at the LLM generation layer:
|
|
1859
|
-
- **performance.ts**: Tree traversal is O(n), not O(n²); bounded reference datasets; list comprehension flattening
|
|
1860
|
-
- **scalability.ts**: Distributed lock with local fallback is correct graceful degradation; two-tier locking design
|
|
1861
|
-
- **data-sovereignty.ts**: Retry/fallback ≡ circuit breaker; read-only reference data ≠ cross-border egress; internal serialization ≠ data export
|
|
1862
|
-
- **compliance.ts**: Cache-age/TTL "age" ≠ user age verification
|
|
1863
|
-
- **internationalization.ts**: Constant definitions ≠ user-facing strings; developer tools/MCP servers don't need i18n; sourced regulatory text
|
|
1864
|
-
- **cost-effectiveness.ts**: Tree/hierarchy traversal; bounded reference datasets
|
|
1865
|
-
- **database.ts**: Environment variable fallback defaults; in-memory/embedded database defaults
|
|
1866
|
-
- **code-structure.ts**: Dict[str,Any] at JSON boundaries; large single-responsibility files; async nesting ≤4
|
|
1867
|
-
- **software-practices.ts**: Justified suppression comments; minimum-viable async nesting; single-module cohesion
|
|
1868
|
-
|
|
1869
|
-
### Tests
|
|
1870
|
-
- Added 17 new tests covering all 6 new FP heuristics (H12–H17), I18N web-only gating, safe idiom extensions (env var fallback, justified suppressions, json.dumps), with both positive (should suppress) and negative (should keep) test cases
|
|
1871
|
-
- All 1,574 tests pass (976 judges + 218 negative + 268 subsystems + 70 extension + 42 tool-routing)
|
|
1872
|
-
|
|
1873
|
-
## [3.20.4] — 2026-03-03
|
|
1874
|
-
|
|
1875
|
-
### Fixed
|
|
1876
|
-
- **Stale documentation counts** — Updated all references across README, docs, server.json, action.yml, package.json, Dockerfile, extension metadata, examples, and scripts from "35 judges" → "37 judges", "47 patches" → "53 patches", and test badge "1515" → "1557". Historical changelog entries left unchanged.
|
|
1877
|
-
|
|
1878
|
-
### Tests
|
|
1879
|
-
- **Doc-claim verification tests** — Added 42 new tests covering: JUDGES array count assertion (exactly 37), judge schema validation (id, name, domain, description), unique judge ID enforcement, scoring penalty constants (critical=30, high=18, medium=10, low=5, info=2), confidence-weighted deductions, score floor/ceiling, positive signal bonuses (+3/+3/+3/+2/+2/+2/+2/+1/+1/+1 with cap at 15), verdict threshold logic (fail/warning/pass boundaries), and STRUCT threshold rules not previously covered: STRUCT-001 (CC>10), STRUCT-007 (file CC>40), STRUCT-008 (CC>20), STRUCT-010 (>150 lines).
|
|
1880
|
-
- All 1,557 tests pass (976 judges + 218 negative + 251 subsystems + 70 extension + 42 tool-routing)
|
|
1881
|
-
|
|
1882
|
-
## [3.20.3] — 2026-03-03
|
|
1883
|
-
|
|
1884
|
-
### Fixed
|
|
1885
|
-
- **Azure resource ID false positive** — Layer 2 deep review no longer flags Azure resource identifiers (policy definition IDs, role definition IDs, tenant IDs, subscription GUIDs) as "invalid GUIDs" when they contain characters outside the hex range. All three deep-review builders (single-judge, tribunal, simplified) now include explicit guidance that Azure resource IDs are opaque platform constants and must not be validated for strict UUID compliance.
|
|
1886
|
-
|
|
1887
|
-
## [3.20.2] — 2026-03-03
|
|
1888
|
-
|
|
1889
|
-
### Fixed
|
|
1890
|
-
- **"Auto" model fallback** — When the Copilot Chat model selector is set to "auto", `request.model` returns a pseudo-model with no real endpoint. Layer 2 now catches the `sendRequest` failure and falls back to `selectChatModels()` to find a working model. Applied to both `chat-participant.ts` (deep review) and `diagnostics.ts` (deep review + refinement).
|
|
1891
|
-
|
|
1892
|
-
## [3.20.1] — 2026-03-03
|
|
1893
|
-
|
|
1894
|
-
### Fixed
|
|
1895
|
-
- **Layer 2 now uses user-selected model** — The `/deepreview` deep review and diagnostics Layer 2 no longer hardcode `gpt-4o`. In chat, it uses `request.model` (the model the user picked in the Copilot Chat model selector). In diagnostics, it uses `selectChatModels()` without a family filter, respecting whatever models are available.
|
|
1896
|
-
|
|
1897
|
-
## [3.20.0] — 2026-03-06
|
|
1898
|
-
|
|
1899
|
-
### Added
|
|
1900
|
-
- **PowerShell language support** — Full PowerShell analysis across all 37 judges. Includes language patterns (cmdlet-verb conventions, `Invoke-Expression` detection, `$using:` scope, credential handling, `ConvertTo-SecureString`, pipeline best practices), AST structural parsing (function/class extraction, comment association, nesting depth, dead-code detection after `throw`/`return`), taint tracking, and cross-file taint analysis. PowerShell is now recognized in all LANG_MAP entries, the structural parser, the tree-sitter AST layer, and the VS Code extension tool routing.
|
|
1901
|
-
|
|
1902
|
-
### Fixed
|
|
1903
|
-
- **Deep review content-policy refusal (enhanced)** — The v3.19.6 fix (switching from `systemPrompt` to `description`) was necessary but insufficient for GDPR/IaC files where the aggregate of 37 security-related judge descriptions still triggered GPT-4o content filters. Added a three-layer defence: (1) `DEFENSIVE_PREAMBLE` framing the request as an authorised voluntary code review, (2) `isContentPolicyRefusal()` detection with automatic retry using a simplified prompt that groups judges into 7 quality dimensions instead of listing all 37, (3) alternative model family fallback when the primary model refuses. Also fixed `buildSingleJudgeDeepReviewSection` which still used `judge.systemPrompt` instead of `judge.description`.
|
|
1904
|
-
- **Bicep/Terraform missing from LM tool LANG_MAP** — The VS Code extension's `lm-tool.ts` language map now includes `bicep` and `terraform` for parity with `chat-participant.ts` and `diagnostics.ts`.
|
|
1905
|
-
|
|
1906
|
-
### Tests
|
|
1907
|
-
- All 1,472 tests pass (976 judges + 217 negative + 209 subsystems + 70 extension)
|
|
1908
|
-
|
|
1909
|
-
## [3.19.6] — 2026-03-03
|
|
1910
|
-
|
|
1911
|
-
### Fixed
|
|
1912
|
-
- **Deep review content-policy refusal** — The `/deepreview` Layer 2 prompt concatenated all 37 judges' full `systemPrompt` text — including adversarial mandates like "hunt for exploits" and "think like an attacker" — into a single User message. LLM safety filters interpreted this as requesting help with security exploitation and refused with "Sorry, I can't assist with that." Fixed by using condensed `judge.description` (1-line summary) instead of full `systemPrompt` in tribunal mode, adding professional code-review framing, and prepending an Assistant context message to establish legitimate tool identity.
|
|
1913
|
-
|
|
1914
|
-
### Tests
|
|
1915
|
-
- All 1,460 tests pass (964 judges + 217 negative + 209 subsystems + 70 extension)
|
|
1916
|
-
|
|
1917
|
-
## [3.19.5] — 2026-03-05
|
|
1918
|
-
|
|
1919
|
-
### Fixed
|
|
1920
|
-
- **Cross-judge dedup: same-topic bridging** — Findings from different evaluators about the same known topic (e.g., API versioning, deep nesting, abrupt termination) are now deduped even when they reference different line numbers. Previously, two evaluators flagging "API endpoints without versioning" on different lines escaped dedup because the union-find only clustered same-line findings. Added known-topic bridging logic and 3 new topic patterns (`api-versioning`, `pagination`, `abrupt-termination`).
|
|
1921
|
-
- **DOC-001: Python validators no longer flagged as undocumented** — Pydantic `@validator`, `@field_validator`, `@root_validator`, and `@property`-decorated methods are now recognized as framework internals and skipped from the exported-function-without-docs check.
|
|
1922
|
-
- **DOC-001: Java getters/setters no longer flagged** — Trivial one-line getters/setters (`getName()`, `setName()`) are skipped from the exported-function documentation check.
|
|
1923
|
-
- **DOC-001: Route wiring lines no longer flagged** — Method-chained route registrations (`.route(`, `.get(`, `.HandleFunc(`) are no longer flagged as API endpoints missing documentation. Only handler definitions need docs.
|
|
1924
|
-
- **DOC-001: `main()` no longer flagged as long function** — Application entry-point `main()` functions are excluded from the long-function-with-insufficient-comments check.
|
|
1925
|
-
- **STRUCT-005: Closures and lambdas no longer cause dead code FPs** — Go `return func(...) {` closures and C++ `return std::all_of(..., [](char c) {` lambdas are no longer treated as terminal statements that make subsequent code unreachable.
|
|
1926
|
-
- **STRUCT-005: Braceless `if` statements no longer cause dead code FPs** — C# single-line `if (cond) return;` without braces no longer marks the next line as dead code.
|
|
1927
|
-
- **UX-001: Server-side error responses no longer flagged as "generic error messages"** — JSON error keys (`"error"`), structured logging calls (`.Error()`, `logger.Error()`), and HTTP response builders (`HttpResponse::`, `http.Error()`) are filtered from the generic-error-message check.
|
|
1928
|
-
- **I18N-001: Framework metadata no longer flagged as hardcoded strings** — FastAPI/Flask/OpenAPI initialization lines (`FastAPI(title="...")`) are excluded from the hardcoded-user-facing-string check.
|
|
1929
|
-
- **MAINT: C/C++ type declarations now skip magic number check** — `int port = 8080` and similar C/C++ typed variable declarations are recognized as named assignments, not magic numbers.
|
|
1930
|
-
- **MAINT: Unused imports no longer cross-line match** — The ES module import regex no longer accidentally matches Python's `from X import Y` syntax across line boundaries.
|
|
1931
|
-
- **Compliance: Tighter regulated-operation detection** — Removed `sign` (matches `signIn`, `signal`) and `authorize` (matches `[Authorize]` attribute) from the regulated-operations regex. Attribute/annotation lines are now skipped.
|
|
1932
|
-
|
|
1933
|
-
### Changed
|
|
1934
|
-
- **Absence promotion** — `TEST-001` ("No tests detected"), `COMP-001` ("Data model lacks classification markers"), and `REL-001` ("No retry logic") are now marked `isAbsenceBased: true` and suppressed in single-file mode alongside other absence findings.
|
|
1935
|
-
|
|
1936
|
-
### Tests
|
|
1937
|
-
- 1 new dedup test (same-known-topic bridging), 1 updated test (topic bridging replaces separate-lines-no-dedup)
|
|
1938
|
-
- All 1,460 tests pass (964 judges + 217 negative + 209 subsystems + 70 extension)
|
|
1939
|
-
|
|
1940
|
-
### Metrics
|
|
1941
|
-
- Cross-language FP sweep: 134 → 122 evaluator-level findings (−12, −9.0%)
|
|
1942
|
-
- Pipeline-level (after dedup + absence filtering): 56 → 24 findings (−32, −57.1%)
|
|
1943
|
-
- Cumulative since v3.18.3: 170 → 122 evaluator-level (−48, −28.2%)
|
|
1944
|
-
|
|
1945
|
-
## [3.19.4] — 2026-03-04
|
|
1946
|
-
|
|
1947
|
-
### Changed
|
|
1948
|
-
- **Absence gating via `projectMode` flag** — Absence-based findings (e.g., "no rate limiting detected", "no health check endpoint") are now suppressed in single-file evaluation and only surface during project-level analysis (`evaluateProject`). This eliminates ~78 per-file false positives that belong at the project level, not on individual source files. The `EvaluationOptions` type gains an optional `projectMode?: boolean` field; `evaluateProject()` sets it automatically.
|
|
1949
|
-
- **Consolidated absence filtering** — Removed duplicate absence filters from `filterFalsePositiveHeuristics` (rules 12 and 13); absence gating is now handled in a single location upstream in `evaluateWithJudge`.
|
|
1950
|
-
|
|
1951
|
-
### Fixed
|
|
1952
|
-
- **Go `interface{}`/`any` no longer flagged as weak type** — The WEAK_TYPE pattern for Go now only flags `unsafe.Pointer`, not idiomatic Go empty interfaces. Changed in `language-patterns.ts`, `tree-sitter-ast.ts`, and `structural-parser.ts`. Eliminates 4 FPs in the cross-language sweep.
|
|
1953
|
-
- **Java wildcard imports no longer flagged** — `dependency-health.ts` skips wildcard import detection for Java, where `import java.util.*` is idiomatic. Eliminates 1 FP.
|
|
1954
|
-
- **Go `os.ReadFile` no longer flagged as portability issue** — `portability.ts` skips file I/O detection for Go, where `os.ReadFile` is the standard stdlib API with no portability concern.
|
|
1955
|
-
- **Error message prose no longer triggers DATA-001** — `looksLikeRealCredentialValue()` in `shared.ts` now checks word count; strings with 3+ words are recognized as prose/error messages rather than credential values.
|
|
1956
|
-
- **C# async with middleware error handling no longer triggers ERR** — `error-handling.ts` detects `UseExceptionHandler`, `ExceptionFilter`, and similar ASP.NET middleware patterns and suppresses redundant async error-handling findings.
|
|
1957
|
-
- **STRUCT-005 dead code no longer false-fires across scope boundaries** — `detectDeadCode()` in `structural-parser.ts` resets unreachable tracking at `else`/`elif`/`case`/`default`/`catch`/`finally`/`except` boundaries. Confidence reduced from 0.85 to 0.7.
|
|
1958
|
-
|
|
1959
|
-
### Tests
|
|
1960
|
-
- 10 new negative regression tests covering all FP fixes above
|
|
1961
|
-
- All 1,449 tests pass (963 judges + 217 negative + 209 subsystems + 70 extension)
|
|
1962
|
-
|
|
1963
|
-
### Metrics
|
|
1964
|
-
- Cross-language FP sweep: 139 → 134 findings (−5, ~3.6% reduction at evaluator level)
|
|
1965
|
-
- ~78 additional absence-based findings suppressed at pipeline level in single-file mode
|
|
1966
|
-
- Cumulative since v3.18.3: 170 → 134 findings (−36, ~21.2% reduction)
|
|
1967
|
-
|
|
1968
|
-
## [3.19.3] — 2026-03-03
|
|
1969
|
-
|
|
1970
|
-
### Fixed
|
|
1971
|
-
- **MCP tool description improvements to prevent LLM misrouting** — User prompts mentioning sovereignty, IaC, or deployment configuration were incorrectly routed to `analyze_dependencies` instead of `evaluate_code_single_judge`. Root cause: (1) `evaluate_code` and `evaluate_code_single_judge` descriptions didn't mention infrastructure-as-code file types; (2) `analyze_dependencies` description contained "supply-chain risks" which overlapped with sovereignty judge's supply chain pillar; (3) "deployment configuration" matched manifest file concepts. Fixed all three tool descriptions: evaluation tools now explicitly list Bicep/Terraform/ARM/CloudFormation support and key judge domains; `analyze_dependencies` now clarifies it only accepts package manager manifests (package.json, requirements.txt, etc.) and explicitly excludes IaC files.
|
|
1972
|
-
|
|
1973
|
-
### Added
|
|
1974
|
-
- **Tool routing test suite** (`tests/tool-routing.test.ts`) — 43 automated tests using a TF-IDF scoring engine that simulates LLM tool selection against MCP tool descriptions. Includes 30 positive tests (prompt routes to correct tool across all 9 tools), 11 negative tests (IaC/sovereignty prompts must NOT route to `analyze_dependencies`, package manager prompts must NOT route to evaluation tools), and 2 regression tests reproducing the exact misrouting bug.
|
|
1975
|
-
|
|
1976
|
-
### Tests
|
|
1977
|
-
- 43 new tool routing tests
|
|
1978
|
-
- All 1,422 tests pass (963 judges + 43 routing + 207 negative + 209 subsystems)
|
|
1979
|
-
|
|
1980
|
-
## [3.19.2] — 2026-03-03
|
|
1981
|
-
|
|
1982
|
-
### Fixed
|
|
1983
|
-
- **IaC security FP — resource-name parameters no longer flagged for `@secure()`** — Bicep parameters like `param keyVaultName string` were incorrectly flagged because the regex matched "key" inside compound names. Added post-match exclusion: if the parameter name ends with a resource-identifier suffix (`Name`, `Uri`, `Url`, `Endpoint`, `Id`, `ResourceGroup`, `Location`, `Sku`, `Region`, `Type`), it is recognized as a resource reference rather than a secret and skipped.
|
|
1984
|
-
- **MCP server version now dynamically read from `package.json`** — The `McpServer` constructor was hardcoded to version `3.6.0` since initial creation. MCP clients may cache tool definitions keyed by server version; a stale version prevents clients from refreshing their cached tool lists. Now reads version from `package.json` at startup.
|
|
1985
|
-
|
|
1986
|
-
### CI
|
|
1987
|
-
- **npm propagation wait in publish workflow** — Added a polling step (up to 10 × 15s = 150s) that verifies the npm package is visible before proceeding to MCP Registry publish, preventing the race condition that caused the v3.19.1 publish to fail on first attempt.
|
|
1988
|
-
|
|
1989
|
-
### Tests
|
|
1990
|
-
- 3 new negative tests for IaC security resource-name exclusion
|
|
1991
|
-
- All 1,379 tests pass (963 judges + 207 negative + 209 subsystems)
|
|
1992
|
-
|
|
1993
|
-
## [3.19.1] — 2026-03-03
|
|
1994
|
-
|
|
1995
|
-
### Fixed
|
|
1996
|
-
- **CI/CD absence gating on application source files** — CI/CD absence rules (no test infrastructure, no linting, no build script) now skip files classified as server or utility code. These project-level concerns belong in config/manifest files, not individual application source files. Eliminates ~8 FPs across the 6-language sweep.
|
|
1997
|
-
- **Framework-aware auth pattern expansion** — `hasAuthMiddleware` regex expanded from 14 to 24 alternatives, adding language-specific patterns: Python (`jwt.decode`, `OAuth2PasswordBearer`, `get_current_user`), Go (`jwt.Parse`, `jwt.ParseWithClaims`), Rust (`DecodingKey`, `auth_middleware`), C# (`[Authorize]`), and generic (`verify_token`, `check_auth`, `getCurrentUser`).
|
|
1998
|
-
- **Magic number detection tuning** — Three new exclusions reduce false positives: (1) numbers inside string literals (e.g., `":8080"`), (2) named constant declarations (`const PORT = 8080`), (3) keyword arguments (`pool_recycle=3600`).
|
|
1999
|
-
|
|
2000
|
-
### Tests
|
|
2001
|
-
- 11 new negative tests covering all three FP reduction changes
|
|
2002
|
-
- All 1,376 tests pass (963 judges + 204 negative + 209 subsystems)
|
|
2003
|
-
|
|
2004
|
-
### Metrics
|
|
2005
|
-
- Cross-language FP sweep: 152 → 139 findings (−13, ~8.6% reduction)
|
|
2006
|
-
- Cumulative since v3.18.3: 170 → 139 findings (−31, ~18.2% reduction)
|
|
2007
|
-
|
|
2008
|
-
## [3.19.0] — 2026-03-04
|
|
2009
|
-
|
|
2010
|
-
### Added
|
|
2011
|
-
- **Strategy 1 — Comment-stripping before pattern matching** — New `testCode(code, pattern)` utility replaces raw `pattern.test(code)` calls across 31 evaluators (184 conversions). Strips `//`, `/* */`, `#`, and Python `"""`/`'''` docstrings before testing, so patterns mentioned only in comments no longer trigger false positives. String literals are preserved so import paths, require() arguments, and route strings remain matchable.
|
|
2012
|
-
- **Strategy 2 — Multi-line context windows** — New `getContextWindow(lines, lineNum, radius)` utility enables post-match filters to check adjacent lines. Applied to 5 high-value evaluators:
|
|
2013
|
-
- **cloud-readiness** — Hardcoded host/port fallback (`??`, `||`, `getenv`) detected across ±2 lines
|
|
2014
|
-
- **portability** — Same fallback pattern for localhost/IP addresses
|
|
2015
|
-
- **data-security** — JWT `algorithms=` parameter detected on adjacent lines in multi-line Python calls
|
|
2016
|
-
- **scalability** — `await` on blocking calls detected ±1 line
|
|
2017
|
-
- **ai-code-safety** — Auth-check patterns detected ±2 lines from wildcard permissions
|
|
2018
|
-
- **Strategy 3 — Project-mode absence resolution** — New `scanProjectWideSecurityPatterns()` scans all project files for security patterns regardless of import relationships. `applyProjectWideAbsenceResolution()` reduces confidence of absence-based findings when the security category exists anywhere in the project (halved reduction vs direct-import). 5 new security categories added: health-check, graceful-shutdown, CORS, secrets-management, environment-config (total: 12).
|
|
2019
|
-
|
|
2020
|
-
### Tests
|
|
2021
|
-
- 22 new tests covering all three FP reduction strategies (15 subsystem unit tests + 7 negative integration tests)
|
|
2022
|
-
- All 1,365 tests pass (963 judges + 193 negative + 209 subsystems)
|
|
2023
|
-
|
|
2024
|
-
## [3.18.3] — 2026-03-03
|
|
2025
|
-
|
|
2026
|
-
### Fixed
|
|
2027
|
-
- **FP reduction round 5 — cross-language sweep** — Ran all 36 evaluators against clean idiomatic code in 6 languages (Python/FastAPI, Rust/Actix-web, C#/ASP.NET Core, Java/Spring Boot, Go/stdlib, C++/REST), eliminating 21 false positives across 10 source files:
|
|
2028
|
-
- **CLOUD-001 / PORTA-001** — Configurable defaults (`unwrap_or_else`, `os.Getenv`, `??`, `||`, `environ.get`) no longer flagged as hardcoded hosts
|
|
2029
|
-
- **AICS-013** — Auth-check post-filter excludes `hasRole`, `@PreAuthorize`, `[Authorize]`, `claims.role`, CORS headers
|
|
2030
|
-
- **AICS-016** — `ActionResult` (C#) no longer matched as unsafe action usage; requires explicit `_` or `.` separator
|
|
2031
|
-
- **A11Y** — `spring` no longer matched inside words (e.g. `springframework`); form-error rule uses specific HTML element list instead of broad regex
|
|
2032
|
-
- **DATA-001** — Python `jwt.decode` with `algorithms=` parameter (verified decode) no longer flagged
|
|
2033
|
-
- **SWDEV-002** — Go `if err != nil` no longer flagged as bare exception catch
|
|
2034
|
-
- **CONC-001** — Go graceful-shutdown goroutines (`signal.Notify`, `Shutdown`, `SIGTERM`) recognized as managed workers
|
|
2035
|
-
- **CFG-001** — Go multi-line `os.Getenv` + `== ""` validation detection
|
|
2036
|
-
- **DOC-001** — Backward-walk now recognizes Go `//` comments, Rust `///` with `#[attr]` traversal, C# `///` with `[Attr]` traversal, Python body docstrings
|
|
2037
|
-
|
|
2038
|
-
### Bug Fixes
|
|
2039
|
-
- **Undefined `lines` variable in 4 evaluators** — `cloud-readiness.ts`, `portability.ts`, `ai-code-safety.ts`, and `data-security.ts` referenced `lines[ln - 1]` where `lines` was either undefined, scoped inside an if-block, or was a line-number array instead of text lines. Post-filter logic silently failed, producing incorrect results. Each file now defines a properly scoped `code.split("\n")` variable.
|
|
2040
|
-
|
|
2041
|
-
### Tests
|
|
2042
|
-
- 30+ new negative FP regression tests with true-positive preservation checks
|
|
2043
|
-
- All 1,343 tests pass (963 judges + 186 negative + 194 subsystems)
|
|
2044
|
-
|
|
2045
|
-
## [3.18.2] — 2026-03-03
|
|
2046
|
-
|
|
2047
|
-
### Fixed
|
|
2048
|
-
- **FP reduction round 4 — IaC gates + cross-language fixes** — 11 rules across 7 evaluators fixed to eliminate false positives on Infrastructure-as-Code files (Bicep, Terraform) and cross-language patterns:
|
|
2049
|
-
- **SOV-001** catch-all and data-portability rules no longer fire on IaC templates
|
|
2050
|
-
- **COST-001** caching and connection-pooling rules no longer fire on IaC templates
|
|
2051
|
-
- **DOC-002** block-comment rule gated on IaC + expanded regex to recognize Bicep `@description`, `targetScope`, `metadata`, and non-JSDoc block comments
|
|
2052
|
-
- **DOC-001** magic-numbers rule no longer flags Bicep numeric configuration values (SKU sizes, byte limits, retention days)
|
|
2053
|
-
- **CACHE-002** no-cache-headers rule gated on IaC
|
|
2054
|
-
- **SCALE-006** rate-limiting and **SCALE-010** circuit-breaker rules gated on IaC
|
|
2055
|
-
- **CLOUD-001** resource-cleanup rule gated on IaC
|
|
2056
|
-
- **AICS-010** input-validation rule now recognizes Java Bean Validation annotations (`@Valid`, `@NotNull`, `@NotBlank`, `@NotEmpty`, `javax.validation`, `jakarta.validation`)
|
|
2057
|
-
|
|
2058
|
-
### Tests
|
|
2059
|
-
- 25 new negative tests with true-positive preservation checks covering all fixed rules
|
|
2060
|
-
- Comprehensive empirical sweep against Bicep, Terraform, Python, Rust, Java, and Go templates
|
|
2061
|
-
- All 1,320 tests pass (963 judges + 194 subsystems + 163 negative)
|
|
2062
|
-
|
|
2063
|
-
## [3.18.1] — 2026-03-03
|
|
2064
|
-
|
|
2065
|
-
### Fixed
|
|
2066
|
-
- **Python nested-loop false positives** — Generator expressions (`all(x for x in items)`), list comprehensions, and `x in string` substring checks were incorrectly flagged as nested O(n²) loops by both the cost-effectiveness and performance evaluators. Two root causes fixed:
|
|
2067
|
-
- Loop regex matched `for` mid-line inside comprehensions/generators — now requires `for`/`while` at line start
|
|
2068
|
-
- Loop depth tracked via `}` brace counting, which never decrements in Python — now uses indentation-stack scoping so sequential non-nested loops are correctly recognized as siblings
|
|
2069
|
-
- **CI lint warnings treated as errors** — Resolved 12 pre-existing ESLint warnings (`no-useless-escape`, `no-unused-vars`) across 5 files that caused CI to exit with code 1
|
|
2070
|
-
- **Restored intentional `moment` import** — `lint-staged` had silently removed the deliberately-vulnerable `import moment from "moment"` in `sample-vulnerable-api.ts`, breaking DEPS evaluator tests. Restored with `eslint-disable-line` guard
|
|
2071
|
-
|
|
2072
|
-
### Removed
|
|
2073
|
-
- Internal dev-only scripts (`cross-project-analysis.ts`, `analyze-report-findings.ts`) — not needed for production releases
|
|
2074
|
-
|
|
2075
|
-
### Tests
|
|
2076
|
-
- 3 new tests: Python nested loops (TP), generator expressions (FP prevention), sequential non-nested loops (FP prevention)
|
|
2077
|
-
- All 963 tests pass (960 judges + 3 new)
|
|
2078
|
-
|
|
2079
|
-
## [3.18.0] — 2025-07-09
|
|
2080
|
-
|
|
2081
|
-
### Improved
|
|
2082
|
-
- **Third round false positive reduction** — Cross-project findings 11,011 → 7,898 (−28.3%, −3,113 findings) across 30 projects / 1,149 files through 7 complementary strategies:
|
|
2083
|
-
- **Cross-judge semantic dedup** — 8 new topic patterns in `crossEvaluatorDedup()`: `deep-nesting`, `missing-tests`, `type-safety`, `missing-healthcheck`, `missing-linting`, `missing-build-script`, `missing-documentation`, `missing-error-tracking`. Eliminates duplicate findings from different judges flagging the same conceptual issue.
|
|
2084
|
-
- **5 new `isAbsenceBased` flags** — Added explicit absence markers to internationalization (encoding detection), agent-instructions (AGENT-001), dependency-health (DEPS-001), cybersecurity (security headers), and rate-limiting (no 429 handling). Triggers severity cap to medium + confidence cap to 0.6.
|
|
2085
|
-
- **Per-file finding cap** — New `applyPerFileFindingCap()` function with default limit of 20 findings per evaluation. Prioritizes by severity → confidence → actionability (suggestedFix presence) → description length. Configurable via `maxFindingsPerFile` option (0 to disable).
|
|
2086
|
-
- **CI/CD project-level gating** (FP rule #12) — Suppresses all absence-based `CICD-*` findings, which are inherently project-level concerns that cannot be meaningfully assessed from individual file analysis.
|
|
2087
|
-
- **SOV relevance gating** (FP rule #13) — Suppresses absence-based `SOV-*` findings on files that contain no data operation patterns (SQL, fetch, axios, database access, ORM methods, store operations).
|
|
2088
|
-
- **DOC-001 severity adjustment** — Documentation findings handled by existing absence pipeline for appropriate severity/confidence calibration.
|
|
2089
|
-
- **Confidence-based progressive disclosure** — New `confidenceTier` field on `Finding` type: `"essential"` (≥0.8), `"important"` (≥0.6), `"supplementary"` (<0.6). Enables UI consumers to implement progressive disclosure of findings by confidence level.
|
|
2090
|
-
- **Cross-project breakdown**: { essential: 3,677, important: 4,010, supplementary: 211 } | { critical: 222, high: 1,342, medium: 4,195, low: 1,865, info: 274 } | absence-based: 1,722
|
|
2091
|
-
- All 1,358 tests pass (960 judges + 134 negative + 194 subsystems + 70 extension-logic)
|
|
2092
|
-
|
|
2093
|
-
## [3.17.0] — 2025-07-08
|
|
2094
|
-
|
|
2095
|
-
### Improved
|
|
2096
|
-
- **Second round false positive reduction** — Cross-project findings 11,158 → 11,011 (−1.3%) from deterministic rules; additional reductions in LLM-assisted paths via precision mandates:
|
|
2097
|
-
- **35 `isAbsenceBased` flags** across 11 evaluators (authentication ×8, observability ×4, caching ×2, cloud-readiness ×4, configuration-management ×4, api-design ×3, reliability ×1, scalability ×2, agent-instructions ×4, accessibility ×1, data-sovereignty ×1) — triggers severity cap to medium + confidence cap to 0.6 for absence-patterned findings
|
|
2098
|
-
- **Project-level absence dedup** in `evaluateProject()` — groups duplicate absence findings by title, keeps only the highest-confidence instance
|
|
2099
|
-
- **Precision mandates injected** into LLM-facing assembly points (`prompts.ts` full-tribunal, `deep-review.ts` single-judge and tribunal paths) — overrides adversarial stance with "cite specific code evidence, do not flag absence speculatively, prefer fewer high-confidence findings"
|
|
2100
|
-
- **35 judge systemPrompts softened** — removed "false positives are preferred over missed [X]" and "do not give the benefit of the doubt" language from all judge files; replaced with evidence-based framing
|
|
2101
|
-
- **4 new FP heuristic rules** in `false-positive-review.ts`:
|
|
2102
|
-
- Rule 8 strengthened: absence confidence threshold raised from 0.35 → 0.45
|
|
2103
|
-
- Rule 9: Web-only rules (A11Y-, UX-) suppressed on non-web code (no HTML/JSX/DOM patterns)
|
|
2104
|
-
- Rule 10: Findings targeting empty/whitespace-only lines removed
|
|
2105
|
-
- Rule 11: Absence-based findings on trivially small files (<10 substantive lines) removed
|
|
2106
|
-
- All 1,154 tests pass (960 judges + 194 subsystems)
|
|
2107
|
-
|
|
2108
|
-
## [3.16.0] — 2025-07-06
|
|
2109
|
-
|
|
2110
|
-
### Improved
|
|
2111
|
-
- **20% false positive reduction** — Comprehensive cross-project analysis (13,981 findings across 30 projects / 1,149 files) identified and fixed 5 root cause gaps in the FP filtering pipeline, reducing findings to 11,158:
|
|
2112
|
-
- **Config file gating** — YAML/JSON/TOML/INI/ENV files now classified as "config" by `classifyFile()`, suppressing 30 code-only rule prefixes. YAML file findings: 891 → 0 (100% elimination)
|
|
2113
|
-
- **Test file suppression** — Extended `PROD_ONLY_RULE_PREFIXES` from 4 to 22 prefixes (added AGENT/AICS/PERF/PORTA/UX/I18N/A11Y/LOGPRIV/CACHE/DATA/API/SOV/DOC/MAINT/COMP/CICD/COST/SWDEV). Test file findings: 1,500 → 306 (80% reduction)
|
|
2114
|
-
- **Absence-based gating** — Extended `ABSENCE_GATED_PREFIXES` with 7 new prefixes (SOV/DOC/MAINT/SWDEV/COST/COMP/TEST); removed counterproductive `projectLevelKeywords` exclusion that prevented CI/CD, pipeline, and infrastructure findings from being gated on non-server files
|
|
2115
|
-
- **Evaluator `isAbsenceBased` flags** — Added explicit flags to 12 findings across 5 evaluators (ci-cd ×6, data-sovereignty ×1, documentation ×1, software-practices ×1, cost-effectiveness ×3)
|
|
2116
|
-
- **PII geo-partitioning precision** — Added line-number collection to PII storage finding in data-sovereignty evaluator, making it presence-based (specific DB operation lines) rather than falsely gated as absence-based
|
|
2117
|
-
- **11 new subsystem tests** covering all FP improvements (194 total, was 183)
|
|
2118
|
-
- All 1,154 tests pass (960 judges + 194 subsystems)
|
|
2119
|
-
|
|
2120
|
-
## [3.15.1] — 2025-07-06
|
|
2121
|
-
|
|
2122
|
-
### Fixed
|
|
2123
|
-
- **ReDoS (catastrophic backtracking) in 8 evaluator/AST files** — Comprehensive audit and fix of regex patterns that could cause exponential or polynomial backtracking on adversarial or large inputs:
|
|
2124
|
-
- `observability.ts` — String-stripping regex `(["'\`])(?:\\.|(?!\1).)*\1` replaced with safe per-quote-type pattern
|
|
2125
|
-
- `ethics-bias.ts` — Same string-stripping regex fix
|
|
2126
|
-
- `portability.ts` — `pathSepPattern` restructured: trailing `[^...]*` moved outside the repeated `{2,}`/`{3,}` groups to eliminate NFA ambiguity between iterations
|
|
2127
|
-
- `cross-file-taint.ts` — `.*SOURCE.*` dynamic regex replaced with `[^\n]*SOURCE[^\n]*` to avoid O(n²) between adjacent wildcards (2 instances)
|
|
2128
|
-
- `software-practices.ts` — `(?:.*,\s*)?` in boolean-param detection replaced with `(?:[^,)]*,\s*)*` to eliminate `.*`/`,` overlap
|
|
2129
|
-
- `cybersecurity.ts` — Same `(?:.*,\s*)?` fix in mass-assignment detection
|
|
2130
|
-
- `scalability.ts` — `\(.*(?:length|size|count).*\)` replaced with `\([^)]*...[^)]*\)` to prevent O(n²) between adjacent wildcards
|
|
2131
|
-
- `ai-code-safety.ts` — Triple `.*` in f-string prompt injection pattern replaced with `[^{]*` and `[^}]*` to prevent O(n³) backtracking
|
|
2132
|
-
- All 1143 tests pass (960 judges + 183 subsystems)
|
|
2133
|
-
|
|
2134
|
-
## [3.15.0] — 2026-03-02
|
|
2135
|
-
|
|
2136
|
-
### Reverted
|
|
2137
|
-
- **Removed LLM-based false positive filter (v3.14.0)** — The external-API approach was architecturally wrong. Judges are agent prompts meant to leverage the calling model (Copilot, ChatGPT, etc.) via their `systemPrompt` fields — they should not call a separate LLM API with a separate API key. All v3.14.0 changes have been fully reverted:
|
|
2138
|
-
- Deleted `src/llm-fp-filter.ts`
|
|
2139
|
-
- Reverted `register-evaluation.ts`, `register-workflow.ts`, `deep-review.ts`, `api.ts`
|
|
2140
|
-
- Removed 15 LLM filter tests from `subsystems.test.ts`
|
|
2141
|
-
|
|
2142
|
-
### Added
|
|
2143
|
-
- **False-Positive Review meta-judge** (`false-positive-review`) — A new 37th judge dedicated to FP detection, following the correct hybrid architecture:
|
|
2144
|
-
- **Agentic side** (`systemPrompt`): Comprehensive FP-expert persona covering a 10-category taxonomy — string literal context, comment context, test context, identifier-keyword collision, IaC gating, stdlib idiom, adjacent mitigation, import/type-only, serialization vs export, absence-based in partial code. The calling model uses this prompt in the deep review section to contextually review findings for false positives.
|
|
2145
|
-
- **Deterministic side** (`src/evaluators/false-positive-review.ts`): Pipeline post-processing step in `evaluateWithTribunal` that removes findings matching known FP patterns:
|
|
2146
|
-
- App-only rules (CYBER, AUTH, PERF, etc.) suppressed on IaC templates
|
|
2147
|
-
- Prod-only rules (RATE, SCALE, OBS, CLOUD) suppressed on test files
|
|
2148
|
-
- Findings where all target lines are comments or string literals
|
|
2149
|
-
- Findings targeting import/type declarations only
|
|
2150
|
-
- Keyword-in-identifier collisions (e.g. "age" in `maxAge`, "password" in `passwordField`)
|
|
2151
|
-
- Safe stdlib idioms (dict.get, JSON.stringify, path.join with literals)
|
|
2152
|
-
- Absence-based findings with very low confidence (<35%)
|
|
2153
|
-
- **15 new tests** covering all heuristic categories
|
|
2154
|
-
|
|
2155
|
-
## [3.14.0] — 2026-03-02 [REVERTED]
|
|
2156
|
-
|
|
2157
|
-
_This release has been fully reverted in v3.15.0. See above for details._
|
|
2158
|
-
|
|
2159
|
-
## [3.13.10] — 2026-03-02
|
|
2160
|
-
|
|
2161
|
-
### Fixed
|
|
2162
|
-
- **5 evaluator false-positive fixes** from ninth round of real-world Copilot feedback (`data_loader.py` Python GDPR text loader/indexer, persisted across 3 remediation iterations):
|
|
2163
|
-
- **COMP-001** (compliance) — Age-verification rule now checks ±3 line context window for cache/TTL keywords (`cache`, `ttl`, `max_age`, `stale`, `freshness`, `expir`). The word "age" in cache-age/TTL logging contexts is no longer flagged as age-related user data.
|
|
2164
|
-
- **SOV-001** (data-sovereignty) — Region-policy rule now suppresses Python `global` scope declarations (`global my_var`), `GLOBAL_CONFIG`-style variable names, and `global_cache`/`_global` identifiers. Suppression is bypassed when the line also contains real geographic patterns (`us-`, `asia-`, `ap-`, etc.).
|
|
2165
|
-
- **SOV-002** (data-sovereignty) — Cross-border egress rule now requires personal/sensitive data context (`user`, `customer`, `email`, `payment`, `pii`, etc.) before flagging HTTP calls. Modules that only fetch read-only reference content (regulation text, documentation) are no longer flagged.
|
|
2166
|
-
- **SOV-003** (data-sovereignty) — Export-path rule now suppresses standard serialization library calls (`json.dumps`, `json.dump`, `pickle.dump`, `yaml.dump`, `csv.dump`, `msgpack`, `marshal`, `toml.dump`, `pprint`). In-memory or local-file serialization is not cross-border data export.
|
|
2167
|
-
- **PERF-001** (performance) — Duplicate-fetch rule now validates that `get()` calls are actual HTTP client methods (`requests.get`, `axios.get`, `http.get`, `fetch`) or use URL-like arguments (`http://`/`https://`). Python `dict.get("key")`, `config.get("name")`, and `os.environ.get("VAR")` are no longer counted as network fetches.
|
|
2168
|
-
|
|
2169
|
-
### Added
|
|
2170
|
-
- **13 new regression tests** (1326 total) covering all 5 FP fixes: cache-age suppression (positive + negative), Python global keyword suppression (scope declaration, variable names, geographic passthrough), read-only content fetch (reference loader vs personal data exporter), serialization dump (json/yaml/pickle + real export passthrough), dict.get vs HTTP get (dict.get, fetch, requests.get).
|
|
2171
|
-
|
|
2172
|
-
## [3.13.9] — 2026-03-02
|
|
2173
|
-
|
|
2174
|
-
### Fixed
|
|
2175
|
-
- **Broad IaC awareness sweep** — 11 additional rules across 7 evaluators now suppress false positives on Bicep, Terraform, and ARM templates:
|
|
2176
|
-
- **SOV-001** (data-sovereignty) — Region-without-policy rule gated with `!isIaCTemplate`. Bicep `@allowed` location params are policy-compliant by design.
|
|
2177
|
-
- **SOV-003** (data-sovereignty) — Replication/backup localization rule gated. IaC GRS/geo-redundant config is declarative infrastructure.
|
|
2178
|
-
- **SOV-007** (data-sovereignty) — Telemetry sovereignty rule gated. App Insights resource declarations are not telemetry data flows.
|
|
2179
|
-
- **SOV-009** (data-sovereignty) — Region-without-enforcement rule gated. Bicep location parameters enforce region declaratively.
|
|
2180
|
-
- **SOV-011** (data-sovereignty) — KMS/key sovereignty rule gated. KeyVault resource definitions are infrastructure.
|
|
2181
|
-
- **COMP-002** (compliance) — Tracking/analytics without consent rule gated. IaC monitoring resources are not user-tracking code.
|
|
2182
|
-
- **CYBER** (cybersecurity) — Auth rate-limiting rule gated. `@secure()` password/token params are not auth endpoints.
|
|
2183
|
-
- **AICS-008** (ai-code-safety) — Hardcoded URL rule gated. Container image references and endpoint configs in IaC are declarative.
|
|
2184
|
-
- **CFG-**** (configuration-management) — Full evaluator early-return for IaC templates. All CFG rules are designed for imperative code.
|
|
2185
|
-
- **CLOUD** (cloud-readiness) — Connection string detection gated. ARM/Bicep `connectionStrings` blocks are infrastructure wiring.
|
|
2186
|
-
- **CLOUD** (cloud-readiness) — Config-without-env-vars rule gated. IaC `appSettings` are declarative configuration.
|
|
2187
|
-
|
|
2188
|
-
### Improved
|
|
2189
|
-
- **Extracted `isIaCTemplate` to `shared.ts`** — Centralized IaC content-detection regex (previously duplicated in 3 evaluators) into a single shared function. Detects Bicep, Terraform, and ARM template patterns.
|
|
2190
|
-
|
|
2191
|
-
### Added
|
|
2192
|
-
- **11 new regression tests** (1313 total) covering all newly guarded IaC FP rules with targeted Bicep, Terraform, and ARM template fixtures, plus positive tests validating imperative app code is still flagged.
|
|
2193
|
-
|
|
2194
|
-
## [3.13.8] — 2026-03-02
|
|
2195
|
-
|
|
2196
|
-
### Fixed
|
|
2197
|
-
- **4 evaluator false-positive fixes** from eighth round of real-world Copilot feedback (`gdpr_aks.bicep` IaC template, persisted across 3 remediation iterations):
|
|
2198
|
-
- **SOV-001** (data-sovereignty) — Export-path rule now gated on `!isIaCTemplate`. Bicep/Terraform/ARM templates are declarative infrastructure definitions with no data-export code paths.
|
|
2199
|
-
- **SOV-002** (data-sovereignty) — Jurisdiction enforcement rule now gated on `!isIaCTemplate`. Bicep enforces jurisdiction via declarative `@allowed` parameter constraints, not imperative `deny`/`throw` branches.
|
|
2200
|
-
- **COMP-001** (compliance) — Age-verification rule now gated on `!isIaCTemplate`. Infrastructure templates contain no age-related user data or input fields (e.g., AKS `maxAge` is a node pool setting).
|
|
2201
|
-
- **COST-001** (cost-effectiveness) — Nested-loop detection now gated on `!isIaCTemplate`. Declarative IaC has no imperative loop constructs.
|
|
2202
|
-
|
|
2203
|
-
### Added
|
|
2204
|
-
- **8 new regression tests** (1302 total) covering all 4 IaC FP fixes with both negative (Bicep template suppressed) and positive (imperative application code still detected) cases.
|
|
2205
|
-
- `isIaCTemplate` detection regex for Bicep (`param`, `resource`, `@allowed`, `targetScope`), Terraform (`resource`, `variable`, `provider`, `terraform {`), and ARM (`$schema...deploymentTemplate`) across 3 evaluators.
|
|
2206
|
-
|
|
2207
|
-
## [3.13.7] — 2026-03-02
|
|
2208
|
-
|
|
2209
|
-
### Fixed
|
|
2210
|
-
- **4 evaluator false-positive fixes** from seventh round of real-world Copilot feedback (`public/app.js` browser-side JavaScript, score 91→94):
|
|
2211
|
-
- **DB-001** (database) — N+1 query rule now gated on `hasDatabaseContext` (DB imports, SQL statements, connection patterns). Browser-side `fetch()`, `Array.find()`, DOM `.select()` in loops are not N+1 database access.
|
|
2212
|
-
- **COMP-001** (compliance) — Age-related regex now uses `\bage(?![a-z])` word boundary to prevent matching `age` embedded in common words (`package`, `page`, `image`, `storage`, `manage`, `voltage`, etc.). Also word-bounded `child`, `minor`, `dob`, `coppa`.
|
|
2213
|
-
- **SOV-002** (data-sovereignty) — Export path rule now gated on `!isFrontendCode`. Browser code with `document.`, `window.`, `addEventListener`, `querySelector`, React/Vue/Angular/jQuery signals is UI rendering, not data export.
|
|
2214
|
-
- **TEST-001** (testing) — `hasTestStructure` now requires ≥2 of (`describe`, `it`, `test`) for JS/TS instead of any single match. A lone `it(` in browser code (common iterator variable) no longer triggers test evaluator.
|
|
2215
|
-
|
|
2216
|
-
### Added
|
|
2217
|
-
- **8 new regression tests** (1294 total) covering all 4 FP fixes with both negative (browser code suppressed) and positive (real server/test code still detected) cases.
|
|
2218
|
-
|
|
2219
|
-
## [3.13.6] — 2026-03-02
|
|
2220
|
-
|
|
2221
|
-
### Fixed
|
|
2222
|
-
- **5 evaluator false-positive fixes** from sixth round of real-world Copilot feedback (`public/index.html` static HTML page, score 98→99):
|
|
2223
|
-
- **COMP-001** (compliance) — Age-verification rule now skipped for HTML/markup files. Privacy policy text mentioning “COPPA”, “children”, “under 13” is legal disclosure, not an age-input data flow.
|
|
2224
|
-
- **SOV-001** (data-sovereignty) — Jurisdiction enforcement rule now gated on `!isMarkupFile`. Legal/privacy text mentioning “jurisdiction” in static HTML is not code that needs enforcement branches.
|
|
2225
|
-
- **PORTA-001** (portability) — Path separator rule short-circuits for markup files. Forward slashes in HTML `href`/`src` attributes are valid URL paths, not OS file-path separator misuse.
|
|
2226
|
-
- **CICD-001** (ci-cd) — “No test infrastructure” rule now checks `!isMarkupFile`. HTML `class=` attributes matching the `class` keyword no longer trigger source-code detection.
|
|
2227
|
-
- **COST-001** (cost-effectiveness) — `hasDataFetchOrServe` gated on `!isMarkupFile`. Text content mentioning “fetch” in static HTML does not need in-code caching.
|
|
2228
|
-
|
|
2229
|
-
### Added
|
|
2230
|
-
- **10 new regression tests** (1286 total) covering all 5 FP fixes with both negative (HTML suppressed) and positive (real source code still detected) cases.
|
|
2231
|
-
|
|
2232
|
-
## [3.13.5] — 2026-03-02
|
|
2233
|
-
|
|
2234
|
-
### Fixed
|
|
2235
|
-
- **7 evaluator false-positive fixes** from fifth round of real-world Copilot feedback (`src/utils.js` post-split barrel module, score 99):
|
|
2236
|
-
- **SOV-001** (data-sovereignty) — "Data export path without sovereignty-aware controls" now skips ES module re-export barrels (`export { ... } from '...'`). Re-export aggregation files do not perform actual data export.
|
|
2237
|
-
- **TEST-001** (testing) — `hasTestStructure` regex now uses `\b` word boundaries for `describe`, `it`, `test` to prevent false matches inside `emit()`, `submit()`, `split()`, `transmit()`, `exit()`. Also expanded `isConfigOrUtility` with `util|utils|helper|helpers|lib|shared|common` patterns, and restricted to file header (first 5 lines) to avoid matching incidental code-body mentions.
|
|
2238
|
-
- **CLOUD-001/002/003** (cloud-readiness) — Health check, graceful shutdown, and feature flag rules now gated on `hasServerCode` (requires `app.listen`, `createServer`, `express()`, Flask, Django, etc.). Utility/helper modules above the line threshold are no longer flagged.
|
|
2239
|
-
- **I18N-001** (internationalization) — `isDirOrModuleLoader` extended with ESM re-export barrel pattern (`export { ... } from`) to suppress "No text encoding specification" on barrel modules.
|
|
2240
|
-
- **COST-001** (cost-effectiveness) — "No caching strategy detected" now gated on `hasDataFetchOrServe` requiring evidence of I/O, data-fetching, or server operations (`fetch()`, `axios`, `.query()`, `db.`, `app.listen`, etc.). Pure utility modules no longer flagged.
|
|
2241
|
-
|
|
2242
|
-
### Added
|
|
2243
|
-
- **10 new regression tests** (1276 total) covering all 7 FP fixes with both negative (FP suppressed) and positive (real issues still detected) cases.
|
|
2244
|
-
|
|
2245
|
-
## [3.13.4] — 2026-03-02
|
|
2246
|
-
|
|
2247
|
-
### Fixed
|
|
2248
|
-
- **2 evaluator false-positive fixes** from fourth round of real-world Copilot feedback:
|
|
2249
|
-
- **I18N-001** (internationalization) — "No text encoding specification" rule now suppressed for directory/module-loader files that use `readdir`, `readdirSync`, `opendir`, `scandir`, `glob`, `import()`, `require()`, `require.resolve`, `__dirname`, or `path.join`/`path.resolve`. These files perform filesystem navigation, not text-content I/O.
|
|
2250
|
-
- **UX-001** (ux) — "List rendering without empty state" rule now requires UI rendering context (JSX/HTML tags, DOM manipulation, React/Vue/Angular/Svelte imports) before firing. Backend modules using `.map()`/`.forEach()` for data processing are no longer flagged.
|
|
2251
|
-
|
|
2252
|
-
### Added
|
|
2253
|
-
- **4 new regression tests** (1267 total) covering both FP fixes with negative (FP suppressed) and positive (real issues still detected) cases.
|
|
2254
|
-
|
|
2255
|
-
## [3.13.3] — 2026-03-02
|
|
2256
|
-
|
|
2257
|
-
### Fixed
|
|
2258
|
-
- **12 evaluator false-positive fixes** from third round of real-world Copilot delta feedback (score improved 97→99, high findings 7→1):
|
|
2259
|
-
- **SOV-001** (data-sovereignty) — region patterns inside regex `.test()` / `.match()` calls are now excluded (analysis code referencing region patterns, not actual region usage). Broadened `hasRegionPolicy` with `regionConfig`, `deploymentRegion`, `regionConstraint`, `regionAllowlist`, `regionDenylist`, `dataLocality`, `geoFence`, `geoRestrict`.
|
|
2260
|
-
- **AUTH-001** (authentication) — credential keywords inside regex pattern lines are now skipped (code analysis tools defining credential-detection patterns).
|
|
2261
|
-
- **AUTH-002** (authentication) — route detection now filters out regex `.test()` pattern references and regex-escaped route strings. Files with ≥8 `.test()` calls (code-analysis modules) are excluded as they are evaluator/analysis code, not actual unprotected endpoints.
|
|
2262
|
-
- **DB-001** (database) — SQL injection patterns inside regex `.test()` / `.match()` calls are now excluded (analysis code, not real SQL queries).
|
|
2263
|
-
- **TEST-001** (testing) — "No tests detected" rule now suppresses for code-analysis modules (≥8 regex `.test()` calls), which are analysis/evaluator modules, not undertested production code.
|
|
2264
|
-
- **A11Y-001** (accessibility) — files constructing ARIA helpers or accessibility utilities (`createAccessible`, `ariaHelper`, `buildAria`, `a11yProps`, `makeAccessible`, etc.) are now recognized as building accessible infrastructure and excluded from the "image missing alt" rule. Regex pattern lines also excluded.
|
|
2265
|
-
- **PORTA-002** (portability) — path separator detection now excludes route/API path definitions (`app.get('/api/v1/...')`, `@Get()` annotations), path/route/endpoint variable assignments, and URL-like path strings (`/api/`, `/v1/`, `/auth/`, etc.).
|
|
2266
|
-
- **SWDEV-003** (software-practices) — magic number detection now excludes `.length` threshold comparisons (`.length > 50`, `.length < 3`) and named constant declarations with uppercase identifiers (`const MAX_RETRIES = 5`).
|
|
2267
|
-
- **COMP-001** (compliance) — age-verification finding now downgrades to `low` severity (from `medium`) when age-consent middleware patterns are detected (`ageConsentMiddleware`, `parentalConsentMiddleware`, `coppaMiddleware`, `minorDataRestrict`, `childProtectionGuard`, etc.).
|
|
2268
|
-
- **UX-001** (ux) — inline event handler detection now suppresses entirely for React/JSX files (imports React, uses hooks, JSX/TSX). React's synthetic event props like `onClick` are standard, not inline handlers.
|
|
2269
|
-
- **UX-002** (ux) — form detection tightened to require actual HTML form elements (`<form>`, `<button>`, `onSubmit=`, `handleSubmit`, `formik`, `useForm`) rather than generic keyword mentions of "form" or "submit".
|
|
2270
|
-
- **TEST-002** (testing) — no-test-detection for production code now excluded for analysis modules with heavy regex usage.
|
|
2271
|
-
|
|
2272
|
-
### Added
|
|
2273
|
-
- **17 new regression tests** (1263 total) covering all 12 false-positive fixes, including both negative cases (FP suppressed) and positive cases (real issues still detected).
|
|
2274
|
-
|
|
2275
|
-
## [3.14.0] — 2026-03-02
|
|
2276
|
-
|
|
2277
|
-
### Added
|
|
2278
|
-
- **Combined Layer 1 + Layer 2 deep review** — new `@judges /deepreview` chat sub-command and `Judges: Deep Review (Layer 1 + Layer 2)` VS Code command. Runs all 35 deterministic evaluators (L1), then sends findings + source code to GPT-4o with the full tribunal deep-review prompt (L2) for contextual AI analysis — all in a single user action.
|
|
2279
|
-
- **`/deepreview` chat sub-command** — streams L1 findings grouped by severity with fix buttons, then streams the L2 LLM deep-review response directly in Copilot Chat. Gracefully degrades to L1-only when no LLM is available.
|
|
2280
|
-
- **`judges.deepReview` command** — accessible from command palette and editor context menu (🚀 icon). Runs L1 + L2 and opens the full report as a new markdown tab.
|
|
2281
|
-
- **Deep-review prompt builders exported from public API** — `buildSingleJudgeDeepReviewSection` and `buildTribunalDeepReviewSection` are now available via `@kevinrabun/judges/api`.
|
|
2282
|
-
- **10 new tests** (1220 total): deep-review intent detection (3), L1→L2 prompt construction (3), tribunal section validation (2), JUDGES array contract (1), API export accessibility (1).
|
|
2283
|
-
|
|
2284
|
-
## [3.13.2] — 2026-03-02
|
|
2285
|
-
|
|
2286
|
-
### Fixed
|
|
2287
|
-
- **5 evaluator false-positive fixes** from second round of real-world Copilot review feedback:
|
|
2288
|
-
- **REL-001** (reliability) — empty catch blocks now suppressed when the file contains resilience infrastructure (circuit-breaker, retry wrappers, abort-signal helpers) indicating errors are intentionally handled at a higher abstraction layer.
|
|
2289
|
-
- **SOV-001** (data-sovereignty) — broadened `hasRegionPolicy` detection to recognize `approvedJurisdictions`, `allowedJurisdictions`, `jurisdictionPolicy`, `exportPolicy`, `egressPolicy`, and `jurisdictionGuard` patterns.
|
|
2290
|
-
- **SOV-003/telemetry** (data-sovereignty) — relaxed telemetry kill-switch regex: `ALLOW_EXTERNAL_TELEMETRY` is now a standalone match (no longer requires `throw|false|disabled` on the same line). Added `SovereigntyError.*telemetry` and `policy.?gate.*telemetry` patterns.
|
|
2291
|
-
- **SCALE-003** (scalability) — removed generic `.sleep()` from blocking-call detection (matched async sleep helpers in retry/backoff code). Now only matches language-specific blocking sleeps (`Thread.sleep`, `time.sleep`). Lines containing `await` are also excluded.
|
|
2292
|
-
- **COMP-001** (compliance) — PII-without-encryption rule now suppressed when the file has compliance infrastructure (`verifyAgeCompliance`, `requireParentalConsent`, `restrictDataCollection`, etc.). Age-verification regex also expanded to recognize `verifyAge`, `ageCompliance`, `requireParentalConsent`, `restrictDataCollection`.
|
|
2293
|
-
|
|
2294
|
-
### Added
|
|
2295
|
-
- **11 new regression tests** (1246 total) covering all 5 false-positive fixes, including both negative cases (FP suppressed) and positive cases (real issues still detected).
|
|
2296
|
-
|
|
2297
|
-
## [3.13.1] — 2026-03-02
|
|
2298
|
-
|
|
2299
|
-
### Fixed
|
|
2300
|
-
- **10 evaluator false-positive fixes** from real-world Copilot review feedback:
|
|
2301
|
-
- **REL-002** (reliability) — expanded timeout context window from 5 lines to ±15 lines; added file-level `AbortController`/`AbortSignal`/`signal` scan so files with centralized timeout handling are not flagged.
|
|
2302
|
-
- **SOV-002** (data-sovereignty) — added egress gate detection (`assertAllowedEgress`, `egressPolicy`, `jurisdictionCheck`, etc.) to suppress cross-border findings when a guard function exists.
|
|
2303
|
-
- **SOV-004** (data-sovereignty) — added centralized sovereignty response handler detection (`finalizeSovereignResponse`, `sovereigntyMiddleware`, etc.) to suppress export-path findings.
|
|
2304
|
-
- **SOV-007** (data-sovereignty) — added telemetry kill-switch detection; files that throw on external telemetry enable are no longer flagged.
|
|
2305
|
-
- **SOV-008** (data-sovereignty) — tightened PII partition rule to require concrete DB mutation evidence (SQL DML in query context or ORM method calls) instead of matching generic verbs like `create`/`save`.
|
|
2306
|
-
- **DOC-001** (documentation) — undocumented-function rule now only flags exported/public functions. Internal helpers, private utilities, and language-specific private patterns (`_`-prefixed in Python, non-`pub` in Rust) are skipped.
|
|
2307
|
-
- **A11Y form error** (accessibility) — form error ARIA rule now gated on HTML/JSX rendering evidence; pure backend files generating validation schemas are no longer flagged.
|
|
2308
|
-
- **SCALE-003** (scalability) — replaced generic `*Sync(` regex with an explicit list of 30+ known Node.js synchronous blocking APIs. Custom functions like `ensureModelSync()` or `performDataSync()` are no longer flagged.
|
|
2309
|
-
- **AUTH-002** (authentication) — added public endpoint marker detection (`isPublic`, `@PermitAll`, `noAuth`, `AllowAnonymous`, etc.) and health-check-only route file suppression.
|
|
2310
|
-
- **DB-006** (database) — tightened mutation detection to require SQL DML in `query()`/`execute()` context or ORM method calls; function names containing `create`/`update`/`delete` no longer trigger false positives.
|
|
2311
|
-
|
|
2312
|
-
### Added
|
|
2313
|
-
- **15 new regression tests** (1235 total) covering all 10 false-positive fixes, including both negative cases (FP suppressed) and positive cases (real issues still detected) for DOC-001, A11Y, SCALE-003, AUTH-002, and DB-006.
|
|
2314
|
-
|
|
2315
|
-
## [3.13.0] — 2026-03-02
|
|
2316
|
-
|
|
2317
|
-
### Added
|
|
2318
|
-
- **AI-assisted false-positive refinement** — new `Judges: Refine Findings with AI` VS Code command (context menu + command palette). Uses GPT-4o to review pattern-matched findings against source code and filter out false positives. Reports how many findings were dismissed vs confirmed.
|
|
2319
|
-
- **Deep-review false-positive instructions** — both single-judge and tribunal deep-review prompt builders now include a "False Positive Review" section instructing the LLM to identify and dismiss pattern findings that match string literals, function-scoped variables, nearby mitigation code, or test/example code. Dismissed findings are listed in a dedicated section and excluded from the verdict.
|
|
2320
|
-
- **`isStringLiteralLine()` helper** — new helper in `shared.ts` that detects lines whose content is purely a string literal value (object properties, descriptions, examples). Used by `getLineNumbers` / `getLangLineNumbers` to auto-skip string-literal lines by default, preventing false positives from example text in strings.
|
|
2321
|
-
- **String literal skipping in `getLineNumbers` / `getLangLineNumbers`** — both functions now skip string-literal-only lines by default (opt out with `{ skipStringLiterals: false }`). IaC languages (ARM/Terraform/Bicep) automatically opt out since their content is structured data where quoted values are meaningful.
|
|
2322
|
-
- **34 new tests** (1210 total across 4 test files):
|
|
2323
|
-
- Deep-review single-judge prompt (8 tests) and tribunal prompt (7 tests).
|
|
2324
|
-
- `isStringLiteralLine` helper (7 tests).
|
|
2325
|
-
- `getLineNumbers` / `getLangLineNumbers` string literal skipping (4 tests).
|
|
2326
|
-
- String literal false-positive regressions for logging-privacy and performance evaluators (2 tests).
|
|
2327
|
-
- `refineWithAI` contract verification (6 tests): prompt building, index filtering, JSON array parsing.
|
|
2328
|
-
|
|
2329
|
-
### Fixed
|
|
2330
|
-
- **7 evaluator false-positive fixes**:
|
|
2331
|
-
- **logging-privacy** — SQL regex no longer matches `SELECT` inside string literal values.
|
|
2332
|
-
- **data-sovereignty** — audit trail window scoped to function bodies instead of matching globally.
|
|
2333
|
-
- **performance** — unbounded collection scope limited to actual code context; event handler and pagination checks now skip string literal lines.
|
|
2334
|
-
- **internationalization** — currency regex anchored to avoid matching partial identifiers.
|
|
2335
|
-
- **scalability** — global mutable state scoping improved (function-local `let`/`var` no longer flagged).
|
|
2336
|
-
- **IaC evaluator preserves detection in ARM templates** — `getLangLineNumbers` auto-disables string literal skipping for IaC languages so JSON key-value pairs aren't incorrectly filtered.
|
|
2337
|
-
|
|
2338
|
-
### Changed
|
|
2339
|
-
- **README** — test badge updated from 925 to 1210; documented AI refinement capability.
|
|
2340
|
-
- **VS Code extension README** — added `Judges: Refine Findings with AI` to commands table and features list.
|
|
2341
|
-
|
|
2342
|
-
## [3.12.0] — 2026-03-01
|
|
2343
|
-
|
|
2344
|
-
### Added
|
|
2345
|
-
- **Technological sovereignty rules** — 3 new evaluator rules:
|
|
2346
|
-
- **SOV-011**: Vendor-managed encryption without key sovereignty (BYOK/CMK/HSM).
|
|
2347
|
-
- **SOV-012**: Proprietary AI/ML model dependency without abstraction layer.
|
|
2348
|
-
- **SOV-013**: Single identity provider coupling without OIDC/SAML federation.
|
|
2349
|
-
- **Operational sovereignty rules** — 3 new evaluator rules:
|
|
2350
|
-
- **SOV-014**: External API calls without circuit breaker / resilience patterns.
|
|
2351
|
-
- **SOV-015**: Administrative operations without structured audit trail.
|
|
2352
|
-
- **SOV-016**: Data storage without export / portability mechanism.
|
|
2353
|
-
- **3-pillar sovereignty systemPrompt** — judge definition expanded with 20 evaluation criteria across Data, Technological & Operational sovereignty pillars.
|
|
2354
|
-
- **13 new tests** for technological and operational sovereignty rules including comment-skipping regression (925 total tests, 190 suites).
|
|
2355
|
-
|
|
2356
|
-
### Changed
|
|
2357
|
-
- **Judge name** — "Judge Data Sovereignty" → "Judge Sovereignty".
|
|
2358
|
-
- **Judge domain** — "Data Sovereignty & Jurisdictional Controls" → "Data, Technological & Operational Sovereignty".
|
|
2359
|
-
- **README** — test badge 912 → 925; Data Sovereignty row and MCP prompt expanded.
|
|
2360
|
-
|
|
2361
|
-
## [3.11.4] — 2026-03-01
|
|
2362
|
-
|
|
2363
|
-
### Fixed
|
|
2364
|
-
- **Zero lint errors** — resolved all remaining PROBLEMS across `daily-popular-repo-autofix.ts` (unused `RepoTimeoutError` class), `judges.test.ts` (9 unused imports), and `iac-security.ts` (unused post-increment value).
|
|
2365
|
-
- **9 new comment-skipping regression tests** — authentication, API design, dependency health, compliance, observability, testing, internationalization, documentation, and ethics-bias evaluators now have dedicated false-positive regression tests (912 total tests, 188 suites).
|
|
2366
|
-
|
|
2367
|
-
### Changed
|
|
2368
|
-
- **CHANGELOG** — added missing entries for v3.8.5 through v3.11.3 with link references.
|
|
2369
|
-
- **README** — test badge updated from 842 to 912.
|
|
2370
|
-
- **CONTRIBUTING** — test count updated from 700+ to 900+.
|
|
2371
|
-
- **SECURITY** — supported versions table updated to reflect 3.11.x as current.
|
|
2372
|
-
|
|
2373
|
-
## [3.11.3] — 2026-03-01
|
|
2374
|
-
|
|
2375
|
-
### Fixed
|
|
2376
|
-
- **Systemic comment-skipping across all evaluators** — added `isCommentLine()` helper to `shared.ts` with `COMMENT_LINE_RE` regex. `getLineNumbers()` and `getLangLineNumbers()` now skip comment lines by default. Added 123 individual `isCommentLine` guards to `forEach`/`for` loops across 20 evaluators. 9 intentional comment checks (TODO/FIXME, linter-disable, etc.) opted out with `{ skipComments: false }`.
|
|
2377
|
-
- Added 10 regression tests for comment-skipping false positives (903 total tests, 188 suites).
|
|
2378
|
-
|
|
2379
|
-
## [3.11.2] — 2026-03-01
|
|
2380
|
-
|
|
2381
|
-
### Fixed
|
|
2382
|
-
- **Recursion detector** limited body scan to actual function boundaries — previously could false-positive on identically named functions elsewhere in the file.
|
|
2383
|
-
- **`var` in comments** no longer triggers maintainability or software-practices findings (`var oldConfig = {}` in a comment is not a code issue).
|
|
2384
|
-
|
|
2385
|
-
## [3.11.1] — 2026-03-01
|
|
2386
|
-
|
|
2387
|
-
### Fixed
|
|
2388
|
-
- **Testing evaluator** — `describe`/`it` labels and word boundaries for `HttpClient` no longer produce false positives.
|
|
2389
|
-
- **Data-sovereignty evaluator** — `export` embedded in identifiers and env vars no longer triggers; added word boundaries to `dr` and `replica` checks.
|
|
2390
|
-
- **Documentation evaluator** — walks backwards through comment body for long JSDoc blocks to avoid false-positive "missing documentation" findings.
|
|
2391
|
-
|
|
2392
|
-
## [3.11.0] — 2026-03-01
|
|
2393
|
-
|
|
2394
|
-
### Fixed
|
|
2395
|
-
- **N+1 query check** now scans actual loop bodies instead of the entire file — eliminates false positives when queries exist outside loops.
|
|
2396
|
-
- **Retry detection** recognizes `p-retry` and `backoff` libraries.
|
|
2397
|
-
- **Cost-effectiveness** skips comment lines in loop detection.
|
|
2398
|
-
- **Accessibility** skips comment and declaration lines.
|
|
2399
|
-
- **Data-sovereignty** skips comment lines.
|
|
2400
|
-
- **External dependency** detection skips comment lines.
|
|
2401
|
-
- **API doc check** no longer false-positives on large JSDoc blocks.
|
|
2402
|
-
|
|
2403
|
-
## [3.10.1] — 2026-03-01
|
|
2404
|
-
|
|
2405
|
-
### Fixed
|
|
2406
|
-
- **Auto-fix button** no longer falsely reports code changed when no patches were applied.
|
|
2407
|
-
|
|
2408
|
-
## [3.10.0] — 2026-03-01
|
|
2409
|
-
|
|
2410
|
-
### Added
|
|
2411
|
-
- **IaC Security judge** (`IAC-*` rules) — Infrastructure-as-Code analysis for Terraform (`.tf`), Bicep (`.bicep`), and ARM templates (`.json`). Checks for overly permissive network rules, missing encryption, public access, hardcoded secrets in IaC definitions, and 15 other IaC-specific anti-patterns.
|
|
2412
|
-
|
|
2413
|
-
## [3.9.3] — 2026-03-01
|
|
2414
|
-
|
|
2415
|
-
### Improved
|
|
2416
|
-
- **VS Code extension** — "Re-Evaluate" is now a chat followup that streams updated findings into chat (previously showed only a toast). Context-aware followups for `/security` and workspace reviews. Post-fix followup after `/fix`.
|
|
2417
|
-
- **Auto-fix clarity** — each finding tagged with 🔧 (auto-fixable) or 📝 (manual review). Fixability summary in header. Dynamic button label ("Auto-Fix N of M Findings"). Button hidden when no findings are auto-fixable.
|
|
2418
|
-
|
|
2419
|
-
## [3.9.2] — 2026-03-01
|
|
2420
|
-
|
|
2421
|
-
### Fixed
|
|
2422
|
-
- **VS Code extension** — populated findings cache directly from chat review results; fixed Auto-Fix All and Re-Evaluate buttons not working after chat review.
|
|
2423
|
-
|
|
2424
|
-
## [3.9.1] — 2026-03-01
|
|
2425
|
-
|
|
2426
|
-
### Added
|
|
2427
|
-
- **Workspace-wide review** — `@judges /review` in Copilot Chat can now evaluate all supported files in the workspace with progress reporting.
|
|
2428
|
-
|
|
2429
|
-
### Fixed
|
|
2430
|
-
- **Tree-sitter AST** — made `tree-sitter-ast.ts` work in both ESM and CJS bundles.
|
|
2431
|
-
- Added missing `toolReferenceName` to `languageModelTools` manifest.
|
|
2432
|
-
|
|
2433
|
-
## [3.9.0] — 2026-03-01
|
|
2434
|
-
|
|
2435
|
-
### Added
|
|
2436
|
-
- **`@judges` chat participant** — type `@judges` in Copilot Chat to review, security-check, or auto-fix files. Slash commands: `/review`, `/security`, `/fix`, `/help`.
|
|
2437
|
-
- **`judges_evaluate` Language Model tool** — registered via `vscode.lm.registerTool` so Copilot auto-discovers and invokes Judges evaluation.
|
|
2438
|
-
- Disambiguation routing: Copilot auto-routes "judges panel review", "judges evaluation" queries.
|
|
2439
|
-
- Domain-focused reviews and action buttons in chat responses.
|
|
2440
|
-
|
|
2441
|
-
## [3.8.7] — 2026-03-01
|
|
2442
|
-
|
|
2443
|
-
### Fixed
|
|
2444
|
-
- Daily popular-repo autofix timeout and performance improvements.
|
|
2445
|
-
|
|
2446
|
-
## [3.8.6] — 2026-03-01
|
|
2447
|
-
|
|
2448
|
-
### Fixed
|
|
2449
|
-
- Added `onChatParticipant` activation event for `@judges` in VS Code extension.
|
|
2450
|
-
|
|
2451
|
-
## [3.8.5] — 2026-03-01
|
|
2452
|
-
|
|
2453
|
-
### Security
|
|
2454
|
-
- Replaced ReDoS-prone regex with `indexOf` in `project.ts` (CodeQL alert 35).
|
|
2455
|
-
|
|
2456
|
-
## [3.8.4] — 2026-03-01
|
|
2457
|
-
|
|
2458
|
-
### Security
|
|
2459
|
-
- Fixed 8 polynomial-ReDoS vulnerabilities flagged by CodeQL code scanning:
|
|
2460
|
-
- `structural-parser.ts`: PYTHON_CLASS regex — merged competing `\s*` quantifiers around optional base-list group.
|
|
2461
|
-
- `taint-tracker.ts`: GUARD_PATTERNS — eliminated `[ \t]*!?[ \t]*` overlap that caused polynomial backtracking.
|
|
2462
|
-
- `shared.ts`: health-check pattern — bounded `[^\n]*` to `{0,200}`; catch-block signal — replaced whole-file regex with line-by-line scan.
|
|
2463
|
-
- `dependencies.ts`: requirements.txt parser — replaced `[>=<~!]+` character class with explicit pip-operator alternation.
|
|
2464
|
-
- `project.ts`: import-path extractor — bounded `[^'"]` quantifier to `{1,500}`; normalise helper — replaced chained regex with `lastIndexOf` calls.
|
|
2465
|
-
- Dismissed 6 false-positive / intentional alerts:
|
|
2466
|
-
- 2 intentional vulnerabilities in `examples/sample-vulnerable-api.ts` (demo file).
|
|
2467
|
-
- 4 URL-substring-sanitization false positives in test assertions.
|
|
2468
|
-
|
|
2469
|
-
## [3.8.3] — 2026-03-01
|
|
2470
|
-
|
|
2471
|
-
### Changed
|
|
2472
|
-
- Extension README: rewrote to lead with auto-configured MCP, added Marketplace install instructions, added missing commands to table, updated Layer 2 section to emphasize it is enabled automatically.
|
|
2473
|
-
- Extension `package.json` description updated to mention auto-configured MCP.
|
|
2474
|
-
- Root README: rewrote “Connect to Your Editor” section — VS Code extension is now the recommended zero-config path; manual MCP configs updated to use `npx` instead of absolute paths; added Cursor and generic MCP client examples.
|
|
2475
|
-
|
|
2476
|
-
## [3.8.2] — 2026-03-01
|
|
2477
|
-
|
|
2478
|
-
### Fixed
|
|
2479
|
-
- Added `workflow_dispatch` trigger to publish workflow for manual re-runs.
|
|
2480
|
-
- Fixed tag-push not triggering CI when pushed alongside branch updates.
|
|
2481
|
-
|
|
2482
|
-
## [3.8.1] — 2026-03-01
|
|
2483
|
-
|
|
2484
|
-
### Fixed
|
|
2485
|
-
- Aligned VS Code engine constraint (`^1.109.0`) with `@types/vscode` to fix vsce publish validation.
|
|
2486
|
-
|
|
2487
|
-
## [3.8.0] — 2026-03-01
|
|
2488
|
-
|
|
2489
|
-
### Added
|
|
2490
|
-
- **MCP server auto-configuration** — VS Code extension now registers the Judges MCP server automatically via `McpServerDefinitionProvider`. Users install the extension and Layer 2 (35 expert-persona LLM prompts) is immediately available to Copilot — zero manual setup.
|
|
2491
|
-
- **`Judges: Configure MCP Server` command** — writes the MCP server definition to `.vscode/mcp.json` for users who prefer explicit workspace config.
|
|
2492
|
-
- Extension engine bumped to VS Code `^1.99.0` for MCP API support.
|
|
2493
|
-
|
|
2494
|
-
## [3.7.3] — 2026-03-01
|
|
2495
|
-
|
|
2496
|
-
### Fixed
|
|
2497
|
-
- Fixed CI workflow race condition: extension install failed because `@kevinrabun/judges@^3.7.2` wasn't propagated on npm yet.
|
|
2498
|
-
- Workflow now uses local tarball (`npm pack`) for the extension build instead of relying on npm registry propagation.
|
|
2499
|
-
- Removed dependency version sync from the extension publish step; `^3.7.1` semver range covers all 3.x patches.
|
|
2500
|
-
|
|
2501
|
-
## [3.7.2] — 2026-03-01
|
|
2502
|
-
|
|
2503
|
-
### Fixed
|
|
2504
|
-
- Resolved all 168 lint warnings across 45 source files (0 errors, 0 warnings).
|
|
2505
|
-
- Fixed unused `lang` parameter in 25 evaluators (`lang` → `_lang`).
|
|
2506
|
-
- Fixed last `ruleNum++` assignment (value never read) in 34 evaluators.
|
|
2507
|
-
- Removed unused imports from `data-security.ts`, `evaluators/index.ts`, `negative.test.ts`, `subsystems.test.ts`.
|
|
2508
|
-
- Prefixed unused variables with `_` in `ai-code-safety.ts`, `v2.ts`, `patches/index.ts`, `cross-file-taint.ts`, `structural-parser.ts`, `taint-tracker.ts`.
|
|
2509
|
-
- Fixed unnecessary escape characters in `structural-parser.ts`, `ai-code-safety.ts`, `documentation.ts`, `shared.ts`, `software-practices.ts`.
|
|
2510
|
-
- Removed dead `else { ruleNum++; }` branch in `ai-code-safety.ts`.
|
|
2511
|
-
- All 1039 tests passing (842 + 28 + 169).
|
|
2512
|
-
|
|
2513
|
-
---
|
|
2514
|
-
|
|
2515
|
-
## [3.7.1] — 2026-03-01
|
|
2516
|
-
|
|
2517
|
-
### Fixed
|
|
2518
|
-
- Added root `LICENSE` file (MIT) — was referenced in `package.json` `files` but missing from tarball.
|
|
2519
|
-
- Added `CHANGELOG.md` to npm `files` array so it ships in the published package.
|
|
2520
|
-
- Fixed CHANGELOG date and test count accuracy.
|
|
2521
|
-
- VS Code extension: switched to `bundler` module resolution, fixed ESM/CJS import errors.
|
|
2522
|
-
- VS Code extension: added `.vscodeignore` tuning, `galleryBanner` metadata, esbuild bundling.
|
|
2523
|
-
|
|
2524
|
-
---
|
|
2525
|
-
|
|
2526
|
-
## [3.7.0] — 2026-03-01
|
|
2527
|
-
|
|
2528
|
-
### Added
|
|
2529
|
-
- **`judges --version` command** — display installed version with update check.
|
|
2530
|
-
- **`--fix` flag on eval** — evaluate and auto-fix in one step: `judges eval --fix src/app.ts`.
|
|
2531
|
-
- **Glob / multi-file eval** — evaluate directories and patterns: `judges eval src/**/*.ts`.
|
|
2532
|
-
- **Progress indicators** — `[1/12] src/app.ts…` progress during multi-file evaluation.
|
|
2533
|
-
- **VS Code extension** — diagnostics, code actions, and quick-fix integration (`vscode-extension/`).
|
|
2534
|
-
- **README terminal mockup** — SVG-based visual showing evaluation output.
|
|
2535
|
-
- **`.judgesrc.example.json`** — annotated example configuration file.
|
|
2536
|
-
- **GitHub Marketplace metadata** — enhanced `action.yml` for Marketplace discovery.
|
|
2537
|
-
|
|
2538
|
-
### Changed
|
|
2539
|
-
- `server.json` version synced to `3.7.0`.
|
|
2540
|
-
- README test badge updated to **842**.
|
|
2541
|
-
- Total test count: **842**.
|
|
2542
|
-
|
|
2543
|
-
---
|
|
2544
|
-
|
|
2545
|
-
## [3.6.0] — 2026-03-07
|
|
2546
|
-
|
|
2547
|
-
### Added
|
|
2548
|
-
- **Plugin system** (`--plugin`) — load custom evaluator plugins from npm packages or local files.
|
|
2549
|
-
- **Finding fingerprints** — stable content-hash IDs for tracking findings across runs.
|
|
2550
|
-
- **Calibration mode** (`judges calibrate`) — tune judge thresholds against known-good codebases.
|
|
2551
|
-
- **Diagnostics format** (`--format diagnostics`) — LSP-compatible diagnostic output for editor integration.
|
|
2552
|
-
- **Comparison command** (`judges compare`) — side-by-side feature matrix vs ESLint, SonarQube, Semgrep, CodeQL.
|
|
2553
|
-
- **Language packs** (`judges pack`) — manage language-specific rule extensions.
|
|
2554
|
-
- **Config sharing** (`judges config export/import`) — export and import team configurations.
|
|
2555
|
-
- **Custom rules** (`judges rule create`) — define and manage custom evaluation rules.
|
|
2556
|
-
- **Fix history** — track applied patches with undo support.
|
|
2557
|
-
- **Smart output** — auto-detect terminal width and format output accordingly.
|
|
2558
|
-
- **Feedback command** (`judges feedback`) — submit false-positive feedback for rule tuning.
|
|
2559
|
-
- **Benchmark command** (`judges benchmark`) — run detection accuracy benchmarks against test suites.
|
|
2560
|
-
- **14 new subsystem tests** for plugins, fingerprinting, calibration, and diagnostics.
|
|
2561
|
-
|
|
2562
|
-
### Changed
|
|
2563
|
-
- CLI expanded from 14 to 22 commands.
|
|
2564
|
-
- Output formats expanded from 7 to 8 (added `diagnostics`).
|
|
2565
|
-
- Total test count: **819** (up from 754).
|
|
2566
|
-
|
|
2567
|
-
---
|
|
2568
|
-
|
|
2569
|
-
### Added
|
|
2570
|
-
- **`judges diff` command** — evaluate only changed lines from unified diff / git diff output. Pipe `git diff` directly or pass a patch file.
|
|
2571
|
-
- **`judges deps` command** — analyze project dependencies for supply-chain risks across 11 manifest types (package.json, requirements.txt, Cargo.toml, go.mod, pom.xml, etc.).
|
|
2572
|
-
- **`judges baseline create` command** — create a baseline JSON file from current findings for future suppression.
|
|
2573
|
-
- **`judges completions` command** — generate shell completion scripts for bash, zsh, fish, and PowerShell.
|
|
2574
|
-
- **`judges docs` command** — generate per-judge rule documentation in Markdown format, with `--output` for file output.
|
|
2575
|
-
- **JUnit XML formatter** (`--format junit`) — CI/CD compatible output for Jenkins, Azure DevOps, GitHub Actions, GitLab CI.
|
|
2576
|
-
- **CodeClimate JSON formatter** (`--format codeclimate`) — GitLab Code Quality widget compatible output with MD5 fingerprints.
|
|
2577
|
-
- **Named presets** (`--preset`) — 6 built-in profiles: `strict`, `lenient`, `security-only`, `startup`, `compliance`, `performance`.
|
|
2578
|
-
- **Config file support** (`--config`) — auto-discovers `.judgesrc` / `.judgesrc.json` in project root with full JSON Schema validation support.
|
|
2579
|
-
- **`judgesrc.schema.json`** — JSON Schema for `.judgesrc` files with IDE autocomplete and validation.
|
|
2580
|
-
- **`--min-score` flag** — exit non-zero when overall score falls below threshold (e.g. `--min-score 80`).
|
|
2581
|
-
- **`--verbose` flag** — timing statistics and file-level detail in output.
|
|
2582
|
-
- **`--quiet` flag** — suppress informational output, only show findings.
|
|
2583
|
-
- **`--no-color` flag** — disable ANSI color codes for piped output.
|
|
2584
|
-
- **CI Templates** — `judges ci-templates github` generates GitHub Actions workflow YAML.
|
|
2585
|
-
- **24 new tests** covering all new formatters, commands, presets, and JSON Schema validation.
|
|
2586
|
-
|
|
2587
|
-
### Changed
|
|
2588
|
-
- CLI expanded from 8 to 14 commands.
|
|
2589
|
-
- Output formats expanded from 5 to 7 (added `junit`, `codeclimate`).
|
|
2590
|
-
- Total test count: **754** (up from 730).
|
|
2591
|
-
|
|
2592
|
-
---
|
|
2593
|
-
|
|
2594
|
-
## [3.4.0] — 2026-03-04
|
|
2595
|
-
|
|
2596
|
-
### Added
|
|
2597
|
-
- **Init wizard** (`judges init`) — interactive project setup generating `.judgesrc` config.
|
|
2598
|
-
- **Fix command** (`judges fix`) — auto-apply suggested patches from findings with `--apply` flag.
|
|
2599
|
-
- **Watch mode** (`judges watch`) — file-system watcher for continuous evaluation during development.
|
|
2600
|
-
- **Report command** (`judges report`) — full project analysis with HTML/JSON/Markdown output.
|
|
2601
|
-
- **Hook command** (`judges hook`) — git pre-commit hook installation.
|
|
2602
|
-
- **HTML formatter** — interactive browser-based report with severity filters and per-judge sections.
|
|
2603
|
-
- **Baseline suppression** — suppress known findings from previous runs.
|
|
2604
|
-
- **CI template generator** — `judges ci-templates` for GitLab CI, Azure Pipelines, Bitbucket Pipelines.
|
|
2605
|
-
|
|
2606
|
-
### Changed
|
|
2607
|
-
- Total test count: **730**.
|
|
2608
|
-
|
|
2609
|
-
---
|
|
2610
|
-
|
|
2611
|
-
## [3.3.0] — 2026-03-02
|
|
2612
|
-
|
|
2613
|
-
### Changed
|
|
2614
|
-
- **Unified tree-sitter AST** — consolidated `typescript-ast.ts` into `tree-sitter-ast.ts`, single parser for all 8 languages.
|
|
2615
|
-
- Removed legacy TypeScript Compiler API dependency.
|
|
2616
|
-
|
|
2617
|
-
---
|
|
2618
|
-
|
|
2619
|
-
## [3.2.0] — 2026-02-29
|
|
2620
|
-
|
|
2621
|
-
### Added
|
|
2622
|
-
- **Tree-sitter WASM integration** — structural AST analysis for 8 languages (TypeScript, JavaScript, Python, Go, Rust, Java, C#, C++).
|
|
2623
|
-
- Language-specific structural patterns for each grammar.
|
|
2624
|
-
|
|
2625
|
-
---
|
|
2626
|
-
|
|
2627
|
-
## [3.1.1] — 2026-02-28
|
|
2628
|
-
|
|
2629
|
-
### Added
|
|
2630
|
-
- **GitHub Action** (`action.yml`) — composite action for CI/CD with SARIF upload, fail-on-findings, and job summary.
|
|
2631
|
-
- **Dockerfile** — multi-stage Node 20 Alpine build with non-root user for containerized usage.
|
|
2632
|
-
- **GitHub Pages dashboard** (`docs/index.html`) — dark-themed dashboard showing project analysis results and judge directory.
|
|
2633
|
-
- **Real-world evidence document** (`docs/real-world-evidence.md`) — Express.js, Flask, FastAPI analysis + before/after showcase.
|
|
2634
|
-
- **Pages deployment workflow** (`.github/workflows/pages.yml`).
|
|
2635
|
-
|
|
2636
|
-
---
|
|
2637
|
-
|
|
2638
|
-
## [3.1.0] — 2026-02-28
|
|
2639
|
-
|
|
2640
|
-
### Added
|
|
2641
|
-
- **CLI evaluation mode** — `npx @kevinrabun/judges eval --file app.ts` runs the full tribunal from the command line, no MCP setup required. Supports `--language`, `--format`, `--judge`, and stdin piping.
|
|
2642
|
-
- **Enhanced Python AST** — class-aware method extraction (`ClassName.method_name`), decorator detection, async function detection, self/cls parameter filtering, multi-line import handling.
|
|
2643
|
-
- **Framework-aware analysis** — detects 14 frameworks (Express, React, Django, Flask, Spring, FastAPI, etc.) and reduces confidence on framework-idiomatic findings to cut false positives.
|
|
2644
|
-
- **Content-hash LRU caching** — caches AST structure, taint flow, and tribunal results by content hash for faster re-evaluation of unchanged files.
|
|
2645
|
-
- **SARIF 2.1.0 structural validator** — `validateSarifLog()` checks all mandatory SARIF properties before output.
|
|
2646
|
-
- **Multi-line auto-fix patches** — 5 structural patch rules for Express helmet, CORS, rate limiting, error handlers, and health endpoints.
|
|
2647
|
-
- **Confidence-weighted scoring** — findings now carry estimated confidence; low-confidence findings have reduced score impact.
|
|
2648
|
-
- **Finding provenance** — every finding includes `provenance` field with rule ID and evidence trail for auditability.
|
|
2649
|
-
- **Absence-based finding demotion** — findings flagging *missing* patterns are demoted from critical/high to medium to reduce false positives.
|
|
2650
|
-
- **28 negative tests** for false positive prevention.
|
|
2651
|
-
- **169 subsystem unit tests** (scoring, dedup, config, patches, suppression, SARIF, Python parser).
|
|
2652
|
-
- **Quickstart example** (`examples/quickstart.ts`) using the package API.
|
|
2653
|
-
- **CHANGELOG.md** with full version history.
|
|
2654
|
-
|
|
2655
|
-
### Fixed
|
|
2656
|
-
- `server.json` version now stays in sync with `package.json`.
|
|
2657
|
-
- MCP server version string updated from `2.0.0` to `3.1.0`.
|
|
2658
|
-
- Demo example includes guidance for both in-repo and package-installed usage.
|
|
2659
|
-
|
|
2660
|
-
### Changed
|
|
2661
|
-
- Total test count: **899** (702 integration + 28 negative + 169 subsystem).
|
|
2662
|
-
- Python structural parser fully rewritten with two-pass class boundary detection.
|
|
2663
|
-
- Class name extraction added for all supported languages (Python, Java, C#, Rust, Go).
|
|
2664
|
-
|
|
2665
|
-
---
|
|
2666
|
-
|
|
2667
|
-
## [3.0.3] — 2026-02-27
|
|
2668
|
-
|
|
2669
|
-
### Fixed
|
|
2670
|
-
- Resolved all 14 CodeQL ReDoS alerts via atomic character classes and possessive-style patterns.
|
|
2671
|
-
- Suppressed 4 intentional vulnerability alerts in `examples/sample-vulnerable-api.ts` (test fixture).
|
|
2672
|
-
- Resolved Dependabot `hono` IP spoofing alert via `overrides`.
|
|
2673
|
-
- GitHub Releases now auto-created on tag push (`publish-mcp.yml`).
|
|
2674
|
-
|
|
2675
|
-
---
|
|
2676
|
-
|
|
2677
|
-
## [3.0.2] — 2026-02-26
|
|
2678
|
-
|
|
2679
|
-
### Fixed
|
|
2680
|
-
- Publish workflow repaired (npm provenance, correct trigger).
|
|
2681
|
-
- Removed dead code from build artifacts.
|
|
2682
|
-
|
|
2683
|
-
---
|
|
2684
|
-
|
|
2685
|
-
## [3.0.1] — 2026-02-26
|
|
2686
|
-
|
|
2687
|
-
### Fixed
|
|
2688
|
-
- Dropped Node 18 from CI matrix (ESLint 10 requires Node >= 20).
|
|
2689
|
-
- Added adversarial mandate to code-structure and framework-safety judges.
|
|
2690
|
-
- Fixed `FW-` rule prefix in README documentation.
|
|
2691
|
-
|
|
2692
|
-
---
|
|
2693
|
-
|
|
2694
|
-
## [3.0.0] — 2026-02-25
|
|
2695
|
-
|
|
2696
|
-
### Added
|
|
2697
|
-
- **Monolith decomposition**: 35 specialized judges split from single evaluator file.
|
|
2698
|
-
- **Built-in AST analysis** via TypeScript Compiler API — no separate parser needed.
|
|
2699
|
-
- **App Builder Workflow** (3-step): release decision, plain-language risk summaries, prioritized remediation tasks.
|
|
2700
|
-
- **V2 context-aware evaluation** with policy profiles, evidence calibration, specialty feedback, confidence scoring.
|
|
2701
|
-
- **Public repository URL reporting** — clone any public repo and generate a full tribunal report.
|
|
2702
|
-
- **Project-level analysis** with cross-file architectural detection (duplication, dependency cycles, god modules).
|
|
2703
|
-
- **Diff evaluation** — analyze only changed lines for PR reviews.
|
|
2704
|
-
- **Dependency analysis** — supply-chain manifest scanning.
|
|
2705
|
-
- **SARIF output** for GitHub Code Scanning integration.
|
|
2706
|
-
- **Inline suppression** via `judges-disable` comments.
|
|
2707
|
-
- CI/CD infrastructure with GitHub Actions (CI, publish, PR review, daily automation).
|
|
2708
|
-
|
|
2709
|
-
---
|
|
2710
|
-
|
|
2711
|
-
## [2.3.0] — 2026-02-24
|
|
2712
|
-
|
|
2713
|
-
### Added
|
|
2714
|
-
- AI Code Safety judge with 12 AICS rules.
|
|
2715
|
-
- Full `suggestedFix` and `confidence` coverage across all 427 findings.
|
|
2716
|
-
- Multi-language detection via language pattern system.
|
|
2717
|
-
|
|
2718
|
-
---
|
|
2719
|
-
|
|
2720
|
-
[3.11.4]: https://github.com/KevinRabun/judges/compare/v3.11.3...v3.11.4
|
|
2721
|
-
[3.11.3]: https://github.com/KevinRabun/judges/compare/v3.11.2...v3.11.3
|
|
2722
|
-
[3.11.2]: https://github.com/KevinRabun/judges/compare/v3.11.1...v3.11.2
|
|
2723
|
-
[3.11.1]: https://github.com/KevinRabun/judges/compare/v3.11.0...v3.11.1
|
|
2724
|
-
[3.11.0]: https://github.com/KevinRabun/judges/compare/v3.10.1...v3.11.0
|
|
2725
|
-
[3.10.1]: https://github.com/KevinRabun/judges/compare/v3.10.0...v3.10.1
|
|
2726
|
-
[3.10.0]: https://github.com/KevinRabun/judges/compare/v3.9.3...v3.10.0
|
|
2727
|
-
[3.9.3]: https://github.com/KevinRabun/judges/compare/v3.9.2...v3.9.3
|
|
2728
|
-
[3.9.2]: https://github.com/KevinRabun/judges/compare/v3.9.1...v3.9.2
|
|
2729
|
-
[3.9.1]: https://github.com/KevinRabun/judges/compare/v3.9.0...v3.9.1
|
|
2730
|
-
[3.9.0]: https://github.com/KevinRabun/judges/compare/v3.8.7...v3.9.0
|
|
2731
|
-
[3.8.7]: https://github.com/KevinRabun/judges/compare/v3.8.6...v3.8.7
|
|
2732
|
-
[3.8.6]: https://github.com/KevinRabun/judges/compare/v3.8.5...v3.8.6
|
|
2733
|
-
[3.8.5]: https://github.com/KevinRabun/judges/compare/v3.8.4...v3.8.5
|
|
2734
|
-
[3.8.4]: https://github.com/KevinRabun/judges/compare/v3.8.3...v3.8.4
|
|
2735
|
-
[3.8.3]: https://github.com/KevinRabun/judges/compare/v3.8.2...v3.8.3
|
|
2736
|
-
[3.8.2]: https://github.com/KevinRabun/judges/compare/v3.8.1...v3.8.2
|
|
2737
|
-
[3.8.1]: https://github.com/KevinRabun/judges/compare/v3.8.0...v3.8.1
|
|
2738
|
-
[3.8.0]: https://github.com/KevinRabun/judges/compare/v3.7.3...v3.8.0
|
|
2739
|
-
[3.7.3]: https://github.com/KevinRabun/judges/compare/v3.7.2...v3.7.3
|
|
2740
|
-
[3.7.2]: https://github.com/KevinRabun/judges/compare/v3.7.1...v3.7.2
|
|
2741
|
-
[3.7.1]: https://github.com/KevinRabun/judges/compare/v3.7.0...v3.7.1
|
|
2742
|
-
[3.7.0]: https://github.com/KevinRabun/judges/compare/v3.6.0...v3.7.0
|
|
2743
|
-
[3.6.0]: https://github.com/KevinRabun/judges/compare/v3.5.0...v3.6.0
|
|
2744
|
-
[3.5.0]: https://github.com/KevinRabun/judges/compare/v3.4.0...v3.5.0
|
|
2745
|
-
[3.4.0]: https://github.com/KevinRabun/judges/compare/v3.3.0...v3.4.0
|
|
2746
|
-
[3.3.0]: https://github.com/KevinRabun/judges/compare/v3.2.0...v3.3.0
|
|
2747
|
-
[3.2.0]: https://github.com/KevinRabun/judges/compare/v3.1.1...v3.2.0
|
|
2748
|
-
[3.1.1]: https://github.com/KevinRabun/judges/compare/v3.1.0...v3.1.1
|
|
2749
|
-
[3.1.0]: https://github.com/KevinRabun/judges/compare/v3.0.3...v3.1.0
|
|
2750
|
-
[3.0.3]: https://github.com/KevinRabun/judges/compare/v3.0.2...v3.0.3
|
|
2751
|
-
[3.0.2]: https://github.com/KevinRabun/judges/compare/v3.0.1...v3.0.2
|
|
2752
|
-
[3.0.1]: https://github.com/KevinRabun/judges/compare/v3.0.0...v3.0.1
|
|
2753
|
-
[3.0.0]: https://github.com/KevinRabun/judges/compare/v2.3.0...v3.0.0
|
|
2754
|
-
[2.3.0]: https://github.com/KevinRabun/judges/releases/tag/v2.3.0
|