Skip to content

Make the required Test check report on every PR - #4

Merged
cbascom merged 2 commits into
mainfrom
fix/ci-required-test-check
Oct 13, 2026
Merged

cbascom merged 2 commits into
mainfrom
fix/ci-required-test-check

Conversation

@cbascom

@cbascom cbascom commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

The main ruleset requires a status check named Test, but nothing ever produced one, so PRs hang on it indefinitely (first hit on #3, which only touches renovate.json). Two causes:

  • The workflow's only checks were the matrix job names (protobuf 5.29.5, …) — there was no check named Test.
  • The pull_request trigger was path-filtered, so a PR that doesn't touch src/**, tests/**, etc. ran no workflow at all and reported nothing.

Fix

  • A Test aggregate job runs on every pull request and is the required status check. It reports once and passes only when the matrix passed (or was skipped because nothing test-relevant changed).
  • A lightweight changes job gates the expensive 4-way protobuf matrix so it still only runs when test-relevant files change (src/**, tests/**, pyproject.toml, scripts/**, examples/**, uv.lock, the workflow itself). Detection uses plain git diff against the PR base — no third-party changed-files action, to avoid adding a pinned external dependency.

Net: the required Test check always reports on every PR, but the matrix only burns runner time when it's actually needed. No new actions or SHAs.

After merge, Renovate PRs and config-only PRs get a real Test check instead of hanging. #3 needs a rebase onto main to pick this up.

🤖 Generated with Claude Code

The branch ruleset requires a status check named Test, but nothing
emitted one: the workflow's only checks were the matrix jobs
(protobuf 5.29.5, 6.31.1, ...), and the pull_request trigger was
path-filtered, so a PR touching only config (e.g. renovate.json) ran no
workflow at all. Either way the required check never reported and the
PR hung.

Add an aggregate job named Test that runs on every PR and passes only
when the protobuf matrix passes, and drop the pull_request path filter
so it always reports. The matrix stays path-filtered on push.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@tenki-reviewer

tenki-reviewer Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Review complete. No issues found — approved ✅.


This PR touches only the GitHub Actions test workflow, adjusting how CI runs without changing any SDK source code or tests.

Files Change
.github/workflows/test.yml CI workflow configuration update for the test pipeline.

Reviewed commit: bcfa770

tenki-reviewer[bot]
tenki-reviewer Bot previously approved these changes Oct 13, 2026
Keep the required Test check reporting on every PR, but stop running the
4-way protobuf matrix on PRs that touch no test-relevant files. A small
changes job diffs the PR against its base with plain git (no third-party
changed-files action) and the matrix runs only when src/tests/packaging
files changed. The Test gate passes automatically when the matrix is
skipped, and otherwise only when it succeeds.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@cbascom
cbascom merged commit c47080d into main Oct 13, 2026
12 checks passed
@cbascom
cbascom deleted the fix/ci-required-test-check branch October 13, 2026 17:16
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