TEST-INFRA: [ci-pipeline-design] Improve job dependencies #1942

Open
opened 2026-04-03 00:19:32 +00:00 by freemo · 1 comment
Owner

Metadata

  • Branch: chore/ci-pipeline-design-improve-job-dependencies
  • Commit Message: chore(ci): add unit_tests dependency to coverage job
  • Milestone: v3.8.0
  • Parent Epic: #1678

Background and Context

The coverage job in .forgejo/workflows/ci.yml currently declares needs: [lint, typecheck]. This means the coverage report can begin executing before the unit_tests job has completed. Since the coverage report is derived from the unit test run, it is logically incorrect for the coverage job to start before unit_tests has passed. Adding unit_tests to the needs list enforces the correct execution order and ensures the coverage report always reflects a successful test run.

Expected Behavior

The coverage job must only execute after the unit_tests job has completed successfully. This guarantees that coverage data is always generated from a passing test suite.

Acceptance Criteria

  • The coverage job in ci.yml lists unit_tests in its needs array.
  • The CI pipeline continues to pass end-to-end with the updated dependency.

Subtasks

  • Update the coverage job in .forgejo/workflows/ci.yml to add unit_tests to its needs list
  • Verify the updated needs list reads: needs: [lint, typecheck, unit_tests]
  • Update features/ci_workflow_validation.feature to assert the coverage job depends on unit_tests
  • Run nox (all default sessions), fix any errors
  • Verify coverage >= 97% via nox -s coverage_report

Definition of Done

  • The coverage job in ci.yml runs only after the unit_tests job has completed successfully.
  • features/ci_workflow_validation.feature is updated to cover the new dependency.
  • 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**: `chore/ci-pipeline-design-improve-job-dependencies` - **Commit Message**: `chore(ci): add unit_tests dependency to coverage job` - **Milestone**: v3.8.0 - **Parent Epic**: #1678 ## Background and Context The `coverage` job in `.forgejo/workflows/ci.yml` currently declares `needs: [lint, typecheck]`. This means the coverage report can begin executing before the `unit_tests` job has completed. Since the coverage report is derived from the unit test run, it is logically incorrect for the `coverage` job to start before `unit_tests` has passed. Adding `unit_tests` to the `needs` list enforces the correct execution order and ensures the coverage report always reflects a successful test run. ## Expected Behavior The `coverage` job must only execute after the `unit_tests` job has completed successfully. This guarantees that coverage data is always generated from a passing test suite. ## Acceptance Criteria - The `coverage` job in `ci.yml` lists `unit_tests` in its `needs` array. - The CI pipeline continues to pass end-to-end with the updated dependency. ## Subtasks - [ ] Update the `coverage` job in `.forgejo/workflows/ci.yml` to add `unit_tests` to its `needs` list - [ ] Verify the updated `needs` list reads: `needs: [lint, typecheck, unit_tests]` - [ ] Update `features/ci_workflow_validation.feature` to assert the `coverage` job depends on `unit_tests` - [ ] Run `nox` (all default sessions), fix any errors - [ ] Verify coverage >= 97% via `nox -s coverage_report` ## Definition of Done - [ ] The `coverage` job in `ci.yml` runs only after the `unit_tests` job has completed successfully. - [ ] `features/ci_workflow_validation.feature` is updated to cover the new dependency. - [ ] 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-03 00:19:42 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • MoSCoW: MoSCoW/Could Have — CI/test infrastructure improvement.

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

Issue triaged by project owner: - **State**: Verified - **MoSCoW**: MoSCoW/Could Have — CI/test infrastructure improvement. --- **Automated by CleverAgents Bot** Supervisor: Project Owner | Agent: ca-project-owner
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#1942
No description provided.