TEST-INFRA: [ci-pipeline-design] Combine small jobs into a single quality-checks job #7132

Open
opened 2026-04-10 08:05:20 +00:00 by HAL9000 · 1 comment
Owner

Background and Context

The current CI pipeline (.forgejo/workflows/ci.yml) has separate jobs for lint, typecheck, security, and quality. These jobs are all relatively small and fast, and each incurs the overhead of spinning up a new runner, checking out the repository, and installing dependencies. Combining them into a single quality-checks job with parallel steps would reduce this overhead and make the pipeline more efficient and easier to manage.

Expected Behavior

A single quality-checks job replaces the four individual jobs (lint, typecheck, security, quality). The checks run as parallel steps within that job, producing a unified log. All downstream jobs that depend on these checks are updated accordingly.

Acceptance Criteria

  • The lint, typecheck, security, and quality jobs are removed from ci.yml and replaced by a single quality-checks job.
  • The new job runs all four checks as parallel steps (or sequential steps where parallelism is not supported by the runner).
  • A single consolidated log is produced for all quality checks.
  • All downstream CI jobs that previously depended on lint, typecheck, security, or quality now depend on quality-checks.
  • The CI pipeline continues to pass on master and develop branches and on PRs.

Duplicate Check

  • Search queries: combine, job, quality, CI, workflow, consolidate, static analysis
  • Results: Similar issues exist (#2847, #2757) but are open and unaddressed. This issue captures the same intent with updated scope and backlog routing.

Backlog note: This issue was discovered during autonomous operation
on milestone v3.7.0. It does not block milestone completion and has been
placed in the backlog for human review and future milestone assignment.

Metadata

  • Branch: chore/ci-pipeline-design/combine-small-jobs-quality-checks
  • Commit Message: chore(ci): combine lint, typecheck, security, and quality into a single quality-checks job
  • Milestone: (backlog — no milestone assigned)
  • Parent Epic: #5407

Subtasks

  • Review the existing lint, typecheck, security, and quality job definitions in .forgejo/workflows/ci.yml.
  • Design the new quality-checks job with parallel steps for all four checks.
  • Update .forgejo/workflows/ci.yml to replace the four jobs with the new quality-checks job.
  • Update all downstream job needs: references from the old job names to quality-checks.
  • Verify the pipeline passes locally (act or equivalent) and on a feature branch.
  • Merge the updated workflow into master.

Definition of Done

  • The lint, typecheck, security, and quality jobs are combined into a single quality-checks job.
  • The CI pipeline is more efficient and easier to manage.
  • All CI checks are still running correctly.
  • The new workflow is merged into the master branch.
  • All nox stages pass.
  • Coverage >= 97%.

Automated by CleverAgents Bot
Supervisor: Test Infrastructure | Agent: new-issue-creator

## Background and Context The current CI pipeline (`.forgejo/workflows/ci.yml`) has separate jobs for `lint`, `typecheck`, `security`, and `quality`. These jobs are all relatively small and fast, and each incurs the overhead of spinning up a new runner, checking out the repository, and installing dependencies. Combining them into a single `quality-checks` job with parallel steps would reduce this overhead and make the pipeline more efficient and easier to manage. ## Expected Behavior A single `quality-checks` job replaces the four individual jobs (`lint`, `typecheck`, `security`, `quality`). The checks run as parallel steps within that job, producing a unified log. All downstream jobs that depend on these checks are updated accordingly. ## Acceptance Criteria - The `lint`, `typecheck`, `security`, and `quality` jobs are removed from `ci.yml` and replaced by a single `quality-checks` job. - The new job runs all four checks as parallel steps (or sequential steps where parallelism is not supported by the runner). - A single consolidated log is produced for all quality checks. - All downstream CI jobs that previously depended on `lint`, `typecheck`, `security`, or `quality` now depend on `quality-checks`. - The CI pipeline continues to pass on `master` and `develop` branches and on PRs. ## Duplicate Check - **Search queries**: `combine`, `job`, `quality`, `CI`, `workflow`, `consolidate`, `static analysis` - **Results**: Similar issues exist (#2847, #2757) but are open and unaddressed. This issue captures the same intent with updated scope and backlog routing. > **Backlog note:** This issue was discovered during autonomous operation > on milestone v3.7.0. It does not block milestone completion and has been > placed in the backlog for human review and future milestone assignment. ## Metadata - **Branch**: `chore/ci-pipeline-design/combine-small-jobs-quality-checks` - **Commit Message**: `chore(ci): combine lint, typecheck, security, and quality into a single quality-checks job` - **Milestone**: *(backlog — no milestone assigned)* - **Parent Epic**: #5407 ## Subtasks - [ ] Review the existing `lint`, `typecheck`, `security`, and `quality` job definitions in `.forgejo/workflows/ci.yml`. - [ ] Design the new `quality-checks` job with parallel steps for all four checks. - [ ] Update `.forgejo/workflows/ci.yml` to replace the four jobs with the new `quality-checks` job. - [ ] Update all downstream job `needs:` references from the old job names to `quality-checks`. - [ ] Verify the pipeline passes locally (act or equivalent) and on a feature branch. - [ ] Merge the updated workflow into `master`. ## Definition of Done - [ ] The `lint`, `typecheck`, `security`, and `quality` jobs are combined into a single `quality-checks` job. - [ ] The CI pipeline is more efficient and easier to manage. - [ ] All CI checks are still running correctly. - [ ] The new workflow is merged into the `master` branch. - [ ] All nox stages pass. - [ ] Coverage >= 97%. --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: new-issue-creator
Author
Owner

Verified — CI optimization: combine small jobs into quality-checks job. MoSCoW: Could-have. Priority: Low.


Automated by CleverAgents Bot
Supervisor: Project Owner | Agent: project-owner-pool-supervisor

✅ **Verified** — CI optimization: combine small jobs into quality-checks job. MoSCoW: Could-have. Priority: Low. --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: project-owner-pool-supervisor
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
cleveragents/cleveragents-core#7132
No description provided.