apache / apache/airflow

Add automated detection of when Execution API migration is missing

Open
#48,887 0 comments 0 reactions 0 assignees View on GitHub
area:API area:CI area:task-execution-interface-aip72
Dominant language
Python
Stars
46.9k
Forks
17.8k
Avg merge
2d 10h
Merged PRs (30d)
483

Description

### Body

Recently we merged #48650 which added a new field to the DagRun generated datamodel

Unfortunately since we have forbid extra in the generated client this resulted in old clients failing to work with new servers, one of the things we are deliberately using Cadwyn to avoid.

And it does help, when we remember/know to use it.

To prevent this happening again we should add automated testing of previous versions of the API spec.

We'll likely need to commit the "released" API version (which as of today is 2025-03-19 and 2025-09-26) and then see if any changes are made to them when re-generating against the code in a PR.

Or maybe we can look at using [oasdiff/oasdiff](https://github.com/oasdiff/oasdiff/) to detect changes.

Regardless, we certainly need automated tooling to catch these errors.

### Committer

- [x] I acknowledge that I am a maintainer/committer of the Apache Airflow project.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing #48650 and the generated DagRun datamodel, then compare the released API versions identified in the issue with the API spec regenerated from the current code. Evaluate whether committed historical specs or oasdiff provides the needed check; done means automated testing catches incompatible changes during a pull request.

Written by the indexing model from the issue text.

Assessment

Tech stack
openapi, python
Domain
api, backend-api-design, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.