Context
Severity/CVSS alone does not rank urgency. When the local advisory corpus (or --package-manifest offline bundle) already carries EPSS or similar exploitability signals, machine-readable vg scan --vulns JSON should surface them so CI and agents can sort without a second tool — still local-first.
What to do
- Extend the vulns JSON contract to optionally include EPSS (and/or related exploitability fields) when present in the advisory data used for the scan.
- Omit the fields (or null) when absent — never invent scores; absent must not render as
0 if that conflicts with existing null-score rules.
- Document the fields; keep SARIF/human output behavior unchanged unless a trivial consistent addition is clearly better.
- No new default network dependency for EPSS fetches in offline/
--package-manifest mode.
Acceptance
Context
Severity/CVSS alone does not rank urgency. When the local advisory corpus (or
--package-manifestoffline bundle) already carries EPSS or similar exploitability signals, machine-readablevg scan --vulnsJSON should surface them so CI and agents can sort without a second tool — still local-first.What to do
0if that conflicts with existing null-score rules.--package-manifestmode.Acceptance
git commit -s)