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

   # TS SDK: cover native TypeScript Dags end to end
   
   - **Depends on the PR for `feature/ts-sdk/trigger-dag-run` getting merged 
first** (only the last commit is new here).
   - **Diff for early review**: 
https://github.com/jason810496/airflow/compare/feature/ts-sdk/trigger-dag-run...feature/ts-sdk/native-dag-e2e-tests
   
   ## Why
   
   The unit suites cover each construct on a Dag written for that construct 
alone. Nothing yet builds the graph an author would actually write, or runs it.
   
   ## How
   
   Three layers over one Dag:
   
   - **SDK**: the shipped example builds, serializes, and round-trips, so the 
graph the docs describe is the graph the SDK produces.
   - **Airflow e2e**: the Dag processor parses the bundle, the Dag appears 
without a Python file declaring it, and a run completes with the expected task 
states and XComs.
   - **KubernetesExecutor system test**: the same Dag under the Node 
coordinator, pod per task, asserting that the branch not taken is skipped 
rather than failed.
   
   ## What
   
   - `ts-sdk/example/src/native.ts`: a Dag declared entirely in TypeScript, 
registered on the same bundle as the mixed-language handlers beside it, using a 
task group, a named fan-in, an order-only edge, a conditional, a multi-way 
branch and a `triggerDagRun` task.
   - A vitest alias and matching `tsconfig` path, so a test reaching into both 
the example and the sources holds one copy of the SDK rather than two.
   
   The Airflow and Kubernetes layers are gated behind 
`RUN_TS_SDK_NATIVE_DAG_TESTS` and `RUN_TS_SDK_NATIVE_DAG_K8S_TESTS`. They need 
a Dag processor that dispatches parse requests to a language coordinator, so 
they are written but not yet exercised.
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   - [x] Yes, with help of Claude Code Opus 5 following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
   


-- 
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