garvit-arora opened a new pull request, #74517: URL: https://github.com/apache/airflow/pull/74517
Related: #74194 ### Summary This PR implements the assigned first slice: direct Databricks Genie hook support plus a separate, thin `DatabricksGenieToolset` built on the public `BaseManagedAgentToolset` contract. Resumable standalone Airflow tasks remain out of scope. - Keep direct hook use working without Common AI; isolate the adapter behind the optional `common.ai` extra. - Send start-conversation and create-message POSTs once. If a timeout or server failure leaves the outcome ambiguous, surface an explicit error and do not retry. Retry only GET reads. - Bound HTTP response and tool-result sizes; return JSON with space, conversation, and message IDs and a truncation marker. Credentials are used only for authentication headers and are not included in results or errors. - Provide clear 401/403/404/429 errors, including the possibility that a missing Genie resource is reported as 403. - Document when Unity Gateway's managed Genie MCP server is sufficient and what the native API adds. - Add mocked unit coverage for the hook and public toolset adapter. ### Validation - Ruff on changed Python files: passed. - Python compileall on changed Python files: passed. - `git diff --check`: passed. - Targeted pytest could not reach collection locally: the Airflow pytest plugin invokes `uv` to refresh provider dependency metadata, and the environment cannot reach PyPI. Hosted CI should run the tests on this PR. - The requested real-workspace run is not recorded yet. No Databricks workspace credentials are configured in this environment; this should be completed and recorded separately before merge. ### Related PR Apache Airflow #74419 is an overlapping Genie implementation from another contributor. This PR is submitted from the branch assigned to @garvit-arora and implements the maintainer's requested separate public toolset adapter and non-idempotent POST safeguards. Please advise if you prefer the implementations consolidated. -- 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]
