rjgoyln opened a new pull request, #70840:
URL: https://github.com/apache/airflow/pull/70840

   ## Summary
   
   Airflow instantiated `TraceContextTextMapPropagator()` directly at every 
trace-context boundary instead of using the globally configured propagators. As 
a result, `OTEL_PROPAGATORS` had no effect inside Airflow: vendor propagators 
were ignored, `Baggage` was dropped across component boundaries, and 
worker-to-API-server propagation could fail when `tracecontext` was not 
configured.
   
   This replaces the hardcoded propagators with `opentelemetry.propagate`, 
matching the Execution API middleware and allowing Airflow to honor the 
configured propagation strategy consistently.
   
   ## Changes
   
   - Replaced all hardcoded `TraceContextTextMapPropagator()` usages with 
`propagate.inject` and `propagate.extract`.
   - Stopped filtering run-conf carriers to only `traceparent` and 
`tracestate`, allowing configured propagators to read and write their own 
fields.
   - Kept the bare-string `airflow/dagrun_parent_trace_context` shorthand 
pinned to the W3C propagator. The shorthand's value is defined as a W3C 
trace-context string, while the mapping form remains propagator-agnostic.
   - Added documentation for `OTEL_PROPAGATORS` and trace-context propagation.
   - Updated tests to verify baggage round-tripping and backward compatibility.
   - Added newsfragment: `airflow-core/newsfragments/70840.improvement.rst`.
   
   ## Compatibility
   
   No behavior changes are expected with the default 
`OTEL_PROPAGATORS=tracecontext,baggage`: carriers remain byte-identical unless 
baggage is present.
   
   Existing W3C carriers continue to extract correctly, and the documented 
bare-string `airflow/dagrun_parent_trace_context` shorthand remains supported 
regardless of the configured propagators.
   
   ## Scope
   
   Addresses **Issue 2** of #70388 only. Issues 1 and 3 remain separate.
   
   * Related: #70388
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   <!--
   If generative AI tooling has been used in the process of authoring this PR, 
please
   change below checkbox to `[X]` followed by the name of the tool, uncomment 
the "Generated-by".
   -->
   
   - [X] Yes (please specify the tool below)
   Generated-by: Claude Code (Opus 5)
   
   <!--
   Generated-by: [Tool Name] following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
   -->
   
   ---
   
   * Read the **[Pull Request 
Guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#pull-request-guidelines)**
 for more information. Note: commit author/co-author name and email in commits 
become permanently public when merged.
   * For fundamental code changes, an Airflow Improvement Proposal 
([AIP](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvement+Proposals))
 is needed.
   * When adding dependency, check compliance with the [ASF 3rd Party License 
Policy](https://www.apache.org/legal/resolved.html#category-x).
   * For significant user-facing changes create newsfragment: 
`{pr_number}.significant.rst`, in 
[airflow-core/newsfragments](https://github.com/apache/airflow/tree/main/airflow-core/newsfragments).
 You can add this file in a follow-up commit after the PR is created so you 
know the PR number.
   
   <!-- pr-triage-fold: triaged=2026-08-13T12:55:40Z head=51a8c3d action=draft 
-->
   
   ---
   
   > [!IMPORTANT]
   > **🛠️ Maintainer triage note for @rjgoyln** · by `@potiuk` · 2026-08-13 
12:55 UTC
   >
   > Helpful heads-up from the maintainers — please address before this PR can 
be reviewed:
   > - :x: **Merge conflicts**. See 
[docs](https://github.com/apache/airflow/blob/main/contributing-docs/10_working_with_git.rst).
   >
   > Full list of what we check: [Pull Request quality 
criteria](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#pull-request-quality-criteria).
   >
   > **The ball is in your court** — you've been assigned to this PR. Fix the 
above, then mark it **Ready for review**.
   >
   > <sub>_Automated triage — may be imperfect; a maintainer takes the next 
look._</sub>
   
   <!-- /pr-triage-fold -->
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to