@vyuhlabs/dxkit 2.4.6 → 2.4.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1076 -0
- package/README.md +132 -27
- package/dist/analysis-result.d.ts +112 -0
- package/dist/analysis-result.d.ts.map +1 -0
- package/dist/analysis-result.js +52 -0
- package/dist/analysis-result.js.map +1 -0
- package/dist/analyzers/bom/detailed.d.ts.map +1 -1
- package/dist/analyzers/bom/detailed.js +19 -0
- package/dist/analyzers/bom/detailed.js.map +1 -1
- package/dist/analyzers/bom/gather.d.ts +27 -26
- package/dist/analyzers/bom/gather.d.ts.map +1 -1
- package/dist/analyzers/bom/gather.js +26 -87
- package/dist/analyzers/bom/gather.js.map +1 -1
- package/dist/analyzers/bom/index.d.ts +0 -7
- package/dist/analyzers/bom/index.d.ts.map +1 -1
- package/dist/analyzers/bom/index.js +98 -48
- package/dist/analyzers/bom/index.js.map +1 -1
- package/dist/analyzers/bom/types.d.ts +11 -13
- package/dist/analyzers/bom/types.d.ts.map +1 -1
- package/dist/analyzers/cache.d.ts +95 -0
- package/dist/analyzers/cache.d.ts.map +1 -0
- package/dist/analyzers/cache.js +309 -0
- package/dist/analyzers/cache.js.map +1 -0
- package/dist/analyzers/coverage-runner.d.ts +56 -0
- package/dist/analyzers/coverage-runner.d.ts.map +1 -0
- package/dist/analyzers/coverage-runner.js +72 -0
- package/dist/analyzers/coverage-runner.js.map +1 -0
- package/dist/analyzers/dashboard/index.d.ts +24 -0
- package/dist/analyzers/dashboard/index.d.ts.map +1 -0
- package/dist/analyzers/dashboard/index.js +667 -0
- package/dist/analyzers/dashboard/index.js.map +1 -0
- package/dist/analyzers/developer/gather.d.ts.map +1 -1
- package/dist/analyzers/developer/gather.js +205 -37
- package/dist/analyzers/developer/gather.js.map +1 -1
- package/dist/analyzers/developer/index.d.ts +1 -1
- package/dist/analyzers/developer/index.d.ts.map +1 -1
- package/dist/analyzers/developer/index.js +21 -9
- package/dist/analyzers/developer/index.js.map +1 -1
- package/dist/analyzers/dispatcher.d.ts +52 -0
- package/dist/analyzers/dispatcher.d.ts.map +1 -1
- package/dist/analyzers/dispatcher.js +92 -9
- package/dist/analyzers/dispatcher.js.map +1 -1
- package/dist/analyzers/docs/shallow.d.ts +17 -5
- package/dist/analyzers/docs/shallow.d.ts.map +1 -1
- package/dist/analyzers/docs/shallow.js +65 -2
- package/dist/analyzers/docs/shallow.js.map +1 -1
- package/dist/analyzers/dx/shallow.d.ts +17 -5
- package/dist/analyzers/dx/shallow.d.ts.map +1 -1
- package/dist/analyzers/dx/shallow.js +66 -2
- package/dist/analyzers/dx/shallow.js.map +1 -1
- package/dist/analyzers/health/actions.d.ts +1 -1
- package/dist/analyzers/health/actions.d.ts.map +1 -1
- package/dist/analyzers/health/actions.js +27 -9
- package/dist/analyzers/health/actions.js.map +1 -1
- package/dist/analyzers/health/detailed.d.ts +2 -1
- package/dist/analyzers/health/detailed.d.ts.map +1 -1
- package/dist/analyzers/health/detailed.js +11 -7
- package/dist/analyzers/health/detailed.js.map +1 -1
- package/dist/analyzers/health.d.ts +27 -0
- package/dist/analyzers/health.d.ts.map +1 -1
- package/dist/analyzers/health.js +282 -34
- package/dist/analyzers/health.js.map +1 -1
- package/dist/analyzers/licenses/gather.d.ts +35 -8
- package/dist/analyzers/licenses/gather.d.ts.map +1 -1
- package/dist/analyzers/licenses/gather.js +86 -13
- package/dist/analyzers/licenses/gather.js.map +1 -1
- package/dist/analyzers/licenses/index.d.ts +1 -1
- package/dist/analyzers/licenses/index.d.ts.map +1 -1
- package/dist/analyzers/licenses/index.js +52 -11
- package/dist/analyzers/licenses/index.js.map +1 -1
- package/dist/analyzers/licenses/types.d.ts +15 -0
- package/dist/analyzers/licenses/types.d.ts.map +1 -1
- package/dist/analyzers/maintainability/shallow.d.ts +17 -5
- package/dist/analyzers/maintainability/shallow.d.ts.map +1 -1
- package/dist/analyzers/maintainability/shallow.js +80 -2
- package/dist/analyzers/maintainability/shallow.js.map +1 -1
- package/dist/analyzers/quality/detailed.d.ts.map +1 -1
- package/dist/analyzers/quality/detailed.js +4 -6
- package/dist/analyzers/quality/detailed.js.map +1 -1
- package/dist/analyzers/quality/gather.d.ts +1 -14
- package/dist/analyzers/quality/gather.d.ts.map +1 -1
- package/dist/analyzers/quality/gather.js +48 -137
- package/dist/analyzers/quality/gather.js.map +1 -1
- package/dist/analyzers/quality/index.d.ts +9 -2
- package/dist/analyzers/quality/index.d.ts.map +1 -1
- package/dist/analyzers/quality/index.js +197 -117
- package/dist/analyzers/quality/index.js.map +1 -1
- package/dist/analyzers/quality/shallow.d.ts +50 -5
- package/dist/analyzers/quality/shallow.d.ts.map +1 -1
- package/dist/analyzers/quality/shallow.js +155 -2
- package/dist/analyzers/quality/shallow.js.map +1 -1
- package/dist/analyzers/quality/types.d.ts +14 -0
- package/dist/analyzers/quality/types.d.ts.map +1 -1
- package/dist/analyzers/security/actions.d.ts +11 -4
- package/dist/analyzers/security/actions.d.ts.map +1 -1
- package/dist/analyzers/security/actions.js +87 -37
- package/dist/analyzers/security/actions.js.map +1 -1
- package/dist/analyzers/security/aggregator.d.ts +236 -0
- package/dist/analyzers/security/aggregator.d.ts.map +1 -0
- package/dist/analyzers/security/aggregator.js +349 -0
- package/dist/analyzers/security/aggregator.js.map +1 -0
- package/dist/analyzers/security/detailed.d.ts +2 -2
- package/dist/analyzers/security/detailed.d.ts.map +1 -1
- package/dist/analyzers/security/detailed.js +10 -9
- package/dist/analyzers/security/detailed.js.map +1 -1
- package/dist/analyzers/security/gather.d.ts +104 -1
- package/dist/analyzers/security/gather.d.ts.map +1 -1
- package/dist/analyzers/security/gather.js +299 -9
- package/dist/analyzers/security/gather.js.map +1 -1
- package/dist/analyzers/security/index.d.ts +15 -0
- package/dist/analyzers/security/index.d.ts.map +1 -1
- package/dist/analyzers/security/index.js +463 -50
- package/dist/analyzers/security/index.js.map +1 -1
- package/dist/analyzers/security/shallow.d.ts +50 -6
- package/dist/analyzers/security/shallow.d.ts.map +1 -1
- package/dist/analyzers/security/shallow.js +154 -2
- package/dist/analyzers/security/shallow.js.map +1 -1
- package/dist/analyzers/security/types.d.ts +51 -0
- package/dist/analyzers/security/types.d.ts.map +1 -1
- package/dist/analyzers/tests/detailed.d.ts.map +1 -1
- package/dist/analyzers/tests/detailed.js +2 -3
- package/dist/analyzers/tests/detailed.js.map +1 -1
- package/dist/analyzers/tests/gather.d.ts +2 -1
- package/dist/analyzers/tests/gather.d.ts.map +1 -1
- package/dist/analyzers/tests/gather.js +98 -69
- package/dist/analyzers/tests/gather.js.map +1 -1
- package/dist/analyzers/tests/index.d.ts +11 -2
- package/dist/analyzers/tests/index.d.ts.map +1 -1
- package/dist/analyzers/tests/index.js +83 -18
- package/dist/analyzers/tests/index.js.map +1 -1
- package/dist/analyzers/tests/shallow.d.ts +19 -5
- package/dist/analyzers/tests/shallow.d.ts.map +1 -1
- package/dist/analyzers/tests/shallow.js +89 -2
- package/dist/analyzers/tests/shallow.js.map +1 -1
- package/dist/analyzers/tests/types.d.ts +41 -1
- package/dist/analyzers/tests/types.d.ts.map +1 -1
- package/dist/analyzers/tools/autogen-header.d.ts +8 -0
- package/dist/analyzers/tools/autogen-header.d.ts.map +1 -0
- package/dist/analyzers/tools/autogen-header.js +107 -0
- package/dist/analyzers/tools/autogen-header.js.map +1 -0
- package/dist/analyzers/tools/cloc.d.ts.map +1 -1
- package/dist/analyzers/tools/cloc.js +36 -5
- package/dist/analyzers/tools/cloc.js.map +1 -1
- package/dist/analyzers/tools/deadline.d.ts +67 -0
- package/dist/analyzers/tools/deadline.d.ts.map +1 -0
- package/dist/analyzers/tools/deadline.js +81 -0
- package/dist/analyzers/tools/deadline.js.map +1 -0
- package/dist/analyzers/tools/debug-statements.d.ts +17 -0
- package/dist/analyzers/tools/debug-statements.d.ts.map +1 -0
- package/dist/analyzers/tools/debug-statements.js +58 -0
- package/dist/analyzers/tools/debug-statements.js.map +1 -0
- package/dist/analyzers/tools/default-exclusions.gitignore +28 -0
- package/dist/analyzers/tools/exclusions.d.ts +33 -6
- package/dist/analyzers/tools/exclusions.d.ts.map +1 -1
- package/dist/analyzers/tools/exclusions.js +95 -26
- package/dist/analyzers/tools/exclusions.js.map +1 -1
- package/dist/analyzers/tools/generic.d.ts +17 -2
- package/dist/analyzers/tools/generic.d.ts.map +1 -1
- package/dist/analyzers/tools/generic.js +206 -109
- package/dist/analyzers/tools/generic.js.map +1 -1
- package/dist/analyzers/tools/gitleaks.d.ts.map +1 -1
- package/dist/analyzers/tools/gitleaks.js +48 -1
- package/dist/analyzers/tools/gitleaks.js.map +1 -1
- package/dist/analyzers/tools/graphify.d.ts +30 -2
- package/dist/analyzers/tools/graphify.d.ts.map +1 -1
- package/dist/analyzers/tools/graphify.js +131 -15
- package/dist/analyzers/tools/graphify.js.map +1 -1
- package/dist/analyzers/tools/jscpd.d.ts +12 -2
- package/dist/analyzers/tools/jscpd.d.ts.map +1 -1
- package/dist/analyzers/tools/jscpd.js +129 -6
- package/dist/analyzers/tools/jscpd.js.map +1 -1
- package/dist/analyzers/tools/lint-label.d.ts +29 -0
- package/dist/analyzers/tools/lint-label.d.ts.map +1 -0
- package/dist/analyzers/tools/lint-label.js +23 -0
- package/dist/analyzers/tools/lint-label.js.map +1 -0
- package/dist/analyzers/tools/minified-detection.d.ts +9 -0
- package/dist/analyzers/tools/minified-detection.d.ts.map +1 -0
- package/dist/analyzers/tools/minified-detection.js +147 -0
- package/dist/analyzers/tools/minified-detection.js.map +1 -0
- package/dist/analyzers/tools/nuget-package-reference.d.ts +133 -0
- package/dist/analyzers/tools/nuget-package-reference.d.ts.map +1 -0
- package/dist/analyzers/tools/nuget-package-reference.js +177 -0
- package/dist/analyzers/tools/nuget-package-reference.js.map +1 -0
- package/dist/analyzers/tools/osv-scanner-deps.d.ts +3 -2
- package/dist/analyzers/tools/osv-scanner-deps.d.ts.map +1 -1
- package/dist/analyzers/tools/osv-scanner-deps.js +32 -14
- package/dist/analyzers/tools/osv-scanner-deps.js.map +1 -1
- package/dist/analyzers/tools/osv.d.ts +36 -0
- package/dist/analyzers/tools/osv.d.ts.map +1 -1
- package/dist/analyzers/tools/osv.js +26 -0
- package/dist/analyzers/tools/osv.js.map +1 -1
- package/dist/analyzers/tools/parallel.d.ts +1 -1
- package/dist/analyzers/tools/parallel.d.ts.map +1 -1
- package/dist/analyzers/tools/parallel.js +2 -2
- package/dist/analyzers/tools/parallel.js.map +1 -1
- package/dist/analyzers/tools/report-date.d.ts +17 -0
- package/dist/analyzers/tools/report-date.d.ts.map +1 -0
- package/dist/analyzers/tools/report-date.js +26 -0
- package/dist/analyzers/tools/report-date.js.map +1 -0
- package/dist/analyzers/tools/risk-score.d.ts +7 -0
- package/dist/analyzers/tools/risk-score.d.ts.map +1 -1
- package/dist/analyzers/tools/risk-score.js +9 -2
- package/dist/analyzers/tools/risk-score.js.map +1 -1
- package/dist/analyzers/tools/run-tests-helper.d.ts +43 -0
- package/dist/analyzers/tools/run-tests-helper.d.ts.map +1 -0
- package/dist/analyzers/tools/run-tests-helper.js +156 -0
- package/dist/analyzers/tools/run-tests-helper.js.map +1 -0
- package/dist/analyzers/tools/runner.d.ts.map +1 -1
- package/dist/analyzers/tools/runner.js +75 -12
- package/dist/analyzers/tools/runner.js.map +1 -1
- package/dist/analyzers/tools/semgrep.d.ts +39 -2
- package/dist/analyzers/tools/semgrep.d.ts.map +1 -1
- package/dist/analyzers/tools/semgrep.js +131 -9
- package/dist/analyzers/tools/semgrep.js.map +1 -1
- package/dist/analyzers/tools/timing.d.ts +17 -3
- package/dist/analyzers/tools/timing.d.ts.map +1 -1
- package/dist/analyzers/tools/timing.js +36 -14
- package/dist/analyzers/tools/timing.js.map +1 -1
- package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
- package/dist/analyzers/tools/tool-registry.js +11 -1
- package/dist/analyzers/tools/tool-registry.js.map +1 -1
- package/dist/analyzers/tools/tools-unavailable-prose.d.ts +18 -0
- package/dist/analyzers/tools/tools-unavailable-prose.d.ts.map +1 -0
- package/dist/analyzers/tools/tools-unavailable-prose.js +69 -0
- package/dist/analyzers/tools/tools-unavailable-prose.js.map +1 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.d.ts.map +1 -1
- package/dist/analyzers/tools/upgrade-plan-resolver.js +7 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.js.map +1 -1
- package/dist/analyzers/tools/vendored-advisor.d.ts +43 -0
- package/dist/analyzers/tools/vendored-advisor.d.ts.map +1 -0
- package/dist/analyzers/tools/vendored-advisor.js +107 -0
- package/dist/analyzers/tools/vendored-advisor.js.map +1 -0
- package/dist/analyzers/tools/walk-paths.d.ts +78 -0
- package/dist/analyzers/tools/walk-paths.d.ts.map +1 -0
- package/dist/analyzers/tools/walk-paths.js +150 -0
- package/dist/analyzers/tools/walk-paths.js.map +1 -0
- package/dist/analyzers/tools/walk-source-files.d.ts +70 -0
- package/dist/analyzers/tools/walk-source-files.d.ts.map +1 -0
- package/dist/analyzers/tools/walk-source-files.js +369 -0
- package/dist/analyzers/tools/walk-source-files.js.map +1 -0
- package/dist/analyzers/types.d.ts +204 -4
- package/dist/analyzers/types.d.ts.map +1 -1
- package/dist/analyzers/xlsx/bom.d.ts.map +1 -1
- package/dist/analyzers/xlsx/bom.js +8 -1
- package/dist/analyzers/xlsx/bom.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +581 -189
- package/dist/cli.js.map +1 -1
- package/dist/detect.d.ts.map +1 -1
- package/dist/detect.js +24 -7
- package/dist/detect.js.map +1 -1
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +103 -53
- package/dist/doctor.js.map +1 -1
- package/dist/languages/capabilities/provider.d.ts +130 -1
- package/dist/languages/capabilities/provider.d.ts.map +1 -1
- package/dist/languages/capabilities/types.d.ts +68 -7
- package/dist/languages/capabilities/types.d.ts.map +1 -1
- package/dist/languages/csharp.d.ts +15 -1
- package/dist/languages/csharp.d.ts.map +1 -1
- package/dist/languages/csharp.js +624 -146
- package/dist/languages/csharp.js.map +1 -1
- package/dist/languages/go.d.ts.map +1 -1
- package/dist/languages/go.js +89 -11
- package/dist/languages/go.js.map +1 -1
- package/dist/languages/index.d.ts +132 -2
- package/dist/languages/index.d.ts.map +1 -1
- package/dist/languages/index.js +207 -0
- package/dist/languages/index.js.map +1 -1
- package/dist/languages/java.d.ts.map +1 -1
- package/dist/languages/java.js +113 -26
- package/dist/languages/java.js.map +1 -1
- package/dist/languages/kotlin.d.ts.map +1 -1
- package/dist/languages/kotlin.js +132 -26
- package/dist/languages/kotlin.js.map +1 -1
- package/dist/languages/python.d.ts.map +1 -1
- package/dist/languages/python.js +149 -44
- package/dist/languages/python.js.map +1 -1
- package/dist/languages/ruby.d.ts +39 -1
- package/dist/languages/ruby.d.ts.map +1 -1
- package/dist/languages/ruby.js +178 -44
- package/dist/languages/ruby.js.map +1 -1
- package/dist/languages/rust.d.ts.map +1 -1
- package/dist/languages/rust.js +103 -16
- package/dist/languages/rust.js.map +1 -1
- package/dist/languages/types.d.ts +228 -5
- package/dist/languages/types.d.ts.map +1 -1
- package/dist/languages/typescript.d.ts.map +1 -1
- package/dist/languages/typescript.js +201 -14
- package/dist/languages/typescript.js.map +1 -1
- package/dist/scoring/dimensions/documentation.d.ts +53 -0
- package/dist/scoring/dimensions/documentation.d.ts.map +1 -0
- package/dist/scoring/dimensions/documentation.js +106 -0
- package/dist/scoring/dimensions/documentation.js.map +1 -0
- package/dist/scoring/dimensions/dx.d.ts +53 -0
- package/dist/scoring/dimensions/dx.d.ts.map +1 -0
- package/dist/scoring/dimensions/dx.js +105 -0
- package/dist/scoring/dimensions/dx.js.map +1 -0
- package/dist/scoring/dimensions/maintainability.d.ts +53 -0
- package/dist/scoring/dimensions/maintainability.d.ts.map +1 -0
- package/dist/scoring/dimensions/maintainability.js +101 -0
- package/dist/scoring/dimensions/maintainability.js.map +1 -0
- package/dist/scoring/dimensions/quality.d.ts +108 -0
- package/dist/scoring/dimensions/quality.d.ts.map +1 -0
- package/dist/scoring/dimensions/quality.js +174 -0
- package/dist/scoring/dimensions/quality.js.map +1 -0
- package/dist/scoring/dimensions/security.d.ts +84 -0
- package/dist/scoring/dimensions/security.d.ts.map +1 -0
- package/dist/scoring/dimensions/security.js +135 -0
- package/dist/scoring/dimensions/security.js.map +1 -0
- package/dist/scoring/dimensions/testing.d.ts +56 -0
- package/dist/scoring/dimensions/testing.d.ts.map +1 -0
- package/dist/scoring/dimensions/testing.js +98 -0
- package/dist/scoring/dimensions/testing.js.map +1 -0
- package/dist/scoring/evaluator.d.ts +27 -0
- package/dist/scoring/evaluator.d.ts.map +1 -0
- package/dist/scoring/evaluator.js +124 -0
- package/dist/scoring/evaluator.js.map +1 -0
- package/dist/scoring/format.d.ts +34 -0
- package/dist/scoring/format.d.ts.map +1 -0
- package/dist/scoring/format.js +63 -0
- package/dist/scoring/format.js.map +1 -0
- package/dist/scoring/index.d.ts +37 -0
- package/dist/scoring/index.d.ts.map +1 -0
- package/dist/scoring/index.js +57 -0
- package/dist/scoring/index.js.map +1 -0
- package/dist/scoring/overall.d.ts +54 -0
- package/dist/scoring/overall.d.ts.map +1 -0
- package/dist/scoring/overall.js +76 -0
- package/dist/scoring/overall.js.map +1 -0
- package/dist/scoring/result.d.ts +111 -0
- package/dist/scoring/result.d.ts.map +1 -0
- package/dist/scoring/result.js +14 -0
- package/dist/scoring/result.js.map +1 -0
- package/dist/scoring/spec.d.ts +76 -0
- package/dist/scoring/spec.d.ts.map +1 -0
- package/dist/scoring/spec.js +22 -0
- package/dist/scoring/spec.js.map +1 -0
- package/dist/scoring/thresholds.d.ts +56 -0
- package/dist/scoring/thresholds.d.ts.map +1 -0
- package/dist/scoring/thresholds.js +75 -0
- package/dist/scoring/thresholds.js.map +1 -0
- package/dist/tools-cli.d.ts.map +1 -1
- package/dist/tools-cli.js +21 -2
- package/dist/tools-cli.js.map +1 -1
- package/dist/types.d.ts +16 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/templates/.claude/commands/dashboard.md +17 -9
- package/dist/analyzers/scoring.d.ts +0 -49
- package/dist/analyzers/scoring.d.ts.map +0 -1
- package/dist/analyzers/scoring.js +0 -422
- package/dist/analyzers/scoring.js.map +0 -1
- package/dist/analyzers/security/scoring.d.ts +0 -29
- package/dist/analyzers/security/scoring.d.ts.map +0 -1
- package/dist/analyzers/security/scoring.js +0 -40
- package/dist/analyzers/security/scoring.js.map +0 -1
|
@@ -18,6 +18,7 @@
|
|
|
18
18
|
*/
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
20
|
exports.defaultDispatcher = exports.CapabilityDispatcher = void 0;
|
|
21
|
+
const deadline_1 = require("./tools/deadline");
|
|
21
22
|
class CapabilityDispatcher {
|
|
22
23
|
cache = new Map();
|
|
23
24
|
opts;
|
|
@@ -25,6 +26,16 @@ class CapabilityDispatcher {
|
|
|
25
26
|
this.opts = opts;
|
|
26
27
|
}
|
|
27
28
|
async gather(cwd, cap, providers) {
|
|
29
|
+
return (await this.gatherWithProvenance(cwd, cap, providers)).envelope;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Same gather + cache semantics as `gather()`, plus per-provider
|
|
33
|
+
* provenance (which sources we attempted, which returned null).
|
|
34
|
+
* D080 (2.4.7): consumed by quality/health report renderers so the
|
|
35
|
+
* "Tool" label honestly reflects which providers were attempted even
|
|
36
|
+
* when one returned null silently.
|
|
37
|
+
*/
|
|
38
|
+
async gatherWithProvenance(cwd, cap, providers) {
|
|
28
39
|
const cacheKey = `${cwd}::${cap.id}`;
|
|
29
40
|
const cached = this.cache.get(cacheKey);
|
|
30
41
|
if (cached)
|
|
@@ -38,25 +49,97 @@ class CapabilityDispatcher {
|
|
|
38
49
|
this.cache.clear();
|
|
39
50
|
}
|
|
40
51
|
async run(cwd, cap, providers) {
|
|
41
|
-
if (providers.length === 0)
|
|
42
|
-
return
|
|
43
|
-
|
|
52
|
+
if (providers.length === 0) {
|
|
53
|
+
return {
|
|
54
|
+
envelope: null,
|
|
55
|
+
attempted: [],
|
|
56
|
+
succeeded: [],
|
|
57
|
+
skipped: [],
|
|
58
|
+
skipReasons: {},
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
const attempted = providers.map((p) => p.source);
|
|
62
|
+
// Each provider's gather pathway: prefer the discriminant-returning
|
|
63
|
+
// `gatherOutcome` (Lint / DepVulns / Licenses providers) when it
|
|
64
|
+
// exists, since it carries the "unavailable reason" the user-
|
|
65
|
+
// facing report wants. Fall back to plain `gather()` for legacy
|
|
66
|
+
// providers — the only loss is per-pack reason text; success/skip
|
|
67
|
+
// attribution still works.
|
|
68
|
+
//
|
|
69
|
+
// Every provider's promise is wrapped in a deadline so a single
|
|
70
|
+
// never-settling Promise can't keep `Promise.allSettled` pending
|
|
71
|
+
// forever (the silent-failure shape observed when the capabilities
|
|
72
|
+
// gather hung and the parent exited rc=0 with no work done). A
|
|
73
|
+
// stall is materialised as `{ value: null, reason: "stalled at
|
|
74
|
+
// >Ns (deadline)" }` so the existing skip/skipReason channels
|
|
75
|
+
// carry it through to `toolsUnavailable` without any consumer
|
|
76
|
+
// change.
|
|
77
|
+
const deadlineMs = this.opts.providerDeadlineMs ?? deadline_1.DEFAULT_PROVIDER_DEADLINE_MS;
|
|
78
|
+
const settled = await Promise.allSettled(providers.map((p) => {
|
|
79
|
+
const candidate = p;
|
|
80
|
+
const inner = typeof candidate.gatherOutcome === 'function'
|
|
81
|
+
? candidate.gatherOutcome(cwd).then((o) => {
|
|
82
|
+
if (o.kind === 'success') {
|
|
83
|
+
return { value: o.envelope, reason: null };
|
|
84
|
+
}
|
|
85
|
+
return {
|
|
86
|
+
value: null,
|
|
87
|
+
reason: o.reason ?? null,
|
|
88
|
+
};
|
|
89
|
+
})
|
|
90
|
+
: p.gather(cwd).then((v) => ({ value: v, reason: null }));
|
|
91
|
+
return (0, deadline_1.withDeadline)(inner, deadlineMs).then((outcome) => {
|
|
92
|
+
if (outcome.stalled) {
|
|
93
|
+
const stalledSeconds = Math.round(outcome.stalledMs / 1000);
|
|
94
|
+
const onStall = this.opts.onProviderStall ?? defaultOnProviderStall;
|
|
95
|
+
onStall(cap.id, p.source, outcome.stalledMs);
|
|
96
|
+
return {
|
|
97
|
+
value: null,
|
|
98
|
+
reason: `stalled at >${stalledSeconds}s (deadline)`,
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
return outcome.value;
|
|
102
|
+
});
|
|
103
|
+
}));
|
|
104
|
+
const succeeded = [];
|
|
105
|
+
const skipped = [];
|
|
106
|
+
const skipReasons = {};
|
|
44
107
|
const successful = [];
|
|
45
108
|
for (let i = 0; i < settled.length; i++) {
|
|
46
109
|
const r = settled[i];
|
|
110
|
+
const source = providers[i].source;
|
|
47
111
|
if (r.status === 'rejected') {
|
|
48
|
-
this.opts.onProviderError?.(cap.id,
|
|
112
|
+
this.opts.onProviderError?.(cap.id, source, r.reason);
|
|
113
|
+
skipped.push(source);
|
|
49
114
|
continue;
|
|
50
115
|
}
|
|
51
|
-
|
|
52
|
-
|
|
116
|
+
const { value, reason } = r.value;
|
|
117
|
+
if (value !== null) {
|
|
118
|
+
successful.push(value);
|
|
119
|
+
succeeded.push(source);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
skipped.push(source);
|
|
123
|
+
if (reason !== null)
|
|
124
|
+
skipReasons[source] = reason;
|
|
125
|
+
}
|
|
53
126
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
return cap.aggregate(successful);
|
|
127
|
+
const envelope = successful.length === 0 ? null : cap.aggregate(successful);
|
|
128
|
+
return { envelope, attempted, succeeded, skipped, skipReasons };
|
|
57
129
|
}
|
|
58
130
|
}
|
|
59
131
|
exports.CapabilityDispatcher = CapabilityDispatcher;
|
|
132
|
+
/**
|
|
133
|
+
* Default stall notifier — emits a single stderr line so a stalled
|
|
134
|
+
* provider is visible in `vyuh-dxkit report --verbose` and CI logs.
|
|
135
|
+
* Tests pass `onProviderStall` to suppress the write.
|
|
136
|
+
*/
|
|
137
|
+
function defaultOnProviderStall(capId, source, stalledMs) {
|
|
138
|
+
const seconds = Math.round(stalledMs / 1000);
|
|
139
|
+
// Stderr keeps the stall visible in --verbose + CI logs without
|
|
140
|
+
// polluting subprocess stdout (the orchestrator parses stdout).
|
|
141
|
+
process.stderr.write(`[dxkit] capability "${capId}" provider "${source}" stalled after >${seconds}s (deadline) — treating as skipped\n`);
|
|
142
|
+
}
|
|
60
143
|
/** Process-wide singleton. Tests should construct their own instance. */
|
|
61
144
|
exports.defaultDispatcher = new CapabilityDispatcher();
|
|
62
145
|
//# sourceMappingURL=dispatcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/analyzers/dispatcher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;
|
|
1
|
+
{"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/analyzers/dispatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Documentation dimension —
|
|
2
|
+
* Documentation dimension — health-side adapter over the declarative
|
|
3
|
+
* documentation scoring spec.
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
5
|
+
* Builds `DocumentationScoreInput` from the health-side `ScoreInput`
|
|
6
|
+
* (HealthMetrics) and dispatches through `evaluateSpec`. The
|
|
7
|
+
* resulting `DimensionScore` carries the score, rating, provenance
|
|
8
|
+
* (deductions, capsApplied, topActions), and the dimension-specific
|
|
9
|
+
* metrics + details surfaced in the health audit's markdown.
|
|
6
10
|
*/
|
|
7
|
-
import {
|
|
8
|
-
import { ScoreInput } from '../
|
|
11
|
+
import { type DocumentationScoreInput } from '../../scoring';
|
|
12
|
+
import { DimensionScore, ScoreInput } from '../types';
|
|
13
|
+
export declare function toDocumentationScoreInput(input: ScoreInput): DocumentationScoreInput;
|
|
14
|
+
/**
|
|
15
|
+
* Score-only adapter for the health remediation planner. Mirrors the
|
|
16
|
+
* other dimensions' `score*FromScoreInput` shims.
|
|
17
|
+
*/
|
|
18
|
+
export declare function scoreDocsFromScoreInput(input: ScoreInput): {
|
|
19
|
+
score: number;
|
|
20
|
+
};
|
|
9
21
|
export declare function scoreDocsDimension(input: ScoreInput): DimensionScore;
|
|
10
22
|
//# sourceMappingURL=shallow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAEL,KAAK,uBAAuB,EAG7B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,UAAU,GAAG,uBAAuB,CAYpF;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAE5E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAmCpE"}
|
|
@@ -1,8 +1,71 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toDocumentationScoreInput = toDocumentationScoreInput;
|
|
4
|
+
exports.scoreDocsFromScoreInput = scoreDocsFromScoreInput;
|
|
3
5
|
exports.scoreDocsDimension = scoreDocsDimension;
|
|
4
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Documentation dimension — health-side adapter over the declarative
|
|
8
|
+
* documentation scoring spec.
|
|
9
|
+
*
|
|
10
|
+
* Builds `DocumentationScoreInput` from the health-side `ScoreInput`
|
|
11
|
+
* (HealthMetrics) and dispatches through `evaluateSpec`. The
|
|
12
|
+
* resulting `DimensionScore` carries the score, rating, provenance
|
|
13
|
+
* (deductions, capsApplied, topActions), and the dimension-specific
|
|
14
|
+
* metrics + details surfaced in the health audit's markdown.
|
|
15
|
+
*/
|
|
16
|
+
const scoring_1 = require("../../scoring");
|
|
17
|
+
function toDocumentationScoreInput(input) {
|
|
18
|
+
const m = input.metrics;
|
|
19
|
+
return {
|
|
20
|
+
sourceFiles: m.sourceFiles,
|
|
21
|
+
readmeExists: m.readmeExists,
|
|
22
|
+
readmeLines: m.readmeLines,
|
|
23
|
+
docCommentFiles: m.docCommentFiles,
|
|
24
|
+
apiDocsExist: m.apiDocsExist,
|
|
25
|
+
architectureDocsExist: m.architectureDocsExist,
|
|
26
|
+
contributingExists: m.contributingExists,
|
|
27
|
+
changelogExists: m.changelogExists,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Score-only adapter for the health remediation planner. Mirrors the
|
|
32
|
+
* other dimensions' `score*FromScoreInput` shims.
|
|
33
|
+
*/
|
|
34
|
+
function scoreDocsFromScoreInput(input) {
|
|
35
|
+
return (0, scoring_1.evaluateSpec)(scoring_1.DOCUMENTATION_SCORING_SPEC, toDocumentationScoreInput(input));
|
|
36
|
+
}
|
|
5
37
|
function scoreDocsDimension(input) {
|
|
6
|
-
|
|
38
|
+
const m = input.metrics;
|
|
39
|
+
const scoreInput = toDocumentationScoreInput(input);
|
|
40
|
+
const result = (0, scoring_1.evaluateSpec)(scoring_1.DOCUMENTATION_SCORING_SPEC, scoreInput);
|
|
41
|
+
const score = result.score;
|
|
42
|
+
const docRatio = m.docCommentFiles / Math.max(m.sourceFiles, 1);
|
|
43
|
+
return {
|
|
44
|
+
score,
|
|
45
|
+
maxScore: 100,
|
|
46
|
+
rating: (0, scoring_1.ratingFromScore)(score),
|
|
47
|
+
rawScore: result.rawScore,
|
|
48
|
+
rawPenalty: result.rawPenalty,
|
|
49
|
+
methodology: result.methodology,
|
|
50
|
+
deductions: result.deductions,
|
|
51
|
+
capsApplied: result.capsApplied,
|
|
52
|
+
topActions: result.topActions,
|
|
53
|
+
metrics: {
|
|
54
|
+
readmeExists: m.readmeExists,
|
|
55
|
+
readmeLines: m.readmeLines,
|
|
56
|
+
docCommentFiles: m.docCommentFiles,
|
|
57
|
+
docRatio: Math.round(docRatio * 100) / 100,
|
|
58
|
+
apiDocsExist: m.apiDocsExist,
|
|
59
|
+
architectureDocsExist: m.architectureDocsExist,
|
|
60
|
+
contributingExists: m.contributingExists,
|
|
61
|
+
changelogExists: m.changelogExists,
|
|
62
|
+
},
|
|
63
|
+
details: `README: ${m.readmeExists ? `${m.readmeLines} lines` : 'missing'}` +
|
|
64
|
+
`. ${m.docCommentFiles}/${m.sourceFiles} files have doc comments (${(docRatio * 100).toFixed(1)}%)` +
|
|
65
|
+
`. API docs: ${m.apiDocsExist ? 'yes' : 'no'}` +
|
|
66
|
+
`. Architecture docs: ${m.architectureDocsExist ? 'yes' : 'no'}` +
|
|
67
|
+
`. Contributing: ${m.contributingExists ? 'yes' : 'no'}` +
|
|
68
|
+
'.',
|
|
69
|
+
};
|
|
7
70
|
}
|
|
8
71
|
//# sourceMappingURL=shallow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/docs/shallow.ts"],"names":[],"mappings":";;AAkBA,8DAYC;AAMD,0DAEC;AAED,gDAmCC;AA3ED;;;;;;;;;GASG;AACH,2CAKuB;AAGvB,SAAgB,yBAAyB,CAAC,KAAiB;IACzD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,OAAO;QACL,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,eAAe,EAAE,CAAC,CAAC,eAAe;QAClC,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;QAC9C,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;QACxC,eAAe,EAAE,CAAC,CAAC,eAAe;KACnC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CAAC,KAAiB;IACvD,OAAO,IAAA,sBAAY,EAAC,oCAA0B,EAAE,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAiB;IAClD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,MAAM,UAAU,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,oCAA0B,EAAE,UAAU,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,MAAM,QAAQ,GAAG,CAAC,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAEhE,OAAO;QACL,KAAK;QACL,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,IAAA,yBAAe,EAAC,KAAK,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,OAAO,EAAE;YACP,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,eAAe,EAAE,CAAC,CAAC,eAAe;YAClC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,GAAG;YAC1C,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;YAC9C,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;YACxC,eAAe,EAAE,CAAC,CAAC,eAAe;SACnC;QACD,OAAO,EACL,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE;YAClE,KAAK,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,WAAW,6BAA6B,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YACnG,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAC9C,wBAAwB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAChE,mBAAmB,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACxD,GAAG;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Developer Experience dimension —
|
|
2
|
+
* Developer Experience dimension — health-side adapter over the
|
|
3
|
+
* declarative DX scoring spec.
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
5
|
+
* Builds `DxScoreInput` from the health-side `ScoreInput`
|
|
6
|
+
* (HealthMetrics) and dispatches through `evaluateSpec`. The
|
|
7
|
+
* resulting `DimensionScore` carries the score, rating, provenance,
|
|
8
|
+
* and the dimension-specific metrics + details surfaced in the
|
|
9
|
+
* health audit's markdown.
|
|
6
10
|
*/
|
|
7
|
-
import {
|
|
8
|
-
import { ScoreInput } from '../
|
|
11
|
+
import { type DxScoreInput } from '../../scoring';
|
|
12
|
+
import { DimensionScore, ScoreInput } from '../types';
|
|
13
|
+
export declare function toDxScoreInput(input: ScoreInput): DxScoreInput;
|
|
14
|
+
/**
|
|
15
|
+
* Score-only adapter for the health remediation planner. Mirrors the
|
|
16
|
+
* other dimensions' `score*FromScoreInput` shims.
|
|
17
|
+
*/
|
|
18
|
+
export declare function scoreDxFromScoreInput(input: ScoreInput): {
|
|
19
|
+
score: number;
|
|
20
|
+
};
|
|
9
21
|
export declare function scoreDxDimension(input: ScoreInput): DimensionScore;
|
|
10
22
|
//# sourceMappingURL=shallow.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"shallow.d.ts","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAmB,KAAK,YAAY,EAAiC,MAAM,eAAe,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtD,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,YAAY,CAa9D;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAE1E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,cAAc,CAmClE"}
|
|
@@ -1,8 +1,72 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.toDxScoreInput = toDxScoreInput;
|
|
4
|
+
exports.scoreDxFromScoreInput = scoreDxFromScoreInput;
|
|
3
5
|
exports.scoreDxDimension = scoreDxDimension;
|
|
4
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Developer Experience dimension — health-side adapter over the
|
|
8
|
+
* declarative DX scoring spec.
|
|
9
|
+
*
|
|
10
|
+
* Builds `DxScoreInput` from the health-side `ScoreInput`
|
|
11
|
+
* (HealthMetrics) and dispatches through `evaluateSpec`. The
|
|
12
|
+
* resulting `DimensionScore` carries the score, rating, provenance,
|
|
13
|
+
* and the dimension-specific metrics + details surfaced in the
|
|
14
|
+
* health audit's markdown.
|
|
15
|
+
*/
|
|
16
|
+
const scoring_1 = require("../../scoring");
|
|
17
|
+
function toDxScoreInput(input) {
|
|
18
|
+
const m = input.metrics;
|
|
19
|
+
return {
|
|
20
|
+
ciConfigCount: m.ciConfigCount,
|
|
21
|
+
dockerConfigCount: m.dockerConfigCount,
|
|
22
|
+
precommitConfigCount: m.precommitConfigCount,
|
|
23
|
+
makefileExists: m.makefileExists,
|
|
24
|
+
envExampleExists: m.envExampleExists,
|
|
25
|
+
npmScriptsCount: m.npmScriptsCount,
|
|
26
|
+
contributingExists: m.contributingExists,
|
|
27
|
+
readmeLines: m.readmeLines,
|
|
28
|
+
changelogExists: m.changelogExists,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Score-only adapter for the health remediation planner. Mirrors the
|
|
33
|
+
* other dimensions' `score*FromScoreInput` shims.
|
|
34
|
+
*/
|
|
35
|
+
function scoreDxFromScoreInput(input) {
|
|
36
|
+
return (0, scoring_1.evaluateSpec)(scoring_1.DX_SCORING_SPEC, toDxScoreInput(input));
|
|
37
|
+
}
|
|
5
38
|
function scoreDxDimension(input) {
|
|
6
|
-
|
|
39
|
+
const m = input.metrics;
|
|
40
|
+
const scoreInput = toDxScoreInput(input);
|
|
41
|
+
const result = (0, scoring_1.evaluateSpec)(scoring_1.DX_SCORING_SPEC, scoreInput);
|
|
42
|
+
const score = result.score;
|
|
43
|
+
return {
|
|
44
|
+
score,
|
|
45
|
+
maxScore: 100,
|
|
46
|
+
rating: (0, scoring_1.ratingFromScore)(score),
|
|
47
|
+
rawScore: result.rawScore,
|
|
48
|
+
rawPenalty: result.rawPenalty,
|
|
49
|
+
methodology: result.methodology,
|
|
50
|
+
deductions: result.deductions,
|
|
51
|
+
capsApplied: result.capsApplied,
|
|
52
|
+
topActions: result.topActions,
|
|
53
|
+
metrics: {
|
|
54
|
+
ciConfigCount: m.ciConfigCount,
|
|
55
|
+
dockerConfigCount: m.dockerConfigCount,
|
|
56
|
+
precommitConfigCount: m.precommitConfigCount,
|
|
57
|
+
makefileExists: m.makefileExists,
|
|
58
|
+
envExampleExists: m.envExampleExists,
|
|
59
|
+
npmScriptsCount: m.npmScriptsCount,
|
|
60
|
+
contributingExists: m.contributingExists,
|
|
61
|
+
changelogExists: m.changelogExists,
|
|
62
|
+
},
|
|
63
|
+
details: `CI configs: ${m.ciConfigCount}` +
|
|
64
|
+
`. Docker: ${m.dockerConfigCount > 0 ? 'yes' : 'no'}` +
|
|
65
|
+
`. Pre-commit hooks: ${m.precommitConfigCount > 0 ? 'yes' : 'no'}` +
|
|
66
|
+
`. Makefile: ${m.makefileExists ? 'yes' : 'no'}` +
|
|
67
|
+
`. .env.example: ${m.envExampleExists ? 'yes' : 'no'}` +
|
|
68
|
+
`. npm scripts: ${m.npmScriptsCount}` +
|
|
69
|
+
'.',
|
|
70
|
+
};
|
|
7
71
|
}
|
|
8
72
|
//# sourceMappingURL=shallow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"shallow.js","sourceRoot":"","sources":["../../../src/analyzers/dx/shallow.ts"],"names":[],"mappings":";;AAaA,wCAaC;AAMD,sDAEC;AAED,4CAmCC;AAvED;;;;;;;;;GASG;AACH,2CAAkG;AAGlG,SAAgB,cAAc,CAAC,KAAiB;IAC9C,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,aAAa;QAC9B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;QACtC,oBAAoB,EAAE,CAAC,CAAC,oBAAoB;QAC5C,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;QACpC,eAAe,EAAE,CAAC,CAAC,eAAe;QAClC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;QACxC,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,eAAe,EAAE,CAAC,CAAC,eAAe;KACnC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,KAAiB;IACrD,OAAO,IAAA,sBAAY,EAAC,yBAAe,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,SAAgB,gBAAgB,CAAC,KAAiB;IAChD,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;IACxB,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,yBAAe,EAAE,UAAU,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAE3B,OAAO;QACL,KAAK;QACL,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,IAAA,yBAAe,EAAC,KAAK,CAAC;QAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,OAAO,EAAE;YACP,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;YACtC,oBAAoB,EAAE,CAAC,CAAC,oBAAoB;YAC5C,cAAc,EAAE,CAAC,CAAC,cAAc;YAChC,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;YACpC,eAAe,EAAE,CAAC,CAAC,eAAe;YAClC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;YACxC,eAAe,EAAE,CAAC,CAAC,eAAe;SACnC;QACD,OAAO,EACL,eAAe,CAAC,CAAC,aAAa,EAAE;YAChC,aAAa,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACrD,uBAAuB,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAClE,eAAe,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YAChD,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;YACtD,kBAAkB,CAAC,CAAC,eAAe,EAAE;YACrC,GAAG;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,YAAY,EAA2B,MAAM,gBAAgB,CAAC;AAiBvE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AA0WtC,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;CACrC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,GAAG,aAAa,EAAE,CA8BnE"}
|
|
@@ -2,7 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildHealthPlans = buildHealthPlans;
|
|
4
4
|
const remediation_1 = require("../remediation");
|
|
5
|
-
const
|
|
5
|
+
const shallow_1 = require("../tests/shallow");
|
|
6
|
+
const shallow_2 = require("../docs/shallow");
|
|
7
|
+
const shallow_3 = require("../maintainability/shallow");
|
|
8
|
+
const shallow_4 = require("../dx/shallow");
|
|
9
|
+
// Security + Quality scorers live with their analyzers post-
|
|
10
|
+
// canonical-formula unification.
|
|
11
|
+
const shallow_5 = require("../security/shallow");
|
|
12
|
+
const shallow_6 = require("../quality/shallow");
|
|
6
13
|
/** Shallow-clone the metrics slice with `patch` merged on top. */
|
|
7
14
|
function withMetrics(cur, patch) {
|
|
8
15
|
return { ...cur, metrics: { ...cur.metrics, ...patch } };
|
|
@@ -165,11 +172,18 @@ function docsActions(input) {
|
|
|
165
172
|
patch: (cur) => withMetrics(cur, { architectureDocsExist: true }),
|
|
166
173
|
});
|
|
167
174
|
}
|
|
168
|
-
|
|
175
|
+
// Only recommend API docs when there's an actual HTTP route surface
|
|
176
|
+
// to document. The gate is `routeHandlerFiles` — the count of files
|
|
177
|
+
// matching any active pack's `architecturalShape.routePaths` (the
|
|
178
|
+
// narrower HTTP-handler subset). A desktop app or pure-frontend
|
|
179
|
+
// project has zero route handlers even when its primary-component
|
|
180
|
+
// count is large (Forms, components, screens), so this action
|
|
181
|
+
// stays correctly silenced for non-API codebases.
|
|
182
|
+
if (!m.apiDocsExist && m.routeHandlerFiles > 0) {
|
|
169
183
|
actions.push({
|
|
170
184
|
id: 'health.docs.add-api-docs',
|
|
171
185
|
title: 'Add API documentation',
|
|
172
|
-
rationale: 'With
|
|
186
|
+
rationale: 'With HTTP route handlers present, API surface should be documented.',
|
|
173
187
|
evidence: [],
|
|
174
188
|
patch: (cur) => withMetrics(cur, { apiDocsExist: true }),
|
|
175
189
|
});
|
|
@@ -306,12 +320,16 @@ function dxActions(input) {
|
|
|
306
320
|
}
|
|
307
321
|
function buildHealthPlans(input) {
|
|
308
322
|
const dims = [
|
|
309
|
-
{ name: 'Testing', scorer:
|
|
310
|
-
{ name: 'Quality', scorer:
|
|
311
|
-
{ name: 'Documentation', scorer:
|
|
312
|
-
{ name: 'Security', scorer:
|
|
313
|
-
{
|
|
314
|
-
|
|
323
|
+
{ name: 'Testing', scorer: shallow_1.scoreTestFromScoreInput, build: testingActions },
|
|
324
|
+
{ name: 'Quality', scorer: shallow_6.scoreQualityFromScoreInput, build: qualityActions },
|
|
325
|
+
{ name: 'Documentation', scorer: shallow_2.scoreDocsFromScoreInput, build: docsActions },
|
|
326
|
+
{ name: 'Security', scorer: shallow_5.scoreSecurityFromScoreInput, build: securityActions },
|
|
327
|
+
{
|
|
328
|
+
name: 'Maintainability',
|
|
329
|
+
scorer: shallow_3.scoreMaintainabilityFromScoreInput,
|
|
330
|
+
build: maintainabilityActions,
|
|
331
|
+
},
|
|
332
|
+
{ name: 'Developer Experience', scorer: shallow_4.scoreDxFromScoreInput, build: dxActions },
|
|
315
333
|
];
|
|
316
334
|
return dims.map((d) => {
|
|
317
335
|
const baseline = d.scorer(input).score;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/analyzers/health/actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,12 +7,13 @@
|
|
|
7
7
|
*/
|
|
8
8
|
import { HealthReport, HealthMetrics } from '../types';
|
|
9
9
|
import { DimensionPlan } from './actions';
|
|
10
|
+
import { type Rating } from '../../scoring';
|
|
10
11
|
export interface HealthDetailedReport extends HealthReport {
|
|
11
12
|
schemaVersion: string;
|
|
12
13
|
plans: DimensionPlan[];
|
|
13
14
|
/** Projected overall if every ranked action is applied. */
|
|
14
15
|
projectedOverallScore: number;
|
|
15
|
-
projectedGrade:
|
|
16
|
+
projectedGrade: Rating;
|
|
16
17
|
/** Relative paths to the dimension-specific detailed reports, if generated. */
|
|
17
18
|
crossRefs: {
|
|
18
19
|
vulnerabilities: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detailed.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAoB,aAAa,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"detailed.d.ts","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAoB,aAAa,EAAE,MAAM,WAAW,CAAC;AAC5D,OAAO,EAAkB,KAAK,MAAM,EAAE,MAAM,eAAe,CAAC;AAI5D,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,2DAA2D;IAC3D,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,SAAS,EAAE;QACT,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAWD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,aAAa,GACrB,oBAAoB,CA6CtB;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,EAAE,MAAM,GACd,MAAM,CA0GR"}
|
|
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.buildHealthDetailed = buildHealthDetailed;
|
|
4
4
|
exports.formatHealthDetailedMarkdown = formatHealthDetailedMarkdown;
|
|
5
5
|
const actions_1 = require("./actions");
|
|
6
|
-
const scoring_1 = require("
|
|
6
|
+
const scoring_1 = require("../../scoring");
|
|
7
|
+
const tools_unavailable_prose_1 = require("../tools/tools-unavailable-prose");
|
|
7
8
|
const DIM_TO_KEY = {
|
|
8
9
|
Testing: 'testing',
|
|
9
10
|
Quality: 'quality',
|
|
@@ -33,7 +34,7 @@ function buildHealthDetailed(report, metrics) {
|
|
|
33
34
|
if (k)
|
|
34
35
|
projectedDims[k].score = p.ideal;
|
|
35
36
|
}
|
|
36
|
-
const { overallScore: projected,
|
|
37
|
+
const { overallScore: projected, rating: projectedGrade } = (0, scoring_1.computeOverall)(projectedDims);
|
|
37
38
|
// Date prefix used for cross-refs so they match the sibling detailed filenames.
|
|
38
39
|
const date = report.analyzedAt.slice(0, 10);
|
|
39
40
|
const crossRefs = {
|
|
@@ -44,7 +45,12 @@ function buildHealthDetailed(report, metrics) {
|
|
|
44
45
|
};
|
|
45
46
|
return {
|
|
46
47
|
...report,
|
|
47
|
-
|
|
48
|
+
// 2.4.7: bumped 11 → 12 for the actionable-scoring fields surfaced
|
|
49
|
+
// per dimension (rawScore, rawPenalty, methodology, deductions,
|
|
50
|
+
// capsApplied, topActions) plus the summary.grade → summary.rating
|
|
51
|
+
// rename + F→E letter unification. See docs/MIGRATING-TO-2.4.7-
|
|
52
|
+
// SCORING.md for the downstream-consumer migration guide.
|
|
53
|
+
schemaVersion: '12',
|
|
48
54
|
plans,
|
|
49
55
|
projectedOverallScore: projected,
|
|
50
56
|
projectedGrade,
|
|
@@ -61,7 +67,7 @@ function formatHealthDetailedMarkdown(detailed, elapsed) {
|
|
|
61
67
|
L.push(`**Commit:** ${detailed.commitSha}`);
|
|
62
68
|
L.push(`**Schema version:** ${detailed.schemaVersion}`);
|
|
63
69
|
L.push('');
|
|
64
|
-
L.push(`## Overall Health: ${detailed.summary.overallScore}/100 (
|
|
70
|
+
L.push(`## Overall Health: ${detailed.summary.overallScore}/100 (${detailed.summary.rating}) → projected ${detailed.projectedOverallScore}/100 (${detailed.projectedGrade}) if every action is taken`);
|
|
65
71
|
L.push('');
|
|
66
72
|
L.push('---');
|
|
67
73
|
L.push('');
|
|
@@ -140,9 +146,7 @@ function formatHealthDetailedMarkdown(detailed, elapsed) {
|
|
|
140
146
|
L.push('');
|
|
141
147
|
}
|
|
142
148
|
L.push(`**Tools used:** ${detailed.toolsUsed.join(', ')}`);
|
|
143
|
-
|
|
144
|
-
L.push(`**Tools unavailable:** ${detailed.toolsUnavailable.join(', ')}`);
|
|
145
|
-
}
|
|
149
|
+
L.push(...(0, tools_unavailable_prose_1.renderToolsUnavailableLines)(detailed.toolsUnavailable));
|
|
146
150
|
L.push(`**Analysis time:** ${elapsed}s`);
|
|
147
151
|
L.push('');
|
|
148
152
|
L.push('*Generated by [VyuhLabs DXKit](https://www.npmjs.com/package/@vyuhlabs/dxkit) — detailed mode*');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detailed.js","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"detailed.js","sourceRoot":"","sources":["../../../src/analyzers/health/detailed.ts"],"names":[],"mappings":"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"}
|