Skip to content

Fix CI job-name evaluation when configuration is skipped - #3464

Open
rwgk wants to merge 2 commits into
mainfrom
rwgk/ci-skipped-job-display-names
Open

rwgk wants to merge 2 commits into
mainfrom
rwgk/ci-skipped-job-display-names

Conversation

@rwgk

@rwgk rwgk commented Nov 14, 2026 •

Copy link
Copy Markdown
Contributor

— codex on behalf of Ralf —

Description

CI intentionally skips its NVIDIA-only jobs in forks. However, GitHub can still evaluate the four build-job display names, which parse detect-changes.outputs.bindings-config using fromJSON. When detect-changes is skipped, that output is empty, and parsing it can turn an intentionally skipped workflow into a failed run.

Add an empty-object fallback in those four display-name expressions so the workflow can conclude skipped as intended. The fallback affects display names only; build configuration, matrices, execution conditions, and normal job names remain unchanged.

xref: ctk-next PR 850

Validation

  • SKIP=lychee pre-commit run --all-files passed, including actionlint.
  • The same workflow change was validated with a manual dispatch with the repository-owner guard false; the workflow correctly concluded skipped.
  • Full CI awaits maintainer approval after review.

Checklist

  • I have read the Contributing Guidelines.
  • New or existing tests cover these changes.
  • The documentation is up to date with these changes.

@copy-pr-bot

copy-pr-bot Bot commented Nov 14, 2026

Copy link
Copy Markdown
Contributor

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@rwgk rwgk added the CI/CD CI/CD infrastructure label Nov 14, 2026
@rwgk rwgk self-assigned this Nov 14, 2026
@rwgk rwgk added this to the CI milestone Nov 14, 2026
@coderabbitai

coderabbitai Bot commented Nov 14, 2026

Copy link
Copy Markdown

Explain Change →

No actionable comments were generated in the recent review.

Summary

Summary by CodeRabbit

  • Chores
    • Improved build labeling reliability across Linux and Windows platforms, including ARM64 variants. Build labels now handle missing configuration output more consistently, while preserving the existing CUDA-major selection for Windows ARM64. These changes affect build reporting and do not change application features or behavior.

The CI workflow adds an empty JSON object fallback when four platform build job names parse empty or unset bindings-config output. The Windows ARM64 job retains its existing single-CUDA-major label selection.

Changes: CI build job labels

Layer / File(s) Summary
Build job name fallback
.github/workflows/ci.yml
Linux, Linux ARM64, Windows, and Windows ARM64 build names use {} as a fallback when bindings-config output is empty or unset. Windows ARM64 retains its existing single-CUDA-major label selection.

Suggested reviewers: leofang, isvoid

Change: Bug fix

Merge Risk: Minimal · up to 2d321

This CI-only change lets build job names evaluate when the configuration job is skipped, so the workflow can conclude as skipped. Normal job names and build behavior are unchanged, and no merge-blocking risk is evident.

Architecture risk: Low · up to 2d321

The changed surface does not map to a changed system, dependency edge, entrypoint, or external dependency.

Changed systems: None identified.

Architecture concerns
No architecture-level concerns identified.

Review details

Before / after behavior

  • observed — Modified behavior in .github/workflows/ci.yml: The Linux build name now falls back to an empty JSON object when bindings-config is empty or unset before reading package toolkit versions.
  • observed — Modified behavior in .github/workflows/ci.yml: The Linux ARM64 build name now falls back to an empty JSON object when bindings-config is empty or unset before reading package toolkit versions.
  • observed — Modified behavior in .github/workflows/ci.yml: The Windows build name now falls back to an empty JSON object when bindings-config is empty or unset before reading package toolkit versions.
  • observed — Modified behavior in .github/workflows/ci.yml: The Windows ARM64 build name now uses the same empty-object fallback when bindings-config is empty or unset; its existing single-CUDA-major label selection is unchanged.
- [ ] Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Recent review info

Run configuration

Commits

Reviewing files that changed from the base of the PR and between d768d2d and 2d321a0.

Files selected for processing: 1

  • .github/workflows/ci.yml

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review.

@rwgk

rwgk commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

/ok to test 2d321a0

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD CI/CD infrastructure

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant