Skip to content

epic(ci): watch supported-framework releases, assess their impact, and publish supported versions #1065

Closed
3 of 3 issues completed

Description

@tommasobolis

Summary

We support 8 frameworks (ADAPTERS), but nothing tells us when one ships a release. We find out only if the nightly fresh resolve goes red, and even then not which release did it. Users have no single place that says which versions we support. This epic adds three pieces: a daily release watch that tests each new release in isolation against the PR lock, an AI changelog review that flags deprecations and removals before they break us, and a generated version-compatibility page in the docs.

Motivation

On 2026-10-10, 6 of the 11 framework packages we watch had a release newer than the PR lock, all published in the last 2 days, and no signal fired for any of them:

Package Lock (adapter-contract-*-py3.12.txt) PyPI latest
langchain-openai 1.6.7 1.7.0
langchain-core 1.6.7 1.6.9
litellm 1.104.0 1.104.2
strands-agents 1.58.0 1.59.0
agent-framework 1.20.0 1.21.0
anthropic 1.11.0 1.13.0
crewai 1.15.23 1.15.27

Today's process has three gaps:

  • The nightly can't attribute a failure. framework-legs (nightly-matrix.yml:175) resolves fresh, so every dependency moves at once. When it goes red, alert (nightly-matrix.yml:261) opens one generic nightly-failure issue that doesn't say which release caused it.
  • Nothing triggers a lock refresh. ADR 0007 rule 3 keeps it a manual PR "on whatever cadence a maintainer judges useful" (0007-dependency-policy.md:69), so the locks fall behind without anyone noticing.
  • Supported versions are scattered. The floors are in pyproject.toml (pyproject.toml:57-84), the tested versions are prose in the docs/verified-apis.md section 8 rows, and the known-bad versions are in §8.1. The README "Framework support" table (README.md:104) shows only tiers, and two framework pages hard-code versions that go stale (agent-framework.mdx:19,178,186 say 1.19.0, while the lock is 1.20.0).

BG §1.8 (adapters) and BG §1.10 (docs) govern this work. Policy stays as §8.4 and ADR 0007 define it: floors, never ceilings. A red result leads to an adapter fix or a §8.1 record, never a pin.

Children

Out of scope (tracked elsewhere)

Related

Done when

  • A new release of any watched package produces exactly one framework-release issue within a day. The issue carries isolated test results and an impact summary.
  • The issue closes itself once the lock reaches that version.
  • docs/framework-support.md and /frameworks/compatibility on the docs site list the minimum version, the tested version and the known-bad versions for every adapter, and CI fails if either is stale.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:adaptersFramework adapters and connection_kwargs() (1.8, 2.8)area:docsDocs site, README, verified-apisarea:releasePackaging, PyPI, semver, changelog, CIchoreBuild/tooling/refactor, no user-facing behavior changedependenciesPull requests that update a dependency fileepicTracking issue spanning several child issuespriority/p2Meaningful improvement, ship soonsize/l3+ days, cross-layer or verification sign-off

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions