TEST-INFRA: [ci-pipeline-design] Implement matrix test strategy for all supported Python versions #2031

Open
opened 2026-04-03 02:45:03 +00:00 by freemo · 1 comment
Owner

Metadata

  • Branch: task/ci-matrix-python-version-tests
  • Commit Message: feat(ci): implement matrix test strategy for all supported Python versions
  • Milestone: v3.8.0
  • Parent Epic: #1678

User Story

As a developer, I want the CI pipeline to run tests against all supported Python versions so that I can be confident that my changes are compatible with all supported versions.

Context

The noxfile.py currently only runs tests against Python 3.13. If the project is intended to support multiple Python versions, a matrix test strategy should be implemented. This would involve running the tests against all supported Python versions in parallel, catching any version-specific bugs early.

Subtasks

  • Audit noxfile.py to identify all sessions that should be parameterised across Python versions
  • Define the list of supported Python versions in a single, easily-configurable location (e.g., a top-level constant in noxfile.py or a pyproject.toml [tool.nox] entry)
  • Update the relevant nox sessions (at minimum unit_tests) to use @nox.session(python=[...]) parameterisation
  • Update .forgejo/workflows/ci.yml to run the matrix of Python versions in parallel (using a strategy.matrix block)
  • Update features/ci_workflow_validation.feature to assert that the CI workflow includes a Python version matrix
  • Verify all nox stages pass after changes
  • Confirm coverage ≥ 97%

Definition of Done

  • noxfile.py defines the supported Python version list in one place and uses it to parameterise the relevant sessions
  • .forgejo/workflows/ci.yml runs the test matrix across all supported Python versions in parallel
  • features/ci_workflow_validation.feature is updated to cover the matrix configuration
  • All nox stages pass (nox -e lint, nox -e typecheck, nox -e unit_tests, nox -e integration_tests, nox -e coverage_report)
  • Coverage >= 97%
  • PR is merged and linked issue is closed

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

## Metadata - **Branch**: `task/ci-matrix-python-version-tests` - **Commit Message**: `feat(ci): implement matrix test strategy for all supported Python versions` - **Milestone**: v3.8.0 - **Parent Epic**: #1678 ## User Story As a developer, I want the CI pipeline to run tests against all supported Python versions so that I can be confident that my changes are compatible with all supported versions. ## Context The `noxfile.py` currently only runs tests against Python 3.13. If the project is intended to support multiple Python versions, a matrix test strategy should be implemented. This would involve running the tests against all supported Python versions in parallel, catching any version-specific bugs early. ## Subtasks - [ ] Audit `noxfile.py` to identify all sessions that should be parameterised across Python versions - [ ] Define the list of supported Python versions in a single, easily-configurable location (e.g., a top-level constant in `noxfile.py` or a `pyproject.toml` `[tool.nox]` entry) - [ ] Update the relevant nox sessions (at minimum `unit_tests`) to use `@nox.session(python=[...])` parameterisation - [ ] Update `.forgejo/workflows/ci.yml` to run the matrix of Python versions in parallel (using a `strategy.matrix` block) - [ ] Update `features/ci_workflow_validation.feature` to assert that the CI workflow includes a Python version matrix - [ ] Verify all nox stages pass after changes - [ ] Confirm coverage ≥ 97% ## Definition of Done - [ ] `noxfile.py` defines the supported Python version list in one place and uses it to parameterise the relevant sessions - [ ] `.forgejo/workflows/ci.yml` runs the test matrix across all supported Python versions in parallel - [ ] `features/ci_workflow_validation.feature` is updated to cover the matrix configuration - [ ] All nox stages pass (`nox -e lint`, `nox -e typecheck`, `nox -e unit_tests`, `nox -e integration_tests`, `nox -e coverage_report`) - [ ] Coverage >= 97% - [ ] PR is merged and linked issue is closed --- **Automated by CleverAgents Bot** Supervisor: Test Infrastructure | Agent: ca-new-issue-creator
freemo added this to the v3.8.0 milestone 2026-04-03 02:45:58 +00:00
Author
Owner

Issue triaged by project owner:

  • State: Verified
  • Priority: Medium (confirmed)
  • Milestone: v3.8.0 (confirmed — CI infrastructure)
  • MoSCoW: Could Have — Multi-Python-version testing is a quality improvement. The project currently targets Python 3.13 only. This is important for eventual broader compatibility but not blocking current milestones.
  • Parent Epic: #1678 (confirmed correct)

Note: This may overlap with the already-verified #1948 ("Run tests on multiple Python versions"). Check for potential duplication.


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

Issue triaged by project owner: - **State**: Verified - **Priority**: Medium (confirmed) - **Milestone**: v3.8.0 (confirmed — CI infrastructure) - **MoSCoW**: Could Have — Multi-Python-version testing is a quality improvement. The project currently targets Python 3.13 only. This is important for eventual broader compatibility but not blocking current milestones. - **Parent Epic**: #1678 (confirmed correct) Note: This may overlap with the already-verified #1948 ("Run tests on multiple Python versions"). Check for potential duplication. --- **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#2031
No description provided.