Skip to content

Conversation

@bdougie
Copy link
Collaborator

@bdougie bdougie commented Nov 18, 2025

Description

This PR optimizes our CI workflow by skipping certain test jobs when only documentation files are changed. This will save CI resources and reduce build times for documentation-only PRs.

Changes

  • Added a changes detection job that uses dorny/paths-filter to determine what files were modified
  • Modified jetbrains-tests, gui-checks, and binary-checks jobs to skip execution when only files in /docs are changed
  • Jobs will still run if any non-docs files are changed (even if docs are also changed)

Implementation Details

The solution uses:

  1. dorny/paths-filter action to detect file changes
  2. A check to determine if ONLY docs were modified
  3. Conditional execution using if: needs.changes.outputs.docs-only != 'true'

Testing

  • When a PR only modifies files in /docs: The three mentioned jobs will be skipped
  • When a PR modifies any non-docs files: All jobs run normally
  • The require-all-checks-to-pass job still maintains all dependencies

Benefits

  • ✅ Faster CI for documentation updates
  • ✅ Reduced resource consumption
  • ✅ No impact on code-related PRs

Generated with Continue

Co-Authored-By: Continue noreply@continue.dev


Summary by cubic

Skips JetBrains, GUI, binary, and CLI test matrix jobs when a PR only changes files in /docs to reduce CI time and save resources. All checks still run when any non-doc files change.

  • New Features
    • Added a changes detection job using dorny/paths-filter to identify docs-only PRs.
    • Made gui-checks, binary-checks, jetbrains-tests, and CLI tests conditional on non-doc changes, and configured the require-all-checks step to allow these jobs to be skipped.

Written for commit 3a7e598. Summary will update automatically on new commits.

- Add changes detection job using dorny/paths-filter
- Skip jetbrains-tests, gui-checks, and binary-checks when only /docs files change
- Saves CI resources for documentation-only PRs

Generated with [Continue](https://continue.dev)

Co-Authored-By: Continue <noreply@continue.dev>
@bdougie bdougie requested a review from a team as a code owner November 18, 2025 15:11
@bdougie bdougie requested review from RomneyDa and removed request for a team November 18, 2025 15:11
@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Nov 18, 2025
@github-actions
Copy link

⚠️ PR Title Format

Your PR title doesn't follow the conventional commit format, but this won't block your PR from being merged. We recommend using this format for better project organization.

Expected Format:

<type>[optional scope]: <description>

Examples:

  • feat: add changelog generation support
  • fix: resolve login redirect issue
  • docs: update README with new instructions
  • chore: update dependencies

Valid Types:

feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert

This helps with:

  • 📝 Automatic changelog generation
  • 🚀 Automated semantic versioning
  • 📊 Better project history tracking

This is a non-blocking warning - your PR can still be merged without fixing this.

@github-actions
Copy link

github-actions bot commented Nov 18, 2025

✅ Review Complete

Code Review Summary

⚠️ Continue configuration error. Please verify that the assistant exists in Continue Hub.


The alls-green action needs to be configured to allow certain jobs to be skipped
when only docs are changed. This prevents the workflow from failing when
gui-checks, binary-checks, and jetbrains-tests are intentionally skipped.
…nged

Added the same docs-only detection logic to cli-pr-checks workflow to skip
the test job matrix that runs on ubuntu-latest, windows-latest, and macos-latest
with multiple Node versions. This will significantly reduce CI time for docs-only PRs.
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 issues found across 2 files

Prompt for AI agents (all 2 issues)

Understand the root cause of the following 2 issues and fix them.


<file name=".github/workflows/cli-pr-checks.yml">

<violation number="1" location=".github/workflows/cli-pr-checks.yml:27">
The `non-docs` filter never matches anything because it only contains a negative glob, so any PR that touches docs—even alongside code changes—will be misclassified as docs-only and will incorrectly skip the downstream checks.</violation>
</file>

<file name=".github/workflows/pr-checks.yaml">

<violation number="1" location=".github/workflows/pr-checks.yaml:28">
`non-docs` never matches anything because it only lists a negated glob, so any PR that touches docs will be treated as “docs-only” and the GUI/Binary/JetBrains checks will be skipped even when code files change.</violation>
</file>

Reply to cubic to teach it or ask questions. Re-run a review with @cubic-dev-ai review this PR

docs:
- 'docs/**'
non-docs:
- '!docs/**'
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Nov 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The non-docs filter never matches anything because it only contains a negative glob, so any PR that touches docs—even alongside code changes—will be misclassified as docs-only and will incorrectly skip the downstream checks.

Prompt for AI agents
Address the following comment on .github/workflows/cli-pr-checks.yml at line 27:

<comment>The `non-docs` filter never matches anything because it only contains a negative glob, so any PR that touches docs—even alongside code changes—will be misclassified as docs-only and will incorrectly skip the downstream checks.</comment>

<file context>
@@ -10,6 +10,30 @@ permissions:
+            docs:
+              - &#39;docs/**&#39;
+            non-docs:
+              - &#39;!docs/**&#39;
+      - name: Check if only docs changed
+        id: check-changes
</file context>
Fix with Cubic

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bdougie this seems valid

docs:
- 'docs/**'
non-docs:
- '!docs/**'
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Nov 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

non-docs never matches anything because it only lists a negated glob, so any PR that touches docs will be treated as “docs-only” and the GUI/Binary/JetBrains checks will be skipped even when code files change.

Prompt for AI agents
Address the following comment on .github/workflows/pr-checks.yaml at line 28:

<comment>`non-docs` never matches anything because it only lists a negated glob, so any PR that touches docs will be treated as “docs-only” and the GUI/Binary/JetBrains checks will be skipped even when code files change.</comment>

<file context>
@@ -11,6 +11,30 @@ on:
+            docs:
+              - &#39;docs/**&#39;
+            non-docs:
+              - &#39;!docs/**&#39;
+      - name: Check if only docs changed
+        id: check-changes
</file context>
Fix with Cubic

@bdougie bdougie changed the title Skip jetbrains, gui, and binary checks when only docs are modified ci: Skip jetbrains, gui, and binary checks when only docs are modified Nov 18, 2025
Copy link
Collaborator

@RomneyDa RomneyDa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comment

docs:
- 'docs/**'
non-docs:
- '!docs/**'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bdougie this seems valid

@github-project-automation github-project-automation bot moved this from Todo to In Progress in Issues and PRs Nov 18, 2025
@RomneyDa
Copy link
Collaborator

Duplicate of #8576

@RomneyDa RomneyDa marked this as a duplicate of #8576 Nov 18, 2025
@RomneyDa RomneyDa closed this Nov 18, 2025
@github-project-automation github-project-automation bot moved this from In Progress to Done in Issues and PRs Nov 18, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Nov 18, 2025
@RomneyDa
Copy link
Collaborator

merged that one ^

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

Labels

size:M This PR changes 30-99 lines, ignoring generated files.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants