Skip to content

fix(sbom): enforce sbom-only version sources across docs surfaces#711

Merged
castrojo merged 1 commit into
projectbluefin:mainfrom
castrojo:feature/sbom-sitewide-policy-enforcement
Apr 1, 2026
Merged

fix(sbom): enforce sbom-only version sources across docs surfaces#711
castrojo merged 1 commit into
projectbluefin:mainfrom
castrojo:feature/sbom-sitewide-policy-enforcement

Conversation

@castrojo
Copy link
Copy Markdown
Contributor

@castrojo castrojo commented Apr 1, 2026

Summary

  • enforce SBOM as the single source of truth for kernel/GNOME/Mesa/Fedora across driver versions, images, and changelog version summaries
  • keep NVIDIA as the explicit workaround path while removing release-body dependency for SBOM-backed fields
  • fix SBOM digest/token correctness and add targeted tests for digest selection and stream derivation

Validation

  • node --test scripts/fetch-github-sbom.test.js scripts/fetch-github-driver-versions.test.js
  • npm run typecheck
  • npm run build

Follow-up

Assisted-by: Claude Sonnet 4.6 via GitHub Copilot
Co-authored-by: Copilot 223556219+Copilot@users.noreply.github.com

Make SBOM attestations the authoritative source for kernel, GNOME, Mesa, and Fedora across driver, images, and changelog surfaces while keeping NVIDIA as the explicit fallback workaround.

Refs: #35 #38 #50 #52 #57

Assisted-by: Claude Sonnet 4.6 via GitHub Copilot
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@castrojo castrojo merged commit e07a11e into projectbluefin:main Apr 1, 2026
1 check passed
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors the version fetching logic to prioritize SBOM data over regex-based parsing of release notes. It updates scripts to source Kernel, Mesa, and Fedora versions from SBOMs, improves GHCR token handling with expiry and retry logic, and adds unit tests for script utilities. Frontend components were also updated to import structured data directly. A review comment suggests using an atomic write pattern when saving driver version data to prevent potential file corruption.

fs.mkdirSync(OUTPUT_DIR, { recursive: true });
}

fs.writeFileSync(OUTPUT_FILE, JSON.stringify(output, null, 2), "utf-8");
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The script writes the driver versions data directly to the output file. To prevent data corruption or truncated files if the process is interrupted, it is recommended to use an atomic write pattern (writing to a temporary file and then renaming it), similar to the implementation in fetch-github-sbom.js.

Suggested change
fs.writeFileSync(OUTPUT_FILE, JSON.stringify(output, null, 2), "utf-8");
const tmpFile = OUTPUT_FILE + ".tmp";
fs.writeFileSync(tmpFile, JSON.stringify(output, null, 2), "utf-8");
fs.renameSync(tmpFile, OUTPUT_FILE);

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.

1 participant