Skip to content

ci(go-sdk): report go sdk checks on every pull request - #413

Merged
benbenbang merged 1 commit into
mainfrom
fix/ci
Oct 4, 2026
Merged

benbenbang merged 1 commit into
mainfrom
fix/ci

Conversation

@benbenbang

Copy link
Copy Markdown
Member

The pull_request paths filter skipped the whole Go SDK workflow on
docs-only PRs, leaving the required go sdk (ubuntu-latest) and
go sdk (macos-latest) checks pending and blocking the merge (PR 412).

Pull requests now always start the workflow so the required checks
always report. A new changes job uses tj-actions/changed-files
(pinned to the same commit as pre-commit.yml) to detect Go-relevant
files, and every check step is gated on its result via a RUN_GO_CHECKS
env flag. An unrelated PR skips the real work but still reports success
under the expanded matrix names.

Gating happens at the step level rather than with a job-level if
because a skipped matrix job may not report the expanded check names.
Skipped runs fall back to the ubuntu runner since they only echo a
message. Detection runs only on pull_request; push keeps its own paths
filter and workflow_dispatch always runs the checks.

The no-op exclusions for crates/fmp-py/examples and sdk/node/examples are dropped: no include pattern matched those paths. push keeps only !sdk/go/examples/**.

The pull_request paths filter skipped the whole Go SDK workflow on
docs-only PRs, leaving the required `go sdk (ubuntu-latest)` and
`go sdk (macos-latest)` checks pending and blocking the merge (PR 412).

Pull requests now always start the workflow so the required checks
always report. A new `changes` job uses tj-actions/changed-files
(pinned to the same commit as pre-commit.yml) to detect Go-relevant
files, and every check step is gated on its result via a RUN_GO_CHECKS
env flag. An unrelated PR skips the real work but still reports success
under the expanded matrix names.

Gating happens at the step level rather than with a job-level `if`
because a skipped matrix job may not report the expanded check names.
Skipped runs fall back to the ubuntu runner since they only echo a
message. Detection runs only on pull_request; push keeps its own paths
filter and workflow_dispatch always runs the checks.

The no-op exclusions for crates/fmp-py/examples and sdk/node/examples are dropped: no include pattern matched those paths. push keeps only !sdk/go/examples/**.
@benbenbang
benbenbang enabled auto-merge (rebase) October 4, 2026 01:38
@github-actions github-actions Bot added the workflows ci/cd, configs relative label Oct 4, 2026
@benbenbang
benbenbang merged commit 8bd603e into main Oct 4, 2026
10 checks passed
@benbenbang
benbenbang deleted the fix/ci branch October 4, 2026 01:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

workflows ci/cd, configs relative

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant