feat(cve-watch): richer tracking issue — descriptions, severity, self-update #14
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/cve-watch-richer-issue"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Builds on the best-effort CVE list (#8) per the four enhancements requested. All best-effort and non-blocking — issue creation never fails.
1. Descriptions — each CVE renders as a collapsible
<details>block: summary = the kernel's one-line title, body = the explanatory text from the samevulns.gitrecord (capped atCVE_DESC_MAX=20 lines; fence markers stripped so it can't break out of the rendered code block).2. Severity — best-effort annotation from Red Hat's security feed (
access.redhat.com), e.g.Important (CVSS 7.8). The kernel CNA publishes no CVSS, so this is a secondary source, clearly labelled as Red Hat's rating, not the project's. Bounded byCVE_SEV_BUDGET=90s so a slow/blocked API can't stall the hourly job;CVE_SEVERITY=0disables it for offline tests.3. Snapshot timestamp — the list carries a UTC 'as of' line + a 're-check vulns.git before building' reminder, since the feed lags.
4. Self-update while open — instead of exiting when a tracking issue already exists, cve-watch diffs the CVE-ID set (not the whole body, so the changing timestamp is never a trigger) and, if more CVEs have since been attributed to the release, refreshes the body and posts a comment naming the new entries. Guards: never overwrite a populated list with an empty one (a transient feed failure yields zero IDs), and no edit/comment when unchanged (no hourly noise).
docs/users/cve-policy.mdupdated for all of the above, including that building the upstream tag already contains every fix in it regardless of CVE-assignment timing — so the list stays informational, never gating.Validated: shellcheck clean · yamllint relaxed clean · the
workflow-expressionsguard (#12) clean ·bash -non the issue step · offline + live (real Red Hat) unit tests against an actualvulns.gitsnapshot · diff/no-clobber logic simulated (unchanged/grew/empty).Operator note: adds best-effort egress to
access.redhat.com(on top ofkernel.googlesource.comfrom #8). If you enforce runner-setup.md's outbound allowlist, allowlist both — otherwise these details just degrade to 'omitted', never a failure.