TEST-INFRA: [ci-pipeline-design] Run test suites in parallel #2857

Open
opened 2026-04-04 20:59:31 +00:00 by freemo · 0 comments
Owner

Metadata

  • Branch: task/ci-parallel-test-suites
  • Commit Message: feat(ci): run unit, integration, and e2e test suites in parallel
  • Milestone: v3.8.0
  • Parent Epic: #1678

Background and context

The CI pipeline currently runs the unit_tests, integration_tests, and e2e_tests jobs sequentially. While the tests within each suite are parallelized, the suites themselves are not. Each suite must wait for the previous one to complete before it can begin, adding unnecessary wall-clock time to every CI run. Running these jobs in parallel would significantly reduce the overall CI run time and improve developer feedback loops.

This issue is a child of Epic #1678 (CI Execution Time Optimization), which tracks all structural gaps causing unnecessary CI wall-clock time.

Expected behavior

The unit_tests, integration_tests, and e2e_tests jobs should execute concurrently. The status-check (or equivalent gate) job should aggregate results from all three test jobs before marking the pipeline as passed or failed.

Acceptance criteria

  • The unit_tests, integration_tests, and e2e_tests jobs have no sequential needs: dependency on each other in ci.yml.
  • All three test jobs start at the same time when a CI run is triggered.
  • The status-check (or equivalent final gate) job lists all three test jobs in its needs: block.
  • The total CI wall-clock time for a standard run is measurably reduced.
  • features/ci_workflow_validation.feature is updated to assert the parallel job structure.

Subtasks

  • Remove the sequential needs: dependency between unit_tests, integration_tests, and e2e_tests in .forgejo/workflows/ci.yml
  • Ensure the status-check (or equivalent gate) job's needs: block includes all three test jobs
  • Update features/ci_workflow_validation.feature to assert that the three test suites run in parallel (no cross-suite needs: dependency)
  • Verify coverage >= 97% via nox -s coverage_report
  • Run nox (all default sessions), fix any errors

Definition of Done

This issue is complete when:

  • All subtasks above are completed and checked off.
  • A Git commit is created where the first line of the commit message matches the Commit Message in Metadata exactly, followed by a blank line, then additional lines providing relevant details about the implementation.
  • The commit is pushed to the remote on the branch matching the Branch in Metadata exactly.
  • The commit is submitted as a pull request to master, reviewed, and merged before this issue is marked done.
  • All nox stages pass.
  • Coverage >= 97%.

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

## Metadata - **Branch**: `task/ci-parallel-test-suites` - **Commit Message**: `feat(ci): run unit, integration, and e2e test suites in parallel` - **Milestone**: v3.8.0 - **Parent Epic**: #1678 ## Background and context The CI pipeline currently runs the `unit_tests`, `integration_tests`, and `e2e_tests` jobs sequentially. While the tests within each suite are parallelized, the suites themselves are not. Each suite must wait for the previous one to complete before it can begin, adding unnecessary wall-clock time to every CI run. Running these jobs in parallel would significantly reduce the overall CI run time and improve developer feedback loops. This issue is a child of Epic #1678 (CI Execution Time Optimization), which tracks all structural gaps causing unnecessary CI wall-clock time. ## Expected behavior The `unit_tests`, `integration_tests`, and `e2e_tests` jobs should execute concurrently. The `status-check` (or equivalent gate) job should aggregate results from all three test jobs before marking the pipeline as passed or failed. ## Acceptance criteria - The `unit_tests`, `integration_tests`, and `e2e_tests` jobs have no sequential `needs:` dependency on each other in `ci.yml`. - All three test jobs start at the same time when a CI run is triggered. - The `status-check` (or equivalent final gate) job lists all three test jobs in its `needs:` block. - The total CI wall-clock time for a standard run is measurably reduced. - `features/ci_workflow_validation.feature` is updated to assert the parallel job structure. ## Subtasks - [ ] Remove the sequential `needs:` dependency between `unit_tests`, `integration_tests`, and `e2e_tests` in `.forgejo/workflows/ci.yml` - [ ] Ensure the `status-check` (or equivalent gate) job's `needs:` block includes all three test jobs - [ ] Update `features/ci_workflow_validation.feature` to assert that the three test suites run in parallel (no cross-suite `needs:` dependency) - [ ] Verify coverage >= 97% via `nox -s coverage_report` - [ ] Run `nox` (all default sessions), fix any errors ## Definition of Done This issue is complete when: - All subtasks above are completed and checked off. - A Git commit is created where the **first line** of the commit message matches the Commit Message in Metadata exactly, followed by a blank line, then additional lines providing relevant details about the implementation. - The commit is pushed to the remote on the branch matching the **Branch** in Metadata exactly. - The commit is submitted as a **pull request** to `master`, reviewed, and **merged** before this issue is marked done. - All nox stages pass. - Coverage >= 97%. --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: ca-new-issue-creator
freemo added this to the v3.8.0 milestone 2026-04-04 20:59:36 +00:00
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#2857
No description provided.