Skip to content

fix(compliance): clear sbom via CI generation, not static file - #203

Merged
alimobrem merged 1 commit into
mainfrom
fix/sbom-ci-generation
Jul 23, 2026
Merged

fix(compliance): clear sbom via CI generation, not static file#203
alimobrem merged 1 commit into
mainfrom
fix/sbom-ci-generation

Conversation

@alimobrem

Copy link
Copy Markdown
Owner

Summary

  • Assess / sbom-exists clear when CI generates an SBOM (anchore/sbom-action, Syft workflow step, or Tekton Pipeline sbom-generate wire) — not a committed sbom.cdx.json
  • SOLUTION_CONTRACTS.sbomsbom-ci (source) with clear-evidence sbom_ci; refuses bare sbom-task and demoted sbom-artifact
  • Optional: surface llm_review concerns in PR body when approved=false
  • Rebased on tip including dockerfile_pin path-bind (fix(remediation): path-bind dockerfile_pin clear-evidence #201)

Product note (pulse-agent)

E2E tip 4a9a95ff opened pulse-agent#4 (static BOM, 1 component). Gates passed but wrong product shape — do not treat as success. After this lands + tip, next Scan should open a GHA/Tekton CI SBOM PR instead; close or request-changes on #4.

Test plan

  • tests/test_sbom_ci.py, test_compliance.py, TestSbomCi, dispatcher/registry/phase4/PR-body tests (34 passed locally)
  • GHA Tests + Security green
  • Merge + tip deploy; re-Scan pulse-agent

Made with Cursor

Assess and sbom-exists clear when CI generates an SBOM (anchore/sbom-action,
Syft workflow, or Tekton Pipeline wire). SOLUTION_CONTRACT remediates with
sbom-ci; refuse bare sbom-task and demoted sbom-artifact. pulse-agent#4
static BOM is wrong product shape.

Co-authored-by: Cursor <cursoragent@cursor.com>
@alimobrem
alimobrem merged commit f6bfd28 into main Jul 23, 2026
4 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.

1 participant