Skip to content

ci: qualify CPython 3.14 and bound interpreter support #1097

Description

@doublewhy

Problem

The package metadata currently admits every future CPython release with requires-python >=3.11, while CI verifies only Python 3.12. PR #1089 adds a matrix but does not bound metadata, prove a clean wheel install, or add the requested free-threaded preview posture.

Scope

This issue is about OpenRAE itself, not experiment repositories.

Requirement: GOV-901.

Acceptance

  • Set the supported standard interpreter range to CPython 3.11 through 3.14 with requires-python >=3.11,<3.15 and matching Trove classifiers.
  • Replace event-loop-dependent MCP tests with asyncio.run as in test(mcp): drive MCP tool calls through asyncio.run #1087.
  • Run a blocking, exact-interpreter compatibility matrix for 3.11, 3.12, 3.13, and 3.14. The job must assert the interpreter actually selected, install from the frozen lock, run the hermetic suite, build the wheel, install it into a clean environment, and smoke the public CLI/import surface.
  • Add a nonblocking 3.14t preview on scheduled/manual runs. Assert that the selected build is free-threaded; do not advertise 3.14t as a production support guarantee.
  • Do not add or test Python 3.15 before its final release. Qualification after final requires a separate issue and wheel/dependency review.
  • Document the difference between Requires-Python, tested standard interpreters, and the preview lane.
  • Keep canonical verification, policy, and release gates green.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions