The GitHub Actions job "Tests" on airflow.git/main has failed.
Run started by GitHub user potiuk (triggered by potiuk).

Head commit for run:
840bcf30247dd63063bbb054e3c8645f7896fb5b / Kaxil Naik <[email protected]>
Add `PydanticAIHook` to `common.ai` provider (#62546)

Adds a hook for LLM access via pydantic-ai to the common.ai provider.
The hook manages connection credentials and creates pydantic-ai Model
and Agent objects, supporting any provider (OpenAI, Anthropic, Google,
Bedrock, Ollama, vLLM, etc.).

- get_conn() returns a pydantic-ai Model configured with credentials
  from the Airflow connection (api_key, base_url via provider_factory)
- create_agent() creates a pydantic-ai Agent with the hook's model
- test_connection() validates model resolution without an API call
- Connection UI fields: password (API Key), host (base URL), extra (model)
- Google Vertex/GLA providers delegate to default ADC auth

TypeVar on create_agent() lets mypy propagate the output_type
through Agent[None, OutputT] → RunResult[OutputT] → result.output,
so callers like example_pydantic_ai_hook.py don't need type: ignore.

Also fix black-docs blank line in RST code block.

- Move SQLResult inside task function so Sphinx autoapi doesn't
  document Pydantic BaseModel internals (fixes RST indentation errors)
- Add Groq, Ollama, vLLM to spelling wordlist
- Change "parseable" to "valid" in test_connection docstring
- Remove separate code-block from RST (class is now in exampleinclude)
- Import BaseHook from common.compat.sdk for Airflow 2.x/3.x compat
- Import dag/task from common.compat.sdk in example DAG
- Replace AirflowException with ValueError for model validation
- Use @overload for create_agent so mypy handles the default correctly


Co-authored-by: GPK <[email protected]>

Report URL: https://github.com/apache/airflow/actions/runs/22501032468

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to