Skip to content

perf(ci): Start tests without waiting for setup and lint - #4521

Merged
CyMule merged 7 commits into
mainfrom
perf/streamline-ci-job-setup
Oct 5, 2026
Merged

CyMule merged 7 commits into
mainfrom
perf/streamline-ci-job-setup

Conversation

@CyMule

@CyMule CyMule commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor

What

Test, license, changelog, and lint jobs start together instead of waiting on each other.

Before: setup (44–68s) → lint (45–68s) → no-extras tests → extras tests
After:  setup ┐
        lint  ├─ all start immediately
        tests ┘
  • setup now only checks that uv.lock is current, and lint installs just Ruff instead of every ML/connector extra.
  • System package setup retains bounded download retries and offline installation from fix(ci): bound system dependency downloads #4514. Only the jobs that need them install packages: OCR/Poppler goes to the pdf-image extra, and LibreOffice to the docx/pptx extras (legacy .doc/.ppt conversion).
  • A new push cancels the PR's older CI run.

Every job name, Python/extra matrix entry, test command, and coverage gate is unchanged.

Why

In the baseline run, tests could not start until setup and then lint had finished. Each of the 24 extras jobs also spent 52–86s installing OCR and office tools that most of them never use.

Tradeoffs

  • Failed lint no longer stops tests. A PR that fails lint still runs the full test matrix on 8-core runners.
  • No shared cache warm-up. setup used to fill the dependency cache before other jobs started. When uv.lock changes, each job now installs dependencies itself and they race to save the cache. Runs with a cache hit are unaffected.
  • Version bump. The version moves to 0.27.19-dev0 with a changelog entry, as the repository's version check requires. Other open PRs that bump the version will need the usual rebase.

Validation

actionlint passes, and the lint-only sync, Ruff, and uv lock --check pass locally. CI passes on this branch, including every extras suite with the narrower system packages.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@cubic-dev-ai cubic-dev-ai 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.

No issues found across 1 file

Shadow auto-approve: would not auto-approve. This PR does not meet the repository auto-approval settings.

Re-trigger cubic

@CyMule
CyMule marked this pull request as draft October 2, 2026 03:27
CyMule added 2 commits October 2, 2026 09:22
Keep the released-version guard intact while validating CI maintenance.
Use the existing next-patch dev0 convention without declaring a stable release.
@CyMule CyMule changed the title perf(ci): Remove redundant setup work and test barriers perf(ci): Start tests without waiting for setup and lint Oct 2, 2026
Preserve the 0.27.13 release and begin the next development cycle.
Reuse bounded dependency downloads for narrowed non-PDF extra jobs.
Keep version guards, test selections, required gates, and CI speedups intact.
@CyMule
CyMule marked this pull request as ready for review October 2, 2026 16:44
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@cubic-dev-ai cubic-dev-ai 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.

No issues found across 4 files

Shadow auto-approve: would not auto-approve. This PR does not meet the repository auto-approval settings.

Re-trigger cubic

@cubic-dev-ai cubic-dev-ai 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.

0 issues found across 1 file (changes from recent commits).

Shadow auto-approve: would not auto-approve. This PR does not meet the repository auto-approval settings.

Re-trigger cubic

@CyMule
CyMule added this pull request to the merge queue Oct 5, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Oct 5, 2026
@CyMule
CyMule added this pull request to the merge queue Oct 5, 2026
Merged via the queue into main with commit 67f4cf1 Oct 5, 2026
55 checks passed
@CyMule
CyMule deleted the perf/streamline-ci-job-setup branch October 5, 2026 17:48
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.

2 participants