apache / apache/flink-agents

[Tech Debt][Umbrella] Review and refine Flink Agents APIs for 0.4

Open
#1,055 0 comments 0 reactions 1 assignee Claimed by @wenjin272 View on GitHub
fixVersion/0.4.0 priority/major tech debt
Dominant language
Java
Stars
452
Forks
167
Avg merge
5d 9h
Merged PRs (30d)
49

Description

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/flink-agents/issues) and found nothing similar.

### Description

The [Flink Agents 0.4 roadmap](https://github.com/apache/flink-agents/discussions/862) calls for a comprehensive review of the existing APIs and an API compatibility mechanism.

As Flink Agents matures toward 1.0, the 0.4 release may be the last planned opportunity for broad breaking changes. We should use this window to make the public APIs more mature, consistent, and easy to use, and then establish a stable compatibility baseline for future releases.

This umbrella issue tracks the overall API review. Detailed proposals and implementation work should be tracked in child issues and linked here.

#### Scope

- Audit the public Java, Python, and YAML API surfaces.
- Review naming, abstractions, types, configuration, lifecycle, extension points, defaults, validation, and error handling from a user's perspective.
- Verify semantic consistency across Java, Python, YAML, and cross-language boundaries.
- Identify APIs that should be simplified, consolidated, deprecated, removed, or redesigned before 1.0.
- For each proposed breaking change, document the rationale, user impact, and migration path in a child issue.
- Define the compatibility approach after 0.4, including API stability classification, deprecation policy, and compatibility validation where applicable.
- Update documentation, examples, migration guidance, and tests for accepted changes.

### Are you willing to submit a PR?

- [x] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.