Repository: UKGovernmentBEIS/inspect_ai
Issue: Type error in Python 3.14 - TypeError: unsupported operand type(s) for |: 'str' and 'typing.Union'
Root cause: External Dependency Breakage

Seems like `uv` has silently changed the default Python version to `Python 3.14.0rc3`, such that running Inspect under `uvx` produces a `TypeError`.

I know 3.14 is bleeding-edge so this might not last, but I thought I'd give you an early heads-up in case changes are needed for 3.14 compatibility.

Steps to reproduce: `uvx --python 3.14 --from inspect-ai inspect`

Output:
```
Installed 72 packages in 95ms
Traceback (most recent call last):
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/bin/inspect", line 6, in <module>
    from inspect_ai._cli.main import main
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/__init__.py", line 5, in <module>
    from inspect_ai._eval.eval import eval, eval_async, eval_retry, eval_retry_async
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/_eval/eval.py", line 10, in <module>
    from inspect_ai._eval.task.task import resolve_model_roles
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/_eval/task/__init__.py", line 1, in <module>
    from .task import Task, TaskInfo, PreviousTask, task_with  # noqa: I001, F401
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/_eval/task/task.py", line 17, in <module>
    from inspect_ai.agent._agent import Agent, is_agent
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/agent/__init__.py", line 4, in <module>
    from ._bridge.bridge import agent_bridge, bridge
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/agent/_bridge/bridge.py", line 16, in <module>
    from inspect_ai.log._samples import sample_active
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/log/__init__.py", line 4, in <module>
    from ._bundle import bundle_log_dir
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/log/_bundle.py", line 13, in <module>
    from ._file import log_files_from_ls, write_log_listing
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/log/_file.py", line 21, in <module>
    from inspect_ai.log._condense import resolve_sample_attachments
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/log/_condense.py", line 30, in <module>
    from ..event._event import (
        Event,
    )
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/event/__init__.py", line 18, in <module>
    from ._tree import EventNode, EventTree, SpanNode, event_sequence, event_tree
  File "/home/ubuntu/.cache/uv/archive-v0/uWlHVXK-YO9Z2yUjaAOt8/lib/python3.14/site-packages/inspect_ai/event/_tree.py", line 10, in <module>
    EventNode: TypeAlias = "SpanNode" | Event
                           ~~~~~~~~~~~^~~~~~~
TypeError: unsupported operand type(s) for |: 'str' and 'typing.Union'
```


Thanks for the early warning! Resolved here: https://github.com/UKGovernmentBEIS/inspect_ai/pull/2622