Skip to content

ci: harden the pull request analysis - #182

Merged
vbreuss merged 1 commit into
mainfrom
ci/harden-pr-analysis
Oct 18, 2026
Merged

vbreuss merged 1 commit into
mainfrom
ci/harden-pr-analysis

Conversation

@vbreuss

@vbreuss vbreuss commented Oct 18, 2026

Copy link
Copy Markdown
Member

CI-Analysis runs with repository secrets on artifacts that a pull request controls, and it trusted the pull request number, branch name and comment body in them. A pull request could therefore comment on any pull request, overwrite the mutation score of main or mention users. The pull request and the dashboard version now come from the workflow_run event alone, the artifact is checked for symbolic links, the report is validated before the upload, comment content is defused, and only comments of the pipeline are updated.

A release tag that is no valid version now fails the build instead of producing an odd package version. Stryker is pinned to 5.0.0 through the build project so that Dependabot updates it, GitVersion and ReportGenerator run on .NET 10 like in aweXpect, Sonar reads the generic coverage format, which keeps the lines of lambdas in generic classes, the mutation targets follow the names of aweXpect, and all actions are pinned to a commit.

CI-Analysis runs with repository secrets on artifacts that a pull request controls, and it trusted the pull request number, branch name and comment body in them. A pull request could therefore comment on any pull request, overwrite the mutation score of `main` or mention users. The pull request and the dashboard version now come from the `workflow_run` event alone, the artifact is checked for symbolic links, the report is validated before the upload, comment content is defused, and only comments of the pipeline are updated.

A release tag that is no valid version now fails the build instead of producing an odd package version. Stryker is pinned to 5.0.0 through the build project so that Dependabot updates it, GitVersion and ReportGenerator run on .NET 10 like in aweXpect, Sonar reads the generic coverage format, which keeps the lines of lambdas in generic classes, the mutation targets follow the names of aweXpect, and all actions are pinned to a commit.
@vbreuss
vbreuss added this pull request to stack #184 October 18, 2026 08:36
@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown

Test Results

    8 files  ±0      8 suites  ±0   59s ⏱️ -13s
  300 tests ±0    299 ✅ ±0  1 💤 ±0  0 ❌ ±0 
2 021 runs  ±0  2 020 ✅ ±0  1 💤 ±0  0 ❌ ±0 

Results for commit 1ef9226. ± Comparison against base commit afa8b82.

@vbreuss
vbreuss merged commit b2fff6f into main Oct 18, 2026
16 checks passed
@vbreuss
vbreuss deleted the ci/harden-pr-analysis branch October 18, 2026 11:14
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