ci: run GOROOT for go-test-compat pull requests - #2424
Open
cpunion wants to merge 3 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
GOROOT PR label-gating review
This change adds a pull_request trigger to the GOROOT workflow and gates both the goroot matrix job and the goroot-summary job behind the go-test-compat label. Overall it is well-constructed and secure.
Strengths
- Correct trigger: uses
pull_request(notpull_request_target) withpermissions: contents: readand no secret usage — fork PRs cannot exfiltrate secrets or write to the repo. - The gate correctly distinguishes the
labeledaction (readsgithub.event.label.name) fromsynchronize/reopened(readscontains(...labels.*.name, ...)), avoiding the common bug where a just-added label isn't yet visible in the label set. - Both jobs are gated in sync, so on unlabeled PRs the summary job is skipped rather than failing on missing artifacts / the
report_count -ne 16check.
Notes (non-blocking)
- Inline comments below cover the substantive items (CI cost on
synchronize,openedcoverage, and gate duplication/drift risk). - Pre-existing, adjacent to the diff: the matrix comment at
.github/workflows/goroot.yml:43-44is contradictory — it states "Go 1.25 is intentionally omitted because it is not a compatibility target," but1.25.0is present in the matrix (line 36) and assigned thecompatibilitylane (lines 39-40). Not introduced by this PR, but worth correcting while nearby. - The label acts as the trust gate for running fork code; ensure
go-test-compatis only appliable by trusted maintainers (a repo-settings concern, outside this diff).
No blocking issues found.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
LLGo baseline benchmarks
Program measurements
Core language and compiler benchmarks
Compared with |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Run the existing GOROOT matrix as opt-in pull-request checks when a PR has the existing
go-test-compatlabel.go-test-compatstarts the matrix automatically;go-test-compatskip the GOROOT jobs;The existing pull-request concurrency key cancels an older GOROOT run when a labeled PR receives a newer commit.
Validation
GOTOOLCHAIN=local go run github.com/rhysd/actionlint/cmd/actionlint@v1.7.7 .github/workflows/goroot.ymlgit diff --check