When MyType[T] is a generic type alias, MyType[int] is a TypeAliasType structurally but not nominally. Why?

For inspect_annotations(), it only expands PEP 695 type aliases if it contains Annotated or type qualifiers (e.g. Required/NotRequired). And the logic is not quite right, e.g.:

type A[T1, T2] = Annotated[dict[T2, T1], ...]

introspection.inspect_annotation(A[int, str], unpack_type_aliases='eager')
# InspectedAnnotation(type=dict[int, str], qualifiers=set(), metadata=[Ellipsis])

But the goal is to properly reuse Add type hint parsing utilities by Viicos · Pull Request #39 · pydantic/typing-inspection · GitHub.