@vyuhlabs/dxkit 2.3.2 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +107 -0
- package/README.md +34 -19
- package/dist/analyzers/bom/index.d.ts.map +1 -1
- package/dist/analyzers/bom/index.js +7 -0
- package/dist/analyzers/bom/index.js.map +1 -1
- package/dist/analyzers/bom/types.d.ts +11 -0
- package/dist/analyzers/bom/types.d.ts.map +1 -1
- package/dist/analyzers/security/gather.d.ts.map +1 -1
- package/dist/analyzers/security/gather.js +15 -0
- package/dist/analyzers/security/gather.js.map +1 -1
- package/dist/analyzers/tools/fingerprint.d.ts +63 -0
- package/dist/analyzers/tools/fingerprint.d.ts.map +1 -0
- package/dist/analyzers/tools/fingerprint.js +82 -0
- package/dist/analyzers/tools/fingerprint.js.map +1 -0
- package/dist/analyzers/tools/osv-scanner-fix.d.ts +63 -0
- package/dist/analyzers/tools/osv-scanner-fix.d.ts.map +1 -0
- package/dist/analyzers/tools/osv-scanner-fix.js +202 -0
- package/dist/analyzers/tools/osv-scanner-fix.js.map +1 -0
- package/dist/analyzers/tools/semver-bump.d.ts +17 -0
- package/dist/analyzers/tools/semver-bump.d.ts.map +1 -0
- package/dist/analyzers/tools/semver-bump.js +30 -0
- package/dist/analyzers/tools/semver-bump.js.map +1 -0
- package/dist/analyzers/tools/tool-registry.d.ts.map +1 -1
- package/dist/analyzers/tools/tool-registry.js +20 -0
- package/dist/analyzers/tools/tool-registry.js.map +1 -1
- package/dist/analyzers/tools/upgrade-plan-resolver.d.ts +64 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.d.ts.map +1 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.js +146 -0
- package/dist/analyzers/tools/upgrade-plan-resolver.js.map +1 -0
- package/dist/languages/capabilities/types.d.ts +46 -2
- package/dist/languages/capabilities/types.d.ts.map +1 -1
- package/dist/languages/csharp.d.ts +33 -0
- package/dist/languages/csharp.d.ts.map +1 -1
- package/dist/languages/csharp.js +77 -38
- package/dist/languages/csharp.js.map +1 -1
- package/dist/languages/python.d.ts.map +1 -1
- package/dist/languages/python.js +13 -0
- package/dist/languages/python.js.map +1 -1
- package/dist/languages/rust.d.ts.map +1 -1
- package/dist/languages/rust.js +17 -1
- package/dist/languages/rust.js.map +1 -1
- package/dist/languages/typescript.d.ts.map +1 -1
- package/dist/languages/typescript.js +12 -1
- package/dist/languages/typescript.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* osv-scanner fix — Tier-2 upgrade-plan enricher for the TypeScript pack.
|
|
3
|
+
*
|
|
4
|
+
* `npm audit` (Tier-1, typescript pack's primary dep-vuln source) produces
|
|
5
|
+
* per-advisory findings with `fixedVersion` and, for transitive advisories,
|
|
6
|
+
* a free-text `upgradeAdvice` like "Upgrade vitest to 4.1.5 [major]
|
|
7
|
+
* (transitive fix)". That's good for humans reading markdown but leaves
|
|
8
|
+
* autonomous upgrade bots to re-parse the string.
|
|
9
|
+
*
|
|
10
|
+
* `osv-scanner fix --format json --manifest <pkg.json> --lockfile <lock>`
|
|
11
|
+
* produces a structured plan: for each proposed patch, which top-level
|
|
12
|
+
* package to bump (`packageUpdates[]`) and which advisories it would
|
|
13
|
+
* resolve (`fixed[]`). This module wraps that call and stamps the
|
|
14
|
+
* structured result onto each matching `DepVulnFinding.upgradePlan` —
|
|
15
|
+
* the typed sibling to the free-text `upgradeAdvice` that 10h.6.6 added.
|
|
16
|
+
*
|
|
17
|
+
* Degradation: if osv-scanner isn't installed, runs fine but returns
|
|
18
|
+
* zero enrichments. The underlying npm-audit flow populates
|
|
19
|
+
* `upgradeAdvice` either way. Downstream consumers that want the
|
|
20
|
+
* structured form check `upgradePlan` presence.
|
|
21
|
+
*/
|
|
22
|
+
import type { DepVulnFinding, DepVulnUpgradePlan } from '../../languages/capabilities/types';
|
|
23
|
+
/**
|
|
24
|
+
* Run osv-scanner against a TypeScript project and return a map keyed on
|
|
25
|
+
* the `(package, installedVersion, advisoryId)` tuple → upgradePlan. Caller
|
|
26
|
+
* iterates findings and copies the plan onto each match.
|
|
27
|
+
*
|
|
28
|
+
* Returns an empty map when:
|
|
29
|
+
* - osv-scanner binary is not available (tool missing — soft-fail)
|
|
30
|
+
* - package.json or package-lock.json is absent (osv-scanner fix needs both)
|
|
31
|
+
* - osv-scanner exits with parse-breaking output (log and degrade)
|
|
32
|
+
*
|
|
33
|
+
* Never throws. `gatherTsDepVulnsResult` calls this unconditionally and
|
|
34
|
+
* treats the empty map as "no enrichment available".
|
|
35
|
+
*/
|
|
36
|
+
export declare function gatherOsvScannerFixPlans(cwd: string): Promise<Map<string, DepVulnUpgradePlan>>;
|
|
37
|
+
/**
|
|
38
|
+
* Parse raw `osv-scanner fix --format json` stdout into a plan-lookup map.
|
|
39
|
+
*
|
|
40
|
+
* The command prefixes JSON with a warning line when it falls back to
|
|
41
|
+
* `npm install --legacy-peer-deps` (seen on 2026-04-24's dxkit sample
|
|
42
|
+
* capture); skip anything before the first `{`. On parse failure,
|
|
43
|
+
* returns an empty map rather than throwing — enrichment is best-effort.
|
|
44
|
+
*
|
|
45
|
+
* Exported for test coverage.
|
|
46
|
+
*/
|
|
47
|
+
export declare function parseOsvScannerFixOutput(raw: string): Map<string, DepVulnUpgradePlan>;
|
|
48
|
+
/**
|
|
49
|
+
* Stamp upgradePlan on every finding with a matching `(package,
|
|
50
|
+
* installedVersion, id)` tuple in the provided plan map. In-place;
|
|
51
|
+
* finds with no matching plan are left unchanged. Idempotent.
|
|
52
|
+
*/
|
|
53
|
+
export declare function enrichWithUpgradePlans(findings: DepVulnFinding[], plans: Map<string, DepVulnUpgradePlan>): number;
|
|
54
|
+
/** Shared key between plan-map construction and finding lookup.
|
|
55
|
+
*
|
|
56
|
+
* GHSA/CVE/SNYK IDs are case-insensitive per their respective specs but
|
|
57
|
+
* producers disagree in practice — npm-audit emits uppercase
|
|
58
|
+
* (`GHSA-W5HQ-...`), osv-scanner emits lowercase (`GHSA-w5hq-...`).
|
|
59
|
+
* Lowercasing the ID component keeps plan lookups hit-or-miss-free when
|
|
60
|
+
* the two merge. Package names in npm are already lowercase; version
|
|
61
|
+
* strings have no case. */
|
|
62
|
+
export declare function planKey(pkg: string, version: string, advisoryId: string): string;
|
|
63
|
+
//# sourceMappingURL=osv-scanner-fix.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"osv-scanner-fix.d.ts","sourceRoot":"","sources":["../../../src/analyzers/tools/osv-scanner-fix.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAqC7F;;;;;;;;;;;;GAYG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CA+B1C;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAwCrF;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,cAAc,EAAE,EAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,GACrC,MAAM,CAaR;AAED;;;;;;;4BAO4B;AAC5B,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEhF"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* osv-scanner fix — Tier-2 upgrade-plan enricher for the TypeScript pack.
|
|
4
|
+
*
|
|
5
|
+
* `npm audit` (Tier-1, typescript pack's primary dep-vuln source) produces
|
|
6
|
+
* per-advisory findings with `fixedVersion` and, for transitive advisories,
|
|
7
|
+
* a free-text `upgradeAdvice` like "Upgrade vitest to 4.1.5 [major]
|
|
8
|
+
* (transitive fix)". That's good for humans reading markdown but leaves
|
|
9
|
+
* autonomous upgrade bots to re-parse the string.
|
|
10
|
+
*
|
|
11
|
+
* `osv-scanner fix --format json --manifest <pkg.json> --lockfile <lock>`
|
|
12
|
+
* produces a structured plan: for each proposed patch, which top-level
|
|
13
|
+
* package to bump (`packageUpdates[]`) and which advisories it would
|
|
14
|
+
* resolve (`fixed[]`). This module wraps that call and stamps the
|
|
15
|
+
* structured result onto each matching `DepVulnFinding.upgradePlan` —
|
|
16
|
+
* the typed sibling to the free-text `upgradeAdvice` that 10h.6.6 added.
|
|
17
|
+
*
|
|
18
|
+
* Degradation: if osv-scanner isn't installed, runs fine but returns
|
|
19
|
+
* zero enrichments. The underlying npm-audit flow populates
|
|
20
|
+
* `upgradeAdvice` either way. Downstream consumers that want the
|
|
21
|
+
* structured form check `upgradePlan` presence.
|
|
22
|
+
*/
|
|
23
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
24
|
+
if (k2 === undefined) k2 = k;
|
|
25
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
26
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
27
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
28
|
+
}
|
|
29
|
+
Object.defineProperty(o, k2, desc);
|
|
30
|
+
}) : (function(o, m, k, k2) {
|
|
31
|
+
if (k2 === undefined) k2 = k;
|
|
32
|
+
o[k2] = m[k];
|
|
33
|
+
}));
|
|
34
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
35
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
36
|
+
}) : function(o, v) {
|
|
37
|
+
o["default"] = v;
|
|
38
|
+
});
|
|
39
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
40
|
+
var ownKeys = function(o) {
|
|
41
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
42
|
+
var ar = [];
|
|
43
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
44
|
+
return ar;
|
|
45
|
+
};
|
|
46
|
+
return ownKeys(o);
|
|
47
|
+
};
|
|
48
|
+
return function (mod) {
|
|
49
|
+
if (mod && mod.__esModule) return mod;
|
|
50
|
+
var result = {};
|
|
51
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
52
|
+
__setModuleDefault(result, mod);
|
|
53
|
+
return result;
|
|
54
|
+
};
|
|
55
|
+
})();
|
|
56
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
57
|
+
exports.gatherOsvScannerFixPlans = gatherOsvScannerFixPlans;
|
|
58
|
+
exports.parseOsvScannerFixOutput = parseOsvScannerFixOutput;
|
|
59
|
+
exports.enrichWithUpgradePlans = enrichWithUpgradePlans;
|
|
60
|
+
exports.planKey = planKey;
|
|
61
|
+
const child_process_1 = require("child_process");
|
|
62
|
+
const fs = __importStar(require("fs"));
|
|
63
|
+
const path = __importStar(require("path"));
|
|
64
|
+
const semver_bump_1 = require("./semver-bump");
|
|
65
|
+
const tool_registry_1 = require("./tool-registry");
|
|
66
|
+
/**
|
|
67
|
+
* Run osv-scanner against a TypeScript project and return a map keyed on
|
|
68
|
+
* the `(package, installedVersion, advisoryId)` tuple → upgradePlan. Caller
|
|
69
|
+
* iterates findings and copies the plan onto each match.
|
|
70
|
+
*
|
|
71
|
+
* Returns an empty map when:
|
|
72
|
+
* - osv-scanner binary is not available (tool missing — soft-fail)
|
|
73
|
+
* - package.json or package-lock.json is absent (osv-scanner fix needs both)
|
|
74
|
+
* - osv-scanner exits with parse-breaking output (log and degrade)
|
|
75
|
+
*
|
|
76
|
+
* Never throws. `gatherTsDepVulnsResult` calls this unconditionally and
|
|
77
|
+
* treats the empty map as "no enrichment available".
|
|
78
|
+
*/
|
|
79
|
+
async function gatherOsvScannerFixPlans(cwd) {
|
|
80
|
+
const manifestRel = 'package.json';
|
|
81
|
+
const lockfileRel = 'package-lock.json';
|
|
82
|
+
const manifestAbs = path.join(cwd, manifestRel);
|
|
83
|
+
const lockfileAbs = path.join(cwd, lockfileRel);
|
|
84
|
+
if (!fs.existsSync(manifestAbs) || !fs.existsSync(lockfileAbs)) {
|
|
85
|
+
return new Map();
|
|
86
|
+
}
|
|
87
|
+
const tool = (0, tool_registry_1.findTool)(tool_registry_1.TOOL_DEFS['osv-scanner'], cwd);
|
|
88
|
+
if (!tool.available || !tool.path)
|
|
89
|
+
return new Map();
|
|
90
|
+
// Quote paths defensively — repo paths with spaces break shell parsing
|
|
91
|
+
// otherwise, and osv-scanner's CLI is shell-parsed.
|
|
92
|
+
const cmd = `${tool.path} fix --format json --manifest ${JSON.stringify(manifestRel)} ` +
|
|
93
|
+
`--lockfile ${JSON.stringify(lockfileRel)}`;
|
|
94
|
+
let raw;
|
|
95
|
+
try {
|
|
96
|
+
raw = (0, child_process_1.execSync)(cmd, {
|
|
97
|
+
cwd,
|
|
98
|
+
encoding: 'utf8',
|
|
99
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
100
|
+
timeout: 120_000,
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
catch (err) {
|
|
104
|
+
// osv-scanner exits non-zero whenever it finds vulns, even though the
|
|
105
|
+
// JSON payload is complete. Capture stdout from the error and proceed.
|
|
106
|
+
const e = err;
|
|
107
|
+
if (!e.stdout)
|
|
108
|
+
return new Map();
|
|
109
|
+
raw = typeof e.stdout === 'string' ? e.stdout : e.stdout.toString('utf8');
|
|
110
|
+
}
|
|
111
|
+
return parseOsvScannerFixOutput(raw);
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Parse raw `osv-scanner fix --format json` stdout into a plan-lookup map.
|
|
115
|
+
*
|
|
116
|
+
* The command prefixes JSON with a warning line when it falls back to
|
|
117
|
+
* `npm install --legacy-peer-deps` (seen on 2026-04-24's dxkit sample
|
|
118
|
+
* capture); skip anything before the first `{`. On parse failure,
|
|
119
|
+
* returns an empty map rather than throwing — enrichment is best-effort.
|
|
120
|
+
*
|
|
121
|
+
* Exported for test coverage.
|
|
122
|
+
*/
|
|
123
|
+
function parseOsvScannerFixOutput(raw) {
|
|
124
|
+
const plans = new Map();
|
|
125
|
+
const jsonStart = raw.indexOf('{');
|
|
126
|
+
if (jsonStart < 0)
|
|
127
|
+
return plans;
|
|
128
|
+
let parsed;
|
|
129
|
+
try {
|
|
130
|
+
parsed = JSON.parse(raw.slice(jsonStart));
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
return plans;
|
|
134
|
+
}
|
|
135
|
+
for (const patch of parsed.patches ?? []) {
|
|
136
|
+
const updates = patch.packageUpdates;
|
|
137
|
+
if (!updates || updates.length === 0)
|
|
138
|
+
continue;
|
|
139
|
+
const fixedIds = (patch.fixed ?? []).map((f) => f.id).sort();
|
|
140
|
+
// Each patch may bundle multiple top-level updates (e.g. `vitest` +
|
|
141
|
+
// `@vitest/coverage-v8` as a coordinated bump). The finding carries
|
|
142
|
+
// only ONE upgradePlan; pick the direct-dep update as the "parent"
|
|
143
|
+
// — it's the one a human would type — and attach the full patch
|
|
144
|
+
// set via `patches[]`. Transitive-only updates fall back to the
|
|
145
|
+
// first packageUpdate.
|
|
146
|
+
const directUpdate = updates.find((u) => !u.transitive) ?? updates[0];
|
|
147
|
+
const plan = {
|
|
148
|
+
parent: directUpdate.name,
|
|
149
|
+
parentVersion: normalizeVersion(directUpdate.versionTo),
|
|
150
|
+
patches: fixedIds,
|
|
151
|
+
breaking: (0, semver_bump_1.isMajorBump)(normalizeVersion(directUpdate.versionFrom), normalizeVersion(directUpdate.versionTo)),
|
|
152
|
+
};
|
|
153
|
+
// Key every fixed advisory onto the same plan so renderers find it
|
|
154
|
+
// when iterating findings.
|
|
155
|
+
for (const fixed of patch.fixed ?? []) {
|
|
156
|
+
for (const pkg of fixed.packages ?? []) {
|
|
157
|
+
plans.set(planKey(pkg.name, pkg.version, fixed.id), plan);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return plans;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Stamp upgradePlan on every finding with a matching `(package,
|
|
165
|
+
* installedVersion, id)` tuple in the provided plan map. In-place;
|
|
166
|
+
* finds with no matching plan are left unchanged. Idempotent.
|
|
167
|
+
*/
|
|
168
|
+
function enrichWithUpgradePlans(findings, plans) {
|
|
169
|
+
if (plans.size === 0)
|
|
170
|
+
return 0;
|
|
171
|
+
let count = 0;
|
|
172
|
+
for (const f of findings) {
|
|
173
|
+
if (!f.installedVersion)
|
|
174
|
+
continue;
|
|
175
|
+
const key = planKey(f.package, f.installedVersion, f.id);
|
|
176
|
+
const plan = plans.get(key);
|
|
177
|
+
if (plan) {
|
|
178
|
+
f.upgradePlan = plan;
|
|
179
|
+
count++;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
return count;
|
|
183
|
+
}
|
|
184
|
+
/** Shared key between plan-map construction and finding lookup.
|
|
185
|
+
*
|
|
186
|
+
* GHSA/CVE/SNYK IDs are case-insensitive per their respective specs but
|
|
187
|
+
* producers disagree in practice — npm-audit emits uppercase
|
|
188
|
+
* (`GHSA-W5HQ-...`), osv-scanner emits lowercase (`GHSA-w5hq-...`).
|
|
189
|
+
* Lowercasing the ID component keeps plan lookups hit-or-miss-free when
|
|
190
|
+
* the two merge. Package names in npm are already lowercase; version
|
|
191
|
+
* strings have no case. */
|
|
192
|
+
function planKey(pkg, version, advisoryId) {
|
|
193
|
+
return `${pkg}\0${version}\0${advisoryId.toLowerCase()}`;
|
|
194
|
+
}
|
|
195
|
+
/** Strip leading semver range operators so the plan carries a concrete
|
|
196
|
+
* version string (what a consumer would write in a manifest). osv-scanner
|
|
197
|
+
* emits `^3.2.4` / `~1.2.0` in the relax strategy; the structured payload
|
|
198
|
+
* is cleaner without the prefix. */
|
|
199
|
+
function normalizeVersion(v) {
|
|
200
|
+
return v.replace(/^[\^~>=<\s]+/, '').trim();
|
|
201
|
+
}
|
|
202
|
+
//# sourceMappingURL=osv-scanner-fix.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"osv-scanner-fix.js","sourceRoot":"","sources":["../../../src/analyzers/tools/osv-scanner-fix.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared semver-bump classification used across language packs and the
|
|
3
|
+
* cross-pack resolver. Originally duplicated in
|
|
4
|
+
* `languages/{python,rust}.ts` + `analyzers/tools/osv-scanner-fix.ts`
|
|
5
|
+
* (Phases 10h.6.1–10h.6.3); consolidated here in 10h.6.4 so every pack
|
|
6
|
+
* and the transitive resolver agree on what "breaking" means.
|
|
7
|
+
*
|
|
8
|
+
* Convention:
|
|
9
|
+
* - Different major segment → breaking.
|
|
10
|
+
* - Pre-1.x (0.x) minor bump (0.5.0 → 0.6.0) → breaking. Semver says
|
|
11
|
+
* anything under 1.0 is development-unstable; npm-audit's own
|
|
12
|
+
* `isSemVerMajor` heuristic treats 0.x lines this way too.
|
|
13
|
+
* - Unparseable input → false (non-breaking). Conservative so we
|
|
14
|
+
* don't over-flag when we can't decide.
|
|
15
|
+
*/
|
|
16
|
+
export declare function isMajorBump(from: string, to: string): boolean;
|
|
17
|
+
//# sourceMappingURL=semver-bump.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semver-bump.d.ts","sourceRoot":"","sources":["../../../src/analyzers/tools/semver-bump.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAO7D"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared semver-bump classification used across language packs and the
|
|
4
|
+
* cross-pack resolver. Originally duplicated in
|
|
5
|
+
* `languages/{python,rust}.ts` + `analyzers/tools/osv-scanner-fix.ts`
|
|
6
|
+
* (Phases 10h.6.1–10h.6.3); consolidated here in 10h.6.4 so every pack
|
|
7
|
+
* and the transitive resolver agree on what "breaking" means.
|
|
8
|
+
*
|
|
9
|
+
* Convention:
|
|
10
|
+
* - Different major segment → breaking.
|
|
11
|
+
* - Pre-1.x (0.x) minor bump (0.5.0 → 0.6.0) → breaking. Semver says
|
|
12
|
+
* anything under 1.0 is development-unstable; npm-audit's own
|
|
13
|
+
* `isSemVerMajor` heuristic treats 0.x lines this way too.
|
|
14
|
+
* - Unparseable input → false (non-breaking). Conservative so we
|
|
15
|
+
* don't over-flag when we can't decide.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.isMajorBump = isMajorBump;
|
|
19
|
+
function isMajorBump(from, to) {
|
|
20
|
+
const fromParts = from.split('.').map((p) => parseInt(p, 10));
|
|
21
|
+
const toParts = to.split('.').map((p) => parseInt(p, 10));
|
|
22
|
+
if (fromParts.some(isNaN) || toParts.some(isNaN))
|
|
23
|
+
return false;
|
|
24
|
+
if ((fromParts[0] ?? 0) !== (toParts[0] ?? 0))
|
|
25
|
+
return true;
|
|
26
|
+
if ((fromParts[0] ?? 0) === 0 && (fromParts[1] ?? 0) !== (toParts[1] ?? 0))
|
|
27
|
+
return true;
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=semver-bump.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semver-bump.js","sourceRoot":"","sources":["../../../src/analyzers/tools/semver-bump.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAEH,kCAOC;AAPD,SAAgB,WAAW,CAAC,IAAY,EAAE,EAAU;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACxF,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../../src/analyzers/tools/tool-registry.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,QAA2D,CAAC;AA2BnF,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,eAAe,EAAE;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,SAAS,CAAC;IAClF,WAAW,EAAE,cAAc,CAAC;CAC7B;AAsHD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,CAiFtE;AAkBD,wDAAwD;AACxD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAO7D;AAMD,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../../src/analyzers/tools/tool-registry.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE7D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,QAA2D,CAAC;AA2BnF,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,eAAe,EAAE;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,oEAAoE;IACpE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,OAAO,GAAG,SAAS,CAAC;IAClF,WAAW,EAAE,cAAc,CAAC;CAC7B;AAsHD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,CAiFtE;AAkBD,wDAAwD;AACxD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAO7D;AAMD,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAiYpD,CAAC;AAMF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,eAAe,EAAE,CA0C3F;AAED,sDAAsD;AACtD,wBAAgB,aAAa,CAAC,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CAgB/F"}
|
|
@@ -430,6 +430,26 @@ exports.TOOL_DEFS = {
|
|
|
430
430
|
windows: 'builtin',
|
|
431
431
|
},
|
|
432
432
|
},
|
|
433
|
+
'osv-scanner': {
|
|
434
|
+
name: 'osv-scanner',
|
|
435
|
+
description: 'OSV.dev dependency scanner + fix planner — populates structured upgradePlan on dep-vuln findings (Tier-2, Node/npm pack)',
|
|
436
|
+
install: 'go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest',
|
|
437
|
+
check: 'osv-scanner --version',
|
|
438
|
+
for: 'node',
|
|
439
|
+
layer: 'language',
|
|
440
|
+
binaries: ['osv-scanner'],
|
|
441
|
+
// Go installs to $GOBIN (→ $GOPATH/bin by default, or ~/go/bin) which
|
|
442
|
+
// is typically in $PATH on dev machines. Probe the canonical default
|
|
443
|
+
// explicitly so detection works on machines that only have `go` in
|
|
444
|
+
// PATH but not `go/bin`.
|
|
445
|
+
probePaths: [path.join(os.homedir(), 'go', 'bin')],
|
|
446
|
+
versionCheck: 'osv-scanner --version 2>/dev/null',
|
|
447
|
+
installCommands: {
|
|
448
|
+
macos: 'brew install osv-scanner || go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest',
|
|
449
|
+
linux: 'go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest',
|
|
450
|
+
windows: 'go install github.com/google/osv-scanner/v2/cmd/osv-scanner@latest',
|
|
451
|
+
},
|
|
452
|
+
},
|
|
433
453
|
'license-checker-rseidelsohn': {
|
|
434
454
|
name: 'license-checker-rseidelsohn',
|
|
435
455
|
description: 'License inventory for npm dependencies (maintained fork of license-checker)',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../../src/analyzers/tools/tool-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../../src/analyzers/tools/tool-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cross-pack upgrade-plan resolver — Phase 10h.6.4.
|
|
3
|
+
*
|
|
4
|
+
* Runs after every pack has contributed its Tier-1/Tier-2 dep-vuln
|
|
5
|
+
* findings and the per-pack Tier-2 fix tools (osv-scanner fix in TS,
|
|
6
|
+
* pip-audit's fix_versions in Python, cargo-audit's patched[] in Rust)
|
|
7
|
+
* have stamped `upgradePlan` on whichever findings they could. This
|
|
8
|
+
* resolver fills the gaps in two passes:
|
|
9
|
+
*
|
|
10
|
+
* Pass 1 — plan reconciliation. osv-scanner's structured output
|
|
11
|
+
* frequently lists multiple advisories under one patch (e.g. a single
|
|
12
|
+
* `vitest ^2 → ^3` bump patches both vite + esbuild CVEs). Only the
|
|
13
|
+
* advisories in `patches[]` get stamped by 10h.6.1's enricher because
|
|
14
|
+
* it keys on (package, version, id). If another producer (npm-audit's
|
|
15
|
+
* default output, Snyk later) emits a finding for an advisory that
|
|
16
|
+
* ALSO appears in some plan's `patches[]` but with a different
|
|
17
|
+
* package/version tuple, the reconciliation pass stamps it too.
|
|
18
|
+
*
|
|
19
|
+
* Pass 2 — transitive free-text parse. npm-audit emits free-text
|
|
20
|
+
* `upgradeAdvice` like `"Upgrade @loopback/cli to 7.0.1 [major]
|
|
21
|
+
* (transitive fix)"` on transitive advisories. That string is
|
|
22
|
+
* structured data trapped in a string; this pass parses it into a
|
|
23
|
+
* proper `upgradePlan` when no better one is available. Conservative:
|
|
24
|
+
* only activates when `upgradeAdvice` matches the exact transitive-
|
|
25
|
+
* fix template the TS pack emits. Future producers that emit the
|
|
26
|
+
* same shape benefit automatically.
|
|
27
|
+
*
|
|
28
|
+
* Purity: mutates findings in place (stamps `upgradePlan`) and returns
|
|
29
|
+
* a count of additions. Never overwrites an existing plan — the
|
|
30
|
+
* per-pack producers are authoritative.
|
|
31
|
+
*/
|
|
32
|
+
import type { DepVulnFinding } from '../../languages/capabilities/types';
|
|
33
|
+
/** Result summary — useful for tests and for the security/gather caller
|
|
34
|
+
* that wants to log how much reconciliation actually happened. */
|
|
35
|
+
export interface ResolverStats {
|
|
36
|
+
reconciled: number;
|
|
37
|
+
fromFreeText: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Run the resolver over a flat finding set. Mutates in place; returns
|
|
41
|
+
* per-pass counts. Idempotent — re-running on the same set after
|
|
42
|
+
* resolver-stamping yields zero additions.
|
|
43
|
+
*/
|
|
44
|
+
export declare function resolveTransitiveUpgradePlans(findings: DepVulnFinding[]): ResolverStats;
|
|
45
|
+
/**
|
|
46
|
+
* Pass 1 — for every advisory id listed in any existing plan's
|
|
47
|
+
* `patches[]`, ensure the matching finding (if any, by id only) carries
|
|
48
|
+
* the same `upgradePlan`. Case-insensitive id matching matches the
|
|
49
|
+
* osv-scanner-fix planKey convention.
|
|
50
|
+
*
|
|
51
|
+
* Exported for test coverage.
|
|
52
|
+
*/
|
|
53
|
+
export declare function reconcileUpgradePlans(findings: DepVulnFinding[]): number;
|
|
54
|
+
/**
|
|
55
|
+
* Pass 2 — derive `upgradePlan` from the npm-audit-style transitive-fix
|
|
56
|
+
* `upgradeAdvice` free-text template. Activates only when the string
|
|
57
|
+
* matches exactly and no structured plan exists. Outputs a
|
|
58
|
+
* single-advisory plan (patches = [finding.id]) since the free-text
|
|
59
|
+
* template doesn't carry cross-advisory rollup.
|
|
60
|
+
*
|
|
61
|
+
* Exported for test coverage.
|
|
62
|
+
*/
|
|
63
|
+
export declare function stampFromFreeTextAdvice(findings: DepVulnFinding[]): number;
|
|
64
|
+
//# sourceMappingURL=upgrade-plan-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade-plan-resolver.d.ts","sourceRoot":"","sources":["../../../src/analyzers/tools/upgrade-plan-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,oCAAoC,CAAC;AAS7F;mEACmE;AACnE,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,aAAa,CAKvF;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAkCxE;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAgB1E"}
|