Skip to content

fix(ci): skip docs-only changes for Tests workflow - #1036

Merged
seonghobae merged 1 commit into
mainfrom
chore/paths-ignore-fix
Sep 3, 2026
Merged

fix(ci): skip docs-only changes for Tests workflow#1036
seonghobae merged 1 commit into
mainfrom
chore/paths-ignore-fix

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

What

Adds paths-ignore (docs/**, *.md) to both the push and pull_request triggers of .github/workflows/ci.yml (the Tests workflow).

Why

An org-wide audit of ContextualWisdomLab repos found that ci.yml had no path filter, so every docs-only push/PR still ran the full pytest + NIM benchmark quality suite. Across the org this is a meaningful contributor to the Actions queue congestion (the shared 60-concurrent-job plan ceiling stays saturated with jobs that never needed to run for a docs edit).

Safety check performed

  • Live-checked branch protection (required_status_checks.contexts) and both active rulesets (CWL Central required workflows, Lock default branch) on main.
  • Confirmed neither of ci.yml's job names (Full unit and contract suite, NIM benchmark coverage, docstrings, and package smoke) appears in the required classic status-check list — those required contexts (Hypothesis property tests, Atheris coverage-guided, CodeQL analysis, Python supply chain, ...) are produced by fuzz.yml and security.yml, which this PR does not touch.
  • Confirmed ci.yml had no pre-existing paths-ignore/paths filter.
  • Validated the edited YAML parses (yaml.safe_load).

Only the on.push and on.pull_request triggers were touched; branches: [main] and workflow_dispatch are preserved unchanged.

🤖 Generated with Claude Code


Devin Review

Org-wide audit found ci.yml lacks paths-ignore, triggering full CI on every docs-only push/PR and adding to org Actions queue congestion.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@seonghobae
seonghobae merged commit 394bf4e into main Sep 3, 2026
21 of 25 checks passed
@coderabbitai

coderabbitai Bot commented Sep 3, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 44 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: d079a7fd-b8a1-49b9-8544-4be72f891014

📥 Commits

Reviewing files that changed from the base of the PR and between 39a4348 and f297673.

📒 Files selected for processing (1)
  • .github/workflows/ci.yml

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.

@seonghobae
seonghobae deleted the chore/paths-ignore-fix branch September 3, 2026 03:02

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Devin Review found 1 potential issue.

Devin Review

Comment thread .github/workflows/ci.yml
Comment on lines +11 to +13
paths-ignore:
- "docs/**"
- "*.md"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Documentation contracts bypass their tests

Docs-only changes make paths-ignore suppress tests that validate those same files. Broken API, database, and release contracts can merge undetected.

Prompt for agents
The Tests workflow now skips every PR whose changed files are all under docs/** or are root Markdown files. However, the pytest suite treats many of those files as executable contracts: tests/test_plugin_driven_artifacts.py validates README.md and numerous docs files; tests/test_repository_security_metadata.py validates README.md, SECURITY.md, and docs/database_design.sql; tests/test_reasoning_effort_profile.py validates docs/architecture.md and docs/papers/README.md; and many commercial acceptance tests validate docs/*.md. Adjust the filtering strategy so documentation changes still run the contract tests that consume the changed files, while avoiding unnecessary runtime-heavy jobs where possible. A separate lightweight docs-contract job or narrower ignore patterns can preserve the intended queue reduction.
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

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