Skip to content

feat(report): keep advisory corpus metadata in a collapsed HTML footer - #449

Merged
vibgrate-team merged 7 commits into
mainfrom
cursor/advisory-corpus-html-footer-ce5e
Oct 12, 2026
Merged

vibgrate-team merged 7 commits into
mainfrom
cursor/advisory-corpus-html-footer-ce5e

Conversation

@vibgrate-team

@vibgrate-team vibgrate-team commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

Summary

vg report --format html now names advisory-database provenance in a collapsed footer after the vulnerability, security, and other-finding tables, so that metadata does not push the summary and finding tables down.

The footer reads fields already stored on extended.vulnerabilities:

  • source — osv (OSV), manifest (offline package-version manifest), unreachable (Not checked), or none (No packages to check)
  • totalAdvisories, when it is a non-negative integer, including 0

A missing vulnerability block says "Not scanned". Vulnerability findings with no recorded source say "Not recorded". source: "unreachable" says "Not checked" and omits the count. An unknown source value is not copied onto the page. Strings are escaped like the rest of the page. The same artifact still produces the same HTML: no clock, no randomness, and the footer stays collapsed.

The Fix available only checkbox stays on the page. It starts unchecked. Checking it hides rows that do not name a fix version. The page file still contains every row, and the summary counts stay complete.

DOCS.md notes that this provenance lives in the collapsed #advisory-corpus footer.

Related issues

Closes #245

Checklist

  • pnpm test passes
  • pnpm lint is clean
  • pnpm typecheck is clean
  • Docs updated (README / DOCS / ARCHITECTURE) where behavior changed
  • Determinism preserved — identical input still produces identical graph.json / report output (content-hashed IDs, stable sorts; no time, randomness, or filesystem-order dependence)
  • No proprietary or internal references — public, Apache-2.0 content only
  • Commits use Conventional Commits and are signed off (git commit -s, DCO)

Notes for reviewers

The footer stays collapsed (no open attribute). Package names and advisory ids stay in the tables; the footer carries the source label and, when recorded, the advisory count.

src/reporting/formatters/html.test.ts asserts footer content, placement after the finding tables, collapsed markup, the unchecked fix filter, and byte-stable output.

Open in Web Open in Cursor 

cursoragent and others added 7 commits October 11, 2026 21:58
vg report --format html left #advisory-corpus empty, so vulnerability
database provenance never appeared. The footer now records
extended.vulnerabilities source, advisory and package counts, and
severity counts after the finding tables, collapsed so those tables
stay first. An unreachable source does not print zero counts, and the
same artifact still produces the same HTML.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
…s-html-footer-ce5e

Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
The HTML report names the recorded advisory source and count in a
collapsed footer after the finding tables. A missing source stays
Not scanned, Not checked, or Not recorded, and a missing count is
omitted.

Closes #245

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
Keep the collapsed advisory-source footer and the Fix available only
checkbox on the same page.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
…s-html-footer-ce5e

Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
Signed-off-by: Cursor Agent <cursoragent@cursor.com>
Keep the collapsed advisory-source footer and the Fix available only
checkbox on the same page.

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: vibgrate-team <vibgrate-team@users.noreply.github.com>
@vibgrate-team
vibgrate-team marked this pull request as ready for review October 12, 2026 12:04
@vibgrate-team
vibgrate-team merged commit 4271c6e into main Oct 12, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enhancement: keep advisory-corpus metadata compact in vg report HTML footer

2 participants