Optional support for static Extra Links without XCom dependency
- Dominant language
- Python
- Stars
- 46.9k
- Forks
- 17.8k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 483
Description
### Description
This feature request entails the addition of an opt-in feature for extra links which are not stored as an XCom, for static URLs and reduced metaDB bloat.
### Use case/motivation
As far as I'm aware, extra links are only supported via XComs. This makes sense for dynamic, task-instance specific / DAG-run specific URLs (e.g. a link to an external Spark job); however, XComs are _not_ an ideal mechanism for static URLs which are only specific to the given operator (rather than the task instance). For example, a very common use case for the Extra Links feature is to point to a static, operator-specific documentation page. Yet, storing that URL in an XCom for each task instance is clearly not ideal in that circumstance, and only adds bloat to the metaDB.
### Related issues
Only very tangentially related: https://github.com/apache/airflow/issues/54527
### Are you willing to submit a PR?
- [x] Yes I am willing to submit a PR!
Caveat: I am willing to help with the backend implementation, but I have no understanding or experience regarding react / frontend development.
### Code of Conduct
- [x] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
Contributor guide
Research direction
Start by tracing Airflow's existing extra-link entry points and how they write and read XComs, then inspect the related React frontend behavior. Done should mean an opt-in path supports static operator-specific URLs without creating per-task XCom entries, with coverage for the backend and frontend behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, react
- Domain
- backend, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 48/100