TEST-INFRA: [ci-pipeline-design] Introduce a matrix strategy for Python versions in ci.yml #3396

Open
opened 2026-04-05 16:25:01 +00:00 by freemo · 0 comments
Owner

Metadata

Background and Context

The current CI pipeline in .forgejo/workflows/ci.yml only runs tests against a single Python version (3.13). To ensure broader compatibility and prevent regressions across the supported Python version range, the test suite should be executed against multiple Python versions automatically on every pull request.

This issue was discovered during Test Infrastructure review of the CI pipeline design.

Subtasks

  • Identify the range of Python versions that the project should support (e.g., 3.10, 3.11, 3.12, 3.13).
  • Implement a matrix strategy in the ci.yml file to run the unit_tests and integration_tests jobs on each supported Python version.
  • Update the noxfile.py to support the different Python versions if necessary.
  • Update features/ci_workflow_validation.feature to assert the matrix strategy is present and covers all supported versions.
  • Ensure that all tests pass on all supported Python versions.
  • Verify coverage >= 97% via nox -e coverage_report.
  • Run nox (all default sessions) and fix any reported errors.

Definition of Done

  • The CI pipeline runs the test suite against multiple Python versions.
  • The ci.yml file uses a matrix strategy to define the Python versions.
  • The project's compatibility with different Python versions is automatically verified on each pull request.
  • features/ci_workflow_validation.feature is updated to cover the matrix strategy.
  • All nox stages pass.
  • Coverage >= 97%.

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.


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

## Metadata - **Branch**: `test/backlog/ci-python-version-matrix` - **Commit Message**: `test(ci): introduce matrix strategy for multi-Python-version test runs in ci.yml` - **Milestone**: Backlog (no milestone — see note below) - **Parent Epic**: #1678 ## Background and Context The current CI pipeline in `.forgejo/workflows/ci.yml` only runs tests against a single Python version (3.13). To ensure broader compatibility and prevent regressions across the supported Python version range, the test suite should be executed against multiple Python versions automatically on every pull request. This issue was discovered during Test Infrastructure review of the CI pipeline design. ## Subtasks - [ ] Identify the range of Python versions that the project should support (e.g., 3.10, 3.11, 3.12, 3.13). - [ ] Implement a matrix strategy in the `ci.yml` file to run the `unit_tests` and `integration_tests` jobs on each supported Python version. - [ ] Update the `noxfile.py` to support the different Python versions if necessary. - [ ] Update `features/ci_workflow_validation.feature` to assert the matrix strategy is present and covers all supported versions. - [ ] Ensure that all tests pass on all supported Python versions. - [ ] Verify coverage >= 97% via `nox -e coverage_report`. - [ ] Run `nox` (all default sessions) and fix any reported errors. ## Definition of Done - [ ] The CI pipeline runs the test suite against multiple Python versions. - [ ] The `ci.yml` file uses a matrix strategy to define the Python versions. - [ ] The project's compatibility with different Python versions is automatically verified on each pull request. - [ ] `features/ci_workflow_validation.feature` is updated to cover the matrix strategy. - [ ] All nox stages pass. - [ ] Coverage >= 97%. > **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. --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: ca-new-issue-creator
HAL9000 added the
Priority
Backlog
State
Unverified
Type
Testing
labels 2026-04-10 06:02:17 +00:00
HAL9000 added
State
Verified
MoSCoW
Could have
and removed
State
Unverified
labels 2026-04-18 10:35:11 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Reference: cleveragents/cleveragents-core#3396