Skip to content

Fix CI matrix generation with the Spotless upgrade - #12087

Draft
kiview wants to merge 4 commits into
mainfrom
codex/fix-pr-12003-ci
Draft

kiview wants to merge 4 commits into
mainfrom
codex/fix-pr-12003-ci

Conversation

@kiview

@kiview kiview commented Sep 18, 2026

Copy link
Copy Markdown
Member

Builds on #12003 and includes its Spotless upgrade from 6.22.0 to 8.10.1 and Dependabot allow-list change, addressing #11997.

With the upgraded formatter, Greclipse can print resolver startup messages to stdout during testMatrix, causing the workflow's jq parser to fail and skip all downstream matrix jobs. Make testMatrix enumerate check tasks without executing their dependencies, and remove the obsolete test-executor overrides. The generated task list and downstream checks are preserved.

Write matrix JSON to a dedicated file in CI so other Gradle output cannot corrupt it. Validate the root, examples, and docs matrices as non-empty arrays of task paths, reject empty filtered matrices, and propagate generation or parsing failures before publishing workflow outputs. Local callers can continue using stdout when no output file is specified.

Summary by CodeRabbit

  • Bug Fixes

    • Improved CI validation for generated test matrices, including clearer failures when required tasks are missing or malformed.
    • Improved reliability when passing test-matrix data between build and CI steps.
    • Updated build formatting checks to support the latest formatting rules and tooling.
  • Chores

    • Enhanced automated checks for Gradle, example, and documentation build jobs.

dhruv9b and others added 4 commits August 31, 2026 23:59
Explicitly allow com.diffplug.spotless in the root Gradle Dependabot configuration so Dependabot can create Spotless update PRs.
Add spotless dependency to Dependabot configuration
Enumerate check tasks without executing their dependencies, avoiding
Greclipse initialization during matrix discovery. Write matrix JSON to
a dedicated file and validate it before publishing workflow outputs.
@github-actions github-actions Bot added the github_actions Pull requests that update Github_actions code label Sep 18, 2026
@coderabbitai

coderabbitai Bot commented Sep 18, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Advanced

Run ID: c1fc8c3e-183c-4b10-9cfb-75f5ba776733

📥 Commits

Reviewing files that changed from the base of the PR and between 8e54951 and aaf1c0a.

📒 Files selected for processing (6)
  • .github/dependabot.yml
  • .github/workflows/ci.yml
  • build.gradle
  • examples/build.gradle
  • gradle/ci-support.gradle
  • smoke-test/build.gradle

Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

The pull request upgrades Spotless to 8.10.1, allows Dependabot to update Spotless, and adds file-based test-matrix output with strict validation for Gradle CI jobs.

Changes

Gradle CI and Spotless maintenance

Layer / File(s) Summary
Test-matrix output and CI validation
.github/workflows/ci.yml, gradle/ci-support.gradle
testMatrix can write JSON task data to a file. CI validates non-empty :-prefixed task arrays and rejects invalid or empty filtered results.
Spotless version and update configuration
.github/dependabot.yml, build.gradle, examples/build.gradle, smoke-test/build.gradle
Spotless is upgraded to 8.10.1 in the build files. Dependabot allows Spotless updates.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Bug fix

Suggested reviewers: eddumelendez

Sequence Diagram(s)

sequenceDiagram
  participant GitHubActions
  participant GradleTestMatrix
  participant jq
  GitHubActions->>GradleTestMatrix: Run testMatrix with testMatrixOutput
  GradleTestMatrix->>GitHubActions: Write task paths to the output file
  GitHubActions->>jq: Validate the task-path array
  jq-->>GitHubActions: Return validated matrix data
Loading

Merge Risk: ⚪ Minimal · up to aaf1c

The CI matrix generation paths are consistently wired and validate their output, with no actionable merge-blocking risk identified.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the primary change: fixing CI matrix generation in connection with the Spotless upgrade.
Description check ✅ Passed The description explains the Spotless upgrade, the CI failure caused by formatter output, the implementation changes, validation behavior, and related issues.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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

Labels

github_actions Pull requests that update Github_actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants