Aymen1617 opened a new issue, #57191: URL: https://github.com/apache/airflow/issues/57191
### Apache Airflow version 3.1.0 ### If "Other Airflow 2/3 version" selected, which one? _No response_ ### What happened? <img width="991" height="656" alt="Image" src="https://github.com/user-attachments/assets/e6b30f82-7a4c-42ce-b479-a34f5e0f888b" /> it is not passing data from one dag to another why <img width="991" height="656" alt="Image" src="https://github.com/user-attachments/assets/07d5279e-1579-45f6-bfcc-79ebaea630ae" /> ### What you think should happen instead? _No response_ ### How to reproduce Steps to Reproduce: Create a DAG dag_a with a PythonOperator returning a dictionary: def fetch_job(): return {"job_id": 123, "target_id": 987} Use TriggerDagRunOperator to trigger another DAG (dag_b) with conf from XCom: TriggerDagRunOperator( task_id="trigger_dag_b", trigger_dag_id="dag_b", conf="{{ ti.xcom_pull(task_ids='fetch_job') }}" ) Run the DAG. Observed Behavior: Airflow raises a Pydantic ValidationError. The DAG fails to trigger dag_b. Cause: Airflow 3.x strictly validates that conf is a dict. Using {{ ti.xcom_pull(...) }} without fromjson returns a string, not a dictionary. ### Operating System linux ### Versions of Apache Airflow Providers _No response_ ### Deployment Official Apache Airflow Helm Chart ### Deployment details _No response_ ### Anything else? _No response_ ### Are you willing to submit PR? - [ ] Yes I am willing to submit a PR! ### 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) -- 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]
