Skip to content

[Repo Assist] ci: move lint/format check into a dedicated standalone job #1411

@github-actions

Description

@github-actions

🤖 This is an automated pull request from Repo Assist.

Summary

Extracts lint and format-check steps out of the 30-job test matrix and into a single dedicated lint job. The build matrix depends on lint via needs: lint.

Motivation

The CI matrix currently has 30 jobs (5 Python versions × 6 test groups). Each job runs:

  1. LLVM install
  2. graphviz install
  3. poetry install
  4. Lint ← duplicated 30×
  5. Format check ← duplicated 30×
  6. Tests
  7. EconML install + tests
  8. README/PyPI check

Lint and format checking are language/OS-agnostic. Running them 30 times wastes ~29 job-setups worth of CI time (checkout + Python setup + Poetry install).

Change

  • New lint job: checkout → Python 3.12 → Poetry → poetry install (no extras needed) → poe lintpoe format_check. Runs once.
  • build job: adds needs: lint so tests only run when lint passes. Lint/format steps removed from the matrix.

Benefits

  • Lint/format failures surface faster (no LLVM or graphviz install required).
  • ~29 fewer redundant lint runs per CI invocation.
  • Slightly lower CI credit consumption.

Test Status

This change only modifies the CI workflow YAML — no Python code is changed. The workflow restructuring was validated by reviewing the YAML syntax and job dependency model. Full CI results will be visible after the PR is opened.

Generated by Repo Assist ·

To install this agentic workflow, run

gh aw add githubnext/agentics/workflows/repo-assist.md@b897c2f3e43bde9ff7923c8fa9211055b26e27cc

Warning

🛡️ Protected Files — Push Permission Denied

This was originally intended as a pull request, but the patch modifies protected files: .github/workflows/ci.yml.

The push was rejected because GitHub Actions does not have workflows permission to push these changes, and is never allowed to make such changes, or other authorization being used does not have this permission. A human must create the pull request manually.

To create a pull request with the changes:

# Download the patch from the workflow run
gh run download 23384388404 -n agent-artifacts -D /tmp/agent-artifacts-23384388404

# Create a new branch
git checkout -b repo-assist/eng-ci-lint-job-2026-03-21-de42a527718ca27d main

# Apply the patch (--3way handles cross-repo patches)
git am --3way /tmp/agent-artifacts-23384388404/aw-repo-assist-eng-ci-lint-job-2026-03-21.patch

# Push the branch and create the pull request
git push origin repo-assist/eng-ci-lint-job-2026-03-21-de42a527718ca27d
gh pr create --title '[Repo Assist] ci: move lint/format check into a dedicated standalone job' --base main --head repo-assist/eng-ci-lint-job-2026-03-21-de42a527718ca27d --repo py-why/dowhy

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions