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

   Add \`ts-sdk/\` — a TypeScript SDK for authoring and running Airflow tasks 
in Node.js. Supports two execution modes:
   
   **Coordinator mode** (AIP-108): spawned as a one-shot subprocess per task by 
\`TypescriptCoordinator\` (companion PR); communicates over TCP with the 
Airflow supervisor using the same 4-byte length-prefixed msgpack protocol as 
the Python and Java SDKs. Supports all 13 \`TaskClient\` APIs (Variables, XCom, 
Connections, Dag operations, secret masking) and DAG serialization.
   
   **Edge Worker mode** (AIP-69/72): long-lived HTTPS worker using JWT 
authentication; picks up tasks from the edge executor queue.
   
   Both modes share \`registerTask()\` and the same \`TaskClient\` interface — 
handlers are mode-agnostic.
   
   ## What's included
   
   - \`ts-sdk/src/\` — full source (coordinator + edge + shared client 
interface)
   - \`ts-sdk/tests/\` — 180 unit tests (vitest)
   - \`ts-sdk/integration/\` — integration test workers and Python test scripts
   - \`ts-sdk/schema/supervisor-schema.json\` — vendored supervisor wire schema 
(PR #67235, api_version \`2026-06-16\`)
   - \`ts-sdk/scripts/generate-supervisor.mjs\` — regenerates types from schema
   
   ## What's deferred (follow-up PRs)
   
   - CI workflow and pre-commit hooks for \`ts-sdk/\`
   - \`TypescriptCoordinator\` Python-side wiring (companion PR)
   - Structured log forwarding for edge mode (\`TODO(pr4)\` in \`worker.ts\`)
   - Per-task token refresh and subprocess isolation for edge mode
   
   ## Testing
   
   \`\`\`bash
   cd ts-sdk
   pnpm install
   pnpm test        # 180 tests, all pass
   pnpm run typecheck
   \`\`\`
   
   ---
   
   ##### Was generative AI tooling used to co-author this PR?
   
   - [X] Yes — Claude Code (Sonnet 4.6)
   
   Generated-by: Claude Code (Sonnet 4.6) following [the 
guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions)
   
   ---
   Drafted-by: Claude Code (Sonnet 4.6) (no human review before posting)


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