@vyuhlabs/dxkit 1.6.1 → 2.0.1
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 +115 -0
- package/README.md +3 -3
- package/dist/agents/extract.d.ts +25 -0
- package/dist/agents/extract.d.ts.map +1 -0
- package/dist/agents/extract.js +186 -0
- package/dist/agents/extract.js.map +1 -0
- package/dist/agents/schemas.d.ts +106 -0
- package/dist/agents/schemas.d.ts.map +1 -0
- package/dist/agents/schemas.js +86 -0
- package/dist/agents/schemas.js.map +1 -0
- package/dist/agents/session.d.ts +28 -0
- package/dist/agents/session.d.ts.map +1 -0
- package/dist/agents/session.js +223 -0
- package/dist/agents/session.js.map +1 -0
- package/dist/analyzers/developer/detailed.js +1 -1
- package/dist/analyzers/developer/detailed.js.map +1 -1
- package/dist/analyzers/dispatcher.d.ts +36 -0
- package/dist/analyzers/dispatcher.d.ts.map +1 -0
- package/dist/analyzers/dispatcher.js +62 -0
- package/dist/analyzers/dispatcher.js.map +1 -0
- package/dist/analyzers/docs/shallow.d.ts +3 -2
- package/dist/analyzers/docs/shallow.d.ts.map +1 -1
- package/dist/analyzers/docs/shallow.js +2 -2
- package/dist/analyzers/docs/shallow.js.map +1 -1
- package/dist/analyzers/dx/shallow.d.ts +3 -2
- package/dist/analyzers/dx/shallow.d.ts.map +1 -1
- package/dist/analyzers/dx/shallow.js +2 -2
- package/dist/analyzers/dx/shallow.js.map +1 -1
- package/dist/analyzers/health/actions.d.ts +3 -3
- package/dist/analyzers/health/actions.d.ts.map +1 -1
- package/dist/analyzers/health/actions.js +99 -52
- package/dist/analyzers/health/actions.js.map +1 -1
- package/dist/analyzers/health/detailed.d.ts.map +1 -1
- package/dist/analyzers/health/detailed.js +6 -2
- package/dist/analyzers/health/detailed.js.map +1 -1
- package/dist/analyzers/health.d.ts +0 -2
- package/dist/analyzers/health.d.ts.map +1 -1
- package/dist/analyzers/health.js +134 -72
- package/dist/analyzers/health.js.map +1 -1
- package/dist/analyzers/maintainability/shallow.d.ts +3 -2
- package/dist/analyzers/maintainability/shallow.d.ts.map +1 -1
- package/dist/analyzers/maintainability/shallow.js +2 -2
- package/dist/analyzers/maintainability/shallow.js.map +1 -1
- package/dist/analyzers/quality/detailed.js +1 -1
- package/dist/analyzers/quality/detailed.js.map +1 -1
- package/dist/analyzers/quality/gather.d.ts +33 -4
- package/dist/analyzers/quality/gather.d.ts.map +1 -1
- package/dist/analyzers/quality/gather.js +81 -93
- package/dist/analyzers/quality/gather.js.map +1 -1
- package/dist/analyzers/quality/index.js +4 -4
- package/dist/analyzers/quality/index.js.map +1 -1
- package/dist/analyzers/quality/shallow.d.ts +3 -2
- package/dist/analyzers/quality/shallow.d.ts.map +1 -1
- package/dist/analyzers/quality/shallow.js +2 -2
- package/dist/analyzers/quality/shallow.js.map +1 -1
- package/dist/analyzers/scoring.d.ts +26 -9
- package/dist/analyzers/scoring.d.ts.map +1 -1
- package/dist/analyzers/scoring.js +83 -71
- package/dist/analyzers/scoring.js.map +1 -1
- package/dist/analyzers/security/detailed.js +1 -1
- package/dist/analyzers/security/detailed.js.map +1 -1
- package/dist/analyzers/security/gather.d.ts +28 -5
- package/dist/analyzers/security/gather.d.ts.map +1 -1
- package/dist/analyzers/security/gather.js +87 -135
- package/dist/analyzers/security/gather.js.map +1 -1
- package/dist/analyzers/security/index.d.ts +1 -1
- package/dist/analyzers/security/index.d.ts.map +1 -1
- package/dist/analyzers/security/index.js +16 -11
- package/dist/analyzers/security/index.js.map +1 -1
- package/dist/analyzers/security/report.d.ts +6 -0
- package/dist/analyzers/security/report.d.ts.map +1 -0
- package/dist/analyzers/security/report.js +118 -0
- package/dist/analyzers/security/report.js.map +1 -0
- package/dist/analyzers/security/shallow.d.ts +3 -2
- package/dist/analyzers/security/shallow.d.ts.map +1 -1
- package/dist/analyzers/security/shallow.js +2 -2
- package/dist/analyzers/security/shallow.js.map +1 -1
- package/dist/analyzers/tests/detailed.js +1 -1
- package/dist/analyzers/tests/detailed.js.map +1 -1
- package/dist/analyzers/tests/import-graph.d.ts +8 -22
- package/dist/analyzers/tests/import-graph.d.ts.map +1 -1
- package/dist/analyzers/tests/import-graph.js +22 -189
- package/dist/analyzers/tests/import-graph.js.map +1 -1
- package/dist/analyzers/tests/index.d.ts +1 -1
- package/dist/analyzers/tests/index.d.ts.map +1 -1
- package/dist/analyzers/tests/index.js +3 -3
- package/dist/analyzers/tests/index.js.map +1 -1
- package/dist/analyzers/tests/shallow.d.ts +3 -2
- package/dist/analyzers/tests/shallow.d.ts.map +1 -1
- package/dist/analyzers/tests/shallow.js +2 -2
- package/dist/analyzers/tests/shallow.js.map +1 -1
- package/dist/analyzers/tools/coverage.d.ts +21 -11
- package/dist/analyzers/tools/coverage.d.ts.map +1 -1
- package/dist/analyzers/tools/coverage.js +32 -44
- package/dist/analyzers/tools/coverage.js.map +1 -1
- package/dist/analyzers/tools/dotnet.d.ts +8 -0
- package/dist/analyzers/tools/dotnet.d.ts.map +1 -0
- package/dist/analyzers/tools/dotnet.js +81 -0
- package/dist/analyzers/tools/dotnet.js.map +1 -0
- package/dist/analyzers/tools/gather-cache.d.ts +16 -0
- package/dist/analyzers/tools/gather-cache.d.ts.map +1 -0
- package/dist/analyzers/tools/gather-cache.js +126 -0
- package/dist/analyzers/tools/gather-cache.js.map +1 -0
- package/dist/analyzers/tools/generic.d.ts.map +1 -1
- package/dist/analyzers/tools/generic.js +6 -28
- package/dist/analyzers/tools/generic.js.map +1 -1
- package/dist/analyzers/tools/gitleaks.d.ts +28 -5
- package/dist/analyzers/tools/gitleaks.d.ts.map +1 -1
- package/dist/analyzers/tools/gitleaks.js +91 -37
- package/dist/analyzers/tools/gitleaks.js.map +1 -1
- package/dist/analyzers/tools/go.d.ts +8 -0
- package/dist/analyzers/tools/go.d.ts.map +1 -0
- package/dist/analyzers/tools/go.js +84 -0
- package/dist/analyzers/tools/go.js.map +1 -0
- package/dist/analyzers/tools/graphify.d.ts +31 -3
- package/dist/analyzers/tools/graphify.d.ts.map +1 -1
- package/dist/analyzers/tools/graphify.js +78 -36
- package/dist/analyzers/tools/graphify.js.map +1 -1
- package/dist/analyzers/tools/grep-secrets.d.ts +6 -0
- package/dist/analyzers/tools/grep-secrets.d.ts.map +1 -0
- package/dist/analyzers/tools/grep-secrets.js +124 -0
- package/dist/analyzers/tools/grep-secrets.js.map +1 -0
- package/dist/analyzers/tools/jscpd.d.ts +40 -0
- package/dist/analyzers/tools/jscpd.d.ts.map +1 -0
- package/dist/analyzers/tools/jscpd.js +96 -0
- package/dist/analyzers/tools/jscpd.js.map +1 -0
- package/dist/analyzers/tools/node.d.ts +8 -0
- package/dist/analyzers/tools/node.d.ts.map +1 -0
- package/dist/analyzers/tools/node.js +160 -0
- package/dist/analyzers/tools/node.js.map +1 -0
- package/dist/analyzers/tools/package-json.d.ts +6 -0
- package/dist/analyzers/tools/package-json.d.ts.map +1 -0
- package/dist/analyzers/tools/package-json.js +67 -0
- package/dist/analyzers/tools/package-json.js.map +1 -0
- package/dist/analyzers/tools/parallel.d.ts +22 -5
- package/dist/analyzers/tools/parallel.d.ts.map +1 -1
- package/dist/analyzers/tools/parallel.js +26 -185
- package/dist/analyzers/tools/parallel.js.map +1 -1
- package/dist/analyzers/tools/paths.d.ts +21 -0
- package/dist/analyzers/tools/paths.d.ts.map +1 -0
- package/dist/analyzers/tools/paths.js +62 -0
- package/dist/analyzers/tools/paths.js.map +1 -0
- package/dist/analyzers/tools/python.d.ts +8 -0
- package/dist/analyzers/tools/python.d.ts.map +1 -0
- package/dist/analyzers/tools/python.js +81 -0
- package/dist/analyzers/tools/python.js.map +1 -0
- package/dist/analyzers/tools/rust.d.ts +8 -0
- package/dist/analyzers/tools/rust.d.ts.map +1 -0
- package/dist/analyzers/tools/rust.js +86 -0
- package/dist/analyzers/tools/rust.js.map +1 -0
- package/dist/analyzers/tools/semgrep.d.ts +39 -0
- package/dist/analyzers/tools/semgrep.d.ts.map +1 -0
- package/dist/analyzers/tools/semgrep.js +129 -0
- package/dist/analyzers/tools/semgrep.js.map +1 -0
- package/dist/analyzers/tools/tool-registry.d.ts +0 -41
- package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
- package/dist/analyzers/tools/tool-registry.js +0 -87
- package/dist/analyzers/tools/tool-registry.js.map +1 -1
- package/dist/analyzers/types.d.ts +42 -30
- package/dist/analyzers/types.d.ts.map +1 -1
- package/dist/cli.js +2 -2
- package/dist/cli.js.map +1 -1
- package/dist/constants.d.ts +1 -3
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +55 -14
- package/dist/constants.js.map +1 -1
- package/dist/languages/capabilities/descriptors.d.ts +74 -0
- package/dist/languages/capabilities/descriptors.d.ts.map +1 -0
- package/dist/languages/capabilities/descriptors.js +250 -0
- package/dist/languages/capabilities/descriptors.js.map +1 -0
- package/dist/languages/capabilities/global.d.ts +43 -0
- package/dist/languages/capabilities/global.d.ts.map +1 -0
- package/dist/languages/capabilities/global.js +48 -0
- package/dist/languages/capabilities/global.js.map +1 -0
- package/dist/languages/capabilities/index.d.ts +31 -0
- package/dist/languages/capabilities/index.d.ts.map +1 -0
- package/dist/languages/capabilities/index.js +56 -0
- package/dist/languages/capabilities/index.js.map +1 -0
- package/dist/languages/capabilities/provider.d.ts +16 -0
- package/dist/languages/capabilities/provider.d.ts.map +1 -0
- package/dist/languages/capabilities/provider.js +12 -0
- package/dist/languages/capabilities/provider.js.map +1 -0
- package/dist/languages/capabilities/types.d.ts +226 -0
- package/dist/languages/capabilities/types.d.ts.map +1 -0
- package/dist/languages/capabilities/types.js +23 -0
- package/dist/languages/capabilities/types.js.map +1 -0
- package/dist/languages/csharp.d.ts +8 -0
- package/dist/languages/csharp.d.ts.map +1 -1
- package/dist/languages/csharp.js +203 -103
- package/dist/languages/csharp.js.map +1 -1
- package/dist/languages/go.d.ts +13 -7
- package/dist/languages/go.d.ts.map +1 -1
- package/dist/languages/go.js +277 -183
- package/dist/languages/go.js.map +1 -1
- package/dist/languages/python.d.ts +14 -0
- package/dist/languages/python.d.ts.map +1 -1
- package/dist/languages/python.js +276 -169
- package/dist/languages/python.js.map +1 -1
- package/dist/languages/rust.d.ts +8 -0
- package/dist/languages/rust.d.ts.map +1 -1
- package/dist/languages/rust.js +218 -131
- package/dist/languages/rust.js.map +1 -1
- package/dist/languages/types.d.ts +16 -15
- package/dist/languages/types.d.ts.map +1 -1
- package/dist/languages/typescript.d.ts +12 -11
- package/dist/languages/typescript.d.ts.map +1 -1
- package/dist/languages/typescript.js +256 -161
- package/dist/languages/typescript.js.map +1 -1
- package/package.json +1 -1
- package/templates/.ai/templates/session-checkpoint-template.md +97 -0
|
@@ -21,10 +21,24 @@ function status(score) {
|
|
|
21
21
|
function clamp(value, min = 0, max = 100) {
|
|
22
22
|
return Math.round(Math.max(min, Math.min(max, value)));
|
|
23
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* Round a capability's coverage percent to match the legacy integer contract.
|
|
26
|
+
* CoverageResult carries one decimal place; scoring thresholds and the
|
|
27
|
+
* `Coverage: XX%` detail string both expect an integer.
|
|
28
|
+
*/
|
|
29
|
+
function coveragePercentFrom(c) {
|
|
30
|
+
const raw = c.coverage?.coverage.linePercent;
|
|
31
|
+
return raw === undefined ? null : Math.round(raw);
|
|
32
|
+
}
|
|
24
33
|
/** Testing: 0-100 */
|
|
25
|
-
function scoreTest(
|
|
34
|
+
function scoreTest(input) {
|
|
35
|
+
const m = input.metrics;
|
|
36
|
+
const c = input.capabilities;
|
|
26
37
|
const sourceCount = Math.max(m.sourceFiles, 1);
|
|
27
38
|
const testRatio = m.testFiles / sourceCount;
|
|
39
|
+
const coveragePercent = coveragePercentFrom(c);
|
|
40
|
+
const testFramework = c.testFramework?.name ?? null;
|
|
41
|
+
const commentedCodeRatio = c.structural?.commentedCodeRatio ?? null;
|
|
28
42
|
let score;
|
|
29
43
|
if (m.testFiles === 0) {
|
|
30
44
|
score = 0;
|
|
@@ -35,16 +49,19 @@ function scoreTest(m) {
|
|
|
35
49
|
score += 10;
|
|
36
50
|
if (m.testsPass === true)
|
|
37
51
|
score += 15;
|
|
38
|
-
if (
|
|
52
|
+
if (coveragePercent !== null && coveragePercent >= 60)
|
|
39
53
|
score += 10;
|
|
40
|
-
if (
|
|
54
|
+
if (coveragePercent !== null && coveragePercent >= 80)
|
|
41
55
|
score += 5;
|
|
42
56
|
}
|
|
43
|
-
|
|
44
|
-
if (m.commentedCodeRatio !== null && m.commentedCodeRatio > 0.5) {
|
|
57
|
+
if (commentedCodeRatio !== null && commentedCodeRatio > 0.5) {
|
|
45
58
|
score -= 15;
|
|
46
59
|
}
|
|
47
60
|
score = clamp(score);
|
|
61
|
+
// Schema v11: `metrics` surfaces only the non-capability signals
|
|
62
|
+
// (filesystem counts, derived ratios). Capability-owned values live in
|
|
63
|
+
// `report.capabilities.coverage` / `testFramework` / `structural` so
|
|
64
|
+
// downstream consumers read them from one place.
|
|
48
65
|
return {
|
|
49
66
|
score,
|
|
50
67
|
maxScore: 100,
|
|
@@ -54,34 +71,34 @@ function scoreTest(m) {
|
|
|
54
71
|
testFiles: m.testFiles,
|
|
55
72
|
testRatio: Math.round(testRatio * 100) / 100,
|
|
56
73
|
testsPass: m.testsPass,
|
|
57
|
-
coveragePercent: m.coveragePercent,
|
|
58
74
|
coverageConfigExists: m.coverageConfigExists,
|
|
59
|
-
testFramework: m.testFramework,
|
|
60
|
-
commentedCodeRatio: m.commentedCodeRatio,
|
|
61
75
|
},
|
|
62
76
|
details: m.testFiles === 0
|
|
63
77
|
? `No test files found across ${m.sourceFiles} source files. 0% test coverage.`
|
|
64
78
|
: `${m.testFiles} test files for ${m.sourceFiles} source files (ratio: ${(testRatio * 100).toFixed(1)}%). ` +
|
|
65
79
|
`Tests ${m.testsPass === true ? 'pass' : m.testsPass === false ? 'fail' : 'not run'}. ` +
|
|
66
|
-
(
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
(m.commentedCodeRatio !== null && m.commentedCodeRatio > 0.5
|
|
71
|
-
? ` Warning: ${(m.commentedCodeRatio * 100).toFixed(0)}% of source files appear to contain only comments.`
|
|
80
|
+
(coveragePercent !== null ? `Coverage: ${coveragePercent}%. ` : 'No coverage data. ') +
|
|
81
|
+
(testFramework ? `Framework: ${testFramework}.` : '') +
|
|
82
|
+
(commentedCodeRatio !== null && commentedCodeRatio > 0.5
|
|
83
|
+
? ` Warning: ${(commentedCodeRatio * 100).toFixed(0)}% of source files appear to contain only comments.`
|
|
72
84
|
: ''),
|
|
73
85
|
};
|
|
74
86
|
}
|
|
75
87
|
/** Code Quality: 0-100 */
|
|
76
|
-
function scoreQuality(
|
|
88
|
+
function scoreQuality(input) {
|
|
89
|
+
const m = input.metrics;
|
|
90
|
+
const c = input.capabilities;
|
|
77
91
|
const sourceCount = Math.max(m.sourceFiles, 1);
|
|
92
|
+
const lintErrors = (c.lint?.counts.critical ?? 0) + (c.lint?.counts.high ?? 0);
|
|
93
|
+
const lintWarnings = (c.lint?.counts.medium ?? 0) + (c.lint?.counts.low ?? 0);
|
|
94
|
+
const lintTool = c.lint?.tool ?? null;
|
|
95
|
+
const maxFunctionsInFile = c.structural?.maxFunctionsInFile ?? null;
|
|
96
|
+
const deadImportCount = c.structural?.deadImportCount ?? null;
|
|
78
97
|
let score = 100;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
const errorRatio = m.lintErrors / sourceCount;
|
|
98
|
+
if (lintErrors > 0) {
|
|
99
|
+
const errorRatio = lintErrors / sourceCount;
|
|
82
100
|
score -= Math.min(errorRatio * 100, 40);
|
|
83
101
|
}
|
|
84
|
-
// Large files
|
|
85
102
|
if (m.filesOver500Lines > 5)
|
|
86
103
|
score -= 10;
|
|
87
104
|
if (m.filesOver500Lines > 20)
|
|
@@ -90,7 +107,6 @@ function scoreQuality(m) {
|
|
|
90
107
|
score -= 10;
|
|
91
108
|
if (m.largestFileLines > 10000)
|
|
92
109
|
score -= 10;
|
|
93
|
-
// Console/debug statements
|
|
94
110
|
const consoleDensity = m.consoleLogCount / sourceCount;
|
|
95
111
|
if (consoleDensity > 3)
|
|
96
112
|
score -= 15;
|
|
@@ -98,7 +114,6 @@ function scoreQuality(m) {
|
|
|
98
114
|
score -= 10;
|
|
99
115
|
else if (consoleDensity > 0.3)
|
|
100
116
|
score -= 5;
|
|
101
|
-
// Loose typing
|
|
102
117
|
const anyDensity = m.anyTypeCount / sourceCount;
|
|
103
118
|
if (anyDensity > 10)
|
|
104
119
|
score -= 15;
|
|
@@ -106,45 +121,42 @@ function scoreQuality(m) {
|
|
|
106
121
|
score -= 10;
|
|
107
122
|
else if (anyDensity > 1)
|
|
108
123
|
score -= 5;
|
|
109
|
-
// Type errors
|
|
110
124
|
if (m.typeErrors !== null && m.typeErrors > 0) {
|
|
111
125
|
score -= Math.min((m.typeErrors / sourceCount) * 50, 15);
|
|
112
126
|
}
|
|
113
|
-
|
|
114
|
-
if (m.maxFunctionsInFile !== null && m.maxFunctionsInFile > 50)
|
|
127
|
+
if (maxFunctionsInFile !== null && maxFunctionsInFile > 50)
|
|
115
128
|
score -= 10;
|
|
116
|
-
if (
|
|
129
|
+
if (deadImportCount !== null && deadImportCount > 20)
|
|
117
130
|
score -= 5;
|
|
118
131
|
score = clamp(score);
|
|
132
|
+
// Schema v11: `metrics` surfaces only the non-capability signals.
|
|
133
|
+
// Lint counts + tool live in `report.capabilities.lint`; god-file +
|
|
134
|
+
// dead-import stats live in `report.capabilities.structural`.
|
|
119
135
|
return {
|
|
120
136
|
score,
|
|
121
137
|
maxScore: 100,
|
|
122
138
|
status: status(score),
|
|
123
139
|
metrics: {
|
|
124
|
-
lintErrors: m.lintErrors,
|
|
125
|
-
lintWarnings: m.lintWarnings,
|
|
126
|
-
lintTool: m.lintTool,
|
|
127
140
|
filesOver500Lines: m.filesOver500Lines,
|
|
128
141
|
largestFileLines: m.largestFileLines,
|
|
129
142
|
largestFilePath: m.largestFilePath,
|
|
130
143
|
consoleLogCount: m.consoleLogCount,
|
|
131
144
|
anyTypeCount: m.anyTypeCount,
|
|
132
145
|
typeErrors: m.typeErrors,
|
|
133
|
-
maxFunctionsInFile: m.maxFunctionsInFile,
|
|
134
|
-
deadImportCount: m.deadImportCount,
|
|
135
146
|
},
|
|
136
|
-
details: `${
|
|
137
|
-
(
|
|
147
|
+
details: `${lintErrors} lint errors, ${lintWarnings} warnings` +
|
|
148
|
+
(lintTool ? ` (${lintTool})` : '') +
|
|
138
149
|
`. ${m.filesOver500Lines} files exceed 500 lines` +
|
|
139
150
|
`. Largest file: ${m.largestFilePath} (${m.largestFileLines} lines)` +
|
|
140
151
|
`. ${m.consoleLogCount} console/debug statements` +
|
|
141
152
|
(m.anyTypeCount > 0 ? `. ${m.anyTypeCount} loose type annotations` : '') +
|
|
142
|
-
(
|
|
153
|
+
(maxFunctionsInFile !== null ? `. Densest file: ${maxFunctionsInFile} functions` : '') +
|
|
143
154
|
'.',
|
|
144
155
|
};
|
|
145
156
|
}
|
|
146
157
|
/** Documentation: 0-100 */
|
|
147
|
-
function scoreDocumentation(
|
|
158
|
+
function scoreDocumentation(input) {
|
|
159
|
+
const m = input.metrics;
|
|
148
160
|
const sourceCount = Math.max(m.sourceFiles, 1);
|
|
149
161
|
let score = 0;
|
|
150
162
|
if (m.readmeExists) {
|
|
@@ -196,67 +208,70 @@ function scoreDocumentation(m) {
|
|
|
196
208
|
};
|
|
197
209
|
}
|
|
198
210
|
/** Security: 0-100 */
|
|
199
|
-
function scoreSecurity(
|
|
211
|
+
function scoreSecurity(input) {
|
|
212
|
+
const m = input.metrics;
|
|
213
|
+
const c = input.capabilities;
|
|
214
|
+
const secretFindings = c.secrets?.findings.length ?? 0;
|
|
215
|
+
const depVulnCritical = c.depVulns?.counts.critical ?? 0;
|
|
216
|
+
const depVulnHigh = c.depVulns?.counts.high ?? 0;
|
|
217
|
+
const depVulnMedium = c.depVulns?.counts.medium ?? 0;
|
|
218
|
+
const depVulnLow = c.depVulns?.counts.low ?? 0;
|
|
219
|
+
const depAuditTool = c.depVulns?.tool ?? null;
|
|
200
220
|
let score = 100;
|
|
201
|
-
|
|
202
|
-
if (m.secretFindings > 10)
|
|
221
|
+
if (secretFindings > 10)
|
|
203
222
|
score -= 25;
|
|
204
|
-
else if (
|
|
223
|
+
else if (secretFindings > 5)
|
|
205
224
|
score -= 20;
|
|
206
|
-
else if (
|
|
225
|
+
else if (secretFindings > 0)
|
|
207
226
|
score -= 15;
|
|
208
|
-
// Private keys in repo (max -20)
|
|
209
227
|
if (m.privateKeyFiles > 0)
|
|
210
228
|
score -= 20;
|
|
211
|
-
// eval/exec (max -10)
|
|
212
229
|
if (m.evalCount > 3)
|
|
213
230
|
score -= 10;
|
|
214
231
|
else if (m.evalCount > 0)
|
|
215
232
|
score -= 5;
|
|
216
|
-
// .env in git (max -10)
|
|
217
233
|
if (m.envFilesInGit > 0)
|
|
218
234
|
score -= 10;
|
|
219
|
-
// TLS disabled (max -10)
|
|
220
235
|
if (m.tlsDisabledCount > 0)
|
|
221
236
|
score -= 10;
|
|
222
|
-
|
|
223
|
-
if (m.depVulnCritical > 0)
|
|
237
|
+
if (depVulnCritical > 0)
|
|
224
238
|
score -= 15;
|
|
225
|
-
if (
|
|
239
|
+
if (depVulnHigh > 5)
|
|
226
240
|
score -= 10;
|
|
227
|
-
else if (
|
|
241
|
+
else if (depVulnHigh > 0)
|
|
228
242
|
score -= 5;
|
|
229
243
|
score = clamp(score);
|
|
230
244
|
return {
|
|
231
245
|
score,
|
|
232
246
|
maxScore: 100,
|
|
233
247
|
status: status(score),
|
|
248
|
+
// Schema v11: `metrics` surfaces only the non-capability signals.
|
|
249
|
+
// Secret findings live in `report.capabilities.secrets`; dep-vuln
|
|
250
|
+
// counts + audit-tool name live in `report.capabilities.depVulns`.
|
|
234
251
|
metrics: {
|
|
235
|
-
secretFindings: m.secretFindings,
|
|
236
252
|
privateKeyFiles: m.privateKeyFiles,
|
|
237
253
|
evalCount: m.evalCount,
|
|
238
254
|
envFilesInGit: m.envFilesInGit,
|
|
239
255
|
tlsDisabledCount: m.tlsDisabledCount,
|
|
240
|
-
depVulnCritical: m.depVulnCritical,
|
|
241
|
-
depVulnHigh: m.depVulnHigh,
|
|
242
|
-
depVulnMedium: m.depVulnMedium,
|
|
243
|
-
depVulnLow: m.depVulnLow,
|
|
244
|
-
depAuditTool: m.depAuditTool,
|
|
245
256
|
},
|
|
246
|
-
details: `${
|
|
257
|
+
details: `${secretFindings} hardcoded secret patterns found` +
|
|
247
258
|
`. ${m.privateKeyFiles} private key files in repo` +
|
|
248
259
|
`. ${m.evalCount} eval/exec calls` +
|
|
249
260
|
`. ${m.envFilesInGit} .env files tracked in git` +
|
|
250
261
|
`. ${m.tlsDisabledCount} TLS verification disabled` +
|
|
251
|
-
`. Dependency vulns: ${
|
|
252
|
-
(
|
|
262
|
+
`. Dependency vulns: ${depVulnCritical} critical, ${depVulnHigh} high, ${depVulnMedium} medium, ${depVulnLow} low` +
|
|
263
|
+
(depAuditTool ? ` (${depAuditTool})` : '') +
|
|
253
264
|
'.',
|
|
254
265
|
};
|
|
255
266
|
}
|
|
256
267
|
/** Maintainability: 0-100 */
|
|
257
|
-
function scoreMaintainability(
|
|
268
|
+
function scoreMaintainability(input) {
|
|
269
|
+
const m = input.metrics;
|
|
270
|
+
const c = input.capabilities;
|
|
271
|
+
const godNodeCount = c.structural?.godNodeCount ?? null;
|
|
272
|
+
const communityCount = c.structural?.communityCount ?? null;
|
|
273
|
+
const avgCohesion = c.structural?.avgCohesion ?? null;
|
|
258
274
|
let score = 70;
|
|
259
|
-
// God files penalty
|
|
260
275
|
if (m.largestFileLines > 10000)
|
|
261
276
|
score -= 25;
|
|
262
277
|
else if (m.largestFileLines > 5000)
|
|
@@ -275,7 +290,6 @@ function scoreMaintainability(m) {
|
|
|
275
290
|
score -= 10;
|
|
276
291
|
else if (m.consoleLogCount > 100)
|
|
277
292
|
score -= 5;
|
|
278
|
-
// Outdated Node engine
|
|
279
293
|
if (m.nodeEngineVersion) {
|
|
280
294
|
const majorMatch = m.nodeEngineVersion.match(/(\d+)/);
|
|
281
295
|
if (majorMatch) {
|
|
@@ -286,26 +300,27 @@ function scoreMaintainability(m) {
|
|
|
286
300
|
score -= 5;
|
|
287
301
|
}
|
|
288
302
|
}
|
|
289
|
-
// Small codebase bonus
|
|
290
303
|
if (m.sourceFiles < 50)
|
|
291
304
|
score += 10;
|
|
292
305
|
if (m.sourceFiles < 20)
|
|
293
306
|
score += 5;
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
const godRatio = m.godNodeCount / Math.max(m.sourceFiles, 1);
|
|
307
|
+
if (godNodeCount !== null) {
|
|
308
|
+
const godRatio = godNodeCount / Math.max(m.sourceFiles, 1);
|
|
297
309
|
if (godRatio > 0.1)
|
|
298
310
|
score -= 10;
|
|
299
311
|
else if (godRatio > 0.05)
|
|
300
312
|
score -= 5;
|
|
301
313
|
}
|
|
302
|
-
if (
|
|
314
|
+
if (avgCohesion !== null && avgCohesion < 0.15)
|
|
303
315
|
score -= 5;
|
|
304
316
|
score = clamp(score);
|
|
305
317
|
return {
|
|
306
318
|
score,
|
|
307
319
|
maxScore: 100,
|
|
308
320
|
status: status(score),
|
|
321
|
+
// Schema v11: `metrics` surfaces only the non-capability signals.
|
|
322
|
+
// AST-derived stats (god-node / community / cohesion / orphan module
|
|
323
|
+
// counts) live in `report.capabilities.structural`.
|
|
309
324
|
metrics: {
|
|
310
325
|
sourceFiles: m.sourceFiles,
|
|
311
326
|
controllers: m.controllers,
|
|
@@ -314,23 +329,20 @@ function scoreMaintainability(m) {
|
|
|
314
329
|
largestFileLines: m.largestFileLines,
|
|
315
330
|
filesOver500Lines: m.filesOver500Lines,
|
|
316
331
|
nodeEngineVersion: m.nodeEngineVersion,
|
|
317
|
-
godNodeCount: m.godNodeCount,
|
|
318
|
-
communityCount: m.communityCount,
|
|
319
|
-
avgCohesion: m.avgCohesion,
|
|
320
|
-
orphanModuleCount: m.orphanModuleCount,
|
|
321
332
|
},
|
|
322
333
|
details: `${m.sourceFiles} source files across ${m.directories} directories` +
|
|
323
334
|
`. ${m.controllers} controllers/handlers, ${m.models} models` +
|
|
324
335
|
`. Largest file: ${m.largestFileLines} lines` +
|
|
325
336
|
`. ${m.filesOver500Lines} files over 500 lines` +
|
|
326
337
|
(m.nodeEngineVersion ? `. Node engine: ${m.nodeEngineVersion}` : '') +
|
|
327
|
-
(
|
|
328
|
-
(
|
|
338
|
+
(communityCount !== null ? `. ${communityCount} architectural communities` : '') +
|
|
339
|
+
(avgCohesion !== null ? `. Avg cohesion: ${avgCohesion.toFixed(2)}` : '') +
|
|
329
340
|
'.',
|
|
330
341
|
};
|
|
331
342
|
}
|
|
332
343
|
/** Developer Experience: 0-100 */
|
|
333
|
-
function scoreDeveloperExperience(
|
|
344
|
+
function scoreDeveloperExperience(input) {
|
|
345
|
+
const m = input.metrics;
|
|
334
346
|
let score = 0;
|
|
335
347
|
if (m.ciConfigCount > 0)
|
|
336
348
|
score += 20;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../src/analyzers/scoring.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../../src/analyzers/scoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ function buildSecurityDetailed(report) {
|
|
|
10
10
|
const actions = (0, remediation_1.rank)((0, actions_1.buildSecurityActions)(report), counts, scoring_1.scoreSecurityCounts);
|
|
11
11
|
return {
|
|
12
12
|
...report,
|
|
13
|
-
schemaVersion: '
|
|
13
|
+
schemaVersion: '11',
|
|
14
14
|
securityScore: (0, scoring_1.scoreSecurityCounts)(counts).score,
|
|
15
15
|
actions,
|
|
16
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detailed.js","sourceRoot":"","sources":["../../../src/analyzers/security/detailed.ts"],"names":[],"mappings":";;AAcA,sDASC;AAID,wEAsHC;AA7ID,gDAAoD;AACpD,uCAAmE;AACnE,uCAAgE;AAQhE,SAAgB,qBAAqB,CAAC,MAAsB;IAC1D,MAAM,MAAM,GAAG,IAAA,0BAAgB,EAAC,MAAM,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,IAAA,kBAAI,EAAC,IAAA,8BAAoB,EAAC,MAAM,CAAC,EAAE,MAAM,EAAE,6BAAmB,CAAC,CAAC;IAChF,OAAO;QACL,GAAG,MAAM;QACT,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"detailed.js","sourceRoot":"","sources":["../../../src/analyzers/security/detailed.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,35 @@
|
|
|
1
1
|
import { SecurityFinding, DepVulnSummary } from './types';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Secrets are a global capability: one scanner (gitleaks today) runs once
|
|
4
|
+
* per repo and the dispatcher aggregates its envelope through the SECRETS
|
|
5
|
+
* descriptor. Exclusions + suppressions are already applied inside the
|
|
6
|
+
* provider (see tools/gitleaks.ts), so this layer only maps the envelope
|
|
7
|
+
* into the SecurityFinding shape used by the security report.
|
|
8
|
+
*/
|
|
9
|
+
export declare function gatherSecrets(cwd: string): Promise<{
|
|
3
10
|
findings: SecurityFinding[];
|
|
4
11
|
toolUsed: string | null;
|
|
5
|
-
}
|
|
12
|
+
}>;
|
|
6
13
|
export declare function gatherFileFindings(cwd: string): SecurityFinding[];
|
|
7
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Code-pattern findings are a global capability: the CODE_PATTERNS
|
|
16
|
+
* dispatcher routes to `semgrepProvider` (tools/semgrep.ts) which
|
|
17
|
+
* applies exclusions, suppressions, and the low-confidence filter
|
|
18
|
+
* internally. This layer only reshapes the envelope into
|
|
19
|
+
* `SecurityFinding[]` for the security report.
|
|
20
|
+
*/
|
|
21
|
+
export declare function gatherCodePatterns(cwd: string): Promise<{
|
|
8
22
|
findings: SecurityFinding[];
|
|
9
23
|
toolUsed: string | null;
|
|
10
|
-
}
|
|
11
|
-
|
|
24
|
+
}>;
|
|
25
|
+
/**
|
|
26
|
+
* Aggregates dependency vulnerabilities across every active language pack
|
|
27
|
+
* via the capability dispatcher. Replaces the prior hardcoded `npm audit`
|
|
28
|
+
* implementation that silently ignored Python/Go/Rust/C# deps.
|
|
29
|
+
*
|
|
30
|
+
* Returns `EMPTY_DEP_VULNS` when no active pack exposes a depVulns
|
|
31
|
+
* provider, or when every provider returned null (no tool installed
|
|
32
|
+
* / nothing to audit).
|
|
33
|
+
*/
|
|
34
|
+
export declare function gatherDepVulns(cwd: string): Promise<DepVulnSummary>;
|
|
12
35
|
//# sourceMappingURL=gather.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gather.d.ts","sourceRoot":"","sources":["../../../src/analyzers/security/gather.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gather.d.ts","sourceRoot":"","sources":["../../../src/analyzers/security/gather.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAU1D;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACxD,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC,CAeD;AAID,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,EAAE,CAuCjE;AAID;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7D,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC,CAeD;AAaD;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAmBzE"}
|