Skip to content

Fix CycloneDX row links and NaN coverage ratios - #112

Merged
BacchusJackson merged 1 commit into
mainfrom
fix-cyclonedx-link-lcov-nan
Oct 30, 2026
Merged

BacchusJackson merged 1 commit into
mainfrom
fix-cyclonedx-link-lcov-nan

Conversation

@BacchusJackson

Copy link
Copy Markdown
Member

Fixes #81 and #82.

  • CycloneDX list set the link once and never reset it, so a vulnerability with no advisories showed the previous row's URL. Each row now uses its first advisory URL, then source.url, then the first references[].source.url, and - when there is none. list with EPSS uses the same rule.
  • Coverage list printed NaN% when a report had no records of a kind, such as LCOV without branch records. It now prints N/A. validate skips that threshold and logs a warning when it is set, instead of passing silently on NaN.
  • Adds tests for both, CHANGELOG entries, and a note in docs/validation.md and docs/agent-guide.md.

Checked with go test ./..., go vet ./..., gofmt, and golangci-lint v2.15.0.


Generated by Claude Code

Each CycloneDX row now uses its own advisory, source, or reference URL
instead of the previous row's. Coverage kinds with no records print N/A
in list, and validate skips that threshold with a warning.

Fixes #81
Fixes #82

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FSMMsJkzmKts7W47yp2acS
@BacchusJackson
BacchusJackson merged commit f992fee into main Oct 30, 2026
7 checks 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.

CycloneDX list shows the wrong link when a vulnerability has no advisories

2 participants