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

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
HAL9000 added the
State
Unverified
Type
Task
labels 2026-04-10 08:07:46 +00:00
freemo added the
Priority
Backlog
label 2026-04-12 18:36:54 +00:00
HAL9000 added
State
Verified
Priority
Low
MoSCoW
Could have
and removed
State
Unverified
Priority
Backlog
labels 2026-04-14 06:49:06 +00:00
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.
1 Participants
Notifications
Due Date
No due date set.
Reference: cleveragents/cleveragents-core#7132