Skip to content

feat: add linear cve summary action - #263

Merged
vcauesantos merged 12 commits into
mainfrom
devops-1292/linear-cve-summary
Sep 16, 2026
Merged

vcauesantos merged 12 commits into
mainfrom
devops-1292/linear-cve-summary

Conversation

@vcauesantos

@vcauesantos vcauesantos commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add a structured result-json output to cve-scan and aggregate matrix results into one Linear comment
  • link tag-triggered summaries to Code Scanning findings filtered by the actual SARIF tag ref, and every summary to the exact workflow run
  • scope parent discovery to the Engineering team, then resolve through release-derived title fingerprints and immutable parent-child relationships without calling-repository, child-team, or label coupling
  • keep Linear failures advisory and idempotent while preserving scan results and warnings in the GitHub step summary
  • provide an explicit kill switch and a read-only dry-run mode that resolves the real Linear target without mutating it
  • paginate Linear lookups, isolate malformed matrix outputs, and exercise safety-control wiring through the composite manifest

Example Linear comment

The action adds a comment like this to the release's CVE review subissue (illustrative counts):

CVE scan summary — v0.38.0-rc.2

Image Critical High Medium Low Status
vcluster-pro 0 2 11 4 Completed
vcluster-oss 0 1 6 3 Completed
vcluster-cli 0 0 2 1 Completed

Detailed findings in GitHub Code Scanning

GitHub Actions run

This report is advisory and did not gate the release.

The real comment uses the originating run ID and actual scan counts. A missing matrix result is rendered as No scan result. A hidden tag-specific marker makes reruns update the existing comment while incremental RCs add separate comments.

Test plan

  • make test-cve-scan (137 passed)
  • make test-linear-cve-summary (30 passed)
  • make lint
  • make check-docs
  • native matrix output fan-in validated in vClusterLabs-Experiments/github-actions-test#29
  • make test reaches an unrelated existing cleanup-head-charts failure that reproduces on main; all tests before it, including this action's suite, pass

Rollout

  • move the existing cve-scan/v1 rolling tag first so callers receive the new result-json output
  • publish the linear-cve-summary/v1 action-specific tag after merge
  • merge loft-sh/vcluster-pro#2437 only after both tags point to this release

Related to DEVOPS-1292

@vcauesantos
vcauesantos marked this pull request as ready for review September 10, 2026 23:50
@vcauesantos
vcauesantos requested a review from a team as a code owner September 10, 2026 23:50
@vcauesantos

Copy link
Copy Markdown
Contributor Author

/vcluster-review

@vcluster-pr-approver

Copy link
Copy Markdown

🔍 The agent swarm is reviewing PR #263. I'll post the results here when it's done.

Admins can watch the run live

Comment thread .github/actions/linear-cve-summary/src/action.py Outdated
Comment thread .github/actions/linear-cve-summary/src/action.py Outdated
Comment thread .github/workflows/test-linear-cve-summary.yaml Outdated
@vcluster-pr-approver

Copy link
Copy Markdown

@vcauesantos ✅ Review finished for #263

View the session

@vcauesantos

Copy link
Copy Markdown
Contributor Author

Validated the load-bearing matrix output fan-in against the native GitHub Actions runner.

@vcauesantos
vcauesantos merged commit 3e27d7b into main Sep 16, 2026
8 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.

2 participants